From: SourceForge.net <no...@so...> - 2007-06-25 00:21:18
|
Feature Requests item #1741235, was opened at 2007-06-21 17:37 Message generated for change (Comment added) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=350588&aid=1741235&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: plugins Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: HurricaneDavid (hurricanedavid) Assigned to: Nobody/Anonymous (nobody) Summary: XML Plugin: Separate/Join XML/HTML Tag Attributes Initial Comment: In some XML and HTML code (ColdFusion as well) tags can become very long thanks to many attributes, or just some long attributes. This feature would split the attributes into their own line and also do the reverse (i.e. join lines that are already split). Possible options: * Allow user to choose whether or not to indent the separated lines, or to keep them at same indention level as the first one. * Placement of the last ">"... a) Allow user to choose whether the last ">" gets put on a separate line, or is at the end of the last attribute. b) Allow user to indent last ">" flush with attributes or at same level as opening "<". Benefits: * Permanent Code Alteration: When you've adopted someone else's web site, who likes to keep tags in long horizontal lines, it's easy to convert that to your method, if you like them separated. Or vice-versa. * Temporary Code Viewing: For cases when you want to keep the code one way, but view it temporarily in the other, then convert it back. For instance, to see all of an XML tag's attributes at once, perhaps make a small edit, then re-join them back into one line. * This helps to limit horizontal scrolling, the bane of many developers. Example of "Separate" Feature: <table cellpadding="4" cellspacing="0" border="0" width="100%" bgcolor="#eeeeee"> would become: <table cellpadding="4" cellspacing="0" border="0" width="100%" bgcolor="#eeeeee" > Example of "Join" Feature: <table cellpadding="4" cellspacing="0" border="0" width="100%" bgcolor="#eeeeee" > would become: <table cellpadding="4" cellspacing="0" border="0" width="100%" bgcolor="#eeeeee"> -- Thank you. ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2007-06-24 17:21 Message: Logged In: YES user_id=187628 Originator: NO I added a few lines to the xmlindenter, it seems to work pretty well. Right now I have the code toggling between "split" mode and "join" mode via a System property. I checked this in for others to see, revision 9839. Use the bean shell (Utilities - BeanShell - Evaluate BeanShell Expresion) to run System.setProperty("xmlindenter.splitAttributes", "true") to turn on the "split" mode, unset the property return to "join" mode. Of course, there would need to be updates to the option pane for this if everyone likes this solution. I didn't do anything about the trailing > yet. ---------------------------------------------------------------------- Comment By: Alan Ezust (ezust) Date: 2007-06-24 08:40 Message: Logged In: YES user_id=935841 Originator: NO There is already a "split" action, I didn't add a new action yet. I just made it do something sensible when you are inside a tag. Try using the split action now. What does it do? Now all we need is a join, which will be trivial once I figured out how to get the parsed attributes from one of these many tree structure objects which are already in memory. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2007-06-24 06:52 Message: Logged In: YES user_id=187628 Originator: NO Hi Alan, I'm wondering if this feature wouldn't be better placed into the XmlIndenter rather than XML itself? Dale ---------------------------------------------------------------------- Comment By: Alan Ezust (ezust) Date: 2007-06-23 16:20 Message: Logged In: YES user_id=935841 Originator: NO I was trying to extract the attribute data by getting the current TreeNode's UserObject. But for some reason, I am unable to get the attribute data in XML. It appears as null. What's a good way of getting the attribute data of the current node? I'd rather reuse some of the parsing that already happened on the XML element, seeing as there is a lot of parsing code already there. Dale, any ideas what I am doing wrong here? File Added: Xml.Split-Tag.patch ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=350588&aid=1741235&group_id=588 |