From: Slava P. <sl...@je...> - 2001-05-08 11:25:36
|
jEdit 3.2pre1 is now available from <http://www.jedit.org>. This is a development release, and is probably rather buggy. + New Features - Pressing Caps Lock toggles multiple selection on and off. In multiple selection mode, any number of chunks can be selected, and the caret position is independent of the selection. All jEdit built-in commands support multiple selections. If they don't, it's a bug - Caret registers and markers merged: - 'Markers' top level menu contains commands for manipulating markers. - Markers can no longer be named -- the menu just shows the line of text containing the marker, along with the line number. - Markers can have single-character 'shortcuts'. To add a marker with a shortcut, use the 'Add Marker With Shortcut' command. - Key strokes for dealing with markers with shortcuts are the same as the old register command keystrokes (C+t, C+y, C+u, C+k) - Unlike caret registers, which were global to the editor, markers are buffer-specific. - Registers are now only used to store text. - Note that adding a marker with a shortcut of an existing one does not delete the existing marker, it merely clears its shortcut. - Registers and marker shortcuts are stored in a different namespace, so you can have text in register 'a' and a marker with shortcut 'a' at the same time - X-Windows style copy and paste now supported: most recently selected text is stored in the '%' register, middle mouse button click (or Alt-click if you only have a 2 button mouse) inserts contents of that register. - New 'Copy Append' (C+e C+a), 'Cut Append' (C+e C+u) commands append selected text to clipboard. - New 'Cut Append to Register' (C+r C+u) command append selected text to specified register and removes it from the buffer. + Enhancements - 'Auto wrap around' option in search and replace dialog box - Edit server now binds to local host only (so that remote attackers can't compromise jEdit) and accepts no more than 2 simultaneous connection attempts (Mike Dillon) - The 'Run Other Macro' command no longer uses the obsolete Swing file chooser dialog box - Marker saving can now be toggled in Utilities->Global Options->Loading and Saving - View->Scrolling->Scroll to Caret (C+e C+j) now expands the fold containing the caret, if necessary - -nostartupmacro command line switch - Improved 'View Registers' dialog box - The gutter now shows marker tooltips immediately - Installer has a new look - Installer now installs jedit.cmd file for starting jEdit on OS/2 + Neutral - 'Append to Register' command renamed 'Copy Append to Register' - 'Replace All' no longer bound to C+e C+a - 'site-props' directory renamed to 'properties' - 'Rectangular Selection' command removed. Now, the only way to create a rectangular selection is to either Control-drag or Control-Shift-click - 'Box Comment' command removed (it might reappear later. I just can't be bothered updating it for the new selection code right now.) - 'Wing Comment' renamed 'Range Comment', 'Block Comment' renamed 'Line Comment' - Startup macro is now run before the first view is created (so the Swing font hack script floating around can now work without the view.splitVertically()/view.unsplit() hackery) + Bug Fixes - print() should now work in BeanShell: - if invoked from Console plugin, prints output to console - otherwise, prints the specified string to the activity log, with log level 'warning' (so that it is also printed to the standard error stream) - If a view was split and several buffers were visible, only one of them would be checked when the view gains focus for modification by another program - The setting of the reverse search flag wasn't fully saved and restored - The setting of the HyperSearch flag wasn't handled properly by the search bar - Notepad macro threw an exception when its window was closed - The 'Search in Current Buffer' and 'Search in Directory' macros didn't work - If the caret was at the beginning of the line, prev-word would move it to the beginning of the previous line, not the end of the previous line as you would expect - Fixed possible NPE when closing files due to jEdit.removeBufferFromList() being called twice + API Changes - As jEdit now handles middle mouse button clicks itself, the XClipboard plugin will have to be modified to set a custom implementation of the '%' register, instead of trapping middle mouse clicks directly. - Plugins are now loaded after the buffer history and macros are initialised - org.gjt.sp.jedit.msg.RegistersChanged message removed - Old text selection methods in JEditTextArea deprecated: getSelectionStart() getSelectionEnd() getSelectionStartLine() getSelectionEndLine() getMarkPosition() getMarkLine() select() - New text selection API: Selection[] getSelection() setSelection(Selection[] selection) setSelection(Selection selection) addToSelection(Selection[] selection) addToSelection(Selection selection) removeFromSelection(Selection selection) getSelectionAtOffset(int offset) getSelectedText(Selection s) setSelectedText(Selection s, String text) getSelectedText(String separator) (returns all selections, separated by the separator string) getSelectedText() (returns all selections, separated by newlines) moveCaretPosition() (moves caret without affecting selection) setCaretPosition() (deactivates selection and moves caret) resizeSelection(int offset, int end) (resizes the selection at 'offset' to 'end') extendSelection(int offset, int end) (adds a selection spanning 'offset' to 'end', performing various tricks if there already is a selection at 'offset') org.gjt.sp.jedit.textarea.Selection is an abstract class. The two concrete implementations are Selection.Range and Selection.Rect. Methods in Selection class: Selection() (empty constructor) Selection(Selection sel) (copy start/end from this selection) Selection(int start, int end) int getStart() int getEnd() int getStartLine() int getEndLine() int getStart(Buffer buffer, int line) (only useful with Selection.Rect) int getEnd(Buffer buffer, int line) (ditto) |