\f
* Startup Changes in Emacs 24.4
++++
+** The -L option, which normally prepends its argument to load-path,
+will instead append, if the argument begins with `:'.
+
\f
* Changes in Emacs 24.4
++++
+** Emacs now supports menus on text-mode terminals.
+If the terminal supports a mouse, clicking on the menu bar, or on
+sensitive portions of the mode line or header line, will drop down the
+menu defined at that position. Likewise, clicking C-mouse-2 or
+C-mouse-2 or C-mouse-3 on the text area will pop up the menus defined
+for those locations.
+
+If the text terminal does not support a mouse, you can activate the
+first menu-bar menu by typing F10, which invokes `menu-bar-open'.
+
+If you want the previous behavior, whereby F10 invoked `tmm-menubar',
+customize the option `tty-menu-open-use-tmm' to a non-nil value.
+(Typing M-` will always invoke `tmm-menubar', even if
+`tty-menu-open-use-tmm' is nil.)
+
** Key ? also describes prefix bindings like C-h.
+++
Generic commands are interactive functions whose implementation can be
selected among several alternatives, as a matter of user preference.
+** New hooks `focus-in-hook', `focus-out-hook'.
+
** The blink cursor stops blinking after 10 blinks (default) on X and NS.
You can change the default by customizing the variable blink-cursor-blinks.
Also timers for blinking are stopped when no blinking is done, so Emacs does
some enhancements, like the ability to restore deleted frames. Command
`frame-configuration-to-register' is still available, but unbound.
+** The command `quail-help' is deleted. Use `C-h C-\'
+(`describe-input-method') instead.
+
+** The default value of `comment-use-global-state' is changed to t,
+and this variable has been marked obsolete.
+
+** `fill-single-char-nobreak-p' prevents fill from breaking a line after
+a 1-letter word, which is an error according to Polish and
+Czech typography rules. To globally enable this feature, evaluate:
+
+ (add-hook 'fill-nobreak-predicate 'fill-single-char-nobreak-p)
+
\f
* Editing Changes in Emacs 24.4
+** Command `rectangle-mark-mode' bound to C-x SPC makes a rectangular region.
+Most commands are still unaware of it, but kill/yank do work on the rectangle.
+
+** C-x TAB enters a transient interactive mode.
+You can then use the left/right cursor keys to move the block of text.
+
+** `tab-stop-list' is now implicitly extended to infinity by repeating
+the last step. Its default value is changed to nil which means a tab
+stop every `tab-width' columns.
+
** `split-window' is no longer a command, just a non-interactive function.
As a command it was a special case of `split-window-below', and as such
superfluous. After being reimplemented in Lisp, its interactive form
left, <right> always moves to the right, disregarding the surrounding
bidirectional context.
+** All register commands can now show help with preview.
+
** New command `kmacro-to-register' to store keyboard macros in registers.
** Shell Script mode
\f
* Changes in Specialized Modes and Packages in Emacs 24.4
+** prolog-use-smie has been removed, along with the non-SMIE indentation code.
+
+** SMIE indentation can be customized via `smie-config'.
+The customization can be guessed by Emacs by providing a sample indented
+file and letting SMIE learn from it.
+
+** sh-script now uses its SMIE indentation algorithm by default.
+
** The debugger's `e' command evaluates the code in the context at point.
This includes using the lexical environment at point, which means that
`e' now lets you access lexical variables as well.
will revert to the old behavior.
+** New features for Octave mode:
+*** Font locking for texinfo comments and new keywords
+*** Completion in Octave file buffers
+*** Eldoc support
+*** Jump to definition
+*** Documentation lookup/search
+*** Code cleanup and various bug fixes
+
** Ido
*** Ido has a manual now.
*** `ido-use-virtual-buffers' takes a new value 'auto.
Tramp-using variants can still be used by enabling the eshell-tramp
module.
+** Package
+
+*** The format of `archive-contents' files, generated by package
+repositories, has changed to allow a new (fifth) element in the data
+vectors, containing an associative list with extra properties.
+
+*** `describe-package' buffer uses the `:url' extra property to
+display a `Homepage' header, if it's present.
+
** New term.el option `term-suppress-hard-newline'.
** Obsolete packages:
+*** Iswitchb is made obsolete by icomplete-mode.
+
*** longlines.el is obsolete; use visual-line-mode instead.
+++
whether it is safe to use Bash's --noediting option. These days
--noediting is ubiquitous; it was introduced in 1996 in Bash version 2.
++++
+** There is a new macro `skip-unless' for skipping ERT tests. See the manual.
+
\f
* New Modes and Packages in Emacs 24.4
\f
* Incompatible Lisp Changes in Emacs 24.4
+** `kill-region' lost its `yank-handler' optional argument.
+
+** `(input-pending-p)' no longer runs other timers which are ready to
+run. The new optional CHECK-TIMERS param allows for the prior behavior.
+
** `defvar' and `defcustom' in a let-binding affect the "external" default.
** The syntax of ?» and ?« is now punctuation instead of matched parens.
\f
* Lisp Changes in Emacs 24.4
+** New hook `pre-redisplay-function'.
+
++++
+** Functions that pop up menus and dialogs now work on all terminal types,
+including TTYs.
+This includes `x-popup-menu', `x-popup-dialog', `message-box',
+`yes-or-no-p', etc.
+
+The function `display-popup-menus-p' will now return non-nil for a
+display or frame whenever a mouse is supported on that display or
+frame.
+
+** New bool-vector set operation functions:
+*** `bool-vector-exclusive-or'
+*** `bool-vector-union'
+*** `bool-vector-intersection'
+*** `bool-vector-set-difference'
+*** `bool-vector-not'
+*** `bool-vector-subsetp'
+*** `bool-vector-count-consecutive'
+*** `bool-vector-count-population'
+
** Comparison functions =, <, >, <=, >= now take many arguments.
** The second argument of `eval' can now be a lexical-environment.
+++
** New macro with-eval-after-load. Like eval-after-load, but better behaved.
+** New library helpers.el for misc helper functions
+*** `hash-table-keys'
+*** `hash-table-values'
+
** Obsoleted functions:
*** `log10'
*** `dont-compile'
*** New face characteristic (supports :underline (:style wave))
specifies whether or not the terminal can display a wavy line.
+*** New face spec attribute :distant-foreground
+specifies foreground to use if background color is near the foreground
+color that would otherwise have been used.
+
** Image API
+++