Mercurial > hg > xemacs-beta
comparison etc/NEWS @ 207:e45d5e7c476e r20-4b2
Import from CVS: tag r20-4b2
author | cvs |
---|---|
date | Mon, 13 Aug 2007 10:03:52 +0200 |
parents | 850242ba4a81 |
children | 41ff10fd062f |
comparison
equal
deleted
inserted
replaced
206:d3e9274cbc4e | 207:e45d5e7c476e |
---|---|
137 | 137 |
138 On consoles that display only one frame at a time (e.g. TTY consoles), | 138 On consoles that display only one frame at a time (e.g. TTY consoles), |
139 creating a new frame with `C-x 5 2' also raises and selects that | 139 creating a new frame with `C-x 5 2' also raises and selects that |
140 frame. The behavior of window system frames is unchanged. | 140 frame. The behavior of window system frames is unchanged. |
141 | 141 |
142 ** Package starting changes. | |
143 | |
144 State of Emacs should never be changed with loading a package. The | |
145 following XEmacs packages that used to break this have been changed. | |
146 | |
147 *** Loading `paren' no longer enables paren-blinking. Use | |
148 `paren-set-mode' explicitly, or customize `paren-mode'. | |
149 | |
150 *** Loading `uniquify' no longer enables uniquify. Set | |
151 `uniquify-buffer-name-style' to a legal value. | |
152 | |
153 *** Loading `time' no longer enables display time. Invoke | |
154 `display-time' explicitly. | |
155 | |
156 *** Loading `jka-compr' no longer enables on-the-fly compression. Use | |
157 `toggle-auto-compression' instead. | |
158 | |
159 *** Loading `id-select' no longer enables its behaviour. Use | |
160 `id-select-install' instead. | |
161 | |
142 ** Zmacs region is not deactivated when an error is signaled. | 162 ** Zmacs region is not deactivated when an error is signaled. |
143 | 163 |
144 The behavior of the zmacs region can now be controlled in the event of | 164 The behavior of the zmacs region can now be controlled in the event of |
145 a signaled error. The new variable `errors-deactivate-region' may be | 165 a signaled error. The new variable `errors-deactivate-region' may be |
146 set to nil to revert to the old behaviour. As before, typing C-g | 166 set to nil to revert to the old behaviour. As before, typing C-g |
147 deactivates the region. | 167 deactivates the region. |
148 | 168 |
149 ** Info "dir" functionality merged from Emacs-19.34 | 169 ** Multiple Info `dir' functionality has been merged with GNU Emacs |
150 | 170 19.34. |
151 ------------------ DRAFT ------------------ | 171 |
152 | 172 XEmacs will now correctly merge all the `dir' files in |
153 At the time it is dumped, XEmacs will initialize the value of | 173 `Info-directory-list' (initialized from either `INFOPATH' |
154 `Info-default-directory-list' from the value of the environment | 174 env. variable or `Info-default-directory-list'.) These files may be |
155 variable INFOPATH, which it inherits from the Makefile. The Makefile | 175 full-fledged info files containing subnodes or menus. Previously |
156 gets the value from `configure'. | 176 supported `localdir' files are looked for also, secondary to `dir's. |
157 | 177 See the manual for details. |
158 #### BETA Note: if the package startup stuff moves or changes, this | |
159 next paragraph may need fixing. | |
160 | |
161 At runtime, the XEmacs startup code will loop through that list and | |
162 collect all of the directories in it that satisfy `file-directory-p', | |
163 and then appends any site package info directories found... ?? How do | |
164 you want this worded? XXXXX !!!! (bright red bold DRAFT) | |
165 | |
166 When you start the info reader, `Info-directory-list' is initialized | |
167 from either the environment variable "INFOPATH", if it exists, or | |
168 `Info-default-directory-list'. The first directory in this list must | |
169 contain a "dir" file like the one supplied with XEmacs. Note that if | |
170 an INFOPATH variable is used, that only the directories in that path | |
171 will be searched; no package info paths will be appended, as `Info- | |
172 default-directory-list' will be ignored in that case. | |
173 | |
174 All of the directories on `Info-directory-list' will be searched for | |
175 "dir" files, which may be full fledged Info files containing subnodes | |
176 as well as menus. They are merged to become one Info directory, with | |
177 menus in like-named subnodes being coalesced from the several "dir" | |
178 files. | |
179 | |
180 BETA Note: I have not tested this very thouroughly. Does anyone out | |
181 there actually have a dir file with real `info' subnodes in it? I | |
182 will create one and try it as I learn how. - karlheg | |
183 | |
184 "localdir" files are looked for also, secondary to "dir"'s. A localdir | |
185 file should look like a section of the Info directory menu: | |
186 | |
187 | | |
188 |* Gnus:: The all seeing all knowing News and Mail | |
189 | interface for XEmacs. | |
190 |* Calc:: HP-48 alike Calculator that can do algebra | |
191 | | |
192 | |
193 The info reader will insert its contents into the main Info directory | |
194 either at the end of the (dir)Top node, beginning at and replacing a | |
195 line that looks like: | |
196 | |
197 | | |
198 |* Locals: | |
199 | | |
200 | |
201 BETA-Note: Coming soon... | |
202 | |
203 ... or, below a line that contains the exact text: | |
204 | |
205 | | |
206 |Locally installed XEmacs Packages | |
207 | | |
208 | |
209 ... by default. (This text is configurable--- see: | |
210 `M-x customize-variable Info-localdir-heading-regexp' | |
211 | |
212 The `Info-localdir-heading-regexp' may be underlined with *'s, ='s, or | |
213 -'s, like any Info topic header. When `Info-fontify' is non-nil, the | |
214 underlineing characters will be elided and the topic heading itself | |
215 will be given a face, according to `Info-title-face-alist'. | |
216 | |
217 | 178 |
218 ** Abbreviations can now contain non-word characters. | 179 ** Abbreviations can now contain non-word characters. |
219 | 180 |
220 This means that it is finally possible to do such simple things as | 181 This means that it is finally possible to do such simple things as |
221 define `#in' to expand to `#include' in C mode, `s-c-b' to | 182 define `#in' to expand to `#include' in C mode, `s-c-b' to |
228 | 189 |
229 ** The new command `C-x 4 0' (kill-buffer-and-window) kills the | 190 ** The new command `C-x 4 0' (kill-buffer-and-window) kills the |
230 current buffer and deletes the selected window. It asks for | 191 current buffer and deletes the selected window. It asks for |
231 confirmation first. | 192 confirmation first. |
232 | 193 |
194 ** `ESC ESC ESC' (keyboard-escape-quit) will now correctly abort | |
195 recursive edits (as documented.) | |
196 | |
233 ** arc-mode has a new function called `archive-quit' bound to q, which | 197 ** arc-mode has a new function called `archive-quit' bound to q, which |
234 quits archive mode in the same fashion dired-quit works. | 198 quits archive mode in the same fashion dired-quit works. |
199 | |
200 ** A `tetris' clone is now available within XEmacs, written by Glynn | |
201 Clements. Try it out with `M-x tetris'. | |
235 | 202 |
236 ** The feature to teach the key bindings of extended commands now | 203 ** The feature to teach the key bindings of extended commands now |
237 prints the message after the command finishes. After some time, the | 204 prints the message after the command finishes. After some time, the |
238 previous echo area contents are restored (in case the command prints | 205 previous echo area contents are restored (in case the command prints |
239 something useful). | 206 something useful). |
245 | 212 |
246 ** Face background colors now take precedence over the default face | 213 ** Face background colors now take precedence over the default face |
247 background pixmap, which means that background pixmaps no longer clash | 214 background pixmap, which means that background pixmaps no longer clash |
248 with zmacs-regions, or clickable buttons. | 215 with zmacs-regions, or clickable buttons. |
249 | 216 |
217 ** Regexps can now contain additional Perl-like constructs. | |
218 | |
219 ** Modifiers can be added to a keystroke by preceding it with a `C-x @ | |
220 <x>' sequence where <x> is one of letters `S', `c', `m', `a', `h', `s' | |
221 corresponding to shift, control, meta, alt, hyper, and super modifiers, | |
222 respectively. It is possible to add several modifiers by repeating this | |
223 sequence. This feature is especially useful on text terminals where it | |
224 allows one to enter keystrokes like, e.g., `M-home'. | |
225 | |
250 ** Customize changes. | 226 ** Customize changes. |
251 | 227 |
252 *** Customize has undergone a massive speedup, and should now operate | 228 *** Customize has undergone a massive speedup, and should now operate |
253 acceptably fast. Slowness of the interface used to be the biggest | 229 acceptably fast. Slowness of the interface used to be the biggest |
254 gripe. | 230 gripe. |
255 | 231 |
256 *** Many more packages have been modified to use the facility, so | 232 *** Many more packages have been modified to use the facility, so |
257 almost all of XEmacs options can be examined through the Customize | 233 almost all of XEmacs options can now be examined through the Customize |
258 groups. | 234 groups. |
259 | 235 |
260 *** There is a new `browser' mode of traversing customizations, in | 236 *** There is a new `browser' mode of traversing customizations, in |
261 many ways easier to follow than the standard one. Try it out with | 237 many ways easier to follow than the standard one. Try it out with |
262 `M-x customize-browse'. | 238 `M-x customize-browse'. |
276 not M-x load-library <ret> pending-delete <ret> | 252 not M-x load-library <ret> pending-delete <ret> |
277 | 253 |
278 In .emacs: Use (turn-on-pending-delete) | 254 In .emacs: Use (turn-on-pending-delete) |
279 not (load "pending-del") | 255 not (load "pending-del") |
280 | 256 |
281 ** Package starting changes. | |
282 | |
283 *** Loading `paren' no longer enables paren-blinking. Use | |
284 `paren-set-mode' explicitly, or customize `paren-mode'. | |
285 | |
286 *** Loading `uniquify' no longer enables uniquify. Set | |
287 `uniquify-buffer-name-style' to a legal value. | |
288 | |
289 *** Loading `time' no longer enables display time. Invoke | |
290 `display-time' explicitly. | |
291 | |
292 *** Loading `jka-compr' no longer enables on-the-fly compression. Use | |
293 `toggle-auto-compression' instead. | |
294 | |
295 *** Loading `id-select' no longer enables its behaviour. Use | |
296 `id-select-install' instead. | |
297 | |
298 ** XEmacs can now save the minibuffer histories from various | 257 ** XEmacs can now save the minibuffer histories from various |
299 minibuffers. To use this feature, add the line: | 258 minibuffers. To use this feature, add the line: |
300 | 259 |
301 (savehist-load) | 260 (savehist-load) |
302 | 261 |
310 To revert to the old behaviour, use: | 269 To revert to the old behaviour, use: |
311 | 270 |
312 (setq add-log-time-format 'current-time-string) | 271 (setq add-log-time-format 'current-time-string) |
313 | 272 |
314 Or `M-x customize RET add-log RET'. | 273 Or `M-x customize RET add-log RET'. |
274 | |
275 ** In ChangeLog mode, you can now press `C-c C-c' to save the file | |
276 and restore old window configuration, or `C-c C-k' to abandon the | |
277 changes. | |
315 | 278 |
316 ** The key `C-x m' no longer runs the `mail' command directly. | 279 ** The key `C-x m' no longer runs the `mail' command directly. |
317 Instead, it runs the command `compose-mail', which invokes the mail | 280 Instead, it runs the command `compose-mail', which invokes the mail |
318 composition mechanism you have selected with the variable | 281 composition mechanism you have selected with the variable |
319 `mail-user-agent'. The default choice of user agent is | 282 `mail-user-agent'. The default choice of user agent is |
344 | 307 |
345 *** The Lisp part of gnuserv has been rewritten to allow for more | 308 *** The Lisp part of gnuserv has been rewritten to allow for more |
346 flexibility and features. | 309 flexibility and features. |
347 | 310 |
348 *** Many new options and variables are now customizable. Try | 311 *** Many new options and variables are now customizable. Try |
349 `M-x customize-group RET gnuserv RET'. | 312 `M-x customize RET gnuserv RET'. |
350 | 313 |
351 *** The `gnuattach' and `gnudoit' programs have been abandoned in | 314 *** The functionality of `gnuattach' and `gnudoit' programs is |
352 favor of `gnuclient', which now accepts the standard `-nw', | 315 provided by `gnuclient', which now accepts the standard `-nw', |
353 `-display', `-eval' and `-f' options. | 316 `-display', `-eval' and `-f' options. |
354 | 317 |
355 ** Etags changes. | 318 ** Etags changes. |
356 | 319 |
357 *** In C, C++, Objective C and Java, Etags tags global variables by | 320 *** In C, C++, Objective C and Java, Etags tags global variables by |
406 *** The new function `ada-gnat-style' converts the buffer to the style of | 369 *** The new function `ada-gnat-style' converts the buffer to the style of |
407 formatting used in GNAT. It places two blanks after a comment start, | 370 formatting used in GNAT. It places two blanks after a comment start, |
408 places one blank between a word end and an opening '(', and puts one | 371 places one blank between a word end and an opening '(', and puts one |
409 space between a comma and the beginning of a word. | 372 space between a comma and the beginning of a word. |
410 | 373 |
374 ** New demand based locking implementation | |
375 | |
376 A faster, but experimental replacement for lazy-lock (called lazy-shot) is | |
377 provided. Like lazy-lock it provides demand based and idle time | |
378 font-lock-ing. However the lazy-lock versions that came with previous | |
379 versions slowed down XEmacs (possibly quite a lot). Lazy-shot solves | |
380 this problem by relying on new support from the C code part of XEmacs. | |
381 The support however is experimental and will cause some flashing as | |
382 parts of the buffer are colored. This likely to change in the future | |
383 as the C support is completed. | |
384 | |
385 The current lazy-shot implementation is mostly interface compatible | |
386 with lazy-lock v2.06 (the version shipped with XEmacs is v1.x). | |
387 | |
388 *** To enable: | |
389 1. Despite the flashing, lazy-shot was deemed such an improvement by | |
390 the majority of beta testers that it is now the standard method | |
391 provided by the options menu. Alternatively add | |
392 | |
393 (add-hook 'font-lock-mode-hook 'turn-on-lazy-shot) | |
394 | |
395 to '.emacs'. | |
396 2. If you were using lazy-lock before, just replace all occurrences of | |
397 "lazy-lock" by "lazy-shot" in your '.emacs' file. | |
398 | |
399 *** To disable: | |
400 | |
401 If prefer to use lazy-lock in stead of lazy-shot, put | |
402 | |
403 (remove-hook 'font-lock-mode-hook 'turn-on-lazy-shot) | |
404 (add-hook 'font-lock-mode-hook 'turn-on-lazy-lock) | |
405 | |
406 at the END of `.emacs'. | |
407 | |
408 ** RefTeX mode | |
409 | |
410 RefTeX mode is a new minor mode with special support for \label{}, \ref{} | |
411 and \cite{} macros in LaTeX documents. RefTeX distinguishes labels of | |
412 different environments (equation, figure, ...) and has full support for | |
413 multifile documents. To use it, select a buffer with a LaTeX document and | |
414 turn the mode on with M-x reftex-mode. Here are the main user commands: | |
415 | |
416 C-c ( reftex-label | |
417 Creates a label semi-automatically. RefTeX is context sensitive and | |
418 knows which kind of label is needed. | |
419 | |
420 C-c ) reftex-reference | |
421 Offers in a menu all labels in the document, along with context of the | |
422 label definition. The selected label is referenced as \ref{LABEL}. | |
423 | |
424 C-c [ reftex-citation | |
425 Prompts for a regular expression and displays a list of matching BibTeX | |
426 database entries. The selected entry is cited with a \cite{KEY} macro. | |
427 | |
428 C-c & reftex-view-crossref | |
429 Views the cross reference of a \ref{} or \cite{} command near point. | |
430 | |
431 C-c = reftex-toc | |
432 Shows a table of contents of the (multifile) document. From there you | |
433 can quickly jump to every section. | |
434 | |
435 Under X, RefTeX installs a "Ref" menu in the menu bar, with additional | |
436 commands. Full documentation and customization examples are in the file | |
437 reftex.el. You can use the finder to view this information: | |
438 C-h p --> tex --> reftex.el | |
411 | 439 |
412 | 440 |
413 * Lisp and internal changes in XEmacs 20.3 | 441 * Lisp and internal changes in XEmacs 20.3 |
414 ========================================== | 442 ========================================== |
415 | 443 |
418 | 446 |
419 ** `tty-erase-char' is a new variable that reports which character | 447 ** `tty-erase-char' is a new variable that reports which character |
420 was set up as the terminal's erase character at the time Emacs was | 448 was set up as the terminal's erase character at the time Emacs was |
421 started. | 449 started. |
422 | 450 |
451 ** It is now possible to attach the menubar accelerator keys to menu | |
452 entries. Look at the Lispref under Menus->Menu Accelerators for | |
453 details. | |
454 | |
423 ** `insert-file-contents' can now read from a special file, | 455 ** `insert-file-contents' can now read from a special file, |
424 as long as the arguments VISIT and REPLACE are nil. | 456 as long as the arguments VISIT and REPLACE are nil. |
425 | 457 |
426 ** `string-to-number' now accepts an optional BASE argument that | 458 ** `string-to-number' now accepts an optional BASE argument that |
427 specifies which base to use. The default base is 10. | 459 specifies which base to use. The default base is 10. |
433 to whitespace ("[ \f\t\n\r\v]+"). | 465 to whitespace ("[ \f\t\n\r\v]+"). |
434 | 466 |
435 ** `set-extent-properties' is a new function that can be used to | 467 ** `set-extent-properties' is a new function that can be used to |
436 change properties of an extent at once, and is analogous to | 468 change properties of an extent at once, and is analogous to |
437 `set-frame-properties'. | 469 `set-frame-properties'. |
470 | |
471 ** If a format field width is specified as `*', the field width is | |
472 now assumed to have been specified as an argument (as in C.) | |
473 | |
474 (format "%*s" 10 "abc") | |
475 => " abc" | |
438 | 476 |
439 ** The new macro `with-current-buffer' lets you evaluate an expression | 477 ** The new macro `with-current-buffer' lets you evaluate an expression |
440 conveniently with a different current buffer. It looks like this: | 478 conveniently with a different current buffer. It looks like this: |
441 | 479 |
442 (with-current-buffer BUFFER BODY-FORMS...) | 480 (with-current-buffer BUFFER BODY-FORMS...) |
469 `substitute-in-file-name'. | 507 `substitute-in-file-name'. |
470 | 508 |
471 This makes it possible for a Lisp program to open a file whose name | 509 This makes it possible for a Lisp program to open a file whose name |
472 begins with ~. | 510 begins with ~. |
473 | 511 |
512 ** The regexp matcher has been extended to recognize the following | |
513 constructs, borrowed from Perl: | |
514 | |
515 *** Additional quantifiers. | |
516 | |
517 In addition to `*', `+' and `?', XEmacs now recognizes the following | |
518 quantifiers: | |
519 | |
520 \{n\} Match exactly n times | |
521 \{n,\} Match at least n times | |
522 \{n,m\} Match at least n but not more than m times | |
523 | |
524 *** Non-greedy quantifiers. | |
525 | |
526 Any of the standard quantifiers (`*', `+' and others) can now be | |
527 followed by an optional `?', which will make them become "non-greedy", | |
528 i.e. they will match as little text as possible. Note that the | |
529 meanings don't change, just the "gravity." | |
530 | |
531 *** Shy groups. | |
532 | |
533 The \(?: ... \) groups things like \( ... \), but doesn't record the | |
534 context for backreferences or future use. This is useful when you | |
535 need a lot of groups for the sake of priorities, but actually want to | |
536 record only one or two. | |
537 | |
474 ** The new function `regexp-opt' returns an efficient regexp to match | 538 ** The new function `regexp-opt' returns an efficient regexp to match |
475 a string. The arguments are STRINGS and (optionally) PAREN. This | 539 a string. The arguments are STRINGS and (optionally) PAREN. This |
476 function can be used where regexp matching or searching is intensively | 540 function can be used where regexp matching or searching is intensively |
477 used and speed is important, e.g., in Font Lock mode. | 541 used and speed is important, e.g., in Font Lock mode. |
542 | |
543 ** The featurep syntax has been extended to resemble the Common Lisp | |
544 one, as suggested by Erik Naggum. | |
545 | |
546 *** The `xemacs' feature is defined in XEmacs by default. | |
547 | |
548 *** The expression `#+fexp form' is equivalent to | |
549 (when (featurep fexp) form), only it is evaluated at read-time. Also, | |
550 `#-fexp form' is equivalent to (unless (featurep fexp) form). | |
551 | |
552 *** In addition to symbols, a FEXP can also be a number, or a logical | |
553 operator. Here are some examples: | |
554 ;; evaluates to non-nil on XEmacs: | |
555 (featurep 'xemacs) | |
556 ;; evaluates to non-nil on XEmacs 20.3 or later: | |
557 (featurep '(and xemacs 20.03)) | |
558 ;; evaluates to non-nil either on Emacs, or on XEmacs built without | |
559 ;; X support: | |
560 (featurep '(or emacs (and xemacs (not x)))) | |
478 | 561 |
479 | 562 |
480 | 563 |
481 * Changes in XEmacs 20.2 | 564 * Changes in XEmacs 20.2 |
482 ======================== | 565 ======================== |