jEdit 5.0 version history (changes since jEdit 4.5.2) :encoding=UTF-8: {{{ Version 5.0.0 Thanks to Jarek Czekalski, Eric Le Lay, Matthieu Casanova, Tom Power, Malathi, Thomas Meyer, Vladimir Avondin, Björn "Vampire" Kautler and Alan Ezust for contributing to this release. {{{ Bug fixes - Does not create backups on exit (#3579788 Jarek Czekalski) - I/O Error on First Save Attempt (#3574500 Jarek Czekalski) - Fixed whole word search (#3551515 Matthieu Casanova) - Fixed a number of scrollbar bugs related to undo, multiline cut, soft-wrap, and folding. (Patch#3567959, Bugs #2832769, #2998294, and #3193168 - Thomas Meyer) - Fix keymap duplication handling (Björn "Vampire" Kautler) - Fix broken macro Files/Glob_close.bsh (Eric Le Lay) - File status checking before save (#3562315, Alan Ezust) - Fix "Customize This Menu..." item in context menu options (#3554895 Tom Power) - Fixed the StandaloneTextArea that cannot load keymaps (#3562023 Matthieu Casanova) - Fix a case where a NPE occurs when removing a plugin (#3557441 Matthieu Casanova) - Recognizing "Extra word characters" in "Whole word" option in searches (bug #3522497, patch #3543524 Malathi) - The macro Display_Abbreviations was broken (#3539691 Matthieu Casanova) - Fix pressing return in parent files of the VFS browser that do not browse the selected folder as it should (patch #3543499 by Eric Le Lay) }}} {{{ API - New method MiscUtilities.openInDesktop() (Alan Ezust) }}} {{{ UI - Disable menu bar mnemonics if they are mapped as otherwise defined shortcuts so that they are not shown visually to the user when they actually do not work and make sure that no conflict can arise with the default keymap and any localization (#3528208 Björn "Vampire" Kautler) - Added a new German keymap. Replaced shortcuts that were unreachable on a german keyboard. Moved shortcuts from German localization into keymap. (#3572796 Björn "Vampire" Kautler) - Translate underscores to spaces when displaying keymap names in the UI to eliminate files with spaces in the name. (Björn "Vampire" Kautler) - Fix broken keymap properties (Björn "Vampire" Kautler) - Added russian localization (patch #3544154 Vladimir Avdonin) }}} {{{ Miscellaneous - Correctly determine whether Look and Feel did change to not touch it if it stays the same as this might cause delays and Exceptions. (Björn "Vampire" Kautler) - The .jedit/modes/catalog is now written using UTF-8 instead of default OS encoding (#3560800 Matthieu Casanova) }}} }}} {{{ Version 5.0pre1 Thanks to Björn "Vampire" Kautler, Nathan Gray, Evan Wright, Alan Ezust, Dale Anson, Matthieu Casanova, Olivier Pisano, Jimmy Chaw, peibl, Robert Schwenn, Martin Raspe, Max Funk, SPennington, Ingo Tomahogh, Jarek Czekalski, Jojaba, Stephen Blackheath, Milan Černil, Makarius, Chris Sullins, Peter C. Chapin, Tom Power and Donovaly for contributing to this release. {{{ Bug fixes - Fixed exception in dockable window system when loading a plugin using jar libraries (#3532429 Matthieu Casanova) - The plugin description in install panel now supports html (#3509183 Matthieu Casanova) - The mirror "Plugin Central default" now works as auto selecting mirror and is used by default. Previous default was hardcoded "switch" (mirror.switch.ch) as workaround, but one could easily stuck on broken "Plugin Central default" and got strange errors. (#2913393, #3501210 - Kazutoshi Satoda) - Avoided annoying behavior of electric keys that canceled obvious manual indentation. Now they take effect only when the current level of indentation is same with automatic indentation. (#1936678, #2332140 Jarek Czekalski, Kazutoshi Satoda) - Fixed "Backup on every save" resets file permissions. Renaming of the file was replaced with copying. (#1803073 Jarek Czekalski) - Added backup of remote files, for example opened with FTP plugin. (#1525654 Jarek Czekalski) - Fixed NPE which was shown in place of a proper error message for empty keyword elements in mode XML. (Kazutoshi Satoda) - Cannot DnD betweeen PingPongLists (#3501020 Jarek Czekalski) - Fixed macros at menu split are unaccessible (#3512853 Jarek Czekalski) - If the same plugin is installed in home and install folder, only the newest is loaded. (#1848802 Matthieu Casanova) - Fixed rectangular selection constructor (patch #3440310 peibl) - When copying a file in VFSBrowser, if a file with the same name already exists a suffix copy-n is added to avoid deleting the existing file (#3470759 Matthieu Casanova) - Fixed Ctrl + key not working in completion popup (Matthieu Casanova) - Fixed copy of Hypersearch results adding \r in the clipboard (#3142456 Matthieu Casanova) - The Java based installer now correctly handles GNU style long filenames in the installer package and thus does not corrupt the JavaDoc files anymore (#2327520 Björn "Vampire" Kautler) - Several message boxes were not being created on the EDT which would result in tiny, non-resizable message boxes. (#3441535 Dale Anson) }}} {{{ API Changes - New method Debug.compDelay, for debugging purposes (Jarek Czekalski) - Made EditBus.send uninterruptible, as it was before putting handling of messages into EDT (r17139, to 4.4). - New method ThreadUtilities.runInDispatchThreadNow() (Jarek Czekalski) - New VFS capability: NON_AWT_SESSION_CAP and a helper method VFS.createVFSSessionSafe that frees the caller from entering the EDT thread in most cases. All built-in filesystems have this capability set. (Jarek Czekalski) - The status bar widget service is now org.gjt.sp.jedit.gui.statusbar.StatusWidgetFactory instead of org.gjt.sp.jedit.gui.statusbar.StatusWidget (only the name in service.xml) is modified, because the service class is a StatusWidgetFactory and not a StatusWidget (#3521413 Matthieu Casanova) - New public constructor for org.gjt.sp.jedit.gui.ErrorListDialog allowing for specifying custom urgency (priority). (Jarek Czekalski) - TextArea.isCaretVisible became public (patch #3518424 Makarius) - Fixed jedit exit procedure. Now all views are closed. Earlier only the current view was properly closed. This may be important for plugins that were workarounding the issue, as now they will get more ViewUpdate.CLOSED messages. (Jarek Czekalski) - The JEditEmbeddedTextArea and StandaloneTextArea do not create an empty popup menu anymore. To add a context menu in your JEditEmbeddedTextArea, please override createPopupMenu(MouseEvent evt) as before, but also call setRightClickPopupEnabled(true) in your constructor (Matthieu Casanova) - New jEdit.getCurrentLanguage() method that returns the language used by jEdit (Matthieu Casanova) - New method JEditBuffer.insert(int offset, CharSequence seq) to insert text in a buffer. (Matthieu Casanova) - New constructors for CopyFileWorker: CopyFileWorker(Component comp, VFSFile[] vfsFiles, String target) CopyFileWorker(Component comp, VFSFile[] vfsFiles, String target, Behavior behavior) CopyFileWorker(Component comp, File[] files, String target) CopyFileWorker(Component comp, File[] files, String target, Behavior behavior) to allow copy of multiple files at the same time (Matthieu Casanova) - New VFS.copy() methods: copy(ProgressObserver progress, VFS sourceVFS, Object sourceSession, String sourcePath, VFS targetVFS, Object targetSession, String targetPath, Component comp, boolean canStop, boolean sendVFSUpdate) copy(ProgressObserver progress, String sourcePath,String targetPath, Component comp, boolean canStop, boolean sendVFSUpdate) (Matthieu Casanova) - New methods MiscUtilities.getCompleteBaseName() to return the (complete) base names of a file (until the last .) and and getBaseName(), to replace the badly named getFileNameNoExtension, which is now deprecated (Matthieu Casanova, Alan Ezust) - TextUtilities.join() now accept Collection instead of Collection (Matthieu Casanova) - OperatingSystem.isOS2() method is removed since OS/2 cannot run jEdit since many years (Matthieu Casanova) - OperatingSystem.isDOSDerived() is now deprecated since OS/2 do not exists anymore Windows is the only DOS derived OS, so use OperatingSystem.isWindows() instead (Matthieu Casanova) - Some undocumented but public members in class DisplayTokenHandler and Chunk became private as they should be in the first place. Specifically: org.gjt.sp.jedit.syntax.DisplayTokenHandler MAX_CHUNK_LEN initChunk() (* this was protected) org.gjt.sp.jedit.syntax.Chunk accessable initialized style width Chunk constructors offsetToX() (non static) xToOffset() (non static) init() (Kazutoshi Satoda) }}} {{{ Editing - Nsis mode: added sectiongroup and deprecated subsection. (patch #3531776 Uwe - donovaly) - Shellscript mode: changed electric keys to better fit current jEdit capabilities in this area. (Jarek Czekalski) - Made markers list selectable with keyboard. (patch #3509642 Tom Power) - Ada mode improvements (patch #3523836 Peter C. Chapin, request #2860105 Britt) - Scala mode added (#3501401 Daniel Spiewak) - logs edit mode added (Matthieu Casanova) - Dart mode added (patch #3483431 Chris Sullins) - Haskell mode: Removed the fixed 8 character indent and tab size (patch #3470636) - Haskell mode: Added some GHC extensions: recursive do and arrow notation (patch #3470637 Stephen Blackheath) - New mxml.xml mode, and updates to ActionScript (patch #2913561 Chris Hill) - New metapost.xml mode (patch #1606258 Kondr) - Updated cobol.xml (patch #2654343 Markus Röhner) - fortran90.xml: new Fortran90 edit mode (patch #2406563 Jonni Lehtiranta) - roff.xml: New ROFF/GROFF/TROFF edit mode (patch #3081484 Kostas Michalopoulos, Robert Schwenn) - nsis2.xml: Added Java/C style comments. (patch #2976473) - Ruby Edit Mode: Improved Symbol Highlighting (patch #1918110 Ingo Tomahogh, Alan Ezust) - "velocity_pure.xml" edit mode to replace older sgml-based velocity.xml. Velocity keywords nested within markup tags incorrectly highlighted. (patch #1285741 Robert Schwenn) - Updated D edit mode (patch #3463009 Olivier Pisano) - Removed special highlight for object access and creation in php edit mode (#2985508, #3151072 Matthieu Casanova) - Major simplification of phpdoc to make it look more like javadoc (#1803310, #3029383, #3316733 Matthieu Casanova) - Added some missing keywords to vrml2 edit mode (patch #3471586 Jimmy Chaw) - Using no highlight or limited syntax highlight in large buffers now also disables soft wrap (Matthieu Casanova) - Using no highlight or limited syntax highlight in large buffers now disables highlight of very long lines (Matthieu Casanova) - Latex Indentation a nuisance (#3432974) - Made it possible to disable automatic indentation by buffer or by edit mode, and created a status widget to toggle the setting (Evan Wright) - Fix for tracker 2976661, script tag attributes not syntax highlighted. (Dale Anson) - Fix for tracker 846913, jsp syntax highlighting for single line comments. (Dale Anson) - Updated css mode with new css 3 properties and values, tracker 3483390. (Dale Anson) - Updated html mode to recognize new html 5 keywords, updated jsp mode to delegate to html mode for html tags. (Dale Anson) }}} {{{ UI - Made "Customize This Menu..." item in context menu optional. (patch #3530786 Tom Power) - File System Browser docked on left by default. (Alan Ezust) - Suppressed output to standard error of encoding problems on opening files, which affects also hypersearch encoding errors. These errors are now displayed in a dialog, but not sent to error output. (request #3517116 Jarek Czekalski) - Reserve space for 4 digit in memory's status bar widget. (patch #3518422 Makarius) - The Windows installer and windows integration are now localized in french (patch #3513215 Jojaba) - The Error status bar widget now use a JEditEmbeddedTextArea instead of a simple swing TextArea to display exceptions (Matthieu Casanova) - jEdit now supports localization. (Matthieu Casanova) - Added french translation (Jojaba http://jojaba.free.fr) - Added german translation (Robert Schwenn) - Added czech translation (patch #3523511 Milan Černil) - Text Area option for Search System Fonts in Font substitution (#3479585 Max Funk) - Dialog titles in file system browser (patch #2968930, request #2807301 SPennington) - Standarized Buffer Switcher combo (#3408584, patch #3456572 Jarek Czekalski) - If a Task is not cancellable, the cancel button of TaskMonitor is disabled (Matthieu Casanova) - Added Icons to the VFS Browser context menu (Matthieu Casanova) - Combined Global and Plugin options into a single pane, making Optional plugin obsolete, fixing auto resize dialog issue. (#3449498, request #3455602 Alan Ezust) - jEdit is now always using continuous layout in JSplitPane (Matthieu Casanova) - Fixed keyboard handling of comboboxes in jedit's option panes. (#3415064 Alan Ezust) - Changed menus to use Mac-specific symbols for accelerator keys when using OS X and the native look & feel (patch #1950147 Nathan Gray) - Added an option (on by default) to use the native Quartz renderer on Mac OS X (Evan Wright) - Fixed keyboard handling of drop-down menus in File System Browser. (#1571578 Alan Ezust) - Fixed "Use textarea colors" for dockables created in non-metal L&F. (#1794400 Alan Ezust) - New option in Saving and Backup pane: Use File System Browser dir for Save-As (#1591441 Alan Ezust) - RegisterViewer: set initial focus to registerList, added key bindings for inserting content, clearing a register and leaving the registerList (#3437779 Martin Raspe) - RegisterViewer: close the floating window after inserting a clip, to make behaviour consistent with Paste Previous window (#3478916 Jarek Czekalski) - Show a preview of the window rather than a low-resolution icon when minimizing on Mac OS X (#3529980 Evan Wright) }}} {{{ Miscellaneous - New FileOpenerService, Offered by FastOpen 2.5, SmartOpen 1.1. Used by ErrorList 2.0 (#3481157 Alan Ezust) - jeditresource:/ URL handler now also checks jEditHome for files so it can be used to link to core documentation. (#3565139 Alan Ezust) - Macros folder can now be localized with properties macros.folder.[foldername].label (Matthieu Casanova) - Pasting a VFSFile as String dataflavor will now paste the full path instead of the name of the file (Matthieu Casanova) - The EditingOptionPane has now an option to remember the user choice about large file treatment (Matthieu Casanova) - OS/2 tasks were removed from the Java installer as OS/2 does not have a working Java 6 implementation and probably never will have (Björn "Vampire" Kautler) - jEdit support for keymaps (Matthieu Casanova) - User Settings directory migrated to %APPDATA%/jEdit on Windows (#2510763 Alan Ezust) - Added support for "Find Previous" when searching in multiple files (Evan Wright) - Applied patch to Get_Class_Name macro from lxdyglt to find classname for inner classes. (#3301598 Dale Anson) - Fixed some edge cases in the Make_Get_and_Set_Methods macro, properly handle comments, multi-line variable declarations and multiple initializers. (Dale Anson) - Soft wrap now works at non-whitespace line breaks within some natural language texts; Japanese for example. (patch #2483695 Kazutoshi Satoda) - Introduced glyph caching to lower CPU usage on text rendering and line wrapping. (Kazutoshi Satoda) - Changed calculation of wrap margin to be based on an average character width instead of a width of a space which gave very narrow wrap margin for proportional fonts. (Kazutoshi Satoda) - Updated Move Lines Up and Down macros to move whole lines regardless of selection. (Dale Anson) }}} }}} jEdit buffer local properties: :maxLineLen=80:wrap=hard:autoIndent=simple:noTabs=true:indentSize=2:tabSize=2: :folding=explicit:collapseFolds=2: