jEdit 5.1 version history
       (changes since jEdit 5.0.0)
:encoding=UTF-8:

{{{ Version 5.1.0

Thanks to Alan Ezust, Matthieu Casanova, and Björn "Vampire" Kautler
for contributing to this release.

{{{ UI improvements

- The column titles were missing in shortcuts option pane
  (#3614404 Matthieu Casanova)

- Made TextArea thick caret thicker, and also thick when in overwrite mode.
  (#3614784 Alan Ezust)

- Added a new column "ActionSet" in Shortcuts option pane to know
  to which actionSet an action belongs (feature #3614386 Matthieu Casanova)

}}}

}}}

{{{ Version 5.1pre1

Thanks to Björn "Vampire" Kautler, Jarek Czekalski, Thomas Meyer,
Matthieu Casanova, cnvince, Alan Ezust, Malathi, Vladimir Avdonin, Eric Le Lay,
Darien Brown, Steve snarum-micron, EdorFaus, Brian Clapper, Uwe Stöhr,
Marc Häfner, stone1343, Richard The, Dale Anson, Benjamin Gmurczyk,
Makarius, Marco Hunsicker, and Maik Nijhuis for contributing to this release.

{{{ Bug fixes

- The contextInsensitive flag of the edit mode was not used at the first use
  of the edit mode (Matthieu Casanova)

- Fix mode loading for temporary buffers (patch #3609469 Thomas Meyer)

- Fix #3598661 - Don't allow negative values in the general option pane.
  (Thomas Meyer)

- Fix #3596215 - NPE from docking layout save/loads when started with
  -nosettings. (Alan Ezust)

- Fix #3597101, #3596600 - Bad error handling when an invalid path is entered
  into the VFS Browser inputs. (Patch# 3602318 Benjamin Gmurczyk)

- Bug no. #3590540 revealed a performance problem in the ChunkCache, because
  every scroll action resulted in a tokenization of the really long line, which
  takes a considerable time and makes jEdit unusable.
  Fix is to always keep all Chunks of the tokenization process and use it as an
  buffer in the ChunkCache class.
  Tokenization of the physical line still happens for every insertion or
  deletion of the Buffer. Tokenization also happens when the cursor enters the
  physical line, as only the Chunks from the current physical line are keeped
  in the ChunkCache.
  (#3590540 Thomas Meyer)

- Bug no. #3590540 produced a soft wrap for a single physical line that was
  greater than 16383 screen lines. Increased this limit to 65535 in
  the ScreenLineManager (#3590540 Thomas Meyer)

- Fixed Insert_Selection macro when the selection is empty (#3596616
  Matthieu Casanova)

- fixed bug when pressing down if the is no selection (#3599630
  Matthieu Casanova)

- Fixed macros cut lines and copy lines when the buffer is empty (#3596612
  Matthieu Casanova)

- Fixed negative values used in recent file history count (#3598661 Matthieu
  Casanova)

- Fixed Run script macro when the file is empty (#3596609 Matthieu
  Casanova)

- Fixed Get_Class_Name macro when the file is empty (#3596752 Matthieu
  Casanova)

- Re-added missing OS/2 support code. (#3589903 Alan Ezust)

- Added missing localization string:
  options.plugin-manager.list-cache.minutes (#3574373 Matthieu Casanova)

- Fix AutoSave exception after multiline cut (#3017650 Thomas Meyer)

- Undomanager: Don't compact significant edits (#patch 3560615 Thomas Meyer)

- Fixed undo after replace all with beanshell only first occurance
  (#3551910 Thomas Meyer)

- Search all buffers now observes current BufferSet scope and can be restricted
  to the current view's buffers when scope is not global. (#3423442 Alan Ezust)

- Fix File status checking after buffer switch (#1871440 Alan Ezust)

- Undo restores selection state in simple cases (deletions, replaces
  on simple range selections). (patch #1570553 Maik Nijhuis, Thomas Meyer,
  Jarek Czekalski)

- Filter not synchronizing in search dialog when
  "All buffers" is selected. (#1646584, patch #3549905 Eric Le Lay)

- Fixed VFS session not ended in VFS.copy() api (#3522406 Matthieu Casanova)

- Use of a scrollable list for delete dialog confirmation
  (#2911520 Matthieu Casanova)

- Fix selecting mode based on exact filename match. (#3562935 Dale Anson)

- Fix old modes/catalog entries clutter properties. (#3533751 Eric Le Lay)
  [Merged into 5.0.x]

- When checking a box to select a plugin to install, the description was
  appearing and immediately disappearing. (#3398605 Dale Anson)

- Fix Exception when clicking Find orphan when disabled plugins (#2940864 Eric
  Le Lay)

}}}
{{{ API Changes

- TaskManager: Refactor io task - New class IoTask, a subclass of Task
  Remove the code of the io special case in TaskManager (Thomas Meyer)

- Make SearchMatcher interrupttible (Thomas Meyer)
  1.) API change: let SearchMatcher.nextMatch() throw InterruptedException
  2.) BoyerMooreSearchMatcher: Switch to the new API and react on thread
      interruption

- HyperSearch: Make search interruptible even when in VFS.listFiles():
  New method TaskManager.cancelTasksByClass(): Interrupt all currently running
  Tasks of the given type. (Thomas Meyer)

- Deprecated extra overloads of IOUtilities.closeQuietly() in favor of
  using Java5 closeQuietly(Closeable) instead. (Alan Ezust)

- New class: OneTimeMigrationStep, for adding property migration services
  (used by fix for #1871440 Alan Ezust)

- New method VFSBrowser.getLastVisitedPath() (Jarek Czekalski)

- New method IOUtilities.closeQuietly(ObjectInput) (Matthieu Casanova)

- New method IOUtilities.closeQuietly(ObjectOutput) (Matthieu Casanova)

- New method GUIUtilities.setAutoMnemonic(AbstractButton) (Jarek Czekalski)

- New method: View.getBuffers(), aware of bufferset scope. (Alan Ezust)

- Removed View.setBuffer(Buffer, boolean, boolean) and
  View.setBuffer(Buffer, boolean): methods that had disableFileCheck flag in
  since View no longer checks file status there. (#1871440 Alan Ezust)

- AllBufferSet.AllBufferSet(String glob, View v) - additional required
  argument for View in constructor argument list. (#3423442 Alan Ezust)

- Removed classes: IOProgressMonitor, WorkRequest, WorkThreadPool,
  WorkThreadProgressListener (Thomas Meyer)

- Removed VFSManager.getIOThreadPool() (Thomas Meyer)

- Converted BufferIORequest, VFSFileChooserDialog.GetFileTypeRequest and
  TextAreaTransferHandler.DraggedURLLoader to a Task (Thomas Meyer)

- Converted TaskManager to an enum singelton (Thomas Meyer)

- Changed VFSManager.runInWorkThread(Runnable) to
  VFSManager.runInWorkThread(Task) and made it accept only IO tasks

- New class: AwtRunnableQueue (Thomas Meyer)

}}}
{{{ Editing

- Fixed bug in ruby multiline comments (Patch#3605738 fixing bug #3605168
  Richard The)

- Fixed shellscript highlight (patch #3602461 fixing bug #3594428 Richard The)

- Updated lua mode file (patch #2126692 stone1343)

- Macros move lines up/down now keep the current selection (feature #3600082
  Matthieu Casanova)

- Updated nsis2 mode (#3586538 Uwe Stöhr)

- There is now a new encoding Native2ASCII which collapses unicode
  escapes in ISO-8859-1 files on read and expands characters that cannot be
  encoded with ASCII as unicode escapes on write. This encoding is the one Java
  properties files should be in. (Björn "Vampire" Kautler)

- Highlight entity references in xml attributes (#3559971 Eric Le Lay)

- Added highlight of chapter title in rfc edit mode (Matthieu Casanova)

- Fixed shellscript do escape single quote with backslash
  (#3557453 Matthieu Casanova)

- Updated ColdFusion mode (#3518536, #3561048 Darien Brown)

- Updated Verilog mode (#3536967 Steve snarum-micron)

- Updated HTML mode (#3594526 Marc Häfner)

- Updated CSS mode (#3595041 Marc Häfner)

- Updated Coffeescript mode (#3595105 Marc Häfner)

- new PostgreSQL mode (feature #2833378 Thiemo Kellner, Eric Le Lay)

}}}
{{{ UI improvements

- Better information in the plugin manager when loading plugin list
  (Matthieu Casanova)

- Initial view hidden by other windows at startup (#3610089)

- Remove empty root node in OptionGroupPane
  (#3608324, #3608327: Marco Hunsicker)

- More accurate treatment of ALT_KEY_PRESSED_DISABLED (#3604532: Makarius)

- New view option: "Abbreviate paths with environment variables when possible".
  (#3606329 Alan Ezust)

- Made view option, "alternate toolbar placement" the default for jEdit.

- Emacs macros and keymap updates. (Brian Clapper)

- Use separate (shorter) label for "whole word search" in the search bar.
  (Shlomy Reinstein)

- Added a right click popup menu with a copy action in the Error dialog
  (#3557023 Matthieu Casanova)

- Avoid trouble with horizontal scrolling (Patch #3134788, EdorFaus)

- Enable ContextMenu via keyboard to VFS-BrowserView (#3560239, Thomas Meyer)

- Added a possibility to suppress synchronization of the filter in search
  dialog, using a hidden setting in jedit.props: search.dontSyncFilter.
  (Jarek Czekalski)

- Added mnemonics for popup menus in File System Browser (Commands, Plugins,
  Favorites). (Jarek Czekalski)

}}}
{{{ Miscellaneous

- Added Chinese translation (patch #3611777 cnvince)

- Made the plugin manager loading much faster (up to 3 time faster)
  (Matthieu Casanova)

- New macro in Files section: "Open Selection In Desktop" (Jarek Czekalski)

- Open Selection macro improvements. An attempt is made to use current
  VFS browser directory as a parent for the highlighted filename.
  In case of no selection the path under caret is used. (Jarek Czekalski)

- Fixed unreasonable quadratic operations which could be observable on
  big search&replace-all. (Patch #3533838 by Thomas Meyer)

- Avoided unreasonable memory consumption by duplicate String instances
  that could be allocated for each occurrence in a big
  search&replace-all. (Patch #3528619 by Thomas Meyer)

- Fix high memory usage for large search&replace all operations.
  (Patch #3531515 by Thomas Meyer)

- Fix memory usage of Buffer.calculateHash() (patch# 3560429, Thomas Meyer)

- Make_Bug_Report macro now use logs edit mode to have a little coloring
  in the result (Matthieu Casanova)

- Beep on output option in Activity log settings
  (request #3551931 Jarek Czekalski)

- New Plugin Manager option: Disable obsolete plugins (#2931321 Alan Ezust)

}}}

}}}

jEdit buffer local properties:
:maxLineLen=80:wrap=hard:autoIndent=simple:noTabs=true:indentSize=2:tabSize=2:
:folding=explicit:collapseFolds=2:
