diff options
| -rw-r--r-- | etc/NEWS | 1125 | ||||
| -rw-r--r-- | nextstep/README | 19 |
2 files changed, 571 insertions, 573 deletions
| @@ -12,7 +12,7 @@ See file HISTORY for a list of GNU Emacs versions and release dates. | |||
| 12 | See files NEWS.24, NEWS.23, NEWS.22, NEWS.21, NEWS.20, NEWS.19, NEWS.18, | 12 | See files NEWS.24, NEWS.23, NEWS.22, NEWS.21, NEWS.20, NEWS.19, NEWS.18, |
| 13 | and NEWS.1-17 for changes in older Emacs versions. | 13 | and NEWS.1-17 for changes in older Emacs versions. |
| 14 | 14 | ||
| 15 | You can narrow news to a specific version by calling ‘view-emacs-news’ | 15 | You can narrow news to a specific version by calling 'view-emacs-news' |
| 16 | with a prefix argument or by typing C-u C-h C-n. | 16 | with a prefix argument or by typing C-u C-h C-n. |
| 17 | 17 | ||
| 18 | Temporary note: | 18 | Temporary note: |
| @@ -58,54 +58,54 @@ obstacles to maintenance and development. GC_MARK_STACK and its | |||
| 58 | related symbols have been removed from the C internals. | 58 | related symbols have been removed from the C internals. |
| 59 | 59 | ||
| 60 | --- | 60 | --- |
| 61 | ** ‘configure’ now prefers gnustep-config when configuring GNUstep. | 61 | ** 'configure' now prefers gnustep-config when configuring GNUstep. |
| 62 | If gnustep-config is not available, the old heuristics are used. | 62 | If gnustep-config is not available, the old heuristics are used. |
| 63 | 63 | ||
| 64 | --- | 64 | --- |
| 65 | ** ‘configure’ now prefers inotify to gfile for file notification, | 65 | ** 'configure' now prefers inotify to gfile for file notification, |
| 66 | unless gfile is explicitly requested via --with-file-notification='gfile'. | 66 | unless gfile is explicitly requested via --with-file-notification='gfile'. |
| 67 | 67 | ||
| 68 | --- | 68 | --- |
| 69 | ** ‘configure’ detects the kqueue file notification library on *BSD | 69 | ** 'configure' detects the kqueue file notification library on *BSD |
| 70 | and Mac OS X machines. | 70 | and Mac OS X machines. |
| 71 | 71 | ||
| 72 | --- | 72 | --- |
| 73 | ** The configure option ‘--with-pkg-config-prog’ has been removed. | 73 | ** The configure option '--with-pkg-config-prog' has been removed. |
| 74 | Use ‘./configure PKG_CONFIG=/full/name/of/pkg-config’ if you need to. | 74 | Use './configure PKG_CONFIG=/full/name/of/pkg-config' if you need to. |
| 75 | 75 | ||
| 76 | --- | 76 | --- |
| 77 | ** The configure option ‘--with-mmdf’ has been removed. | 77 | ** The configure option '--with-mmdf' has been removed. |
| 78 | It was no longer useful, as it relied on libraries that are no longer | 78 | It was no longer useful, as it relied on libraries that are no longer |
| 79 | supported, and its presence led to confusion during configuration. | 79 | supported, and its presence led to confusion during configuration. |
| 80 | This affects only the ‘movemail’ utility; Emacs itself can still | 80 | This affects only the 'movemail' utility; Emacs itself can still |
| 81 | process MMDF-format files as before. | 81 | process MMDF-format files as before. |
| 82 | 82 | ||
| 83 | +++ | 83 | +++ |
| 84 | ** The configure option ‘--enable-silent-rules’ is now the default, | 84 | ** The configure option '--enable-silent-rules' is now the default, |
| 85 | and silent rules are now quieter. To get the old behavior where | 85 | and silent rules are now quieter. To get the old behavior where |
| 86 | ‘make’ chatters a lot, configure with ‘--disable-silent-rules’ or | 86 | 'make' chatters a lot, configure with '--disable-silent-rules' or |
| 87 | build with ‘make V=1’. | 87 | build with 'make V=1'. |
| 88 | 88 | ||
| 89 | --- | 89 | --- |
| 90 | ** The configure option ‘--with-gameuser’ now allows you to specify a | 90 | ** The configure option '--with-gameuser' now allows you to specify a |
| 91 | group instead of a user if its argument is prefixed by ‘:’ (a colon). | 91 | group instead of a user if its argument is prefixed by ':' (a colon). |
| 92 | This will cause the game score files in ${localstatedir}/games/emacs | 92 | This will cause the game score files in ${localstatedir}/games/emacs |
| 93 | to be owned by that group, and the helper program for updating them to | 93 | to be owned by that group, and the helper program for updating them to |
| 94 | be installed setgid. The option now defaults to the ‘games’ group. | 94 | be installed setgid. The option now defaults to the 'games' group. |
| 95 | 95 | ||
| 96 | --- | 96 | --- |
| 97 | ** The ‘grep-changelog’ script (and its manual page) are no longer included. | 97 | ** The 'grep-changelog' script (and its manual page) are no longer included. |
| 98 | It has no particular connection to Emacs and has not changed in years, | 98 | It has no particular connection to Emacs and has not changed in years, |
| 99 | so if you want to use it, you can always take a copy from an older Emacs. | 99 | so if you want to use it, you can always take a copy from an older Emacs. |
| 100 | 100 | ||
| 101 | --- | 101 | --- |
| 102 | ** Emacs 25 comes with a new set of icons. | 102 | ** Emacs 25 comes with a new set of icons. |
| 103 | Various resolutions are available as etc/images/icons/hicolor/*/apps/emacs.png. | 103 | Various resolutions are available as etc/images/icons/hicolor/*/apps/emacs.png. |
| 104 | The old Emacs logo icons are available as ‘emacs23.png’ in the same location. | 104 | The old Emacs logo icons are available as 'emacs23.png' in the same location. |
| 105 | 105 | ||
| 106 | --- | 106 | --- |
| 107 | ** New make target ‘check-expensive’ to run additional tests. | 107 | ** New make target 'check-expensive' to run additional tests. |
| 108 | This includes all tests which run via ‘make check’, plus additional | 108 | This includes all tests which run via "make check", plus additional |
| 109 | tests which take more time to perform. | 109 | tests which take more time to perform. |
| 110 | 110 | ||
| 111 | 111 | ||
| @@ -113,14 +113,14 @@ tests which take more time to perform. | |||
| 113 | 113 | ||
| 114 | +++ | 114 | +++ |
| 115 | ** When Emacs is given a file as a command line argument and | 115 | ** When Emacs is given a file as a command line argument and |
| 116 | ‘initial-buffer-choice’ is non-nil, display both the file and | 116 | 'initial-buffer-choice' is non-nil, display both the file and |
| 117 | ‘initial-buffer-choice’. When Emacs is given more than one file and | 117 | 'initial-buffer-choice'. When Emacs is given more than one file and |
| 118 | ‘initial-buffer-choice’ is non-nil, show ‘initial-buffer-choice’ | 118 | 'initial-buffer-choice' is non-nil, show 'initial-buffer-choice' |
| 119 | and *Buffer List*. This makes Emacs convenient to use from the | 119 | and *Buffer List*. This makes Emacs convenient to use from the |
| 120 | command line when ‘initial-buffer-choice’ is non-nil. | 120 | command line when 'initial-buffer-choice' is non-nil. |
| 121 | 121 | ||
| 122 | +++ | 122 | +++ |
| 123 | ** The value of ‘initial-scratch-message’ is now treated as a doc string | 123 | ** The value of 'initial-scratch-message' is now treated as a doc string |
| 124 | and can contain escape sequences for command keys, quotes, and the like. | 124 | and can contain escape sequences for command keys, quotes, and the like. |
| 125 | 125 | ||
| 126 | 126 | ||
| @@ -129,61 +129,61 @@ and can contain escape sequences for command keys, quotes, and the like. | |||
| 129 | +++ | 129 | +++ |
| 130 | ** Xwidgets: a new feature for embedding native widgets inside Emacs buffers. | 130 | ** Xwidgets: a new feature for embedding native widgets inside Emacs buffers. |
| 131 | If you have gtk3 and webkitgtk3 installed, and Emacs was built with | 131 | If you have gtk3 and webkitgtk3 installed, and Emacs was built with |
| 132 | xwidget support, you can access the embedded webkit browser with ‘M-x | 132 | xwidget support, you can access the embedded webkit browser with 'M-x |
| 133 | xwidget-webkit-browse-url’. This opens a new buffer with the embedded | 133 | xwidget-webkit-browse-url'. This opens a new buffer with the embedded |
| 134 | browser. The buffer will have a new mode, ‘xwidget-webkit-mode’ | 134 | browser. The buffer will have a new mode, 'xwidget-webkit-mode' |
| 135 | (similar to ‘image-mode’), which supports the webkit widget. | 135 | (similar to 'image-mode'), which supports the webkit widget. |
| 136 | 136 | ||
| 137 | +++ | 137 | +++ |
| 138 | *** New functions for xwidget-webkit mode ‘xwidget-webkit-insert-string’, | 138 | *** New functions for xwidget-webkit mode 'xwidget-webkit-insert-string', |
| 139 | ‘xwidget-webkit-adjust-size-dispatch’, ‘xwidget-webkit-back’, | 139 | 'xwidget-webkit-adjust-size-dispatch', 'xwidget-webkit-back', |
| 140 | ‘xwidget-webkit-browse-url’, ‘xwidget-webkit-reload’, | 140 | 'xwidget-webkit-browse-url', 'xwidget-webkit-reload', |
| 141 | ‘xwidget-webkit-current-url’, ‘xwidget-webkit-scroll-backward’, | 141 | 'xwidget-webkit-current-url', 'xwidget-webkit-scroll-backward', |
| 142 | ‘xwidget-webkit-scroll-forward’, ‘xwidget-webkit-scroll-down’, | 142 | 'xwidget-webkit-scroll-forward', 'xwidget-webkit-scroll-down', |
| 143 | ‘xwidget-webkit-scroll-up’. | 143 | 'xwidget-webkit-scroll-up'. |
| 144 | 144 | ||
| 145 | +++ | 145 | +++ |
| 146 | ** Emacs can now load shared/dynamic libraries (modules). | 146 | ** Emacs can now load shared/dynamic libraries (modules). |
| 147 | A dynamic Emacs module is a shared library that provides additional | 147 | A dynamic Emacs module is a shared library that provides additional |
| 148 | functionality for use in Emacs Lisp programs, just like a package | 148 | functionality for use in Emacs Lisp programs, just like a package |
| 149 | written in Emacs Lisp would. The functions ‘load’, ‘require’, | 149 | written in Emacs Lisp would. The functions 'load', 'require', |
| 150 | ‘load-file’, etc. were extended to load such modules, as they do with | 150 | 'load-file', etc. were extended to load such modules, as they do with |
| 151 | Emacs Lisp packages. The new variable ‘module-file-suffix’ holds the | 151 | Emacs Lisp packages. The new variable 'module-file-suffix' holds the |
| 152 | system-dependent value of the file-name extension (‘.so’ on Posix | 152 | system-dependent value of the file-name extension ('.so' on Posix |
| 153 | hosts) of the module files. | 153 | hosts) of the module files. |
| 154 | 154 | ||
| 155 | A module should export a C-callable function named | 155 | A module should export a C-callable function named |
| 156 | ‘emacs_module_init’, which Emacs will call as part of the call to | 156 | 'emacs_module_init', which Emacs will call as part of the call to |
| 157 | ‘load’ or ‘require’ which loads the module. It should also export a | 157 | 'load' or 'require' which loads the module. It should also export a |
| 158 | symbol named ‘plugin_is_GPL_compatible’ to indicate that its code is | 158 | symbol named 'plugin_is_GPL_compatible' to indicate that its code is |
| 159 | released under the GPL or compatible license; Emacs will refuse to | 159 | released under the GPL or compatible license; Emacs will refuse to |
| 160 | load modules that don’t export such a symbol. | 160 | load modules that don't export such a symbol. |
| 161 | 161 | ||
| 162 | If a module needs to call Emacs functions, it should do so through the | 162 | If a module needs to call Emacs functions, it should do so through the |
| 163 | API defined and documented in the header file ‘emacs-module.h’. Note | 163 | API defined and documented in the header file 'emacs-module.h'. Note |
| 164 | that any module that provides Lisp-callable functions will have to use | 164 | that any module that provides Lisp-callable functions will have to use |
| 165 | Emacs functions such as ‘fset’ and ‘funcall’, in order to register its | 165 | Emacs functions such as 'fset' and 'funcall', in order to register its |
| 166 | functions with the Emacs Lisp interpreter. | 166 | functions with the Emacs Lisp interpreter. |
| 167 | 167 | ||
| 168 | Modules can create ‘user-ptr’ Lisp objects that embed pointers to C | 168 | Modules can create 'user-ptr' Lisp objects that embed pointers to C |
| 169 | structs defined by the module. This is useful for keeping around | 169 | structs defined by the module. This is useful for keeping around |
| 170 | complex data structures created by a module, to be passed back to the | 170 | complex data structures created by a module, to be passed back to the |
| 171 | module’s functions. User-ptr objects can also have associated | 171 | module's functions. User-ptr objects can also have associated |
| 172 | “finalizers” -- functions to be run when the object is GC’ed; this is | 172 | "finalizers" -- functions to be run when the object is GC'ed; this is |
| 173 | useful for freeing any resources allocated for the underlying data | 173 | useful for freeing any resources allocated for the underlying data |
| 174 | structure, such as memory, open file descriptors, etc. A new | 174 | structure, such as memory, open file descriptors, etc. A new |
| 175 | predicate ‘user-ptrp’ returns non-nil if its argument is a ‘user-ptr’ | 175 | predicate 'user-ptrp' returns non-nil if its argument is a 'user-ptr' |
| 176 | object. | 176 | object. |
| 177 | 177 | ||
| 178 | Loadable modules in Emacs are an experimental feature, and subject to | 178 | Loadable modules in Emacs are an experimental feature, and subject to |
| 179 | change in future releases. For that reason, their support is disabled | 179 | change in future releases. For that reason, their support is disabled |
| 180 | by default, and must be enabled by using the ‘--with-modules’ option | 180 | by default, and must be enabled by using the '--with-modules' option |
| 181 | at configure time. | 181 | at configure time. |
| 182 | 182 | ||
| 183 | +++ | 183 | +++ |
| 184 | ** Network security (TLS/SSL certificate validity and the like) is | 184 | ** Network security (TLS/SSL certificate validity and the like) is |
| 185 | added via the new Network Security Manager (NSM) and controlled via | 185 | added via the new Network Security Manager (NSM) and controlled via |
| 186 | the ‘network-security-level’ variable. | 186 | the 'network-security-level' variable. |
| 187 | 187 | ||
| 188 | +++ | 188 | +++ |
| 189 | ** C-h l now also lists the commands that were run. | 189 | ** C-h l now also lists the commands that were run. |
| @@ -193,50 +193,50 @@ the ‘network-security-level’ variable. | |||
| 193 | and x-select-enable-primary is renamed select-enable-primary. | 193 | and x-select-enable-primary is renamed select-enable-primary. |
| 194 | Additionally they both now apply to all systems (OSX, GNUstep, Windows, you | 194 | Additionally they both now apply to all systems (OSX, GNUstep, Windows, you |
| 195 | name it), with the proviso that on some systems (e.g. Windows) | 195 | name it), with the proviso that on some systems (e.g. Windows) |
| 196 | select-enable-primary is ineffective since the system doesn’t | 196 | select-enable-primary is ineffective since the system doesn't |
| 197 | have the equivalent of a primary selection. | 197 | have the equivalent of a primary selection. |
| 198 | 198 | ||
| 199 | +++ | 199 | +++ |
| 200 | ** New option ‘switch-to-buffer-in-dedicated-window’ allows you to | 200 | ** New option 'switch-to-buffer-in-dedicated-window' allows you to |
| 201 | customize how ‘switch-to-buffer’ proceeds interactively when the | 201 | customize how 'switch-to-buffer' proceeds interactively when the |
| 202 | selected window is strongly dedicated to its buffer. | 202 | selected window is strongly dedicated to its buffer. |
| 203 | 203 | ||
| 204 | +++ | 204 | +++ |
| 205 | ** The option ‘even-window-heights’ has been renamed to | 205 | ** The option 'even-window-heights' has been renamed to |
| 206 | ‘even-window-sizes’ and now handles window widths as well. | 206 | 'even-window-sizes' and now handles window widths as well. |
| 207 | 207 | ||
| 208 | +++ | 208 | +++ |
| 209 | ** terpri gets an optional arg ENSURE to conditionally output a newline. | 209 | ** terpri gets an optional arg ENSURE to conditionally output a newline. |
| 210 | 210 | ||
| 211 | +++ | 211 | +++ |
| 212 | ** ‘insert-register’ now leaves point after the inserted text | 212 | ** 'insert-register' now leaves point after the inserted text |
| 213 | when called interactively. A prefix argument toggles this behavior. | 213 | when called interactively. A prefix argument toggles this behavior. |
| 214 | 214 | ||
| 215 | +++ | 215 | +++ |
| 216 | ** The new variable ‘term-file-aliases’ replaces some files from lisp/term. | 216 | ** The new variable 'term-file-aliases' replaces some files from lisp/term. |
| 217 | The function ‘tty-run-terminal-initialization’ consults this variable | 217 | The function 'tty-run-terminal-initialization' consults this variable |
| 218 | when deciding what terminal-specific initialization code to run. | 218 | when deciding what terminal-specific initialization code to run. |
| 219 | 219 | ||
| 220 | --- | 220 | --- |
| 221 | ** New variable ‘system-configuration-features’, listing some of the | 221 | ** New variable 'system-configuration-features', listing some of the |
| 222 | main features that Emacs was compiled with. This is mainly intended | 222 | main features that Emacs was compiled with. This is mainly intended |
| 223 | for use in Emacs bug reports. | 223 | for use in Emacs bug reports. |
| 224 | 224 | ||
| 225 | +++ | 225 | +++ |
| 226 | ** A password is now hidden also when typed in batch mode. Another | 226 | ** A password is now hidden also when typed in batch mode. Another |
| 227 | hiding character but the default ‘.’ can be used by let-binding the | 227 | hiding character but the default '.' can be used by let-binding the |
| 228 | variable ‘read-hide-char’. | 228 | variable 'read-hide-char'. |
| 229 | 229 | ||
| 230 | +++ | 230 | +++ |
| 231 | ** The Emacs pseudo-random number generator can be securely seeded. | 231 | ** The Emacs pseudo-random number generator can be securely seeded. |
| 232 | On system where Emacs can access the system entropy or some other | 232 | On system where Emacs can access the system entropy or some other |
| 233 | cryptographically secure random stream, it now uses that when ‘random’ | 233 | cryptographically secure random stream, it now uses that when 'random' |
| 234 | is called with its argument ‘t’. This allows cryptographically strong | 234 | is called with its argument 't'. This allows cryptographically strong |
| 235 | random values; in particular, the Emacs server now uses this facility | 235 | random values; in particular, the Emacs server now uses this facility |
| 236 | to produce its authentication key. | 236 | to produce its authentication key. |
| 237 | 237 | ||
| 238 | --- | 238 | --- |
| 239 | ** New input methods: ‘tamil-dvorak’ and ‘programmer-dvorak’. | 239 | ** New input methods: 'tamil-dvorak' and 'programmer-dvorak'. |
| 240 | 240 | ||
| 241 | 241 | ||
| 242 | * Editing Changes in Emacs 25.1 | 242 | * Editing Changes in Emacs 25.1 |
| @@ -249,17 +249,17 @@ to produce its authentication key. | |||
| 249 | +++ | 249 | +++ |
| 250 | *** Successive single-char deletions are collapsed in the undo-log just like | 250 | *** Successive single-char deletions are collapsed in the undo-log just like |
| 251 | successive char insertions. Which commands invoke this behavior is | 251 | successive char insertions. Which commands invoke this behavior is |
| 252 | controlled by the new ‘undo-auto-amalgamate’ function. See the node | 252 | controlled by the new 'undo-auto-amalgamate' function. See the node |
| 253 | ‘‘Undo’’ in the ELisp manual for more details. | 253 | "Undo" in the ELisp manual for more details. |
| 254 | 254 | ||
| 255 | +++ | 255 | +++ |
| 256 | *** The heuristic used to insert ‘undo-boundary’ after each command | 256 | *** The heuristic used to insert 'undo-boundary' after each command |
| 257 | has changed, so that if a command causes changes in more than just the | 257 | has changed, so that if a command causes changes in more than just the |
| 258 | current buffer, Emacs now calls ‘undo-boundary’ in every buffer | 258 | current buffer, Emacs now calls 'undo-boundary' in every buffer |
| 259 | affected by the command. | 259 | affected by the command. |
| 260 | 260 | ||
| 261 | +++ | 261 | +++ |
| 262 | ** New command ‘comment-line’ bound to ‘C-x C-;’. | 262 | ** New command 'comment-line' bound to 'C-x C-;'. |
| 263 | 263 | ||
| 264 | ** New and improved facilities for inserting Unicode characters | 264 | ** New and improved facilities for inserting Unicode characters |
| 265 | 265 | ||
| @@ -267,18 +267,19 @@ affected by the command. | |||
| 267 | *** Unicode names entered via C-x 8 RET now use substring completion by default. | 267 | *** Unicode names entered via C-x 8 RET now use substring completion by default. |
| 268 | 268 | ||
| 269 | +++ | 269 | +++ |
| 270 | *** C-x 8 now has shorthands for these chars: ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ | 270 | *** C-x 8 now has shorthands for several chars, such as U+2010 |
| 271 | € № ← → ↔ − ≈ ≠ ≤ ≥. As before, you can type C-x 8 C-h to list shorthands. | 271 | (HYPHEN), U+2011 (NON-BREAKING HYPHEN), and U+2012 (FIGURE DASH). As |
| 272 | before, you can type C-x 8 C-h to list shorthands. | ||
| 272 | 273 | ||
| 273 | +++ | 274 | +++ |
| 274 | *** New minor mode electric-quote-mode for quoting ‘like this’ and “like this” | 275 | *** New minor mode electric-quote-mode for using curved quotes as you |
| 275 | as you type. See also the new variable ‘text-quoting-style’. | 276 | type. See also the new variable 'text-quoting-style'. |
| 276 | 277 | ||
| 277 | --- | 278 | --- |
| 278 | ** New minor mode global-eldoc-mode is enabled by default. | 279 | ** New minor mode global-eldoc-mode is enabled by default. |
| 279 | 280 | ||
| 280 | --- | 281 | --- |
| 281 | ** Emacs now uses “bracketed paste mode” on text terminals that support it. | 282 | ** Emacs now uses "bracketed paste mode" on text terminals that support it. |
| 282 | Bracketed paste mode causes text terminals to wrap pasted text in special | 283 | Bracketed paste mode causes text terminals to wrap pasted text in special |
| 283 | escape sequences that allow Emacs to tell the difference between text | 284 | escape sequences that allow Emacs to tell the difference between text |
| 284 | you type and text you paste from other applications. Emacs then | 285 | you type and text you paste from other applications. Emacs then |
| @@ -300,31 +301,31 @@ Bidirectional Parentheses Algorithm (BPA) specified by these Unicode | |||
| 300 | standards. | 301 | standards. |
| 301 | 302 | ||
| 302 | +++ | 303 | +++ |
| 303 | ** You can access ‘mouse-buffer-menu’ (C-down-mouse-1) using C-f10. | 304 | ** You can access 'mouse-buffer-menu' (C-down-mouse-1) using C-f10. |
| 304 | 305 | ||
| 305 | +++ | 306 | +++ |
| 306 | ** New buffer-local ‘electric-pair-local-mode’. | 307 | ** New buffer-local 'electric-pair-local-mode'. |
| 307 | 308 | ||
| 308 | +++ | 309 | +++ |
| 309 | ** New variable ‘fast-but-imprecise-scrolling’ inhibits | 310 | ** New variable 'fast-but-imprecise-scrolling' inhibits |
| 310 | fontification during full screen scrolling operations, giving less | 311 | fontification during full screen scrolling operations, giving less |
| 311 | hesitant operation during auto-repeat of C-v, M-v at the cost of | 312 | hesitant operation during auto-repeat of C-v, M-v at the cost of |
| 312 | possible inaccuracies in the end position. | 313 | possible inaccuracies in the end position. |
| 313 | 314 | ||
| 314 | +++ | 315 | +++ |
| 315 | ** New documentation command ‘describe-symbol’. | 316 | ** New documentation command 'describe-symbol'. |
| 316 | Works for functions, variables, faces, etc. It is bound to ‘C-h o’ by | 317 | Works for functions, variables, faces, etc. It is bound to 'C-h o' by |
| 317 | default. | 318 | default. |
| 318 | 319 | ||
| 319 | +++ | 320 | +++ |
| 320 | ** New function ‘custom-prompt-customize-unsaved-options’ checks for | 321 | ** New function 'custom-prompt-customize-unsaved-options' checks for |
| 321 | unsaved customizations and prompts user to customize (if found). It | 322 | unsaved customizations and prompts user to customize (if found). It |
| 322 | is intended for adding to ‘kill-emacs-query-functions’. | 323 | is intended for adding to 'kill-emacs-query-functions'. |
| 323 | 324 | ||
| 324 | +++ | 325 | +++ |
| 325 | ** The old ‘C-x w’ bindings in hi-lock-mode are officially deprecated | 326 | ** The old 'C-x w' bindings in hi-lock-mode are officially deprecated |
| 326 | in favor of the global ‘M-s h’ bindings introduced in Emacs-23.1. | 327 | in favor of the global 'M-s h' bindings introduced in Emacs-23.1. |
| 327 | They’ll disappear soon. | 328 | They'll disappear soon. |
| 328 | 329 | ||
| 329 | 330 | ||
| 330 | * Changes in Specialized Modes and Packages in Emacs 25.1 | 331 | * Changes in Specialized Modes and Packages in Emacs 25.1 |
| @@ -332,14 +333,14 @@ They’ll disappear soon. | |||
| 332 | ** Checkdoc | 333 | ** Checkdoc |
| 333 | 334 | ||
| 334 | +++ | 335 | +++ |
| 335 | *** New command ‘checkdoc-package-keywords’ checks if the | 336 | *** New command 'checkdoc-package-keywords' checks if the |
| 336 | current package keywords are recognized. Set the new option | 337 | current package keywords are recognized. Set the new option |
| 337 | ‘checkdoc-package-keywords-flag’ to non-nil to make | 338 | 'checkdoc-package-keywords-flag' to non-nil to make |
| 338 | ‘checkdoc-current-buffer’ call this function automatically. | 339 | 'checkdoc-current-buffer' call this function automatically. |
| 339 | 340 | ||
| 340 | +++ | 341 | +++ |
| 341 | *** New function ‘checkdoc-file’ checks for style errors. | 342 | *** New function 'checkdoc-file' checks for style errors. |
| 342 | It’s meant for use together with ‘compile’: | 343 | It's meant for use together with 'compile': |
| 343 | emacs -batch --eval "(checkdoc-file \"subr.el\")" | 344 | emacs -batch --eval "(checkdoc-file \"subr.el\")" |
| 344 | 345 | ||
| 345 | ** Desktop | 346 | ** Desktop |
| @@ -354,39 +355,39 @@ recommended to do this as soon as you have firmly upgraded to Emacs | |||
| 354 | to version 206, you can do this with C-u C-u M-x desktop-save. | 355 | to version 206, you can do this with C-u C-u M-x desktop-save. |
| 355 | 356 | ||
| 356 | +++ | 357 | +++ |
| 357 | ** New function ‘bookmark-set-no-overwrite’ bound to C-x r M. | 358 | ** New function 'bookmark-set-no-overwrite' bound to C-x r M. |
| 358 | It raises an error if a bookmark of that name already exists, | 359 | It raises an error if a bookmark of that name already exists, |
| 359 | unlike ‘bookmark-set’ which silently updates an existing bookmark. | 360 | unlike 'bookmark-set' which silently updates an existing bookmark. |
| 360 | 361 | ||
| 361 | ** Gnus | 362 | ** Gnus |
| 362 | 363 | ||
| 363 | +++ | 364 | +++ |
| 364 | *** New user options ‘mm-html-inhibit-images’ and ‘mm-html-blocked-images’ | 365 | *** New user options 'mm-html-inhibit-images' and 'mm-html-blocked-images' |
| 365 | now control how mm-* functions fetch and display images in an HTML | 366 | now control how mm-* functions fetch and display images in an HTML |
| 366 | message. Gnus still uses ‘gnus-inhibit-images’ and ‘gnus-blocked-images’ | 367 | message. Gnus still uses 'gnus-inhibit-images' and 'gnus-blocked-images' |
| 367 | for that purpose, i.e., binds mm-html- variables with those gnus- | 368 | for that purpose, i.e., binds mm-html- variables with those gnus- |
| 368 | variables, but other packages do not have to bind gnus- variables now. | 369 | variables, but other packages do not have to bind gnus- variables now. |
| 369 | 370 | ||
| 370 | --- | 371 | --- |
| 371 | *** ‘mm-inline-text-html-with-images’ has been removed. | 372 | *** 'mm-inline-text-html-with-images' has been removed. |
| 372 | Use ‘mm-html-inhibit-images’ instead. Note that the value is opposite | 373 | Use 'mm-html-inhibit-images' instead. Note that the value is opposite |
| 373 | in meaning. | 374 | in meaning. |
| 374 | 375 | ||
| 375 | ** IMAP | 376 | ** IMAP |
| 376 | 377 | ||
| 377 | --- | 378 | --- |
| 378 | *** ‘imap-ssl-program’ has been removed, and imap.el uses the internal | 379 | *** 'imap-ssl-program' has been removed, and imap.el uses the internal |
| 379 | GnuTLS encryption functions if possible. | 380 | GnuTLS encryption functions if possible. |
| 380 | 381 | ||
| 381 | ** JSON | 382 | ** JSON |
| 382 | 383 | ||
| 383 | --- | 384 | --- |
| 384 | *** ‘json-pretty-print’ and ‘json-pretty-print-buffer’ now maintain | 385 | *** 'json-pretty-print' and 'json-pretty-print-buffer' now maintain |
| 385 | the ordering of object keys by default. | 386 | the ordering of object keys by default. |
| 386 | 387 | ||
| 387 | --- | 388 | --- |
| 388 | *** New commands ‘json-pretty-print-ordered’ and | 389 | *** New commands 'json-pretty-print-ordered' and |
| 389 | ‘json-pretty-print-buffer-ordered’ pretty prints JSON objects with | 390 | 'json-pretty-print-buffer-ordered' pretty prints JSON objects with |
| 390 | object keys sorted alphabetically. | 391 | object keys sorted alphabetically. |
| 391 | 392 | ||
| 392 | +++ | 393 | +++ |
| @@ -396,29 +397,29 @@ programming languages in the same buffer, like literate programming | |||
| 396 | environments or ANTLR programs with embedded Python code. | 397 | environments or ANTLR programs with embedded Python code. |
| 397 | 398 | ||
| 398 | A major mode can provide indentation context for a sub-mode through | 399 | A major mode can provide indentation context for a sub-mode through |
| 399 | the ‘prog-indentation-context’ variable. To support this, modes that | 400 | the 'prog-indentation-context' variable. To support this, modes that |
| 400 | provide indentation should use ‘prog-widen’ instead of ‘widen’ and | 401 | provide indentation should use 'prog-widen' instead of 'widen' and |
| 401 | ‘prog-first-column’ instead of a literal zero. See the node | 402 | 'prog-first-column' instead of a literal zero. See the node |
| 402 | “Mode-Specific Indent” in the ELisp manual for more details. | 403 | "Mode-Specific Indent" in the ELisp manual for more details. |
| 403 | 404 | ||
| 404 | ** Prettify Symbols mode | 405 | ** Prettify Symbols mode |
| 405 | 406 | ||
| 406 | +++ | 407 | +++ |
| 407 | *** Prettify Symbols mode supports custom composition predicates. By | 408 | *** Prettify Symbols mode supports custom composition predicates. By |
| 408 | overriding the default ‘prettify-symbols-compose-predicate’, modes can | 409 | overriding the default 'prettify-symbols-compose-predicate', modes can |
| 409 | specify in which contexts a symbol may be displayed as some Unicode | 410 | specify in which contexts a symbol may be displayed as some Unicode |
| 410 | character. ‘prettify-symbols-default-compose-p’ is the default which | 411 | character. 'prettify-symbols-default-compose-p' is the default which |
| 411 | is suitable for most programming languages such as C or Lisp (but not | 412 | is suitable for most programming languages such as C or Lisp (but not |
| 412 | (La)TeX). | 413 | (La)TeX). |
| 413 | 414 | ||
| 414 | +++ | 415 | +++ |
| 415 | *** Symbols can be unprettified while point is inside them. | 416 | *** Symbols can be unprettified while point is inside them. |
| 416 | New variable ‘prettify-symbols-unprettify-at-point’ configures this. | 417 | New variable 'prettify-symbols-unprettify-at-point' configures this. |
| 417 | 418 | ||
| 418 | ** Enhanced xterm support | 419 | ** Enhanced xterm support |
| 419 | 420 | ||
| 420 | --- | 421 | --- |
| 421 | *** The new variable ‘xterm-screen-extra-capabilities’ for configuring xterm. | 422 | *** The new variable 'xterm-screen-extra-capabilities' for configuring xterm. |
| 422 | This variable tells Emacs which advanced capabilities are available in | 423 | This variable tells Emacs which advanced capabilities are available in |
| 423 | the xterm terminal emulator used to display Emacs text-mode frames. | 424 | the xterm terminal emulator used to display Emacs text-mode frames. |
| 424 | The default is to check each capability, and use it if available. | 425 | The default is to check each capability, and use it if available. |
| @@ -428,32 +429,32 @@ its NEWS.) | |||
| 428 | --- | 429 | --- |
| 429 | *** Killing text now also sets the CLIPBOARD/PRIMARY selection | 430 | *** Killing text now also sets the CLIPBOARD/PRIMARY selection |
| 430 | in the surrounding GUI (using the OSC-52 escape sequence). This only works | 431 | in the surrounding GUI (using the OSC-52 escape sequence). This only works |
| 431 | if your xterm supports it and enables the ‘allowWindowOps’ options (disabled | 432 | if your xterm supports it and enables the 'allowWindowOps' options (disabled |
| 432 | by default at least in Debian, for security reasons). | 433 | by default at least in Debian, for security reasons). |
| 433 | 434 | ||
| 434 | Similarly, you can yank the CLIPBOARD/PRIMARY selection (using the OSC-52 | 435 | Similarly, you can yank the CLIPBOARD/PRIMARY selection (using the OSC-52 |
| 435 | escape sequence) if your xterm has the feature enabled but for that you | 436 | escape sequence) if your xterm has the feature enabled but for that you |
| 436 | additionally need to add ‘getSelection’ to ‘xterm-extra-capabilities’. | 437 | additionally need to add 'getSelection' to 'xterm-extra-capabilities'. |
| 437 | 438 | ||
| 438 | +++ | 439 | +++ |
| 439 | *** ‘xterm-mouse-mode’ now supports mouse-tracking (if your xterm supports it). | 440 | *** 'xterm-mouse-mode' now supports mouse-tracking (if your xterm supports it). |
| 440 | 441 | ||
| 441 | --- | 442 | --- |
| 442 | ** The way to turn on and off ‘save-place’ mode has changed. | 443 | ** The way to turn on and off 'save-place' mode has changed. |
| 443 | It is no longer sufficient to load the saveplace library and set | 444 | It is no longer sufficient to load the saveplace library and set |
| 444 | ‘save-place’ non-nil. Instead, use the two new minor modes: | 445 | 'save-place' non-nil. Instead, use the two new minor modes: |
| 445 | ‘save-place-mode’ turns on saving last place in every file, and | 446 | 'save-place-mode' turns on saving last place in every file, and |
| 446 | ‘save-place-local-mode’ does that only for the file in whose buffer it | 447 | 'save-place-local-mode' does that only for the file in whose buffer it |
| 447 | is invoked. The ‘save-place’ variable is now an obsolete alias for | 448 | is invoked. The 'save-place' variable is now an obsolete alias for |
| 448 | ‘save-place-mode’, which replaces it, and ‘toggle-save-place’ is an | 449 | 'save-place-mode', which replaces it, and 'toggle-save-place' is an |
| 449 | obsolete alias for the new ‘save-place-local-mode’ command. | 450 | obsolete alias for the new 'save-place-local-mode' command. |
| 450 | 451 | ||
| 451 | ** ERC | 452 | ** ERC |
| 452 | 453 | ||
| 453 | +++ | 454 | +++ |
| 454 | *** ERC can now hide message types by network or channel. | 455 | *** ERC can now hide message types by network or channel. |
| 455 | ‘erc-hide-list’ will hide all messages of the specified type, while | 456 | 'erc-hide-list' will hide all messages of the specified type, while |
| 456 | ‘erc-network-hide-list’ and ‘erc-channel-hide-list’ will only hide the | 457 | 'erc-network-hide-list' and 'erc-channel-hide-list' will only hide the |
| 457 | specified message types for the respective specified targets. | 458 | specified message types for the respective specified targets. |
| 458 | 459 | ||
| 459 | --- | 460 | --- |
| @@ -468,14 +469,14 @@ being made case-sensitive in Emacs 24.2. | |||
| 468 | --- | 469 | --- |
| 469 | *** New commands, key binds, and menu items. | 470 | *** New commands, key binds, and menu items. |
| 470 | 471 | ||
| 471 | **** ‘<’ and ‘>’ for navigating previous and next tracks in playlist | 472 | **** '<' and '>' for navigating previous and next tracks in playlist |
| 472 | 473 | ||
| 473 | **** New play/pause command ‘mpc-toggle-play’ bound to ‘s’ | 474 | **** New play/pause command 'mpc-toggle-play' bound to 's' |
| 474 | 475 | ||
| 475 | **** ‘g’ bound to new command ‘mpc-seek-current’ will navigate current | 476 | **** 'g' bound to new command 'mpc-seek-current' will navigate current |
| 476 | track. | 477 | track. |
| 477 | 478 | ||
| 478 | **** New commands ‘mpc-toggle-{consume,repeat,single,shuffle}’ for | 479 | **** New commands 'mpc-toggle-{consume,repeat,single,shuffle}' for |
| 479 | toggling playback modes. | 480 | toggling playback modes. |
| 480 | 481 | ||
| 481 | --- | 482 | --- |
| @@ -493,7 +494,7 @@ MPD supports the XDG base directory specification since version 0.17.6. | |||
| 493 | ** Midnight-mode | 494 | ** Midnight-mode |
| 494 | 495 | ||
| 495 | --- | 496 | --- |
| 496 | *** ‘midnight-mode’ is now a proper minor mode. | 497 | *** 'midnight-mode' is now a proper minor mode. |
| 497 | 498 | ||
| 498 | --- | 499 | --- |
| 499 | *** clean-buffer-*-regexps can now specify buffers via predicate functions. | 500 | *** clean-buffer-*-regexps can now specify buffers via predicate functions. |
| @@ -501,24 +502,24 @@ MPD supports the XDG base directory specification since version 0.17.6. | |||
| 501 | ** package.el | 502 | ** package.el |
| 502 | 503 | ||
| 503 | +++ | 504 | +++ |
| 504 | *** New “external” package status. | 505 | *** New "external" package status. |
| 505 | An external package is any installed package that’s not built-in and | 506 | An external package is any installed package that's not built-in and |
| 506 | not from ‘package-user-dir’, which usually means it’s from an entry in | 507 | not from 'package-user-dir', which usually means it's from an entry in |
| 507 | ‘package-directory-list’. They are treated much like built-in | 508 | 'package-directory-list'. They are treated much like built-in |
| 508 | packages, in that they cannot be deleted through the package menu and | 509 | packages, in that they cannot be deleted through the package menu and |
| 509 | are not considered for upgrades. | 510 | are not considered for upgrades. |
| 510 | 511 | ||
| 511 | The effect is that a user can manually place a specific version of a | 512 | The effect is that a user can manually place a specific version of a |
| 512 | package inside ‘package-directory-list’ and the package menu will | 513 | package inside 'package-directory-list' and the package menu will |
| 513 | always respect that. | 514 | always respect that. |
| 514 | 515 | ||
| 515 | +++ | 516 | +++ |
| 516 | *** If a package is available on multiple archives and one has higher | 517 | *** If a package is available on multiple archives and one has higher |
| 517 | priority (as per ‘package-archive-priorities’) only that one is | 518 | priority (as per 'package-archive-priorities') only that one is |
| 518 | listed. This can be configured with ‘package-menu-hide-low-priority’. | 519 | listed. This can be configured with 'package-menu-hide-low-priority'. |
| 519 | 520 | ||
| 520 | +++ | 521 | +++ |
| 521 | *** ‘package-menu-toggle-hiding’ now toggles the hiding of packages. | 522 | *** 'package-menu-toggle-hiding' now toggles the hiding of packages. |
| 522 | This includes the above-mentioned low-priority packages, as well as | 523 | This includes the above-mentioned low-priority packages, as well as |
| 523 | available packages whose version is lower than the currently installed | 524 | available packages whose version is lower than the currently installed |
| 524 | version (which were previously impossible to display). | 525 | version (which were previously impossible to display). |
| @@ -526,8 +527,8 @@ This allows users to downgrade a package if a lower version is | |||
| 526 | available. | 527 | available. |
| 527 | 528 | ||
| 528 | --- | 529 | --- |
| 529 | *** When filtering the package menu, keywords starting with ‘arc:’ or | 530 | *** When filtering the package menu, keywords starting with "arc:" or |
| 530 | ‘status:’ represent package archive or status, respectively, instead | 531 | "status:" represent package archive or status, respectively, instead |
| 531 | of actual keywords. | 532 | of actual keywords. |
| 532 | 533 | ||
| 533 | --- | 534 | --- |
| @@ -536,52 +537,52 @@ ASYNC argument. If it is non-nil, package.el performs the download(s) | |||
| 536 | asynchronously. | 537 | asynchronously. |
| 537 | 538 | ||
| 538 | --- | 539 | --- |
| 539 | *** New variable ‘package-menu-async’ controls whether the | 540 | *** New variable 'package-menu-async' controls whether the |
| 540 | package-menu uses asynchronous downloads. | 541 | package-menu uses asynchronous downloads. |
| 541 | 542 | ||
| 542 | --- | 543 | --- |
| 543 | *** ‘package-install-from-buffer’ and ‘package-install-file’ work on directories. | 544 | *** 'package-install-from-buffer' and 'package-install-file' work on directories. |
| 544 | This follows the same rules as installing from a .tar file, except the | 545 | This follows the same rules as installing from a .tar file, except the |
| 545 | -pkg file is optional. | 546 | -pkg file is optional. |
| 546 | 547 | ||
| 547 | --- | 548 | --- |
| 548 | *** Packages which are dependencies of other packages cannot be deleted. | 549 | *** Packages which are dependencies of other packages cannot be deleted. |
| 549 | The FORCE argument to ‘package-delete’ overrides this. | 550 | The FORCE argument to 'package-delete' overrides this. |
| 550 | 551 | ||
| 551 | --- | 552 | --- |
| 552 | *** New custom variable ‘package-selected-packages’ tracks packages | 553 | *** New custom variable 'package-selected-packages' tracks packages |
| 553 | which were installed by the user (as opposed to installed as | 554 | which were installed by the user (as opposed to installed as |
| 554 | dependencies). This variable can also be manually customized. | 555 | dependencies). This variable can also be manually customized. |
| 555 | 556 | ||
| 556 | --- | 557 | --- |
| 557 | *** New command ‘package-install-selected-packages’ installs all | 558 | *** New command 'package-install-selected-packages' installs all |
| 558 | packages from ‘package-selected-packages’ which are currently missing. | 559 | packages from 'package-selected-packages' which are currently missing. |
| 559 | 560 | ||
| 560 | --- | 561 | --- |
| 561 | *** ‘package-install’ function now takes a DONT-SELECT argument. If | 562 | *** 'package-install' function now takes a DONT-SELECT argument. If |
| 562 | this function is called interactively or if DONT-SELECT is nil, add the | 563 | this function is called interactively or if DONT-SELECT is nil, add the |
| 563 | package being installed to ‘package-selected-packages’. | 564 | package being installed to 'package-selected-packages'. |
| 564 | 565 | ||
| 565 | --- | 566 | --- |
| 566 | *** New command ‘package-autoremove’ removes all packages which were | 567 | *** New command 'package-autoremove' removes all packages which were |
| 567 | installed strictly as dependencies but are no longer needed. | 568 | installed strictly as dependencies but are no longer needed. |
| 568 | 569 | ||
| 569 | +++ | 570 | +++ |
| 570 | ** Shell | 571 | ** Shell |
| 571 | 572 | ||
| 572 | When you invoke ‘shell’ interactively, the *shell* buffer will now | 573 | When you invoke 'shell' interactively, the *shell* buffer will now |
| 573 | display in a new window. However, you can customize this behavior via | 574 | display in a new window. However, you can customize this behavior via |
| 574 | the ‘display-buffer-alist’ variable. For example, to get | 575 | the 'display-buffer-alist' variable. For example, to get |
| 575 | the old behavior -- *shell* buffer displays in current window -- use | 576 | the old behavior -- *shell* buffer displays in current window -- use |
| 576 | (add-to-list 'display-buffer-alist | 577 | (add-to-list 'display-buffer-alist |
| 577 | '("^\\*shell\\*$" . (display-buffer-same-window))). | 578 | '("^\\*shell\\*$" . (display-buffer-same-window))). |
| 578 | 579 | ||
| 579 | ** EIEIO | 580 | ** EIEIO |
| 580 | +++ | 581 | +++ |
| 581 | *** The ‘:protection’ slot option is not obeyed any more. | 582 | *** The ':protection' slot option is not obeyed any more. |
| 582 | +++ | 583 | +++ |
| 583 | *** The ‘newname’ argument to constructors is optional&deprecated. | 584 | *** The 'newname' argument to constructors is optional&deprecated. |
| 584 | If you need your objects to be named, do it by inheriting from ‘eieio-named’. | 585 | If you need your objects to be named, do it by inheriting from 'eieio-named'. |
| 585 | +++ | 586 | +++ |
| 586 | *** The <class>-list-p and <class>-child-p functions are declared obsolete. | 587 | *** The <class>-list-p and <class>-child-p functions are declared obsolete. |
| 587 | +++ | 588 | +++ |
| @@ -592,18 +593,18 @@ If you need your objects to be named, do it by inheriting from ‘eieio-named’ | |||
| 592 | *** defgeneric and defmethod are declared obsolete. | 593 | *** defgeneric and defmethod are declared obsolete. |
| 593 | Use the equivalent facilities from cl-generic.el instead. | 594 | Use the equivalent facilities from cl-generic.el instead. |
| 594 | +++ | 595 | +++ |
| 595 | *** ‘constructor’ is now an obsolete alias for ‘make-instance’. | 596 | *** 'constructor' is now an obsolete alias for 'make-instance'. |
| 596 | --- ‘pcase’ accepts a new UPattern ‘eieio’. | 597 | --- 'pcase' accepts a new UPattern 'eieio'. |
| 597 | 598 | ||
| 598 | ** ido | 599 | ** ido |
| 599 | 600 | ||
| 600 | +++ | 601 | +++ |
| 601 | *** New command ‘ido-bury-buffer-at-head’ bound to C-S-b | 602 | *** New command 'ido-bury-buffer-at-head' bound to C-S-b |
| 602 | Bury the buffer at the head of ‘ido-matches’, analogous to how C-k | 603 | Bury the buffer at the head of 'ido-matches', analogous to how C-k |
| 603 | kills the buffer at head. | 604 | kills the buffer at head. |
| 604 | 605 | ||
| 605 | --- | 606 | --- |
| 606 | *** A prefix argument to ‘ido-restrict-to-matches’ will reverse its | 607 | *** A prefix argument to 'ido-restrict-to-matches' will reverse its |
| 607 | meaning, and the list is restricted to those elements that do not | 608 | meaning, and the list is restricted to those elements that do not |
| 608 | match the current input. | 609 | match the current input. |
| 609 | 610 | ||
| @@ -611,18 +612,18 @@ match the current input. | |||
| 611 | 612 | ||
| 612 | +++ | 613 | +++ |
| 613 | *** You can use <UP> and <DOWN> arrow keys to move through history by lines. | 614 | *** You can use <UP> and <DOWN> arrow keys to move through history by lines. |
| 614 | The new commands ‘next-line-or-history-element’ and | 615 | The new commands 'next-line-or-history-element' and |
| 615 | ‘previous-line-or-history-element’, bound to <UP> and <DOWN> in the | 616 | 'previous-line-or-history-element', bound to <UP> and <DOWN> in the |
| 616 | minibuffer, allow by-line movement through minibuffer history, | 617 | minibuffer, allow by-line movement through minibuffer history, |
| 617 | similarly to an ordinary buffer. Only when point moves over | 618 | similarly to an ordinary buffer. Only when point moves over |
| 618 | the bottom/top of the minibuffer it goes to the next/previous history | 619 | the bottom/top of the minibuffer it goes to the next/previous history |
| 619 | element. ‘M-p’ and ‘M-n’ still move directly to previous/next history | 620 | element. 'M-p' and 'M-n' still move directly to previous/next history |
| 620 | item as before. | 621 | item as before. |
| 621 | 622 | ||
| 622 | ** Search and Replace | 623 | ** Search and Replace |
| 623 | 624 | ||
| 624 | +++ | 625 | +++ |
| 625 | *** ‘isearch’ and ‘query-replace’ can now perform character folding in matches. | 626 | *** 'isearch' and 'query-replace' can now perform character folding in matches. |
| 626 | This is analogous to case folding, but instead of disregarding case | 627 | This is analogous to case folding, but instead of disregarding case |
| 627 | variants, it disregards wider classes of distinctions between similar | 628 | variants, it disregards wider classes of distinctions between similar |
| 628 | characters. (Case folding is a special case of character folding.) | 629 | characters. (Case folding is a special case of character folding.) |
| @@ -630,47 +631,48 @@ This means many characters in the search string will match entire | |||
| 630 | groups of characters instead of just themselves. | 631 | groups of characters instead of just themselves. |
| 631 | 632 | ||
| 632 | For instance, the ASCII double quote character " will match all | 633 | For instance, the ASCII double quote character " will match all |
| 633 | variants of double quotes (like “ and ”), and the letter a will match | 634 | variants of double quotes, and the letter 'a' will match all of its |
| 634 | all of its accented cousins, even those composed of multiple | 635 | accented cousins, even those composed of multiple characters, as well |
| 635 | characters, as well as many other symbols like ℀, ℁, ⒜, and ⓐ. | 636 | as many other symbols like U+249C (PARENTHESIZED LATIN SMALL LETTER |
| 637 | A). | ||
| 636 | 638 | ||
| 637 | Character folding is enabled by customizing ‘search-default-mode’ to | 639 | Character folding is enabled by customizing 'search-default-mode' to |
| 638 | the value ‘character-fold-to-regexp’. You can also toggle character | 640 | the value 'character-fold-to-regexp'. You can also toggle character |
| 639 | folding in the middle of a search by typing ‘M-s '’. | 641 | folding in the middle of a search by typing 'M-s ''. |
| 640 | 642 | ||
| 641 | ‘query-replace’ honors character folding if the new variable | 643 | 'query-replace' honors character folding if the new variable |
| 642 | ‘replace-character-fold’ is customized to a non-nil value. | 644 | 'replace-character-fold' is customized to a non-nil value. |
| 643 | 645 | ||
| 644 | +++ | 646 | +++ |
| 645 | *** New user option ‘search-default-mode’. | 647 | *** New user option 'search-default-mode'. |
| 646 | This option specifies the default mode for Isearch. The default | 648 | This option specifies the default mode for Isearch. The default |
| 647 | value, nil specifies that Isearch does literal searches (however, | 649 | value, nil specifies that Isearch does literal searches (however, |
| 648 | ‘case-fold-search’ and ‘isearch-lax-whitespace’ may still be applied, | 650 | 'case-fold-search' and 'isearch-lax-whitespace' may still be applied, |
| 649 | as in previous Emacs versions). | 651 | as in previous Emacs versions). |
| 650 | 652 | ||
| 651 | +++ | 653 | +++ |
| 652 | *** New function ‘character-fold-to-regexp’ can be used | 654 | *** New function 'character-fold-to-regexp' can be used |
| 653 | by searching commands to produce a regexp matching anything that | 655 | by searching commands to produce a regexp matching anything that |
| 654 | character-folds into STRING. | 656 | character-folds into STRING. |
| 655 | 657 | ||
| 656 | +++ | 658 | +++ |
| 657 | *** The new M-s M-w key binding uses eww to search the web for the | 659 | *** The new M-s M-w key binding uses eww to search the web for the |
| 658 | text in the region. The search engine to use for this is specified by | 660 | text in the region. The search engine to use for this is specified by |
| 659 | the customizable variable ‘eww-search-prefix’. | 661 | the customizable variable 'eww-search-prefix'. |
| 660 | 662 | ||
| 661 | +++ | 663 | +++ |
| 662 | *** Query-replace history is enhanced. | 664 | *** Query-replace history is enhanced. |
| 663 | When query-replace reads the FROM string from the minibuffer, typing | 665 | When query-replace reads the FROM string from the minibuffer, typing |
| 664 | ‘M-p’ will now show previous replacements as ‘FROM SEP TO’, where FROM | 666 | 'M-p' will now show previous replacements as "FROM SEP TO", where FROM |
| 665 | and TO are the original text and its replacement, and SEP is an arrow | 667 | and TO are the original text and its replacement, and SEP is an arrow |
| 666 | string defined by the new variable ‘query-replace-from-to-separator’. | 668 | string defined by the new variable 'query-replace-from-to-separator'. |
| 667 | To select a prior replacement, type ‘M-p’ until the desired | 669 | To select a prior replacement, type 'M-p' until the desired |
| 668 | replacement appears in the minibuffer, and then exit the minibuffer by | 670 | replacement appears in the minibuffer, and then exit the minibuffer by |
| 669 | typing RET. | 671 | typing RET. |
| 670 | 672 | ||
| 671 | ** Calc | 673 | ** Calc |
| 672 | +++ | 674 | +++ |
| 673 | *** If ‘quick-calc’ is called with a prefix argument, insert the | 675 | *** If 'quick-calc' is called with a prefix argument, insert the |
| 674 | result of the calculation into the current buffer. | 676 | result of the calculation into the current buffer. |
| 675 | 677 | ||
| 676 | +++ | 678 | +++ |
| @@ -681,18 +683,19 @@ instrumented function. | |||
| 681 | ** ElDoc | 683 | ** ElDoc |
| 682 | 684 | ||
| 683 | +++ | 685 | +++ |
| 684 | *** New minor mode ‘global-eldoc-mode’ | 686 | *** New minor mode 'global-eldoc-mode' |
| 685 | It is turned on by default, and affects ‘*scratch*’ and other buffers | 687 | It is turned on by default, and affects '*scratch*' and other buffers |
| 686 | whose major mode supports Emacs Lisp. | 688 | whose major mode supports Emacs Lisp. |
| 687 | 689 | ||
| 688 | --- | 690 | --- |
| 689 | *** ‘eldoc-documentation-function’ now defaults to ‘ignore’ | 691 | *** 'eldoc-documentation-function' now defaults to 'ignore' |
| 690 | 692 | ||
| 691 | --- | 693 | --- |
| 692 | *** ‘describe-char-eldoc’ displays information about character at point, | 694 | *** 'describe-char-eldoc' displays information about character at point, |
| 693 | and can be used as a default value of ‘eldoc-documentation-function’. It is | 695 | and can be used as a default value of 'eldoc-documentation-function'. It is |
| 694 | useful when, for example, one needs to distinguish various spaces (e.g. ] [, | 696 | useful when, for example, one needs to distinguish various spaces - e.g., |
| 695 | ] [, ] [, etc.) while using mono-spaced font. | 697 | U+00A0 (NO-BREAK SPACE), U+2002 (EN SPACE), and U+2009 (THIN SPACE) - while |
| 698 | using mono-spaced font. | ||
| 696 | 699 | ||
| 697 | ** eww | 700 | ** eww |
| 698 | 701 | ||
| @@ -700,17 +703,17 @@ useful when, for example, one needs to distinguish various spaces (e.g. ] [, | |||
| 700 | *** HTML can now be rendered using variable-width fonts. | 703 | *** HTML can now be rendered using variable-width fonts. |
| 701 | 704 | ||
| 702 | +++ | 705 | +++ |
| 703 | *** A new command ‘F’ (‘eww-toggle-fonts’) can be used to toggle | 706 | *** A new command 'F' ('eww-toggle-fonts') can be used to toggle |
| 704 | whether to use variable-pitch fonts or not. The user can also | 707 | whether to use variable-pitch fonts or not. The user can also |
| 705 | customize the ‘shr-use-fonts’ variable. | 708 | customize the 'shr-use-fonts' variable. |
| 706 | 709 | ||
| 707 | +++ | 710 | +++ |
| 708 | *** A new command ‘R’ (‘eww-readable’) will try do identify the main | 711 | *** A new command 'R' ('eww-readable') will try do identify the main |
| 709 | textual parts of a web page and display only that, leaving menus and | 712 | textual parts of a web page and display only that, leaving menus and |
| 710 | the like off the page. | 713 | the like off the page. |
| 711 | 714 | ||
| 712 | +++ | 715 | +++ |
| 713 | *** A new command ‘D’ (‘eww-toggle-paragraph-direction’) allows you to | 716 | *** A new command 'D' ('eww-toggle-paragraph-direction') allows you to |
| 714 | toggle the paragraph direction between left-to-right and right-to-left. | 717 | toggle the paragraph direction between left-to-right and right-to-left. |
| 715 | 718 | ||
| 716 | --- | 719 | --- |
| @@ -722,11 +725,11 @@ buffers you want to keep separate. | |||
| 722 | pages visited) is now preserved in the desktop file. | 725 | pages visited) is now preserved in the desktop file. |
| 723 | 726 | ||
| 724 | +++ | 727 | +++ |
| 725 | *** ‘eww-after-render-hook’ is now called after eww has rendered | 728 | *** 'eww-after-render-hook' is now called after eww has rendered |
| 726 | the data in the buffer. | 729 | the data in the buffer. |
| 727 | 730 | ||
| 728 | --- | 731 | --- |
| 729 | *** The ‘eww-reload’ command now takes a prefix to not reload via | 732 | *** The 'eww-reload' command now takes a prefix to not reload via |
| 730 | the net, but just use the local copy of the HTML. | 733 | the net, but just use the local copy of the HTML. |
| 731 | 734 | ||
| 732 | +++ | 735 | +++ |
| @@ -736,10 +739,10 @@ interact with this DOM. See the Emacs Lisp manual for interface | |||
| 736 | details. | 739 | details. |
| 737 | 740 | ||
| 738 | +++ | 741 | +++ |
| 739 | *** ‘mailcap-mime-data’ is now consulted when displaying PDF files. | 742 | *** 'mailcap-mime-data' is now consulted when displaying PDF files. |
| 740 | 743 | ||
| 741 | +++ | 744 | +++ |
| 742 | *** The new ‘S’ command will list all eww buffers, and allow managing | 745 | *** The new 'S' command will list all eww buffers, and allow managing |
| 743 | them. | 746 | them. |
| 744 | 747 | ||
| 745 | --- | 748 | --- |
| @@ -756,19 +759,19 @@ transformed into multipart/related messages before sending. | |||
| 756 | ** In Show Paren Mode, a parenthesis can be highlighted when point | 759 | ** In Show Paren Mode, a parenthesis can be highlighted when point |
| 757 | stands inside it, and certain parens can be highlighted when point is | 760 | stands inside it, and certain parens can be highlighted when point is |
| 758 | at BOL or EOL, or in whitespace there. To enable these, customize, | 761 | at BOL or EOL, or in whitespace there. To enable these, customize, |
| 759 | respectively, ‘show-paren-when-point-inside-paren’ or | 762 | respectively, 'show-paren-when-point-inside-paren' or |
| 760 | ‘show-paren-when-point-in-periphery’. | 763 | 'show-paren-when-point-in-periphery'. |
| 761 | 764 | ||
| 762 | --- | 765 | --- |
| 763 | ** If gpg2 exists on the system, it is now used as the default value | 766 | ** If gpg2 exists on the system, it is now used as the default value |
| 764 | of ‘epg-gpg-program’ (instead of gpg). | 767 | of 'epg-gpg-program' (instead of gpg). |
| 765 | 768 | ||
| 766 | ** Lisp mode | 769 | ** Lisp mode |
| 767 | 770 | ||
| 768 | --- | 771 | --- |
| 769 | *** Strings after ‘:documentation’ are highlighted as docstrings. | 772 | *** Strings after ':documentation' are highlighted as docstrings. |
| 770 | This enhances Lisp mode fontification to handle documentation of the | 773 | This enhances Lisp mode fontification to handle documentation of the |
| 771 | form ‘(:documentation "the doc string")’ used in Common Lisp code for | 774 | form '(:documentation "the doc string")' used in Common Lisp code for |
| 772 | CLOS class and slot documentation. | 775 | CLOS class and slot documentation. |
| 773 | 776 | ||
| 774 | ** Rectangle editing | 777 | ** Rectangle editing |
| @@ -778,91 +781,91 @@ CLOS class and slot documentation. | |||
| 778 | 781 | ||
| 779 | +++ | 782 | +++ |
| 780 | *** C-x C-x in rectangle-mark-mode now cycles through the four corners. | 783 | *** C-x C-x in rectangle-mark-mode now cycles through the four corners. |
| 781 | *** ‘string-rectangle’ provides on-the-fly preview of the result. | 784 | *** 'string-rectangle' provides on-the-fly preview of the result. |
| 782 | 785 | ||
| 783 | +++ | 786 | +++ |
| 784 | ** New font-lock functions ‘font-lock-ensure’ and ‘font-lock-flush’. | 787 | ** New font-lock functions 'font-lock-ensure' and 'font-lock-flush'. |
| 785 | These should be used in preference to ‘font-lock-fontify-buffer’ when | 788 | These should be used in preference to 'font-lock-fontify-buffer' when |
| 786 | called from Lisp. | 789 | called from Lisp. |
| 787 | 790 | ||
| 788 | --- | 791 | --- |
| 789 | ** Macro ‘minibuffer-with-setup-hook’ can optionally append a function | 792 | ** Macro 'minibuffer-with-setup-hook' can optionally append a function |
| 790 | to ‘minibuffer-setup-hook’. | 793 | to 'minibuffer-setup-hook'. |
| 791 | 794 | ||
| 792 | If the first argument of the macro is of the form ‘(:append FUN)’, | 795 | If the first argument of the macro is of the form '(:append FUN)', |
| 793 | then FUN will be appended to ‘minibuffer-setup-hook’, instead of | 796 | then FUN will be appended to 'minibuffer-setup-hook', instead of |
| 794 | prepending it. | 797 | prepending it. |
| 795 | 798 | ||
| 796 | ** cl-lib | 799 | ** cl-lib |
| 797 | +++ | 800 | +++ |
| 798 | *** New functions ‘cl-fresh-line’, ‘cl-digit-char-p’, and ‘cl-parse-integer’. | 801 | *** New functions 'cl-fresh-line', 'cl-digit-char-p', and 'cl-parse-integer'. |
| 799 | 802 | ||
| 800 | --- | 803 | --- |
| 801 | *** ‘pcase’ accepts the new UPattern ‘cl-struct’. | 804 | *** 'pcase' accepts the new UPattern 'cl-struct'. |
| 802 | 805 | ||
| 803 | ** Calendar and diary | 806 | ** Calendar and diary |
| 804 | 807 | ||
| 805 | +++ | 808 | +++ |
| 806 | *** The default ‘diary-file’ is now located in .emacs.d. | 809 | *** The default 'diary-file' is now located in .emacs.d. |
| 807 | 810 | ||
| 808 | +++ | 811 | +++ |
| 809 | *** New commands to insert diary entries with Chinese dates: | 812 | *** New commands to insert diary entries with Chinese dates: |
| 810 | ‘diary-chinese-insert-anniversary-entry’ ‘diary-chinese-insert-entry’ | 813 | 'diary-chinese-insert-anniversary-entry' 'diary-chinese-insert-entry' |
| 811 | ‘diary-chinese-insert-monthly-entry’, ‘diary-chinese-insert-yearly-entry’. | 814 | 'diary-chinese-insert-monthly-entry', 'diary-chinese-insert-yearly-entry'. |
| 812 | 815 | ||
| 813 | +++ | 816 | +++ |
| 814 | *** The calendar can now list and mark diary entries with Chinese dates. | 817 | *** The calendar can now list and mark diary entries with Chinese dates. |
| 815 | See ‘diary-chinese-list-entries’ and ‘diary-chinese-mark-entries’. | 818 | See 'diary-chinese-list-entries' and 'diary-chinese-mark-entries'. |
| 816 | 819 | ||
| 817 | --- | 820 | --- |
| 818 | *** The option ‘calendar-mode-line-format’ can now be nil, | 821 | *** The option 'calendar-mode-line-format' can now be nil, |
| 819 | which means to do nothing special with the mode line in calendars. | 822 | which means to do nothing special with the mode line in calendars. |
| 820 | 823 | ||
| 821 | +++ | 824 | +++ |
| 822 | *** New option ‘calendar-weekend-days’. | 825 | *** New option 'calendar-weekend-days'. |
| 823 | The option customizes which day headers receive the | 826 | The option customizes which day headers receive the |
| 824 | ‘calendar-weekend-header’ face. | 827 | 'calendar-weekend-header' face. |
| 825 | 828 | ||
| 826 | --- | 829 | --- |
| 827 | *** New optional args N and STRING for ‘holiday-greek-orthodox-easter’. | 830 | *** New optional args N and STRING for 'holiday-greek-orthodox-easter'. |
| 828 | 831 | ||
| 829 | --- | 832 | --- |
| 830 | *** Many items obsolete since at least version 23.1 have been removed. | 833 | *** Many items obsolete since at least version 23.1 have been removed. |
| 831 | The majority were function/variable/face aliases, too numerous to list here. | 834 | The majority were function/variable/face aliases, too numerous to list here. |
| 832 | The remainder were: | 835 | The remainder were: |
| 833 | 836 | ||
| 834 | **** Functions ‘calendar-one-frame-setup’, ‘calendar-only-one-frame-setup’, | 837 | **** Functions 'calendar-one-frame-setup', 'calendar-only-one-frame-setup', |
| 835 | ‘calendar-two-frame-setup’, ‘european-calendar’, ‘american-calendar’. | 838 | 'calendar-two-frame-setup', 'european-calendar', 'american-calendar'. |
| 836 | 839 | ||
| 837 | **** Hooks ‘cal-menu-load-hook’, ‘cal-x-load-hook’. | 840 | **** Hooks 'cal-menu-load-hook', 'cal-x-load-hook'. |
| 838 | 841 | ||
| 839 | **** Macro ‘calendar-for-loop’. | 842 | **** Macro 'calendar-for-loop'. |
| 840 | 843 | ||
| 841 | **** Variables ‘european-calendar-style’, ‘diary-face’, ‘hebrew-holidays-{1,4}’. | 844 | **** Variables 'european-calendar-style', 'diary-face', 'hebrew-holidays-{1,4}'. |
| 842 | 845 | ||
| 843 | **** The nil and list forms of ‘diary-display-function’. | 846 | **** The nil and list forms of 'diary-display-function'. |
| 844 | 847 | ||
| 845 | +++ | 848 | +++ |
| 846 | ** New ERT function ‘ert-summarize-tests-batch-and-exit’. | 849 | ** New ERT function 'ert-summarize-tests-batch-and-exit'. |
| 847 | If the output of ERT tests in batch mode execution can be saved to a | 850 | If the output of ERT tests in batch mode execution can be saved to a |
| 848 | log file, then it can be passed as an argument to the above function | 851 | log file, then it can be passed as an argument to the above function |
| 849 | to produce a neat summary. | 852 | to produce a neat summary. |
| 850 | 853 | ||
| 851 | --- | 854 | --- |
| 852 | ** New js.el option ‘js-indent-first-init’. | 855 | ** New js.el option 'js-indent-first-init'. |
| 853 | 856 | ||
| 854 | ** Info | 857 | ** Info |
| 855 | 858 | ||
| 856 | --- | 859 | --- |
| 857 | ** Info mode now displays symbol names in fixed-pitch font. | 860 | ** Info mode now displays symbol names in fixed-pitch font. |
| 858 | If you want to get the old behavior back, customize the ‘Info-quoted’ | 861 | If you want to get the old behavior back, customize the 'Info-quoted' |
| 859 | face to use the same definitions as the default face. | 862 | face to use the same definitions as the default face. |
| 860 | 863 | ||
| 861 | --- | 864 | --- |
| 862 | *** ‘Info-fontify-maximum-menu-size’ can be t for no limit. | 865 | *** 'Info-fontify-maximum-menu-size' can be t for no limit. |
| 863 | 866 | ||
| 864 | +++ | 867 | +++ |
| 865 | *** ‘info-display-manual’ can now be given a prefix argument which (any | 868 | *** 'info-display-manual' can now be given a prefix argument which (any |
| 866 | non-nil value) directs the command to limit the completion | 869 | non-nil value) directs the command to limit the completion |
| 867 | alternatives to currently visited manuals. | 870 | alternatives to currently visited manuals. |
| 868 | 871 | ||
| @@ -872,7 +875,7 @@ alternatives to currently visited manuals. | |||
| 872 | ** Rmail | 875 | ** Rmail |
| 873 | 876 | ||
| 874 | +++ | 877 | +++ |
| 875 | *** The Rmail commands ‘d’, ‘C-d’ and ‘u’ take optional repeat counts | 878 | *** The Rmail commands 'd', 'C-d' and 'u' take optional repeat counts |
| 876 | to delete or undelete multiple messages. | 879 | to delete or undelete multiple messages. |
| 877 | 880 | ||
| 878 | +++ | 881 | +++ |
| @@ -880,61 +883,61 @@ to delete or undelete multiple messages. | |||
| 880 | libxml2 or if you have the Lynx browser installed. By default, Rmail | 883 | libxml2 or if you have the Lynx browser installed. By default, Rmail |
| 881 | will display the HTML version of a mail message that has both HTML and | 884 | will display the HTML version of a mail message that has both HTML and |
| 882 | plain text parts, if display of HTML email is possible; customize the | 885 | plain text parts, if display of HTML email is possible; customize the |
| 883 | ‘rmail-mime-prefer-html’ option to ‘nil’ if you don’t want that. | 886 | 'rmail-mime-prefer-html' option to 'nil' if you don't want that. |
| 884 | 887 | ||
| 885 | +++ | 888 | +++ |
| 886 | *** In the commands that make summaries by subject, recipients, or senders, | 889 | *** In the commands that make summaries by subject, recipients, or senders, |
| 887 | you can no longer use commas to separate regular expressions. | 890 | you can no longer use commas to separate regular expressions. |
| 888 | 891 | ||
| 889 | +++ | 892 | +++ |
| 890 | ** SES now supports local printer functions; see ‘ses-define-local-printer’. | 893 | ** SES now supports local printer functions; see 'ses-define-local-printer'. |
| 891 | 894 | ||
| 892 | ** Shell-script Mode | 895 | ** Shell-script Mode |
| 893 | --- | 896 | --- |
| 894 | *** In sh-mode you can now use ‘sh-shell’ as a file-local variable to | 897 | *** In sh-mode you can now use 'sh-shell' as a file-local variable to |
| 895 | specify the type of shell in use (bash, csh, etc). | 898 | specify the type of shell in use (bash, csh, etc). |
| 896 | 899 | ||
| 897 | --- | 900 | --- |
| 898 | *** New value ‘always’ for ‘sh-indent-after-continuation’. | 901 | *** New value 'always' for 'sh-indent-after-continuation'. |
| 899 | This provides old-style (“dumb”) indentation of continued lines. | 902 | This provides old-style ("dumb") indentation of continued lines. |
| 900 | See the doc string of ‘sh-indent-after-continuation’ for details. | 903 | See the doc string of 'sh-indent-after-continuation' for details. |
| 901 | 904 | ||
| 902 | ** TLS | 905 | ** TLS |
| 903 | --- | 906 | --- |
| 904 | *** Fatal TLS errors are now silent by default. | 907 | *** Fatal TLS errors are now silent by default. |
| 905 | 908 | ||
| 906 | --- | 909 | --- |
| 907 | *** If Emacs isn’t built with TLS support, an external TLS-capable | 910 | *** If Emacs isn't built with TLS support, an external TLS-capable |
| 908 | program is used instead. This program used to be run in --insecure | 911 | program is used instead. This program used to be run in --insecure |
| 909 | mode by default, but has now changed to be secure instead, and will | 912 | mode by default, but has now changed to be secure instead, and will |
| 910 | fail if you try to connect to non-verifiable hosts. This is | 913 | fail if you try to connect to non-verifiable hosts. This is |
| 911 | controlled by the ‘tls-program’ variable. | 914 | controlled by the 'tls-program' variable. |
| 912 | 915 | ||
| 913 | ** URL | 916 | ** URL |
| 914 | 917 | ||
| 915 | +++ | 918 | +++ |
| 916 | *** The URL package accepts now the protocols "ssh", "scp" and "rsync". | 919 | *** The URL package accepts now the protocols "ssh", "scp" and "rsync". |
| 917 | When ‘url-handler-mode’ is enabled, file operations for these | 920 | When 'url-handler-mode' is enabled, file operations for these |
| 918 | protocols as well as for "telnet" and "ftp" are passed to Tramp. | 921 | protocols as well as for "telnet" and "ftp" are passed to Tramp. |
| 919 | 922 | ||
| 920 | +++ | 923 | +++ |
| 921 | *** The URL package allows customizing the ‘url-user-agent’ string. | 924 | *** The URL package allows customizing the 'url-user-agent' string. |
| 922 | The new ‘url-user-agent’ variable can be customized to be a string or | 925 | The new 'url-user-agent' variable can be customized to be a string or |
| 923 | a function. | 926 | a function. |
| 924 | 927 | ||
| 925 | --- | 928 | --- |
| 926 | *** The new interface variable ‘url-request-noninteractive’ can be used | 929 | *** The new interface variable 'url-request-noninteractive' can be used |
| 927 | to specify that we’re running in a noninteractive context, and that | 930 | to specify that we're running in a noninteractive context, and that |
| 928 | we should not be queried about things like TLS certificate validity. | 931 | we should not be queried about things like TLS certificate validity. |
| 929 | 932 | ||
| 930 | --- | 933 | --- |
| 931 | *** ‘url-mime-accept-string’ can now be used as in “interface” | 934 | *** 'url-mime-accept-string' can now be used as in "interface" |
| 932 | variable, meaning you can bind it around an ‘url-retrieve’ call. | 935 | variable, meaning you can bind it around an 'url-retrieve' call. |
| 933 | 936 | ||
| 934 | --- | 937 | --- |
| 935 | *** If URL is used with a https connection, the first callback argument | 938 | *** If URL is used with a https connection, the first callback argument |
| 936 | plist will contain a :peer element that has the output of | 939 | plist will contain a :peer element that has the output of |
| 937 | ‘gnutls-peer-status’ (if Emacs is built with GnuTLS support). | 940 | 'gnutls-peer-status' (if Emacs is built with GnuTLS support). |
| 938 | 941 | ||
| 939 | ** Tramp | 942 | ** Tramp |
| 940 | 943 | ||
| @@ -948,21 +951,21 @@ busyboxes. | |||
| 948 | 951 | ||
| 949 | +++ | 952 | +++ |
| 950 | *** Method-specific parameters can be overwritten now with variable | 953 | *** Method-specific parameters can be overwritten now with variable |
| 951 | ‘tramp-connection-properties’. | 954 | 'tramp-connection-properties'. |
| 952 | 955 | ||
| 953 | --- | 956 | --- |
| 954 | *** Handler for ‘file-notify-valid-p’ for remote machines that support | 957 | *** Handler for 'file-notify-valid-p' for remote machines that support |
| 955 | filesystem notifications. | 958 | filesystem notifications. |
| 956 | 959 | ||
| 957 | ** SQL mode | 960 | ** SQL mode |
| 958 | 961 | ||
| 959 | --- | 962 | --- |
| 960 | *** New user variable ‘sql-default-directory’ enables remote | 963 | *** New user variable 'sql-default-directory' enables remote |
| 961 | connections using Tramp. | 964 | connections using Tramp. |
| 962 | 965 | ||
| 963 | --- | 966 | --- |
| 964 | *** New command ‘sql-send-line-and-next’. | 967 | *** New command 'sql-send-line-and-next'. |
| 965 | This command, bound to ‘C-c C-n’ by default, sends the current line to | 968 | This command, bound to 'C-c C-n' by default, sends the current line to |
| 966 | the SQL process and advances to the next line, skipping whitespace and | 969 | the SQL process and advances to the next line, skipping whitespace and |
| 967 | comments. | 970 | comments. |
| 968 | 971 | ||
| @@ -972,7 +975,7 @@ comments. | |||
| 972 | ** VC and related modes | 975 | ** VC and related modes |
| 973 | 976 | ||
| 974 | +++ | 977 | +++ |
| 975 | *** Basic push support, via ‘vc-push’, bound to ‘C-x v P’. | 978 | *** Basic push support, via 'vc-push', bound to 'C-x v P'. |
| 976 | Implemented for Bzr, Git, Hg. As part of this change, the pre-existing | 979 | Implemented for Bzr, Git, Hg. As part of this change, the pre-existing |
| 977 | (undocumented) command vc-hg-push now behaves slightly differently. | 980 | (undocumented) command vc-hg-push now behaves slightly differently. |
| 978 | 981 | ||
| @@ -980,45 +983,45 @@ Implemented for Bzr, Git, Hg. As part of this change, the pre-existing | |||
| 980 | *** The new command vc-region-history shows the log+diff of the active region. | 983 | *** The new command vc-region-history shows the log+diff of the active region. |
| 981 | 984 | ||
| 982 | +++ | 985 | +++ |
| 983 | *** You can refresh the VC state of a file buffer with ‘M-x vc-refresh-state’. | 986 | *** You can refresh the VC state of a file buffer with 'M-x vc-refresh-state'. |
| 984 | This command is useful when you perform version control commands | 987 | This command is useful when you perform version control commands |
| 985 | outside Emacs (e.g., from the shell prompt), or if you switch the VC | 988 | outside Emacs (e.g., from the shell prompt), or if you switch the VC |
| 986 | back-end for the buffer’s file, or remove it from version control. | 989 | back-end for the buffer's file, or remove it from version control. |
| 987 | 990 | ||
| 988 | +++ | 991 | +++ |
| 989 | *** New option ‘vc-annotate-background-mode’ controls whether | 992 | *** New option 'vc-annotate-background-mode' controls whether |
| 990 | the color range from ‘vc-annotate-color-map’ is applied to the | 993 | the color range from 'vc-annotate-color-map' is applied to the |
| 991 | background or to the foreground. | 994 | background or to the foreground. |
| 992 | 995 | ||
| 993 | +++ | 996 | +++ |
| 994 | *** ‘compare-windows’ now compares text with the most recently selected window | 997 | *** 'compare-windows' now compares text with the most recently selected window |
| 995 | instead of the next window. If you want the previous behavior of | 998 | instead of the next window. If you want the previous behavior of |
| 996 | comparing with the next window, customize the new option | 999 | comparing with the next window, customize the new option |
| 997 | ‘compare-windows-get-window-function’ to the value | 1000 | 'compare-windows-get-window-function' to the value |
| 998 | ‘compare-windows-get-next-window’. | 1001 | 'compare-windows-get-next-window'. |
| 999 | 1002 | ||
| 1000 | --- | 1003 | --- |
| 1001 | *** Two new faces ‘compare-windows-removed’ and ‘compare-windows-added’ | 1004 | *** Two new faces 'compare-windows-removed' and 'compare-windows-added' |
| 1002 | replace the face ‘compare-windows’, which is now an obsolete alias for | 1005 | replace the face 'compare-windows', which is now an obsolete alias for |
| 1003 | ‘compare-windows-added’. | 1006 | 'compare-windows-added'. |
| 1004 | 1007 | ||
| 1005 | --- | 1008 | --- |
| 1006 | *** The VC state indicator in the mode line now has different faces | 1009 | *** The VC state indicator in the mode line now has different faces |
| 1007 | corresponding to each of the possible states. See the ‘vc-faces’ | 1010 | corresponding to each of the possible states. See the 'vc-faces' |
| 1008 | customization group. | 1011 | customization group. |
| 1009 | 1012 | ||
| 1010 | --- | 1013 | --- |
| 1011 | *** ‘log-edit-insert-changelog’ converts “(tiny change)” to | 1014 | *** 'log-edit-insert-changelog' converts "(tiny change)" to |
| 1012 | “Copyright-paperwork-exempt: yes”. Set ‘log-edit-rewrite-tiny-change’ | 1015 | "Copyright-paperwork-exempt: yes". Set 'log-edit-rewrite-tiny-change' |
| 1013 | nil to disable this. | 1016 | nil to disable this. |
| 1014 | 1017 | ||
| 1015 | --- | 1018 | --- |
| 1016 | ** VHDL mode now supports VHDL’08. | 1019 | ** VHDL mode now supports VHDL'08. |
| 1017 | 1020 | ||
| 1018 | ** Calculator | 1021 | ** Calculator |
| 1019 | 1022 | ||
| 1020 | --- | 1023 | --- |
| 1021 | *** Decimal display mode uses “,” groups, so it’s more | 1024 | *** Decimal display mode uses "," groups, so it's more |
| 1022 | fitting for use in money calculations | 1025 | fitting for use in money calculations |
| 1023 | 1026 | ||
| 1024 | --- | 1027 | --- |
| @@ -1029,59 +1032,59 @@ fitting for use in money calculations | |||
| 1029 | --- | 1032 | --- |
| 1030 | *** Hide-IfDef mode now support full C/C++ expressions in macros, | 1033 | *** Hide-IfDef mode now support full C/C++ expressions in macros, |
| 1031 | macro argument expansion, interactive macro evaluation and automatic | 1034 | macro argument expansion, interactive macro evaluation and automatic |
| 1032 | scanning of #define’d symbols. | 1035 | scanning of #define'd symbols. |
| 1033 | 1036 | ||
| 1034 | --- | 1037 | --- |
| 1035 | *** New command ‘hif-evaluate-macro’, bound to ‘C-c @ e’, displays the | 1038 | *** New command 'hif-evaluate-macro', bound to 'C-c @ e', displays the |
| 1036 | result of evaluating a macro. | 1039 | result of evaluating a macro. |
| 1037 | 1040 | ||
| 1038 | --- | 1041 | --- |
| 1039 | *** New command ‘hif-clear-all-ifdef-define’, bound to ‘C-c @ C’, clears | 1042 | *** New command 'hif-clear-all-ifdef-define', bound to 'C-c @ C', clears |
| 1040 | all defined symbols in ‘hide-ifdef-env’. | 1043 | all defined symbols in 'hide-ifdef-env'. |
| 1041 | 1044 | ||
| 1042 | --- | 1045 | --- |
| 1043 | *** New custom variable ‘hide-ifdef-header-regexp’ to define C/C++ header | 1046 | *** New custom variable 'hide-ifdef-header-regexp' to define C/C++ header |
| 1044 | file name patterns. Defaults to files whose extension is one of ‘.h’, | 1047 | file name patterns. Defaults to files whose extension is one of '.h', |
| 1045 | ‘.hh’, ‘.hpp’, ‘.hxx’, or ‘.h++’, matched case-insensitively. | 1048 | '.hh', '.hpp', '.hxx', or '.h++', matched case-insensitively. |
| 1046 | 1049 | ||
| 1047 | --- | 1050 | --- |
| 1048 | *** New custom variable ‘hide-ifdef-expand-reinclusion-protection’ to prevent | 1051 | *** New custom variable 'hide-ifdef-expand-reinclusion-protection' to prevent |
| 1049 | reinclusion protected (a.k.a. “idempotent”) header files from being hidden. | 1052 | reinclusion protected (a.k.a. "idempotent") header files from being hidden. |
| 1050 | (This could happen when an idempotent header file is visited again, | 1053 | (This could happen when an idempotent header file is visited again, |
| 1051 | when its guard symbol is already defined.) Defaults to ‘t’. | 1054 | when its guard symbol is already defined.) Defaults to 't'. |
| 1052 | 1055 | ||
| 1053 | --- | 1056 | --- |
| 1054 | *** New custom variable ‘hide-ifdef-exclude-define-regexp’ to define symbol | 1057 | *** New custom variable 'hide-ifdef-exclude-define-regexp' to define symbol |
| 1055 | name patterns (e.g. all ‘FOR_DOXYGEN_ONLY_*’) to be ignored when | 1058 | name patterns (e.g. all "FOR_DOXYGEN_ONLY_*") to be ignored when |
| 1056 | looking for macro definitions. By default, no symbols are ignored. | 1059 | looking for macro definitions. By default, no symbols are ignored. |
| 1057 | 1060 | ||
| 1058 | ** TeX mode | 1061 | ** TeX mode |
| 1059 | 1062 | ||
| 1060 | +++ | 1063 | +++ |
| 1061 | *** New custom variable ‘tex-print-file-extension’ to help users who | 1064 | *** New custom variable 'tex-print-file-extension' to help users who |
| 1062 | use PDF instead of DVI. | 1065 | use PDF instead of DVI. |
| 1063 | 1066 | ||
| 1064 | +++ | 1067 | +++ |
| 1065 | *** TeX mode now supports Prettify Symbols mode. When enabling | 1068 | *** TeX mode now supports Prettify Symbols mode. When enabling |
| 1066 | ‘prettify-symbols-mode’ in a tex-mode buffer, \alpha ... \omega, and | 1069 | 'prettify-symbols-mode' in a tex-mode buffer, \alpha ... \omega, and |
| 1067 | many other math macros are displayed using unicode characters. | 1070 | many other math macros are displayed using unicode characters. |
| 1068 | 1071 | ||
| 1069 | +++ | 1072 | +++ |
| 1070 | ** New ‘big-indent’ style in ‘whitespace-mode’ highlights deep indentation. | 1073 | ** New 'big-indent' style in 'whitespace-mode' highlights deep indentation. |
| 1071 | By default, 32 consecutive spaces or four consecutive TABs are | 1074 | By default, 32 consecutive spaces or four consecutive TABs are |
| 1072 | considered to be too deep, but the new variable | 1075 | considered to be too deep, but the new variable |
| 1073 | ‘whitespace-big-indent-regexp’ can be customized to change that. | 1076 | 'whitespace-big-indent-regexp' can be customized to change that. |
| 1074 | 1077 | ||
| 1075 | --- | 1078 | --- |
| 1076 | ** New options in ‘tildify-mode’. | 1079 | ** New options in 'tildify-mode'. |
| 1077 | New options ‘tildify-space-string’, ‘tildify-pattern’, and | 1080 | New options 'tildify-space-string', 'tildify-pattern', and |
| 1078 | ‘tildify-foreach-region-function’ variables make | 1081 | 'tildify-foreach-region-function' variables make |
| 1079 | ‘tildify-string-alist’, ‘tildify-pattern-alist’, and | 1082 | 'tildify-string-alist', 'tildify-pattern-alist', and |
| 1080 | ‘tildify-ignored-environments-alist’ variables (as well as a few | 1083 | 'tildify-ignored-environments-alist' variables (as well as a few |
| 1081 | helper functions) obsolete. | 1084 | helper functions) obsolete. |
| 1082 | 1085 | ||
| 1083 | +++ | 1086 | +++ |
| 1084 | ** New package Xref replaces Etags’s front-end and UI | 1087 | ** New package Xref replaces Etags's front-end and UI |
| 1085 | 1088 | ||
| 1086 | The new package Xref provides a generic framework and new commands to | 1089 | The new package Xref provides a generic framework and new commands to |
| 1087 | find and move to definitions of functions, macros, data structures | 1090 | find and move to definitions of functions, macros, data structures |
| @@ -1090,43 +1093,43 @@ to a definition. It supersedes and obsoletes many Etags commands, | |||
| 1090 | while still using the etags.el code that reads the TAGS tables as one | 1093 | while still using the etags.el code that reads the TAGS tables as one |
| 1091 | of its back-ends. | 1094 | of its back-ends. |
| 1092 | 1095 | ||
| 1093 | The command ‘xref-find-definitions’ replaces ‘find-tag’ and provides | 1096 | The command 'xref-find-definitions' replaces 'find-tag' and provides |
| 1094 | an interface to pick one definition among several. | 1097 | an interface to pick one definition among several. |
| 1095 | ‘tags-loop-continue’ is now unbound. ‘xref-pop-marker-stack’ replaces | 1098 | 'tags-loop-continue' is now unbound. 'xref-pop-marker-stack' replaces |
| 1096 | ‘pop-tag-mark’, but has a keybinding (‘M-,’) different from the one | 1099 | 'pop-tag-mark', but has a keybinding ('M-,') different from the one |
| 1097 | ‘pop-tag-mark’ used. | 1100 | 'pop-tag-mark' used. |
| 1098 | 1101 | ||
| 1099 | ‘xref-find-definitions-other-window’ replaces ‘find-tag-other-window’. | 1102 | 'xref-find-definitions-other-window' replaces 'find-tag-other-window'. |
| 1100 | ‘xref-find-definitions-other-frame’ replaces ‘find-tag-other-frame’. | 1103 | 'xref-find-definitions-other-frame' replaces 'find-tag-other-frame'. |
| 1101 | ‘xref-find-apropos’ replaces ‘find-tag-regexp’. | 1104 | 'xref-find-apropos' replaces 'find-tag-regexp'. |
| 1102 | 1105 | ||
| 1103 | As a result of this, the following commands are now obsolete: | 1106 | As a result of this, the following commands are now obsolete: |
| 1104 | ‘find-tag-other-window’, ‘find-tag-other-frame’, ‘find-tag-regexp’, | 1107 | 'find-tag-other-window', 'find-tag-other-frame', 'find-tag-regexp', |
| 1105 | ‘tags-apropos’. | 1108 | 'tags-apropos'. |
| 1106 | 1109 | ||
| 1107 | ‘tags-loop-continue’ is not obsolete because it’s still useful in | 1110 | 'tags-loop-continue' is not obsolete because it's still useful in |
| 1108 | ‘tags-search’ and ‘tags-query-replace’, for which there are no direct | 1111 | 'tags-search' and 'tags-query-replace', for which there are no direct |
| 1109 | replacements yet. | 1112 | replacements yet. |
| 1110 | 1113 | ||
| 1111 | +++ | 1114 | +++ |
| 1112 | *** Variants of ‘tags-search’ and ‘tags-query-replace’ in Dired were also | 1115 | *** Variants of 'tags-search' and 'tags-query-replace' in Dired were also |
| 1113 | replaced by xref-style commands, see the “Dired” section below. | 1116 | replaced by xref-style commands, see the "Dired" section below. |
| 1114 | 1117 | ||
| 1115 | +++ | 1118 | +++ |
| 1116 | *** New variables | 1119 | *** New variables |
| 1117 | 1120 | ||
| 1118 | ‘find-tag-marker-ring-length’ is now an obsolete alias for | 1121 | 'find-tag-marker-ring-length' is now an obsolete alias for |
| 1119 | ‘xref-marker-ring-length’. ‘find-tag-marker-ring’ is now an obsolete | 1122 | 'xref-marker-ring-length'. 'find-tag-marker-ring' is now an obsolete |
| 1120 | alias for a private variable. ‘xref-push-marker-stack’ and | 1123 | alias for a private variable. 'xref-push-marker-stack' and |
| 1121 | ‘xref-pop-marker-stack’ should be used instead to manipulate the stack | 1124 | 'xref-pop-marker-stack' should be used instead to manipulate the stack |
| 1122 | of searches for definitions. | 1125 | of searches for definitions. |
| 1123 | 1126 | ||
| 1124 | --- | 1127 | --- |
| 1125 | *** ‘xref-find-definitions’ and ‘describe-function’ now display | 1128 | *** 'xref-find-definitions' and 'describe-function' now display |
| 1126 | information about mode local overrides (defined by cedet/mode-local.el | 1129 | information about mode local overrides (defined by cedet/mode-local.el |
| 1127 | ‘define-overloadable-function’ ‘define-mode-local-overrides’). | 1130 | 'define-overloadable-function' 'define-mode-local-overrides'). |
| 1128 | 1131 | ||
| 1129 | The framework’s Lisp API is still experimental and can change in major, | 1132 | The framework's Lisp API is still experimental and can change in major, |
| 1130 | backward-incompatible ways. | 1133 | backward-incompatible ways. |
| 1131 | 1134 | ||
| 1132 | --- | 1135 | --- |
| @@ -1134,12 +1137,12 @@ backward-incompatible ways. | |||
| 1134 | 1137 | ||
| 1135 | The new package Project provides generic infrastructure for dealing | 1138 | The new package Project provides generic infrastructure for dealing |
| 1136 | with projects. The main commands included in it are | 1139 | with projects. The main commands included in it are |
| 1137 | ‘project-find-file’ and ‘project-find-regexp’. | 1140 | 'project-find-file' and 'project-find-regexp'. |
| 1138 | 1141 | ||
| 1139 | The Lisp API of this package is still experimental. | 1142 | The Lisp API of this package is still experimental. |
| 1140 | 1143 | ||
| 1141 | ** EUDC | 1144 | ** EUDC |
| 1142 | EUDC’s LDAP backend has been improved. | 1145 | EUDC's LDAP backend has been improved. |
| 1143 | 1146 | ||
| 1144 | +++ | 1147 | +++ |
| 1145 | *** EUDC supports LDAP-over-SSL URLs (ldaps://). | 1148 | *** EUDC supports LDAP-over-SSL URLs (ldaps://). |
| @@ -1149,67 +1152,67 @@ EUDC’s LDAP backend has been improved. | |||
| 1149 | subprocess instead of on the command line. | 1152 | subprocess instead of on the command line. |
| 1150 | 1153 | ||
| 1151 | --- | 1154 | --- |
| 1152 | *** EUDC handles LDAP wildcards automatically so the user shouldn’t | 1155 | *** EUDC handles LDAP wildcards automatically so the user shouldn't |
| 1153 | need to configure this manually anymore. | 1156 | need to configure this manually anymore. |
| 1154 | 1157 | ||
| 1155 | +++ | 1158 | +++ |
| 1156 | *** The LDAP configuration section of EUDC’s manual has been | 1159 | *** The LDAP configuration section of EUDC's manual has been |
| 1157 | rewritten. | 1160 | rewritten. |
| 1158 | 1161 | ||
| 1159 | There have also been customization changes. | 1162 | There have also been customization changes. |
| 1160 | 1163 | ||
| 1161 | +++ | 1164 | +++ |
| 1162 | *** New custom variable ‘eudc-server-hotlist’ to allow specifying | 1165 | *** New custom variable 'eudc-server-hotlist' to allow specifying |
| 1163 | multiple EUDC servers in init file. | 1166 | multiple EUDC servers in init file. |
| 1164 | 1167 | ||
| 1165 | +++ | 1168 | +++ |
| 1166 | *** Custom variable ‘eudc-inline-query-format’ defaults to completing | 1169 | *** Custom variable 'eudc-inline-query-format' defaults to completing |
| 1167 | on email and firstname instead of surname. | 1170 | on email and firstname instead of surname. |
| 1168 | 1171 | ||
| 1169 | --- | 1172 | --- |
| 1170 | *** Custom variable ‘eudc-expansion-overwrites-query’ defaults to nil | 1173 | *** Custom variable 'eudc-expansion-overwrites-query' defaults to nil |
| 1171 | to avoid interfering with the kill ring. | 1174 | to avoid interfering with the kill ring. |
| 1172 | 1175 | ||
| 1173 | +++ | 1176 | +++ |
| 1174 | *** Custom variable ‘eudc-inline-expansion-format’ defaults to | 1177 | *** Custom variable 'eudc-inline-expansion-format' defaults to |
| 1175 | "Firstname Surname <mail-address>". | 1178 | "Firstname Surname <mail-address>". |
| 1176 | 1179 | ||
| 1177 | +++ | 1180 | +++ |
| 1178 | *** Custom variable ‘eudc-options-file’ defaults to | 1181 | *** Custom variable 'eudc-options-file' defaults to |
| 1179 | "~/.emacs.d/eudc-options". | 1182 | "~/.emacs.d/eudc-options". |
| 1180 | 1183 | ||
| 1181 | --- | 1184 | --- |
| 1182 | *** New custom variable ‘ldap-ldapsearch-password-prompt-regexp’ to | 1185 | *** New custom variable 'ldap-ldapsearch-password-prompt-regexp' to |
| 1183 | allow overriding the regular expression that recognizes the ldapsearch | 1186 | allow overriding the regular expression that recognizes the ldapsearch |
| 1184 | command line’s password prompt. | 1187 | command line's password prompt. |
| 1185 | 1188 | ||
| 1186 | --- | 1189 | --- |
| 1187 | EUDC’s BBDB backend now supports BBDB 3. | 1190 | EUDC's BBDB backend now supports BBDB 3. |
| 1188 | 1191 | ||
| 1189 | --- | 1192 | --- |
| 1190 | EUDC’s PH backend (eudcb-ph.el) is obsolete. | 1193 | EUDC's PH backend (eudcb-ph.el) is obsolete. |
| 1191 | 1194 | ||
| 1192 | ** Eshell | 1195 | ** Eshell |
| 1193 | 1196 | ||
| 1194 | +++ | 1197 | +++ |
| 1195 | *** The new built-in command ‘clear’ can scroll window contents out of sight. | 1198 | *** The new built-in command 'clear' can scroll window contents out of sight. |
| 1196 | If provided with an optional non-nil argument, the scrollback contents will be cleared. | 1199 | If provided with an optional non-nil argument, the scrollback contents will be cleared. |
| 1197 | 1200 | ||
| 1198 | +++ | 1201 | +++ |
| 1199 | *** New buffer syntax ‘#<buffer-name>’, which is equivalent to | 1202 | *** New buffer syntax '#<buffer-name>', which is equivalent to |
| 1200 | ‘#<buffer buffer-name>’. This shorthand makes interacting with | 1203 | '#<buffer buffer-name>'. This shorthand makes interacting with |
| 1201 | buffers from eshell more convenient. Custom variable | 1204 | buffers from eshell more convenient. Custom variable |
| 1202 | ‘eshell-buffer-shorthand’, which has been broken for a while, has been | 1205 | 'eshell-buffer-shorthand', which has been broken for a while, has been |
| 1203 | removed. | 1206 | removed. |
| 1204 | 1207 | ||
| 1205 | +++ | 1208 | +++ |
| 1206 | *** By default, eshell “visual” program buffers (created by | 1209 | *** By default, eshell "visual" program buffers (created by |
| 1207 | ‘eshell-visual-commands’ and similar custom vars) are no longer killed | 1210 | 'eshell-visual-commands' and similar custom vars) are no longer killed |
| 1208 | when their processes die. This fixes issues with short-lived commands | 1211 | when their processes die. This fixes issues with short-lived commands |
| 1209 | and makes visual programs more useful in general. For example, if | 1212 | and makes visual programs more useful in general. For example, if |
| 1210 | ‘git log’ is a visual command, it will always show the visual command | 1213 | "git log" is a visual command, it will always show the visual command |
| 1211 | buffer, even if the ‘git log’ process dies. For the old behavior, | 1214 | buffer, even if the "git log" process dies. For the old behavior, |
| 1212 | make the new option ‘eshell-destroy-buffer-when-process-dies’ non-nil. | 1215 | make the new option 'eshell-destroy-buffer-when-process-dies' non-nil. |
| 1213 | 1216 | ||
| 1214 | ** Browse-url | 1217 | ** Browse-url |
| 1215 | 1218 | ||
| @@ -1223,7 +1226,7 @@ make the new option ‘eshell-destroy-buffer-when-process-dies’ non-nil. | |||
| 1223 | *** Support for several ancient browsers is now officially obsolete. | 1226 | *** Support for several ancient browsers is now officially obsolete. |
| 1224 | 1227 | ||
| 1225 | +++ | 1228 | +++ |
| 1226 | ** tar-mode: new ‘tar-new-entry’ command, allowing for new members to | 1229 | ** tar-mode: new 'tar-new-entry' command, allowing for new members to |
| 1227 | be added to the archive. | 1230 | be added to the archive. |
| 1228 | 1231 | ||
| 1229 | ** Autorevert | 1232 | ** Autorevert |
| @@ -1233,7 +1236,7 @@ be added to the archive. | |||
| 1233 | Emacs is compiled with file notification support. | 1236 | Emacs is compiled with file notification support. |
| 1234 | 1237 | ||
| 1235 | --- | 1238 | --- |
| 1236 | *** ‘auto-revert-use-notify’ is set to nil in ‘global-auto-revert-mode’. | 1239 | *** 'auto-revert-use-notify' is set to nil in 'global-auto-revert-mode'. |
| 1237 | See <http://debbugs.gnu.org/22814>. | 1240 | See <http://debbugs.gnu.org/22814>. |
| 1238 | 1241 | ||
| 1239 | ** File Notifications | 1242 | ** File Notifications |
| @@ -1242,46 +1245,46 @@ See <http://debbugs.gnu.org/22814>. | |||
| 1242 | *** The kqueue library is integrated for *BSD and Mac OS X machines. | 1245 | *** The kqueue library is integrated for *BSD and Mac OS X machines. |
| 1243 | 1246 | ||
| 1244 | +++ | 1247 | +++ |
| 1245 | *** The new event ‘stopped’ signals, that a file notification watch is | 1248 | *** The new event 'stopped' signals, that a file notification watch is |
| 1246 | not active any longer. | 1249 | not active any longer. |
| 1247 | 1250 | ||
| 1248 | +++ | 1251 | +++ |
| 1249 | *** The new function ‘file-notify-valid-p’ checks, whether a file | 1252 | *** The new function 'file-notify-valid-p' checks, whether a file |
| 1250 | notification descriptor still corresponds to an activate watch. | 1253 | notification descriptor still corresponds to an activate watch. |
| 1251 | 1254 | ||
| 1252 | ** Dired | 1255 | ** Dired |
| 1253 | 1256 | ||
| 1254 | +++ | 1257 | +++ |
| 1255 | *** The command ‘dired-do-compress’ bound to ‘Z’ now can compress | 1258 | *** The command 'dired-do-compress' bound to 'Z' now can compress |
| 1256 | directories and decompress zip files. | 1259 | directories and decompress zip files. |
| 1257 | 1260 | ||
| 1258 | +++ | 1261 | +++ |
| 1259 | *** New command ‘dired-do-compress-to’ bound to ‘c’ can be used to | 1262 | *** New command 'dired-do-compress-to' bound to 'c' can be used to |
| 1260 | compress many marked files into a single named archive. The | 1263 | compress many marked files into a single named archive. The |
| 1261 | compression command is determined from the new | 1264 | compression command is determined from the new |
| 1262 | ‘dired-compress-files-alist’ variable. | 1265 | 'dired-compress-files-alist' variable. |
| 1263 | 1266 | ||
| 1264 | +++ | 1267 | +++ |
| 1265 | *** New user interface for the ‘A’ and ‘Q’ commands. | 1268 | *** New user interface for the 'A' and 'Q' commands. |
| 1266 | These keys, now bound to ‘dired-do-find-regexp’ and | 1269 | These keys, now bound to 'dired-do-find-regexp' and |
| 1267 | ‘dired-do-find-regexp-and-replace’, work similarly to ‘xref-find-apropos’ | 1270 | 'dired-do-find-regexp-and-replace', work similarly to 'xref-find-apropos' |
| 1268 | and ‘xref-query-replace-in-results’: they present the matches | 1271 | and 'xref-query-replace-in-results': they present the matches |
| 1269 | in the ‘*xref*’ buffer and let you move through the matches. No need | 1272 | in the '*xref*' buffer and let you move through the matches. No need |
| 1270 | to use ‘tags-loop-continue’ to resume the search or replace loop. The | 1273 | to use 'tags-loop-continue' to resume the search or replace loop. The |
| 1271 | previous commands, ‘dired-do-search’ and | 1274 | previous commands, 'dired-do-search' and |
| 1272 | ‘dired-do-query-replace-regexp’, are still available, but not bound to | 1275 | 'dired-do-query-replace-regexp', are still available, but not bound to |
| 1273 | keys; rebind ‘A’ and ‘Q’ to invoke them if you want the old behavior | 1276 | keys; rebind 'A' and 'Q' to invoke them if you want the old behavior |
| 1274 | back. We intend to obsolete the old commands in a future release. | 1277 | back. We intend to obsolete the old commands in a future release. |
| 1275 | 1278 | ||
| 1276 | ** Tabulated List Mode | 1279 | ** Tabulated List Mode |
| 1277 | 1280 | ||
| 1278 | +++ | 1281 | +++ |
| 1279 | *** It is now safe for a mode that derives ‘tabulated-list-mode’ to not | 1282 | *** It is now safe for a mode that derives 'tabulated-list-mode' to not |
| 1280 | call ‘tabulated-list-init-header’, in which case it will have no | 1283 | call 'tabulated-list-init-header', in which case it will have no |
| 1281 | header. | 1284 | header. |
| 1282 | 1285 | ||
| 1283 | +++ | 1286 | +++ |
| 1284 | *** ‘tabulated-list-print’ takes a second optional argument, update, | 1287 | *** 'tabulated-list-print' takes a second optional argument, update, |
| 1285 | which specifies an alternative printing method which is faster when | 1288 | which specifies an alternative printing method which is faster when |
| 1286 | few or no entries have changed. | 1289 | few or no entries have changed. |
| 1287 | 1290 | ||
| @@ -1302,13 +1305,13 @@ minibuffer instead of a graphical dialog, depending on whether the gpg | |||
| 1302 | command is called from Emacs (i.e., INSIDE_EMACS environment variable | 1305 | command is called from Emacs (i.e., INSIDE_EMACS environment variable |
| 1303 | is set). This feature requires newer versions of GnuPG (2.1.5 or | 1306 | is set). This feature requires newer versions of GnuPG (2.1.5 or |
| 1304 | later) and Pinentry (0.9.5 or later). To use this feature, add | 1307 | later) and Pinentry (0.9.5 or later). To use this feature, add |
| 1305 | ‘allow-emacs-pinentry’ to ‘~/.gnupg/gpg-agent.conf’ and reload the | 1308 | "allow-emacs-pinentry" to "~/.gnupg/gpg-agent.conf" and reload the |
| 1306 | configuration with ‘gpgconf --reload gpg-agent’. | 1309 | configuration with "gpgconf --reload gpg-agent". |
| 1307 | 1310 | ||
| 1308 | +++ | 1311 | +++ |
| 1309 | ** cl-generic.el provides CLOS-style multiple-dispatch generic functions. | 1312 | ** cl-generic.el provides CLOS-style multiple-dispatch generic functions. |
| 1310 | The main entry points are ‘cl-defgeneric’ and ‘cl-defmethod’. See the | 1313 | The main entry points are 'cl-defgeneric' and 'cl-defmethod'. See the |
| 1311 | node “Generic Functions” in the Emacs Lisp manual for more details. | 1314 | node "Generic Functions" in the Emacs Lisp manual for more details. |
| 1312 | 1315 | ||
| 1313 | --- | 1316 | --- |
| 1314 | ** scss-mode (a minor variant of css-mode) is a major mode for editing | 1317 | ** scss-mode (a minor variant of css-mode) is a major mode for editing |
| @@ -1319,25 +1322,25 @@ SCSS (Sassy CSS) files. | |||
| 1319 | let-bind the values stored in an alist. | 1322 | let-bind the values stored in an alist. |
| 1320 | 1323 | ||
| 1321 | --- | 1324 | --- |
| 1322 | ** ‘tildify-mode’ allows automatic insertion of hard spaces as one | 1325 | ** 'tildify-mode' allows automatic insertion of hard spaces as one |
| 1323 | types the text. Breaking line after a single-character words is | 1326 | types the text. Breaking line after a single-character words is |
| 1324 | forbidden by Czech and Polish typography (and may be discouraged in | 1327 | forbidden by Czech and Polish typography (and may be discouraged in |
| 1325 | other languages), so ‘auto-tildify-mode’ makes it easier to create | 1328 | other languages), so 'auto-tildify-mode' makes it easier to create |
| 1326 | a typographically-correct documents. | 1329 | a typographically-correct documents. |
| 1327 | 1330 | ||
| 1328 | --- | 1331 | --- |
| 1329 | ** The ‘seq’ library adds sequence manipulation functions and macros | 1332 | ** The 'seq' library adds sequence manipulation functions and macros |
| 1330 | that complement basic functions provided by subr.el. All functions | 1333 | that complement basic functions provided by subr.el. All functions |
| 1331 | are prefixed with ‘seq-’ and work on lists, strings and vectors. | 1334 | are prefixed with 'seq-' and work on lists, strings and vectors. |
| 1332 | ‘pcase’ accepts a new Upattern ‘seq’. | 1335 | 'pcase' accepts a new Upattern 'seq'. |
| 1333 | 1336 | ||
| 1334 | --- | 1337 | --- |
| 1335 | ** The ‘map’ library provides map-manipulation functions that work on | 1338 | ** The 'map' library provides map-manipulation functions that work on |
| 1336 | alists, hash-table and arrays. All functions are prefixed with | 1339 | alists, hash-table and arrays. All functions are prefixed with |
| 1337 | ‘map-’. ‘pcase’ accepts a new UPattern ‘map’. | 1340 | 'map-'. 'pcase' accepts a new UPattern 'map'. |
| 1338 | 1341 | ||
| 1339 | --- | 1342 | --- |
| 1340 | ** The ‘thunk’ library provides functions and macros to control the | 1343 | ** The 'thunk' library provides functions and macros to control the |
| 1341 | evaluation of forms. | 1344 | evaluation of forms. |
| 1342 | 1345 | ||
| 1343 | --- | 1346 | --- |
| @@ -1348,79 +1351,79 @@ support for JSX, an XML-like syntax extension to ECMAScript. | |||
| 1348 | * Incompatible Lisp Changes in Emacs 25.1 | 1351 | * Incompatible Lisp Changes in Emacs 25.1 |
| 1349 | 1352 | ||
| 1350 | --- | 1353 | --- |
| 1351 | ** ‘setq’ and ‘setf’ must now be called with an even number of | 1354 | ** 'setq' and 'setf' must now be called with an even number of |
| 1352 | arguments. The earlier behavior of silently supplying a nil to the | 1355 | arguments. The earlier behavior of silently supplying a nil to the |
| 1353 | last variable when there was an odd number of arguments has been | 1356 | last variable when there was an odd number of arguments has been |
| 1354 | eliminated. | 1357 | eliminated. |
| 1355 | 1358 | ||
| 1356 | +++ | 1359 | +++ |
| 1357 | ** ‘syntax-begin-function’ is declared obsolete. | 1360 | ** 'syntax-begin-function' is declared obsolete. |
| 1358 | Removed font-lock-beginning-of-syntax-function and the SYNTAX-BEGIN | 1361 | Removed font-lock-beginning-of-syntax-function and the SYNTAX-BEGIN |
| 1359 | slot in font-lock-defaults. | 1362 | slot in font-lock-defaults. |
| 1360 | 1363 | ||
| 1361 | +++ | 1364 | +++ |
| 1362 | ** The new implementation of Subword mode affects word movement everywhere. | 1365 | ** The new implementation of Subword mode affects word movement everywhere. |
| 1363 | When Subword mode is turned on, ‘forward-word’, ‘backward-word’, and | 1366 | When Subword mode is turned on, 'forward-word', 'backward-word', and |
| 1364 | everything that uses them will move by sub-words, effectively | 1367 | everything that uses them will move by sub-words, effectively |
| 1365 | overriding the buffer’s syntax table. Lisp programs that shouldn’t be | 1368 | overriding the buffer's syntax table. Lisp programs that shouldn't be |
| 1366 | affected by Subword mode should call the new functions | 1369 | affected by Subword mode should call the new functions |
| 1367 | ‘forward-word-strictly’ and ‘backward-word-strictly’ instead. | 1370 | 'forward-word-strictly' and 'backward-word-strictly' instead. |
| 1368 | 1371 | ||
| 1369 | +++ | 1372 | +++ |
| 1370 | ** ‘package-initialize’ now sets ‘package-enable-at-startup’ to nil if | 1373 | ** 'package-initialize' now sets 'package-enable-at-startup' to nil if |
| 1371 | called during startup. Users who call this function in their init | 1374 | called during startup. Users who call this function in their init |
| 1372 | file and still expect it to be run after startup should set | 1375 | file and still expect it to be run after startup should set |
| 1373 | ‘package-enable-at-startup’ to t after the call to | 1376 | 'package-enable-at-startup' to t after the call to |
| 1374 | ‘package-initialize’. | 1377 | 'package-initialize'. |
| 1375 | 1378 | ||
| 1376 | --- | 1379 | --- |
| 1377 | ** ‘:global’ minor mode use ‘setq-default’ rather than ‘setq’. | 1380 | ** ':global' minor mode use 'setq-default' rather than 'setq'. |
| 1378 | This means that you can’t use ‘make-local-variable’ and expect them to | 1381 | This means that you can't use 'make-local-variable' and expect them to |
| 1379 | “magically” become buffer-local. | 1382 | "magically" become buffer-local. |
| 1380 | 1383 | ||
| 1381 | +++ | 1384 | +++ |
| 1382 | ** ‘track-mouse’ no longer freezes the shape of the mouse pointer. | 1385 | ** 'track-mouse' no longer freezes the shape of the mouse pointer. |
| 1383 | The ‘track-mouse’ form no longer refrains from changing the shape of | 1386 | The 'track-mouse' form no longer refrains from changing the shape of |
| 1384 | the mouse pointer for the entire time the body of that form is | 1387 | the mouse pointer for the entire time the body of that form is |
| 1385 | executed. Lisp programs that use ‘track-mouse’ for dragging across | 1388 | executed. Lisp programs that use 'track-mouse' for dragging across |
| 1386 | large portions of the Emacs display, and want to avoid changes in the | 1389 | large portions of the Emacs display, and want to avoid changes in the |
| 1387 | pointer shape during dragging, should bind the variable ‘track-mouse’ | 1390 | pointer shape during dragging, should bind the variable 'track-mouse' |
| 1388 | to the special value ‘dragging’ in the body of the form. | 1391 | to the special value 'dragging' in the body of the form. |
| 1389 | 1392 | ||
| 1390 | --- | 1393 | --- |
| 1391 | ** The optional ‘predicate’ argument of ‘lisp-complete-symbol’ no longer | 1394 | ** The optional 'predicate' argument of 'lisp-complete-symbol' no longer |
| 1392 | has any effect. (This change was made in Emacs 24.4 but was not | 1395 | has any effect. (This change was made in Emacs 24.4 but was not |
| 1393 | advertised at the time.) | 1396 | advertised at the time.) |
| 1394 | 1397 | ||
| 1395 | +++ | 1398 | +++ |
| 1396 | ** ‘indirect-function’ does not signal ‘void-function’ any more. | 1399 | ** 'indirect-function' does not signal 'void-function' any more. |
| 1397 | This is mostly a bug-fix, since this change was missed back in 24.4 when | 1400 | This is mostly a bug-fix, since this change was missed back in 24.4 when |
| 1398 | symbol-function was changed not to signal ‘void-function’ any more. | 1401 | symbol-function was changed not to signal 'void-function' any more. |
| 1399 | 1402 | ||
| 1400 | +++ | 1403 | +++ |
| 1401 | *** As a consequence, the second arg of ‘indirect-function’ is now obsolete. | 1404 | *** As a consequence, the second arg of 'indirect-function' is now obsolete. |
| 1402 | 1405 | ||
| 1403 | +++ | 1406 | +++ |
| 1404 | ** Comint, term, and compile do not set the EMACS env var any more. | 1407 | ** Comint, term, and compile do not set the EMACS env var any more. |
| 1405 | Use the INSIDE_EMACS environment variable instead. | 1408 | Use the INSIDE_EMACS environment variable instead. |
| 1406 | 1409 | ||
| 1407 | +++ | 1410 | +++ |
| 1408 | ** ‘save-excursion’ does not save&restore the mark any more. | 1411 | ** 'save-excursion' does not save&restore the mark any more. |
| 1409 | Use ‘save-mark-and-excursion’ if you want the old behavior. | 1412 | Use 'save-mark-and-excursion' if you want the old behavior. |
| 1410 | 1413 | ||
| 1411 | +++ | 1414 | +++ |
| 1412 | ** ‘read-buffer’ and ‘read-buffer-function’ can now be called with a 4th | 1415 | ** 'read-buffer' and 'read-buffer-function' can now be called with a 4th |
| 1413 | argument (‘predicate’). | 1416 | argument ('predicate'). |
| 1414 | 1417 | ||
| 1415 | +++ | 1418 | +++ |
| 1416 | ** ‘completion-table-dynamic’ by default stays in the minibuffer. | 1419 | ** 'completion-table-dynamic' by default stays in the minibuffer. |
| 1417 | The minibuffer will be the current buffer when the function is called. | 1420 | The minibuffer will be the current buffer when the function is called. |
| 1418 | If you want the old behavior of calling the function in the buffer | 1421 | If you want the old behavior of calling the function in the buffer |
| 1419 | from which the minibuffer was entered, use the new argument | 1422 | from which the minibuffer was entered, use the new argument |
| 1420 | ‘switch-buffer’ to ‘completion-table-dynamic’. | 1423 | 'switch-buffer' to 'completion-table-dynamic'. |
| 1421 | 1424 | ||
| 1422 | --- | 1425 | --- |
| 1423 | ** window-configurations no longer record the buffers’ marks. | 1426 | ** window-configurations no longer record the buffers' marks. |
| 1424 | 1427 | ||
| 1425 | --- | 1428 | --- |
| 1426 | ** inhibit-modification-hooks now also inhibits lock-file checks, as well as | 1429 | ** inhibit-modification-hooks now also inhibits lock-file checks, as well as |
| @@ -1430,11 +1433,11 @@ active region handling. | |||
| 1430 | ** deactivate-mark is now buffer-local. | 1433 | ** deactivate-mark is now buffer-local. |
| 1431 | 1434 | ||
| 1432 | +++ | 1435 | +++ |
| 1433 | ** ‘cl-the’ now asserts that its argument is of the given type. | 1436 | ** 'cl-the' now asserts that its argument is of the given type. |
| 1434 | 1437 | ||
| 1435 | +++ | 1438 | +++ |
| 1436 | ** ‘process-running-child-p’ may now return a numeric process | 1439 | ** 'process-running-child-p' may now return a numeric process |
| 1437 | group ID instead of ‘t’. | 1440 | group ID instead of 't'. |
| 1438 | 1441 | ||
| 1439 | +++ | 1442 | +++ |
| 1440 | ** Mouse click events on mode line or header line no longer include | 1443 | ** Mouse click events on mode line or header line no longer include |
| @@ -1442,35 +1445,35 @@ any reference to a buffer position. The 6th member of the mouse | |||
| 1442 | position list returned for such events is now nil. | 1445 | position list returned for such events is now nil. |
| 1443 | 1446 | ||
| 1444 | --- | 1447 | --- |
| 1445 | ** Menu items in keymaps do not support the “key shortcut cache” any more. | 1448 | ** Menu items in keymaps do not support the "key shortcut cache" any more. |
| 1446 | These slots used to hold key-shortcut data, but have been obsolete since | 1449 | These slots used to hold key-shortcut data, but have been obsolete since |
| 1447 | Emacs-21. | 1450 | Emacs-21. |
| 1448 | 1451 | ||
| 1449 | --- | 1452 | --- |
| 1450 | ** Emacs no longer downcases the first letter of a system diagnostic | 1453 | ** Emacs no longer downcases the first letter of a system diagnostic |
| 1451 | when signaling a file error. For example, it now reports “Permission | 1454 | when signaling a file error. For example, it now reports "Permission |
| 1452 | denied” instead of “permission denied”. The old behavior was problematic | 1455 | denied" instead of "permission denied". The old behavior was problematic |
| 1453 | in languages like German where downcasing rules depend on grammar. | 1456 | in languages like German where downcasing rules depend on grammar. |
| 1454 | 1457 | ||
| 1455 | +++ | 1458 | +++ |
| 1456 | ** New variable ‘text-quoting-style’ to control how Emacs translates quotes. | 1459 | ** New variable 'text-quoting-style' to control how Emacs translates quotes. |
| 1457 | Set it to ‘curve’ for curved single quotes ‘like this’, to ‘straight’ | 1460 | Set it to 'curve' for curved single quotes, to 'straight' for straight |
| 1458 | for straight apostrophes 'like this', and to ‘grave’ for grave accent | 1461 | apostrophes, and to 'grave' for grave accent and apostrophe. The |
| 1459 | and apostrophe `like this'. The default value nil acts like ‘curve’ | 1462 | default value nil acts like 'curve' if curved single quotes are |
| 1460 | if curved single quotes are displayable, and like ‘grave’ otherwise. | 1463 | displayable, and like 'grave' otherwise. The new variable affects |
| 1461 | The new variable affects display of diagnostics and help, but not of info. | 1464 | display of diagnostics and help, but not of info. |
| 1462 | 1465 | ||
| 1463 | +++ | 1466 | +++ |
| 1464 | ** substitute-command-keys now replaces quotes. | 1467 | ** substitute-command-keys now replaces quotes. |
| 1465 | That is, it converts documentation strings’ quoting style as per the | 1468 | That is, it converts documentation strings' quoting style as per the |
| 1466 | value of ‘text-quoting-style’. Doc strings in source code can use | 1469 | value of 'text-quoting-style'. Doc strings in source code can use |
| 1467 | either curved single quotes or grave accents and apostrophes. As | 1470 | either curved single quotes or grave accents and apostrophes. As |
| 1468 | before, characters preceded by \= are output as-is. | 1471 | before, characters preceded by \= are output as-is. |
| 1469 | 1472 | ||
| 1470 | +++ | 1473 | +++ |
| 1471 | ** Message-issuing functions ‘error’, ‘message’, etc. now convert quotes. | 1474 | ** Message-issuing functions 'error', 'message', etc. now convert quotes. |
| 1472 | They use the new ‘format-message’ function instead of plain ‘format’, | 1475 | They use the new 'format-message' function instead of plain 'format', |
| 1473 | so that they now follow user preference as per ‘text-quoting-style’ | 1476 | so that they now follow user preference as per 'text-quoting-style' |
| 1474 | when processing curved single quotes, grave accents, and apostrophes | 1477 | when processing curved single quotes, grave accents, and apostrophes |
| 1475 | in their format argument. | 1478 | in their format argument. |
| 1476 | 1479 | ||
| @@ -1478,7 +1481,7 @@ in their format argument. | |||
| 1478 | ** The character classes [:alpha:] and [:alnum:] in regular expressions | 1481 | ** The character classes [:alpha:] and [:alnum:] in regular expressions |
| 1479 | now match multibyte characters using Unicode character properties. | 1482 | now match multibyte characters using Unicode character properties. |
| 1480 | If you want the old behavior where they matched any character with | 1483 | If you want the old behavior where they matched any character with |
| 1481 | word syntax, use ‘\sw’ instead. | 1484 | word syntax, use '\sw' instead. |
| 1482 | 1485 | ||
| 1483 | +++ | 1486 | +++ |
| 1484 | ** The character classes [:graph:] and [:print:] in regular expressions | 1487 | ** The character classes [:graph:] and [:print:] in regular expressions |
| @@ -1489,113 +1492,113 @@ unassigned codepoints are now rejected. If you want the old behavior, | |||
| 1489 | use [:multibyte:] instead. | 1492 | use [:multibyte:] instead. |
| 1490 | 1493 | ||
| 1491 | +++ | 1494 | +++ |
| 1492 | ** The ‘diff’ command uses the unified format now. To restore the old | 1495 | ** The 'diff' command uses the unified format now. To restore the old |
| 1493 | behavior, set ‘diff-switches’ to ‘-c’. | 1496 | behavior, set 'diff-switches' to '-c'. |
| 1494 | 1497 | ||
| 1495 | --- | 1498 | --- |
| 1496 | ** ‘grep-template’ and ‘grep-find-template’ values don’t include the | 1499 | ** 'grep-template' and 'grep-find-template' values don't include the |
| 1497 | --color argument anymore. It’s added at the <C> place holder position | 1500 | --color argument anymore. It's added at the <C> place holder position |
| 1498 | dynamically. Any third-party code that changes these templates should | 1501 | dynamically. Any third-party code that changes these templates should |
| 1499 | be updated accordingly. | 1502 | be updated accordingly. |
| 1500 | 1503 | ||
| 1501 | +++ | 1504 | +++ |
| 1502 | ** ‘(/ N)’ is now equivalent to ‘(/ 1 N)’ rather than to ‘(/ N 1)’. | 1505 | ** '(/ N)' is now equivalent to '(/ 1 N)' rather than to '(/ N 1)'. |
| 1503 | The new behavior is compatible with Common Lisp and with XEmacs. | 1506 | The new behavior is compatible with Common Lisp and with XEmacs. |
| 1504 | This change does not affect Lisp code intended to be portable to | 1507 | This change does not affect Lisp code intended to be portable to |
| 1505 | Emacs 24.2 and earlier, which did not support unary ‘/’. | 1508 | Emacs 24.2 and earlier, which did not support unary '/'. |
| 1506 | 1509 | ||
| 1507 | +++ | 1510 | +++ |
| 1508 | ** The ‘default-directory’ value doesn’t have to end slash. To make | 1511 | ** The 'default-directory' value doesn't have to end slash. To make |
| 1509 | that happen, ‘unhandled-file-name-directory’ now defaults to calling | 1512 | that happen, 'unhandled-file-name-directory' now defaults to calling |
| 1510 | ‘file-name-as-directory’. | 1513 | 'file-name-as-directory'. |
| 1511 | 1514 | ||
| 1512 | 1515 | ||
| 1513 | * Lisp Changes in Emacs 25.1 | 1516 | * Lisp Changes in Emacs 25.1 |
| 1514 | 1517 | ||
| 1515 | ** pcase | 1518 | ** pcase |
| 1516 | +++ | 1519 | +++ |
| 1517 | *** New UPatterns ‘quote’, ‘app’. | 1520 | *** New UPatterns 'quote', 'app'. |
| 1518 | +++ | 1521 | +++ |
| 1519 | *** New UPatterns can be defined with ‘pcase-defmacro’. | 1522 | *** New UPatterns can be defined with 'pcase-defmacro'. |
| 1520 | +++ | 1523 | +++ |
| 1521 | *** New vector QPattern. | 1524 | *** New vector QPattern. |
| 1522 | 1525 | ||
| 1523 | --- | 1526 | --- |
| 1524 | ** syntax-propertize is now automatically called on-demand during forward | 1527 | ** syntax-propertize is now automatically called on-demand during forward |
| 1525 | parsing functions like ‘forward-sexp’. | 1528 | parsing functions like 'forward-sexp'. |
| 1526 | 1529 | ||
| 1527 | +++ | 1530 | +++ |
| 1528 | ** New hooks ‘prefix-command-echo-keystrokes-functions’ and | 1531 | ** New hooks 'prefix-command-echo-keystrokes-functions' and |
| 1529 | ‘prefix-command-preserve-state-hook’ allow the definition of prefix | 1532 | 'prefix-command-preserve-state-hook' allow the definition of prefix |
| 1530 | commands other than the predefined ‘C-u’. | 1533 | commands other than the predefined 'C-u'. |
| 1531 | 1534 | ||
| 1532 | +++ | 1535 | +++ |
| 1533 | ** New functions ‘filepos-to-bufferpos’ and ‘bufferpos-to-filepos’. | 1536 | ** New functions 'filepos-to-bufferpos' and 'bufferpos-to-filepos'. |
| 1534 | These allow conversion between buffer positions and the corresponding | 1537 | These allow conversion between buffer positions and the corresponding |
| 1535 | file byte offsets, given the file’s encoding. | 1538 | file byte offsets, given the file's encoding. |
| 1536 | 1539 | ||
| 1537 | +++ | 1540 | +++ |
| 1538 | ** The default value of ‘load-read-function’ is now ‘read’. | 1541 | ** The default value of 'load-read-function' is now 'read'. |
| 1539 | Previously, the default value of ‘nil’ implied using ‘read’. | 1542 | Previously, the default value of 'nil' implied using 'read'. |
| 1540 | 1543 | ||
| 1541 | +++ | 1544 | +++ |
| 1542 | ** New hook ‘pre-redisplay-functions’. | 1545 | ** New hook 'pre-redisplay-functions'. |
| 1543 | It is a bit easier to use than ‘pre-redisplay-function’. | 1546 | It is a bit easier to use than 'pre-redisplay-function'. |
| 1544 | 1547 | ||
| 1545 | +++ | 1548 | +++ |
| 1546 | ** The second arg of ‘looking-back’ should always be provided explicitly. | 1549 | ** The second arg of 'looking-back' should always be provided explicitly. |
| 1547 | Previously, it was an optional argument, now it’s mandatory. | 1550 | Previously, it was an optional argument, now it's mandatory. |
| 1548 | 1551 | ||
| 1549 | +++ | 1552 | +++ |
| 1550 | ** Text properties ‘intangible’, ‘point-entered’, and ‘point-left’ are obsolete. | 1553 | ** Text properties 'intangible', 'point-entered', and 'point-left' are obsolete. |
| 1551 | Replaced by properties ‘cursor-intangible’ and ‘cursor-sensor-functions’, | 1554 | Replaced by properties 'cursor-intangible' and 'cursor-sensor-functions', |
| 1552 | implemented by the new ‘cursor-intangible-mode’ and | 1555 | implemented by the new 'cursor-intangible-mode' and |
| 1553 | ‘cursor-sensor-mode’ minor modes. | 1556 | 'cursor-sensor-mode' minor modes. |
| 1554 | 1557 | ||
| 1555 | +++ | 1558 | +++ |
| 1556 | ** ‘inhibit-point-motion-hooks’ now defaults to ‘t’ and is obsolete. | 1559 | ** 'inhibit-point-motion-hooks' now defaults to 't' and is obsolete. |
| 1557 | Use the new minor modes ‘cursor-intangible-mode’ and | 1560 | Use the new minor modes 'cursor-intangible-mode' and |
| 1558 | ‘cursor-sensor-mode’ instead. | 1561 | 'cursor-sensor-mode' instead. |
| 1559 | 1562 | ||
| 1560 | +++ | 1563 | +++ |
| 1561 | ** New process type ‘pipe’, which can be used in combination with the | 1564 | ** New process type 'pipe', which can be used in combination with the |
| 1562 | ‘:stderr’ keyword of make-process to handle standard error output | 1565 | ':stderr' keyword of make-process to handle standard error output |
| 1563 | of subprocess. | 1566 | of subprocess. |
| 1564 | 1567 | ||
| 1565 | +++ | 1568 | +++ |
| 1566 | ** New function ‘make-process’ provides an alternative interface to | 1569 | ** New function 'make-process' provides an alternative interface to |
| 1567 | ‘start-process’. It allows programs to set process parameters such as | 1570 | 'start-process'. It allows programs to set process parameters such as |
| 1568 | process filter, sentinel, etc., through keyword arguments (similar to | 1571 | process filter, sentinel, etc., through keyword arguments (similar to |
| 1569 | ‘make-network-process’). | 1572 | 'make-network-process'). |
| 1570 | 1573 | ||
| 1571 | +++ | 1574 | +++ |
| 1572 | ** A new function ‘directory-files-recursively’ returns all matching | 1575 | ** A new function 'directory-files-recursively' returns all matching |
| 1573 | files (recursively) under a directory. | 1576 | files (recursively) under a directory. |
| 1574 | 1577 | ||
| 1575 | +++ | 1578 | +++ |
| 1576 | ** New variable ‘inhibit-message’, when bound to non-nil, inhibits | 1579 | ** New variable 'inhibit-message', when bound to non-nil, inhibits |
| 1577 | ‘message’ and related functions from displaying messages in the echo | 1580 | 'message' and related functions from displaying messages in the echo |
| 1578 | area. The output is still logged to the *Messages* buffer. | 1581 | area. The output is still logged to the *Messages* buffer. |
| 1579 | 1582 | ||
| 1580 | +++ | 1583 | +++ |
| 1581 | ** A new text property ‘inhibit-read-only’ can be used in read-only | 1584 | ** A new text property 'inhibit-read-only' can be used in read-only |
| 1582 | buffers to allow certain parts of the text to be writable. | 1585 | buffers to allow certain parts of the text to be writable. |
| 1583 | 1586 | ||
| 1584 | +++ | 1587 | +++ |
| 1585 | ** A new variable ‘comment-end-can-be-escaped’ is useful in languages | 1588 | ** A new variable 'comment-end-can-be-escaped' is useful in languages |
| 1586 | such as C and C++ where line comments with escaped newlines are | 1589 | such as C and C++ where line comments with escaped newlines are |
| 1587 | continued to the next line. | 1590 | continued to the next line. |
| 1588 | 1591 | ||
| 1589 | +++ | 1592 | +++ |
| 1590 | ** New macro ‘define-advice’. | 1593 | ** New macro 'define-advice'. |
| 1591 | 1594 | ||
| 1592 | +++ | 1595 | +++ |
| 1593 | ** Emacs Lisp now supports generators. | 1596 | ** Emacs Lisp now supports generators. |
| 1594 | See the ‘Generators’ section of the ELisp manual for the details. | 1597 | See the "Generators" section of the ELisp manual for the details. |
| 1595 | 1598 | ||
| 1596 | +++ | 1599 | +++ |
| 1597 | ** New finalizer facility for running code when objects become unreachable. | 1600 | ** New finalizer facility for running code when objects become unreachable. |
| 1598 | See the ‘Finalizer Type’ subsection in the ELisp manual for the | 1601 | See the "Finalizer Type" subsection in the ELisp manual for the |
| 1599 | details. | 1602 | details. |
| 1600 | 1603 | ||
| 1601 | --- | 1604 | --- |
| @@ -1607,10 +1610,10 @@ evaluated (and should return a string) when the closure is built. | |||
| 1607 | ** define-inline provides a new way to define inlinable functions. | 1610 | ** define-inline provides a new way to define inlinable functions. |
| 1608 | 1611 | ||
| 1609 | +++ | 1612 | +++ |
| 1610 | ** New function ‘macroexpand-1’ to perform a single step of macro expansion. | 1613 | ** New function 'macroexpand-1' to perform a single step of macro expansion. |
| 1611 | 1614 | ||
| 1612 | +++ | 1615 | +++ |
| 1613 | ** Some ‘x-*’ functions were obsoleted and/or renamed: | 1616 | ** Some "x-*" functions were obsoleted and/or renamed: |
| 1614 | *** x-select-text is renamed gui-select-text. | 1617 | *** x-select-text is renamed gui-select-text. |
| 1615 | *** x-selection-value is renamed gui-selection-value. | 1618 | *** x-selection-value is renamed gui-selection-value. |
| 1616 | *** x-get-selection is renamed gui-get-selection. | 1619 | *** x-get-selection is renamed gui-get-selection. |
| @@ -1619,18 +1622,18 @@ evaluated (and should return a string) when the closure is built. | |||
| 1619 | *** x-set-selection is renamed to gui-set-selection | 1622 | *** x-set-selection is renamed to gui-set-selection |
| 1620 | 1623 | ||
| 1621 | +++ | 1624 | +++ |
| 1622 | ** New function ‘string-greaterp’, which return the opposite result of | 1625 | ** New function 'string-greaterp', which return the opposite result of |
| 1623 | ‘string-lessp’. | 1626 | 'string-lessp'. |
| 1624 | 1627 | ||
| 1625 | +++ | 1628 | +++ |
| 1626 | ** The new functions ‘string-collate-lessp’ and ‘string-collate-equalp’ | 1629 | ** The new functions 'string-collate-lessp' and 'string-collate-equalp' |
| 1627 | preserve the collation order as defined by the system’s locale(1) | 1630 | preserve the collation order as defined by the system's locale(1) |
| 1628 | environment. For the time being this is implemented for modern POSIX | 1631 | environment. For the time being this is implemented for modern POSIX |
| 1629 | systems and for MS-Windows, for other systems they fall back to their | 1632 | systems and for MS-Windows, for other systems they fall back to their |
| 1630 | counterparts ‘string-lessp’ and ‘string-equal’. | 1633 | counterparts 'string-lessp' and 'string-equal'. |
| 1631 | 1634 | ||
| 1632 | --- | 1635 | --- |
| 1633 | *** The ls-lisp package uses ‘string-collate-lessp’ to sort file names. | 1636 | *** The ls-lisp package uses 'string-collate-lessp' to sort file names. |
| 1634 | The effect is that, on systems that use ls-lisp for Dired, the default | 1637 | The effect is that, on systems that use ls-lisp for Dired, the default |
| 1635 | sort order of the files in Dired is now different from what it was in | 1638 | sort order of the files in Dired is now different from what it was in |
| 1636 | previous versions of Emacs. In particular, the file names are sorted | 1639 | previous versions of Emacs. In particular, the file names are sorted |
| @@ -1638,125 +1641,125 @@ disregarding punctuation, accents, and diacritics, and letter case is | |||
| 1638 | ignored. For example, files whose name begin with a period will no | 1641 | ignored. For example, files whose name begin with a period will no |
| 1639 | longer appear near the beginning of the directory listing. If you | 1642 | longer appear near the beginning of the directory listing. If you |
| 1640 | want the old, locale-independent sorting, customize the new option | 1643 | want the old, locale-independent sorting, customize the new option |
| 1641 | ‘ls-lisp-use-string-collate’ to the nil value. | 1644 | 'ls-lisp-use-string-collate' to the nil value. |
| 1642 | 1645 | ||
| 1643 | +++ | 1646 | +++ |
| 1644 | *** The MS-Windows specific variable ‘w32-collate-ignore-punctuation’, | 1647 | *** The MS-Windows specific variable 'w32-collate-ignore-punctuation', |
| 1645 | if set to a non-nil value, causes the above 2 functions to ignore | 1648 | if set to a non-nil value, causes the above 2 functions to ignore |
| 1646 | symbol and punctuation characters when collating strings. This | 1649 | symbol and punctuation characters when collating strings. This |
| 1647 | emulates the behavior of modern Posix platforms when the locale’s | 1650 | emulates the behavior of modern Posix platforms when the locale's |
| 1648 | codeset is UTF-8 (as in ‘en_US.UTF-8’). This is needed because | 1651 | codeset is "UTF-8" (as in "en_US.UTF-8"). This is needed because |
| 1649 | MS-Windows doesn’t support UTF-8 as codeset in its locales. | 1652 | MS-Windows doesn't support UTF-8 as codeset in its locales. |
| 1650 | 1653 | ||
| 1651 | +++ | 1654 | +++ |
| 1652 | ** New function ‘alist-get’, which is also a valid place (aka lvalue). | 1655 | ** New function 'alist-get', which is also a valid place (aka lvalue). |
| 1653 | 1656 | ||
| 1654 | +++ | 1657 | +++ |
| 1655 | ** New function ‘funcall-interactively’, which works like ‘funcall’ | 1658 | ** New function 'funcall-interactively', which works like 'funcall' |
| 1656 | but makes ‘called-interactively-p’ treat the function as (you guessed it) | 1659 | but makes 'called-interactively-p' treat the function as (you guessed it) |
| 1657 | called interactively. | 1660 | called interactively. |
| 1658 | 1661 | ||
| 1659 | +++ | 1662 | +++ |
| 1660 | ** New function ‘function-put’ to use instead of ‘put’ for function properties. | 1663 | ** New function 'function-put' to use instead of 'put' for function properties. |
| 1661 | 1664 | ||
| 1662 | +++ | 1665 | +++ |
| 1663 | ** The new function ‘bidi-find-overridden-directionality’ allows you to | 1666 | ** The new function 'bidi-find-overridden-directionality' allows you to |
| 1664 | find characters whose directionality was, perhaps maliciously, | 1667 | find characters whose directionality was, perhaps maliciously, |
| 1665 | overridden by directional override control characters. Lisp programs | 1668 | overridden by directional override control characters. Lisp programs |
| 1666 | can use this to detect potential phishing of URLs and other links that | 1669 | can use this to detect potential phishing of URLs and other links that |
| 1667 | exploits bidirectional display reordering. | 1670 | exploits bidirectional display reordering. |
| 1668 | 1671 | ||
| 1669 | +++ | 1672 | +++ |
| 1670 | ** The new function ‘buffer-substring-with-bidi-context’ allows you to | 1673 | ** The new function 'buffer-substring-with-bidi-context' allows you to |
| 1671 | copy a portion of a buffer into a different location while preserving | 1674 | copy a portion of a buffer into a different location while preserving |
| 1672 | the visual appearance both of the copied text and the text at | 1675 | the visual appearance both of the copied text and the text at |
| 1673 | destination, even when the copied text includes mixed bidirectional | 1676 | destination, even when the copied text includes mixed bidirectional |
| 1674 | text and directional control characters. | 1677 | text and directional control characters. |
| 1675 | 1678 | ||
| 1676 | +++ | 1679 | +++ |
| 1677 | ** New properties that can be specified with ‘declare’: | 1680 | ** New properties that can be specified with 'declare': |
| 1678 | *** (interactive-only INSTEAD), says to use INSTEAD for non-interactive use. | 1681 | *** (interactive-only INSTEAD), says to use INSTEAD for non-interactive use. |
| 1679 | *** (pure VAL), if VAL is non-nil, indicates the function is pure. | 1682 | *** (pure VAL), if VAL is non-nil, indicates the function is pure. |
| 1680 | *** (side-effect-free VAL), if VAL is non-nil, indicates the function does not | 1683 | *** (side-effect-free VAL), if VAL is non-nil, indicates the function does not |
| 1681 | have side effects. | 1684 | have side effects. |
| 1682 | 1685 | ||
| 1683 | +++ | 1686 | +++ |
| 1684 | ** New macro ‘with-file-modes’, for evaluating expressions with default file | 1687 | ** New macro 'with-file-modes', for evaluating expressions with default file |
| 1685 | permissions set to temporary values (e.g., for creating private files). | 1688 | permissions set to temporary values (e.g., for creating private files). |
| 1686 | 1689 | ||
| 1687 | +++ | 1690 | +++ |
| 1688 | ** You can access the slots of structures using ‘cl-struct-slot-value’. | 1691 | ** You can access the slots of structures using 'cl-struct-slot-value'. |
| 1689 | 1692 | ||
| 1690 | +++ | 1693 | +++ |
| 1691 | ** Function ‘sort’ can deal with vectors. | 1694 | ** Function 'sort' can deal with vectors. |
| 1692 | 1695 | ||
| 1693 | --- | 1696 | --- |
| 1694 | ** Function ‘system-name’ now returns an updated value if the current | 1697 | ** Function 'system-name' now returns an updated value if the current |
| 1695 | system’s name has changed or if the Emacs process has changed systems, | 1698 | system's name has changed or if the Emacs process has changed systems, |
| 1696 | and to avoid long waits it no longer consults DNS to canonicalize the | 1699 | and to avoid long waits it no longer consults DNS to canonicalize the |
| 1697 | name. The variable ‘system-name’ is now obsolete. | 1700 | name. The variable 'system-name' is now obsolete. |
| 1698 | 1701 | ||
| 1699 | +++ | 1702 | +++ |
| 1700 | ** Function ‘write-region’ no longer outputs “Wrote FILE” in batch mode. | 1703 | ** Function 'write-region' no longer outputs "Wrote FILE" in batch mode. |
| 1701 | 1704 | ||
| 1702 | --- | 1705 | --- |
| 1703 | ** If ‘pwd’ is called with a prefix argument, insert the current default | 1706 | ** If 'pwd' is called with a prefix argument, insert the current default |
| 1704 | directory at point. | 1707 | directory at point. |
| 1705 | 1708 | ||
| 1706 | +++ | 1709 | +++ |
| 1707 | ** New functions return extended information about fonts and faces. | 1710 | ** New functions return extended information about fonts and faces. |
| 1708 | 1711 | ||
| 1709 | +++ | 1712 | +++ |
| 1710 | *** The function ‘font-info’ now returns more details about a font. | 1713 | *** The function 'font-info' now returns more details about a font. |
| 1711 | In particular, it now returns the average width of the font’s | 1714 | In particular, it now returns the average width of the font's |
| 1712 | characters, which can be used for geometry-related calculations. | 1715 | characters, which can be used for geometry-related calculations. |
| 1713 | 1716 | ||
| 1714 | +++ | 1717 | +++ |
| 1715 | *** A new function ‘default-font-width’ returns the average width of a | 1718 | *** A new function 'default-font-width' returns the average width of a |
| 1716 | character in the current buffer’s default font. If the default face | 1719 | character in the current buffer's default font. If the default face |
| 1717 | is remapped (see ‘face-remapping-alist’), the value for the remapped | 1720 | is remapped (see 'face-remapping-alist'), the value for the remapped |
| 1718 | face is returned. This function complements the existing function | 1721 | face is returned. This function complements the existing function |
| 1719 | ‘default-font-height’. | 1722 | 'default-font-height'. |
| 1720 | 1723 | ||
| 1721 | +++ | 1724 | +++ |
| 1722 | *** New functions ‘window-font-height’ and ‘window-font-width’ return | 1725 | *** New functions 'window-font-height' and 'window-font-width' return |
| 1723 | the height and average width of characters in a specified face and | 1726 | the height and average width of characters in a specified face and |
| 1724 | window. If FACE is remapped (see ‘face-remapping-alist’), the | 1727 | window. If FACE is remapped (see 'face-remapping-alist'), the |
| 1725 | function returns the information for the remapped face. | 1728 | function returns the information for the remapped face. |
| 1726 | 1729 | ||
| 1727 | +++ | 1730 | +++ |
| 1728 | *** A new function ‘window-max-chars-per-line’ returns the maximal | 1731 | *** A new function 'window-max-chars-per-line' returns the maximal |
| 1729 | number of characters that can be displayed on one line. If a face | 1732 | number of characters that can be displayed on one line. If a face |
| 1730 | and/or window are provided, these values are used for the | 1733 | and/or window are provided, these values are used for the |
| 1731 | calculation. This function is different from ‘window-body-width’ in | 1734 | calculation. This function is different from 'window-body-width' in |
| 1732 | that it accounts for (i) continuation glyphs, (ii) the size of the | 1735 | that it accounts for (i) continuation glyphs, (ii) the size of the |
| 1733 | font, and (iii) the specified window. | 1736 | font, and (iii) the specified window. |
| 1734 | 1737 | ||
| 1735 | --- | 1738 | --- |
| 1736 | ** New utilities in subr-x.el: | 1739 | ** New utilities in subr-x.el: |
| 1737 | *** New macros ‘if-let’ and ‘when-let’ allow defining bindings and to | 1740 | *** New macros 'if-let' and 'when-let' allow defining bindings and to |
| 1738 | execute code depending whether all values are true. | 1741 | execute code depending whether all values are true. |
| 1739 | *** New macros ‘thread-first’ and ‘thread-last’ allow threading a form | 1742 | *** New macros 'thread-first' and 'thread-last' allow threading a form |
| 1740 | as the first or last argument of subsequent forms. | 1743 | as the first or last argument of subsequent forms. |
| 1741 | 1744 | ||
| 1742 | +++ | 1745 | +++ |
| 1743 | ** Documentation strings now support quoting with curved single quotes | 1746 | ** Documentation strings now support quoting with curved single quotes |
| 1744 | ‘like-this’ in addition to the old style with grave accent and | 1747 | in addition to the old style with grave accent and apostrophe. The |
| 1745 | apostrophe `like-this'. The new style looks better on today’s displays. | 1748 | new style looks better on today's displays. In the new Electric Quote |
| 1746 | In the new Electric Quote mode, you can enter curved single quotes | 1749 | mode, you can enter curved single quotes into documentation by typing |
| 1747 | into documentation by typing ` and '. Outside Electric Quote mode, | 1750 | grave accent and apostrophe. Outside Electric Quote mode, you can |
| 1748 | you can enter them by typing ‘C-x 8 [’ and ‘C-x 8 ]’, or (if your Alt | 1751 | enter them by typing 'C-x 8 [' and 'C-x 8 ]', or (if your Alt key |
| 1749 | key works) by typing ‘A-[’ and ‘A-]’. As described above under | 1752 | works) by typing 'A-[' and 'A-]'. As described above under |
| 1750 | ‘text-quoting-style’, the user can specify how to display doc string | 1753 | 'text-quoting-style', the user can specify how to display doc string |
| 1751 | quotes. | 1754 | quotes. |
| 1752 | 1755 | ||
| 1753 | +++ | 1756 | +++ |
| 1754 | ** New function ‘format-message’ is like ‘format’ and also converts | 1757 | ** New function 'format-message' is like 'format' and also converts |
| 1755 | curved single quotes, grave accents and apostrophes as per | 1758 | curved single quotes, grave accents and apostrophes as per |
| 1756 | ‘text-quoting-style’. | 1759 | 'text-quoting-style'. |
| 1757 | 1760 | ||
| 1758 | +++ | 1761 | +++ |
| 1759 | ** show-help-function’s arg is converted via substitute-command-keys | 1762 | ** show-help-function's arg is converted via substitute-command-keys |
| 1760 | before being passed to the function. Help strings, help-echo | 1763 | before being passed to the function. Help strings, help-echo |
| 1761 | properties, etc. can therefore contain command key escapes and | 1764 | properties, etc. can therefore contain command key escapes and |
| 1762 | quotation marks. | 1765 | quotation marks. |
| @@ -1766,36 +1769,36 @@ quotation marks. | |||
| 1766 | 1769 | ||
| 1767 | *** Time conversion functions now accept an optional ZONE argument | 1770 | *** Time conversion functions now accept an optional ZONE argument |
| 1768 | that specifies the time zone rules for conversion. ZONE is omitted or | 1771 | that specifies the time zone rules for conversion. ZONE is omitted or |
| 1769 | nil for Emacs local time, t for Universal Time, ‘wall’ for system wall | 1772 | nil for Emacs local time, t for Universal Time, 'wall' for system wall |
| 1770 | clock time, or a string as in ‘set-time-zone-rule’ for a time zone | 1773 | clock time, or a string as in 'set-time-zone-rule' for a time zone |
| 1771 | rule. The affected functions are ‘current-time-string’, | 1774 | rule. The affected functions are 'current-time-string', |
| 1772 | ‘current-time-zone’, ‘decode-time’, and ‘format-time-string’. The | 1775 | 'current-time-zone', 'decode-time', and 'format-time-string'. The |
| 1773 | function ‘encode-time’, which already accepted a simple time zone rule | 1776 | function 'encode-time', which already accepted a simple time zone rule |
| 1774 | argument, has been extended to accept all the new forms. | 1777 | argument, has been extended to accept all the new forms. |
| 1775 | 1778 | ||
| 1776 | *** Time-related functions now consistently accept numbers | 1779 | *** Time-related functions now consistently accept numbers |
| 1777 | (representing seconds since the epoch) and nil (representing the | 1780 | (representing seconds since the epoch) and nil (representing the |
| 1778 | current time) as well as the usual list-of-integer representation. | 1781 | current time) as well as the usual list-of-integer representation. |
| 1779 | Affected functions include ‘current-time-string’, ‘current-time-zone’, | 1782 | Affected functions include 'current-time-string', 'current-time-zone', |
| 1780 | ‘decode-time’, ‘float-time’, ‘format-time-string’, ‘seconds-to-time’, | 1783 | 'decode-time', 'float-time', 'format-time-string', 'seconds-to-time', |
| 1781 | ‘time-add’, ‘time-less-p’, ‘time-subtract’, ‘time-to-day-in-year’, | 1784 | 'time-add', 'time-less-p', 'time-subtract', 'time-to-day-in-year', |
| 1782 | ‘time-to-days’, and ‘time-to-seconds’. | 1785 | 'time-to-days', and 'time-to-seconds'. |
| 1783 | 1786 | ||
| 1784 | *** The ‘encode-time-value’ and ‘with-decoded-time-value’ macros have | 1787 | *** The 'encode-time-value' and 'with-decoded-time-value' macros have |
| 1785 | been obsoleted. | 1788 | been obsoleted. |
| 1786 | 1789 | ||
| 1787 | *** ‘calendar-next-time-zone-transition’, ‘time-add’, and | 1790 | *** 'calendar-next-time-zone-transition', 'time-add', and |
| 1788 | ‘time-subtract’ no longer return time values in the obsolete and | 1791 | 'time-subtract' no longer return time values in the obsolete and |
| 1789 | undocumented integer-pair format. Instead, they return a list of two | 1792 | undocumented integer-pair format. Instead, they return a list of two |
| 1790 | integers. | 1793 | integers. |
| 1791 | 1794 | ||
| 1792 | +++ | 1795 | +++ |
| 1793 | ** New function ‘set-binary-mode’ allows switching a standard stream | 1796 | ** New function 'set-binary-mode' allows switching a standard stream |
| 1794 | of the Emacs process to binary I/O mode. | 1797 | of the Emacs process to binary I/O mode. |
| 1795 | 1798 | ||
| 1796 | +++ | 1799 | +++ |
| 1797 | ** The new function ‘directory-name-p’ can be used to check whether a file | 1800 | ** The new function 'directory-name-p' can be used to check whether a file |
| 1798 | name (as returned from, for instance, ‘file-name-all-completions’) is | 1801 | name (as returned from, for instance, 'file-name-all-completions') is |
| 1799 | a directory file name. It returns non-nil if the last character in | 1802 | a directory file name. It returns non-nil if the last character in |
| 1800 | the name is a directory separator character (forward slash on GNU and | 1803 | the name is a directory separator character (forward slash on GNU and |
| 1801 | Unix systems, forward- or backslash on MS-Windows and MS-DOS). | 1804 | Unix systems, forward- or backslash on MS-Windows and MS-DOS). |
| @@ -1807,22 +1810,22 @@ if the terminal cannot display curved quotes. | |||
| 1807 | +++ | 1810 | +++ |
| 1808 | ** Standard output and error streams now transliterate characters via | 1811 | ** Standard output and error streams now transliterate characters via |
| 1809 | standard-display-table, and encode output using locale-coding-system. | 1812 | standard-display-table, and encode output using locale-coding-system. |
| 1810 | To force a specific encoding, bind ‘coding-system-for-write’ to the | 1813 | To force a specific encoding, bind 'coding-system-for-write' to the |
| 1811 | coding-system of your choice when invoking functions like ‘prin1’ and | 1814 | coding-system of your choice when invoking functions like 'prin1' and |
| 1812 | ‘message’. | 1815 | 'message'. |
| 1813 | 1816 | ||
| 1814 | +++ | 1817 | +++ |
| 1815 | ** New var ‘truncate-string-ellipsis’ to choose how to indicate truncation. | 1818 | ** New var 'truncate-string-ellipsis' to choose how to indicate truncation. |
| 1816 | 1819 | ||
| 1817 | +++ | 1820 | +++ |
| 1818 | ** New possible value for ‘system-type’: ‘nacl’. | 1821 | ** New possible value for 'system-type': 'nacl'. |
| 1819 | This is used by Google’s Native Client (NaCl). | 1822 | This is used by Google's Native Client (NaCl). |
| 1820 | 1823 | ||
| 1821 | ** Miscellaneous name change | 1824 | ** Miscellaneous name change |
| 1822 | 1825 | ||
| 1823 | --- | 1826 | --- |
| 1824 | For consistency with the usual Emacs spelling, the Lisp variable | 1827 | For consistency with the usual Emacs spelling, the Lisp variable |
| 1825 | ‘hfy-optimisations’ has been renamed to ‘hfy-optimizations’. | 1828 | 'hfy-optimisations' has been renamed to 'hfy-optimizations'. |
| 1826 | The old name should still work, as an obsolescent alias. | 1829 | The old name should still work, as an obsolescent alias. |
| 1827 | 1830 | ||
| 1828 | ** Changes in Frame- and Window- Handling | 1831 | ** Changes in Frame- and Window- Handling |
| @@ -1832,59 +1835,59 @@ The old name should still work, as an obsolescent alias. | |||
| 1832 | provide toolkit scroll bars, namely Gtk+, Lucid, Motif and Windows. | 1835 | provide toolkit scroll bars, namely Gtk+, Lucid, Motif and Windows. |
| 1833 | Horizontal scroll bars are turned off by default. | 1836 | Horizontal scroll bars are turned off by default. |
| 1834 | 1837 | ||
| 1835 | **** New function ‘horizontal-scroll-bars-available-p’ telling whether | 1838 | **** New function 'horizontal-scroll-bars-available-p' telling whether |
| 1836 | horizontal scroll bars are available on the underlying system. | 1839 | horizontal scroll bars are available on the underlying system. |
| 1837 | 1840 | ||
| 1838 | **** New mode ‘horizontal-scroll-bar-mode’ to toggle horizontal scroll | 1841 | **** New mode 'horizontal-scroll-bar-mode' to toggle horizontal scroll |
| 1839 | bars on all existing and future frames. | 1842 | bars on all existing and future frames. |
| 1840 | 1843 | ||
| 1841 | **** New function ‘toggle-horizontal-scroll-bar’ to toggle horizontal | 1844 | **** New function 'toggle-horizontal-scroll-bar' to toggle horizontal |
| 1842 | scroll bars on the selected frame. | 1845 | scroll bars on the selected frame. |
| 1843 | 1846 | ||
| 1844 | **** New frame parameters ‘horizontal-scroll-bars’ and | 1847 | **** New frame parameters 'horizontal-scroll-bars' and |
| 1845 | ‘scroll-bar-height’ to set horizontal scroll bars and their height | 1848 | 'scroll-bar-height' to set horizontal scroll bars and their height |
| 1846 | for individual frames and in ‘default-frame-alist’. | 1849 | for individual frames and in 'default-frame-alist'. |
| 1847 | 1850 | ||
| 1848 | **** New functions ‘frame-scroll-bar-height’ and | 1851 | **** New functions 'frame-scroll-bar-height' and |
| 1849 | ‘window-scroll-bar-height’ return the height of horizontal scroll | 1852 | 'window-scroll-bar-height' return the height of horizontal scroll |
| 1850 | bars on a specific frame or window. | 1853 | bars on a specific frame or window. |
| 1851 | 1854 | ||
| 1852 | **** ‘set-window-scroll-bars’ now accepts five parameters where the last | 1855 | **** 'set-window-scroll-bars' now accepts five parameters where the last |
| 1853 | two specify height and type of the window’s horizontal scroll bar. | 1856 | two specify height and type of the window's horizontal scroll bar. |
| 1854 | 1857 | ||
| 1855 | **** ‘window-scroll-bars’ now returns type and sizes of horizontal scroll | 1858 | **** 'window-scroll-bars' now returns type and sizes of horizontal scroll |
| 1856 | bars too. | 1859 | bars too. |
| 1857 | 1860 | ||
| 1858 | **** New buffer-local variables ‘horizontal-scroll-bar’ and | 1861 | **** New buffer-local variables 'horizontal-scroll-bar' and |
| 1859 | ‘scroll-bar-height’. | 1862 | 'scroll-bar-height'. |
| 1860 | 1863 | ||
| 1861 | +++ | 1864 | +++ |
| 1862 | *** New functions ‘frame-geometry’ and ‘frame-edges’ give access to a | 1865 | *** New functions 'frame-geometry' and 'frame-edges' give access to a |
| 1863 | frame’s geometry. | 1866 | frame's geometry. |
| 1864 | 1867 | ||
| 1865 | +++ | 1868 | +++ |
| 1866 | *** New functions ‘mouse-absolute-pixel-position’ and | 1869 | *** New functions 'mouse-absolute-pixel-position' and |
| 1867 | ‘set-mouse-absolute-pixel-position’ get/set screen coordinates of the | 1870 | 'set-mouse-absolute-pixel-position' get/set screen coordinates of the |
| 1868 | mouse cursor. | 1871 | mouse cursor. |
| 1869 | 1872 | ||
| 1870 | +++ | 1873 | +++ |
| 1871 | *** The function ‘window-edges’ now accepts three additional arguments to | 1874 | *** The function 'window-edges' now accepts three additional arguments to |
| 1872 | retrieve body, absolute and pixel edges of the window. | 1875 | retrieve body, absolute and pixel edges of the window. |
| 1873 | 1876 | ||
| 1874 | +++ | 1877 | +++ |
| 1875 | *** The functions ‘window-inside-edges’, ‘window-inside-pixel-edges’ and | 1878 | *** The functions 'window-inside-edges', 'window-inside-pixel-edges' and |
| 1876 | ‘window-inside-absolute-pixel-edges’ have been renamed to respectively | 1879 | 'window-inside-absolute-pixel-edges' have been renamed to respectively |
| 1877 | ‘window-body-edges’, ‘window-body-pixel-edges’ and | 1880 | 'window-body-edges', 'window-body-pixel-edges' and |
| 1878 | ‘window-absolute-body-pixel-edges’. The old names are kept as aliases. | 1881 | 'window-absolute-body-pixel-edges'. The old names are kept as aliases. |
| 1879 | 1882 | ||
| 1880 | +++ | 1883 | +++ |
| 1881 | *** New function ‘window-absolute-pixel-position’ to get the screen | 1884 | *** New function 'window-absolute-pixel-position' to get the screen |
| 1882 | coordinates of a visible buffer position. | 1885 | coordinates of a visible buffer position. |
| 1883 | 1886 | ||
| 1884 | +++ | 1887 | +++ |
| 1885 | *** The height of a frame’s menu and tool bar are no longer counted in the | 1888 | *** The height of a frame's menu and tool bar are no longer counted in the |
| 1886 | frame’s text height. This means that the text height stands only for | 1889 | frame's text height. This means that the text height stands only for |
| 1887 | the height of the frame’s root window plus that of the echo area (if | 1890 | the height of the frame's root window plus that of the echo area (if |
| 1888 | present). This was already the behavior for frames with external tool | 1891 | present). This was already the behavior for frames with external tool |
| 1889 | and menu bars (like in the Gtk builds) but has now been extended to all | 1892 | and menu bars (like in the Gtk builds) but has now been extended to all |
| 1890 | builds. | 1893 | builds. |
| @@ -1895,26 +1898,26 @@ they display when setting default font, menu bar, fringe width, or | |||
| 1895 | scroll bars. In particular, maximized and fullscreen frames are | 1898 | scroll bars. In particular, maximized and fullscreen frames are |
| 1896 | conceptually never resized if such settings change. For fullheight and | 1899 | conceptually never resized if such settings change. For fullheight and |
| 1897 | fullwidth frames, the behavior may depend on the toolkit used. | 1900 | fullwidth frames, the behavior may depend on the toolkit used. |
| 1898 | **** New option ‘frame-inhibit-implied-resize’ if non-nil, means that | 1901 | **** New option 'frame-inhibit-implied-resize' if non-nil, means that |
| 1899 | setting default font, menu bar, fringe width, or scroll bars of a | 1902 | setting default font, menu bar, fringe width, or scroll bars of a |
| 1900 | specific frame does not resize that frame in order to preserve the | 1903 | specific frame does not resize that frame in order to preserve the |
| 1901 | number of columns or lines it displays. | 1904 | number of columns or lines it displays. |
| 1902 | 1905 | ||
| 1903 | +++ | 1906 | +++ |
| 1904 | *** New function ‘window-preserve-size’ allows you to preserve the size of | 1907 | *** New function 'window-preserve-size' allows you to preserve the size of |
| 1905 | a window without “fixing” it. It’s supported by ‘fit-window-to-buffer’, | 1908 | a window without "fixing" it. It's supported by 'fit-window-to-buffer', |
| 1906 | ‘temp-buffer-resize-mode’ and ‘display-buffer’. | 1909 | 'temp-buffer-resize-mode' and 'display-buffer'. |
| 1907 | 1910 | ||
| 1908 | +++ | 1911 | +++ |
| 1909 | *** New ‘display-buffer’ action function ‘display-buffer-use-some-frame’. | 1912 | *** New 'display-buffer' action function 'display-buffer-use-some-frame'. |
| 1910 | This displays the buffer in an existing frame other than the current | 1913 | This displays the buffer in an existing frame other than the current |
| 1911 | frame, and allows the caller to specify a frame predicate to exclude | 1914 | frame, and allows the caller to specify a frame predicate to exclude |
| 1912 | frames. | 1915 | frames. |
| 1913 | 1916 | ||
| 1914 | +++ | 1917 | +++ |
| 1915 | *** New minor mode ‘window-divider-mode’ and options | 1918 | *** New minor mode 'window-divider-mode' and options |
| 1916 | ‘window-divider-default-places’, ‘window-divider-default-bottom-width’ | 1919 | 'window-divider-default-places', 'window-divider-default-bottom-width' |
| 1917 | and ‘window-divider-default-right-width’. | 1920 | and 'window-divider-default-right-width'. |
| 1918 | 1921 | ||
| 1919 | --- | 1922 | --- |
| 1920 | ** Tearoff menus and detachable toolbars for Gtk+ have been removed. | 1923 | ** Tearoff menus and detachable toolbars for Gtk+ have been removed. |
| @@ -1925,17 +1928,17 @@ Those features have been deprecated in Gtk+ for a long time. | |||
| 1925 | +++ | 1928 | +++ |
| 1926 | *** etags no longer qualifies class members by default. | 1929 | *** etags no longer qualifies class members by default. |
| 1927 | 1930 | ||
| 1928 | By default, ‘etags’ will not qualify class members for Perl and C-like | 1931 | By default, 'etags' will not qualify class members for Perl and C-like |
| 1929 | object-oriented languages with their class names and namespaces, and | 1932 | object-oriented languages with their class names and namespaces, and |
| 1930 | will remove qualifications used explicitly in the code from the tag | 1933 | will remove qualifications used explicitly in the code from the tag |
| 1931 | names it puts in TAGS files. This is so the etags.el back-end for | 1934 | names it puts in TAGS files. This is so the etags.el back-end for |
| 1932 | ‘xref-find-definitions’ is more accurate and produces less false | 1935 | 'xref-find-definitions' is more accurate and produces less false |
| 1933 | positives. | 1936 | positives. |
| 1934 | 1937 | ||
| 1935 | Use --class-qualify (-Q) if you want the old default behavior of | 1938 | Use --class-qualify (-Q) if you want the old default behavior of |
| 1936 | qualifying class members in C++, Java, Objective C, and Perl. Note | 1939 | qualifying class members in C++, Java, Objective C, and Perl. Note |
| 1937 | that using -Q might make some class members become “unknown” to ‘M-.’ | 1940 | that using -Q might make some class members become "unknown" to 'M-.' |
| 1938 | (‘xref-find-definitions’); if so, you can use ‘C-u M-.’ to specify the | 1941 | ('xref-find-definitions'); if so, you can use 'C-u M-.' to specify the |
| 1939 | qualified names by hand. | 1942 | qualified names by hand. |
| 1940 | 1943 | ||
| 1941 | +++ | 1944 | +++ |
| @@ -1951,7 +1954,7 @@ Names of packages, functions, and types are tagged. | |||
| 1951 | +++ | 1954 | +++ |
| 1952 | *** Improved support for Lua | 1955 | *** Improved support for Lua |
| 1953 | 1956 | ||
| 1954 | Etags now tags functions even if the ‘function’ keyword follows some | 1957 | Etags now tags functions even if the "function" keyword follows some |
| 1955 | whitespace at line beginning. | 1958 | whitespace at line beginning. |
| 1956 | 1959 | ||
| 1957 | 1960 | ||
| @@ -1962,7 +1965,7 @@ whitespace at line beginning. | |||
| 1962 | This includes the makefile.w32-in files in various subdirectories, and | 1965 | This includes the makefile.w32-in files in various subdirectories, and |
| 1963 | the support files. The file nt/configure.bat now just tells the user | 1966 | the support files. The file nt/configure.bat now just tells the user |
| 1964 | to use the procedure described in nt/INSTALL, by running the Posix | 1967 | to use the procedure described in nt/INSTALL, by running the Posix |
| 1965 | ‘configure’ script in the top-level directory. | 1968 | 'configure' script in the top-level directory. |
| 1966 | 1969 | ||
| 1967 | --- | 1970 | --- |
| 1968 | ** Building Emacs for MS-Windows requires at least Windows XP | 1971 | ** Building Emacs for MS-Windows requires at least Windows XP |
| @@ -1977,8 +1980,8 @@ of Windows starting with Windows 9X. | |||
| 1977 | MS-Windows as they are on other platforms. | 1980 | MS-Windows as they are on other platforms. |
| 1978 | 1981 | ||
| 1979 | --- | 1982 | --- |
| 1980 | ** On OS X, configure creates a Cocoa (“Nextstep”) build by default. | 1983 | ** On OS X, configure creates a Cocoa ("Nextstep") build by default. |
| 1981 | Pass ‘--without-ns’ to configure to create an X11 build, the old default. | 1984 | Pass '--without-ns' to configure to create an X11 build, the old default. |
| 1982 | 1985 | ||
| 1983 | --- | 1986 | --- |
| 1984 | ** OS X 10.5 or older is no longer supported. | 1987 | ** OS X 10.5 or older is no longer supported. |
| @@ -1987,16 +1990,16 @@ Pass ‘--without-ns’ to configure to create an X11 build, the old default. | |||
| 1987 | ** OS X on PowerPC is no longer supported. | 1990 | ** OS X on PowerPC is no longer supported. |
| 1988 | 1991 | ||
| 1989 | --- | 1992 | --- |
| 1990 | ** New variable ‘ns-use-fullscreen-animation’ controls animation for | 1993 | ** New variable 'ns-use-fullscreen-animation' controls animation for |
| 1991 | non-native NS fullscreen. The default is nil. Set to t to enable | 1994 | non-native NS fullscreen. The default is nil. Set to t to enable |
| 1992 | animation when entering and leaving fullscreen. For native OSX fullscreen | 1995 | animation when entering and leaving fullscreen. For native OSX fullscreen |
| 1993 | this has no effect. | 1996 | this has no effect. |
| 1994 | 1997 | ||
| 1995 | --- | 1998 | --- |
| 1996 | ** The new function ‘w32-application-type’ returns the type of an | 1999 | ** The new function 'w32-application-type' returns the type of an |
| 1997 | MS-Windows application given the name of its executable program file. | 2000 | MS-Windows application given the name of its executable program file. |
| 1998 | 2001 | ||
| 1999 | ** New variable ‘w32-pipe-buffer-size’ | 2002 | ** New variable 'w32-pipe-buffer-size'. |
| 2000 | It can be used to tune the size of the buffer of pipes created for | 2003 | It can be used to tune the size of the buffer of pipes created for |
| 2001 | communicating with subprocesses, when the program run by a subprocess | 2004 | communicating with subprocesses, when the program run by a subprocess |
| 2002 | exhibits unusual buffering behavior. Default is zero, which lets the | 2005 | exhibits unusual buffering behavior. Default is zero, which lets the |
| @@ -2021,7 +2024,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. | |||
| 2021 | 2024 | ||
| 2022 | 2025 | ||
| 2023 | Local variables: | 2026 | Local variables: |
| 2024 | coding: utf-8 | 2027 | coding: us-ascii |
| 2025 | mode: outline | 2028 | mode: outline |
| 2026 | paragraph-separate: "[ ]*$" | 2029 | paragraph-separate: "[ ]*$" |
| 2027 | end: | 2030 | end: |
diff --git a/nextstep/README b/nextstep/README index 65e715779de..7a1a0921cd8 100644 --- a/nextstep/README +++ b/nextstep/README | |||
| @@ -15,7 +15,7 @@ adapted to GNUstep, a free OpenStep implementation, and in 2008 it was | |||
| 15 | merged to the GNU Emacs trunk and released with Emacs 23. Around the | 15 | merged to the GNU Emacs trunk and released with Emacs 23. Around the |
| 16 | same time a separate Mac-only port using the Carbon APIs and | 16 | same time a separate Mac-only port using the Carbon APIs and |
| 17 | descending from a 2001 MacOS 8/9 port of Emacs 21 was removed. (It | 17 | descending from a 2001 MacOS 8/9 port of Emacs 21 was removed. (It |
| 18 | remains available externally under the name “mac”.) | 18 | remains available externally under the name "mac".) |
| 19 | 19 | ||
| 20 | 20 | ||
| 21 | OVERVIEW OF COCOA AND OBJECTIVE-C | 21 | OVERVIEW OF COCOA AND OBJECTIVE-C |
| @@ -25,11 +25,11 @@ superset of C. Anybody with experience with iOS or modern OS X | |||
| 25 | application development should feel at home. | 25 | application development should feel at home. |
| 26 | 26 | ||
| 27 | A method call in Objective-C differs from most other languages in the | 27 | A method call in Objective-C differs from most other languages in the |
| 28 | fact that it doesn’t have a normal name. Instead, the method name is | 28 | fact that it doesn't have a normal name. Instead, the method name is |
| 29 | made up of the name of each parameter. An exception to this rule are | 29 | made up of the name of each parameter. An exception to this rule are |
| 30 | methods without parameters. | 30 | methods without parameters. |
| 31 | 31 | ||
| 32 | The following calls a method in the object ‘anObject’. | 32 | The following calls a method in the object 'anObject'. |
| 33 | 33 | ||
| 34 | [anObject alpha:1 beta:2 gamma:3]; | 34 | [anObject alpha:1 beta:2 gamma:3]; |
| 35 | 35 | ||
| @@ -55,8 +55,8 @@ Classes are declared like the following: | |||
| 55 | modify the NS code over a long period of time. Keep the code simple | 55 | modify the NS code over a long period of time. Keep the code simple |
| 56 | and avoid language constructs that makes the code hard to maintain. | 56 | and avoid language constructs that makes the code hard to maintain. |
| 57 | 57 | ||
| 58 | * Don’t use macros and types intended for the XCode Interface Builder, | 58 | * Don't use macros and types intended for the XCode Interface Builder, |
| 59 | like ‘IBAction’. | 59 | like 'IBAction'. |
| 60 | 60 | ||
| 61 | * The NS interface should work on all version of OS X from 10.6.8 | 61 | * The NS interface should work on all version of OS X from 10.6.8 |
| 62 | (Snow Leopard) to the latest official release. | 62 | (Snow Leopard) to the latest official release. |
| @@ -70,8 +70,8 @@ Classes are declared like the following: | |||
| 70 | The NS interface features a printf-based trace package that prints the | 70 | The NS interface features a printf-based trace package that prints the |
| 71 | call tree of selected functions in the Cocoa interface, plus various | 71 | call tree of selected functions in the Cocoa interface, plus various |
| 72 | extra information. It can be enabled by uncommenting the line | 72 | extra information. It can be enabled by uncommenting the line |
| 73 | defining ‘NSTRACE_ENABLED’ in nsterm.h. To enable more output, | 73 | defining 'NSTRACE_ENABLED' in "nsterm.h". To enable more output, |
| 74 | uncomment the lines defining symbols starting with ‘NSTRACE_GROUP’. | 74 | uncomment the lines defining symbols starting with 'NSTRACE_GROUP'. |
| 75 | 75 | ||
| 76 | 76 | ||
| 77 | GNUSTEP AND OTHER COMPATIBLE SYSTEMS | 77 | GNUSTEP AND OTHER COMPATIBLE SYSTEMS |
| @@ -121,8 +121,3 @@ GNU General Public License for more details. | |||
| 121 | 121 | ||
| 122 | You should have received a copy of the GNU General Public License | 122 | You should have received a copy of the GNU General Public License |
| 123 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. | 123 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
| 124 | |||
| 125 | |||
| 126 | Local variables: | ||
| 127 | coding: utf-8 | ||
| 128 | end: | ||