Keywords: [bug] A bug fix [new] A new feature or addition [imp] An improvement or speed optimisation [chg] A change of existing feature Versions: * 1.0 First release. * 1.01 [bug] Removes the beta expiration code that was accidentally left in the release version, this would otherwise expire at on April 25. [bug] Updated the ISO-8859-1 entity file. [bug] Fixed a bug that stopped external DTDs being recognised if there was an internal one. [bug] Fixed the bug that made the root element (but not it's children) not checked against the DTD. [bug] Added support for IGNORE and INCLUDE. [bug] Fixed the tooltip on the Find Object window. [bug] Allowed for spaces in entities' native equivalent. [bug] Fixed a bug where unmatched close tags caused crashes. [bug] Fixed a bug where DOCTYPEs would confuse XML Editor. [bug] Improved text clipping when there is too much text to be contained in the tree viewer. [bug] Added support for NOTATION and NDATA. [bug] Fixed use of #PCDATA to work in the standard way. [imp] Fixed a small mistake in the help. Added some new help sections. [imp] Made dialogs slightly bigger. Improved all the question dialogs (Save, close, etc). [imp] Improved source cleaning to look neater. [chg] Moved the DTD menus to the Tools menu. [new] Added opening a file in the tree view or source view preference setting. [new] You are notified if a file was modified after XML Editor has loaded them. [new[ Added a preference to choose the level of indentation. [new] Allowed for changing of Entity mapping in the source editor. [new] Added a menu to edit any DTD file in the DTDs folder. [new] Added support for external DTD entities, now allows them to be read from a file and included into the DTD. [new] Added Character Entity Support (eg < and ) without needing these entities to be in the Entities folder. [new] Added unlimited undo in the Tree Mode. [new] Added editfield shift-command-arrowkey selection shortcuts. [new] Made searching in the DTDs folder better automated. Improved the DTD Matching window. [new] Allowed altering of the drag line color. [new] Added line reformating in all multi-line editfields. [new] Added optional direct typing of entities from the keyboard in source edit mode. [new] Added a progress feedback window that tells you how far you are in the parsing of a DTD. For 560KB DTDs like DocBook, this is necessary. * 1.02 The main focus of this build is to fix bugs. Many new features were added, however almost all of them were created in order to make debugging for myself easier, so they count as "effort to fix bugs", instead of "effort to make new features". Especially the tag auto selection, improved DTD feedback and Batch Validation. If few or no bugs are found the next version, I can focus on adding the feature requests. Bug fixes come before feature additions. [bug] DTD validation now allows for comments in elements that don't have #PCDATA defined for them. [bug] Fixes the DTD bug where if a bracket was inside at the start of the main bracket of an tag, only the first bracket would be parsed. [bug] Fixes a separate bug where brackets in an confused XML Editor. [bug] DTD Matching window can't be closed by Command-W now. [bug] Fixed the crash when closing a holder window that was altered. [bug] Fixed the app thinking there wasn't enough RAM for editfield undo, and thus not enabling undo when it should have. [bug] Allowed for parsing of type tags properly [bug] Find window now has the focus on opening [bug] Find window sets the focus to the window to be searched on finding [bug] Case insensitivity now works for finding of attributes [bug] Finding allows for finding attribute substrings now [bug] Dropping a file on XML Editor from the Finder when XML Editor isn't yet open, now works. [bug] Dragging a cell item upwards, and scrolling the window before dragging it out of the listbox, no longer creates the box in the wrong place. [bug] Very many very obscure validation inconsistancies have been cleared up. These inconsistancies were the kind that let invalid XML pass, or stopped valid XML from passing. These were the kind that were so obscure, that no one would trip over them unless they were looking for them. Bugs like an ATTLIST with a IDREFS of value "" being validated OK, that normally people wouldn't come across. This [bug] counts as about 20 [bug]s. [new] Drag and drop files from the Finder, onto the DTD Matching window to get them added to the list. [new] Adds a help button to the DTD Matching window, that takes you directly to the help section on DTDs, because many people found this feature confusing. [new] Duplicate and delete buttons work in the source editor. [new] Added shift-return shortcut to the source editor, this adds a newline and some space. [new] Added a "Save now" button to the preferences (mainly for my own use when debugging the project and needing to save the preferences before I close the debug session without saving). [new] Added auto selection of brackets and tag markers ( < and > ). Also tells you if a bracket or tag is properly complete. [new] Validation moves the selection in the graphical editor, to the element that caused the error. [new] Dialog Entry menu, allows entering of elements in source mode, via a dialog. [new] Parses and validates ID, IDREF, NOTATION and all the rest of DTD that was unimplemented before. [new] Added a "Set Creator Of Folder" menu to the "File" menu - This allows you to set all the text files in a folder to be XML Editor files. [new] Added "Batch Validation" feature. Batch validates a folder of XML files, and reports the results into a log file, and to a window. [new] Batch Validation help is added [new] DTD files that are next to the XML file, are automatically located. [new] "Open File From Selection" menuitem, also accessible from Command-Returnkey, in the source editor, opens up the file with the name of the selected text, if it is next to the file you are editing. This can be useful for quickly viewing many files, from a large batch Validation report. [new] Option-clicking on the "New Element", and "New PI" buttons adds the element via a dialog, but only in the source editor. [imp] Improves on the inbuilt help to add a large section on DTD matching, and showing XSL / CSS files. [imp] Asks the user if you want to copy a DTD file to the DTD folder, instead of automatically copying it. [imp] Many DTD validation conflict messages now point even more directly to the problem, and are more descriptful [imp] The source error dialog now uses an editfield instead of a static text, allowing for copying of the error message. It also features the new tag and bracket selection, allowing for easier understanding of where an DTD bracket begins and ends in complex DTDs (such as DocBook). [imp] Properties editor uses the new tag bracket selection feature. [imp] Turning the hierarchical object data into a string (for Source editing, copying to clipboard or saving) is now 3x faster. [imp] The DTD parsing progress window now shows updates every 1 second, instead of every 10 items. This makes less furious screen updating happen, making parsing actually run faster. [imp] DTD parsing progress window is only shown if there is a message, (if 1 second has passed that is). If parsing takes less than 1 second, the window is not shown. [imp] Sped up entity parsing a little. [imp] Pressing return in the find attribute window now searches. [imp] Now adding a new element in the Tree-view, the new element comes with the name you last changed an element to. [chg] Moved menus "Show File In Finder", "Set Creator To XML Editor", and "Show In Browser" to the "File" menu. * 1.11 [bug] Changed the keyboard shortcut of "View Render" from "Command-H" to "Command-Shift-E", to make it not conflict with the MacOSX "Hide Application" shortcut. [bug] Now uses all RAM, virtual and physical on MacOSX. Before it was only using physical RAM on OSX, and could run out of RAM. [bug] Text Find/Replace now doesn't delete an extra character [bug] Fixed an insertion selection length bug in the source editor [bug] Fixed a bug introduced in 1.02 that made entities not always be recognized. [bug] Fixed a bug introduced in 1.02 that made DTD To Holder not work. [bug] Triangles don't appear next to element rows that only contain white space, and therefore can't be opened. [bug] No longer asks for to find DTD files, when there is no url or identifier referring to the DTD. [bug] Holder no longer enables the save button after switching the view [bug] Holder no longer flickers [bug] Buttons remained hilited sometimes after the mouse was moved away from them, this is now fixed [bug] Improved an error message, before sometimes with an element being where it shouldn't, the error message given was inaccurate. [bug] DTD To Holder now recursively creates XML, like it was meant to when I first wrote it. [bug] You can't drag a row out of the document now, while you are selecting/unselecting rows, by moving the cursor outside of the window. [bug] Fixed a slight vertical offset bug with the Holder's scrolling in 2d list mode. [bug] Fixed a bug in Entity To Native text mapping, that slowed down mapping. [bug] DTD Validation, and entity mapping in general, now recognises the entities < > ' and " , without them needing to be explictly added in the DTD or entity file (as the XML 1.0 Spec defines). Before, only & was always recognised. [bug] DTD entity validation now demands the value is quoted. [bug] Doesn't unescape entities when you edit a DOCTYPE in the property editor, that contains data inside it's [ ] section. [bug] Fixed a bug that allowed attributes in close tags. [bug] Fixed a possible stack-overflow that happened when expanding already fully expanded XML. [bug] Fixed a possible quirk that let trying to open already expanded XML, open other rows than the one you were trying to open. [bug] Moving from row to row with the keyboard no longer selects attributes or inlined text for no reason on occasion. [bug] On OSX, it was possible to get the toolbar at the back after switching to other applications and back. Now the toolbar is moved to the front. [bug] Holder file extensions are now case sensitive. [bug] Fixed a bug that added attributes to XML source when validating it, if the DTD contained a "default" attribute value. [bug] Fixed a bug that let unparsed entities be used in DTD validation. [bug] Fixed a crash bug when XML Editor was quit by another application, via AppleEvents. [bug] Fixed a bug with xml:preserve . Seems to work now as it should. [bug] Fixed a very rare bug that showed itself with DocBook (and some other DTDs), where XML Editor would freeze on Validation. [bug] Works with multi screens. [bug] Window cascading is now more reliable. [bug] Fixed a very rare bug where indenting would the wrong characters. [bug] Fixed many bugs with validating included XML files. [bug] Fixed a bug where windows couldn't be put in other screens. [bug] Fixed a leak with rendering XML objects to XML source. [bug] Property editor no longer maps entities when not needed. [bug] Fixed a rare bug with DTD validation where an !ELEMENT tag with "indirectly not necessary" content, could be mistaken for necessary content. [new] Added a toolbar to the top of the screen [new] Added a "Add To Results" search feature. [new] "Open Selected Text" is now added to the contextual menu [new] Added "Map Entities To Numeric" menu. You can access this menu via the contexual menu also. [new] Double clicking on an item in the holder, adds it to the front document window. In the tree-view mode, the item is added inside the selected element. In the source-edit mode, if the item is an element, then the selected text is put inside the element. If there is no selected text or the item isn't an element, the item is inserted at the insertion point. [new] Added "Validate Under Mouse". This validates the XML under the mouse in the object viewer. [new] Added "Validate Selection". This validates the selection, in the source viewer. [new] Now stores the expansion state inbetween undos [new] The menuitem "Edit Document's DTD" has been added. This handily opens a document's DTD. It is accessible via contextual menus also. [new] Added a feature in the Toolbar that lets you choose where an inserted element goes. Inside an element, before, or after it. [new] Added a setting in the Toolbar that lets you choose if the newly created element is selected or not. [new] Adding a processing instruction (eg ), adds it at the start of the document, if there are no pre-existing PIs around. [new] Handles the screen changing size much better now. If a window is too large to fit in the smaller screen, then the window is shrunk and repositioned. [new] Added XML inclusion, via entities. This comes into effect when you validate XML that contains an entity reference in the DTD. [new] Styled and colored source editor [new] "View In Browser", and "Map Typing" is now on the toolbar [new] Clean fragment works via selected text as well as cleaning the entire document [new] XML can now be dropped unambiguously anywhere in the document, via "drop lines" that appear when there is an ambiguity. [new] Icons appear in the document window [new] CMM by holding down mouse in the Tree-Viewer [new] Added "Reload" in the File Menu. This is useful for loading an altered version of the file, say if you were altering the file in BBEdit. [new] Display as entity native equivilent checkbox setting is added to the property viewer. [new] Changes to element names don't appear if the new name is the same as the old name. This can be useful if you have "Validate After Change" on. [new] Pressing escape key in the element name editor cancels the change. [new] Arrow left and right key in the Tree-View now open or close all XML, if there is nothing selected at all. [new] Counts the selected items in the Tree-View, on the toolbar. [new] Added a "Get Info" window. [new] Inserting XML now inserts it into all the selected items, in one go. [new] Validate After Change now validates source typing after a user specified delay after typing inactivity. [new] Holders now put their insertion items into a hierarchical CMM, that appears when you continually hold the mouse down, or click with the control key. [new] Validating XML source, flashes the selection over the bad XML, to make it easier to see. [new] CMM to move a item in the holder to a different group. [new] Selection data is now saved in the resource fork. [new] Moving from one view mode to the other, keeps the selection (set this in the preferences). [new] Pref setting to render XML using tabs as indent, instead of space. [new] Pref setting to save without lines. [new] Displays parse and render progress. [new] Finds errors in external XML files much more reliably now. The framework for finding errors in external XML files has been built, so any further bugs in this are (easily fixed) bugs, and not (hard to fix) limitations. [new] Added a preference setting to not have windows repositioned automatically. [new] Added ability to run scripts on OSX, sending the commands to the OSX terminal. [new] Added ability to sort XML by various criteria. [new] Added ability to get a count of different XML items of a document. [new] Added ability to flip "select inserted" setting and "insert end/beginning" setting, via keyboard modifiers. The newly flipped setting is displayed in the toolbar, if the mouse is in the toolbar. [imp] Now opens any file from the Finder. [imp] Now doesn't warn you newly added elements are invalid, when you have "Validate After Change" on. [imp] Improved the find window layout [imp] Added a feature where option clicking on a tag, selects the entire tag, including all the other tags inside it. [imp] Added a "Toggle Property Viewer" menu to the Windows menu, and now, the Property Viewer won't re-open once it is closed, unless you choose this menu. [imp] Dragging in XML from external windows, now enters the rows inside the row. Also, row tracking from drags from external windows is now more accurate. [imp] Holder now uses Appearance Manager sounds [imp] File path handling now defaults to using "/" as the directory separator when there is a "file://" protocol in use. Also, now understands ".." meaning to go up the directory path by one step, just like it does for the http:// and file:// protocol. [imp] White-Loose mode now keeps the last white space on either side of text. [imp] XML CleanUp now keeps the last white space on either side of text. [imp] Holder window now looks much more compact, and is centered in 1D list mode. [imp] Floating windows don't flicker a darker color now. [imp] Source editor now keeps selection and undo state inbetween switching between applications. [imp] Full expand now works all the time. [imp] Double click on an element now opens up the element in the property viewer. [imp] Trying to insert XML into a PI, declaration, or text in the Tree-View just drops the XML next to it, instead of warning you it can't be done. [imp] Duplicated elements now go immediately after the last element duplicated, not at end of enclosing block. [imp] After deleting an item, the following item (or the parent item, if the last item is enclosed) should be selected. [imp] Sped up deletion on huge (hundreds of thousands of rows) sized lists. [imp] Should an error happen in parsing XML (I have never known it to, but cosmic rays do exist), it should handle it much better. [imp] Source validation now shows the position of unmatched tags. [imp] Made the prefs window look much better. [imp] Clicking on the Tree-View listbox, now unselects the property editor fields if any are selected. [imp] Text inside new CDATA strings are now escaped as they should be, for the end ]]> marker. This happens in the source editor. [imp] Elements in the Tree-Viewer, now are displayed "inline", when possible and necessary. [imp] Clipboard remembers position. [imp] View render uses global white space rendering setting now. [imp] Improved send to browser feature. Now can send to a range of browsers. [imp] Improved the help. [imp] Sped up validation (again), especially noticable with large DTDs, such as DocBook. [chg] Changed the Source/Tree mode buttons, to two icon buttons that did the same. [chg] All buttons on the document windows have been moved to the toolbar. [chg] Swapped the keyboard shortcut for "Full Expand", and "Contract", because they were in the opposite order that the arrowkeys were. [chg] Opening holders from the "Open" menu now doesn't ask if they should be opened as holder file, they are always opened as XML source. Holding down the option-key now always opens the holder as XML source. * 1.12 [bug] Fixed a bug introduced in 1.11 where tree-view duplication would fail. [bug] Fixed a crash bug with the sort feature, on sorting attributes. [bug] Option-drag (to copy) now works perfectly, instead of being one off. [bug] "Display Entities as Equivalent" is no longer unreliable. [bug] Validate under mouse now works, again. (Broken in 1.11). [bug] Out of RAM errors are handled more gracefully, instead of saving empty XML files, an error message is given and no save is done. [bug] Fixed a bug where DTD attributes might not be recognised as existing. [bug] Fixed a bug with copying comments, or other invisible elements. [bug] DTD To Holder now gives correct output. [bug] Moving holder items to another group no longer asks you if you want to delete it or not. [bug] Sorting no longer selects elements it shouldn't. [bug] Fixed a bug where selecting a new element didn't clear the attribute values of the last. [bug] Fixed a rare bug where a 1 byte long string after an entity in an XML document would be ignored. [bug] Now includes entities that don't come from files. [bug] Entity files containing elements not in a DTD are no longer given ambiguous messages. [bug] PIs are now ignored again on validation, this bug was introduced in 1.11. [bug] Preference corruption problem was fixed. [bug] Shift arrow-up selecting is now fixed in the Tree View. [bug] Fixed a bug where rendering invalid DOCTYPE tags should cause a freeze. [bug] Rendering XML objects to strings, when there is no white space, no longer inserts a line in some occasions. [bug] Fixed a bug with moving comments around, when "Ignore White Space" setting is on. [bug] The ISO-8859-1.asc file is now re-included with XML Editor package. In 1.11 this file was missing. [imp] Sorting now can ignore unnecessary white space. [imp] DTD To Holder now creates from empty DTD attributes, an empty value in the Holder. [imp] Making a new attribute selects the Attribute's name. [imp] Deleting now works more intuitively, and less quirkily. [imp] Updated the help. [imp] DTD To Holder is now faster. [imp] Sorting now is able to ignore the parent, when sorting by XML source. [imp] Pasting and dragging into the Tree view, now trim write space, before entering the text. [imp] Improves on the DTD error message detail, in some rare cases where it was just returning an error of "not in the right place". Now in that rare occasion it didn't give a useful answer, it gives a detailed and helpful answer instead. [imp] Improves on the DTD error message when the problematical XML comes from an entity. [imp] DTD error messages are more helpful in "element out of position" situations. [imp] Document windows now use the size of the currently open windows, not the last closed window. [imp] Completed more of the OSX shell script feature. [imp] Browser opener feature now comes with default Browsers, "Internet Explorer", and "Netscape". [imp] Saved selections now appear in the property editor, upon opening a document. [new] Added ability to optionally edit element attributes in a large text box, by clicking on an editor button next to the attribute. [new] Added a window popup file path. [new] Added more keyboard navigation commands to the Tree View mode. Page Up, Page Down, Home and End. [chg] No longer lets you say "No" when asking to find an entity file, and then continue parsing. If you say no, the parsing exits. [kis] The shell script feature is still not completed, it may work for some scripts, but not for all! * 1.13 [bug] Shell script feature for OSX is now fixed. [bug] Bad elements are now auto selected again! This was broken in 1.12 [bug] Clicking on the line/byte position no longer asks to move the position when the view is Tree view. [bug] The Browser Opener now opens files on OSX correctly. [bug] Documents no longer become automatically "altered" when the property editor window is closed. [imp] The Script system for OSX now reports the error very detailedly. [new] Opening text files that contain no XML structures, opens the file view in "Source View", instead of Tree View! * 1.14 [bug] Fixed an out of ordering error when replacing XML structures with entities. [bug] Fixed a problem where text rarely wasn't getting selected when bad XML was found when using a DTD. [bug] Fixed an internal bug that occured with validating via DocBook, when using no DTD cache, and some entity files. [bug] Fixed a bug with the property editor turning & into & when it shouldn't. [bug] Property editor appears to keep the entity check box setting correct. [bug] Property editor sets text when pressing the "Set Text" button now. [bug] Catches empty entities errors now. [bug] Catches & literals better errors now. [bug] Warns you of not having the correct OS version if you don't have it. [new] Runs on OS 8.0 now. * 2.0b [new] Full Unicode display and text entry support. [new] All forms of Unicode can be read from files, including little endian and big endian. BOMs are supported too. [new] Writes files as UTF-8. [new] Optionally allows to write a UTF-8 BOM. [new] Intelligent UTF auto-detection. The Unicode format (all 5 versions of UTF) of your XML should be auto-detected without any BOM necessary. [chg] Scripts menu now has file names with their extension. [new] Scripts can now run without a document window. [new] Toolbar can be hidden. [new] Browser Opener now can edit the creator. [bug] Fixed a bug where processing instructions weren't allowed after the main document. [bug] Fixed a bug with the Browser Opener not allowing to choose .app programs. [bug] Fixed a bug where the invisible items were displayed in the scripts menu. * 2.01 [bug] Fixed a bug where the "unsaved" window widget wasn't being honoured. [bug] drag and drop works now (broken in v2) [bug] Find works properly now (broken in v2) [bug] Recent menu works properly now (broken in v2) [bug] Batch validation works properly now (broken in v2) [bug] Lines now will always be saved in the correct format, it's not possible to trick XML Editor into saving inconsistent lines now. [new] XML documents have a button-menu at the bottom, allowing to save in any line format. [bug] Fixed an exception which occurred with XML documents. [new] After the XML Editor's demo period times out, you may still use it. It will however continue to ask you to pay for it, until you register. *2.1 [bug] Fixed some crashes that were occurring with the tree view editor. [bug] Fixed a bug where entity mapping wasn't working. [bug] External entity files now work again, when validating. [bug] DTD Caching works again. [bug] DTD To Holder now works again. [bug] Almost all known bugs were fixed. *2.12 [bug] Writing &, < or > is now allowed in text sections. The text is then automatically upgraded to be a CDATA section. [new] .svg files are listed in XML Editor's Open dialog. *2.14 [bug] The find dialog now is a normal window, this means you can copy/paste text into it. Before you couldn't copy/paste text into the find window, only type. *2.15 [bug] Fixes a problem where UTF-8 wasn't displaying correctly in the Tree View. *2.31 [bug] Corrected the selection of errors when we had UTF-8 source code. [new] Properties can be dragged to reorder, copied, and pasted from within the property editor!! [new] The preference pane offers default encoding for opening files. [new] Can auto-detect the encoding of Unicode XML files better. [new] Can save in any supported XML encoding, by setting the "encoding" property of the XML document. *2.34 [bug] Fixed window reposition bugs. [new] The toolbar is now detachable and acts like a floating control palette. [new] Improved treeview find window. [bug] "Show In Browser" works now [bug] Text visual trimming improved, now it shouldn't over trim text so that there is a vast gap on the right edge of the window. [bug] Improved command-return functionality for opening files with the name of the selected text. (Works like Xcode's "Open Document" shortcut) [bug] Fixed a bug where toggling the property editor's visibility was quirky. *2.36 [new] Scroll wheel support! At last. [bug] Fixed a bug where attributes errors in the XML against a DTD, would cause an internal error message box. *2.37 [bug] Fixed a bug with the find and replace window where it was corrupting non-ascii characters. *2.39 [bug] Fixes window positioning for the toolbar. [bug] Pressing return within the main editor window now reliably opens the property editor. *2.40 [bug] Sometimes key presses were being swallowed, and ignored. Now they are listened to. [bug] Altering comments now does't insert CData sections. *2.41 [bug] No longer sometimes inserts a blank line at the start of some documents. [bug] Windows stagger properly now.