What's New - Emacs+ history of user visible changes:

  • Version 3.6.5:
    • Add eval-expression (M-:) to set/show certain internal variables dynamically
    • If the internal variable `kill-whole-line' is non-`nil', 'C-k' at the beginning of a line kills the entire line including the following newline.
    • Disable beep when moving cursor in content assist dialogs
    • Fix issue where C-x 0 may close the last instance of a buffer

  • Version 3.6.4:
    • Internal changes

  • Version 3.6.3:
    • Optionally, save region replace text on the kill ring
    • Fix edge case on history kill ring 

  • Version 3.6.3:
    • Internal changes
  • Version 3.6.2:
    • Set the mark on tag-search or find-tag
    • Add pop-tag-mark (Alt-*) to return to where the last tag command was initiated
    • Fix edge case error in switch-to-buffer

  • Version 3.6.1:
    • Correct semantics of Ctrl-U Ctrl-K to more closely resemble GNU Emacs
    • Update system clipboard on copy after append-next-kill
    • In switch-to-buffer protect against plugins that construct buffers with empty names
    • Correct (harmless) trace errors from edge case mini-buffer entry

  • Version 3.6.0:
    • Improve behavior of Emacs+ on Europa

  • Version 3.5.9:
    • Add rotate-global-mark (like pop-global-mark, but in the reverse direction)
    • Fix issues with incomplete plugin initialization in rare cases

  • Version 3.5.8:
    • Fix issues with incorrect interpretation of ^U in goto-line
    • Fix issue with case replace in the query-replace family applied to xml/html editors

  • Version 3.5.7:
    • Preserve backward compatibility with Ganymede

  • Version 3.5.6:
    • Add interface for auto-loading kbd macros on restart (see preference page)

  • Version 3.5.5:
    • Fix issue with UP_ARROW and DOWN_ARROW history traversal in search/replace commands
    • Fix case-sensitive issue in search/replace commands after a mixed case history update

  • Version 3.5.4:
    • Support UP_ARROW and DOWN_ARROW for history traversal in minibuffer commands
    • Support shift-select in kbd macros
    • Fix Ctrl-U issue in kbd macros for some movement commands
    • Fix indent-for-tab issue on Mac OS X

  • Version 3.5.3:
    • Fix issue with erroneous clearing of shift selected region

  • Version 3.5.2:
    •  Internal adjustments

  • Version 3.5.1:
    • Enable GNU-style shift select mode in optional bindings
    • Add shift-select-mode toggle
    • Add GNU-style GUD bindings for debugging to optional bindings
      • C-X <SPC>, C-X C-A <SPACE>: toggle-breakpoint
      • C-C C-S, C-X C-A C-S: step-into
      • C-C C-N, C-X C-A C-N: step-over
      • C-C C-R, C-X C-A C-R: resume
      • C-C C-U, C-X C-A C-U: run-to-line
      • C-C C-F, C-X C-A C-F: step-return
    • Replace bindings on XEmacs style block-of-lines command with GNU standards
      • forward-paragraph:  C-DOWN_ARROW
      • backward-paragraph: C-UP_ARROW
      • down-list:          C-M-DOWN_ARROW
      • backward-up-list:   C-M-UP_ARROW
    • Correct detection of digit-argument on Mac OS X

  • Version 3.5.0:
    • Add up-list command
    • Add append-next-kill command
    • Add gnu alias - hl-line-mode command
    • Add gnu alias - line-number-mode command
    • Add gnu alias - global-whitespace-mode command
    • Add gnu like delete-trailing-whitespace command
    • Adjust interpretation of ^U yank to gnu standard
    • Support M-c to toggle case sensitivity on tags-search
    • Add Mac OS X COMMAND+BS binding for delete-previous-word
    • Add dynamic binding initializer to eliminate annoying startup messages
    • Introduce short delay when appending to Kbd Macro with ^U start-kbd-macro
    • Address binding conflict issues on selected console view command bindings

  • Version 3.4.4:
    • Add mark-paragraph command
    • Enable region constraint on replace commands
    • Correct issue with nested Kbd Macro invocations
    • Correct issue with M-x <minibuffer command> when recording Kbd Macro

  • Version 3.4.3:
    • Add mark-word command
    • Add scroll-up/scroll-down to support proper mark handling
    • Correct point behavior of mark-sexp and add support for negative ^U

  • Version 3.4.2:
    • Minor adjustments

  • Version 3.4.1:
    • Add sort-lines command
    • Add sort-fields command
    • Add sort-numeric-fields command
    • Add reverse-region command
    • Add sort-fold-case toggle
    • Improve Kbd Macro recording during auto-complete
    • Improve i-search key event exit

  • Version 3.4.0:
    • Add name completion for all Kbd Macro commands that prompt for a named macro
    • Add save-kbd-macro and load-kbd-macro commands
    • view-kbd-macro: with ^U, prompt for named macro to view
    • Improve minibuffer compound key event exit under OS X

  • Version 3.3.6:
    • Preserve compatibility between Linux/Mac/WIndows in Kbd Macros
      • Fix KeyUp issue introduced while supporting Linux

  • Version 3.3.5:
    • Preserve backward compatibility with Ganymede

  • Version 3.3.4:
    • Add C-u argument to C-x C-k B to allow convenience binding of named Kbd Macro
    • Support C-u 0 to repeat Kbd Macro execution until error
    • Support unitary undo in Apply Macro to Region Lines

  • Version 3.3.3:
    • Add iteration count to Kbd Macro interrupt message
    • Improve performance of Kbd Macro execution

  • Version 3.3.2:
    • Support negative C-u on Backward Up List
    • Support rotating the kill ring on C-u yank
    • Remove previous binding on Kbd Macro re-binding
    • Ensure beep interrupt on register command error

  • Version 3.3.1:
    • Correct case on Kbd Macro binding character

  • Version 3.3.0:
    • Add Indent Rigidly
    • Add Kbd Macro Bind To Key
    • Add Kbd Macro End Or Call
    • Add <F3> and <F4> optional command bindings for Kbd Macro definition/execution
    • Enhance stability of Kbd Macro execution

  • Version 3.2.4:
    • Add Join Line
    • Correct issue with EOL normalization in yank commands
    • Use project/path to disambiguate duplicates in switch-to-buffer

  • Version 3.2.3:

    • Support unicode characters in sexp commands

  • Version 3.2.2:

    • Support unicode characters in case-conversion commands
    • Add preference that disables in-line pre-edit text areas on Mac OS X
  • Version 3.2.1:
    • Support Mac OS X minibuffer Command-as-Meta in keyboard macros


  • Version 3.2.0:
    • Add Transpose Paragraphs command
    • Improve positioning of Forward and Backward Paragraph commands
    • Improve support for Max OS X:
      • Add optional Command-as-Meta binding features
      • Support Command-as-Meta in the minibuffer
      • Fix miscellaneous binding incompatibilities with Mac OS X
    • Enhance transpose commands:
      • Support C-u 0 and negative C-u on transpose-paragraphs
      • Support C-u 0 and negative C-u on transpose-sexps
      • Support C-u 0 and negative C-u on transpose-lines
        • Work around Eclipse mis-feature in move-lines-up
      • Support C-u 0 and negative C-u on transpose-words
      • Support negative C-u on transpose-characters
      • Correct semantics of transpose-characters at EOL

  • Version 3.1.4:
    • Work around Eclipse idiosyncrasy in files with single line delimiter character
    • Correct type in Apply Macro To Region Lines name

  • Version 3.1.3:
    • Account for folding in paragraph commands

  • Version 3.1.2:
    • Add Forward Paragraph (M-}): Move forward to end of paragraph
    • Add Backward Paragraph (M-{): Move backward to start of paragraph
    • Support . (period) and/or _ (underscore) as break/non-break characters in sexps
      • Add preferences to control interpretation of . and _
    • Normalize sexp commands names to Emacs standard (forward-sexp, etc)

  • Version 3.1.1:
    • Add Apply Macro To Region Lines (C-x C-k r): Run the last Kbd Macro on each line that begins in the region
    • Disallow certain bindings for executing kbd macros (can interfere with posting key events)
    • Support Apple <Option> modifier key in search 

  • Version 3.1.0:
    • Add Down List (C-M-d): Move forward down one level of brackets
    • Enable strict interpretation of balanced expressions
      • Add preference to control balanced expression interpretation

  • Version 3.0.3:
    • Support parameterized commands in keyboard macros

  • Version 3.0.2:
    • Support C-u in keyboard macros

  • Version 3.0.1:
    • Support search exit via arrow keys in keyboard macros

  • Version 3.0.0:
    • Add keyboard macro support (initial version)

  • Version 2.8.8:
    • Support clearing mark regions on copy when multiple Eclipse windows are present

  • Version 2.8.7:
    • Add align-regexp command
    • Add zap-to-char (M-z) command
    • Improve responsiveness of M-x and other minibuffer commands
    • Convert Java comment binding to GNU standard
      • M-; invokes comment-dwim like command (Eclipse's toggle-comment)
      • C-; invokes indent-for-comment
    • Improve digit-argument - (minus) processing

  • Version 2.8.6:
    • Add support for negative universal-argument for case conversion commands
    • Add support for digit argument like M-<n> and M-- and C-M-<n> C-M--
    • Add support for digit argument like C-<n> and C-- in the optional bindings
      • Add preference to force digit-argument interpretation for C-<n> (requires restart)

  • Version 2.8.5:
    • Add support for C-x C-x on mouse (or other non-mark set) selection
    • Close loophole in yank-pop constraint

  • Version 2.8.4:
    • Enhance undo (C-_, C-x u) to support undo/redo linkage

  • Version 2.8.3:
    • Add simple version of occur (and its alias list-matching-lines)
      that displays search results showing each line in the buffer matching the regexp
    • Improve search-in-working-set (C-u M-s) behavior

  • Version 2.8.2:
    • Add an emacs+-news command (C-h n) and describe-help-commands (C-h ?)
    • Add s-expression commands to TextConsoles when in textEditorScope
    • Support exchange-point-and-mark in TextConsoles

  • Version 2.8.1:
    • Add color chooser preference for browse-kill-ring console (default may be hard to see on MacOS)
    • Add <SPC> as another insert command for browse-kill-ring

  • Version 2.8.0:
    • Add Browse Kill Ring command with preference
    • Add simple movement, editing commands to TextConsoles when in activated textEditorScope

  • Version 2.7.7:
    • Address sequence-of-EOLs -> EOL regression on C-y

  • Version 2.7.6:
    • Correct focus lost behavior on C-x b

  • Version 2.7.5:
    • Add generic backward-up-list (C-M-u)
    • Expand mark selection on C-u invocation of movement commands

  • Version 2.7.4:
    • On yank and insert-register convert line delimiter to local buffer value to match Eclipse's paste command

  • Version 2.7.3:
    • Add C-s, C-r and C-g sub-commands to C-x b and M-x
    • Don't invoke shadowed binding on i-search exit

  • Version 2.7.2:
    • Address obscure issue with excess activations of multi-page editors

  • Version 2.7.1:
    • Reduce latency on C-x b execution

  • Version 2.7.0:
    • Add switch-to-buffer (C-x b): replace Eclipse version with a minibuffer based implementation
    • Add generic indent-for-tab command

  • Version 2.6.2:
    • Fix minor issue in spacing on C-x r c

  • Version 2.6.1:
    • Add delete-indentation (M-^): Join this line to previous and fix up whitespace at join
    • Add recenter-top-bottom (C-L): Enhance Eclipse recenter to move current line to window center, top, and bottom, successively.
    • Allow empty string on rectangle replacement (C-x r t)

  • Version 2.6.0:
    • Add rectangle family of commands:

      • kill-rectangle (C-x r k):  Kill the text of the rectangle, saving its contents as the last killed rectangle
      • delete-rectangle (C-x r d): Delete the text of the region-rectangle
      • yank-rectangle (C-x r y):  Yank the last killed rectangle with its upper left corner at point
      • open-rectangle (C-x r o):  Insert blank space to fill the space of the rectangle. This pushes the previous contents of the rectangle rightward
      • clear rectangle (C-x r c):  Clear the region-rectangle by replacing all of its contents with spaces
      • delete-whitespace-rectangle:  Delete initial whitespace in each of the lines on the specified rectangle
      • replace-rectangle (C-x r t <STRING>):  Replace rectangle contents with <STRING> on each line
      • string-rectangle:  Insert <STRING> on each line of the rectangle
         
    • Add rectangle support to register commands
      • copy-rectangle-to-register (C-x r r): Copy the region-rectangle into register *R* 
        • With (C-u) universal argument, delete it as well.
      • [augmented] insert-register (Ctrl-x r i):  Insert the rectangle stored in register *R* (if it contains a rectangle)
        • insert-register inserts a text string if the register contains one, or inserts a rectangle if the register contains one.

  • Version 2.5.6:
    • Fix M-n, M-p history regression in i-search commands

  • Version 2.5.5:
    • On MacOS - correct i-search exit functionality

  • Version 2.5.4:
    • Add preference to support gnu yank, yank-pop for replace commands (now default behavior)
    • Add M-c sub-command (toggle case sensitivity)  to i-search

  • Version 2.5.3:
    • Add goto-line (M-g): Goto line, counting from line 1 at beginning of buffer.  Move point in the current buffer, and leave mark at the previous position.
    • Add goto-char: Move point to specified character position
    • Add count-lines-region (M-=): Print number of lines and characters in the region
    • Add count-lines-buffer (C-x L): Print number of lines in current buffer, and how many are before or after point
    • Add count-matches: Print and return number of matches for REGEXP following point
    • Add what-line: Print the current buffer line number and narrowed line number of point
    • Add what-cursor-position (C-x =): Print info on cursor position (on screen and within buffer)

  • Version 2.5.2:
    • Add back-to-indent (M-m): Move point to first non-whitespace character on the line
    • Support regexp-i-search bindings for generic i-search repeat

  • Version 2.5.1:
    • On mark-whole-buffer (C-x h) push mark at current location before selecting entire buffer

  • Version 2.5.0:
    • Add buffer-local mark ring
    • Add global mark ring
    • set-mark-command (C-<SPC>) Set mark and push previous mark onto mark ring
    • push-mark (C-<SPC> C-<SPC>) Set the mark without activating it.
    • pop-to-mark (C-u C-<SPC>): Pop the next mark from the mark ring and move to it
    • pop-global-mark (C-x C-<SPC>) : Pop the next global mark from the mark ring and move to it
    • mark-whole-buffer (C-x h): Correct Eclipse select-all semantics
    • Remove optional (non-Emacs) C-M-[ and C-M-] bindings as they interfere with international keyboards

  • Version 2.4.5:
    • Add number-to-register and increment-register commands and bindings
    • Add search string edit commands C-M-w and C-M-y
    • Support gnu regexp replacement string syntax \& to represent entire search string
    • Add optional binding C-h f as an alias for C-h d
    • On yank, set mark to the beginning of the yanked region
    • When moving to begin/end of buffer, set mark to previous location
    • Check copy/*pend register commands on C-u
    • Fix issue with number line in describe key

  • Version 2.4.4:
    • Remove inappropriate constraint from C-u and non-edit register commands
  • Version 2.4.3:
    • Add new line indent (C-j - optional binding) command
    • Add list-registers (C-u C-x r v) as an explicit command

  • Version 2.4.2:
    • Adjust C-u invocation

  • Version 2.4.1:
    • View all named registers on C-u C-x r v
    • Work around Eclipse regexp bug on solitary ^ and $
  • Version 2.4.0:
    • Implement named register commands (C-x r *) for text and location

  • Version 2.3.1:
    • Adjust semantics of other-window (C-x o) to prefer a previous editor stack window if present
    • Provide C-u minibuffer prompt after M-x universal-argument call

  • Version 2.3.0:
    • Implement C-u - universal-argument for selected commands and text
    • Drop support for Europa

  • Version 2.2.11:
    • Work around Eclipse issue to continue to support Europa

  • Version 2.2.10:
    • Implement describe-key-briefly
      • (with optional binding C-h c)
    • When yank attempted on non-editor window, try paste
    • Improve describe-key on traverse event key
    • Don't display unbound key hint in status area

  • Version 2.2.9:
  • Version 2.2.8:
    • Add kill/copy text from non-edit views to kill ring

  • Version 2.2.7:
    • Add MacOS M-SHIFT-N binding
    • Remove enabled constraint on describe-command

  • Version 2.2.6:
    • Implement: apropos-command, describe-bindings
      • (with optional bindings C-h a, C-h b)
    • Add optional binding: (C-M-SHIFT-L) - next-view
  • Version 2.2.5:
    • Implement: describe-command, describe-key & where-is-command
      • (with optional bindings C-h d, C-h k, C-h w)

  • Version 2.2.4:
    • Implement true narrow/widen behavior (C-x n n, C-x n w)

  • Version 2.2.3:
    • Support narrow constraint during block movement
    • Fix small issue with wrap on reverse i-search

  • Version 2.2.2:
    • Correct initial BS/DEL in tags search
    • Improve ESC handling in search commands

  • Version 2.2.1:
    • Correct cursor position after successful replace all
    • Add other-window positioning commands

  • Version 2.2.0:
    • Search/Replace (M-%, C-M-%)
    • Augmented search behavior (C-s, C-M-s, C-r, C-M-r)
    • Add new replace functions: replace-string, replace-regexp
    • Support for search sub-commands on new and augmented searching:
      • C-w, C-y, M-y, M-p, M-n

    • Additional:
      • Add history ring buffer to tags search and support sub-commands
      • Add history ring buffer to M-x
      • Activate upper editor on split

  • Version 2.1.6:
    • Adapt to (some) custom editors

  • Version 2.1.5:
  • Version 2.1.4:
    • Resolve issues with C-x 1 and MultiPageEditors

  • Version 2.1.3:
    • Enable close window (C-x 0)
    • Force Ctrl for all appropriate bindings to support MacOS (a la emacsAcceleratorConfiguration)

  • Version 2.1.2:
    • Internals

  • Version 2.1.1:
    • Tags search now uses regexp mode

  • Version 2.1.0:
    • Enable editor to split itself on split-window commands
    • Add preference to control editor splitting (defaults to checked)

  • Version 2.0.2:
    •  Adds window navigation commands (C-x o and C-u C-x o)

  • Version 2.0.1:
    • Implements C-x 1 for top window