annotate etc/NEWS @ 52767:92416cd1e028

(Info-mode): Revert previous change. (Info-escape-percent): New function. (Info-fontify-node): Use it.
author Lute Kamstra <lute@gnu.org>
date Mon, 06 Oct 2003 07:14:21 +0000
parents c9422c237eae
children 749e8f353e55
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
51133
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
1 GNU Emacs NEWS -- history of user-visible changes. 2003-05-21
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
2 Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3 See the end for copying conditions.
Dave Love <fx@gnu.org>
parents:
diff changeset
4
Dave Love <fx@gnu.org>
parents:
diff changeset
5 Please send Emacs bug reports to bug-gnu-emacs@gnu.org.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
6 For older news, see the file ONEWS
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7
41749
83a9052556ea Setting left-fringe and rigth-fringe parameters to nil causes
Kim F. Storm <storm@cua.dk>
parents: 41748
diff changeset
8 Temporary note:
83a9052556ea Setting left-fringe and rigth-fringe parameters to nil causes
Kim F. Storm <storm@cua.dk>
parents: 41748
diff changeset
9 +++ indicates that the appropriate manual has already been updated.
83a9052556ea Setting left-fringe and rigth-fringe parameters to nil causes
Kim F. Storm <storm@cua.dk>
parents: 41748
diff changeset
10 --- means no change in the manuals is called for.
83a9052556ea Setting left-fringe and rigth-fringe parameters to nil causes
Kim F. Storm <storm@cua.dk>
parents: 41748
diff changeset
11 When you add a new item, please add it without either +++ or ---
46034
29c0705b3531 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46028
diff changeset
12 so we will look at it and add it to the manual.
41749
83a9052556ea Setting left-fringe and rigth-fringe parameters to nil causes
Kim F. Storm <storm@cua.dk>
parents: 41748
diff changeset
13
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
14
44724
867beadfbb38 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 44718
diff changeset
15 * Installation Changes in Emacs 21.4
41099
eab977ad2163 Mention installation options --program-prefix, --program-suffix
Pavel Janík <Pavel@Janik.cz>
parents: 41091
diff changeset
16
49347
4e87b41641d9 Mention Gtk+
Jan Djärv <jan.h.d@swipnet.se>
parents: 49341
diff changeset
17 ** You can build Emacs with Gtk+ widgets by specifying `--with-x-toolkit=gtk'
51647
c9a97d52236b *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51608
diff changeset
18 when you run configure. This requires Gtk+ 2.0 or newer. This port
c9a97d52236b *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51608
diff changeset
19 provides a way to display multilingual text in menus (with some caveats).
49347
4e87b41641d9 Mention Gtk+
Jan Djärv <jan.h.d@swipnet.se>
parents: 49341
diff changeset
20
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
21 ---
44431
dbbff2e791e6 Emacs can be built without sound.
Pavel Janík <Pavel@Janik.cz>
parents: 44418
diff changeset
22 ** Emacs can now be built without sound support.
dbbff2e791e6 Emacs can be built without sound.
Pavel Janík <Pavel@Janik.cz>
parents: 44418
diff changeset
23
47616
fb782cfe9a36 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 47537
diff changeset
24 ** The `emacsserver' program has been removed, replaced with elisp code.
fb782cfe9a36 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 47537
diff changeset
25
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
26 ---
41099
eab977ad2163 Mention installation options --program-prefix, --program-suffix
Pavel Janík <Pavel@Janik.cz>
parents: 41091
diff changeset
27 ** Emacs now supports new configure options `--program-prefix',
eab977ad2163 Mention installation options --program-prefix, --program-suffix
Pavel Janík <Pavel@Janik.cz>
parents: 41091
diff changeset
28 `--program-suffix' and `--program-transform-name' that affect the names of
eab977ad2163 Mention installation options --program-prefix, --program-suffix
Pavel Janík <Pavel@Janik.cz>
parents: 41091
diff changeset
29 installed programs.
eab977ad2163 Mention installation options --program-prefix, --program-suffix
Pavel Janík <Pavel@Janik.cz>
parents: 41091
diff changeset
30
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
31 ---
44822
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
32 ** By default, Emacs now uses a setgid helper program to update game
44857
59ced914827b *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44843
diff changeset
33 scores. The directory ${localstatedir}/games/emacs is the normal
59ced914827b *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44843
diff changeset
34 place for game scores to be stored. This may be controlled by the
59ced914827b *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44843
diff changeset
35 configure option `--with-game-dir'. The specific user that Emacs uses
59ced914827b *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44843
diff changeset
36 to own the game scores is controlled by `--with-game-user'. If access
44996
dbde822f9021 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44972
diff changeset
37 to a game user is not available, then scores will be stored separately
dbde822f9021 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44972
diff changeset
38 in each user's home directory.
44822
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
39
42216
8fc2782f2f8d Document the inclusion of Leim in the standard tarball.
Eli Zaretskii <eliz@gnu.org>
parents: 42197
diff changeset
40 ---
8fc2782f2f8d Document the inclusion of Leim in the standard tarball.
Eli Zaretskii <eliz@gnu.org>
parents: 42197
diff changeset
41 ** Leim is now part of the Emacs distribution.
8fc2782f2f8d Document the inclusion of Leim in the standard tarball.
Eli Zaretskii <eliz@gnu.org>
parents: 42197
diff changeset
42 You no longer need to download a separate tarball in order to build
8fc2782f2f8d Document the inclusion of Leim in the standard tarball.
Eli Zaretskii <eliz@gnu.org>
parents: 42197
diff changeset
43 Emacs with Leim.
8fc2782f2f8d Document the inclusion of Leim in the standard tarball.
Eli Zaretskii <eliz@gnu.org>
parents: 42197
diff changeset
44
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
45 +++
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
46 ** The Emacs Lisp Reference Manual is now part of the distribution.
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
47
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
48 The ELisp reference manual in Info format is built as part of the
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
49 Emacs build procedure and installed together with the Emacs User
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
50 Manual. A menu item was added to the menu bar that makes it easy
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
51 accessible (Help->More Manuals->Emacs Lisp Reference).
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
52
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
53 ---
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
54 ** The Introduction to Programming in Emacs Lisp manual is now part of
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
55 the distribution.
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
56
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
57 This manual is now part of the standard distribution and is installed,
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
58 together with the Emacs User Manual, into the Info directory. A menu
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
59 item was added to the menu bar that makes it easy accessible
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
60 (Help->More Manuals->Introduction to Emacs Lisp).
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
61
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
62 ** Support for Cygwin was added.
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
63
42990
94da0e3159a2 Mention support for BSD/OS 5.0.
Eli Zaretskii <eliz@gnu.org>
parents: 42984
diff changeset
64 ---
41675
30f353761d6c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 41623
diff changeset
65 ** Support for FreeBSD/Alpha has been added.
30f353761d6c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 41623
diff changeset
66
42990
94da0e3159a2 Mention support for BSD/OS 5.0.
Eli Zaretskii <eliz@gnu.org>
parents: 42984
diff changeset
67 ---
45195
8572b81e3c30 Document support for s390-linux-gnu.
Eli Zaretskii <eliz@gnu.org>
parents: 45119
diff changeset
68 ** Support for GNU/Linux systems on S390 machines was added.
8572b81e3c30 Document support for s390-linux-gnu.
Eli Zaretskii <eliz@gnu.org>
parents: 45119
diff changeset
69
8572b81e3c30 Document support for s390-linux-gnu.
Eli Zaretskii <eliz@gnu.org>
parents: 45119
diff changeset
70 ---
44898
457be7d90d62 Document the MacOS X support.
Eli Zaretskii <eliz@gnu.org>
parents: 44876
diff changeset
71 ** Support for MacOS X was added.
457be7d90d62 Document the MacOS X support.
Eli Zaretskii <eliz@gnu.org>
parents: 44876
diff changeset
72 See the files mac/README and mac/INSTALL for build instructions.
457be7d90d62 Document the MacOS X support.
Eli Zaretskii <eliz@gnu.org>
parents: 44876
diff changeset
73
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
74 ---
45667
16708fb2d951 Add Support for x86-64.
Andreas Schwab <schwab@suse.de>
parents: 45666
diff changeset
75 ** Support for GNU/Linux systems on X86-64 machines was added.
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
76
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
77 ---
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
78 ** A French translation of the `Emacs Survival Guide' is available.
41229
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
79
48027
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
80 ---
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
81 ** A French translation of the Emacs Tutorial is available.
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
82
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
83
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
84 * Changes in Emacs 21.4
48027
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
85
52494
96d237d6be00 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 52478
diff changeset
86 ** The max size of buffers and integers has been doubled.
96d237d6be00 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 52478
diff changeset
87 On 32bit machines, it is now 256M (i.e. 268435455).
96d237d6be00 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 52478
diff changeset
88
52407
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
89 ** Under XFree86 4, the display table is modified so that `' is
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
90 displayed as balanced quotes, not the ASCII glyphs whose shape has
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
91 been changed generally in the XFree86 fonts.
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
92
52578
1365e8b0efa4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52555
diff changeset
93 +++
1365e8b0efa4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52555
diff changeset
94 ** The -f option, used from the command line to call a function,
52587
ce540063ee19 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 52578
diff changeset
95 now reads arguments for the function interactively if it is
52578
1365e8b0efa4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52555
diff changeset
96 an interactively callable function.
1365e8b0efa4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52555
diff changeset
97
1365e8b0efa4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52555
diff changeset
98
51902
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
99 ** sql changes.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
100
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
101 *** The variable `sql-product' controls the highlightng of different
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
102 SQL dialects. This variable can be set globally via Customize, on a
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
103 buffer-specific basis via local variable settings, or for the current
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
104 session using the new SQL->Product submenu. (This menu replaces the
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
105 SQL->Highlighting submenu.)
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
106
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
107 The following values are supported:
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
108
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
109 ansi ANSI Standard (default)
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
110 db2 DB2
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
111 informix Informix
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
112 ingres Ingres
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
113 interbase Interbase
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
114 linter Linter
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
115 ms Microsoft
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
116 mysql MySQL
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
117 oracle Oracle
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
118 postgres Postgres
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
119 solid Solid
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
120 sqlite SQLite
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
121 sybase Sybase
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
122
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
123 The current product name will be shown on the mode line following the
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
124 SQL mode indicator.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
125
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
126 The technique of setting `sql-mode-font-lock-defaults' directly in
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
127 your .emacs will no longer establish the default highlighting -- Use
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
128 `sql-product' to accomplish this.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
129
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
130 *** The function `sql-add-product-keywords' can be used to add
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
131 font-lock rules to the product specific rules. For example, to have
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
132 all identifiers ending in "_t" under MS SQLServer treated as a type,
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
133 you would use the following line in your .emacs file:
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
134
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
135 (sql-add-product-keywords 'ms
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
136 '("\\<\\w+_t\\>" . font-lock-type-face))
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
137
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
138 *** Oracle support includes keyword highlighting for Oracle 9i. Most
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
139 SQL and PL/SQL keywords are implemented. SQL*Plus commands are
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
140 highlighted in `font-lock-doc-face'.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
141
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
142 *** Microsoft SQLServer support has been significantly improved.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
143 Keyword highlighting for SqlServer 2000 is implemented.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
144 sql-interactive-mode defaults to use osql, rather than isql, because
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
145 osql flushes it's error stream more frequently. Thus error messages
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
146 are displayed when they occur rather than when the session is
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
147 terminated.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
148
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
149 If the username and password are not provided to `sql-ms', osql is
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
150 called with the -E command line argument to use the operating system
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
151 credentials to authenticate the user.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
152
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
153 *** Imenu support has been enhanced to locate tables, views, indexes,
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
154 packages, procedures, functions, triggers, sequences, rules, and
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
155 defaults.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
156
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
157 *** Added SQL->Start SQLi Session menu entry which calls the
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
158 appropriate sql-interactive-mode wrapper for the current setting of
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
159 `sql-product'.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
160
51852
dc926bfd8248 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51831
diff changeset
161 ** M-x view-file and commands that use it now avoid interfering
dc926bfd8248 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51831
diff changeset
162 with special modes such as Tar mode.
dc926bfd8248 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51831
diff changeset
163
51934
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
164 ** Enhancements to apropos commands:
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
165
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
166 *** The apropos commands will now accept a list of words to match.
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
167 When more than one word is specified, at least two of those words must
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
168 be present for an item to match. Regular expression matching is still
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
169 available.
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
170
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
171 *** The new option `apropos-sort-by-scores' causes the matching items
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
172 to be sorted according to their score. The score for an item is a
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
173 number calculated to indicate how well the item matches the words or
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
174 regular expression that you entered to the apropos command. The best
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
175 match is listed first, and the calculated score is shown for each
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
176 matching item.
51886
8065f7ca3329 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51852
diff changeset
177
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
178 +++
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
179 ** The old bindings C-M-delete and C-M-backspace have been deleted,
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
180 since there are situations where one or the other will shut down
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
181 the operating system or your X server.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
182
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
183 ** New minor mode, Visible mode, toggles invisibility in the current buffer.
51710
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
184 When enabled, it makes all invisible text visible. When disabled, it
51902
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
185 restores the previous value of `buffer-invisibility-spec'.
51710
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
186
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
187 ** New command `kill-whole-line' kills an entire line at once.
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
188 By default, it is bound to C-S-<backspace>.
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
189
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
190 +++
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
191 ** Info now hides node names in menus and cross references by default.
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
192 If you prefer the old behavior, you can set the new user option
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
193 `Info-hide-note-references' to nil.
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
194
51608
05ddf95bcbff *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51602
diff changeset
195 ** Support for the SQLite interpreter has been added to sql.el by calling
05ddf95bcbff *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51602
diff changeset
196 'sql-sqlite'.
05ddf95bcbff *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51602
diff changeset
197
51505
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
198 ** BibTeX mode:
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
199 *** New `bibtex-entry-format' option `required-fields', enabled by default.
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
200 *** bibtex-maintain-sorted-entries can take values `plain',
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
201 `crossref', and `entry-class' which control the sorting scheme used
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
202 for BibTeX entries. `bibtex-sort-entry-class' controls the sorting
51744
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
203 scheme `entry-class'. TAB completion for reference keys and
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
204 automatic detection of duplicates does not require anymore that
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
205 bibtex-maintain-sorted-entries is non-nil.
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
206
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
207 *** If the new variable bibtex-parse-keys-fast is non-nil,
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
208 use fast but simplified algorithm for parsing BibTeX keys.
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
209
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
210 *** If the new variable bibtex-autoadd-commas is non-nil,
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
211 automatically add missing commas at end of BibTeX fields.
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
212
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
213 *** The new variable bibtex-autofill-types contains a list of entry
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
214 types for which fields are filled automatically (if possible).
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
215
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
216 *** The new command bibtex-complete completes word fragment before
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
217 point according to context (bound to M-tab).
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
218
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
219 *** The new commands bibtex-find-entry and bibtex-find-crossref
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
220 locate entries and crossref'd entries.
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
221
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
222 *** In BibTeX mode the command fill-paragraph (bound to M-q) fills
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
223 individual fields of a BibTeX entry.
51505
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
224
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
225 ** When display margins are present in a window, the fringes are now
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
226 displayed between the margins and the buffer's text area, rather than
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
227 at the edges of the window.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
228
51222
083c1ba5b1d9 Fix typos.
Juanma Barranquero <lekktu@gmail.com>
parents: 51215
diff changeset
229 ** A window may now have individual fringe and scroll-bar settings,
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
230 in addition to the individual display margin settings.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
231
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
232 Such individual settings are now preserved when windows are split
51222
083c1ba5b1d9 Fix typos.
Juanma Barranquero <lekktu@gmail.com>
parents: 51215
diff changeset
233 horizontally or vertically, a saved window configuration is restored,
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
234 or when the frame is resized.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
235
52616
3c1bf15e7a4d *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 52587
diff changeset
236 ** New functions frame-current-scroll-bars and window-current-scroll-bars.
3c1bf15e7a4d *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 52587
diff changeset
237
3c1bf15e7a4d *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 52587
diff changeset
238 These functions return the current locations of the vertical and
3c1bf15e7a4d *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 52587
diff changeset
239 horisontal scroll bars in a frame or window.
3c1bf15e7a4d *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 52587
diff changeset
240
51182
3dd4104b45b6 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51133
diff changeset
241 ** Under X, mouse-wheel-mode is turned on by default.
3dd4104b45b6 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51133
diff changeset
242
51133
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
243 ** The X resource useXIM can be used to turn off use of XIM, which may
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
244 speed up Emacs with slow networking to the X server.
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
245
51828
94d3cf9e9e14 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 51808
diff changeset
246 If the configure option `--without-xim' was used to turn off use of
94d3cf9e9e14 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 51808
diff changeset
247 XIM by default, the X resource useXIM can be used to turn it on.
94d3cf9e9e14 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 51808
diff changeset
248
51133
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
249 ** `describe-char' can show data from the Unicode database file. See
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
250 user option `unicode-data'.
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
251
51374
31bb2083978b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51300
diff changeset
252 ** `undo-only' does an undo which does not redo any previous undo.
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
253
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
254 ** `uniquify-strip-common-suffix' tells uniquify to prefer
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
255 `file|dir1' and `file|dir2' to `file|dir1/subdir' and `file|dir2/subdir'.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
256
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
257 ** If the user visits a file larger than `large-file-warning-threshold',
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
258 Emacs will prompt her for confirmation.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
259
50897
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
260 ** A UTF-7 coding system is available in the library `utf-7'.
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
261
50794
4239cd7727ca Add an entry for GDB-UI.
Nick Roberts <nickrob@snap.net.nz>
parents: 50773
diff changeset
262 ** GUD mode has its own tool bar for controlling execution of the inferior
4239cd7727ca Add an entry for GDB-UI.
Nick Roberts <nickrob@snap.net.nz>
parents: 50773
diff changeset
263 and other common debugger commands.
4239cd7727ca Add an entry for GDB-UI.
Nick Roberts <nickrob@snap.net.nz>
parents: 50773
diff changeset
264
50716
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
265 ** recentf changes.
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
266
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
267 The recent file list is now automatically cleanup when recentf mode is
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
268 enabled. The new option `recentf-auto-cleanup' controls when to do
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
269 automatic cleanup.
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
270
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
271 With the more advanced option: `recentf-filename-handler', you can
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
272 specify a function that transforms filenames handled by recentf. For
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
273 example, if set to `file-truename', the same file will not be in the
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
274 recent list with different symbolic links.
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
275
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
276 To follow naming convention, `recentf-keep-non-readable-files-flag'
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
277 and `recentf-menu-append-commands-flag' respectively replace the
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
278 misnamed options `recentf-keep-non-readable-files-p' and
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
279 `recentf-menu-append-commands-p'. The old names remain available as
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
280 aliases, but have been marked obsolete.
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
281
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
282 ** The default for the paper size (variable ps-paper-type) is taken
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
283 from the locale.
49713
f863aaa8296d *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49668
diff changeset
284
48021
1c7fc6ad1178 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47739
diff changeset
285 ** Init file changes
1c7fc6ad1178 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47739
diff changeset
286
1c7fc6ad1178 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47739
diff changeset
287 You can now put the init files .emacs and .emacs_SHELL under
1c7fc6ad1178 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47739
diff changeset
288 ~/.emacs.d or directly under ~. Emacs will find them in either place.
1c7fc6ad1178 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47739
diff changeset
289
50553
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
290 ** partial-completion-mode now does partial completion on directory names.
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
291
51300
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
292 ** skeleton.el now supports using - to mark the skeleton-point without
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
293 interregion interaction. @ has reverted to only setting
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
294 skeleton-positions and no longer sets skeleton-point. Skeletons
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
295 which used @ to mark skeleton-point independent of _ should now use -
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
296 instead. The updated skeleton-insert docstring explains these new
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
297 features along with other details of skeleton construction.
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
298
47730
2568d5a27317 Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents: 47650
diff changeset
299 ** MH-E changes.
2568d5a27317 Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents: 47650
diff changeset
300
50702
7dd3d5eae9c7 Upgraded to MH-E version 7.3.
Bill Wohler <wohler@newt.com>
parents: 50607
diff changeset
301 Upgraded to MH-E version 7.3. There have been major changes since
47730
2568d5a27317 Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents: 47650
diff changeset
302 version 5.0.2; see MH-E-NEWS for details.
2568d5a27317 Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents: 47650
diff changeset
303
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
304 +++
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
305 ** The `emacsclient' command understands the options `--eval' and
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
306 `--display' which tell Emacs respectively to evaluate the given elisp
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
307 expression and to use the given display when visiting files.
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
308
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
309 ** User option `server-mode' can be used to start a server process.
47650
5dbc6d83f14d Add info about --eval and --display.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 47621
diff changeset
310
5dbc6d83f14d Add info about --eval and --display.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 47621
diff changeset
311 +++
46736
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
312 ** The mode line position information now comes before the major mode.
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
313 When the file is maintained under version control, that information
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
314 appears between the position information and the major mode.
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
315
47201
f17f344680f2 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47172
diff changeset
316 ** C-x s (save-some-buffers) now offers an option `d' to diff a buffer
f17f344680f2 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47172
diff changeset
317 against its file, so you can see what changes you would be saving.
f17f344680f2 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47172
diff changeset
318
46736
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
319 +++
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
320 ** You can now customize the use of window fringes. To control this
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
321 for all frames, use M-x fringe-mode or the Show/Hide submenu of the
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
322 top-level Options menu, or customize the `fringe-mode' variable. To
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
323 control this for a specific frame, use the command M-x
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
324 set-fringe-style.
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
325
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
326 +++
45426
784a17ff4998 Move remarks on `mail-default-directory' down to section
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45425
diff changeset
327 ** There is a new user option `mail-default-directory' that allows you
784a17ff4998 Move remarks on `mail-default-directory' down to section
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45425
diff changeset
328 to specify the value of `default-directory' for mail buffers. This
784a17ff4998 Move remarks on `mail-default-directory' down to section
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45425
diff changeset
329 directory is used for auto-save files of mail buffers. It defaults to
784a17ff4998 Move remarks on `mail-default-directory' down to section
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45425
diff changeset
330 "~/".
784a17ff4998 Move remarks on `mail-default-directory' down to section
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45425
diff changeset
331
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
332 +++
46201
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
333 ** When you are root, and you visit a file whose modes specify
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
334 read-only, the Emacs buffer is now read-only too. Type C-x C-q if you
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
335 want to make the buffer writable. (As root, you will in fact be able
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
336 to alter the file.)
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
337
46787
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
338 ** The new command `revert-buffer-with-coding-system' (C-x RET r)
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
339 revisits the current file using a coding system that you specify.
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
340
50312
11f0b75d4df1 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50055
diff changeset
341 ** The new command `recode-file-name' changes the encoding of the name
11f0b75d4df1 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50055
diff changeset
342 of a file.
11f0b75d4df1 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50055
diff changeset
343
44876
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
344 ---
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
345 ** `ps-print' can now print characters from the mule-unicode charsets.
45336
a6bd3dde3bfd Document that ps-print can print Unicode characters.
Eli Zaretskii <eliz@gnu.org>
parents: 45302
diff changeset
346
a6bd3dde3bfd Document that ps-print can print Unicode characters.
Eli Zaretskii <eliz@gnu.org>
parents: 45302
diff changeset
347 Printing text with characters from the mule-unicode-* sets works with
a6bd3dde3bfd Document that ps-print can print Unicode characters.
Eli Zaretskii <eliz@gnu.org>
parents: 45302
diff changeset
348 ps-print, provided that you have installed the appropriate BDF fonts.
a6bd3dde3bfd Document that ps-print can print Unicode characters.
Eli Zaretskii <eliz@gnu.org>
parents: 45302
diff changeset
349 See the file INSTALL for URLs where you can find these fonts.
a6bd3dde3bfd Document that ps-print can print Unicode characters.
Eli Zaretskii <eliz@gnu.org>
parents: 45302
diff changeset
350
a6bd3dde3bfd Document that ps-print can print Unicode characters.
Eli Zaretskii <eliz@gnu.org>
parents: 45302
diff changeset
351 ---
44876
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
352 ** The new options `buffers-menu-show-directories' and
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
353 `buffers-menu-show-status' let you control how buffers are displayed
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
354 in the menu dropped down when you click "Buffers" from the menu bar.
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
355
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
356 `buffers-menu-show-directories' controls whether the menu displays
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
357 leading directories as part of the file name visited by the buffer.
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
358 If its value is `unless-uniquify', the default, directories will be
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
359 shown unless uniquify-buffer-name-style' is non-nil. The value of nil
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
360 and t turn the display of directories off and on, respectively.
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
361
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
362 `buffers-menu-show-status' controls whether the Buffers menu includes
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
363 the modified and read-only status of the buffers. By default it is
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
364 t, and the status is shown.
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
365
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
366 Setting these variables directly does not take effect until next time
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
367 the Buffers menu is regenerated.
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
368
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
369 +++
44843
4872781b98d4 Customize-face suggesting to customize face under point.
Gerd Moellmann <gerd@gnu.org>
parents: 44827
diff changeset
370 ** The commands M-x customize-face and M-x customize-face-other-window
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
371 now look at the character after point. If a face or faces are
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
372 specified for that character, the commands by default customize those
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
373 faces.
44843
4872781b98d4 Customize-face suggesting to customize face under point.
Gerd Moellmann <gerd@gnu.org>
parents: 44827
diff changeset
374
52439
60e95c98df0a code-pages changes
Dave Love <fx@gnu.org>
parents: 52419
diff changeset
375 ** New language environments: French, Ukrainian, Tajik,
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
376 Bulgarian, Belarusian, Ukrainian, UTF-8, Windows-1255, Welsh, Latin-6,
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
377 Latin-7, Lithuanian, Latvian, Swedish, Slovenian, Croatian, Georgian,
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
378 Italian, Russian, Malayalam, Tamil, Russian, Chinese-EUC-TW. (Set up
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
379 automatically according to the locale.)
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
380
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
381 ** Indian support has been updated.
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
382 The in-is13194 coding system is now Unicode-based. CDAC fonts are
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
383 assumed. There is a framework for supporting various
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
384 Indian scripts, but currently only Devanagari, Malayalam and Tamil are
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
385 supported.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
386
46936
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
387 ---
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
388 ** New input methods: latin-alt-postfix, latin-postfix, latin-prefix,
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
389 ukrainian-computer, belarusian, bulgarian-bds, russian-computer,
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
390 vietnamese-telex, lithuanian-numeric, lithuanian-keyboard,
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
391 latvian-keyboard, welsh, georgian, rfc1345, ucs, sgml,
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
392 bulgarian-phonetic, dutch, slovenian, croatian, malayalam-inscript,
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
393 tamil-inscript.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
394
46936
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
395 ---
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
396 ** A new coding system `euc-tw' has been added for traditional Chinese
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
397 in CNS encoding; it accepts both Big 5 and CNS as input; on saving,
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
398 Big 5 is then converted to CNS.
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
399
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
400 ---
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
401 ** Many new coding systems are available by loading the `code-pages'
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
402 library. These include complete versions of most of those in
52444
745e16966e77 Fix wording of the last change.
Eli Zaretskii <eliz@gnu.org>
parents: 52439
diff changeset
403 codepage.el, based on Unicode mappings. `codepage-setup' is now
745e16966e77 Fix wording of the last change.
Eli Zaretskii <eliz@gnu.org>
parents: 52439
diff changeset
404 obsolete and is used only in the MS-DOS port of Emacs. windows-1252
745e16966e77 Fix wording of the last change.
Eli Zaretskii <eliz@gnu.org>
parents: 52439
diff changeset
405 and windows-1251 are preloaded since the former is so common and the
745e16966e77 Fix wording of the last change.
Eli Zaretskii <eliz@gnu.org>
parents: 52439
diff changeset
406 latter is used by GNU locales.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
407
50897
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
408 ** The utf-8/16 coding systems have been enhanced.
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
409 By default, untranslatable utf-8 sequences (mostly representing CJK
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
410 characters) are simply composed into single quasi-characters. User
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
411 option `utf-translate-cjk' arranges to translate many utf-8 CJK
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
412 character sequences into real Emacs characters in a similar way to the
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
413 Mule-UCS system. This uses significant space, so is not the default.
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
414 You can augment/amend the CJK translation via hash tables
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
415 `ucs-mule-cjk-to-unicode' and `ucs-unicode-to-mule-cjk'. The utf-8
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
416 coding system now also encodes characters from most of Emacs's
50773
b14367118d5a utf-translate-cjk is now called utf-translate-cjk-mode.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 50716
diff changeset
417 one-dimensional internal charsets, specifically the ISO-8859 ones.
50897
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
418 The utf-16 coding system is affected similarly.
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
419
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
420 ** iso-10646-1 (`Unicode') fonts can be used to display any range of
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
421 characters encodable by the utf-8 coding system. Just specify the
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
422 fontset appropriately.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
423
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
424 ** New command `ucs-insert' inserts a character specified by its
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
425 unicode.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
426
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
427 +++
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
428 ** Limited support for character `unification' has been added.
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
429 Emacs now knows how to translate between different representations of
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
430 the same characters in various Emacs charsets according to standard
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
431 Unicode mappings. This applies mainly to characters in the ISO 8859
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
432 sets plus some other 8-bit sets, but can be extended. For instance,
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
433 translation works amongst the Emacs ...-iso8859-... charsets and the
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
434 mule-unicode-... ones.
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
435
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
436 By default this translation will happen automatically on encoding.
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
437 Self-inserting characters are translated to make the input conformant
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
438 with the encoding of the buffer in which it's being used, where
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
439 possible.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
440
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
441 You can force a more complete unification with the user option
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
442 unify-8859-on-decoding-mode. That maps all the Latin-N character sets
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
443 into Unicode characters (from the latin-iso8859-1 and
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
444 mule-unicode-0100-24ff charsets) on decoding. Note that this mode
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
445 will often effectively clobber data with an iso-2022 encoding.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
446
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
447 ** There is support for decoding Greek and Cyrillic characters into
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
448 either Unicode (the mule-unicode charsets) or the iso-8859 charsets,
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
449 when possible. The latter are more space-efficient. This is
49887
68ca3f7b109d Fix misspelling of utf-fragment-on-decoding.
Andreas Schwab <schwab@suse.de>
parents: 49883
diff changeset
450 controlled by user option utf-fragment-on-decoding.
44018
9ebe6b2c13f3 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43973
diff changeset
451
48886
f016200d5069 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 48885
diff changeset
452 ** The new command `set-file-name-coding-system' (C-x RET F) sets
f016200d5069 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 48885
diff changeset
453 coding system for encoding and decoding file names. A new menu item
f016200d5069 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 48885
diff changeset
454 (Options->Mule->Set Coding Systems->For File Name) invokes this
f016200d5069 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 48885
diff changeset
455 command.
48885
d5393fb79ea2 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 48849
diff changeset
456
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
457 ---
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
458 ** The scrollbar under LessTif or Motif has a smoother drag-scrolling.
43947
348e264952d1 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43932
diff changeset
459 On the other hand, the size of the thumb does not represent the actual
348e264952d1 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43932
diff changeset
460 amount of text shown any more (only a crude approximation of it).
348e264952d1 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43932
diff changeset
461
44694
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
462 +++
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
463 ** Emacs can produce an underscore-like (horizontal bar) cursor.
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
464 The underscore cursor is set by putting `(cursor-type . hbar)' in
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
465 default-frame-alist. It supports variable heights, like the `bar'
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
466 cursor does.
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
467
52419
e41d6d070429 Blinking cursor's default off state restored to "no cursor".
Kim F. Storm <storm@cua.dk>
parents: 52413
diff changeset
468 +++
e41d6d070429 Blinking cursor's default off state restored to "no cursor".
Kim F. Storm <storm@cua.dk>
parents: 52413
diff changeset
469 ** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is
e41d6d070429 Blinking cursor's default off state restored to "no cursor".
Kim F. Storm <storm@cua.dk>
parents: 52413
diff changeset
470 now controlled by the variable `blink-cursor-alist'.
e41d6d070429 Blinking cursor's default off state restored to "no cursor".
Kim F. Storm <storm@cua.dk>
parents: 52413
diff changeset
471
44934
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
472 ** Filesets are collections of files. You can define a fileset in
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
473 various ways, such as based on a directory tree or based on
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
474 program files that include other program files.
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
475
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
476 Once you have defined a fileset, you can perform various operations on
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
477 all the files in it, such as visiting them or searching and replacing
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
478 in them.
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
479
43931
27dac8aa4a17 Document addition of po.el.
Eli Zaretskii <eliz@gnu.org>
parents: 43925
diff changeset
480 ---
27dac8aa4a17 Document addition of po.el.
Eli Zaretskii <eliz@gnu.org>
parents: 43925
diff changeset
481 ** PO translation files are decoded according to their MIME headers
27dac8aa4a17 Document addition of po.el.
Eli Zaretskii <eliz@gnu.org>
parents: 43925
diff changeset
482 when Emacs visits them.
27dac8aa4a17 Document addition of po.el.
Eli Zaretskii <eliz@gnu.org>
parents: 43925
diff changeset
483
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
484 ---
43772
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
485 ** The game `mpuz' is enhanced.
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
486
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
487 `mpuz' now allows the 2nd factor not to have two identical digits. By
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
488 default, all trivial operations involving whole lines are performed
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
489 automatically. The game uses faces for better visual feedback.
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
490
51602
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
491 ** The new variable `x-select-request-type' controls how Emacs
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
492 requests X selection. The default value is nil, which means that
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
493 Emacs requests X selection with types COMPOUND_TEXT and UTF8_STRING,
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
494 and use the more appropriately result.
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
495
43356
ba0eac6c2e94 Mark the new hscroll-related variables as documented in the manual.
Eli Zaretskii <eliz@gnu.org>
parents: 43353
diff changeset
496 +++
ba0eac6c2e94 Mark the new hscroll-related variables as documented in the manual.
Eli Zaretskii <eliz@gnu.org>
parents: 43353
diff changeset
497 ** The parameters of automatic hscrolling can now be customized.
43666
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
498 The variable `hscroll-margin' determines how many columns away from
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
499 the window edge point is allowed to get before automatic hscrolling
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
500 will horizontally scroll the window. The default value is 5.
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
501
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
502 The variable `hscroll-step' determines how many columns automatic
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
503 hscrolling will scroll the window when point gets too close to the
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
504 window edge. If its value is zero, the default, Emacs scrolls the
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
505 window so as to center point. If its value is an integer, it says how
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
506 many columns to scroll. If the value is a floating-point number, it
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
507 gives the fraction of the window's width to scroll the window.
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
508
46936
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
509 The variable `automatic-hscrolling' was renamed to
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
510 `auto-hscroll-mode'. The old name is still available as an alias.
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
511
51505
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
512 ** TeX modes:
51374
31bb2083978b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51300
diff changeset
513 *** C-c C-c prompts for a command to run, and tries to offer a good default.
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
514 +++
50553
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
515 *** The user option `tex-start-options-string' has been replaced
44827
7ced19dba698 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44822
diff changeset
516 by two new user options: `tex-start-options', which should hold
7ced19dba698 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44822
diff changeset
517 command-line options to feed to TeX, and `tex-start-commands' which should hold
7ced19dba698 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44822
diff changeset
518 TeX commands to use at startup.
50553
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
519 *** verbatim environments are now highlighted in courier by font-lock
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
520 and super/sub-scripts are made into super/sub-scripts.
44827
7ced19dba698 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44822
diff changeset
521
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
522 *** New major mode doctex-mode for *.dtx files.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
523
43666
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
524 +++
50509
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
525 ** New display feature: focus follows the mouse from one Emacs window
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
526 to another, even within a frame. If you set the variable
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
527 mouse-autoselect-window to non-nil value, moving the mouse to a
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
528 different Emacs window will select that window (minibuffer window can
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
529 be selected only when it is active). The default is nil, so that this
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
530 feature is not enabled.
43345
1230529aa3ae *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 43302
diff changeset
531
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
532 +++
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
533 ** The new command `describe-char' (C-u C-x =) pops up a buffer with
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
534 description various information about a character, including its
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
535 encodings and syntax, its text properties, overlays, and widgets at
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
536 point. You can get more information about some of them, by clicking
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
537 on mouse-sensitive areas or moving there and pressing RET.
43297
48c78f4f57f1 Document describe-text-at.
Eli Zaretskii <eliz@gnu.org>
parents: 43263
diff changeset
538
44822
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
539 +++
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
540 ** The new command `multi-occur' is just like `occur', except it can
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
541 search multiple buffers. There is also a new command
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
542 `multi-occur-by-filename-regexp' which allows you to specify the
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
543 buffers to search by their filename. Internally, Occur mode has been
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
544 rewritten, and now uses font-lock, among other changes.
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
545
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
546 +++
43433
bacf1b0c4081 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 43415
diff changeset
547 ** Emacs normally highlights mouse sensitive text whenever the mouse
bacf1b0c4081 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 43415
diff changeset
548 is over the text. By setting the new variable `mouse-highlight', you
bacf1b0c4081 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 43415
diff changeset
549 can optionally enable mouse highlighting only after you move the
bacf1b0c4081 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 43415
diff changeset
550 mouse, so that highlighting disappears when you press a key. You can
bacf1b0c4081 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 43415
diff changeset
551 also disable mouse highlighting.
43375
7370da6d0364 Document new mouse-highlight variable and associated behaviour.
Kim F. Storm <storm@cua.dk>
parents: 43356
diff changeset
552
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
553 +++
43238
14e305b050b5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43217
diff changeset
554 ** font-lock: in modes like C and Lisp where the fontification assumes that
14e305b050b5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43217
diff changeset
555 an open-paren in column 0 is always outside of any string or comment,
14e305b050b5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43217
diff changeset
556 font-lock now highlights any such open-paren-in-column-zero in bold-red
14e305b050b5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43217
diff changeset
557 if it is inside a string or a comment, to indicate that it can cause
14e305b050b5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43217
diff changeset
558 trouble with fontification and/or indentation.
14e305b050b5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43217
diff changeset
559
43100
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
560 +++
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
561 ** There's a new face `minibuffer-prompt'.
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
562 Emacs adds this face to the list of text properties stored in the
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
563 variable `minibuffer-prompt-properties', which is used to display the
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
564 prompt string.
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
565
43263
6862a1a4bd8e *** empty log message ***
Eli Zaretskii <eliz@gnu.org>
parents: 43245
diff changeset
566 +++
43206
cc9c8c17538f Describe new mode-line-inactive face.
Kim F. Storm <storm@cua.dk>
parents: 43196
diff changeset
567 ** The new face `mode-line-inactive' is used to display the mode line
cc9c8c17538f Describe new mode-line-inactive face.
Kim F. Storm <storm@cua.dk>
parents: 43196
diff changeset
568 of non-selected windows. The `mode-line' face is now used to display
cc9c8c17538f Describe new mode-line-inactive face.
Kim F. Storm <storm@cua.dk>
parents: 43196
diff changeset
569 the mode line of the currently selected window.
cc9c8c17538f Describe new mode-line-inactive face.
Kim F. Storm <storm@cua.dk>
parents: 43196
diff changeset
570
43245
6a3915789e36 Describe mode-line-in-non-selected-windows variable.
Kim F. Storm <storm@cua.dk>
parents: 43238
diff changeset
571 The new variable `mode-line-in-non-selected-windows' controls whether
6a3915789e36 Describe mode-line-in-non-selected-windows variable.
Kim F. Storm <storm@cua.dk>
parents: 43238
diff changeset
572 the `mode-line-inactive' face is used.
6a3915789e36 Describe mode-line-in-non-selected-windows variable.
Kim F. Storm <storm@cua.dk>
parents: 43238
diff changeset
573
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
574 ---
43008
970e7e00f09a Mention "Show/Hide" menu.
Pavel Janík <Pavel@Janik.cz>
parents: 43001
diff changeset
575 ** A menu item "Show/Hide" was added to the top-level menu "Options".
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
576 This menu allows you to turn various display features on and off (such
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
577 as the fringes, the tool bar, the speedbar, and the menu bar itself).
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
578 You can also move the vertical scroll bar to either side here or turn
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
579 it off completely. There is also a menu-item to toggle displaying of
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
580 current date and time, current line and column number in the
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
581 mode-line.
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
582
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
583 ---
43383
d21a74d23497 2002-02-17 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents: 43375
diff changeset
584 ** Speedbar has moved from the "Tools" top level menu to "Show/Hide".
d21a74d23497 2002-02-17 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents: 43375
diff changeset
585
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
586 +++
50897
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
587 ** Emacs can now indicate in the mode-line the presence of new e-mail
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
588 in a directory or in a file. See the documentation of the user option
43009
a3b76a4ebe1c *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 43008
diff changeset
589 `display-time-mail-directory'.
43001
eb883dc8e44a display-time can now incicate new e-mail in directory.
Pavel Janík <Pavel@Janik.cz>
parents: 42990
diff changeset
590
42822
b2bfe0b4018b Advertise Info-scroll-prefer-subnodes.
Eli Zaretskii <eliz@gnu.org>
parents: 42820
diff changeset
591 +++
51928
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
592 ** The default value for `Info-scroll-prefer-subnodes' is now nil.
42822
b2bfe0b4018b Advertise Info-scroll-prefer-subnodes.
Eli Zaretskii <eliz@gnu.org>
parents: 42820
diff changeset
593
42786
66b0f6a32c47 LDAP support now defaults to ldapsearch from OpenLDAP version 2.
Pavel Janík <Pavel@Janik.cz>
parents: 42749
diff changeset
594 ---
66b0f6a32c47 LDAP support now defaults to ldapsearch from OpenLDAP version 2.
Pavel Janík <Pavel@Janik.cz>
parents: 42749
diff changeset
595 ** LDAP support now defaults to ldapsearch from OpenLDAP version 2.
66b0f6a32c47 LDAP support now defaults to ldapsearch from OpenLDAP version 2.
Pavel Janík <Pavel@Janik.cz>
parents: 42749
diff changeset
596
43045
39d6853f817c Mark the pc-selection-mode change as documented.
Eli Zaretskii <eliz@gnu.org>
parents: 43043
diff changeset
597 +++
43043
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
598 ** You can now disable pc-selection-mode after enabling it.
43045
39d6853f817c Mark the pc-selection-mode change as documented.
Eli Zaretskii <eliz@gnu.org>
parents: 43043
diff changeset
599 M-x pc-selection-mode behaves like a proper minor mode, and with no
43043
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
600 argument it toggles the mode.
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
601
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
602 Turning off PC-Selection mode restores the global key bindings
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
603 that were replaced by turning on the mode.
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
604
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
605 +++
45565
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
606 ** Emacs now displays a splash screen by default even if command-line
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
607 arguments were given. The new command-line option --no-splash
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
608 disables the splash screen; see also the variable
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
609 `inhibit-startup-message' (which is also aliased as
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
610 `inhibit-splash-screen').
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
611
42958
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
612 ** Changes in support of colors on character terminals
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
613
42729
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
614 +++
42958
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
615 *** The new command-line option --color=MODE lets you specify a standard
42749
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
616 mode for a tty color support. It is meant to be used on character
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
617 terminals whose capabilities are not set correctly in the terminal
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
618 database, or with terminal emulators which support colors, but don't
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
619 set the TERM environment variable to a name of a color-capable
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
620 terminal. "emacs --color" uses the same color commands as GNU `ls'
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
621 when invoked with "ls --color", so if your terminal can support colors
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
622 in "ls --color", it will support "emacs --color" as well. See the
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
623 user manual for the possible values of the MODE parameter.
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
624
42958
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
625 ---
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
626 *** Emacs now supports several character terminals which provide more
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
627 than 8 colors. For example, for `xterm', 16-color, 88-color, and
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
628 256-color modes are supported. Emacs automatically notes at startup
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
629 the extended number of colors, and defines the appropriate entries for
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
630 all of these colors.
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
631
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
632 ---
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
633 *** There's a new support for colors on `rxvt' terminal emulator.
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
634
42749
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
635 +++
42729
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
636 ** Emacs can now be invoked in full-screen mode on a windowed display.
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
637
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
638 When Emacs is invoked on a window system, the new command-line options
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
639 `--fullwidth', `--fullheight', and `--fullscreen' produce a frame
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
640 whose width, height, or both width and height take up the entire
45119
bb7bdd25e045 --fullscreen options supported on Windows too
Jason Rumney <jasonr@gnu.org>
parents: 45022
diff changeset
641 screen size. (For now, this does not work with some window managers.)
42729
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
642
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
643 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
644 ** Info-index offers completion.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
645
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
646 ---
45694
b31ffbdd8d11 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45692
diff changeset
647 ** Emacs now tries to set up buffer coding systems for HTML/XML files
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
648 automatically.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
649
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
650 +++
49658
b4b0014862b1 Fix misspelling of `comint-insert-previous-argument'.
John Paul Wallington <jpw@pobox.com>
parents: 49657
diff changeset
651 ** The new command `comint-insert-previous-argument' in comint-derived
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
652 modes (shell-mode etc) inserts arguments from previous command lines,
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
653 like bash's `ESC .' binding. It is bound by default to `C-c .', but
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
654 otherwise behaves quite similarly to the bash version.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
655
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
656 +++
42739
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
657 ** Changes in C-h bindings:
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
658
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
659 C-h e displays the *Messages* buffer.
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
660
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
661 C-h followed by a control character is used for displaying files
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
662 that do not change:
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
663
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
664 C-h C-f displays the FAQ.
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
665 C-h C-e displays the PROBLEMS file.
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
666
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
667 The info-search bindings on C-h C-f, C-h C-k and C-h C-i
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
668 have been moved to C-h F, C-h K and C-h S.
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
669
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
670 C-h c, C-h k, C-h w, and C-h f now handle remapped interactive commands.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
671
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
672 - C-h c and C-h k report the actual command (after possible remapping)
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
673 run by the key sequence.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
674
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
675 - C-h w and C-h f on a command which has been remapped now report the
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
676 command it is remapped to, and the keys which can be used to run
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
677 that command.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
678
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
679 For example, if C-k is bound to kill-line, and kill-line is remapped
43724
16affaf7292b etags honours #line directives.
Francesco Potortì <pot@gnu.org>
parents: 43666
diff changeset
680 to new-kill-line, these commands now report:
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
681
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
682 - C-h c and C-h k C-k reports:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
683 C-k runs the command new-kill-line
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
684
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
685 - C-h w and C-h f kill-line reports:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
686 kill-line is remapped to new-kill-line which is on C-k, <deleteline>
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
687
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
688 - C-h w and C-h f new-kill-line reports:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
689 new-kill-line is on C-k
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
690
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
691 +++
41928
31fb6b379d0f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41923
diff changeset
692 ** C-w in incremental search now grabs either a character or a word,
31fb6b379d0f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41923
diff changeset
693 making the decision in a heuristic way. This new job is done by the
31fb6b379d0f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41923
diff changeset
694 command `isearch-yank-word-or-char'. To restore the old behavior,
31fb6b379d0f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41923
diff changeset
695 bind C-w to `isearch-yank-word' in `isearch-mode-map'.
31fb6b379d0f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41923
diff changeset
696
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
697 +++
44680
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
698 ** Yanking text now discards certain text properties that can
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
699 be inconvenient when you did not expect them. The variable
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
700 `yank-excluded-properties' specifies which ones. Insertion
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
701 of register contents and rectangles also discards these properties.
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
702
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
703 +++
45565
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
704 ** Occur, Info, and comint-derived modes now support using
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
705 M-x font-lock-mode to toggle fontification. The variable
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
706 `Info-fontify' is no longer applicable; to disable fontification,
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
707 remove `turn-on-font-lock' from `Info-mode-hook'.
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
708
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
709 +++
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
710 ** M-x grep now tries to avoid appending `/dev/null' to the command line
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
711 by using GNU grep `-H' option instead. M-x grep will automatically
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
712 detect whether this is possible or not the first time it is invoked.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
713 When `-H' is used, the grep command line supplied by the user is passed
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
714 unchanged to the system to execute, which allows more complicated
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
715 command lines to be used than was possible before.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
716
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
717 ---
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
718 ** The face-customization widget has been reworked to be less confusing.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
719 In particular, when you enable a face attribute using the corresponding
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
720 check-box, there's no longer a redundant `*' option in value selection
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
721 for that attribute; the values you can choose are only those which make
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
722 sense for the attribute. When an attribute is de-selected by unchecking
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
723 its check-box, then the (now ignored, but still present temporarily in
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
724 case you re-select the attribute) value is hidden.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
725
47537
b7761880867f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47506
diff changeset
726 +++
47506
7281e0917f10 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47485
diff changeset
727 ** When you set or reset a variable's value in a Customize buffer,
7281e0917f10 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47485
diff changeset
728 the previous value becomes the "backup value" of the variable.
7281e0917f10 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47485
diff changeset
729 You can go back to that backup value by selecting "Use Backup Value"
7281e0917f10 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47485
diff changeset
730 under the "[State]" button.
7281e0917f10 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47485
diff changeset
731
48735
f5f4f758df8e New customization type `float'.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48728
diff changeset
732 ** The new customization type `float' specifies numbers with floating
f5f4f758df8e New customization type `float'.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48728
diff changeset
733 point (no integers are allowed).
f5f4f758df8e New customization type `float'.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48728
diff changeset
734
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
735 +++
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
736 ** In GUD mode, when talking to GDB, C-x C-a C-j "jumps" the program
41923
86ecd07d46fb *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41847
diff changeset
737 counter to the specified source line (the one where point is).
86ecd07d46fb *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41847
diff changeset
738
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
739 ---
42874
95d25103a45e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42867
diff changeset
740 ** GUD mode improvements for jdb:
42830
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
741
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
742 *** Search for source files using jdb classpath and class
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
743 information. Fast startup since there is no need to scan all
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
744 source files up front. There is also no need to create and maintain
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
745 lists of source directories to scan. Look at `gud-jdb-use-classpath'
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
746 and `gud-jdb-classpath' customization variables documentation.
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
747
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
748 *** Supports the standard breakpoint (gud-break, gud-clear)
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
749 set/clear operations from java source files under the classpath, stack
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
750 traversal (gud-up, gud-down), and run until current stack finish
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
751 (gud-finish).
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
752
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
753 *** Supports new jdb (Java 1.2 and later) in addition to oldjdb
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
754 (Java 1.1 jdb).
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
755
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
756 *** The previous method of searching for source files has been
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
757 preserved in case someone still wants/needs to use it.
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
758 Set gud-jdb-use-classpath to nil.
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
759
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
760 Added Customization Variables
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
761
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
762 *** gud-jdb-command-name. What command line to use to invoke jdb.
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
763
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
764 *** gud-jdb-use-classpath. Allows selection of java source file searching
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
765 method: set to t for new method, nil to scan gud-jdb-directories for
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
766 java sources (previous method).
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
767
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
768 *** gud-jdb-directories. List of directories to scan and search for java
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
769 classes using the original gud-jdb method (if gud-jdb-use-classpath
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
770 is nil).
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
771
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
772 Minor Improvements
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
773
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
774 *** Do not allow debugger output history variable to grow without bounds.
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
775
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
776 +++
41620
d5ea676e4052 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41596
diff changeset
777 ** hide-ifdef-mode now uses overlays rather than selective-display
d5ea676e4052 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41596
diff changeset
778 to hide its text. This should be mostly transparent but slightly
d5ea676e4052 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41596
diff changeset
779 changes the behavior of motion commands line C-e and C-p.
d5ea676e4052 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41596
diff changeset
780
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
781 +++
42677
449f96bbb6d0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42629
diff changeset
782 ** In Dired's ! command (dired-do-shell-command), `*' and `?' now
449f96bbb6d0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42629
diff changeset
783 control substitution of the file names only when they are surrounded
449f96bbb6d0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42629
diff changeset
784 by whitespace. This means you can now use them as shell wildcards
42678
3e3348e192cf *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42677
diff changeset
785 too. If you want to use just plain `*' as a wildcard, type `*""'; the
42681
b683f98f263a *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42678
diff changeset
786 doublequotes make no difference in the shell, but they prevent
42678
3e3348e192cf *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42677
diff changeset
787 special treatment in `dired-do-shell-command'.
42677
449f96bbb6d0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42629
diff changeset
788
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
789 +++
44477
5bcb255d9dc5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44431
diff changeset
790 ** Dired's v command now runs external viewers to view certain
5bcb255d9dc5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44431
diff changeset
791 types of files. The variable `dired-view-command-alist' controls
5bcb255d9dc5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44431
diff changeset
792 what external viewers to use and when.
5bcb255d9dc5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44431
diff changeset
793
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
794 +++
41596
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
795 ** Unquoted `$' in file names do not signal an error any more when
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
796 the corresponding environment variable does not exist.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
797 Instead, the `$ENVVAR' text is left as is, so that `$$' quoting
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
798 is only rarely needed.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
799
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
800 ---
41337
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
801 ** jit-lock can now be delayed with `jit-lock-defer-time'.
41501
994a9d1eee71 Minor change of wording in the documentation of jit-lock-defer-time.
Eli Zaretskii <eliz@gnu.org>
parents: 41482
diff changeset
802
994a9d1eee71 Minor change of wording in the documentation of jit-lock-defer-time.
Eli Zaretskii <eliz@gnu.org>
parents: 41482
diff changeset
803 If this variable is non-nil, its value should be the amount of Emacs
42183
ccf68d58861d Fix typos. From Juanma Barranquero <lektu@teleline.es>.
Pavel Janík <Pavel@Janik.cz>
parents: 42160
diff changeset
804 idle time in seconds to wait before starting fontification. For
41501
994a9d1eee71 Minor change of wording in the documentation of jit-lock-defer-time.
Eli Zaretskii <eliz@gnu.org>
parents: 41482
diff changeset
805 example, if you set `jit-lock-defer-time' to 0.25, fontification will
994a9d1eee71 Minor change of wording in the documentation of jit-lock-defer-time.
Eli Zaretskii <eliz@gnu.org>
parents: 41482
diff changeset
806 only happen after 0.25s of idle time.
41337
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
807
43301
898b4b31410f * lisp/simple.el (mark-word): Mark more if repeated.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43297
diff changeset
808 +++
898b4b31410f * lisp/simple.el (mark-word): Mark more if repeated.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43297
diff changeset
809 ** Marking commands extend the region when invoked multiple times. If
898b4b31410f * lisp/simple.el (mark-word): Mark more if repeated.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43297
diff changeset
810 you hit M-C-SPC (mark-sexp), M-@ (mark-word), M-h (mark-paragraph), or
898b4b31410f * lisp/simple.el (mark-word): Mark more if repeated.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43297
diff changeset
811 C-M-h (mark-defun) repeatedly, the marked region will now be extended
898b4b31410f * lisp/simple.el (mark-word): Mark more if repeated.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43297
diff changeset
812 each time, so you can mark the next two sexps with M-C-SPC M-C-SPC,
898b4b31410f * lisp/simple.el (mark-word): Mark more if repeated.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43297
diff changeset
813 for example. This feature also works for mark-end-of-sentence, if you
898b4b31410f * lisp/simple.el (mark-word): Mark more if repeated.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43297
diff changeset
814 bind that to a key.
41298
dd0332958888 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41246
diff changeset
815
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
816 +++
44655
13e9258cbefb *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44625
diff changeset
817 ** Some commands do something special in Transient Mark mode when the
13e9258cbefb *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44625
diff changeset
818 mark is active--for instance, they limit their operation to the
13e9258cbefb *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44625
diff changeset
819 region. Even if you don't normally use Transient Mark mode, you might
13e9258cbefb *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44625
diff changeset
820 want to get this behavior from a particular command. There are two
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
821 ways you can enable Transient Mark mode and activate the mark, for one
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
822 command only.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
823
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
824 One method is to type C-SPC C-SPC; this enables Transient Mark mode
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
825 and sets the mark at point. The other method is to type C-u C-x C-x.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
826 This enables Transient Mark mode temporarily but does not alter the
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
827 mark or the region.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
828
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
829 After these commands, Transient Mark mode remains enabled until you
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
830 deactivate the mark. That typically happens when you type a command
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
831 that alters the buffer, but you can also deactivate the mark by typing
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
832 C-g.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
833
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
834 +++
44589
cff126affe7f Enhancements to set-mark-command and exchange-point-and-mark.
Kim F. Storm <storm@cua.dk>
parents: 44477
diff changeset
835 ** A prefix argument is no longer required to repeat a jump to a
cff126affe7f Enhancements to set-mark-command and exchange-point-and-mark.
Kim F. Storm <storm@cua.dk>
parents: 44477
diff changeset
836 previous mark, i.e. C-u C-SPC C-SPC C-SPC ... will cycle through the
cff126affe7f Enhancements to set-mark-command and exchange-point-and-mark.
Kim F. Storm <storm@cua.dk>
parents: 44477
diff changeset
837 mark ring. Use C-u C-u C-SPC to set the mark immediately after a jump.
cff126affe7f Enhancements to set-mark-command and exchange-point-and-mark.
Kim F. Storm <storm@cua.dk>
parents: 44477
diff changeset
838
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
839 +++
42605
32e40100d0de *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42487
diff changeset
840 ** In the *Occur* buffer, `o' switches to it in another window, and
32e40100d0de *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42487
diff changeset
841 C-o displays the current line's occurrence in another window without
32e40100d0de *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42487
diff changeset
842 switching to it.
42299
4bc3e5620674 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42281
diff changeset
843
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
844 +++
42299
4bc3e5620674 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42281
diff changeset
845 ** When you specify a frame size with --geometry, the size applies to
4bc3e5620674 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42281
diff changeset
846 all frames you create. A position specified with --geometry only
4bc3e5620674 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42281
diff changeset
847 affects the initial frame.
4bc3e5620674 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42281
diff changeset
848
41746
6d817b78bf33 Document prefix arg for M-h.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 41730
diff changeset
849 +++
42183
ccf68d58861d Fix typos. From Juanma Barranquero <lektu@teleline.es>.
Pavel Janík <Pavel@Janik.cz>
parents: 42160
diff changeset
850 ** M-h (mark-paragraph) now accepts a prefix arg.
ccf68d58861d Fix typos. From Juanma Barranquero <lektu@teleline.es>.
Pavel Janík <Pavel@Janik.cz>
parents: 42160
diff changeset
851 With positive arg, M-h marks the current and the following paragraphs;
41748
0302528bddbc Fix wording of the last change.
Eli Zaretskii <eliz@gnu.org>
parents: 41746
diff changeset
852 if the arg is negative, it marks the current and the preceding
0302528bddbc Fix wording of the last change.
Eli Zaretskii <eliz@gnu.org>
parents: 41746
diff changeset
853 paragraphs.
41746
6d817b78bf33 Document prefix arg for M-h.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 41730
diff changeset
854
42101
66b4582e344c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42043
diff changeset
855 ** In Dired, the w command now copies the current line's file name
66b4582e344c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42043
diff changeset
856 into the kill ring.
66b4582e344c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42043
diff changeset
857
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
858 +++
42160
530136f9f1b9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42101
diff changeset
859 ** The variables dired-free-space-program and dired-free-space-args
530136f9f1b9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42101
diff changeset
860 have been renamed to directory-free-space-program and
530136f9f1b9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42101
diff changeset
861 directory-free-space-args, and they now apply whenever Emacs puts a
530136f9f1b9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42101
diff changeset
862 directory listing into a buffer.
530136f9f1b9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42101
diff changeset
863
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
864 ---
41298
dd0332958888 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41246
diff changeset
865 ** mouse-wheels can now scroll a specific fraction of the window
dd0332958888 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41246
diff changeset
866 (rather than a fixed number of lines) and the scrolling is `progressive'.
dd0332958888 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41246
diff changeset
867
48575
691ba5e96011 mwheel.el change.
Kim F. Storm <storm@cua.dk>
parents: 48501
diff changeset
868 ** Unexpected yanking of text due to accidental clicking on the mouse
691ba5e96011 mwheel.el change.
Kim F. Storm <storm@cua.dk>
parents: 48501
diff changeset
869 wheel button (typically mouse-2) during wheel scrolling is now avoided.
691ba5e96011 mwheel.el change.
Kim F. Storm <storm@cua.dk>
parents: 48501
diff changeset
870 This behaviour can be customized via the mouse-wheel-click-event and
691ba5e96011 mwheel.el change.
Kim F. Storm <storm@cua.dk>
parents: 48501
diff changeset
871 mouse-wheel-inhibit-click-time variables.
691ba5e96011 mwheel.el change.
Kim F. Storm <storm@cua.dk>
parents: 48501
diff changeset
872
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
873 +++
48899
d684f5bc91b8 keyboard-coding-system, optimize-char-coding-system-table
Dave Love <fx@gnu.org>
parents: 48886
diff changeset
874 ** The keyboard-coding-system is now automatically set based on your
d684f5bc91b8 keyboard-coding-system, optimize-char-coding-system-table
Dave Love <fx@gnu.org>
parents: 48886
diff changeset
875 current locale settings if you are not using a window system. This
d684f5bc91b8 keyboard-coding-system, optimize-char-coding-system-table
Dave Love <fx@gnu.org>
parents: 48886
diff changeset
876 may mean that the META key doesn't work but generates non-ASCII
d684f5bc91b8 keyboard-coding-system, optimize-char-coding-system-table
Dave Love <fx@gnu.org>
parents: 48886
diff changeset
877 characters instead, depending on how the terminal (or terminal
d684f5bc91b8 keyboard-coding-system, optimize-char-coding-system-table
Dave Love <fx@gnu.org>
parents: 48886
diff changeset
878 emulator) works. Use `set-keyboard-coding-system' (or customize
d684f5bc91b8 keyboard-coding-system, optimize-char-coding-system-table
Dave Love <fx@gnu.org>
parents: 48886
diff changeset
879 keyboard-coding-system) if you prefer META to work (the old default)
d684f5bc91b8 keyboard-coding-system, optimize-char-coding-system-table
Dave Love <fx@gnu.org>
parents: 48886
diff changeset
880 or if the locale doesn't describe the character set actually generated
d684f5bc91b8 keyboard-coding-system, optimize-char-coding-system-table
Dave Love <fx@gnu.org>
parents: 48886
diff changeset
881 by the keyboard. See Info node `Single-Byte Character Support'.
41229
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
882
40916
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
883 +++
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
884 ** Emacs now reads the standard abbrevs file ~/.abbrev_defs
41816
51c83c94195a Fix wording of the save-abbrevs feature; from RMS.
Eli Zaretskii <eliz@gnu.org>
parents: 41756
diff changeset
885 automatically at startup, if it exists. When Emacs offers to save
51c83c94195a Fix wording of the save-abbrevs feature; from RMS.
Eli Zaretskii <eliz@gnu.org>
parents: 41756
diff changeset
886 modified buffers, it saves the abbrevs too if they have changed. It
51c83c94195a Fix wording of the save-abbrevs feature; from RMS.
Eli Zaretskii <eliz@gnu.org>
parents: 41756
diff changeset
887 can do this either silently or asking for confirmation first,
41820
18047a55e5c7 *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 41816
diff changeset
888 according to the value of `save-abbrevs'.
40916
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
889
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
890 +++
40729
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
891 ** Display of hollow cursors now obeys the buffer-local value (if any)
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
892 of `cursor-in-non-selected-windows' in the buffer that the cursor
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
893 appears in.
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
894
47172
dfcd4fdf6fb0 cursor-in-non-selected-windows can now be any cursor type.
Kim F. Storm <storm@cua.dk>
parents: 47158
diff changeset
895 ** The variable `cursor-in-non-selected-windows' can now be set to any
dfcd4fdf6fb0 cursor-in-non-selected-windows can now be any cursor type.
Kim F. Storm <storm@cua.dk>
parents: 47158
diff changeset
896 of the recognized cursor types.
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
897
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
898 ---
44718
e1f429a4cfd7 Variable auto-save-file-name-transforms now has a third element.
Glenn Morris <rgm@gnu.org>
parents: 44694
diff changeset
899 ** The variable `auto-save-file-name-transforms' now has a third element that
e1f429a4cfd7 Variable auto-save-file-name-transforms now has a third element.
Glenn Morris <rgm@gnu.org>
parents: 44694
diff changeset
900 controls whether or not the function `make-auto-save-file-name' will
e1f429a4cfd7 Variable auto-save-file-name-transforms now has a third element.
Glenn Morris <rgm@gnu.org>
parents: 44694
diff changeset
901 attempt to construct a unique auto-save name (e.g. for remote files).
e1f429a4cfd7 Variable auto-save-file-name-transforms now has a third element.
Glenn Morris <rgm@gnu.org>
parents: 44694
diff changeset
902
46736
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
903 +++
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
904 ** Diary sexp entries can have custom marking in the calendar.
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
905 Diary sexp functions which only apply to certain days (such as
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
906 `diary-block' or `diary-cyclic' now take an optional parameter MARK,
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
907 which is the name of a face or a single-character string indicating
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
908 how to highlight the day in the calendar display. Specifying a
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
909 single-character string as @var{mark} places the character next to the
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
910 day in the calendar. Specifying a face highlights the day with that
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
911 face. This lets you have different colors or markings for vacations,
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
912 appointments, paydays or anything else using a sexp.
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
913
52233
20e27d5ca4c8 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52214
diff changeset
914 +++
20e27d5ca4c8 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52214
diff changeset
915 ** The new function `calendar-goto-day-of-year' (g D) prompts for a
20e27d5ca4c8 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52214
diff changeset
916 year and day number, and moves to that date. Negative day numbers
20e27d5ca4c8 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52214
diff changeset
917 count backward from the end of the year.
20e27d5ca4c8 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52214
diff changeset
918
52413
2aa1900aa34c *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52407
diff changeset
919 ** The function `simple-diary-display' now by default sets a header line.
2aa1900aa34c *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52407
diff changeset
920 This can be controlled through the variables `diary-header-line-flag'
2aa1900aa34c *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52407
diff changeset
921 and `diary-header-line-format'.
2aa1900aa34c *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52407
diff changeset
922
44199
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
923 ** VC Changes
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
924
46456
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
925 *** The key C-x C-q no longer checks files in or out, it only changes
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
926 the read-only state of the buffer (toggle-read-only). We made this
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
927 change because we held a poll and found that many users were unhappy
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
928 with the previous behavior. If you do prefer this behavior, you
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
929 can bind `vc-toggle-read-only' to C-x C-q in your .emacs:
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
930
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
931 (global-set-key "\C-x\C-q" 'vc-toggle-read-only)
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
932
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
933 The function `vc-toggle-read-only' will continue to exist.
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
934
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
935 +++
44199
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
936 *** There is a new user option `vc-cvs-global-switches' that allows
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
937 you to specify switches that are passed to any CVS command invoked
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
938 by VC. These switches are used as "global options" for CVS, which
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
939 means they are inserted before the command name. For example, this
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
940 allows you to specify a compression level using the "-z#" option for
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
941 CVS.
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
942
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
943 *** New backends for Subversion and Meta-CVS.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
944
44030
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
945 ** EDiff changes.
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
946
44058
b52e085be218 added +++'s
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44030
diff changeset
947 +++
44030
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
948 *** When comparing directories.
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
949 Typing D brings up a buffer that lists the differences between the contents of
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
950 directories. Now it is possible to use this buffer to copy the missing files
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
951 from one directory to another.
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
952
44058
b52e085be218 added +++'s
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44030
diff changeset
953 +++
44030
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
954 *** When comparing files or buffers.
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
955 Typing the = key now offers to perform the word-by-word comparison of the
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
956 currently highlighted regions in an inferior Ediff session. If you answer 'n'
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
957 then it reverts to the old behavior and asks the user to select regions for
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
958 comparison.
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
959
48736
5fc281abe34e Increase outline level of description `ediff-backup' by one *.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48735
diff changeset
960 *** The new command `ediff-backup' compares a file with its most recent
46936
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
961 backup using `ediff'. If you specify the name of a backup file,
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
962 `ediff-backup' compares it with the file of which it is a backup.
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
963
46028
278093843f21 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45997
diff changeset
964 +++
42043
0fe5fe39786c Etags changes for Prolog and PHP.
Francesco Potortì <pot@gnu.org>
parents: 41928
diff changeset
965 ** Etags changes.
0fe5fe39786c Etags changes for Prolog and PHP.
Francesco Potortì <pot@gnu.org>
parents: 41928
diff changeset
966
45828
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
967 *** New regular expressions features
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
968
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
969 **** New syntax for regular expressions, multi-line regular expressions.
45802
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
970 The syntax --ignore-case-regexp=/regex/ is now undocumented and retained
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
971 only for backward compatibility. The new equivalent syntax is
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
972 --regex=/regex/i. More generally, it is --regex=/TAGREGEX/TAGNAME/MODS,
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
973 where `/TAGNAME' is optional, as usual, and MODS is a string of 0 or
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
974 more characters among `i' (ignore case), `m' (multi-line) and `s'
45800
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
975 (single-line). The `m' and `s' modifiers behave as in Perl regular
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
976 expressions: `m' allows regexps to match more than one line, while `s'
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
977 (which implies `m') means that `.' matches newlines. The ability to
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
978 span newlines allows writing of much more powerful regular expressions
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
979 and rapid prototyping for tagging new languages.
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
980
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
981 **** Regular expressions can use char escape sequences as in Gcc.
45800
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
982 The escaped character sequence \a, \b, \d, \e, \f, \n, \r, \t, \v,
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
983 respectively, stand for the ASCII characters BEL, BS, DEL, ESC, FF, NL,
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
984 CR, TAB, VT,
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
985
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
986 **** Regular expressions can be bound to a given language.
45802
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
987 The syntax --regex={LANGUAGE}REGEX means that REGEX is used to make tags
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
988 only for files of language LANGUAGE, and ignored otherwise. This is
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
989 particularly useful when storing regexps in a file.
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
990
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
991 **** Regular expressions can be read from a file.
45802
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
992 The --regex=@regexfile option means read the regexps from a file, one
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
993 per line. Lines beginning with space or tab are ignored.
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
994
45828
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
995 *** New language parsing features
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
996
47158
6ec82a0927f2 Etags improvement.
Francesco Potortì <pot@gnu.org>
parents: 47096
diff changeset
997 **** The `::' qualifier triggers C++ parsing in C file.
6ec82a0927f2 Etags improvement.
Francesco Potortì <pot@gnu.org>
parents: 47096
diff changeset
998 Previously, only the `template' and `class' keywords had this effect.
6ec82a0927f2 Etags improvement.
Francesco Potortì <pot@gnu.org>
parents: 47096
diff changeset
999
45828
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
1000 **** In Perl, packages are tags.
43855
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1001 Subroutine tags are named from their package. You can jump to sub tags
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1002 as you did before, by the sub name, or additionally by looking for
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1003 package::sub.
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1004
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1005 **** New language PHP.
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1006 Tags are functions, classes and defines.
45919
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
1007 If the --members option is specified to etags, tags are vars also.
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
1008
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1009 **** New language HTML.
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1010 Title and h1, h2, h3 are tagged. Also, tags are generated when name= is
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1011 used inside an anchor and whenever id= is used.
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1012
45828
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
1013 **** New default keywords for TeX.
45661
a47ac7311101 Document new default keywords for TeX.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
1014 The new keywords are def, newcommand, renewcommand, newenvironment and
a47ac7311101 Document new default keywords for TeX.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
1015 renewenvironment.
a47ac7311101 Document new default keywords for TeX.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
1016
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1017 **** In Makefiles, constants are tagged.
46989
eeab5bdaffa2 Fix typos.
Richard M. Stallman <rms@gnu.org>
parents: 46962
diff changeset
1018 If you want the old behavior instead, thus avoiding to increase the
45919
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
1019 size of the tags file, use the --no-globals option.
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
1020
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
1021 **** In Prolog, etags creates tags for rules in addition to predicates.
43855
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1022
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1023 *** Honour #line directives.
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1024 When Etags parses an input file that contains C preprocessor's #line
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1025 directives, it creates tags using the file name and line number
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1026 specified in those directives. This is useful when dealing with code
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1027 created from Cweb source files. When Etags tags the generated file, it
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1028 writes tags pointing to the source file.
43724
16affaf7292b etags honours #line directives.
Francesco Potortì <pot@gnu.org>
parents: 43666
diff changeset
1029
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1030 *** New option --parse-stdin=FILE.
45661
a47ac7311101 Document new default keywords for TeX.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
1031 This option is mostly useful when calling etags from programs. It can
45660
cfab79b5f578 Better English, I hope.
Francesco Potortì <pot@gnu.org>
parents: 45657
diff changeset
1032 be used (only once) in place of a file name on the command line. Etags
45661
a47ac7311101 Document new default keywords for TeX.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
1033 will read from standard input and mark the produced tags as belonging to
a47ac7311101 Document new default keywords for TeX.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
1034 the file FILE.
45657
77cb605109fc Document --parse-stdin=FILE for Etags.
Francesco Potortì <pot@gnu.org>
parents: 45614
diff changeset
1035
40493
94818b20da05 Document the change in list-buffers-noselect wrt buffers visiting files
Eli Zaretskii <eliz@gnu.org>
parents: 40487
diff changeset
1036 +++
51715
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1037 ** CC Mode changes.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1038
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1039 *** Font lock support.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1040 CC Mode now provides font lock support for all its languages. This
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1041 supersedes the font lock patterns that have been in the core font lock
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1042 package for C, C++, Java and Objective-C. Like indentation, font
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1043 locking is done in a uniform way across all languages (except the new
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1044 AWK mode - see below). That means that the new font locking will be
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1045 different from the old patterns in various details for most languages.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1046
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1047 The main goal of the font locking in CC Mode is accuracy, to provide a
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1048 dependable aid in recognizing the various constructs. Some, like
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1049 strings and comments, are easy to recognize while others like
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1050 declarations and types can be very tricky. CC Mode can go to great
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1051 lengths to recognize declarations and casts correctly, especially when
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1052 the types aren't recognized by standard patterns. This is a fairly
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1053 demanding analysis which can be slow on older hardware, and it can
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1054 therefore be disabled by choosing a lower decoration level with the
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1055 variable font-lock-maximum-decoration.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1056
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1057 Note that the most demanding font lock level has been tuned with lazy
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1058 fontification in mind, i.e. there should be a support mode that waits
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1059 with the fontification until the text is actually shown
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1060 (e.g. Just-in-time Lock mode, which is the default, or Lazy Lock
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1061 mode). Fontifying a file with several thousand lines in one go can
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1062 take the better part of a minute.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1063
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1064 **** The (c|c++|objc|java|idl|pike)-font-lock-extra-types variables
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1065 are now used by CC Mode to recognize identifiers that are certain to
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1066 be types. (They are also used in cases that aren't related to font
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1067 locking.) At the maximum decoration level, types are often recognized
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1068 properly anyway, so these variables should be fairly restrictive and
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1069 not contain patterns for uncertain types.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1070
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1071 **** Support for documentation comments.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1072 There is a "plugin" system to fontify documentation comments like
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1073 Javadoc and the markup within them. It's independent of the host
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1074 language, so it's possible to e.g. turn on Javadoc font locking in C
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1075 buffers. See the variable c-doc-comment-style for details.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1076
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1077 Currently two kinds of doc comment styles are recognized: Suns Javadoc
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1078 and Autodoc which is used in Pike. This is by no means a complete
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1079 list of the most common tools; if your doc comment extractor of choice
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1080 is missing then please drop a note to bug-cc-mode@gnu.org.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1081
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1082 **** Better handling of C++ templates.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1083 As a side effect of the more accurate font locking, C++ templates are
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1084 now handled much better. The angle brackets that delimit them are
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1085 given parenthesis syntax so that they can be navigated like other
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1086 parens.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1087
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1088 This also improves indentation of templates, although there still is
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1089 work to be done in that area. E.g. it's required that multiline
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1090 template clauses are written in full and then refontified to be
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1091 recognized, and the indentation of nested templates is a bit odd and
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1092 not as configurable as it ought to be.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1093
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1094 **** Improved handling of Objective-C and CORBA IDL.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1095 Especially the support for Objective-C and IDL has gotten an overhaul.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1096 The special "@" declarations in Objective-C are handled correctly.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1097 All the keywords used in CORBA IDL, PSDL, and CIDL are recognized and
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1098 handled correctly, also wrt indentation.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1099
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1100 *** Support for the AWK language.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1101 Support for the AWK language has been introduced. The implementation is
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1102 based around GNU AWK version 3.1, but it should work pretty well with
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1103 any AWK. As yet, not all features of CC Mode have been adapted for AWK.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1104 Here is a summary:
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1105
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1106 **** Indentation Engine
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1107 The CC Mode indentation engine fully supports AWK mode.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1108
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1109 AWK mode handles code formatted in the conventional AWK fashion: `{'s
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1110 which start actions, user-defined functions, or compound statements are
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1111 placed on the same line as the associated construct; the matching `}'s
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1112 are normally placed under the start of the respective pattern, function
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1113 definition, or structured statement.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1114
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1115 The predefined indentation functions haven't yet been adapted for AWK
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1116 mode, though some of them may work serendipitously. There shouldn't be
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1117 any problems writing custom indentation functions for AWK mode.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1118
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1119 The command C-c C-q (c-indent-defun) hasn't yet been adapted for AWK,
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1120 though in practice it works properly nearly all the time. Should it
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1121 fail, explicitly set the region around the function (using C-u C-SPC:
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1122 C-M-h probably won't work either) then do C-M-\ (indent-region).
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1123
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1124 **** Font Locking
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1125 There is a single level of font locking in AWK mode, rather than the
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1126 three distinct levels the other modes have. There are several
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1127 idiosyncrasies in AWK mode's font-locking due to the peculiarities of
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1128 the AWK language itself.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1129
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1130 **** Comment Commands
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1131 M-; (indent-for-comment) works fine. None of the other CC Mode
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1132 comment formatting commands have yet been adapted for AWK mode.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1133
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1134 **** Movement Commands
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1135 Most of the movement commands work in AWK mode. The most important
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1136 exceptions are M-a (c-beginning-of-statement) and M-e
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1137 (c-end-of-statement) which haven't yet been adapted.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1138
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1139 The notion of "defun" has been augmented to include AWK pattern-action
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1140 pairs. C-M-a (c-awk-beginning-of-defun) and C-M-e (c-awk-end-of-defun)
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1141 recognise these pattern-action pairs, as well as user defined
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1142 functions.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1143
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1144 **** Auto-newline Insertion and Clean-ups
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1145 Auto-newline insertion hasn't yet been adapted for AWK. Some of
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1146 the clean-ups can actually convert good AWK code into syntactically
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1147 invalid code. These features are best disabled in AWK buffers.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1148
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1149 *** New syntactic symbols in IDL mode.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1150 The top level constructs "module" and "composition" (from CIDL) are
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1151 now handled like "namespace" in C++: They are given syntactic symbols
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1152 module-open, module-close, inmodule, composition-open,
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1153 composition-close, and incomposition.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1154
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1155 *** New functions to do hungry delete without enabling hungry delete mode.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1156 The functions c-hungry-backspace and c-hungry-delete-forward can be
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1157 bound to keys to get this feature without toggling a mode.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1158 Contributed by Kevin Ryde.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1159
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1160 *** Better control over require-final-newline.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1161 The variable that controls how to handle a final newline when the
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1162 buffer is saved, require-final-newline, is now customizable on a
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1163 per-mode basis through c-require-final-newline. The default is to set
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1164 it to t only in languages that mandate a final newline in source files
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1165 (C, C++ and Objective-C).
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1166
51831
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1167 *** Format change for syntactic context elements.
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1168 The elements in the syntactic context returned by c-guess-basic-syntax
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1169 and stored in c-syntactic-context has been changed somewhat to allow
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1170 attaching more information. They are now lists instead of single cons
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1171 cells. E.g. a line that previously had the syntactic analysis
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1172
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1173 ((inclass . 11) (topmost-intro . 13))
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1174
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1175 is now analysed as
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1176
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1177 ((inclass 11) (topmost-intro 13))
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1178
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1179 In some cases there are more than one position given for a syntactic
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1180 symbol.
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1181
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1182 This change might affect code that call c-guess-basic-syntax directly,
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1183 and custom lineup functions if they use c-syntactic-context. However,
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1184 the argument given to lineup functions is still a single cons cell
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1185 with nil or an integer in the cdr.
51715
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1186
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1187 *** API changes for derived modes.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1188 There have been extensive changes "under the hood" which can affect
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1189 derived mode writers. Some of these changes are likely to cause
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1190 incompatibilities with existing derived modes, but on the other hand
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1191 care has now been taken to make it possible to extend and modify CC
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1192 Mode with less risk of such problems in the future.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1193
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1194 **** New language variable system.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1195 See the comment blurb near the top of cc-langs.el.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1196
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1197 **** New initialization functions.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1198 The initialization procedure has been split up into more functions to
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1199 give better control: c-basic-common-init, c-font-lock-init, and
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1200 c-init-language-vars.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1201
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1202 *** Changes in analysis of nested syntactic constructs.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1203 The syntactic analysis engine has better handling of cases where
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1204 several syntactic constructs appear nested on the same line. They are
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1205 now handled as if each construct started on a line of its own.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1206
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1207 This means that CC Mode now indents some cases differently, and
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1208 although it's more consistent there might be cases where the old way
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1209 gave results that's more to one's liking. So if you find a situation
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1210 where you think that the indentation has become worse, please report
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1211 it to bug-cc-mode@gnu.org.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1212
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1213 **** New syntactic symbol substatement-label.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1214 This symbol is used when a label is inserted between a statement and
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1215 its substatement. E.g:
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1216
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1217 if (x)
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1218 x_is_true:
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1219 do_stuff();
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1220
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1221 *** Better handling of multiline macros.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1222
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1223 **** Syntactic indentation inside macros.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1224 The contents of multiline #define's are now analyzed and indented
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1225 syntactically just like other code. This can be disabled by the new
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1226 variable c-syntactic-indentation-in-macros. A new syntactic symbol
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1227 cpp-define-intro has been added to control the initial indentation
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1228 inside #define's.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1229
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1230 **** New lineup function c-lineup-cpp-define.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1231 Now used by default to line up macro continuation lines. The behavior
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1232 of this function closely mimics the indentation one gets if the macro
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1233 is indented while the line continuation backslashes are temporarily
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1234 removed. If syntactic indentation in macros is turned off, it works
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1235 much line c-lineup-dont-change, which was used earlier, but handles
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1236 empty lines within the macro better.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1237
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1238 **** Automatically inserted newlines continues the macro if used within one.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1239 This applies to the newlines inserted by the auto-newline mode, and to
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1240 c-context-line-break and c-context-open-line.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1241
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1242 **** Better alignment of line continuation backslashes.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1243 c-backslash-region tries to adapt to surrounding backslashes. New
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1244 variable c-backslash-max-column which put a limit on how far out
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1245 backslashes can be moved.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1246
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1247 **** Automatic alignment of line continuation backslashes.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1248 This is controlled by the new variable c-auto-align-backslashes. It
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1249 affects c-context-line-break, c-context-open-line and newlines
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1250 inserted in auto-newline mode.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1251
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1252 **** Line indentation works better inside macros.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1253 Regardless whether syntactic indentation and syntactic indentation
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1254 inside macros are enabled or not, line indentation now ignores the
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1255 line continuation backslashes. This is most noticeable when syntactic
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1256 indentation is turned off and there are empty lines (save for the
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1257 backslash) in the macro.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1258
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1259 *** indent-for-comment is more customizable.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1260 The behavior of M-; (indent-for-comment) is now configurable through
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1261 the variable c-indent-comment-alist. The indentation behavior based
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1262 on the preceding code on the line, e.g. to get two spaces after #else
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1263 and #endif but indentation to comment-column in most other cases
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1264 (something which was hardcoded earlier).
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1265
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1266 *** New function c-context-open-line.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1267 It's the open-line equivalent of c-context-line-break.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1268
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1269 *** New lineup functions
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1270
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1271 **** c-lineup-string-cont
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1272 This lineup function lines up a continued string under the one it
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1273 continues. E.g:
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1274
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1275 result = prefix + "A message "
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1276 "string."; <- c-lineup-string-cont
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1277
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1278 **** c-lineup-cascaded-calls
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1279 Lines up series of calls separated by "->" or ".".
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1280
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1281 **** c-lineup-knr-region-comment
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1282 Gives (what most people think is) better indentation of comments in
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1283 the "K&R region" between the function header and its body.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1284
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1285 **** c-lineup-gcc-asm-reg
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1286 Provides better indentation inside asm blocks. Contributed by Kevin
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1287 Ryde.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1288
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1289 **** c-lineup-argcont
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1290 Lines up continued function arguments after the preceding comma.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1291 Contributed by Kevin Ryde.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1292
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1293 *** Better caching of the syntactic context.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1294 CC Mode caches the positions of the opening parentheses (of any kind)
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1295 of the lists surrounding the point. Those positions are used in many
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1296 places as anchor points for various searches. The cache is now
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1297 improved so that it can be reused to a large extent when the point is
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1298 moved. The less it moves, the less needs to be recalculated.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1299
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1300 The effect is that CC Mode should be fast most of the time even when
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1301 opening parens are hung (i.e. aren't in column zero). It's typically
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1302 only the first time after the point is moved far down in a complex
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1303 file that it'll take noticeable time to find out the syntactic
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1304 context.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1305
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1306 *** Statements are recognized in a more robust way.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1307 Statements are recognized most of the time even when they occur in an
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1308 "invalid" context, e.g. in a function argument. In practice that can
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1309 happen when macros are involved.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1310
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1311 *** Improved the way c-indent-exp chooses the block to indent.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1312 It now indents the block for the closest sexp following the point
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1313 whose closing paren ends on a different line. This means that the
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1314 point doesn't have to be immediately before the block to indent.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1315 Also, only the block and the closing line is indented; the current
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1316 line is left untouched.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1317
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1318 *** Added toggle for syntactic indentation.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1319 The function c-toggle-syntactic-indentation can be used to toggle
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1320 syntactic indentation.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1321
40575
4ce7861c6181 Mention --no-window-system changes in the NEWS.
Pavel Janík <Pavel@Janik.cz>
parents: 40526
diff changeset
1322 ** The command line option --no-windows has been changed to
4ce7861c6181 Mention --no-window-system changes in the NEWS.
Pavel Janík <Pavel@Janik.cz>
parents: 40526
diff changeset
1323 --no-window-system. The old one still works, but is deprecated.
4ce7861c6181 Mention --no-window-system changes in the NEWS.
Pavel Janík <Pavel@Janik.cz>
parents: 40526
diff changeset
1324
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1325 +++
45574
a0ad5c5f6951 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45565
diff changeset
1326 ** The command `list-text-properties-at' has been deleted because
a0ad5c5f6951 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45565
diff changeset
1327 C-u C-x = gives the same information and more.
a0ad5c5f6951 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45565
diff changeset
1328
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1329 +++
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1330 ** `buffer-menu' and `list-buffers' now list buffers whose names begin
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1331 with a space, when those buffers are visiting files. Normally buffers
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1332 whose names begin with space are omitted.
40493
94818b20da05 Document the change in list-buffers-noselect wrt buffers visiting files
Eli Zaretskii <eliz@gnu.org>
parents: 40487
diff changeset
1333
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1334 +++
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1335 ** You can now customize fill-nobreak-predicate to control where
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1336 filling can break lines. We provide two sample predicates,
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1337 fill-single-word-nobreak-p and fill-french-nobreak-p.
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1338
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1339 +++
40316
ddce8f484e75 New user option `add-log-always-start-new-record'.
Sam Steingold <sds@gnu.org>
parents: 40296
diff changeset
1340 ** New user option `add-log-always-start-new-record'.
ddce8f484e75 New user option `add-log-always-start-new-record'.
Sam Steingold <sds@gnu.org>
parents: 40296
diff changeset
1341 When this option is enabled, M-x add-change-log-entry will always
ddce8f484e75 New user option `add-log-always-start-new-record'.
Sam Steingold <sds@gnu.org>
parents: 40296
diff changeset
1342 start a new record regardless of when the last record is.
ddce8f484e75 New user option `add-log-always-start-new-record'.
Sam Steingold <sds@gnu.org>
parents: 40296
diff changeset
1343
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1344 +++
45977
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
1345 ** SGML mode has indentation and supports XML syntax.
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
1346 The new variable `sgml-xml-mode' tells SGML mode to use XML syntax.
40378
344e63612d00 renamed `html-xhtml' to `sgml-xml'
Sam Steingold <sds@gnu.org>
parents: 40316
diff changeset
1347 When this option is enabled, SGML tags are inserted in XML style,
40215
77247104a65e mention html-xhtml
Sam Steingold <sds@gnu.org>
parents: 40190
diff changeset
1348 i.e., there is always a closing tag.
45977
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
1349 By default, its setting is inferred on a buffer-by-buffer basis
40378
344e63612d00 renamed `html-xhtml' to `sgml-xml'
Sam Steingold <sds@gnu.org>
parents: 40316
diff changeset
1350 from the file name or buffer contents.
40215
77247104a65e mention html-xhtml
Sam Steingold <sds@gnu.org>
parents: 40190
diff changeset
1351
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1352 +++
48728
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1353 ** `xml-mode' is now an alias for `sgml-mode', which has XML support.
45614
8f47aa4a587a *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45610
diff changeset
1354
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1355 +++
41756
97f872fb595d Describe isearch-resume-enabled.
Kim F. Storm <storm@cua.dk>
parents: 41749
diff changeset
1356 ** New user option `isearch-resume-enabled'.
46989
eeab5bdaffa2 Fix typos.
Richard M. Stallman <rms@gnu.org>
parents: 46962
diff changeset
1357 This option can be disabled, to avoid the normal behavior of isearch
41756
97f872fb595d Describe isearch-resume-enabled.
Kim F. Storm <storm@cua.dk>
parents: 41749
diff changeset
1358 which puts calls to `isearch-resume' in the command history.
97f872fb595d Describe isearch-resume-enabled.
Kim F. Storm <storm@cua.dk>
parents: 41749
diff changeset
1359
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1360 ---
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1361 ** Lisp mode now uses font-lock-doc-face for the docstrings.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1362
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1363 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1364 ** Perl mode has a new variable `perl-indent-continued-arguments'.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1365
45997
9ee4a7e22180 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 45993
diff changeset
1366 +++
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1367 ** Fortran mode has a new variable `fortran-directive-re'.
45997
9ee4a7e22180 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 45993
diff changeset
1368 Adapt this to match the format of any compiler directives you use.
9ee4a7e22180 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 45993
diff changeset
1369 Lines that match are never indented, and are given distinctive font-locking.
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1370
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1371 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1372 ** F90 mode has new navigation commands `f90-end-of-block',
45543
b436ae710691 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 45499
diff changeset
1373 `f90-beginning-of-block', `f90-next-block', `f90-previous-block'.
45499
a35026845779 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 45495
diff changeset
1374
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1375 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1376 ** Prolog mode has a new variable `prolog-font-lock-keywords'
45610
e9b72e7f6062 Mention prolog-mode new var `prolog-font-lock-keywords'.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 45574
diff changeset
1377 to support use of font-lock.
e9b72e7f6062 Mention prolog-mode new var `prolog-font-lock-keywords'.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 45574
diff changeset
1378
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1379 +++
39849
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
1380 ** `special-display-buffer-names' and `special-display-regexps' now
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
1381 understand two new boolean pseudo-frame-parameters `same-frame' and
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
1382 `same-window'.
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
1383
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1384 +++
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1385 ** M-x setenv now expands environment variables of the form `$foo' and
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1386 `${foo}' in the specified new value of the environment variable. To
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1387 include a `$' in the value, use `$$'.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1388
39881
9c1b9334eb73 Mark last change as documented in the manual.
Eli Zaretskii <eliz@gnu.org>
parents: 39879
diff changeset
1389 +++
39879
fba70cf81a87 Document the significance of the trailing slash in elements of
Eli Zaretskii <eliz@gnu.org>
parents: 39849
diff changeset
1390 ** File-name completion can now ignore directories.
fba70cf81a87 Document the significance of the trailing slash in elements of
Eli Zaretskii <eliz@gnu.org>
parents: 39849
diff changeset
1391 If an element of the list in `completion-ignored-extensions' ends in a
fba70cf81a87 Document the significance of the trailing slash in elements of
Eli Zaretskii <eliz@gnu.org>
parents: 39849
diff changeset
1392 slash `/', it indicates a subdirectory that should be ignored when
fba70cf81a87 Document the significance of the trailing slash in elements of
Eli Zaretskii <eliz@gnu.org>
parents: 39849
diff changeset
1393 completing file names. Elements of `completion-ignored-extensions'
fba70cf81a87 Document the significance of the trailing slash in elements of
Eli Zaretskii <eliz@gnu.org>
parents: 39849
diff changeset
1394 which do not end in a slash are never considered when a completion
fba70cf81a87 Document the significance of the trailing slash in elements of
Eli Zaretskii <eliz@gnu.org>
parents: 39849
diff changeset
1395 candidate is a directory.
fba70cf81a87 Document the significance of the trailing slash in elements of
Eli Zaretskii <eliz@gnu.org>
parents: 39849
diff changeset
1396
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1397 +++
46201
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
1398 ** The completion commands TAB, SPC and ? in the minibuffer apply only
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
1399 to the text before point. If there is text in the buffer after point,
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1400 it remains unchanged.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1401
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1402 +++
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1403 ** New user option `inhibit-startup-buffer-menu'.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1404 When loading many files, for instance with `emacs *', Emacs normally
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1405 displays a buffer menu. This option turns the buffer menu off.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1406
52089
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1407 ** New user option `compilation-environment'.
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1408 This option allows you to specify environment variables for inferior
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1409 compilation processes without affecting the environment that all
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1410 subprocesses inherit.
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1411
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1412 ---
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1413 ** Rmail now displays 5-digit message ids in its summary buffer.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1414
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1415 ---
40963
ff6a29bbaf7e Add note about system caret on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 40916
diff changeset
1416 ** On MS Windows, the "system caret" now follows the cursor.
ff6a29bbaf7e Add note about system caret on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 40916
diff changeset
1417 This enables Emacs to work better with programs that need to track
ff6a29bbaf7e Add note about system caret on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 40916
diff changeset
1418 the cursor, for example screen magnifiers and text to speech programs.
ff6a29bbaf7e Add note about system caret on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 40916
diff changeset
1419
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1420 ---
41482
fe774ae6bd57 Added entry for tooltips on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41471
diff changeset
1421 ** Tooltips now work on MS Windows.
fe774ae6bd57 Added entry for tooltips on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41471
diff changeset
1422 See the Emacs 21.1 NEWS entry for tooltips for details.
fe774ae6bd57 Added entry for tooltips on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41471
diff changeset
1423
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1424 ---
49566
ca56eac8c658 Updated image support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 49549
diff changeset
1425 ** Images are now supported on MS Windows.
ca56eac8c658 Updated image support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 49549
diff changeset
1426 PBM and XBM images are supported out of the box. Other image formats
ca56eac8c658 Updated image support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 49549
diff changeset
1427 depend on external libraries. All of these libraries have been ported
ca56eac8c658 Updated image support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 49549
diff changeset
1428 to Windows, and can be found in both source and binary form at
ca56eac8c658 Updated image support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 49549
diff changeset
1429 http://gnuwin32.sourceforge.net/. Note that libpng also depends on
ca56eac8c658 Updated image support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 49549
diff changeset
1430 zlib, and tiff depends on the version of jpeg that it was compiled
ca56eac8c658 Updated image support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 49549
diff changeset
1431 against.
44117
48ee57a8b28c Add news of image support on Windows
Jason Rumney <jasonr@gnu.org>
parents: 44087
diff changeset
1432
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1433 ---
48501
41fb6d06759c Added note about sound support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 48060
diff changeset
1434 ** Sound is now supported on MS Windows.
41fb6d06759c Added note about sound support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 48060
diff changeset
1435 WAV format is supported on all versions of Windows, other formats such
49395
58c9926affeb Add note for mouse pointer support.
Jason Rumney <jasonr@gnu.org>
parents: 49379
diff changeset
1436 as AU, AIFF and MP3 may be supported in the more recent versions of
48501
41fb6d06759c Added note about sound support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 48060
diff changeset
1437 Windows, or when other software provides hooks into the system level
41fb6d06759c Added note about sound support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 48060
diff changeset
1438 sound support for those formats.
41fb6d06759c Added note about sound support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 48060
diff changeset
1439
41fb6d06759c Added note about sound support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 48060
diff changeset
1440 ---
49395
58c9926affeb Add note for mouse pointer support.
Jason Rumney <jasonr@gnu.org>
parents: 49379
diff changeset
1441 ** Different shaped mouse pointers are supported on MS Windows.
58c9926affeb Add note for mouse pointer support.
Jason Rumney <jasonr@gnu.org>
parents: 49379
diff changeset
1442 The mouse pointer changes shape depending on what is under the pointer.
58c9926affeb Add note for mouse pointer support.
Jason Rumney <jasonr@gnu.org>
parents: 49379
diff changeset
1443
58c9926affeb Add note for mouse pointer support.
Jason Rumney <jasonr@gnu.org>
parents: 49379
diff changeset
1444 ---
42725
7982df5e7d71 Add note about support for more mouse buttons in MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 42703
diff changeset
1445 ** Pointing devices with more than 3 buttons are now supported on MS Windows.
7982df5e7d71 Add note about support for more mouse buttons in MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 42703
diff changeset
1446 The new variable `w32-pass-extra-mouse-buttons-to-system' controls
7982df5e7d71 Add note about support for more mouse buttons in MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 42703
diff changeset
1447 whether Emacs should handle the extra buttons itself (the default), or
7982df5e7d71 Add note about support for more mouse buttons in MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 42703
diff changeset
1448 pass them to Windows to be handled with system-wide functions.
7982df5e7d71 Add note about support for more mouse buttons in MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 42703
diff changeset
1449
51506
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1450 ---
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1451 ** Emacs takes note of colors defined in Control Panel on MS-Windows.
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1452 The Control Panel defines some default colors for applications in
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1453 much the same way as wildcard X Resources do on X. Emacs now
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1454 adds these colors to the colormap prefixed by System (eg SystemMenu
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1455 for the default Menu background, SystemMenuText for the foreground),
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1456 and uses some of them to initialize some of the default faces.
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1457 `list-colors-display' will show the list of System color names if you
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1458 wish to use them in other faces.
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1459
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1460 +++
43302
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1461 ** Under X11, it is possible to swap Alt and Meta (and Super and Hyper).
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1462 The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym',
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1463 and `x-super-keysym' can be used to choose which keysyms Emacs should
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1464 use for the modifiers. For example, the following two lines swap
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1465 Meta and Alt:
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1466 (setq x-alt-keysym 'meta)
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1467 (setq x-meta-keysym 'alt)
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1468
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1469 * New modes and packages in 21.4
41246
003c53bb8906 Mention the French translations of the tutorial and the survival guide.
Eli Zaretskii <eliz@gnu.org>
parents: 41229
diff changeset
1470
52466
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
1471 +++
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
1472 ** The new global minor mode `size-indication-mode' (off by default)
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
1473 shows the size of accessible part of the buffer on the mode line.
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
1474
51374
31bb2083978b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51300
diff changeset
1475 ** GDB-Script-mode is used for files like .gdbinit.
50794
4239cd7727ca Add an entry for GDB-UI.
Nick Roberts <nickrob@snap.net.nz>
parents: 50773
diff changeset
1476
41246
003c53bb8906 Mention the French translations of the tutorial and the survival guide.
Eli Zaretskii <eliz@gnu.org>
parents: 41229
diff changeset
1477 ---
49648
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1478 ** Ido mode is now part of the Emacs distribution.
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1479
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1480 The ido (interactively do) package is an extension of the iswitchb
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1481 package to do interactive opening of files and directories in addition
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1482 to interactive buffer switching. Ido is a superset of iswitchb (with
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1483 a few exceptions), so don't enable both packages.
46124
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
1484
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1485 ---
49648
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1486 ** CUA mode is now part of the Emacs distribution.
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1487
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1488 The new cua package provides CUA-like keybindings using C-x for
44972
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1489 cut (kill), C-c for copy, C-v for paste (yank), and C-z for undo.
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1490 With cua, the region can be set and extended using shifted movement
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1491 keys (like pc-selection-mode) and typed text replaces the active
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1492 region (like delete-selection-mode). Do not enable these modes with
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1493 cua-mode. Customize the variable `cua-mode' to enable cua.
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1494
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1495 In addition, cua provides unified rectangle support with visible
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1496 rectangle highlighting: Use S-return to start a rectangle, extend it
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1497 using the movement commands (or mouse-3), and cut or copy it using C-x
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1498 or C-c (using C-w and M-w also works).
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1499
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1500 Use M-o and M-c to `open' or `close' the rectangle, use M-b or M-f, to
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1501 fill it with blanks or another character, use M-u or M-l to upcase or
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1502 downcase the rectangle, use M-i to increment the numbers in the
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1503 rectangle, use M-n to fill the rectangle with a numeric sequence (such
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1504 as 10 20 30...), use M-r to replace a regexp in the rectangle, and use
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1505 M-' or M-/ to restrict command on the rectangle to a subset of the
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1506 rows. See the commentary in cua-base.el for more rectangle commands.
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1507
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1508 Cua also provides unified support for registers: Use a numeric
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1509 prefix argument between 0 and 9, i.e. M-0 .. M-9, for C-x, C-c, and
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1510 C-v to cut or copy into register 0-9, or paste from register 0-9.
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1511
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1512 The last text deleted (not killed) is automatically stored in
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1513 register 0. This includes text deleted by typing text.
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1514
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1515 Finally, cua provides a global mark which is set using S-C-space.
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1516 When the global mark is active, any text which is cut or copied is
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1517 automatically inserted at the global mark position. See the
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1518 commentary in cua-base.el for more global mark related commands.
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1519
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1520 The features of cua also works with the standard emacs bindings for
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1521 kill, copy, yank, and undo. If you want to use cua mode, but don't
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1522 want the C-x, C-c, C-v, and C-z bindings, you may customize the
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1523 `cua-enable-cua-keys' variable.
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1524
49648
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1525 Note: This version of cua mode is not backwards compatible with older
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1526 versions of cua.el and cua-mode.el. To ensure proper operation, you
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1527 must remove older versions of cua.el or cua-mode.el as well as the
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1528 loading and customization of those packages from the .emacs file.
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1529
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1530 ** The new keypad setup package provides several common bindings for
47415
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1531 the numeric keypad which is available on most keyboards. The numeric
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1532 keypad typically has the digits 0 to 9, a decimal point, keys marked
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1533 +, -, /, and *, an Enter key, and a NumLock toggle key. The keypad
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1534 package only controls the use of the digit and decimal keys.
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1535
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1536 By customizing the variables `keypad-setup', `keypad-shifted-setup',
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1537 `keypad-numlock-setup', and `keypad-numlock-shifted-setup', or by
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1538 using the function `keypad-setup', you can rebind all digit keys and
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1539 the decimal key of the keypad in one step for each of the four
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1540 possible combinations of the Shift key state (not pressed/pressed) and
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1541 the NumLock toggle state (off/on).
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1542
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1543 The choices for the keypad keys in each of the above states are:
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1544 `Plain numeric keypad' where the keys generates plain digits,
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1545 `Numeric keypad with decimal key' where the character produced by the
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1546 decimal key can be customized individually (for internationalization),
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1547 `Numeric Prefix Arg' where the keypad keys produce numeric prefix args
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1548 for emacs editing commands, `Cursor keys' and `Shifted Cursor keys'
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1549 where the keys work like (shifted) arrow keys, home/end, etc., and
47485
3e714e68ea77 Fix entry for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47433
diff changeset
1550 `Unspecified/User-defined' where the keypad keys (kp-0, kp-1, etc.)
3e714e68ea77 Fix entry for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47433
diff changeset
1551 are left unspecified and can be bound individually through the global
3e714e68ea77 Fix entry for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47433
diff changeset
1552 or local keymaps.
44972
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1553
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1554 ** The new kmacro package provides a simpler user interface to
46124
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
1555 emacs' keyboard macro facilities.
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
1556
47096
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1557 Basically, it uses two function keys (default F3 and F4) like this:
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1558 F3 starts a macro, F4 ends the macro, and pressing F4 again executes
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1559 the last macro. While defining the macro, F3 inserts a counter value
46124
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
1560 which automatically increments every time the macro is executed.
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
1561
46962
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1562 There is now a keyboard macro ring which stores the most recently
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1563 defined macros.
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1564
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1565 The C-x C-k sequence is now a prefix for the kmacro keymap which
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1566 defines bindings for moving through the keyboard macro ring,
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1567 C-x C-k C-p and C-x C-k C-n, editing the last macro C-x C-k C-e,
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1568 manipulating the macro counter and format via C-x C-k C-c,
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1569 C-x C-k C-a, and C-x C-k C-f. See the commentary in kmacro.el
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1570 for more commands.
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1571
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1572 The normal macro bindings C-x (, C-x ), and C-x e now interfaces to
46962
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1573 the keyboard macro ring.
46124
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
1574
47313
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1575 The C-x e command now automatically terminates the current macro
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1576 before calling it, if used while defining a macro.
47096
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1577
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1578 In addition, when ending or calling a macro with C-x e, the macro can
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1579 be repeated immediately by typing just the `e'. You can customize
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1580 this behaviour via the variable kmacro-call-repeat-key and
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1581 kmacro-call-repeat-with-arg.
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1582
47313
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1583 Keyboard macros can now be debugged and edited interactively.
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1584 C-x C-k SPC will step through the last keyboard macro one key sequence
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1585 at a time, prompting for the actions to take.
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1586
49341
aa7e1948ad31 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 49316
diff changeset
1587 ---
aa7e1948ad31 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 49316
diff changeset
1588 ** The old Octave mode bindings C-c f and C-c i have been changed
aa7e1948ad31 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 49316
diff changeset
1589 to C-c C-f and C-c C-i. The C-c C-i subcommands now have duplicate
aa7e1948ad31 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 49316
diff changeset
1590 bindings on control characters--thus, C-c C-i C-b is the same as
aa7e1948ad31 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 49316
diff changeset
1591 C-c C-i b, and so on.
aa7e1948ad31 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 49316
diff changeset
1592
49648
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1593 ** The printing package is now part of the Emacs distribution.
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1594
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1595 If you enable the printing package by including (require 'printing) in
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1596 the .emacs file, the normal Print item on the File menu is replaced
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1597 with a Print sub-menu which allows you to preview output through
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1598 ghostview, use ghostscript to print (if you don't have a PostScript
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1599 printer) or send directly to printer a PostScript code generated by
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1600 `ps-print' package. Use M-x pr-help for more information.
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1601
40847
0de09e872237 An entry for Calc.
Eli Zaretskii <eliz@gnu.org>
parents: 40729
diff changeset
1602 +++
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1603 ** Calc is now part of the Emacs distribution.
40847
0de09e872237 An entry for Calc.
Eli Zaretskii <eliz@gnu.org>
parents: 40729
diff changeset
1604
0de09e872237 An entry for Calc.
Eli Zaretskii <eliz@gnu.org>
parents: 40729
diff changeset
1605 Calc is an advanced desk calculator and mathematical tool written in
0de09e872237 An entry for Calc.
Eli Zaretskii <eliz@gnu.org>
parents: 40729
diff changeset
1606 Emacs Lisp. Its documentation is in a separate manual; within Emacs,
40865
19d072877aaa Mention calccard.tex and calccard.ps.
Eli Zaretskii <eliz@gnu.org>
parents: 40847
diff changeset
1607 type "C-h i m calc RET" to read that manual. A reference card is
19d072877aaa Mention calccard.tex and calccard.ps.
Eli Zaretskii <eliz@gnu.org>
parents: 40847
diff changeset
1608 available in `etc/calccard.tex' and `etc/calccard.ps'.
40847
0de09e872237 An entry for Calc.
Eli Zaretskii <eliz@gnu.org>
parents: 40729
diff changeset
1609
40889
c410bf71eef7 Mention the addition of the ELisp reference.
Eli Zaretskii <eliz@gnu.org>
parents: 40865
diff changeset
1610 +++
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1611 ** Tramp is now part of the distribution.
45891
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1612
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1613 This package is similar to Ange-FTP: it allows you to edit remote
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1614 files. But whereas Ange-FTP uses FTP to access the remote host,
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1615 Tramp uses a shell connection. The shell connection is always used
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1616 for filename completion and directory listings and suchlike, but for
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1617 the actual file transfer, you can choose between the so-called
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1618 `inline' methods (which transfer the files through the shell
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1619 connection using base64 or uu encoding) and the `out-of-band' methods
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1620 (which invoke an external copying program such as `rcp' or `scp' or
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1621 `rsync' to do the copying).
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1622
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1623 Shell connections can be acquired via `rsh', `ssh', `telnet' and also
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1624 `su' and `sudo'.
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1625
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1626 ---
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1627 ** The new global minor mode `file-name-shadow-mode' modifies the way
47070
6976e7e4cb1e read-file-name-electric-shadow-mode -> file-name-shadow-mode
Miles Bader <miles@gnu.org>
parents: 47062
diff changeset
1628 filenames being entered by the user in the minibuffer are displayed, so
6976e7e4cb1e read-file-name-electric-shadow-mode -> file-name-shadow-mode
Miles Bader <miles@gnu.org>
parents: 47062
diff changeset
1629 that it's clear when part of the entered filename will be ignored due to
6976e7e4cb1e read-file-name-electric-shadow-mode -> file-name-shadow-mode
Miles Bader <miles@gnu.org>
parents: 47062
diff changeset
1630 emacs' filename parsing rules. The ignored portion can be made dim,
6976e7e4cb1e read-file-name-electric-shadow-mode -> file-name-shadow-mode
Miles Bader <miles@gnu.org>
parents: 47062
diff changeset
1631 invisible, or otherwise less visually noticable. The display method may
6976e7e4cb1e read-file-name-electric-shadow-mode -> file-name-shadow-mode
Miles Bader <miles@gnu.org>
parents: 47062
diff changeset
1632 be displayed by customizing the variable `file-name-shadow-properties'.
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
1633
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1634 ---
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1635 ** The ruler-mode.el library provides a minor mode for displaying an
39738
9c1411458564 Add ruler-mode.
Gerd Moellmann <gerd@gnu.org>
parents: 39647
diff changeset
1636 "active" ruler in the header line. You can use the mouse to visually
9c1411458564 Add ruler-mode.
Gerd Moellmann <gerd@gnu.org>
parents: 39647
diff changeset
1637 change the `fill-column', `window-margins' and `tab-stop-list'
9c1411458564 Add ruler-mode.
Gerd Moellmann <gerd@gnu.org>
parents: 39647
diff changeset
1638 settings.
9c1411458564 Add ruler-mode.
Gerd Moellmann <gerd@gnu.org>
parents: 39647
diff changeset
1639
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1640 ---
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1641 ** The minor mode Reveal mode makes text visible on the fly as you
51374
31bb2083978b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51300
diff changeset
1642 move your cursor into hidden regions of the buffer.
41623
8cf1bafe44b1 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41620
diff changeset
1643 It should work with any package that uses overlays to hide parts
8cf1bafe44b1 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41620
diff changeset
1644 of a buffer, such as outline-minor-mode, hs-minor-mode, hide-ifdef-mode, ...
8cf1bafe44b1 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41620
diff changeset
1645
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1646 There is also Global Reveal mode which affects all buffers.
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1647
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1648 ---
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1649 ** The new package ibuffer provides a powerful, completely
44822
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
1650 customizable replacement for buff-menu.el.
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
1651
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1652 ** The new package table.el implements editable, WYSIWYG, embedded
46936
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
1653 `text tables' in Emacs buffers. It simulates the effect of putting
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
1654 these tables in a special major mode. The package emulates WYSIWYG
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
1655 table editing available in modern word processors. The package also
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
1656 can generate a table source in typesetting and markup languages such
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
1657 as latex and html from the visually laid out text table.
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
1658
48060
26cda8b2f7ea +++/--- bugfix
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48054
diff changeset
1659 +++
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1660 ** SES mode (ses-mode) is a new major mode for creating and editing
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1661 spreadsheet files. Besides the usual Emacs features (intuitive command
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1662 letters, undo, cell formulas in Lisp, plaintext files, etc.) it also offers
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1663 viral immunity and import/export of tab-separated values.
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1664
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1665 ---
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1666 ** Support for `magic cookie' standout modes has been removed.
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
1667 Emacs will still work on terminals that require magic cookies in order
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
1668 to use standout mode, however they will not be able to display
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
1669 mode-lines in inverse-video.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
1670
48728
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1671 ---
52089
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1672 ** cplus-md.el has been removed to avoid problems with Custom.
46687
d173e099056d *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46677
diff changeset
1673
49574
e4bf575fd91c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49566
diff changeset
1674 ** New package benchmark.el contains simple support for convenient
e4bf575fd91c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49566
diff changeset
1675 timing measurements of code (including the garbage collection component).
e4bf575fd91c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49566
diff changeset
1676
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1677 ** The default values of paragraph-start and indent-line-function have
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1678 been changed to reflect those used in Text mode rather than those used
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1679 in Indented-Text mode.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1680
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1681 ** If you set `query-replace-skip-read-only' non-nil,
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1682 `query-replace' and related functions simply ignore
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1683 a match if part of it has a read-only property.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1684
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
1685 ** The new Lisp library fringe.el controls the apperance of fringes.
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1686
44724
867beadfbb38 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 44718
diff changeset
1687 * Lisp Changes in Emacs 21.4
40729
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
1688
52448
4bdd799997d1 Eldoc change
Dave Love <fx@gnu.org>
parents: 52444
diff changeset
1689 ** Major modes can define `eldoc-print-current-symbol-info-function'
4bdd799997d1 Eldoc change
Dave Love <fx@gnu.org>
parents: 52444
diff changeset
1690 locally to provide Eldoc functionality by some method appropriate to
4bdd799997d1 Eldoc change
Dave Love <fx@gnu.org>
parents: 52444
diff changeset
1691 the language.
4bdd799997d1 Eldoc change
Dave Love <fx@gnu.org>
parents: 52444
diff changeset
1692
52407
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
1693 ** New coding system property `mime-text-unsuitable' indicates that
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
1694 the coding system's `mime-charset' is not suitable for MIME text
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
1695 parts, e.g. utf-16.
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
1696
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1697 +++
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
1698 ** The argument to forward-word, backward-word, forward-to-indentation
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
1699 and backward-to-indentation is now optional, and defaults to 1.
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
1700
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1701 +++
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1702 ** (char-displayable-p CHAR) returns non-nil if Emacs ought to be able
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1703 to display CHAR. More precisely, if the selected frame's fontset has
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1704 a font to display the character set that CHAR belongs to.
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1705
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1706 Fontsets can specify a font on a per-character basis; when the fontset
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1707 does that, this value may not be accurate.
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1708
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1709 +++
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1710 ** The new function `window-inside-edges' returns the edges of the
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1711 actual text portion of the window, not including the scroll bar or
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1712 divider line, the fringes, the display margins, the header line and
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1713 the mode line.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1714
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1715 +++
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1716 ** The new functions `window-pixel-edges' and `window-inside-pixel-edges'
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1717 return window edges in units of pixels, rather than columns and lines.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1718
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1719 +++
51505
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
1720 ** The kill-buffer-hook is now permanent-local.
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
1721
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1722 +++
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1723 ** `select-window' takes an optional second argument `norecord', like
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1724 `switch-to-buffer'.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1725
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1726 +++
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1727 ** The new macro `with-selected-window' temporarily switches the
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1728 selected window without impacting the order of buffer-list.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1729
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1730 +++
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1731 ** The `keymap' property now also works at the ends of overlays and
51077
aafee8ba3f90 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50975
diff changeset
1732 text-properties, according to their stickiness. This also means that it
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1733 works with empty overlays. The same hold for the `local-map' property.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1734
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1735 +++
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1736 ** (map-keymap FUNCTION KEYMAP) applies the function to each binding
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1737 in the keymap.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1738
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1739 ---
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1740 ** VC changes for backends:
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1741 *** (vc-switches BACKEND OPERATION) is a new function for use by backends.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1742 *** The new `find-version' backend function replaces the `destfile'
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1743 parameter of the `checkout' backend function.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1744 Old code still works thanks to a default `find-version' behavior that
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1745 uses the old `destfile' parameter.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1746
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1747 +++
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1748 ** The new macro dynamic-completion-table supports using functions
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1749 as a dynamic completion table.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1750
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1751 (dynamic-completion-table FUN)
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1752
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1753 FUN is called with one argument, the string for which completion is required,
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1754 and it should return an alist containing all the intended possible
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1755 completions. This alist may be a full list of possible completions so that FUN
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1756 can ignore the value of its argument. If completion is performed in the
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1757 minibuffer, FUN will be called in the buffer from which the minibuffer was
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1758 entered. dynamic-completion-table then computes the completion.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1759
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1760 +++
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1761 ** The new macro lazy-completion-table initializes a variable
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1762 as a lazy completion table.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1763
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1764 (lazy-completion-table VAR FUN &rest ARGS)
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1765
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1766 If the completion table VAR is used for the first time (e.g., by passing VAR
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1767 as an argument to `try-completion'), the function FUN is called with arguments
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1768 ARGS. FUN must return the completion table that will be stored in VAR. If
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1769 completion is requested in the minibuffer, FUN will be called in the buffer
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1770 from which the minibuffer was entered. The return value of
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1771 `lazy-completion-table' must be used to initialize the value of VAR.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1772
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1773 +++
50607
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
1774 ** `minor-mode-list' now holds a list of minor mode commands.
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
1775
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1776 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1777 ** The new function `modify-all-frames-parameters' modifies parameters
50607
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
1778 for all (existing and future) frames.
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
1779
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1780 +++
50607
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
1781 ** `sit-for' can now be called with args (SECONDS &optional NODISP).
50590
0a31ec45f727 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50553
diff changeset
1782
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1783 +++
50590
0a31ec45f727 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50553
diff changeset
1784 ** New standard font-lock face `font-lock-preprocessor-face'.
0a31ec45f727 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50553
diff changeset
1785
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1786 +++
50590
0a31ec45f727 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50553
diff changeset
1787 ** The macro `with-syntax-table' does not copy the table any more.
0a31ec45f727 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50553
diff changeset
1788
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1789 +++
50543
ae1a0ad24e03 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50509
diff changeset
1790 ** The variable `face-font-rescale-alist' specifies how much larger
ae1a0ad24e03 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50509
diff changeset
1791 (or smaller) font we should use. For instance, if the value is
50544
f7d63c53fb6c *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50543
diff changeset
1792 '((SOME-FONTNAME-PATTERN . 1.3)) and a face requests a font of 10
50543
ae1a0ad24e03 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50509
diff changeset
1793 point, we actually use a font of 13 point if the font matches
ae1a0ad24e03 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50509
diff changeset
1794 SOME-FONTNAME-PATTERN.
ae1a0ad24e03 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50509
diff changeset
1795
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1796 +++
50474
b473e7c82366 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50312
diff changeset
1797 ** The function `number-sequence' returns a list of equally-separated
b473e7c82366 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50312
diff changeset
1798 numbers. For instance, (number-sequence 4 9) returns (4 5 6 7 8 9).
b473e7c82366 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50312
diff changeset
1799 By default, the separation is 1, but you can specify a different separation
b473e7c82366 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50312
diff changeset
1800 as the third argument. (number-sequence 1.5 6 2) returns (1.5 3.5 5.5).
b473e7c82366 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50312
diff changeset
1801
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1802 +++
51608
05ddf95bcbff *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51602
diff changeset
1803 ** `file-chase-links' now takes an optional second argument LIMIT which
50509
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
1804 specifies the maximum number of links to chase through. If after that
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
1805 many iterations the file name obtained is still a symbolic link,
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
1806 `file-chase-links' returns it anyway.
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
1807
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1808 ---
49883
4fb79f65681e *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49799
diff changeset
1809 ** `set-fontset-font', `fontset-info', `fontset-font' now operate on
4fb79f65681e *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49799
diff changeset
1810 the default fontset if the argument NAME is nil..
4fb79f65681e *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49799
diff changeset
1811
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1812 +++
50050
32bb98768466 Mention `dcl-font-lock-keywords' and `dcl-font-lock-defaults'.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 49887
diff changeset
1813 ** The escape sequence \s is now interpreted as a SPACE character,
49766
d0dedef2274e *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 49758
diff changeset
1814 unless it is followed by a `-' in a character constant (e.g. ?\s-A),
d0dedef2274e *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 49758
diff changeset
1815 in which case it is still interpreted as the super modifier.
d0dedef2274e *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 49758
diff changeset
1816 In strings, \s is always interpreted as a space.
d0dedef2274e *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 49758
diff changeset
1817
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1818 +++
49668
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1819 ** New function `set-process-filter-multibyte' sets the multibyteness
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1820 of a string given to a process's filter.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1821
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1822 +++
49668
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1823 ** New function `process-filter-multibyte-p' returns t if
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1824 a string given to a process's filter is multibyte.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1825
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1826 +++
49668
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1827 ** A filter function of a process is called with a multibyte string if
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1828 the filter's multibyteness is t. That multibyteness is decided by the
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1829 value of `default-enable-multibyte-characters' when the process is
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1830 created and can be changed later by `set-process-filter-multibyte'.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1831
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1832 +++
49668
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1833 ** If a process's coding system is raw-text or no-conversion and its
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1834 buffer is multibyte, the output of the process is at first converted
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1835 to multibyte by `string-to-multibyte' then inserted in the buffer.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1836 Previously, it was converted to multibyte by `string-as-multibyte',
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1837 which was not compatible with the behaviour of file reading.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1838
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1839 +++
49657
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1840 ** New function `string-to-multibyte' converts a unibyte string to a
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1841 multibyte string with the same individual character codes.
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1842
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1843 +++
49530
4746ab25c458 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49520
diff changeset
1844 ** New variables `gc-elapsed' and `gcs-done' provide extra information
4746ab25c458 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49520
diff changeset
1845 on garbage collection.
4746ab25c458 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49520
diff changeset
1846
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1847 +++
49657
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1848 ** New function `decode-coding-inserted-region' decodes a region as if
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1849 it is read from a file without decoding.
49378
f2d0a984961b *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49347
diff changeset
1850
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1851 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1852 ** New function `locale-info' accesses locale information.
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1853
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1854 +++
48953
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1855 ** `save-selected-window' now saves and restores the selected window
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1856 of every frame. This way, it restores everything that can be changed
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1857 by calling `select-window'.
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1858
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1859 ---
48953
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1860 ** `easy-menu-define' now allows you to use nil for the symbol name
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1861 if you don't need to give the menu a name. If you install the menu
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1862 into other keymaps right away (MAPS is non-nil), it usually doesn't
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1863 need to have a name.
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1864
48849
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1865 ** Byte compiler changes:
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1866
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1867 ---
48849
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1868 *** `(featurep 'xemacs)' is treated by the compiler as nil. This
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1869 helps to avoid noisy compiler warnings in code meant to run under both
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1870 Emacs and XEmacs and may sometimes make the result significantly more
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1871 efficient. Since byte code from recent versions of XEmacs won't
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1872 generally run in Emacs and vice versa, this optimization doesn't lose
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1873 you anything.
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1874
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1875 +++
48849
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1876 *** You can avoid warnings for possibly-undefined symbols with a
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1877 simple convention that the compiler understands. (This is mostly
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1878 useful in code meant to be portable to different Emacs versions.)
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1879 Write forms like the following, or code that macroexpands into such
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1880 forms:
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1881
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1882 (if (fboundp 'foo) <then> <else>)
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1883 (if (boundp 'foo) <then> <else)
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1884
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1885 In the first case, using `foo' as a function inside the <then> form
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1886 won't produce a warning if it's not defined as a function, and in the
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1887 second case, using `foo' as a variable won't produce a warning if it's
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1888 unbound. The test must be in exactly one of the above forms (after
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1889 macro expansion), but such tests may be nested. Note that `when' and
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1890 `unless' expand to `if', but `cond' doesn't.
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
1891
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1892 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1893 *** The new macro `with-no-warnings' suppresses all compiler warnings
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1894 inside its body. In terms of execution, it is equivalent to `progn'.
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1895
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1896 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1897 ** The new translation table `translation-table-for-input'
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1898 is used for customizing self-insertion. The character to
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1899 be inserted is translated through it.
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
1900
48728
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1901 +++
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1902 ** `load-history' can now have elements of the form (t . FUNNAME),
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
1903 which means FUNNAME was previously defined as an autoload (before the
48728
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1904 current file redefined it).
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1905
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1906 +++
48027
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1907 ** New Lisp library testcover.el works with edebug to help you determine
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1908 whether you've tested all your Lisp code. Function testcover-start
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1909 instruments all functions in a given file. Then test your code. Function
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1910 testcover-mark-all adds overlay "splotches" to the Lisp file's buffer to
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1911 show where coverage is lacking. Command testcover-next-mark (bind it to
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1912 a key!) will move point forward to the next spot that has a splotch.
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1913
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1914 *** Normally, a red splotch indicates the form was never completely evaluated;
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1915 a brown splotch means it always evaluated to the same value. The red
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1916 splotches are skipped for forms that can't possibly complete their evaluation,
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1917 such as `error'. The brown splotches are skipped for forms that are expected
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1918 to always evaluate to the same value, such as (setq x 14).
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1919
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1920 *** For difficult cases, you can add do-nothing macros to your code to help
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1921 out the test coverage tool. The macro 1value suppresses a brown splotch for
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1922 its argument. The macro noreturn suppresses a red splotch.
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1923
48060
26cda8b2f7ea +++/--- bugfix
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48054
diff changeset
1924 +++
48027
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1925 ** New function unsafep returns nil if the given Lisp form can't possibly
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1926 do anything dangerous; otherwise it returns a reason why the form might be
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1927 unsafe (calls dangerous function, alters global variable, etc).
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1928
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1929 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1930 ** The new variable `print-continuous-numbering', when non-nil, says
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1931 that successive calls to print functions should use the same
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1932 numberings for circular structure references. This is only relevant
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1933 when `print-circle' is non-nil.
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1934
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1935 When you bind `print-continuous-numbering' to t, you should
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1936 also bind `print-number-table' to nil.
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1937
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1938 +++
47433
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1939 ** When using non-toolkit scroll bars with the default width,
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1940 the scroll-bar-width frame parameter value is nil.
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1941
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1942 +++
47433
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1943 ** The new function copy-abbrev-table returns a new abbrev table that
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1944 is a copy of a given abbrev table.
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1945
47324
fd6bfaf82fa4 Minor change.
Richard M. Stallman <rms@gnu.org>
parents: 47313
diff changeset
1946 +++
47062
632e05bbcb98 Describe --script.
Richard M. Stallman <rms@gnu.org>
parents: 47061
diff changeset
1947 ** The option --script FILE runs Emacs in batch mode and loads FILE.
632e05bbcb98 Describe --script.
Richard M. Stallman <rms@gnu.org>
parents: 47061
diff changeset
1948 It is useful for writing Emacs Lisp shell script files, because they
47324
fd6bfaf82fa4 Minor change.
Richard M. Stallman <rms@gnu.org>
parents: 47313
diff changeset
1949 can start with this line:
47062
632e05bbcb98 Describe --script.
Richard M. Stallman <rms@gnu.org>
parents: 47061
diff changeset
1950
632e05bbcb98 Describe --script.
Richard M. Stallman <rms@gnu.org>
parents: 47061
diff changeset
1951 #!/usr/bin/emacs --script
632e05bbcb98 Describe --script.
Richard M. Stallman <rms@gnu.org>
parents: 47061
diff changeset
1952
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1953 +++
46959
2566b90da6fc *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46936
diff changeset
1954 ** A function's docstring can now hold the function's usage info on
2566b90da6fc *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46936
diff changeset
1955 its last line. It should match the regexp "\n\n(fn.*)\\'".
2566b90da6fc *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46936
diff changeset
1956
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1957 ---
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
1958 ** New CCL functions `lookup-character' and `lookup-integer' access
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
1959 hash tables defined by the Lisp function `define-translation-hash-table'.
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
1960
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1961 +++
47621
2e93b2eb38c8 Mention minibufferp's optional buffer arg.
John Paul Wallington <jpw@pobox.com>
parents: 47616
diff changeset
1962 ** The new function `minibufferp' returns non-nil if its optional buffer
2e93b2eb38c8 Mention minibufferp's optional buffer arg.
John Paul Wallington <jpw@pobox.com>
parents: 47616
diff changeset
1963 argument is a minibuffer. If the argument is omitted it defaults to
2e93b2eb38c8 Mention minibufferp's optional buffer arg.
John Paul Wallington <jpw@pobox.com>
parents: 47616
diff changeset
1964 the current buffer.
46878
901426f0ae5f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46787
diff changeset
1965
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
1966 +++
46582
c5989a0d356e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46456
diff changeset
1967 ** There is a new Warnings facility; see the functions `warn'
c5989a0d356e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46456
diff changeset
1968 and `display-warning'.
c5989a0d356e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46456
diff changeset
1969
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1970 +++
46226
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
1971 ** The functions all-completions and try-completion now accept lists
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
1972 of strings as well as hash-tables additionally to alists, obarrays
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
1973 and functions. Furthermore, the function `test-completion' is now
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
1974 exported to Lisp.
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
1975
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1976 ---
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1977 ** When pure storage overflows while dumping, Emacs now prints how
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1978 much pure storage it will approximately need.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1979
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1980 +++
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1981 ** The new variable `auto-coding-functions' lets you specify functions
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1982 to examine a file being visited and deduce the proper coding system
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1983 for it. (If the coding system is detected incorrectly for a specific
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1984 file, you can put a `coding:' tags to override it.)
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1985
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1986 ---
46787
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
1987 ** The new function `merge-coding-systems' fills in unspecified aspects
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
1988 of one coding system from another coding system.
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
1989
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
1990 ---
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1991 ** The variable `safe-local-eval-forms' specifies a list of forms that
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1992 are ok to evaluate when they appear in an `eval' local variables
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1993 specification. Normally Emacs asks for confirmation before evaluating
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1994 such a form, but if the form appears in this list, no confirmation is
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1995 needed.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1996
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
1997 ---
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1998 ** If a function has a non-nil `safe-local-eval-function' property,
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1999 that means it is ok to evaluate some calls to that function when it
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2000 appears in an `eval' local variables specification. If the property
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2001 is t, then any form calling that function with constant arguments is
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2002 ok. If the property is a function or list of functions, they are called
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2003 with the form as argument, and if any returns t, the form is ok to call.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2004
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2005 If the form is not "ok to call", that means Emacs asks for
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2006 confirmation as before.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2007
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2008 +++
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2009 ** Controlling the default left and right fringe widths.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2010
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2011 The default left and right fringe widths for all windows of a frame
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2012 can now be controlled by setting the `left-fringe' and `right-fringe'
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2013 frame parameters to an integer value specifying the width in pixels.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2014 Setting the width to 0 effectively removes the corresponding fringe.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2015
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2016 The actual default fringe widths for the frame may deviate from the
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2017 specified widths, since the combined fringe widths must match an
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2018 integral number of columns. The extra width is distributed evenly
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2019 between the left and right fringe. For force a specific fringe width,
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2020 specify the width as a negative integer (if both widths are negative,
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2021 only the left fringe gets the specified width).
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2022
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2023 Setting the width to nil (the default), restores the default fringe
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2024 width which is the minimum number of pixels necessary to display any
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2025 of the currently defined fringe bitmaps. The width of the built-in
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2026 fringe bitmaps is 8 pixels.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2027
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2028 +++
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2029 ** Per-window fringes settings
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2030
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2031 Windows can now have their own individual fringe widths and position
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2032 settings.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2033
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2034 To control the fringe widths of a window, either set the buffer-local
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2035 variables `left-fringe-width', `right-fringe-width', or call
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2036 `set-window-fringes'.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2037
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2038 To control the fringe position in a window, that is, whether fringes
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2039 are positioned between the display margins and the window's text area,
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2040 or at the edges of the window, either set the buffer-local variable
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2041 `fringes-outside-margins' or call `set-window-fringes'.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2042
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2043 The function `window-fringes' can be used to obtain the current
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2044 settings. To make `left-fringe-width', `right-fringe-width', and
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2045 `fringes-outside-margins' take effect, you must set them before
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2046 displaying the buffer in a window, or use `set-window-buffer' to force
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2047 an update of the display margins.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2048
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2049 +++
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2050 ** Per-window vertical scroll-bar settings
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2051
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2052 Windows can now have their own individual scroll-bar settings
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2053 controlling the width and position of scroll-bars.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2054
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2055 To control the scroll-bar of a window, either set the buffer-local
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2056 variables `scroll-bar-mode' and `scroll-bar-width', or call
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2057 `set-window-scroll-bars'. The function `window-scroll-bars' can be
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2058 used to obtain the current settings. To make `scroll-bar-mode' and
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2059 `scroll-bar-width' take effect, you must set them before displaying
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2060 the buffer in a window, or use `set-window-buffer' to force an update
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2061 of the display margins.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2062
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2063 +++
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2064 ** The function `set-window-buffer' now has an optional third argument
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2065 KEEP-MARGINS which will preserve the window's current margin, fringe,
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2066 and scroll-bar settings if non-nil.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2067
45979
87962bf716e3 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45977
diff changeset
2068 +++
45977
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2069 ** Renamed file hooks to follow the convention:
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2070 find-file-hooks to find-file-hook,
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2071 find-file-not-found-hooks to find-file-not-found-functions,
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2072 write-file-hooks to write-file-functions,
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2073 write-contents-hooks to write-contents-functions.
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2074 Marked local-write-file-hooks as obsolete (use the LOCAL arg of `add-hook').
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2075
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2076 +++
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
2077 ** The new variable `delete-frame-functions' replaces `delete-frame-hook'.
47739
ba21f6fad010 Mention `delete-frame-functions' replacing `delete-frame-hook',
John Paul Wallington <jpw@pobox.com>
parents: 47730
diff changeset
2078 It was renamed to follow the naming conventions for abnormal hooks. The old
ba21f6fad010 Mention `delete-frame-functions' replacing `delete-frame-hook',
John Paul Wallington <jpw@pobox.com>
parents: 47730
diff changeset
2079 name remains available as an alias, but has been marked obsolete.
ba21f6fad010 Mention `delete-frame-functions' replacing `delete-frame-hook',
John Paul Wallington <jpw@pobox.com>
parents: 47730
diff changeset
2080
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2081 +++
45547
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2082 ** The `read-file-name' function now takes an additional argument which
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2083 specifies a predicate which the file name read must satify. The
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2084 new variable `read-file-name-predicate' contains the predicate argument
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2085 while reading the file name from the minibuffer; the predicate in this
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2086 variable is used by read-file-name-internal to filter the completion list.
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2087
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2088 ---
45547
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2089 ** The new variable `read-file-name-function' can be used by lisp code
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2090 to override the internal read-file-name function.
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2091
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2092 +++
45757
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2093 ** The new function `read-directory-name' can be used instead of
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2094 `read-file-name' to read a directory name; when used, completion
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2095 will only show directories.
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2096
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2097 +++
46201
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2098 ** The new function `file-remote-p' tests a file name and returns
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2099 non-nil if it specifies a remote file (one that Emacs accesses using
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2100 its own special methods and not directly through the file system).
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2101
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2102 ---
46201
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2103 ** When a Lisp file uses CL functions at run-time, compiling the file
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2104 now issues warnings about these calls, unless the file performs
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2105 (require 'cl) when loaded.
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2106
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2107 +++
44134
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2108 ** The `defmacro' form may contain declarations specifying how to
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2109 indent the macro in Lisp mode and how to debug it with Edebug. The
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2110 syntax of defmacro has been extended to
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2111
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2112 (defmacro NAME LAMBDA-LIST [DOC-STRING] [DECLARATION ...] ...)
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2113
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2114 DECLARATION is a list `(declare DECLARATION-SPECIFIER ...)'. The
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2115 declaration specifiers supported are:
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2116
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2117 (indent INDENT)
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2118 Set NAME's `lisp-indent-function' property to INDENT.
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2119
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2120 (edebug DEBUG)
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2121 Set NAME's `edebug-form-spec' property to DEBUG. (This is
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2122 equivalent to writing a `def-edebug-spec' for the macro.
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2123
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2124 +++
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2125 ** Interactive commands can be remapped through keymaps.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2126
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2127 This is an alternative to using defadvice or substitute-key-definition
46989
eeab5bdaffa2 Fix typos.
Richard M. Stallman <rms@gnu.org>
parents: 46962
diff changeset
2128 to modify the behavior of a key binding using the normal keymap
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2129 binding and lookup functionality.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2130
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2131 When a key sequence is bound to a command, and that command is
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2132 remapped to another command, that command is run instead of the
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2133 original command.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2134
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2135 Example:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2136 Suppose that minor mode my-mode has defined the commands
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2137 my-kill-line and my-kill-word, and it wants C-k (and any other key
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2138 bound to kill-line) to run the command my-kill-line instead of
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2139 kill-line, and likewise it wants to run my-kill-word instead of
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2140 kill-word.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2141
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2142 Instead of rebinding C-k and the other keys in the minor mode map,
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2143 command remapping allows you to directly map kill-line into
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2144 my-kill-line and kill-word into my-kill-word through the minor mode
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2145 map using define-key:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2146
43503
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2147 (define-key my-mode-map [remap kill-line] 'my-kill-line)
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2148 (define-key my-mode-map [remap kill-word] 'my-kill-word)
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2149
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2150 Now, when my-mode is enabled, and the user enters C-k or M-d,
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2151 the commands my-kill-line and my-kill-word are run.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2152
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2153 Notice that only one level of remapping is supported. In the above
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2154 example, this means that if my-kill-line is remapped to other-kill,
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2155 then C-k still runs my-kill-line.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2156
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2157 The following changes have been made to provide command remapping:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2158
43503
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2159 - Command remappings are defined using `define-key' with a prefix-key
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2160 `remap', i.e. `(define-key MAP [remap CMD] DEF)' remaps command CMD
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2161 to definition DEF in keymap MAP. The definition is not limited to
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2162 another command; it can be anything accepted for a normal binding.
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2163
49758
0f9474583892 Renamed remap-command to command-remapping.
Kim F. Storm <storm@cua.dk>
parents: 49713
diff changeset
2164 - The new function `command-remapping' returns the binding for a
0f9474583892 Renamed remap-command to command-remapping.
Kim F. Storm <storm@cua.dk>
parents: 49713
diff changeset
2165 remapped command in the current keymaps, or nil if not remapped.
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2166
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2167 - key-binding now remaps interactive commands unless the optional
43503
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2168 third argument NO-REMAP is non-nil.
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2169
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2170 - where-is-internal now returns nil for a remapped command (e.g.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2171 kill-line if my-mode is enabled), and the actual key binding for
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2172 the command it is remapped to (e.g. C-k for my-kill-line).
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2173 It also has a new optional fifth argument, NO-REMAP, which inhibits
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2174 remapping if non-nil (e.g. it returns C-k for kill-line and
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2175 <kill-line> for my-kill-line).
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2176
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2177 - The new variable `this-original-command' contains the original
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2178 command before remapping. It is equal to `this-command' when the
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2179 command was not remapped.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2180
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2181 +++
45223
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2182 ** New variable emulation-mode-map-alists.
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2183
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2184 Lisp packages using many minor mode keymaps can now maintain their own
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2185 keymap alist separate from minor-mode-map-alist by adding their keymap
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2186 alist to this list.
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2187
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2188 +++
43139
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2189 ** Atomic change groups.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2190
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2191 To perform some changes in the current buffer "atomically" so that
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2192 they either all succeed or are all undone, use `atomic-change-group'
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2193 around the code that makes changes. For instance:
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2194
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2195 (atomic-change-group
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2196 (insert foo)
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2197 (delete-region x y))
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2198
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2199 If an error (or other nonlocal exit) occurs inside the body of
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2200 `atomic-change-group', it unmakes all the changes in that buffer that
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2201 were during the execution of the body. The change group has no effect
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2202 on any other buffers--any such changes remain.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2203
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2204 If you need something more sophisticated, you can directly call the
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2205 lower-level functions that `atomic-change-group' uses. Here is how.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2206
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2207 To set up a change group for one buffer, call `prepare-change-group'.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2208 Specify the buffer as argument; it defaults to the current buffer.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2209 This function returns a "handle" for the change group. You must save
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2210 the handle to activate the change group and then finish it.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2211
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2212 Before you change the buffer again, you must activate the change
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2213 group. Pass the handle to `activate-change-group' afterward to
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2214 do this.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2215
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2216 After you make the changes, you must finish the change group. You can
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2217 either accept the changes or cancel them all. Call
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2218 `accept-change-group' to accept the changes in the group as final;
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2219 call `cancel-change-group' to undo them all.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2220
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2221 You should use `unwind-protect' to make sure the group is always
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2222 finished. The call to `activate-change-group' should be inside the
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2223 `unwind-protect', in case the user types C-g just after it runs.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2224 (This is one reason why `prepare-change-group' and
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2225 `activate-change-group' are separate functions.) Once you finish the
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2226 group, don't use the handle again--don't try to finish the same group
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2227 twice.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2228
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2229 To make a multibuffer change group, call `prepare-change-group' once
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2230 for each buffer you want to cover, then use `nconc' to combine the
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2231 returned values, like this:
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2232
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2233 (nconc (prepare-change-group buffer-1)
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2234 (prepare-change-group buffer-2))
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2235
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2236 You can then activate the multibuffer change group with a single call
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2237 to `activate-change-group', and finish it with a single call to
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2238 `accept-change-group' or `cancel-change-group'.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2239
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2240 Nested use of several change groups for the same buffer works as you
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2241 would expect. Non-nested use of change groups for the same buffer
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2242 will lead to undesirable results, so don't let it happen; the first
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2243 change group you start for any given buffer should be the last one
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2244 finished.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2245
45692
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2246 +++
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2247 ** New variable char-property-alias-alist.
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2248
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2249 This variable allows you to create alternative names for text
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2250 properties. It works at the same level as `default-text-properties',
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2251 although it applies to overlays as well. This variable was introduced
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2252 to implement the `font-lock-face' property.
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2253
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2254 +++
45692
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2255 ** New special text property `font-lock-face'.
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2256
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2257 This property acts like the `face' property, but it is controlled by
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2258 M-x font-lock-mode. It is not, strictly speaking, a builtin text
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2259 property. Instead, it is implemented inside font-core.el, using the
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2260 new variable `char-property-alias-alist'.
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2261
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2262 +++
44680
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
2263 ** New function remove-list-of-text-properties.
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
2264
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
2265 The new function `remove-list-of-text-properties' is almost the same
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
2266 as `remove-text-properties'. The only difference is that it takes
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
2267 a list of property names as argument rather than a property list.
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
2268
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2269 +++
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2270 ** New function insert-for-yank.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2271
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2272 This function normally works like `insert' but removes the text
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2273 properties in the `yank-excluded-properties' list. However, if the
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2274 inserted text has a `yank-handler' text property on the first
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2275 character of the string, the insertion of the text may be modified in
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2276 a number of ways. See the description of `yank-handler' below.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2277
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2278 +++
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2279 ** New function insert-buffer-substring-as-yank.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2280
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2281 This function works like `insert-buffer-substring', but removes the
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2282 text properties in the `yank-excluded-properties' list.
44724
867beadfbb38 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 44718
diff changeset
2283
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2284 +++
44724
867beadfbb38 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 44718
diff changeset
2285 ** New function insert-buffer-substring-no-properties.
867beadfbb38 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 44718
diff changeset
2286
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2287 This function is like insert-buffer-substring, but removes all
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2288 text properties from the inserted substring.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2289
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2290 +++
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2291 ** New `yank-handler' text property may be used to control how
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2292 previously killed text on the kill-ring is reinserted.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2293
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2294 The value of the yank-handler property must be a list with one to four
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2295 elements with the following format:
49493
67c5cfa83ddd Remove COMMAND element from yank handler.
Kim F. Storm <storm@cua.dk>
parents: 49458
diff changeset
2296 (FUNCTION PARAM NOEXCLUDE UNDO).
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2297
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2298 The `insert-for-yank' function looks for a yank-handler property on
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2299 the first character on its string argument (typically the first
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2300 element on the kill-ring). If a yank-handler property is found,
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2301 the normal behaviour of `insert-for-yank' is modified in various ways:
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2302
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2303 When FUNCTION is present and non-nil, it is called instead of `insert'
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2304 to insert the string. FUNCTION takes one argument--the object to insert.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2305 If PARAM is present and non-nil, it replaces STRING as the object
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2306 passed to FUNCTION (or `insert'); for example, if FUNCTION is
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2307 `yank-rectangle', PARAM should be a list of strings to insert as a
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2308 rectangle.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2309 If NOEXCLUDE is present and non-nil, the normal removal of the
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2310 yank-excluded-properties is not performed; instead FUNCTION is
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2311 responsible for removing those properties. This may be necessary
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2312 if FUNCTION adjusts point before or after inserting the object.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2313 If UNDO is present and non-nil, it is a function that will be called
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2314 by `yank-pop' to undo the insertion of the current object. It is
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
2315 called with two arguments, the start and end of the current region.
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2316 FUNCTION may set `yank-undo-function' to override the UNDO value.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2317
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2318 *** The functions kill-new, kill-append, and kill-region now have an
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2319 optional argument to specify the yank-handler text property to put on
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2320 the killed text.
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2321
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2322 *** The function yank-pop will now use a non-nil value of the variable
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2323 `yank-undo-function' (instead of delete-region) to undo the previous
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2324 yank or yank-pop command (or a call to insert-for-yank). The function
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2325 insert-for-yank automatically sets that variable according to the UNDO
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2326 element of the string argument's yank-handler text property if present.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2327
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2328 +++
45744
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2329 ** New function display-supports-face-attributes-p may be used to test
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2330 whether a given set of face attributes is actually displayable.
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2331
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2332 A new predicate `supports' has also been added to the `defface' face
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2333 specification language, which can be used to do this test for faces
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2334 defined with defface.
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2335
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2336 +++
46246
097c4cba0759 Add entries for face-attribute-relative-p, merge-face-attribute.
Miles Bader <miles@gnu.org>
parents: 46226
diff changeset
2337 ** face-attribute, face-foreground, face-background, and face-stipple now
097c4cba0759 Add entries for face-attribute-relative-p, merge-face-attribute.
Miles Bader <miles@gnu.org>
parents: 46226
diff changeset
2338 accept a new optional argument, INHERIT, which controls how face
097c4cba0759 Add entries for face-attribute-relative-p, merge-face-attribute.
Miles Bader <miles@gnu.org>
parents: 46226
diff changeset
2339 inheritance is used when determining the value of a face attribute.
097c4cba0759 Add entries for face-attribute-relative-p, merge-face-attribute.
Miles Bader <miles@gnu.org>
parents: 46226
diff changeset
2340
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2341 +++
46246
097c4cba0759 Add entries for face-attribute-relative-p, merge-face-attribute.
Miles Bader <miles@gnu.org>
parents: 46226
diff changeset
2342 ** New functions face-attribute-relative-p and merge-face-attribute
097c4cba0759 Add entries for face-attribute-relative-p, merge-face-attribute.
Miles Bader <miles@gnu.org>
parents: 46226
diff changeset
2343 help with handling relative face attributes.
097c4cba0759 Add entries for face-attribute-relative-p, merge-face-attribute.
Miles Bader <miles@gnu.org>
parents: 46226
diff changeset
2344
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2345 +++
49201
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2346 ** Enhancements to process support
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2347
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2348 *** Function list-processes now has an optional argument; if non-nil,
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2349 only the processes whose query-on-exit flag is set are listed.
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2350
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2351 *** New set-process-query-on-exit-flag and process-query-on-exit-flag
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2352 functions. The existing process-kill-without-query function is still
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2353 supported, but new code should use the new functions.
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2354
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2355 *** Function signal-process now accepts a process object or process
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2356 name in addition to a process id to identify the signalled process.
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2357
49228
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2358 *** Processes now have an associated property list where programs can
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
2359 maintain process state and other per-process related information.
49228
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2360
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2361 The new functions process-get and process-put are used to access, add,
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2362 and modify elements on this property list.
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2363
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2364 The new low-level functions process-plist and set-process-plist are
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2365 used to access and replace the entire property list of a process.
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2366
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2367 +++
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2368 ** Enhanced networking support.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2369
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2370 *** There is a new `make-network-process' function which supports
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2371 opening of stream and datagram connections to a server, as well as
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2372 create a stream or datagram server inside emacs.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2373
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2374 - A server is started using :server t arg.
44072
434c70e973e8 Explain how to use featurep with make-network-process.
Kim F. Storm <storm@cua.dk>
parents: 44058
diff changeset
2375 - Datagram connection is selected using :type 'datagram arg.
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2376 - A server can open on a random port using :service t arg.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2377 - Local sockets are supported using :family 'local arg.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2378 - Non-blocking connect is supported using :nowait t arg.
49228
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2379 - The process' property list may be initialized using :plist PLIST arg;
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2380 a copy of the server process' property list is automatically inherited
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2381 by new client processes created to handle incoming connections.
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2382
44072
434c70e973e8 Explain how to use featurep with make-network-process.
Kim F. Storm <storm@cua.dk>
parents: 44058
diff changeset
2383 To test for the availability of a given feature, use featurep like this:
434c70e973e8 Explain how to use featurep with make-network-process.
Kim F. Storm <storm@cua.dk>
parents: 44058
diff changeset
2384 (featurep 'make-network-process '(:type datagram))
434c70e973e8 Explain how to use featurep with make-network-process.
Kim F. Storm <storm@cua.dk>
parents: 44058
diff changeset
2385
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2386 *** Original open-network-stream is now emulated using make-network-process.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2387
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2388 *** New function open-network-stream-nowait.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2389
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2390 This function initiates a non-blocking connect and returns immediately
49135
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2391 without waiting for the connection to be established. It takes the
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2392 filter and sentinel functions as arguments; when the non-blocking
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2393 connect completes, the sentinel is called with a status string
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2394 matching "open" or "failed".
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2395
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2396 *** New function open-network-stream-server.
49135
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2397
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2398 This function creates a network server process for a TCP service.
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2399 When a client connects to the specified service, a new subprocess
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2400 is created to handle the new connection, and the sentinel function
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2401 is called for the new process.
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2402
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2403 *** New functions process-datagram-address and set-process-datagram-address.
49135
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2404
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2405 These functions are used with datagram-based network processes to get
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2406 and set the current address of the remote partner.
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2407
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
2408 *** New function format-network-address.
49135
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2409
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2410 This function reformats the lisp representation of a network address
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2411 to a printable string. For example, an IP address A.B.C.D and port
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2412 number P is represented as a five element vector [A B C D P], and the
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2413 printable string returned for this vector is "A.B.C.D:P". See the doc
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2414 string for other formatting options.
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
2415
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2416 *** By default, the function process-contact still returns (HOST SERVICE)
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2417 for a network process. Using the new optional KEY arg, the complete list
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2418 of network process properties or a specific property can be selected.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2419
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2420 Using :local and :remote as the KEY, the address of the local or
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2421 remote end-point is returned. An Inet address is represented as a 5
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2422 element vector, where the first 4 elements contain the IP address and
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2423 the fifth is the port number.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2424
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2425 *** Network processes can now be stopped and restarted with
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2426 `stop-process' and `continue-process'. For a server process, no
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2427 connections are accepted in the stopped state. For a client process,
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2428 no input is received in the stopped state.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2429
52504
cd1293e6665e New functions network-interface-list and get-network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52494
diff changeset
2430 *** New function network-interface-list.
cd1293e6665e New functions network-interface-list and get-network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52494
diff changeset
2431
cd1293e6665e New functions network-interface-list and get-network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52494
diff changeset
2432 This function returns a list of network interface names and their
cd1293e6665e New functions network-interface-list and get-network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52494
diff changeset
2433 current network addresses.
cd1293e6665e New functions network-interface-list and get-network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52494
diff changeset
2434
52555
6fde172d0fc4 Rename get-network-interface-info to network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52531
diff changeset
2435 *** New function network-interface-info.
52504
cd1293e6665e New functions network-interface-list and get-network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52494
diff changeset
2436
cd1293e6665e New functions network-interface-list and get-network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52494
diff changeset
2437 This function returns the network address, hardware address, current
cd1293e6665e New functions network-interface-list and get-network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52494
diff changeset
2438 status, and other information about a specific network interface.
cd1293e6665e New functions network-interface-list and get-network-interface-info.
Kim F. Storm <storm@cua.dk>
parents: 52494
diff changeset
2439
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2440 +++
45758
d6822e2dafb3 Add copy-tree.
Colin Walters <walters@gnu.org>
parents: 45757
diff changeset
2441 ** New function copy-tree.
d6822e2dafb3 Add copy-tree.
Colin Walters <walters@gnu.org>
parents: 45757
diff changeset
2442
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2443 +++
42940
7c0e12d6edb5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42874
diff changeset
2444 ** New function substring-no-properties.
7c0e12d6edb5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42874
diff changeset
2445
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2446 +++
43626
de43922d0921 Blinking cursor enhancement.
Kim F. Storm <storm@cua.dk>
parents: 43607
diff changeset
2447 ** New function minibuffer-selected-window.
de43922d0921 Blinking cursor enhancement.
Kim F. Storm <storm@cua.dk>
parents: 43607
diff changeset
2448
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2449 +++
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2450 ** New function `call-process-shell-command'.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2451
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2452 ---
44957
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2453 ** The dummy function keys made by easymenu
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2454 are now always lower case. If you specify the
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2455 menu item name "Ada", for instance, it uses `ada'
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2456 as the "key" bound by that key binding.
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2457
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2458 This is relevant only if Lisp code looks for
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2459 the bindings that were made with easymenu.
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2460
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2461 +++
44957
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2462 ** The function `commandp' takes an additional optional
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2463 argument. If it is non-nil, then `commandp' checks
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2464 for a function that could be called with `call-interactively',
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2465 and does not return t for keyboard macros.
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2466
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2467 ---
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2468 ** master-mode.el implements a minor mode for scrolling a slave
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2469 buffer without leaving your current buffer, the master buffer.
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2470
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2471 It can be used by sql.el, for example: the SQL buffer is the master
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2472 and its SQLi buffer is the slave. This allows you to scroll the SQLi
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2473 buffer containing the output from the SQL buffer containing the
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2474 commands.
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2475
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2476 This is how to use sql.el and master.el together: the variable
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2477 sql-buffer contains the slave buffer. It is a local variable in the
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2478 SQL buffer.
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2479
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2480 (add-hook 'sql-mode-hook
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2481 (function (lambda ()
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2482 (master-mode t)
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2483 (master-set-slave sql-buffer))))
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2484 (add-hook 'sql-set-sqli-hook
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2485 (function (lambda ()
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2486 (master-set-slave sql-buffer))))
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2487
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2488 +++
44418
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2489 ** File local variables.
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2490
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2491 A file local variables list cannot specify a string with text
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2492 properties--any specified text properties are discarded.
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2493
42958
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
2494 +++
42820
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2495 ** New function window-body-height.
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2496
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2497 This is like window-height but does not count the mode line
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2498 or the header line.
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2499
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2500 +++
45757
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2501 ** New function format-mode-line.
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2502
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2503 This returns the mode-line or header-line of the selected (or a
46064
f0a33c7767fb format-mode-line now returns propertized string by default.
Kim F. Storm <storm@cua.dk>
parents: 46034
diff changeset
2504 specified) window as a string with or without text properties.
45757
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2505
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2506 +++
44160
9139b10bc7e6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44134
diff changeset
2507 ** New functions `lax-plist-get' and `lax-plist-put'.
9139b10bc7e6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44134
diff changeset
2508
9139b10bc7e6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44134
diff changeset
2509 These functions are like `plist-get' and `plist-put' except that they
9139b10bc7e6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44134
diff changeset
2510 compare the property name using `equal' rather than `eq'.
9139b10bc7e6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44134
diff changeset
2511
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2512 +++
44308
ecd559f0d5c3 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44295
diff changeset
2513 ** New function `tool-bar-local-item-from-menu'
ecd559f0d5c3 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44295
diff changeset
2514
48728
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
2515 The `tool-bar-add-item-from-menu' must not be used (as previously
44308
ecd559f0d5c3 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44295
diff changeset
2516 recommended) for making entries in the tool bar for local keymaps.
ecd559f0d5c3 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44295
diff changeset
2517 Instead, use the function `tool-bar-local-item-from-menu', which lets
ecd559f0d5c3 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44295
diff changeset
2518 you specify the map to use as an argument.
ecd559f0d5c3 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44295
diff changeset
2519
42820
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2520 +++
43415
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2521 ** The function `atan' now accepts an optional second argument.
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2522
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2523 When called with 2 arguments, as in `(atan Y X)', `atan' returns the
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2524 angle in radians between the vector [X, Y] and the X axis. (This is
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2525 equivalent to the standard C library function `atan2'.)
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2526
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2527 +++
42867
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2528 ** You can now make a window as short as one line.
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2529
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2530 A window that is just one line tall does not display either a mode
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2531 line or a header line, even if the variables `mode-line-format' and
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2532 `header-line-format' call for them. A window that is two lines tall
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2533 cannot display both a mode line and a header line at once; if the
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2534 variables call for both, only the mode line actually appears.
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2535
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2536 +++
42749
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
2537 ** The new frame parameter `tty-color-mode' specifies the mode to use
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
2538 for color support on character terminal frames. Its value can be a
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
2539 number of colors to support, or a symbol. See the Emacs Lisp
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
2540 Reference manual for more detailed documentation.
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
2541
52630
35a79a8e5bd0 *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52616
diff changeset
2542 +++
35a79a8e5bd0 *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52616
diff changeset
2543 ** The new mode-line construct `(:propertize ELT PROPS...)' can be
35a79a8e5bd0 *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52616
diff changeset
2544 used to add text properties to mode-line elements.
35a79a8e5bd0 *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52616
diff changeset
2545
52665
c9422c237eae *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52630
diff changeset
2546 +++
c9422c237eae *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52630
diff changeset
2547 ** Mode line display ignores text properties as well as the
c9422c237eae *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52630
diff changeset
2548 :propertize and :eval forms in the value of a variable whose
c9422c237eae *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52630
diff changeset
2549 `risky-local-variable' property is nil.
44418
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2550
52466
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
2551 +++
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
2552 ** The new `%i' and `%I' constructs for `mode-line-format' can be used
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
2553 to display the size of the accessible part of the buffer on the mode
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
2554 line.
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
2555
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2556 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2557 ** Indentation of simple and extended loop forms has been added to the
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2558 cl-indent package. The new user options
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2559 `lisp-loop-keyword-indentation', `lisp-loop-forms-indentation', and
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2560 `lisp-simple-loop-indentation' can be used to customize the
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2561 indentation of keywords and forms in loop forms.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2562
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2563 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2564 ** Indentation of backquoted forms has been made customizable in the
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2565 cl-indent package. See the new user option `lisp-backquote-indentation'.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2566
42629
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2567 ** Already true in Emacs 21.1, but not emphasized clearly enough:
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2568
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2569 Multibyte buffers can now faithfully record all 256 character codes
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2570 from 0 to 255. As a result, most of the past reasons to use unibyte
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2571 buffers no longer exist. We only know of three reasons to use them
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2572 now:
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2573
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2574 1. If you prefer to use unibyte text all of the time.
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2575
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2576 2. For reading files into temporary buffers, when you want to avoid
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2577 the time it takes to convert the format.
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2578
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2579 3. For binary files where format conversion would be pointless and
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2580 wasteful.
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2581
42487
88fb2c8602aa *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42437
diff changeset
2582 ** If text has a `keymap' property, that keymap takes precedence
88fb2c8602aa *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42437
diff changeset
2583 over minor mode keymaps.
88fb2c8602aa *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42437
diff changeset
2584
42425
aa6c345a4af0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42367
diff changeset
2585 ** A hex escape in a string forces the string to be multibyte.
aa6c345a4af0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42367
diff changeset
2586 An octal escape makes it unibyte.
aa6c345a4af0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42367
diff changeset
2587
50607
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
2588 ** At the end of a command, point moves out from within invisible
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
2589 text, in the same way it moves out from within text covered by an
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
2590 image or composition property.
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
2591
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
2592 This makes it generally unnecessary to mark invisible text as intangible.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
2593 This is particularly good because the intangible property often has
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
2594 unexpected side-effects since the property applies to everything
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
2595 (including `goto-char', ...) whereas this new code is only run after
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
2596 post-command-hook and thus does not care about intermediate states.
51608
05ddf95bcbff *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51602
diff changeset
2597
44625
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2598 ** Only one of the beginning or end of an invisible, intangible region is
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2599 considered an acceptable value for point; which one is determined by
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2600 examining how the invisible/intangible properties are inherited when new
50710
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2601 text is inserted adjacent to them. (The `front-sticky' and `rear-sticky'
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2602 properties control this.)
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2603
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2604 If the invisible/intangible would be inherited by any text inserted
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2605 before this region, then the position before it is considered
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2606 unacceptable, and point is forced to continue (if moving forwards, to
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2607 the position following the invisible/intangible text; if moving
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2608 backwards, to one position before). If the properties would be
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2609 inherited by any text inserted after, then the position after is
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2610 considered unacceptable, and point is forced to keep moving (if moving
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2611 backwards, to the position preceding the invisible/intangible text; if
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2612 moving forwards, to one position later).
44625
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2613
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2614 Thus, point can only go to one end of an invisible, intangible region, but
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2615 not the other one. This prevents C-f and C-b from appearing to stand still
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2616 on the screen.
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2617
50710
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2618 You should not set it up so that both the position before and the position
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2619 after are unacceptable.
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2620
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2621 +++
44625
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2622 ** field-beginning and field-end now accept an additional optional
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2623 argument, LIMIT.
42367
e79ed5ab7b08 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42342
diff changeset
2624
42437
5426f6a09f35 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42434
diff changeset
2625 +++
42434
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2626 ** define-abbrev now accepts an optional argument SYSTEM-FLAG. If
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2627 non-nil, this marks the abbrev as a "system" abbrev, which means that
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2628 it won't be stored in the user's abbrevs file if he saves the abbrevs.
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2629 Major modes that predefine some abbrevs should always specify this
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2630 flag.
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2631
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2632 ---
42281
18095fb6473e *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 42216
diff changeset
2633 ** Support for Mocklisp has been removed.
18095fb6473e *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 42216
diff changeset
2634
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2635 ---
42281
18095fb6473e *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 42216
diff changeset
2636 ** The function insert-string is now obsolete.
18095fb6473e *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 42216
diff changeset
2637
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2638 ---
41596
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2639 ** The precedence of file-name-handlers has been changed.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2640 Instead of blindly choosing the first handler that matches,
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2641 find-file-name-handler now gives precedence to a file-name handler
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2642 that matches near the end of the file name. More specifically, the
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2643 handler whose (match-beginning 0) is the largest is chosen.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2644 In case of ties, the old "first matched" rule applies.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2645
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2646 ---
41594
452efff38a6e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41501
diff changeset
2647 ** Dense keymaps now handle inheritance correctly.
41847
7423116b7ac3 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41820
diff changeset
2648 Previously a dense keymap would hide all of the simple-char key
7423116b7ac3 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41820
diff changeset
2649 bindings of the parent keymap.
41594
452efff38a6e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41501
diff changeset
2650
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2651 ---
41337
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2652 ** jit-lock obeys a new text-property `jit-lock-defer-multiline'.
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2653 If a piece of text with that property gets contextually refontified
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2654 (see jit-lock-defer-contextually), then all of that text will
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2655 be refontified. This is useful when the syntax of a textual element
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2656 depends on text several lines further down (and when font-lock-multiline
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2657 is not appropriate to solve that problem). For example in Perl:
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2658
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2659 s{
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2660 foo
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2661 }{
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2662 bar
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2663 }e
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2664
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2665 Adding/removing the last `e' changes the `bar' from being a piece of
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2666 text to being a piece of code, so you'd put a jit-lock-defer-multiline
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2667 property over the second half of the command to force (deferred)
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2668 refontification of `bar' whenever the `e' is added/removed.
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2669
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2670 ---
41298
dd0332958888 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41246
diff changeset
2671 ** describe-vector now takes a second argument `describer' which is
42183
ccf68d58861d Fix typos. From Juanma Barranquero <lektu@teleline.es>.
Pavel Janík <Pavel@Janik.cz>
parents: 42160
diff changeset
2672 called to print the entries' values. It defaults to `princ'.
41298
dd0332958888 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41246
diff changeset
2673
41229
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2674 ** defcustom and other custom declarations now use a default group
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2675 (the last group defined in the same file) when no :group was given.
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2676
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2677 +++
41229
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2678 ** emacsserver now runs pre-command-hook and post-command-hook when
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2679 it receives a request from emacsclient.
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2680
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2681 ---
41471
41ef4373121e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41439
diff changeset
2682 ** The variable `recursive-load-depth-limit' has been deleted.
41ef4373121e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41439
diff changeset
2683 Emacs now signals an error if the same file is loaded with more
41ef4373121e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41439
diff changeset
2684 than 3 levels of nesting.
41ef4373121e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41439
diff changeset
2685
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2686 ---
40973
5959d9cfe456 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40963
diff changeset
2687 ** If a major mode function has a non-nil `no-clone-indirect'
5959d9cfe456 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40963
diff changeset
2688 property, `clone-indirect-buffer' signals an error if you use
5959d9cfe456 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40963
diff changeset
2689 it in that buffer.
5959d9cfe456 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40963
diff changeset
2690
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2691 ---
41367
65eb0f7957c8 Fix a typo.
Eli Zaretskii <eliz@gnu.org>
parents: 41356
diff changeset
2692 ** In `replace-match', the replacement text no longer inherits
41356
39332ec6c47d Fix typos.
Eli Zaretskii <eliz@gnu.org>
parents: 41355
diff changeset
2693 properties from surrounding text.
40973
5959d9cfe456 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40963
diff changeset
2694
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2695 +++
40729
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
2696 ** New function `buffer-local-value'.
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
2697
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
2698 This function returns the buffer-local binding of VARIABLE (a symbol)
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
2699 in buffer BUFFER. If VARIABLE does not have a buffer-local binding in
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
2700 buffer BUFFER, it returns the default value of VARIABLE instead.
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2701
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2702 ---
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2703 ** New function `text-clone-create'. Text clones are chunks of text
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2704 that are kept identical by transparently propagating changes from one
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2705 clone to the other.
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2706
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2707 +++
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2708 ** font-lock can manage arbitrary text-properties beside `face'.
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2709 *** the FACENAME returned in font-lock-keywords can be a list
43607
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43602
diff changeset
2710 of the form (face FACE PROP1 VAL1 PROP2 VAL2 ...) so you can set
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2711 other properties than `face'.
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2712 *** font-lock-extra-managed-props can be set to make sure those extra
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2713 properties are automatically cleaned up by font-lock.
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2714
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2715 ---
43932
435ee4108bad Document removal of special treatment of fg:COLOR and bg:COLOR faces.
Eli Zaretskii <eliz@gnu.org>
parents: 43931
diff changeset
2716 ** The special treatment of faces whose names are of the form `fg:COLOR'
435ee4108bad Document removal of special treatment of fg:COLOR and bg:COLOR faces.
Eli Zaretskii <eliz@gnu.org>
parents: 43931
diff changeset
2717 or `bg:COLOR' has been removed. Lisp programs should use the
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2718 `defface' facility for defining faces with specific colors, or use
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2719 the feature of specifying the face attributes :foreground and :background
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2720 directly in the `face' property instead of using a named face.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2721
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2722 +++
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2723 ** The new function `run-mode-hooks' and the new macro `delay-mode-hooks'
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2724 are used by define-derived-mode to make sure the mode hook for the
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2725 parent mode is run at the end of the child mode.
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2726
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2727 +++
50553
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
2728 ** define-minor-mode now accepts arbitrary additional keyword arguments
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
2729 and simply passes them to defcustom, if applicable.
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
2730
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2731 +++
47433
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
2732 ** define-derived-mode by default creates a new empty abbrev table.
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
2733 It does not copy abbrevs from the parent mode's abbrev table.
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
2734
46226
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
2735 +++
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2736 ** `provide' and `featurep' now accept an optional second argument
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2737 to test/provide subfeatures. Also `provide' now checks `after-load-alist'
51647
c9a97d52236b *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51608
diff changeset
2738 and runs any code associated with the provided feature.
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2739
40190
9ba78bf11cf1 Document changes in file-name-sans-extension and file-name-extension.
Eli Zaretskii <eliz@gnu.org>
parents: 39975
diff changeset
2740 +++
9ba78bf11cf1 Document changes in file-name-sans-extension and file-name-extension.
Eli Zaretskii <eliz@gnu.org>
parents: 39975
diff changeset
2741 ** Functions `file-name-sans-extension' and `file-name-extension' now
9ba78bf11cf1 Document changes in file-name-sans-extension and file-name-extension.
Eli Zaretskii <eliz@gnu.org>
parents: 39975
diff changeset
2742 ignore the leading dots in file names, so that file names such as
9ba78bf11cf1 Document changes in file-name-sans-extension and file-name-extension.
Eli Zaretskii <eliz@gnu.org>
parents: 39975
diff changeset
2743 `.emacs' are treated as extensionless.
9ba78bf11cf1 Document changes in file-name-sans-extension and file-name-extension.
Eli Zaretskii <eliz@gnu.org>
parents: 39975
diff changeset
2744
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2745 +++
39778
939f548d08cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39771
diff changeset
2746 ** Functions `user-uid' and `user-real-uid' now return floats if the
939f548d08cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39771
diff changeset
2747 user UID doesn't fit in a Lisp integer. Function `user-full-name'
939f548d08cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39771
diff changeset
2748 accepts a float as UID parameter.
939f548d08cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39771
diff changeset
2749
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2750 ---
39765
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2751 ** `define-key-after' now accepts keys longer than 1.
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2752
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2753 +++
39765
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2754 ** The local variable `no-byte-compile' in elisp files is now obeyed.
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2755
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2756 +++
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2757 ** The Emacs Lisp byte-compiler now displays the actual line and
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2758 character position of errors, where possible. Additionally, the form
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2759 of its warning and error messages have been brought more in line with
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2760 the output of other GNU tools.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2761
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2762 +++
39849
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2763 ** New functions `keymap-prompt' and `current-active-maps'.
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2764
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2765 ---
39849
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2766 ** New function `describe-buffer-bindings'.
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2767
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2768 +++
39849
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2769 ** New vars `exec-suffixes' and `load-suffixes' used when
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2770 searching for an executable resp. an elisp file.
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2771
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2772 +++
45614
8f47aa4a587a *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45610
diff changeset
2773 ** Variable aliases have been implemented:
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2774
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2775 *** defvaralias ALIAS-VAR BASE-VAR [DOCSTRING]
46401
0616af8d6d42 Fix reference to `defvaralias' as a macro.
Juanma Barranquero <lekktu@gmail.com>
parents: 46391
diff changeset
2776
0616af8d6d42 Fix reference to `defvaralias' as a macro.
Juanma Barranquero <lekktu@gmail.com>
parents: 46391
diff changeset
2777 This function defines the symbol ALIAS-VAR as a variable alias for
0616af8d6d42 Fix reference to `defvaralias' as a macro.
Juanma Barranquero <lekktu@gmail.com>
parents: 46391
diff changeset
2778 symbol BASE-VAR. This means that retrieving the value of ALIAS-VAR
0616af8d6d42 Fix reference to `defvaralias' as a macro.
Juanma Barranquero <lekktu@gmail.com>
parents: 46391
diff changeset
2779 returns the value of BASE-VAR, and changing the value of ALIAS-VAR
0616af8d6d42 Fix reference to `defvaralias' as a macro.
Juanma Barranquero <lekktu@gmail.com>
parents: 46391
diff changeset
2780 changes the value of BASE-VAR.
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2781
46391
5d5a55d8897b Document third argument of defvaralias.
Juanma Barranquero <lekktu@gmail.com>
parents: 46246
diff changeset
2782 DOCSTRING, if present, is the documentation for ALIAS-VAR; else it has
5d5a55d8897b Document third argument of defvaralias.
Juanma Barranquero <lekktu@gmail.com>
parents: 46246
diff changeset
2783 the same documentation as BASE-VAR.
5d5a55d8897b Document third argument of defvaralias.
Juanma Barranquero <lekktu@gmail.com>
parents: 46246
diff changeset
2784
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2785 *** indirect-variable VARIABLE
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2786
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2787 This function returns the variable at the end of the chain of aliases
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2788 of VARIABLE. If VARIABLE is not a symbol, or if VARIABLE is not
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2789 defined as an alias, the function returns VARIABLE.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2790
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2791 It might be noteworthy that variables aliases work for all kinds of
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2792 variables, including buffer-local and frame-local variables.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2793
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2794 +++
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2795 ** Functions from `post-gc-hook' are run at the end of garbage
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2796 collection. The hook is run with GC inhibited, so use it with care.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2797
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2798 +++
39604
3eb5c468047e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39601
diff changeset
2799 ** If the second argument to `copy-file' is the name of a directory,
39605
80c62639fd20 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39604
diff changeset
2800 the file is copied to that directory instead of signaling an error.
39604
3eb5c468047e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39601
diff changeset
2801
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2802 +++
39647
387ceba6fde4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39605
diff changeset
2803 ** The variables most-positive-fixnum and most-negative-fixnum
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2804 hold the largest and smallest possible integer values.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2805
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2806 ---
41355
ffd42182dd37 Added note about locale-coding-system on Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41340
diff changeset
2807 ** On MS Windows, locale-coding-system is used to interact with the OS.
ffd42182dd37 Added note about locale-coding-system on Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41340
diff changeset
2808 The Windows specific variable w32-system-coding-system, which was
ffd42182dd37 Added note about locale-coding-system on Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41340
diff changeset
2809 formerly used for that purpose is now an alias for locale-coding-system.
ffd42182dd37 Added note about locale-coding-system on Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41340
diff changeset
2810
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2811 ** Functions y-or-n-p, read-char, read-key-sequence and the like, that
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2812 display a prompt but don't use the minibuffer, now display the prompt
43754
877062848c63 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 43724
diff changeset
2813 using the text properties (esp. the face) of the prompt string.
877062848c63 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 43724
diff changeset
2814
39765
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2815 ** New packages:
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2816
51928
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2817 *** The new package gdb-ui.el provides an enhanced graphical interface to
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2818 GDB. You can interact with GDB through the GUD buffer in the usual way, but
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2819 there are also further buffers which control the execution and describe the
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2820 state of your program. It separates the input/output of your program from
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2821 that of GDB and displays expressions and their current values in their own
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2822 buffers. It also uses features of Emacs 21 such as the display margin for
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2823 breakpoints, and the toolbar.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2824
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2825 Use M-x gdba to start GDB-UI.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2826
39765
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2827 *** The new package syntax.el provides an efficient way to find the
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2828 current syntactic context (as returned by parse-partial-sexp).
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2829
46124
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
2830 *** The new package bindat.el provides functions to unpack and pack
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
2831 binary data structures, such as network packets, to and from Lisp
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
2832 data structures.
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
2833
41340
00ed4838100e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41337
diff changeset
2834 *** The TCL package tcl-mode.el was replaced by tcl.el.
42703
8b35cce1f9c8 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 42681
diff changeset
2835 This was actually done in Emacs-21.1, and was not documented.
8b35cce1f9c8 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 42681
diff changeset
2836
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2837 *** The new package button.el implements simple and fast `clickable buttons'
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2838 in emacs buffers. `buttons' are much lighter-weight than the `widgets'
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2839 implemented by widget.el, and can be used by lisp code that doesn't
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2840 require the full power of widgets. Emacs uses buttons for such things
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2841 as help and apropos buffers.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2842
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2843
51928
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2844 * Installation changes in Emacs 21.3
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2845
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2846 ** Support for GNU/Linux on little-endian MIPS and on IBM S390 has
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2847 been added.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2848
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2849
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2850 * Changes in Emacs 21.3
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2851
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2852 ** The obsolete C mode (c-mode.el) has been removed to avoid problems
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2853 with Custom.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2854
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2855 ** UTF-16 coding systems are available, encoding the same characters
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2856 as mule-utf-8. Coding system `utf-16-le-dos' is useful as the value
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2857 of `selection-coding-system' in MS Windows, allowing you to paste
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2858 multilingual text from the clipboard. Set it interactively with
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2859 C-x RET x or in .emacs with `(set-selection-coding-system 'utf-16-le-dos)'.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2860
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2861 ** There is a new language environment for UTF-8 (set up automatically
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2862 in UTF-8 locales).
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2863
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2864 ** Translation tables are available between equivalent characters in
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2865 different Emacs charsets -- for instance `e with acute' coming from the
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2866 Latin-1 and Latin-2 charsets. User options `unify-8859-on-encoding-mode'
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2867 and `unify-8859-on-decoding-mode' respectively turn on translation
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2868 between ISO 8859 character sets (`unification') on encoding
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2869 (e.g. writing a file) and decoding (e.g. reading a file). Note that
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2870 `unify-8859-on-encoding-mode' is useful and safe, but
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2871 `unify-8859-on-decoding-mode' can cause text to change when you read
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2872 it and write it out again without edits, so it is not generally advisable.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2873 By default `unify-8859-on-encoding-mode' is turned on.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2874
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2875 ** In Emacs running on the X window system, the default value of
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2876 `selection-coding-system' is now `compound-text-with-extensions'.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2877
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2878 If you want the old behavior, set selection-coding-system to
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2879 compound-text, which may be significantly more efficient. Using
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2880 compound-text-with-extensions seems to be necessary only for decoding
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2881 text from applications under XFree86 4.2, whose behaviour is actually
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2882 contrary to the compound text specification.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2883
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2884
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2885 * Installation changes in Emacs 21.2
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2886
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2887 ** Support for BSD/OS 5.0 has been added.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2888
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2889 ** Support for AIX 5.1 was added.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2890
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2891
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2892 * Changes in Emacs 21.2
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2893
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2894 ** Emacs now supports compound-text extended segments in X selections.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2895
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2896 X applications can use `extended segments' to encode characters in
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2897 compound text that belong to character sets which are not part of the
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2898 list of approved standard encodings for X, e.g. Big5. To paste
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2899 selections with such characters into Emacs, use the new coding system
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2900 compound-text-with-extensions as the value of selection-coding-system.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2901
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2902 ** The default values of `tooltip-delay' and `tooltip-hide-delay'
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2903 were changed.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2904
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2905 ** On terminals whose erase-char is ^H (Backspace), Emacs
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2906 now uses normal-erase-is-backspace-mode.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2907
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2908 ** When the *scratch* buffer is recreated, its mode is set from
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2909 initial-major-mode, which normally is lisp-interaction-mode,
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2910 instead of using default-major-mode.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2911
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2912 ** The new option `Info-scroll-prefer-subnodes' causes Info to behave
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2913 like the stand-alone Info reader (from the GNU Texinfo package) as far
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2914 as motion between nodes and their subnodes is concerned. If it is t
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2915 (the default), Emacs behaves as before when you type SPC in a menu: it
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2916 visits the subnode pointed to by the first menu entry. If this option
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2917 is nil, SPC scrolls to the end of the current node, and only then goes
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2918 to the first menu item, like the stand-alone reader does.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2919
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2920 This change was already in Emacs 21.1, but wasn't advertised in the
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2921 NEWS.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2922
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2923
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2924 * Lisp Changes in Emacs 21.2
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2925
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2926 ** The meanings of scroll-up-aggressively and scroll-down-aggressively
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2927 have been interchanged, so that the former now controls scrolling up,
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2928 and the latter now controls scrolling down.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2929
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2930 ** The variable `compilation-parse-errors-filename-function' can
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2931 be used to transform filenames found in compilation output.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2932
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2933
25995
0c93f1c6603a Note --with-pop change.
Dave Love <fx@gnu.org>
parents: 25992
diff changeset
2934 * Installation Changes in Emacs 21.1
0c93f1c6603a Note --with-pop change.
Dave Love <fx@gnu.org>
parents: 25992
diff changeset
2935
36039
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
2936 See the INSTALL file for information on installing extra libraries and
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
2937 fonts to take advantage of the new graphical features and extra
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
2938 charsets in this release.
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
2939
30576
e53905a0a16b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30568
diff changeset
2940 ** Support for GNU/Linux on IA64 machines has been added.
e53905a0a16b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30568
diff changeset
2941
31007
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
2942 ** Support for LynxOS has been added.
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
2943
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
2944 ** There are new configure options associated with the support for
29962
cb2595f03c92 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 29949
diff changeset
2945 images and toolkit scrollbars. Use the --help option in `configure'
cb2595f03c92 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 29949
diff changeset
2946 to list them.
29696
a5051216d618 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29676
diff changeset
2947
30467
26afdae5ea13 --disable-largefile, 64-bit solaris
Dave Love <fx@gnu.org>
parents: 30445
diff changeset
2948 ** You can build a 64-bit Emacs for SPARC/Solaris systems which
32182
f5d09b70a4b8 irix64, gnus-mule.el
Dave Love <fx@gnu.org>
parents: 32050
diff changeset
2949 support 64-bit executables and also on Irix 6.5. This increases the
33484
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
2950 maximum buffer size. See etc/MACHINES for instructions. Changes to
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
2951 build on other 64-bit systems should be straightforward modulo any
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
2952 necessary changes to unexec.
30576
e53905a0a16b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30568
diff changeset
2953
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2954 ** There is a new configure option `--disable-largefile' to omit
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2955 Unix-98-style support for large files if that is available.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2956
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2957 ** There is a new configure option `--without-xim' that instructs
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2958 Emacs to not use X Input Methods (XIM), if these are available.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2959
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2960 ** `movemail' defaults to supporting POP. You can turn this off using
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2961 the --without-pop configure option, should that be necessary.
32428
e67d8ebd2b24 windows/mac non-support
Dave Love <fx@gnu.org>
parents: 32314
diff changeset
2962
32865
34e286ed22a5 Say that Emacs can now be built on the Macintosh.
Andrew Choi <akochoi@shaw.ca>
parents: 32845
diff changeset
2963 ** This version can be built for the Macintosh, but does not implement
32966
c75de0056053 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 32915
diff changeset
2964 all of the new display features described below. The port currently
34204
10c8428f0fd1 Point to the Mac OS chapter in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 34191
diff changeset
2965 lacks unexec, asynchronous processes, and networking support. See the
10c8428f0fd1 Point to the Mac OS chapter in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 34191
diff changeset
2966 "Emacs and the Mac OS" appendix in the Emacs manual, for the
10c8428f0fd1 Point to the Mac OS chapter in the docs.
Eli Zaretskii <eliz@gnu.org>
parents: 34191
diff changeset
2967 description of aspects specific to the Mac.
32428
e67d8ebd2b24 windows/mac non-support
Dave Love <fx@gnu.org>
parents: 32314
diff changeset
2968
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2969 ** Note that the MS-Windows port does not yet implement various of the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2970 new display features described below.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2971
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
2972
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
2973 * Changes in Emacs 21.1
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
2974
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2975 ** Emacs has a new redisplay engine.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2976
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2977 The new redisplay handles characters of variable width and height.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2978 Italic text can be used without redisplay problems. Fonts containing
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2979 oversized characters, i.e. characters larger than the logical height
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2980 of a font can be used. Images of various formats can be displayed in
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2981 the text.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2982
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2983 ** Emacs has a new face implementation.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2984
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2985 The new faces no longer fundamentally use X font names to specify the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2986 font. Instead, each face has several independent attributes--family,
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2987 height, width, weight and slant--that it may or may not specify.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2988 These attributes can be merged from various faces, and then together
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2989 specify a font.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2990
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2991 Faces are supported on terminals that can display color or fonts.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2992 These terminal capabilities are auto-detected. Details can be found
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2993 under Lisp changes, below.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2994
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2995 ** Emacs can display faces on TTY frames.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2996
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2997 Emacs automatically detects terminals that are able to display colors.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2998 Faces with a weight greater than normal are displayed extra-bright, if
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2999 the terminal supports it. Faces with a weight less than normal and
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3000 italic faces are displayed dimmed, if the terminal supports it.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3001 Underlined faces are displayed underlined if possible. Other face
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3002 attributes such as `overline', `strike-through', and `box' are ignored
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3003 on terminals.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3004
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3005 The command-line options `-fg COLOR', `-bg COLOR', and `-rv' are now
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3006 supported on character terminals.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3007
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3008 Emacs automatically remaps all X-style color specifications to one of
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3009 the colors supported by the terminal. This means you could have the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3010 same color customizations that work both on a windowed display and on
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3011 a TTY or when Emacs is invoked with the -nw option.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3012
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3013 ** New default font is Courier 12pt under X.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3014
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3015 ** Sound support
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3016
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3017 Emacs supports playing sound files on GNU/Linux and FreeBSD (Voxware
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3018 driver and native BSD driver, a.k.a. Luigi's driver). Currently
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3019 supported file formats are RIFF-WAVE (*.wav) and Sun Audio (*.au).
39075
8722aa0ae475 Mark (almost) all entries either --- or +++.
Eli Zaretskii <eliz@gnu.org>
parents: 39031
diff changeset
3020 You must configure Emacs with the option `--with-sound=yes' to enable
8722aa0ae475 Mark (almost) all entries either --- or +++.
Eli Zaretskii <eliz@gnu.org>
parents: 39031
diff changeset
3021 sound support.
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3022
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3023 ** Emacs now resizes mini-windows if appropriate.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3024
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3025 If a message is longer than one line, or minibuffer contents are
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3026 longer than one line, Emacs can resize the minibuffer window unless it
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3027 is on a frame of its own. You can control resizing and the maximum
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3028 minibuffer window size by setting the following variables:
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3029
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3030 - User option: max-mini-window-height
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3031
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3032 Maximum height for resizing mini-windows. If a float, it specifies a
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3033 fraction of the mini-window frame's height. If an integer, it
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3034 specifies a number of lines.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3035
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3036 Default is 0.25.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3037
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3038 - User option: resize-mini-windows
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3039
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3040 How to resize mini-windows. If nil, don't resize. If t, always
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3041 resize to fit the size of the text. If `grow-only', let mini-windows
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3042 grow only, until they become empty, at which point they are shrunk
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3043 again.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3044
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3045 Default is `grow-only'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3046
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3047 ** LessTif support.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3048
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3049 Emacs now runs with the LessTif toolkit (see
37155
28fe777ce995 Change version of LessTif that's required.
Gerd Moellmann <gerd@gnu.org>
parents: 37077
diff changeset
3050 <http://www.lesstif.org>). You will need version 0.92.26, or later.
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3051
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3052 ** LessTif/Motif file selection dialog.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3053
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3054 When Emacs is configured to use LessTif or Motif, reading a file name
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3055 from a menu will pop up a file selection dialog if `use-dialog-box' is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3056 non-nil.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3057
39485
5e20b8bbcc45 Document the support for file selection dialog on MS-Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 39441
diff changeset
3058 ** File selection dialog on MS-Windows is supported.
5e20b8bbcc45 Document the support for file selection dialog on MS-Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 39441
diff changeset
3059
5e20b8bbcc45 Document the support for file selection dialog on MS-Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 39441
diff changeset
3060 When a file is visited by clicking File->Open, the MS-Windows version
5e20b8bbcc45 Document the support for file selection dialog on MS-Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 39441
diff changeset
3061 now pops up a standard file selection dialog where you can select a
5e20b8bbcc45 Document the support for file selection dialog on MS-Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 39441
diff changeset
3062 file to visit. File->Save As also pops up that dialog.
5e20b8bbcc45 Document the support for file selection dialog on MS-Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 39441
diff changeset
3063
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3064 ** Toolkit scroll bars.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3065
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3066 Emacs now uses toolkit scroll bars if available. When configured for
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3067 LessTif/Motif, it will use that toolkit's scroll bar. Otherwise, when
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3068 configured for Lucid and Athena widgets, it will use the Xaw3d scroll
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3069 bar if Xaw3d is available. You can turn off the use of toolkit scroll
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3070 bars by specifying `--with-toolkit-scroll-bars=no' when configuring
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3071 Emacs.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3072
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3073 When you encounter problems with the Xaw3d scroll bar, watch out how
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3074 Xaw3d is compiled on your system. If the Makefile generated from
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3075 Xaw3d's Imakefile contains a `-DNARROWPROTO' compiler option, and your
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3076 Emacs system configuration file `s/your-system.h' does not contain a
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3077 define for NARROWPROTO, you might consider adding it. Take
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3078 `s/freebsd.h' as an example.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3079
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3080 Alternatively, if you don't have access to the Xaw3d source code, take
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3081 a look at your system's imake configuration file, for example in the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3082 directory `/usr/X11R6/lib/X11/config' (paths are different on
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3083 different systems). You will find files `*.cf' there. If your
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3084 system's cf-file contains a line like `#define NeedWidePrototypes NO',
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3085 add a `#define NARROWPROTO' to your Emacs system configuration file.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3086
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3087 The reason for this is that one Xaw3d function uses `double' or
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3088 `float' function parameters depending on the setting of NARROWPROTO.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3089 This is not a problem when Imakefiles are used because each system's
37156
f59630066b4b Fix a typo.
Gerd Moellmann <gerd@gnu.org>
parents: 37155
diff changeset
3090 imake configuration file contains the necessary information. Since
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3091 Emacs doesn't use imake, this has do be done manually.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3092
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3093 ** Tool bar support.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3094
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3095 Emacs supports a tool bar at the top of a frame under X. For details
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3096 of how to define a tool bar, see the page describing Lisp-level
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3097 changes. Tool-bar global minor mode controls whether or not it is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3098 displayed and is on by default. The appearance of the bar is improved
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3099 if Emacs has been built with XPM image support. Otherwise monochrome
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3100 icons will be used.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3101
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3102 To make the tool bar more useful, we need contributions of extra icons
41439
7a15f05f14e2 Remove sentence about contributions to PBM icons.
Eli Zaretskii <eliz@gnu.org>
parents: 41437
diff changeset
3103 for specific modes (with copyright assignments).
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3104
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3105 ** Tooltips.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3106
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3107 Tooltips are small X windows displaying a help string at the current
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3108 mouse position. The Lisp package `tooltip' implements them. You can
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3109 turn them off via the user option `tooltip-mode'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3110
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3111 Tooltips also provides support for GUD debugging. If activated,
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3112 variable values can be displayed in tooltips by pointing at them with
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3113 the mouse in source buffers. You can customize various aspects of the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3114 tooltip display in the group `tooltip'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3115
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3116 ** Automatic Hscrolling
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3117
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3118 Horizontal scrolling now happens automatically if
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3119 `automatic-hscrolling' is set (the default). This setting can be
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3120 customized.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3121
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3122 If a window is scrolled horizontally with set-window-hscroll, or
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3123 scroll-left/scroll-right (C-x <, C-x >), this serves as a lower bound
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3124 for automatic horizontal scrolling. Automatic scrolling will scroll
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3125 the text more to the left if necessary, but won't scroll the text more
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3126 to the right than the column set with set-window-hscroll etc.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3127
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3128 ** When using a windowing terminal, each Emacs window now has a cursor
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3129 of its own. By default, when a window is selected, the cursor is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3130 solid; otherwise, it is hollow. The user-option
37228
21998919cfe9 show-cursor-in-non-selected-windows is no cursor-in-non-selected-windows.
Eli Zaretskii <eliz@gnu.org>
parents: 37222
diff changeset
3131 `cursor-in-non-selected-windows' controls how to display the
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3132 cursor in non-selected windows. If nil, no cursor is shown, if
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
3133 non-nil a hollow box cursor is shown.
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3134
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3135 ** Fringes to the left and right of windows are used to display
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3136 truncation marks, continuation marks, overlay arrows and alike. The
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3137 foreground, background, and stipple of these areas can be changed by
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3138 customizing face `fringe'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3139
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3140 ** The mode line under X is now drawn with shadows by default.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3141 You can change its appearance by modifying the face `mode-line'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3142 In particular, setting the `:box' attribute to nil turns off the 3D
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3143 appearance of the mode line. (The 3D appearance makes the mode line
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3144 occupy more space, and thus might cause the first or the last line of
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3145 the window to be partially obscured.)
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3146
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3147 The variable `mode-line-inverse-video', which was used in older
38832
ce6b6f1fd86f Correct description of `mode-line-inverse-video'.
Miles Bader <miles@gnu.org>
parents: 38649
diff changeset
3148 versions of emacs to make the mode-line stand out, is now deprecated.
ce6b6f1fd86f Correct description of `mode-line-inverse-video'.
Miles Bader <miles@gnu.org>
parents: 38649
diff changeset
3149 However, setting it to nil will cause the `mode-line' face to be
ce6b6f1fd86f Correct description of `mode-line-inverse-video'.
Miles Bader <miles@gnu.org>
parents: 38649
diff changeset
3150 ignored, and mode-lines to be drawn using the default text face.
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3151
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3152 ** Mouse-sensitive mode line.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3153
36848
87bf5cef20c7 Mode line is mouse-sensitive on all systems which have a mouse.
Eli Zaretskii <eliz@gnu.org>
parents: 36821
diff changeset
3154 Different parts of the mode line have been made mouse-sensitive on all
87bf5cef20c7 Mode line is mouse-sensitive on all systems which have a mouse.
Eli Zaretskii <eliz@gnu.org>
parents: 36821
diff changeset
3155 systems which support the mouse. Moving the mouse to a
87bf5cef20c7 Mode line is mouse-sensitive on all systems which have a mouse.
Eli Zaretskii <eliz@gnu.org>
parents: 36821
diff changeset
3156 mouse-sensitive part in the mode line changes the appearance of the
87bf5cef20c7 Mode line is mouse-sensitive on all systems which have a mouse.
Eli Zaretskii <eliz@gnu.org>
parents: 36821
diff changeset
3157 mouse pointer to an arrow, and help about available mouse actions is
87bf5cef20c7 Mode line is mouse-sensitive on all systems which have a mouse.
Eli Zaretskii <eliz@gnu.org>
parents: 36821
diff changeset
3158 displayed either in the echo area, or in the tooltip window if you
87bf5cef20c7 Mode line is mouse-sensitive on all systems which have a mouse.
Eli Zaretskii <eliz@gnu.org>
parents: 36821
diff changeset
3159 have enabled one.
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3160
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3161 Currently, the following actions have been defined:
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3162
40916
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
3163 - Mouse-1 on the buffer name in the mode line goes to the next buffer.
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
3164
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
3165 - Mouse-3 on the buffer-name goes to the previous buffer.
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3166
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3167 - Mouse-2 on the read-only or modified status in the mode line (`%' or
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3168 `*') toggles the status.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3169
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3170 - Mouse-3 on the mode name displays a minor-mode menu.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3171
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3172 ** Hourglass pointer
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3173
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3174 Emacs can optionally display an hourglass pointer under X. You can
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3175 turn the display on or off by customizing group `cursor'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3176
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3177 ** Blinking cursor
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3178
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3179 M-x blink-cursor-mode toggles a blinking cursor under X and on
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3180 terminals having terminal capabilities `vi', `vs', and `ve'. Blinking
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3181 and related parameters like frequency and delay can be customized in
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3182 the group `cursor'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3183
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3184 ** New font-lock support mode `jit-lock-mode'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3185
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3186 This support mode is roughly equivalent to `lazy-lock' but is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3187 generally faster. It supports stealth and deferred fontification.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3188 See the documentation of the function `jit-lock-mode' for more
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3189 details.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3190
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3191 Font-lock uses jit-lock-mode as default support mode, so you don't
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3192 have to do anything to activate it.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3193
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3194 ** The default binding of the Delete key has changed.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3195
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3196 The new user-option `normal-erase-is-backspace' can be set to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3197 determine the effect of the Delete and Backspace function keys.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3198
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3199 On window systems, the default value of this option is chosen
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3200 according to the keyboard used. If the keyboard has both a Backspace
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3201 key and a Delete key, and both are mapped to their usual meanings, the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3202 option's default value is set to t, so that Backspace can be used to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3203 delete backward, and Delete can be used to delete forward. On
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3204 keyboards which either have only one key (usually labeled DEL), or two
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3205 keys DEL and BS which produce the same effect, the option's value is
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3206 set to nil, and these keys delete backward.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3207
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3208 If not running under a window system, setting this option accomplishes
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3209 a similar effect by mapping C-h, which is usually generated by the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3210 Backspace key, to DEL, and by mapping DEL to C-d via
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3211 `keyboard-translate'. The former functionality of C-h is available on
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3212 the F1 key. You should probably not use this setting on a text-only
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3213 terminal if you don't have both Backspace, Delete and F1 keys.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3214
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3215 Programmatically, you can call function normal-erase-is-backspace-mode
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3216 to toggle the behavior of the Delete and Backspace keys.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3217
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3218 ** The default for user-option `next-line-add-newlines' has been
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3219 changed to nil, i.e. C-n will no longer add newlines at the end of a
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3220 buffer by default.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3221
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3222 ** The <home> and <end> keys now move to the beginning or end of the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3223 current line, respectively. C-<home> and C-<end> move to the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3224 beginning and end of the buffer.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3225
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3226 ** Emacs now checks for recursive loads of Lisp files. If the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3227 recursion depth exceeds `recursive-load-depth-limit', an error is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3228 signaled.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3229
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3230 ** When an error is signaled during the loading of the user's init
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3231 file, Emacs now pops up the *Messages* buffer.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3232
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3233 ** Emacs now refuses to load compiled Lisp files which weren't
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3234 compiled with Emacs. Set `load-dangerous-libraries' to t to change
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3235 this behavior.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3236
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3237 The reason for this change is an incompatible change in XEmacs's byte
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3238 compiler. Files compiled with XEmacs can contain byte codes that let
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3239 Emacs dump core.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3240
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3241 ** Toggle buttons and radio buttons in menus.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3242
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3243 When compiled with LessTif (or Motif) support, Emacs uses toolkit
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3244 widgets for radio and toggle buttons in menus. When configured for
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3245 Lucid, Emacs draws radio buttons and toggle buttons similar to Motif.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3246
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3247 ** The menu bar configuration has changed. The new configuration is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3248 more CUA-compliant. The most significant change is that Options is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3249 now a separate menu-bar item, with Mule and Customize as its submenus.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3250
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3251 ** Item Save Options on the Options menu allows saving options set
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3252 using that menu.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3253
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3254 ** Highlighting of trailing whitespace.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3255
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3256 When `show-trailing-whitespace' is non-nil, Emacs displays trailing
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3257 whitespace in the face `trailing-whitespace'. Trailing whitespace is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3258 defined as spaces or tabs at the end of a line. To avoid busy
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3259 highlighting when entering new text, trailing whitespace is not
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3260 displayed if point is at the end of the line containing the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3261 whitespace.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3262
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3263 ** C-x 5 1 runs the new command delete-other-frames which deletes
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3264 all frames except the selected one.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3265
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3266 ** The new user-option `confirm-kill-emacs' can be customized to
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3267 let Emacs ask for confirmation before exiting.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3268
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3269 ** The header line in an Info buffer is now displayed as an emacs
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3270 header-line (which is like a mode-line, but at the top of the window),
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3271 so that it remains visible even when the buffer has been scrolled.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3272 This behavior may be disabled by customizing the option
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3273 `Info-use-header-line'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3274
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3275 ** Polish, Czech, German, and French translations of Emacs' reference card
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3276 have been added. They are named `pl-refcard.tex', `cs-refcard.tex',
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3277 `de-refcard.tex' and `fr-refcard.tex'. Postscript files are included.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3278
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3279 ** An `Emacs Survival Guide', etc/survival.tex, is available.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3280
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3281 ** A reference card for Dired has been added. Its name is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3282 `dired-ref.tex'. A French translation is available in
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3283 `fr-drdref.tex'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3284
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3285 ** C-down-mouse-3 is bound differently. Now if the menu bar is not
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3286 displayed it pops up a menu containing the items which would be on the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3287 menu bar. If the menu bar is displayed, it pops up the major mode
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3288 menu or the Edit menu if there is no major mode menu.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3289
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3290 ** Variable `load-path' is no longer customizable through Customize.
38067
c1e43c8d51d2 Clarify the meaning of ``load-path is not customizable''. Someone just
Eli Zaretskii <eliz@gnu.org>
parents: 38012
diff changeset
3291
38107
Sam Steingold <sds@gnu.org>
parents: 38102
diff changeset
3292 You can no longer use `M-x customize-variable' to customize `load-path'
38067
c1e43c8d51d2 Clarify the meaning of ``load-path is not customizable''. Someone just
Eli Zaretskii <eliz@gnu.org>
parents: 38012
diff changeset
3293 because it now contains a version-dependent component. You can still
c1e43c8d51d2 Clarify the meaning of ``load-path is not customizable''. Someone just
Eli Zaretskii <eliz@gnu.org>
parents: 38012
diff changeset
3294 use `add-to-list' and `setq' to customize this variable in your
c1e43c8d51d2 Clarify the meaning of ``load-path is not customizable''. Someone just
Eli Zaretskii <eliz@gnu.org>
parents: 38012
diff changeset
3295 `~/.emacs' init file or to modify it from any Lisp program in general.
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3296
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3297 ** C-u C-x = provides detailed information about the character at
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3298 point in a pop-up window.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3299
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3300 ** Emacs can now support 'wheeled' mice (such as the MS IntelliMouse)
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3301 under XFree86. To enable this, use the `mouse-wheel-mode' command, or
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3302 customize the variable `mouse-wheel-mode'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3303
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3304 The variables `mouse-wheel-follow-mouse' and `mouse-wheel-scroll-amount'
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3305 determine where and by how much buffers are scrolled.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3306
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3307 ** Emacs' auto-save list files are now by default stored in a
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3308 sub-directory `.emacs.d/auto-save-list/' of the user's home directory.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3309 (On MS-DOS, this subdirectory's name is `_emacs.d/auto-save.list/'.)
37365
cf22cb863f75 Fix a typo in auto-save-list-file-prefix.
Eli Zaretskii <eliz@gnu.org>
parents: 37289
diff changeset
3310 You can customize `auto-save-list-file-prefix' to change this location.
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3311
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3312 ** The function `getenv' is now callable interactively.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3313
34271
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
3314 ** The new user-option `even-window-heights' can be set to nil
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
3315 to prevent `display-buffer' from evening out window heights.
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
3316
33796
10ffa5b56f53 mention `delete-trailing-whitespace'
Sam Steingold <sds@gnu.org>
parents: 33720
diff changeset
3317 ** The new command M-x delete-trailing-whitespace RET will delete the
33990
d9a19778f425 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33913
diff changeset
3318 trailing whitespace within the current restriction. You can also add
33796
10ffa5b56f53 mention `delete-trailing-whitespace'
Sam Steingold <sds@gnu.org>
parents: 33720
diff changeset
3319 this function to `write-file-hooks' or `local-write-file-hooks'.
10ffa5b56f53 mention `delete-trailing-whitespace'
Sam Steingold <sds@gnu.org>
parents: 33720
diff changeset
3320
33559
c6a08bfab7fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33541
diff changeset
3321 ** When visiting a file with M-x find-file-literally, no newlines will
35937
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
3322 be added to the end of the buffer even if `require-final-newline' is
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
3323 non-nil.
33559
c6a08bfab7fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33541
diff changeset
3324
31728
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
3325 ** The new user-option `find-file-suppress-same-file-warnings' can be
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
3326 set to suppress warnings ``X and Y are the same file'' when visiting a
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
3327 file that is already visited under a different name.
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
3328
31807
db5ea3d2a1b4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31742
diff changeset
3329 ** The new user-option `electric-help-shrink-window' can be set to
db5ea3d2a1b4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31742
diff changeset
3330 nil to prevent adjusting the help window size to the buffer size.
db5ea3d2a1b4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31742
diff changeset
3331
31728
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
3332 ** New command M-x describe-character-set reads a character set name
32280
e3b6714d835d Fix a typo.
Eli Zaretskii <eliz@gnu.org>
parents: 32266
diff changeset
3333 and displays information about that.
31248
87ff760a4902 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 31231
diff changeset
3334
30693
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3335 ** The new variable `auto-mode-interpreter-regexp' contains a regular
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3336 expression matching interpreters, for file mode determination.
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3337
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3338 This regular expression is matched against the first line of a file to
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3339 determine the file's mode in `set-auto-mode' when Emacs can't deduce a
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3340 mode from the file's name. If it matches, the file is assumed to be
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3341 interpreted by the interpreter matched by the second group of the
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3342 regular expression. The mode is then determined as the mode
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3343 associated with that interpreter in `interpreter-mode-alist'.
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3344
29532
9609bc6529ac executable-make-buffer-file-executable-if-script-p
Dave Love <fx@gnu.org>
parents: 29509
diff changeset
3345 ** New function executable-make-buffer-file-executable-if-script-p is
31007
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
3346 suitable as an after-save-hook as an alternative to `executable-chmod'.
29532
9609bc6529ac executable-make-buffer-file-executable-if-script-p
Dave Love <fx@gnu.org>
parents: 29509
diff changeset
3347
29509
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3348 ** The most preferred coding-system is now used to save a buffer if
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3349 buffer-file-coding-system is `undecided' and it is safe for the buffer
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3350 contents. (The most preferred is set by set-language-environment or
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3351 by M-x prefer-coding-system.) Thus if you visit an ASCII file and
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3352 insert a non-ASCII character from your current language environment,
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3353 the file will be saved silently with the appropriate coding.
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3354 Previously you would be prompted for a safe coding system.
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3355
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3356 ** The many obsolete language `setup-...-environment' commands have
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3357 been removed -- use `set-language-environment'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3358
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3359 ** The new Custom option `keyboard-coding-system' specifies a coding
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3360 system for keyboard input.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3361
30296
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3362 ** New variable `inhibit-iso-escape-detection' determines if Emacs'
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3363 coding system detection algorithm should pay attention to ISO2022's
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3364 escape sequences. If this variable is non-nil, the algorithm ignores
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3365 such escape sequences. The default value is nil, and it is
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3366 recommended not to change it except for the special case that you
30357
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
3367 always want to read any escape code verbatim. If you just want to
30296
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3368 read a specific file without decoding escape codes, use C-x RET c
30357
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
3369 (`universal-coding-system-argument'). For instance, C-x RET c latin-1
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
3370 RET C-x C-f filename RET.
30205
e596e66d3044 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30203
diff changeset
3371
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3372 ** Variable `default-korean-keyboard' is initialized properly from the
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3373 environment variable `HANGUL_KEYBOARD_TYPE'.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3374
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3375 ** New command M-x list-charset-chars reads a character set name and
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3376 displays all characters in that character set.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3377
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3378 ** M-x set-terminal-coding-system (C-x RET t) now allows CCL-based
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3379 coding systems such as cpXXX and cyrillic-koi8.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3380
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3381 ** Emacs now attempts to determine the initial language environment
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3382 and preferred and locale coding systems systematically from the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3383 LC_ALL, LC_CTYPE, and LANG environment variables during startup.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3384
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3385 ** New language environments `Polish', `Latin-8' and `Latin-9'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3386 Latin-8 and Latin-9 correspond respectively to the ISO character sets
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3387 8859-14 (Celtic) and 8859-15 (updated Latin-1, with the Euro sign).
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3388 GNU Intlfonts doesn't support these yet but recent X releases have
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3389 8859-15. See etc/INSTALL for information on obtaining extra fonts.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3390 There are new Leim input methods for Latin-8 and Latin-9 prefix (only)
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3391 and Polish `slash'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3392
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3393 ** New language environments `Dutch' and `Spanish'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3394 These new environments mainly select appropriate translations
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3395 of the tutorial.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3396
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3397 ** In Ethiopic language environment, special key bindings for
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3398 function keys are changed as follows. This is to conform to "Emacs
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3399 Lisp Coding Convention".
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3400
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3401 new command old-binding
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3402 --- ------- -----------
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3403 f3 ethio-fidel-to-sera-buffer f5
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3404 S-f3 ethio-fidel-to-sera-region f5
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3405 C-f3 ethio-fidel-to-sera-mail-or-marker f5
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3406
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3407 f4 ethio-sera-to-fidel-buffer unchanged
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3408 S-f4 ethio-sera-to-fidel-region unchanged
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3409 C-f4 ethio-sera-to-fidel-mail-or-marker unchanged
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3410
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3411 S-f5 ethio-toggle-punctuation f3
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3412 S-f6 ethio-modify-vowel f6
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3413 S-f7 ethio-replace-space f7
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3414 S-f8 ethio-input-special-character f8
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3415 S-f9 ethio-replace-space unchanged
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3416 C-f9 ethio-toggle-space f2
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3417
39885
91b2bb6856b0 List the new input methods introduced with Emacs 21.1.
Eli Zaretskii <eliz@gnu.org>
parents: 39881
diff changeset
3418 ** There are new Leim input methods.
91b2bb6856b0 List the new input methods introduced with Emacs 21.1.
Eli Zaretskii <eliz@gnu.org>
parents: 39881
diff changeset
3419 New input methods "turkish-postfix", "turkish-alt-postfix",
91b2bb6856b0 List the new input methods introduced with Emacs 21.1.
Eli Zaretskii <eliz@gnu.org>
parents: 39881
diff changeset
3420 "greek-mizuochi", "TeX", and "greek-babel" are now part of the Leim
91b2bb6856b0 List the new input methods introduced with Emacs 21.1.
Eli Zaretskii <eliz@gnu.org>
parents: 39881
diff changeset
3421 package.
91b2bb6856b0 List the new input methods introduced with Emacs 21.1.
Eli Zaretskii <eliz@gnu.org>
parents: 39881
diff changeset
3422
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3423 ** The rule of input method "slovak" is slightly changed. Now the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3424 rules for translating "q" and "Q" to "`" (backquote) are deleted, thus
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3425 typing them inserts "q" and "Q" respectively. Rules for translating
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3426 "=q", "+q", "=Q", and "+Q" to "`" are also deleted. Now, to input
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3427 "`", you must type "=q".
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3428
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3429 ** When your terminal can't display characters from some of the ISO
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3430 8859 character sets but can display Latin-1, you can display
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3431 more-or-less mnemonic sequences of ASCII/Latin-1 characters instead of
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3432 empty boxes (under a window system) or question marks (not under a
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3433 window system). Customize the option `latin1-display' to turn this
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3434 on.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3435
29218
e956cc90f6c0 newcomment and the change of binding for M-;
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 29162
diff changeset
3436 ** M-; now calls comment-dwim which tries to do something clever based
31026
3cd6db455d11 Mark comment-dwim as described in the manual.
Eli Zaretskii <eliz@gnu.org>
parents: 31024
diff changeset
3437 on the context. M-x kill-comment is now an alias to comment-kill,
33411
a873b191d4c5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33373
diff changeset
3438 defined in newcomment.el. You can choose different styles of region
a873b191d4c5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33373
diff changeset
3439 commenting with the variable `comment-style'.
29218
e956cc90f6c0 newcomment and the change of binding for M-;
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 29162
diff changeset
3440
28799
94a120630e7d display-time stuff
Dave Love <fx@gnu.org>
parents: 28789
diff changeset
3441 ** New user options `display-time-mail-face' and
94a120630e7d display-time stuff
Dave Love <fx@gnu.org>
parents: 28789
diff changeset
3442 `display-time-use-mail-icon' control the appearance of mode-line mail
94a120630e7d display-time stuff
Dave Love <fx@gnu.org>
parents: 28789
diff changeset
3443 indicator used by the display-time package. On a suitable display the
94a120630e7d display-time stuff
Dave Love <fx@gnu.org>
parents: 28789
diff changeset
3444 indicator can be an icon and is mouse-sensitive.
94a120630e7d display-time stuff
Dave Love <fx@gnu.org>
parents: 28789
diff changeset
3445
28695
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3446 ** On window-systems, additional space can be put between text lines
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3447 on the display using several methods
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3448
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3449 - By setting frame parameter `line-spacing' to PIXELS. PIXELS must be
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3450 a positive integer, and specifies that PIXELS number of pixels should
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3451 be put below text lines on the affected frame or frames.
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3452
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3453 - By setting X resource `lineSpacing', class `LineSpacing'. This is
33838
415baa3f1914 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 33796
diff changeset
3454 equivalent to specifying the frame parameter.
28695
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3455
28870
b3629cc23098 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28855
diff changeset
3456 - By specifying `--line-spacing=N' or `-lsp N' on the command line.
28695
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3457
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3458 - By setting buffer-local variable `line-spacing'. The meaning is
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3459 the same, but applies to the a particular buffer only.
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3460
29752
76ef59b86226 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 29696
diff changeset
3461 ** The new command `clone-indirect-buffer' can be used to create
28660
9de15cb0c24b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28658
diff changeset
3462 an indirect buffer that is a twin copy of the current buffer. The
29752
76ef59b86226 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 29696
diff changeset
3463 command `clone-indirect-buffer-other-window', bound to C-x 4 c,
28660
9de15cb0c24b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28658
diff changeset
3464 does the same but displays the indirect buffer in another window.
28626
79911b5afa95 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28556
diff changeset
3465
28525
05658544eaff backup-directory-alist, make-backup-file-name-function.
Dave Love <fx@gnu.org>
parents: 28506
diff changeset
3466 ** New user options `backup-directory-alist' and
28757
2fb6dbfe29f6 concat change
Dave Love <fx@gnu.org>
parents: 28751
diff changeset
3467 `make-backup-file-name-function' control the placement of backups,
2fb6dbfe29f6 concat change
Dave Love <fx@gnu.org>
parents: 28751
diff changeset
3468 typically in a single directory or in an invisible sub-directory.
28525
05658544eaff backup-directory-alist, make-backup-file-name-function.
Dave Love <fx@gnu.org>
parents: 28506
diff changeset
3469
28396
225ae57ab78e iso-iso2sgml
Dave Love <fx@gnu.org>
parents: 28335
diff changeset
3470 ** New commands iso-iso2sgml and iso-sgml2iso convert between Latin-1
225ae57ab78e iso-iso2sgml
Dave Love <fx@gnu.org>
parents: 28335
diff changeset
3471 characters and the corresponding SGML (HTML) entities.
225ae57ab78e iso-iso2sgml
Dave Love <fx@gnu.org>
parents: 28335
diff changeset
3472
28159
20862b49300f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28149
diff changeset
3473 ** New X resources recognized
27994
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3474
28140
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3475 *** The X resource `synchronous', class `Synchronous', specifies
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3476 whether Emacs should run in synchronous mode. Synchronous mode
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3477 is useful for debugging X problems.
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3478
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3479 Example:
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3480
28159
20862b49300f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28149
diff changeset
3481 emacs.synchronous: true
28140
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3482
27994
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3483 *** The X resource `visualClass, class `VisualClass', specifies the
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3484 visual Emacs should use. The resource's value should be a string of
27995
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3485 the form `CLASS-DEPTH', where CLASS is the name of the visual class,
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3486 and DEPTH is the requested color depth as a decimal number. Valid
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3487 visual class names are
27994
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3488
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3489 TrueColor
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3490 PseudoColor
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3491 DirectColor
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3492 StaticColor
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3493 GrayScale
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3494 StaticGray
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3495
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3496 Visual class names specified as X resource are case-insensitive, i.e.
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3497 `pseudocolor', `Pseudocolor' and `PseudoColor' all have the same
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3498 meaning.
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3499
27995
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3500 The program `xdpyinfo' can be used to list the visual classes
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3501 supported on your display, and which depths they have. If
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3502 `visualClass' is not specified, Emacs uses the display's default
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3503 visual.
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3504
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3505 Example:
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3506
28159
20862b49300f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28149
diff changeset
3507 emacs.visualClass: TrueColor-8
27994
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3508
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3509 *** The X resource `privateColormap', class `PrivateColormap',
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3510 specifies that Emacs should use a private colormap if it is using the
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3511 default visual, and that visual is of class PseudoColor. Recognized
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3512 resource values are `true' or `on'.
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3513
27995
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3514 Example:
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3515
28159
20862b49300f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28149
diff changeset
3516 emacs.privateColormap: true
27995
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3517
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3518 ** Faces and frame parameters.
Dave Love <fx@gnu.org>
parents:
diff changeset
3519
Dave Love <fx@gnu.org>
parents:
diff changeset
3520 There are four new faces `scroll-bar', `border', `cursor' and `mouse'.
Dave Love <fx@gnu.org>
parents:
diff changeset
3521 Setting the frame parameters `scroll-bar-foreground' and
Dave Love <fx@gnu.org>
parents:
diff changeset
3522 `scroll-bar-background' sets foreground and background color of face
Dave Love <fx@gnu.org>
parents:
diff changeset
3523 `scroll-bar' and vice versa. Setting frame parameter `border-color'
Dave Love <fx@gnu.org>
parents:
diff changeset
3524 sets the background color of face `border' and vice versa. Likewise
Dave Love <fx@gnu.org>
parents:
diff changeset
3525 for frame parameters `cursor-color' and face `cursor', and frame
Dave Love <fx@gnu.org>
parents:
diff changeset
3526 parameter `mouse-color' and face `mouse'.
Dave Love <fx@gnu.org>
parents:
diff changeset
3527
Dave Love <fx@gnu.org>
parents:
diff changeset
3528 Changing frame parameter `font' sets font-related attributes of the
Dave Love <fx@gnu.org>
parents:
diff changeset
3529 `default' face and vice versa. Setting frame parameters
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
3530 `foreground-color' or `background-color' sets the colors of the
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3531 `default' face and vice versa.
Dave Love <fx@gnu.org>
parents:
diff changeset
3532
25951
b3f0ced6423b Add entry for face `menu'.
Gerd Moellmann <gerd@gnu.org>
parents: 25949
diff changeset
3533 ** New face `menu'.
b3f0ced6423b Add entry for face `menu'.
Gerd Moellmann <gerd@gnu.org>
parents: 25949
diff changeset
3534
b3f0ced6423b Add entry for face `menu'.
Gerd Moellmann <gerd@gnu.org>
parents: 25949
diff changeset
3535 The face `menu' can be used to change colors and font of Emacs' menus.
b3f0ced6423b Add entry for face `menu'.
Gerd Moellmann <gerd@gnu.org>
parents: 25949
diff changeset
3536
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3537 ** New frame parameter `screen-gamma' for gamma correction.
Dave Love <fx@gnu.org>
parents:
diff changeset
3538
Dave Love <fx@gnu.org>
parents:
diff changeset
3539 The new frame parameter `screen-gamma' specifies gamma-correction for
Dave Love <fx@gnu.org>
parents:
diff changeset
3540 colors. Its value may be nil, the default, in which case no gamma
Dave Love <fx@gnu.org>
parents:
diff changeset
3541 correction occurs, or a number > 0, usually a float, that specifies
Dave Love <fx@gnu.org>
parents:
diff changeset
3542 the screen gamma of a frame's display.
Dave Love <fx@gnu.org>
parents:
diff changeset
3543
Dave Love <fx@gnu.org>
parents:
diff changeset
3544 PC monitors usually have a screen gamma of 2.2. smaller values result
Dave Love <fx@gnu.org>
parents:
diff changeset
3545 in darker colors. You might want to try a screen gamma of 1.5 for LCD
Dave Love <fx@gnu.org>
parents:
diff changeset
3546 color displays. The viewing gamma Emacs uses is 0.4545. (1/2.2).
Dave Love <fx@gnu.org>
parents:
diff changeset
3547
Dave Love <fx@gnu.org>
parents:
diff changeset
3548 The X resource name of this parameter is `screenGamma', class
Dave Love <fx@gnu.org>
parents:
diff changeset
3549 `ScreenGamma'.
Dave Love <fx@gnu.org>
parents:
diff changeset
3550
Dave Love <fx@gnu.org>
parents:
diff changeset
3551 ** Tabs and variable-width text.
Dave Love <fx@gnu.org>
parents:
diff changeset
3552
Dave Love <fx@gnu.org>
parents:
diff changeset
3553 Tabs are now displayed with stretch properties; the width of a tab is
Dave Love <fx@gnu.org>
parents:
diff changeset
3554 defined as a multiple of the normal character width of a frame, and is
Dave Love <fx@gnu.org>
parents:
diff changeset
3555 independent of the fonts used in the text where the tab appears.
Dave Love <fx@gnu.org>
parents:
diff changeset
3556 Thus, tabs can be used to line up text in different fonts.
Dave Love <fx@gnu.org>
parents:
diff changeset
3557
Dave Love <fx@gnu.org>
parents:
diff changeset
3558 ** Enhancements of the Lucid menu bar
Dave Love <fx@gnu.org>
parents:
diff changeset
3559
Dave Love <fx@gnu.org>
parents:
diff changeset
3560 *** The Lucid menu bar now supports the resource "margin".
Dave Love <fx@gnu.org>
parents:
diff changeset
3561
Dave Love <fx@gnu.org>
parents:
diff changeset
3562 emacs.pane.menubar.margin: 5
Dave Love <fx@gnu.org>
parents:
diff changeset
3563
28677
950ff4674e17 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 28660
diff changeset
3564 The default margin is 4 which makes the menu bar appear like the
950ff4674e17 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 28660
diff changeset
3565 LessTif/Motif one.
950ff4674e17 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 28660
diff changeset
3566
950ff4674e17 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 28660
diff changeset
3567 *** Arrows that indicate sub-menus are now drawn with shadows, as in
950ff4674e17 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 28660
diff changeset
3568 LessTif and Motif.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3569
Dave Love <fx@gnu.org>
parents:
diff changeset
3570 ** A block cursor can be drawn as wide as the glyph under it under X.
Dave Love <fx@gnu.org>
parents:
diff changeset
3571
Dave Love <fx@gnu.org>
parents:
diff changeset
3572 As an example: if a block cursor is over a tab character, it will be
Dave Love <fx@gnu.org>
parents:
diff changeset
3573 drawn as wide as that tab on the display. To do this, set
Dave Love <fx@gnu.org>
parents:
diff changeset
3574 `x-stretch-cursor' to a non-nil value.
Dave Love <fx@gnu.org>
parents:
diff changeset
3575
Dave Love <fx@gnu.org>
parents:
diff changeset
3576 ** Empty display lines at the end of a buffer may be marked with a
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3577 bitmap (this is similar to the tilde displayed by vi and Less).
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3578
Dave Love <fx@gnu.org>
parents:
diff changeset
3579 This behavior is activated by setting the buffer-local variable
Dave Love <fx@gnu.org>
parents:
diff changeset
3580 `indicate-empty-lines' to a non-nil value. The default value of this
Dave Love <fx@gnu.org>
parents:
diff changeset
3581 variable is found in `default-indicate-empty-lines'.
Dave Love <fx@gnu.org>
parents:
diff changeset
3582
Dave Love <fx@gnu.org>
parents:
diff changeset
3583 ** There is a new "aggressive" scrolling method.
Dave Love <fx@gnu.org>
parents:
diff changeset
3584
Dave Love <fx@gnu.org>
parents:
diff changeset
3585 When scrolling up because point is above the window start, if the
33624
a4bef8dfb930 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 33620
diff changeset
3586 value of the buffer-local variable `scroll-up-aggressively' is a
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3587 number, Emacs chooses a new window start so that point ends up that
31124
265c24a487bf *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31073
diff changeset
3588 fraction of the window's height from the top of the window.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3589
Dave Love <fx@gnu.org>
parents:
diff changeset
3590 When scrolling down because point is below the window end, if the
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
3591 value of the buffer-local variable `scroll-down-aggressively' is a
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3592 number, Emacs chooses a new window start so that point ends up that
31124
265c24a487bf *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31073
diff changeset
3593 fraction of the window's height from the bottom of the window.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3594
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3595 ** You can now easily create new *Info* buffers using either
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3596 M-x clone-buffer, C-u m <entry> RET or C-u g <entry> RET.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3597 M-x clone-buffer can also be used on *Help* and several other special
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3598 buffers.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3599
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3600 ** The command `Info-search' now uses a search history.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3601
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3602 ** Listing buffers with M-x list-buffers (C-x C-b) now shows
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3603 abbreviated file names. Abbreviations can be customized by changing
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3604 `directory-abbrev-alist'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3605
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3606 ** A new variable, backup-by-copying-when-privileged-mismatch, gives
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3607 the highest file uid for which backup-by-copying-when-mismatch will be
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3608 forced on. The assumption is that uids less than or equal to this
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3609 value are special uids (root, bin, daemon, etc.--not real system
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3610 users) and that files owned by these users should not change ownership,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3611 even if your system policy allows users other than root to edit them.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3612
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3613 The default is 200; set the variable to nil to disable the feature.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3614
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3615 ** The rectangle commands now avoid inserting undesirable spaces,
Dave Love <fx@gnu.org>
parents:
diff changeset
3616 notably at the end of lines.
Dave Love <fx@gnu.org>
parents:
diff changeset
3617
Dave Love <fx@gnu.org>
parents:
diff changeset
3618 All these functions have been rewritten to avoid inserting unwanted
Dave Love <fx@gnu.org>
parents:
diff changeset
3619 spaces, and an optional prefix now allows them to behave the old way.
Dave Love <fx@gnu.org>
parents:
diff changeset
3620
37446
1b121f2746a8 Change entries for string-rectangle and alike.
Gerd Moellmann <gerd@gnu.org>
parents: 37388
diff changeset
3621 ** The function `replace-rectangle' is an alias for `string-rectangle'.
1b121f2746a8 Change entries for string-rectangle and alike.
Gerd Moellmann <gerd@gnu.org>
parents: 37388
diff changeset
3622
1b121f2746a8 Change entries for string-rectangle and alike.
Gerd Moellmann <gerd@gnu.org>
parents: 37388
diff changeset
3623 ** The new command M-x string-insert-rectangle is like `string-rectangle',
1b121f2746a8 Change entries for string-rectangle and alike.
Gerd Moellmann <gerd@gnu.org>
parents: 37388
diff changeset
3624 but inserts text instead of replacing it.
35640
6ed788afc91f Document the incompatible change in string-rectangle.
Eli Zaretskii <eliz@gnu.org>
parents: 35578
diff changeset
3625
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3626 ** The new command M-x query-replace-regexp-eval acts like
Dave Love <fx@gnu.org>
parents:
diff changeset
3627 query-replace-regexp, but takes a Lisp expression which is evaluated
Dave Love <fx@gnu.org>
parents:
diff changeset
3628 after each match to get the replacement text.
Dave Love <fx@gnu.org>
parents:
diff changeset
3629
29972
39c1579e89a8 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29962
diff changeset
3630 ** M-x query-replace recognizes a new command `e' (or `E') that lets
39c1579e89a8 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29962
diff changeset
3631 you edit the replacement string.
28805
d77e34df755e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28799
diff changeset
3632
38925
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
3633 ** The new command mail-abbrev-complete-alias, bound to `M-TAB'
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
3634 (if you load the library `mailabbrev'), lets you complete mail aliases
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
3635 in the text, analogous to lisp-complete-symbol.
28805
d77e34df755e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28799
diff changeset
3636
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3637 ** The variable `echo-keystrokes' may now have a floating point value.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3638
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3639 ** If your init file is compiled (.emacs.elc), `user-init-file' is set
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3640 to the source name (.emacs.el), if that exists, after loading it.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3641
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3642 ** The help string specified for a menu-item whose definition contains
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3643 the property `:help HELP' is now displayed under X, on MS-Windows, and
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3644 MS-DOS, either in the echo area or with tooltips. Many standard menus
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3645 displayed by Emacs now have help strings.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3646
38925
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
3647 --
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3648 ** New user option `read-mail-command' specifies a command to use to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3649 read mail from the menu etc.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3650
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3651 ** The environment variable `EMACSLOCKDIR' is no longer used on MS-Windows.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3652 This environment variable was used when creating lock files. Emacs on
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3653 MS-Windows does not use this variable anymore. This change was made
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3654 before Emacs 21.1, but wasn't documented until now.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3655
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3656 ** Highlighting of mouse-sensitive regions is now supported in the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3657 MS-DOS version of Emacs.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3658
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3659 ** The new command `msdos-set-mouse-buttons' forces the MS-DOS version
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3660 of Emacs to behave as if the mouse had a specified number of buttons.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3661 This comes handy with mice that don't report their number of buttons
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3662 correctly. One example is the wheeled mice, which report 3 buttons,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3663 but clicks on the middle button are not passed to the MS-DOS version
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3664 of Emacs.
29676
6c84e790448f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29657
diff changeset
3665
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3666 ** Customize changes
Dave Love <fx@gnu.org>
parents:
diff changeset
3667
Dave Love <fx@gnu.org>
parents:
diff changeset
3668 *** Customize now supports comments about customized items. Use the
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
3669 `State' menu to add comments, or give a prefix argument to
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
3670 M-x customize-set-variable or M-x customize-set-value. Note that
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
3671 customization comments will cause the customizations to fail in
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
3672 earlier versions of Emacs.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3673
Dave Love <fx@gnu.org>
parents:
diff changeset
3674 *** The new option `custom-buffer-done-function' says whether to kill
Dave Love <fx@gnu.org>
parents:
diff changeset
3675 Custom buffers when you've done with them or just bury them (the
Dave Love <fx@gnu.org>
parents:
diff changeset
3676 default).
Dave Love <fx@gnu.org>
parents:
diff changeset
3677
37901
9447d0447996 Document that customizations from "emacs -q" cannot be saved.
Eli Zaretskii <eliz@gnu.org>
parents: 37805
diff changeset
3678 *** If Emacs was invoked with the `-q' or `--no-init-file' options, it
9447d0447996 Document that customizations from "emacs -q" cannot be saved.
Eli Zaretskii <eliz@gnu.org>
parents: 37805
diff changeset
3679 does not allow you to save customizations in your `~/.emacs' init
9447d0447996 Document that customizations from "emacs -q" cannot be saved.
Eli Zaretskii <eliz@gnu.org>
parents: 37805
diff changeset
3680 file. This is because saving customizations from such a session would
9447d0447996 Document that customizations from "emacs -q" cannot be saved.
Eli Zaretskii <eliz@gnu.org>
parents: 37805
diff changeset
3681 wipe out all the other customizationss you might have on your init
9447d0447996 Document that customizations from "emacs -q" cannot be saved.
Eli Zaretskii <eliz@gnu.org>
parents: 37805
diff changeset
3682 file.
9447d0447996 Document that customizations from "emacs -q" cannot be saved.
Eli Zaretskii <eliz@gnu.org>
parents: 37805
diff changeset
3683
43061
357ce0fca815 Document the new behavior of novice.el under "emacs -q".
Eli Zaretskii <eliz@gnu.org>
parents: 43045
diff changeset
3684 ** If Emacs was invoked with the `-q' or `--no-init-file' options, it
357ce0fca815 Document the new behavior of novice.el under "emacs -q".
Eli Zaretskii <eliz@gnu.org>
parents: 43045
diff changeset
3685 does not save disabled and enabled commands for future sessions, to
357ce0fca815 Document the new behavior of novice.el under "emacs -q".
Eli Zaretskii <eliz@gnu.org>
parents: 43045
diff changeset
3686 avoid overwriting existing customizations of this kind that are
357ce0fca815 Document the new behavior of novice.el under "emacs -q".
Eli Zaretskii <eliz@gnu.org>
parents: 43045
diff changeset
3687 already in your init file.
357ce0fca815 Document the new behavior of novice.el under "emacs -q".
Eli Zaretskii <eliz@gnu.org>
parents: 43045
diff changeset
3688
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3689 ** New features in evaluation commands
Dave Love <fx@gnu.org>
parents:
diff changeset
3690
30056
2381ee2fec5b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30038
diff changeset
3691 *** The commands to evaluate Lisp expressions, such as C-M-x in Lisp
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3692 modes, C-j in Lisp Interaction mode, and M-:, now bind the variables
38562
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3693 print-level, print-length, and debug-on-error based on the new
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3694 customizable variables eval-expression-print-level,
Dave Love <fx@gnu.org>
parents:
diff changeset
3695 eval-expression-print-length, and eval-expression-debug-on-error.
Dave Love <fx@gnu.org>
parents:
diff changeset
3696
38562
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3697 The default values for the first two of these variables are 12 and 4
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3698 respectively, which means that `eval-expression' now prints at most
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3699 the first 12 members of a list and at most 4 nesting levels deep (if
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3700 the list is longer or deeper than that, an ellipsis `...' is
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3701 printed).
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3702
38590
7c2e49c3cf0a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38573
diff changeset
3703 <RET> or <mouse-2> on the printed text toggles between an abbreviated
7c2e49c3cf0a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38573
diff changeset
3704 printed representation and an unabbreviated one.
38573
37d0e44d564c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38562
diff changeset
3705
38562
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3706 The default value of eval-expression-debug-on-error is t, so any error
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3707 during evaluation produces a backtrace.
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3708
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
3709 *** The function `eval-defun' (C-M-x) now loads Edebug and instruments
30056
2381ee2fec5b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30038
diff changeset
3710 code when called with a prefix argument.
2381ee2fec5b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30038
diff changeset
3711
26820
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3712 ** CC mode changes.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3713
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3714 Note: This release contains changes that might not be compatible with
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3715 current user setups (although it's believed that these
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3716 incompatibilities will only show in very uncommon circumstances).
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3717 However, since the impact is uncertain, these changes may be rolled
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3718 back depending on user feedback. Therefore there's no forward
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3719 compatibility guarantee wrt the new features introduced in this
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3720 release.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3721
37009
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3722 *** The hardcoded switch to "java" style in Java mode is gone.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3723 CC Mode used to automatically set the style to "java" when Java mode
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3724 is entered. This has now been removed since it caused too much
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3725 confusion.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3726
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3727 However, to keep backward compatibility to a certain extent, the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3728 default value for c-default-style now specifies the "java" style for
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3729 java-mode, but "gnu" for all other modes (as before). So you won't
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3730 notice the change if you haven't touched that variable.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3731
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3732 *** New cleanups, space-before-funcall and compact-empty-funcall.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3733 Two new cleanups have been added to c-cleanup-list:
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3734
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3735 space-before-funcall causes a space to be inserted before the opening
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3736 parenthesis of a function call, which gives the style "foo (bar)".
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3737
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3738 compact-empty-funcall causes any space before a function call opening
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3739 parenthesis to be removed if there are no arguments to the function.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3740 It's typically useful together with space-before-funcall to get the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3741 style "foo (bar)" and "foo()".
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3742
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3743 *** Some keywords now automatically trigger reindentation.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3744 Keywords like "else", "while", "catch" and "finally" have been made
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3745 "electric" to make them reindent automatically when they continue an
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3746 earlier statement. An example:
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3747
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3748 for (i = 0; i < 17; i++)
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3749 if (a[i])
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3750 res += a[i]->offset;
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3751 else
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3752
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3753 Here, the "else" should be indented like the preceding "if", since it
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3754 continues that statement. CC Mode will automatically reindent it after
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3755 the "else" has been typed in full, since it's not until then it's
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3756 possible to decide whether it's a new statement or a continuation of
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3757 the preceding "if".
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3758
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3759 CC Mode uses Abbrev mode to achieve this, which is therefore turned on
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3760 by default.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3761
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3762 *** M-a and M-e now moves by sentence in multiline strings.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3763 Previously these two keys only moved by sentence in comments, which
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3764 meant that sentence movement didn't work in strings containing
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3765 documentation or other natural language text.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3766
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3767 The reason it's only activated in multiline strings (i.e. strings that
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3768 contain a newline, even when escaped by a '\') is to avoid stopping in
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3769 the short strings that often reside inside statements. Multiline
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3770 strings almost always contain text in a natural language, as opposed
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3771 to other strings that typically contain format specifications,
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3772 commands, etc. Also, it's not that bothersome that M-a and M-e misses
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3773 sentences in single line strings, since they're short anyway.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3774
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3775 *** Support for autodoc comments in Pike mode.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3776 Autodoc comments for Pike are used to extract documentation from the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3777 source, like Javadoc in Java. Pike mode now recognize this markup in
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3778 comment prefixes and paragraph starts.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3779
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3780 *** The comment prefix regexps on c-comment-prefix may be mode specific.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3781 When c-comment-prefix is an association list, it specifies the comment
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3782 line prefix on a per-mode basis, like c-default-style does. This
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3783 change came about to support the special autodoc comment prefix in
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3784 Pike mode only.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3785
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3786 *** Better handling of syntactic errors.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3787 The recovery after unbalanced parens earlier in the buffer has been
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3788 improved; CC Mode now reports them by dinging and giving a message
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3789 stating the offending line, but still recovers and indent the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3790 following lines in a sane way (most of the time). An "else" with no
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3791 matching "if" is handled similarly. If an error is discovered while
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3792 indenting a region, the whole region is still indented and the error
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3793 is reported afterwards.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3794
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3795 *** Lineup functions may now return absolute columns.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3796 A lineup function can give an absolute column to indent the line to by
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3797 returning a vector with the desired column as the first element.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3798
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3799 *** More robust and warning-free byte compilation.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3800 Although this is strictly not a user visible change (well, depending
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3801 on the view of a user), it's still worth mentioning that CC Mode now
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3802 can be compiled in the standard ways without causing trouble. Some
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3803 code have also been moved between the subpackages to enhance the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3804 modularity somewhat. Thanks to Martin Buchholz for doing the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3805 groundwork.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3806
30412
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3807 *** c-style-variables-are-local-p now defaults to t.
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3808 This is an incompatible change that has been made to make the behavior
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3809 of the style system wrt global variable settings less confusing for
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3810 non-advanced users. If you know what this variable does you might
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3811 want to set it to nil in your .emacs, otherwise you probably don't
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3812 have to bother.
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3813
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3814 Defaulting c-style-variables-are-local-p to t avoids the confusing
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3815 situation that occurs when a user sets some style variables globally
30445
507cbd3f9296 Fix a typo.
Eli Zaretskii <eliz@gnu.org>
parents: 30415
diff changeset
3816 and edits both a Java and a non-Java file in the same Emacs session.
30412
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3817 If the style variables aren't buffer local in this case, loading of
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3818 the second file will cause the default style (either "gnu" or "java"
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3819 by default) to override the global settings made by the user.
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3820
26820
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3821 *** New initialization procedure for the style system.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3822 When the initial style for a buffer is determined by CC Mode (from the
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3823 variable c-default-style), the global values of style variables now
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3824 take precedence over the values specified by the chosen style. This
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3825 is different than the old behavior: previously, the style-specific
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3826 settings would override the global settings. This change makes it
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3827 possible to do simple configuration in the intuitive way with
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3828 Customize or with setq lines in one's .emacs file.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3829
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3830 By default, the global value of every style variable is the new
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3831 special symbol set-from-style, which causes the value to be taken from
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3832 the style system. This means that in effect, only an explicit setting
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3833 of a style variable will cause the "overriding" behavior described
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3834 above.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3835
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3836 Also note that global settings override style-specific settings *only*
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3837 when the initial style of a buffer is chosen by a CC Mode major mode
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3838 function. When a style is chosen in other ways --- for example, by a
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3839 call like (c-set-style "gnu") in a hook, or via M-x c-set-style ---
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3840 then the style-specific values take precedence over any global style
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3841 values. In Lisp terms, global values override style-specific values
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3842 only when the new second argument to c-set-style is non-nil; see the
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3843 function documentation for more info.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3844
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3845 The purpose of these changes is to make it easier for users,
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3846 especially novice users, to do simple customizations with Customize or
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3847 with setq in their .emacs files. On the other hand, the new system is
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3848 intended to be compatible with advanced users' customizations as well,
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3849 such as those that choose styles in hooks or whatnot. This new system
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3850 is believed to be almost entirely compatible with current
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3851 configurations, in spite of the changed precedence between style and
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3852 global variable settings when a buffer's default style is set.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3853
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3854 (Thanks to Eric Eide for clarifying this explanation a bit.)
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3855
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3856 **** c-offsets-alist is now a customizable variable.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3857 This became possible as a result of the new initialization behavior.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3858
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3859 This variable is treated slightly differently from the other style
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3860 variables; instead of using the symbol set-from-style, it will be
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3861 completed with the syntactic symbols it doesn't already contain when
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3862 the style is first initialized. This means it now defaults to the
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3863 empty list to make all syntactic elements get their values from the
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3864 style system.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3865
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3866 **** Compatibility variable to restore the old behavior.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3867 In case your configuration doesn't work with this change, you can set
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3868 c-old-style-variable-behavior to non-nil to get the old behavior back
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3869 as far as possible.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3870
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3871 *** Improvements to line breaking and text filling.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3872 CC Mode now handles this more intelligently and seamlessly wrt the
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3873 surrounding code, especially inside comments. For details see the new
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3874 chapter about this in the manual.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3875
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3876 **** New variable to recognize comment line prefix decorations.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3877 The variable c-comment-prefix-regexp has been added to properly
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3878 recognize the line prefix in both block and line comments. It's
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3879 primarily used to initialize the various paragraph recognition and
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3880 adaptive filling variables that the text handling functions uses.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3881
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3882 **** New variable c-block-comment-prefix.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3883 This is a generalization of the now obsolete variable
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3884 c-comment-continuation-stars to handle arbitrary strings.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3885
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3886 **** CC Mode now uses adaptive fill mode.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3887 This to make it adapt better to the paragraph style inside comments.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3888
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3889 It's also possible to use other adaptive filling packages inside CC
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3890 Mode, notably Kyle E. Jones' Filladapt mode (http://wonderworks.com/).
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3891 A new convenience function c-setup-filladapt sets up Filladapt for use
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3892 inside CC Mode.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3893
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3894 Note though that the 2.12 version of Filladapt lacks a feature that
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3895 causes it to work suboptimally when c-comment-prefix-regexp can match
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3896 the empty string (which it commonly does). A patch for that is
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3897 available from the CC Mode web site (http://www.python.org/emacs/
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3898 cc-mode/).
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3899
38894
681dc47ffb61 Document the removal of c-hanging-comment-starter-p and
Eli Zaretskii <eliz@gnu.org>
parents: 38832
diff changeset
3900 **** The variables `c-hanging-comment-starter-p' and
681dc47ffb61 Document the removal of c-hanging-comment-starter-p and
Eli Zaretskii <eliz@gnu.org>
parents: 38832
diff changeset
3901 `c-hanging-comment-ender-p', which controlled how comment starters and
681dc47ffb61 Document the removal of c-hanging-comment-starter-p and
Eli Zaretskii <eliz@gnu.org>
parents: 38832
diff changeset
3902 enders were filled, are not used anymore. The new version of the
681dc47ffb61 Document the removal of c-hanging-comment-starter-p and
Eli Zaretskii <eliz@gnu.org>
parents: 38832
diff changeset
3903 function `c-fill-paragraph' keeps the comment starters and enders as
681dc47ffb61 Document the removal of c-hanging-comment-starter-p and
Eli Zaretskii <eliz@gnu.org>
parents: 38832
diff changeset
3904 they were before the filling.
681dc47ffb61 Document the removal of c-hanging-comment-starter-p and
Eli Zaretskii <eliz@gnu.org>
parents: 38832
diff changeset
3905
26820
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3906 **** It's now possible to selectively turn off auto filling.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3907 The variable c-ignore-auto-fill is used to ignore auto fill mode in
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3908 specific contexts, e.g. in preprocessor directives and in string
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3909 literals.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3910
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3911 **** New context sensitive line break function c-context-line-break.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3912 It works like newline-and-indent in normal code, and adapts the line
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3913 prefix according to the comment style when used inside comments. If
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3914 you're normally using newline-and-indent, you might want to switch to
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3915 this function.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3916
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3917 *** Fixes to IDL mode.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3918 It now does a better job in recognizing only the constructs relevant
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3919 to IDL. E.g. it no longer matches "class" as the beginning of a
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3920 struct block, but it does match the CORBA 2.3 "valuetype" keyword.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3921 Thanks to Eric Eide.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3922
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3923 *** Improvements to the Whitesmith style.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3924 It now keeps the style consistently on all levels and both when
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3925 opening braces hangs and when they don't.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3926
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3927 **** New lineup function c-lineup-whitesmith-in-block.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3928
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3929 *** New lineup functions c-lineup-template-args and c-indent-multi-line-block.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3930 See their docstrings for details. c-lineup-template-args does a
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3931 better job of tracking the brackets used as parens in C++ templates,
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3932 and is used by default to line up continued template arguments.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3933
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3934 *** c-lineup-comment now preserves alignment with a comment on the
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3935 previous line. It used to instead preserve comments that started in
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3936 the column specified by comment-column.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3937
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3938 *** c-lineup-C-comments handles "free form" text comments.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3939 In comments with a long delimiter line at the start, the indentation
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3940 is kept unchanged for lines that start with an empty comment line
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3941 prefix. This is intended for the type of large block comments that
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3942 contain documentation with its own formatting. In these you normally
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3943 don't want CC Mode to change the indentation.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3944
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3945 *** The `c' syntactic symbol is now relative to the comment start
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3946 instead of the previous line, to make integers usable as lineup
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3947 arguments.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3948
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3949 *** All lineup functions have gotten docstrings.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3950
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3951 *** More preprocessor directive movement functions.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3952 c-down-conditional does the reverse of c-up-conditional.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3953 c-up-conditional-with-else and c-down-conditional-with-else are
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3954 variants of these that also stops at "#else" lines (suggested by Don
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3955 Provan).
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3956
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3957 *** Minor improvements to many movement functions in tricky situations.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3958
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3959 ** Dired changes
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3960
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3961 *** New variable `dired-recursive-deletes' determines if the delete
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3962 command will delete non-empty directories recursively. The default
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3963 is, delete only empty directories.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3964
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3965 *** New variable `dired-recursive-copies' determines if the copy
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3966 command will copy directories recursively. The default is, do not
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3967 copy directories recursively.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3968
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3969 *** In command `dired-do-shell-command' (usually bound to `!') a `?'
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3970 in the shell command has a special meaning similar to `*', but with
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3971 the difference that the command will be run on each file individually.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3972
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3973 *** The new command `dired-find-alternate-file' (usually bound to `a')
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3974 replaces the Dired buffer with the buffer for an alternate file or
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3975 directory.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3976
38989
6dcbf4154ff0 Change key for dired-show-file-type to `y'.
Gerd Moellmann <gerd@gnu.org>
parents: 38938
diff changeset
3977 *** The new command `dired-show-file-type' (usually bound to `y') shows
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3978 a message in the echo area describing what type of file the point is on.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3979 This command invokes the external program `file' do its work, and so
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3980 will only work on systems with that program, and will be only as
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3981 accurate or inaccurate as it is.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3982
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3983 *** Dired now properly handles undo changes of adding/removing `-R'
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3984 from ls switches.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3985
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3986 *** Dired commands that prompt for a destination file now allow the use
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3987 of the `M-n' command in the minibuffer to insert the source filename,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3988 which the user can then edit. This only works if there is a single
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3989 source file, not when operating on multiple marked files.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3990
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3991 ** Gnus changes.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3992
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3993 The Gnus NEWS entries are short, but they reflect sweeping changes in
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3994 four areas: Article display treatment, MIME treatment,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3995 internationalization and mail-fetching.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3996
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3997 *** The mail-fetching functions have changed. See the manual for the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3998 many details. In particular, all procmail fetching variables are gone.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3999
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4000 If you used procmail like in
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4001
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4002 (setq nnmail-use-procmail t)
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4003 (setq nnmail-spool-file 'procmail)
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4004 (setq nnmail-procmail-directory "~/mail/incoming/")
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4005 (setq nnmail-procmail-suffix "\\.in")
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4006
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4007 this now has changed to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4008
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4009 (setq mail-sources
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4010 '((directory :path "~/mail/incoming/"
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4011 :suffix ".in")))
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4012
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4013 More information is available in the info doc at Select Methods ->
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4014 Getting Mail -> Mail Sources
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4015
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4016 *** Gnus is now a MIME-capable reader. This affects many parts of
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4017 Gnus, and adds a slew of new commands. See the manual for details.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4018 Separate MIME packages like RMIME, mime-compose etc., will probably no
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4019 longer work; remove them and use the native facilities.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4020
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4021 The FLIM/SEMI package still works with Emacs 21, but if you want to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4022 use the native facilities, you must remove any mailcap.el[c] that was
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4023 installed by FLIM/SEMI version 1.13 or earlier.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4024
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4025 *** Gnus has also been multilingualized. This also affects too many
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4026 parts of Gnus to summarize here, and adds many new variables. There
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4027 are built-in facilities equivalent to those of gnus-mule.el, which is
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4028 now just a compatibility layer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4029
38925
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
4030 *** gnus-mule.el is now just a compatibility layer over the built-in
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
4031 Gnus facilities.
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
4032
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4033 *** gnus-auto-select-first can now be a function to be
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4034 called to position point.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4035
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4036 *** The user can now decide which extra headers should be included in
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4037 summary buffers and NOV files.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4038
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4039 *** `gnus-article-display-hook' has been removed. Instead, a number
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4040 of variables starting with `gnus-treat-' have been added.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4041
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4042 *** The Gnus posting styles have been redone again and now work in a
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4043 subtly different manner.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4044
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4045 *** New web-based backends have been added: nnslashdot, nnwarchive
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4046 and nnultimate. nnweb has been revamped, again, to keep up with
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4047 ever-changing layouts.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4048
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4049 *** Gnus can now read IMAP mail via nnimap.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4050
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4051 *** There is image support of various kinds and some sound support.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4052
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4053 ** Changes in Texinfo mode.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4054
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4055 *** A couple of new key bindings have been added for inserting Texinfo
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4056 macros
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4057
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4058 Key binding Macro
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4059 -------------------------
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4060 C-c C-c C-s @strong
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4061 C-c C-c C-e @emph
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4062 C-c C-c u @uref
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4063 C-c C-c q @quotation
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4064 C-c C-c m @email
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4065 C-c C-o @<block> ... @end <block>
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4066 M-RET @item
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4067
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4068 *** The " key now inserts either " or `` or '' depending on context.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4069
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4070 ** Changes in Outline mode.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4071
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4072 There is now support for Imenu to index headings. A new command
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4073 `outline-headers-as-kill' copies the visible headings in the region to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4074 the kill ring, e.g. to produce a table of contents.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4075
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4076 ** Changes to Emacs Server
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4077
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4078 *** The new option `server-kill-new-buffers' specifies what to do
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4079 with buffers when done with them. If non-nil, the default, buffers
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4080 are killed, unless they were already present before visiting them with
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4081 Emacs Server. If nil, `server-temp-file-regexp' specifies which
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4082 buffers to kill, as before.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4083
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4084 Please note that only buffers are killed that still have a client,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4085 i.e. buffers visited with `emacsclient --no-wait' are never killed in
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4086 this way.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4087
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4088 ** Both emacsclient and Emacs itself now accept command line options
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4089 of the form +LINE:COLUMN in addition to +LINE.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4090
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4091 ** Changes to Show Paren mode.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4092
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4093 *** Overlays used by Show Paren mode now use a priority property.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4094 The new user option show-paren-priority specifies the priority to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4095 use. Default is 1000.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4096
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4097 ** New command M-x check-parens can be used to find unbalanced paren
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4098 groups and strings in buffers in Lisp mode (or other modes).
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4099
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4100 ** Changes to hideshow.el
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4101
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4102 *** Generalized block selection and traversal
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4103
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4104 A block is now recognized by its start and end regexps (both strings),
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4105 and an integer specifying which sub-expression in the start regexp
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4106 serves as the place where a `forward-sexp'-like function can operate.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4107 See the documentation of variable `hs-special-modes-alist'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4108
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4109 *** During incremental search, if Hideshow minor mode is active,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4110 hidden blocks are temporarily shown. The variable `hs-headline' can
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4111 be used in the mode line format to show the line at the beginning of
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4112 the open block.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4113
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4114 *** User option `hs-hide-all-non-comment-function' specifies a
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4115 function to be called at each top-level block beginning, instead of
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4116 the normal block-hiding function.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4117
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4118 *** The command `hs-show-region' has been removed.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4119
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4120 *** The key bindings have changed to fit the Emacs conventions,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4121 roughly imitating those of Outline minor mode. Notably, the prefix
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4122 for all bindings is now `C-c @'. For details, see the documentation
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4123 for `hs-minor-mode'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4124
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4125 *** The variable `hs-show-hidden-short-form' has been removed, and
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4126 hideshow.el now always behaves as if this variable were set to t.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4127
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4128 ** Changes to Change Log mode and Add-Log functions
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4129
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4130 *** If you invoke `add-change-log-entry' from a backup file, it makes
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4131 an entry appropriate for the file's parent. This is useful for making
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4132 log entries by comparing a version with deleted functions.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4133
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4134 **** New command M-x change-log-merge merges another log into the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4135 current buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4136
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4137 *** New command M-x change-log-redate fixes any old-style date entries
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4138 in a log file.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4139
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4140 *** Change Log mode now adds a file's version number to change log
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4141 entries if user-option `change-log-version-info-enabled' is non-nil.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4142 Unless the file is under version control the search for a file's
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4143 version number is performed based on regular expressions from
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4144 `change-log-version-number-regexp-list' which can be customized.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4145 Version numbers are only found in the first 10 percent of a file.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4146
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4147 *** Change Log mode now defines its own faces for font-lock highlighting.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4148
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4149 ** Changes to cmuscheme
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4150
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4151 *** The user-option `scheme-program-name' has been renamed
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4152 `cmuscheme-program-name' due to conflicts with xscheme.el.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4153
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4154 ** Changes in Font Lock
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4155
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4156 *** The new function `font-lock-remove-keywords' can be used to remove
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4157 font-lock keywords from the current buffer or from a specific major mode.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4158
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4159 *** Multi-line patterns are now supported. Modes using this, should
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4160 set font-lock-multiline to t in their font-lock-defaults.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4161
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4162 *** `font-lock-syntactic-face-function' allows major-modes to choose
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4163 the face used for each string/comment.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4164
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4165 *** A new standard face `font-lock-doc-face'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4166 Meant for Lisp docstrings, Javadoc comments and other "documentation in code".
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4167
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4168 ** Changes to Shell mode
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4169
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4170 *** The `shell' command now accepts an optional argument to specify the buffer
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4171 to use, which defaults to "*shell*". When used interactively, a
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4172 non-default buffer may be specified by giving the `shell' command a
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4173 prefix argument (causing it to prompt for the buffer name).
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4174
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4175 ** Comint (subshell) changes
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4176
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4177 These changes generally affect all modes derived from comint mode, which
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4178 include shell-mode, gdb-mode, scheme-interaction-mode, etc.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4179
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4180 *** Comint now by default interprets some carriage-control characters.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4181 Comint now removes CRs from CR LF sequences, and treats single CRs and
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4182 BSs in the output in a way similar to a terminal (by deleting to the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4183 beginning of the line, or deleting the previous character,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4184 respectively). This is achieved by adding `comint-carriage-motion' to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4185 the `comint-output-filter-functions' hook by default.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4186
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4187 *** By default, comint no longer uses the variable `comint-prompt-regexp'
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4188 to distinguish prompts from user-input. Instead, it notices which
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4189 parts of the text were output by the process, and which entered by the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4190 user, and attaches `field' properties to allow emacs commands to use
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4191 this information. Common movement commands, notably beginning-of-line,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4192 respect field boundaries in a fairly natural manner. To disable this
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4193 feature, and use the old behavior, customize the user option
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4194 `comint-use-prompt-regexp-instead-of-fields'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4195
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4196 *** Comint now includes new features to send commands to running processes
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4197 and redirect the output to a designated buffer or buffers.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4198
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4199 *** The command M-x comint-redirect-send-command reads a command and
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4200 buffer name from the mini-buffer. The command is sent to the current
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4201 buffer's process, and its output is inserted into the specified buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4202
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4203 The command M-x comint-redirect-send-command-to-process acts like
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4204 M-x comint-redirect-send-command but additionally reads the name of
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4205 the buffer whose process should be used from the mini-buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4206
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4207 *** Packages based on comint now highlight user input and program prompts,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4208 and support choosing previous input with mouse-2. To control these features,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4209 see the user-options `comint-highlight-input' and `comint-highlight-prompt'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4210
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4211 *** The new command `comint-write-output' (usually bound to `C-c C-s')
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4212 saves the output from the most recent command to a file. With a prefix
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4213 argument, it appends to the file.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4214
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4215 *** The command `comint-kill-output' has been renamed `comint-delete-output'
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4216 (usually bound to `C-c C-o'); the old name is aliased to it for
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4217 compatibility.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4218
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4219 *** The new function `comint-add-to-input-history' adds commands to the input
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4220 ring (history).
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4221
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4222 *** The new variable `comint-input-history-ignore' is a regexp for
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4223 identifying history lines that should be ignored, like tcsh time-stamp
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4224 strings, starting with a `#'. The default value of this variable is "^#".
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4225
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4226 ** Changes to Rmail mode
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4227
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4228 *** The new user-option rmail-user-mail-address-regexp can be
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4229 set to fine tune the identification of the correspondent when
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4230 receiving new mail. If it matches the address of the sender, the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4231 recipient is taken as correspondent of a mail. If nil, the default,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4232 `user-login-name' and `user-mail-address' are used to exclude yourself
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4233 as correspondent.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4234
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4235 Usually you don't have to set this variable, except if you collect
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4236 mails sent by you under different user names. Then it should be a
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4237 regexp matching your mail addresses.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4238
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4239 *** The new user-option rmail-confirm-expunge controls whether and how
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4240 to ask for confirmation before expunging deleted messages from an
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4241 Rmail file. You can choose between no confirmation, confirmation
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4242 with y-or-n-p, or confirmation with yes-or-no-p. Default is to ask
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4243 for confirmation with yes-or-no-p.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4244
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4245 *** RET is now bound in the Rmail summary to rmail-summary-goto-msg,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4246 like `j'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4247
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4248 *** There is a new user option `rmail-digest-end-regexps' that
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4249 specifies the regular expressions to detect the line that ends a
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4250 digest message.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4251
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4252 *** The new user option `rmail-automatic-folder-directives' specifies
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4253 in which folder to put messages automatically.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4254
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4255 *** The new function `rmail-redecode-body' allows to fix a message
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4256 with non-ASCII characters if Emacs happens to decode it incorrectly
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4257 due to missing or malformed "charset=" header.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4258
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4259 ** The new user-option `mail-envelope-from' can be used to specify
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4260 an envelope-from address different from user-mail-address.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4261
38925
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
4262 ** The variable mail-specify-envelope-from controls whether to
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
4263 use the -f option when sending mail.
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
4264
39300
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4265 ** The Rmail command `o' (`rmail-output-to-rmail-file') now writes the
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4266 current message in the internal `emacs-mule' encoding, rather than in
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4267 the encoding taken from the variable `buffer-file-coding-system'.
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4268 This allows to save messages whose characters cannot be safely encoded
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4269 by the buffer's coding system, and makes sure the message will be
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4270 displayed correctly when you later visit the target Rmail file.
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4271
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4272 If you want your Rmail files be encoded in a specific coding system
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4273 other than `emacs-mule', you can customize the variable
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4274 `rmail-file-coding-system' to set its value to that coding system.
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4275
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4276 ** Changes to TeX mode
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4277
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4278 *** The default mode has been changed from `plain-tex-mode' to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4279 `latex-mode'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4280
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4281 *** latex-mode now has a simple indentation algorithm.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4282
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4283 *** M-f and M-p jump around \begin...\end pairs.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4284
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4285 *** Added support for outline-minor-mode.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4286
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4287 ** Changes to RefTeX mode
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4288
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4289 *** RefTeX has new support for index generation. Index entries can be
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4290 created with `C-c <', with completion available on index keys.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4291 Pressing `C-c /' indexes the word at the cursor with a default
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4292 macro. `C-c >' compiles all index entries into an alphabetically
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4293 sorted *Index* buffer which looks like the final index. Entries
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4294 can be edited from that buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4295
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4296 *** Label and citation key selection now allow to select several
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4297 items and reference them together (use `m' to mark items, `a' or
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4298 `A' to use all marked entries).
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4299
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4300 *** reftex.el has been split into a number of smaller files to reduce
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4301 memory use when only a part of RefTeX is being used.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4302
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4303 *** a new command `reftex-view-crossref-from-bibtex' (bound to `C-c &'
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4304 in BibTeX-mode) can be called in a BibTeX database buffer in order
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4305 to show locations in LaTeX documents where a particular entry has
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4306 been cited.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4307
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4308 ** Emacs Lisp mode now allows multiple levels of outline headings.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4309 The level of a heading is determined from the number of leading
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4310 semicolons in a heading line. Toplevel forms starting with a `('
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4311 in column 1 are always made leaves.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4312
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4313 ** The M-x time-stamp command (most commonly used on write-file-hooks)
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4314 has the following new features:
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4315
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4316 *** The patterns for finding the time stamp and for updating a pattern
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4317 may match text spanning multiple lines. For example, some people like
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4318 to have the filename and date on separate lines. The new variable
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4319 time-stamp-inserts-lines controls the matching for multi-line patterns.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4320
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4321 *** More than one time stamp can be updated in the same file. This
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4322 feature is useful if you need separate time stamps in a program source
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4323 file to both include in formatted documentation and insert in the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4324 compiled binary. The same time-stamp will be written at each matching
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4325 pattern. The variable time-stamp-count enables this new feature; it
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4326 defaults to 1.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4327
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4328 ** Partial Completion mode now completes environment variables in
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4329 file names.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4330
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4331 ** Ispell changes
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4332
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4333 *** The command `ispell' now spell-checks a region if
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4334 transient-mark-mode is on, and the mark is active. Otherwise it
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4335 spell-checks the current buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4336
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4337 *** Support for synchronous subprocesses - DOS/Windoze - has been
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4338 added.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4339
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4340 *** An "alignment error" bug was fixed when a manual spelling
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4341 correction is made and re-checked.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4342
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
4343 *** Italian, Portuguese, and Slovak dictionary definitions have been added.
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4344
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4345 *** Region skipping performance has been vastly improved in some
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4346 cases.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4347
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4348 *** Spell checking HTML buffers has been improved and isn't so strict
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4349 on syntax errors.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4350
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4351 *** The buffer-local words are now always placed on a new line at the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4352 end of the buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4353
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4354 *** Spell checking now works in the MS-DOS version of Emacs.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4355
28506
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4356 ** Makefile mode changes
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4357
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4358 *** The mode now uses the abbrev table `makefile-mode-abbrev-table'.
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4359
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
4360 *** Conditionals and include statements are now highlighted when
28506
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4361 Fontlock mode is active.
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4362
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4363 ** Isearch changes
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4364
30477
5996e9860cd2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30467
diff changeset
4365 *** Isearch now puts a call to `isearch-resume' in the command history,
5996e9860cd2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30467
diff changeset
4366 so that searches can be resumed.
5996e9860cd2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30467
diff changeset
4367
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
4368 *** In Isearch mode, C-M-s and C-M-r are now bound like C-s and C-r,
28506
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4369 respectively, i.e. you can repeat a regexp isearch with the same keys
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4370 that started the search.
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4371
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4372 *** In Isearch mode, mouse-2 in the echo area now yanks the current
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4373 selection into the search string rather than giving an error.
Dave Love <fx@gnu.org>
parents:
diff changeset
4374
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4375 *** There is a new lazy highlighting feature in incremental search.
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4376
26417
5678b244c3ac Changes in `list-buffers'.
Gerd Moellmann <gerd@gnu.org>
parents: 26407
diff changeset
4377 Lazy highlighting is switched on/off by customizing variable
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4378 `isearch-lazy-highlight'. When active, all matches for the current
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4379 search string are highlighted. The current match is highlighted as
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4380 before using face `isearch' or `region'. All other matches are
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4381 highlighted using face `isearch-lazy-highlight-face' which defaults to
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
4382 `secondary-selection'.
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4383
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4384 The extra highlighting makes it easier to anticipate where the cursor
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4385 will end up each time you press C-s or C-r to repeat a pending search.
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4386 Highlighting of these additional matches happens in a deferred fashion
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4387 using "idle timers," so the cycles needed do not rob isearch of its
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4388 usual snappy response.
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4389
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4390 If `isearch-lazy-highlight-cleanup' is set to t, highlights for
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4391 matches are automatically cleared when you end the search. If it is
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4392 set to nil, you can remove the highlights manually with `M-x
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4393 isearch-lazy-highlight-cleanup'.
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4394
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4395 ** VC Changes
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4396
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4397 VC has been overhauled internally. It is now modular, making it
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4398 easier to plug-in arbitrary version control backends. (See Lisp
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4399 Changes for details on the new structure.) As a result, the mechanism
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4400 to enable and disable support for particular version systems has
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4401 changed: everything is now controlled by the new variable
36275
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4402 `vc-handled-backends'. Its value is a list of symbols that identify
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4403 version systems; the default is '(RCS CVS SCCS). When finding a file,
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4404 each of the backends in that list is tried in order to see whether the
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4405 file is registered in that backend.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4406
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4407 When registering a new file, VC first tries each of the listed
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4408 backends to see if any of them considers itself "responsible" for the
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4409 directory of the file (e.g. because a corresponding subdirectory for
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4410 master files exists). If none of the backends is responsible, then
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4411 the first backend in the list that could register the file is chosen.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4412 As a consequence, the variable `vc-default-back-end' is now obsolete.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4413
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4414 The old variable `vc-master-templates' is also obsolete, although VC
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4415 still supports it for backward compatibility. To define templates for
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4416 RCS or SCCS, you should rather use the new variables
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4417 vc-{rcs,sccs}-master-templates. (There is no such feature under CVS
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4418 where it doesn't make sense.)
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4419
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4420 The variables `vc-ignore-vc-files' and `vc-handle-cvs' are also
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4421 obsolete now, you must set `vc-handled-backends' to nil or exclude
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4422 `CVS' from the list, respectively, to achieve their effect now.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4423
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4424 *** General Changes
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4425
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4426 The variable `vc-checkout-carefully' is obsolete: the corresponding
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4427 checks are always done now.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4428
31858
269d69b69fe4 Update hideshow.el section.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 31827
diff changeset
4429 VC Dired buffers are now kept up-to-date during all version control
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4430 operations.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4431
33111
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
4432 `vc-diff' output is now displayed in `diff-mode'.
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
4433 `vc-print-log' uses `log-view-mode'.
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
4434 `vc-log-mode' (used for *VC-Log*) has been replaced by `log-edit-mode'.
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
4435
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4436 The command C-x v m (vc-merge) now accepts an empty argument as the
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4437 first revision number. This means that any recent changes on the
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4438 current branch should be picked up from the repository and merged into
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4439 the working file (``merge news'').
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4440
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4441 The commands C-x v s (vc-create-snapshot) and C-x v r
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4442 (vc-retrieve-snapshot) now ask for a directory name from which to work
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4443 downwards.
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4444
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4445 *** Multiple Backends
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4446
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4447 VC now lets you register files in more than one backend. This is
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4448 useful, for example, if you are working with a slow remote CVS
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4449 repository. You can then use RCS for local editing, and occasionally
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4450 commit your changes back to CVS, or pick up changes from CVS into your
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4451 local RCS archives.
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4452
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4453 To make this work, the ``more local'' backend (RCS in our example)
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4454 should come first in `vc-handled-backends', and the ``more remote''
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4455 backend (CVS) should come later. (The default value of
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4456 `vc-handled-backends' already has it that way.)
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4457
36275
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4458 You can then commit changes to another backend (say, RCS), by typing
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4459 C-u C-x v v RCS RET (i.e. vc-next-action now accepts a backend name as
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4460 a revision number). VC registers the file in the more local backend
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4461 if that hasn't already happened, and commits to a branch based on the
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4462 current revision number from the more remote backend.
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4463
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4464 If a file is registered in multiple backends, you can switch to
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4465 another one using C-x v b (vc-switch-backend). This does not change
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4466 any files, it only changes VC's perspective on the file. Use this to
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4467 pick up changes from CVS while working under RCS locally.
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4468
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4469 After you are done with your local RCS editing, you can commit your
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4470 changes back to CVS using C-u C-x v v CVS RET. In this case, the
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4471 local RCS archive is removed after the commit, and the log entry
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4472 buffer is initialized to contain the entire RCS change log of the file.
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4473
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4474 *** Changes for CVS
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4475
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4476 There is a new user option, `vc-cvs-stay-local'. If it is `t' (the
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4477 default), then VC avoids network queries for files registered in
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4478 remote repositories. The state of such files is then only determined
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4479 by heuristics and past information. `vc-cvs-stay-local' can also be a
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4480 regexp to match against repository hostnames; only files from hosts
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4481 that match it are treated locally. If the variable is nil, then VC
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4482 queries the repository just as often as it does for local files.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4483
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4484 If `vc-cvs-stay-local' is on, then VC also makes local backups of
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4485 repository versions. This means that ordinary diffs (C-x v =) and
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4486 revert operations (C-x v u) can be done completely locally, without
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4487 any repository interactions at all. The name of a local version
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4488 backup of FILE is FILE.~REV.~, where REV is the repository version
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4489 number. This format is similar to that used by C-x v ~
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4490 (vc-version-other-window), except for the trailing dot. As a matter
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4491 of fact, the two features can each use the files created by the other,
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4492 the only difference being that files with a trailing `.' are deleted
33862
09fdef086f4d C-c C-c u in Texinfo now produces @uref, not @url.
Eli Zaretskii <eliz@gnu.org>
parents: 33838
diff changeset
4493 automatically after commit. (This feature doesn't work on MS-DOS,
09fdef086f4d C-c C-c u in Texinfo now produces @uref, not @url.
Eli Zaretskii <eliz@gnu.org>
parents: 33838
diff changeset
4494 since DOS disallows more than a single dot in the trunk of a file
09fdef086f4d C-c C-c u in Texinfo now produces @uref, not @url.
Eli Zaretskii <eliz@gnu.org>
parents: 33838
diff changeset
4495 name.)
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4496
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4497 If `vc-cvs-stay-local' is on, and there have been changes in the
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4498 repository, VC notifies you about it when you actually try to commit.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4499 If you want to check for updates from the repository without trying to
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4500 commit, you can either use C-x v m RET to perform an update on the
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4501 current file, or you can use C-x v r RET to get an update for an
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4502 entire directory tree.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4503
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4504 The new user option `vc-cvs-use-edit' indicates whether VC should call
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4505 "cvs edit" to make files writeable; it defaults to `t'. (This option
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4506 is only meaningful if the CVSREAD variable is set, or if files are
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4507 "watched" by other developers.)
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4508
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4509 The commands C-x v s (vc-create-snapshot) and C-x v r
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4510 (vc-retrieve-snapshot) are now also implemented for CVS. If you give
36275
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4511 an empty snapshot name to the latter, that performs a `cvs update',
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4512 starting at the given directory.
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4513
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4514 *** Lisp Changes in VC
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4515
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4516 VC has been restructured internally to make it modular. You can now
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4517 add support for arbitrary version control backends by writing a
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4518 library that provides a certain set of backend-specific functions, and
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4519 then telling VC to use that library. For example, to add support for
36275
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4520 a version system named SYS, you write a library named vc-sys.el, which
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4521 provides a number of functions vc-sys-... (see commentary at the top
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4522 of vc.el for a detailed list of them). To make VC use that library,
36275
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4523 you need to put it somewhere into Emacs' load path and add the symbol
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4524 `SYS' to the list `vc-handled-backends'.
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4525
36525
cb77fd8249b6 Change the `***' for the EDT entry to `**'.
Gerd Moellmann <gerd@gnu.org>
parents: 36470
diff changeset
4526 ** The customizable EDT emulation package now supports the EDT
35163
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4527 SUBS command and EDT scroll margins. It also works with more
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4528 terminal/keyboard configurations and it now works under XEmacs.
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4529 See etc/edt-user.doc for more information.
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4530
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4531 ** New modes and packages
Dave Love <fx@gnu.org>
parents:
diff changeset
4532
34394
d6a4dd5cd345 Entry for `minibuffer-electric-default-mode'.
Miles Bader <miles@gnu.org>
parents: 34389
diff changeset
4533 *** The new global minor mode `minibuffer-electric-default-mode'
d6a4dd5cd345 Entry for `minibuffer-electric-default-mode'.
Miles Bader <miles@gnu.org>
parents: 34389
diff changeset
4534 automatically hides the `(default ...)' part of minibuffer prompts when
d6a4dd5cd345 Entry for `minibuffer-electric-default-mode'.
Miles Bader <miles@gnu.org>
parents: 34389
diff changeset
4535 the default is not applicable.
d6a4dd5cd345 Entry for `minibuffer-electric-default-mode'.
Miles Bader <miles@gnu.org>
parents: 34389
diff changeset
4536
33618
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4537 *** Artist is an Emacs lisp package that allows you to draw lines,
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4538 rectangles and ellipses by using your mouse and/or keyboard. The
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4539 shapes are made up with the ascii characters |, -, / and \.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4540
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4541 Features are:
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4542
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4543 - Intersecting: When a `|' intersects with a `-', a `+' is
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4544 drawn, like this: | \ /
33796
10ffa5b56f53 mention `delete-trailing-whitespace'
Sam Steingold <sds@gnu.org>
parents: 33720
diff changeset
4545 --+-- X
33618
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4546 | / \
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4547
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4548 - Rubber-banding: When drawing lines you can interactively see the
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4549 result while holding the mouse button down and moving the mouse. If
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4550 your machine is not fast enough (a 386 is a bit too slow, but a
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4551 pentium is well enough), you can turn this feature off. You will
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4552 then see 1's and 2's which mark the 1st and 2nd endpoint of the line
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4553 you are drawing.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4554
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4555 - Arrows: After having drawn a (straight) line or a (straight)
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4556 poly-line, you can set arrows on the line-ends by typing < or >.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4557
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4558 - Flood-filling: You can fill any area with a certain character by
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4559 flood-filling.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4560
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4561 - Cut copy and paste: You can cut, copy and paste rectangular
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4562 regions. Artist also interfaces with the rect package (this can be
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4563 turned off if it causes you any trouble) so anything you cut in
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4564 artist can be yanked with C-x r y and vice versa.
33796
10ffa5b56f53 mention `delete-trailing-whitespace'
Sam Steingold <sds@gnu.org>
parents: 33720
diff changeset
4565
33618
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4566 - Drawing with keys: Everything you can do with the mouse, you can
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4567 also do without the mouse.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4568
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4569 - Aspect-ratio: You can set the variable artist-aspect-ratio to
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4570 reflect the height-width ratio for the font you are using. Squares
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4571 and circles are then drawn square/round. Note, that once your
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4572 ascii-file is shown with font with a different height-width ratio,
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4573 the squares won't be square and the circles won't be round.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4574
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4575 - Drawing operations: The following drawing operations are implemented:
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4576
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4577 lines straight-lines
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4578 rectangles squares
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4579 poly-lines straight poly-lines
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4580 ellipses circles
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4581 text (see-thru) text (overwrite)
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4582 spray-can setting size for spraying
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4583 vaporize line vaporize lines
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4584 erase characters erase rectangles
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4585
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4586 Straight lines are lines that go horizontally, vertically or
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4587 diagonally. Plain lines go in any direction. The operations in
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4588 the right column are accessed by holding down the shift key while
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4589 drawing.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4590
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4591 It is possible to vaporize (erase) entire lines and connected lines
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4592 (rectangles for example) as long as the lines being vaporized are
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4593 straight and connected at their endpoints. Vaporizing is inspired
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4594 by the drawrect package by Jari Aalto <jari.aalto@poboxes.com>.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4595
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4596 - Picture mode compatibility: Artist is picture mode compatible (this
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4597 can be turned off).
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4598
32448
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4599 *** The new package Eshell is an operating system command shell
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4600 implemented entirely in Emacs Lisp. Use `M-x eshell' to invoke it.
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4601 It functions similarly to bash and zsh, and allows running of Lisp
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4602 functions and external commands using the same syntax. It supports
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4603 history lists, aliases, extended globbing, smart scrolling, etc. It
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4604 will work on any platform Emacs has been ported to. And since most of
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4605 the basic commands -- ls, rm, mv, cp, ln, du, cat, etc. -- have been
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4606 rewritten in Lisp, it offers an operating-system independent shell,
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4607 all within the scope of your Emacs process.
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4608
30781
59479ef35bf2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30776
diff changeset
4609 *** The new package timeclock.el is a mode is for keeping track of time
59479ef35bf2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30776
diff changeset
4610 intervals. You can use it for whatever purpose you like, but the
59479ef35bf2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30776
diff changeset
4611 typical scenario is to keep track of how much time you spend working
59479ef35bf2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30776
diff changeset
4612 on certain projects.
59479ef35bf2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30776
diff changeset
4613
35927
f41b5b91e80d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35923
diff changeset
4614 *** The new package hi-lock.el provides commands to highlight matches
f41b5b91e80d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35923
diff changeset
4615 of interactively entered regexps. For example,
30789
68b63779f4df typo fix
Sam Steingold <sds@gnu.org>
parents: 30788
diff changeset
4616
68b63779f4df typo fix
Sam Steingold <sds@gnu.org>
parents: 30788
diff changeset
4617 M-x highlight-regexp RET clearly RET RET
30565
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4618
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4619 will highlight all occurrences of `clearly' using a yellow background
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4620 face. New occurrences of `clearly' will be highlighted as they are
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4621 typed. `M-x unhighlight-regexp RET' will remove the highlighting.
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4622 Any existing face can be used for highlighting and a set of
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4623 appropriate faces is provided. The regexps can be written into the
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4624 current buffer in a form that will be recognized the next time the
35927
f41b5b91e80d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35923
diff changeset
4625 corresponding file is read. There are commands to highlight matches
f41b5b91e80d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35923
diff changeset
4626 to phrases and to highlight entire lines containing a match.
30565
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4627
30789
68b63779f4df typo fix
Sam Steingold <sds@gnu.org>
parents: 30788
diff changeset
4628 *** The new package zone.el plays games with Emacs' display when
30565
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4629 Emacs is idle.
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4630
38099
3255cb9d0be2 Mention tildify.el.
Eli Zaretskii <eliz@gnu.org>
parents: 38067
diff changeset
4631 *** The new package tildify.el allows to add hard spaces or other text
3255cb9d0be2 Mention tildify.el.
Eli Zaretskii <eliz@gnu.org>
parents: 38067
diff changeset
4632 fragments in accordance with the current major mode.
3255cb9d0be2 Mention tildify.el.
Eli Zaretskii <eliz@gnu.org>
parents: 38067
diff changeset
4633
30319
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4634 *** The new package xml.el provides a simple but generic XML
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4635 parser. It doesn't parse the DTDs however.
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4636
29218
e956cc90f6c0 newcomment and the change of binding for M-;
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 29162
diff changeset
4637 *** The comment operations are now provided by the newcomment.el
e956cc90f6c0 newcomment and the change of binding for M-;
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 29162
diff changeset
4638 package which allows different styles of comment-region and should
e956cc90f6c0 newcomment and the change of binding for M-;
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 29162
diff changeset
4639 be more robust while offering the same functionality.
33913
0c780fd30da5 New font-lock-doc-face.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33862
diff changeset
4640 `comment-region' now doesn't always comment a-line-at-a-time, but only
0c780fd30da5 New font-lock-doc-face.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33862
diff changeset
4641 comments the region, breaking the line at point if necessary.
29218
e956cc90f6c0 newcomment and the change of binding for M-;
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 29162
diff changeset
4642
28879
2a918425ca15 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28870
diff changeset
4643 *** The Ebrowse package implements a C++ class browser and tags
2a918425ca15 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28870
diff changeset
4644 facilities tailored for use with C++. It is documented in a
2a918425ca15 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28870
diff changeset
4645 separate Texinfo file.
2a918425ca15 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28870
diff changeset
4646
31007
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
4647 *** The PCL-CVS package available by either running M-x cvs-examine or
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
4648 by visiting a CVS administrative directory (with a prefix argument)
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
4649 provides an alternative interface to VC-dired for CVS. It comes with
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
4650 `log-view-mode' to view RCS and SCCS logs and `log-edit-mode' used to
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
4651 enter check-in log messages.
31007
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
4652
28834
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4653 *** The new package called `woman' allows to browse Unix man pages
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4654 without invoking external programs.
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4655
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4656 The command `M-x woman' formats manual pages entirely in Emacs Lisp
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4657 and then displays them, like `M-x manual-entry' does. Unlike
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4658 `manual-entry', `woman' does not invoke any external programs, so it
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4659 is useful on systems such as MS-DOS/MS-Windows where the `man' and
28955
6cfd3ddf0911 Correct a typo in description of `woman.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 28946
diff changeset
4660 Groff or `troff' commands are not readily available.
28834
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4661
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4662 The command `M-x woman-find-file' asks for the file name of a man
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4663 page, then formats and displays it like `M-x woman' does.
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4664
28098
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4665 *** The new command M-x re-builder offers a convenient interface for
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4666 authoring regular expressions with immediate visual feedback.
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4667
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4668 The buffer from which the command was called becomes the target for
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4669 the regexp editor popping up in a separate window. Matching text in
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4670 the target buffer is immediately color marked during the editing.
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4671 Each sub-expression of the regexp will show up in a different face so
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4672 even complex regexps can be edited and verified on target data in a
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4673 single step.
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4674
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4675 On displays not supporting faces the matches instead blink like
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4676 matching parens to make them stand out. On such a setup you will
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4677 probably also want to use the sub-expression mode when the regexp
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4678 contains such to get feedback about their respective limits.
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4679
27644
1ac28043dbd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27573
diff changeset
4680 *** glasses-mode is a minor mode that makes
1ac28043dbd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27573
diff changeset
4681 unreadableIdentifiersLikeThis readable. It works as glasses, without
1ac28043dbd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27573
diff changeset
4682 actually modifying content of a buffer.
1ac28043dbd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27573
diff changeset
4683
27498
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4684 *** The package ebnf2ps translates an EBNF to a syntactic chart in
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4685 PostScript.
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4686
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4687 Currently accepts ad-hoc EBNF, ISO EBNF and Bison/Yacc.
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4688
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4689 The ad-hoc default EBNF syntax has the following elements:
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4690
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4691 ; comment (until end of line)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4692 A non-terminal
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4693 "C" terminal
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4694 ?C? special
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4695 $A default non-terminal
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4696 $"C" default terminal
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4697 $?C? default special
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4698 A = B. production (A is the header and B the body)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4699 C D sequence (C occurs before D)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4700 C | D alternative (C or D occurs)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4701 A - B exception (A excluding B, B without any non-terminal)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4702 n * A repetition (A repeats n (integer) times)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4703 (C) group (expression C is grouped together)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4704 [C] optional (C may or not occurs)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4705 C+ one or more occurrences of C
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4706 {C}+ one or more occurrences of C
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4707 {C}* zero or more occurrences of C
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4708 {C} zero or more occurrences of C
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4709 C / D equivalent to: C {D C}*
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4710 {C || D}+ equivalent to: C {D C}*
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4711 {C || D}* equivalent to: [C {D C}*]
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4712 {C || D} equivalent to: [C {D C}*]
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4713
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4714 Please, see ebnf2ps documentation for EBNF syntax and how to use it.
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4715
27328
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4716 *** The package align.el will align columns within a region, using M-x
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4717 align. Its mode-specific rules, based on regular expressions,
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4718 determine where the columns should be split. In C and C++, for
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4719 example, it will align variable names in declaration lists, or the
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4720 equal signs of assignments.
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4721
27266
8ce11c7a7fcb read-mail-command, outline mode changes, change-log-merge,
Dave Love <fx@gnu.org>
parents: 27200
diff changeset
4722 *** `paragraph-indent-minor-mode' is a new minor mode supporting
8ce11c7a7fcb read-mail-command, outline mode changes, change-log-merge,
Dave Love <fx@gnu.org>
parents: 27200
diff changeset
4723 paragraphs in the same style as `paragraph-indent-text-mode'.
8ce11c7a7fcb read-mail-command, outline mode changes, change-log-merge,
Dave Love <fx@gnu.org>
parents: 27200
diff changeset
4724
27016
62cd5f1749cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27005
diff changeset
4725 *** bs.el is a new package for buffer selection similar to
62cd5f1749cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27005
diff changeset
4726 list-buffers or electric-buffer-list. Use M-x bs-show to display a
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
4727 buffer menu with this package. See the Custom group `bs'.
27016
62cd5f1749cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27005
diff changeset
4728
29696
a5051216d618 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29676
diff changeset
4729 *** find-lisp.el is a package emulating the Unix find command in Lisp.
a5051216d618 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29676
diff changeset
4730
27733
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4731 *** calculator.el is a small calculator package that is intended to
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4732 replace desktop calculators such as xcalc and calc.exe. Actually, it
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4733 is not too small - it has more features than most desktop calculators,
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4734 and can be customized easily to get many more functions. It should
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4735 not be confused with "calc" which is a much bigger mathematical tool
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4736 which answers different needs.
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4737
26964
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4738 *** The minor modes cwarn-mode and global-cwarn-mode highlights
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4739 suspicious C and C++ constructions. Currently, assignments inside
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4740 expressions, semicolon following `if', `for' and `while' (except, of
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4741 course, after a `do .. while' statement), and C++ functions with
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4742 reference parameters are recognized. The modes require font-lock mode
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4743 to be enabled.
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4744
27094
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
4745 *** smerge-mode.el provides `smerge-mode', a simple minor-mode for files
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
4746 containing diff3-style conflict markers, such as generated by RCS.
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
4747
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4748 *** 5x5.el is a simple puzzle game.
Dave Love <fx@gnu.org>
parents:
diff changeset
4749
38938
0815e13f099e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38925
diff changeset
4750 *** hl-line.el provides `hl-line-mode', a minor mode to highlight the
0815e13f099e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38925
diff changeset
4751 current line in the current buffer. It also provides
46989
eeab5bdaffa2 Fix typos.
Richard M. Stallman <rms@gnu.org>
parents: 46962
diff changeset
4752 `global-hl-line-mode' to provide the same behavior in all buffers.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4753
Dave Love <fx@gnu.org>
parents:
diff changeset
4754 *** ansi-color.el translates ANSI terminal escapes into text-properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
4755
35578
f499794dc393 flyspell
Dave Love <fx@gnu.org>
parents: 35577
diff changeset
4756 Please note: if `ansi-color-for-comint-mode' and
31936
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4757 `global-font-lock-mode' are non-nil, loading ansi-color.el will
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4758 disable font-lock and add `ansi-color-apply' to
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4759 `comint-preoutput-filter-functions' for all shell-mode buffers. This
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4760 displays the output of "ls --color=yes" using the correct foreground
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4761 and background colors.
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4762
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4763 *** delphi.el provides a major mode for editing the Delphi (Object
Dave Love <fx@gnu.org>
parents:
diff changeset
4764 Pascal) language.
Dave Love <fx@gnu.org>
parents:
diff changeset
4765
Dave Love <fx@gnu.org>
parents:
diff changeset
4766 *** quickurl.el provides a simple method of inserting a URL based on
Dave Love <fx@gnu.org>
parents:
diff changeset
4767 the text at point.
Dave Love <fx@gnu.org>
parents:
diff changeset
4768
Dave Love <fx@gnu.org>
parents:
diff changeset
4769 *** sql.el provides an interface to SQL data bases.
Dave Love <fx@gnu.org>
parents:
diff changeset
4770
25862
62b8ede0e424 Mention fortune.el.
Dave Love <fx@gnu.org>
parents: 25853
diff changeset
4771 *** fortune.el uses the fortune program to create mail/news signatures.
62b8ede0e424 Mention fortune.el.
Dave Love <fx@gnu.org>
parents: 25853
diff changeset
4772
35163
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4773 *** whitespace.el is a package for warning about and cleaning bogus
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4774 whitespace in a file.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4775
25992
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4776 *** PostScript mode (ps-mode) is a new major mode for editing PostScript
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4777 files. It offers: interaction with a PostScript interpreter, including
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4778 (very basic) error handling; fontification, easily customizable for
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4779 interpreter messages; auto-indentation; insertion of EPSF templates and
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4780 often used code snippets; viewing of BoundingBox; commenting out /
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4781 uncommenting regions; conversion of 8bit characters to PostScript octal
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4782 codes. All functionality is accessible through a menu.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4783
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4784 *** delim-col helps to prettify columns in a text region or rectangle.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4785
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4786 Here is an example of columns:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4787
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4788 horse apple bus
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4789 dog pineapple car EXTRA
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4790 porcupine strawberry airplane
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4791
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4792 Doing the following settings:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4793
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4794 (setq delimit-columns-str-before "[ ")
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4795 (setq delimit-columns-str-after " ]")
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4796 (setq delimit-columns-str-separator ", ")
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4797 (setq delimit-columns-separator "\t")
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4798
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4799
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4800 Selecting the lines above and typing:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4801
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4802 M-x delimit-columns-region
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4803
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4804 It results:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4805
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4806 [ horse , apple , bus , ]
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4807 [ dog , pineapple , car , EXTRA ]
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4808 [ porcupine, strawberry, airplane, ]
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4809
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4810 delim-col has the following options:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4811
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4812 delimit-columns-str-before Specify a string to be inserted
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4813 before all columns.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4814
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4815 delimit-columns-str-separator Specify a string to be inserted
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4816 between each column.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4817
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4818 delimit-columns-str-after Specify a string to be inserted
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4819 after all columns.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4820
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4821 delimit-columns-separator Specify a regexp which separates
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4822 each column.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4823
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4824 delim-col has the following commands:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4825
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4826 delimit-columns-region Prettify all columns in a text region.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4827 delimit-columns-rectangle Prettify all columns in a text rectangle.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4828
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
4829 *** Recentf mode maintains a menu for visiting files that were
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
4830 operated on recently. User option recentf-menu-filter specifies a
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
4831 menu filter function to change the menu appearance. For example, the
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
4832 recent file list can be displayed:
30319
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4833
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4834 - organized by major modes, directories or user defined rules.
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
4835 - sorted by file paths, file names, ascending or descending.
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
4836 - showing paths relative to the current default-directory
30319
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4837
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4838 The `recentf-filter-changer' menu filter function allows to
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4839 dynamically change the menu appearance.
26030
c5e8559a53cb Add description of recentf.
Gerd Moellmann <gerd@gnu.org>
parents: 26016
diff changeset
4840
26149
0a342d5afcc2 elide-head.el
Dave Love <fx@gnu.org>
parents: 26144
diff changeset
4841 *** elide-head.el provides a mechanism for eliding boilerplate header
0a342d5afcc2 elide-head.el
Dave Love <fx@gnu.org>
parents: 26144
diff changeset
4842 text.
0a342d5afcc2 elide-head.el
Dave Love <fx@gnu.org>
parents: 26144
diff changeset
4843
26924
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4844 *** footnote.el provides `footnote-mode', a minor mode supporting use
26786
d30b640777b8 footnote.el
Dave Love <fx@gnu.org>
parents: 26768
diff changeset
4845 of footnotes. It is intended for use with Message mode, but isn't
d30b640777b8 footnote.el
Dave Love <fx@gnu.org>
parents: 26768
diff changeset
4846 specific to Message mode.
d30b640777b8 footnote.el
Dave Love <fx@gnu.org>
parents: 26768
diff changeset
4847
26924
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4848 *** diff-mode.el provides `diff-mode', a major mode for
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4849 viewing/editing context diffs (patches). It is selected for files
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4850 with extension `.diff', `.diffs', `.patch' and `.rej'.
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4851
27714
22a581e00fe4 Mention some new packages, extra configure options.
Dave Love <fx@gnu.org>
parents: 27693
diff changeset
4852 *** EUDC, the Emacs Unified Directory Client, provides a common user
22a581e00fe4 Mention some new packages, extra configure options.
Dave Love <fx@gnu.org>
parents: 27693
diff changeset
4853 interface to access directory servers using different directory
22a581e00fe4 Mention some new packages, extra configure options.
Dave Love <fx@gnu.org>
parents: 27693
diff changeset
4854 protocols. It has a separate manual.
22a581e00fe4 Mention some new packages, extra configure options.
Dave Love <fx@gnu.org>
parents: 27693
diff changeset
4855
28132
2a26c31d59c5 replace-rectangle, autoconf.el
Dave Love <fx@gnu.org>
parents: 28098
diff changeset
4856 *** autoconf.el provides a major mode for editing configure.in files
2a26c31d59c5 replace-rectangle, autoconf.el
Dave Love <fx@gnu.org>
parents: 28098
diff changeset
4857 for Autoconf, selected automatically.
2a26c31d59c5 replace-rectangle, autoconf.el
Dave Love <fx@gnu.org>
parents: 28098
diff changeset
4858
28710
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
4859 *** windmove.el provides moving between windows.
28855
1be9a502caca Cleaned some left over bogus conflict markers.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 28854
diff changeset
4860
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
4861 *** crm.el provides a facility to read multiple strings from the
28710
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
4862 minibuffer with completion.
27714
22a581e00fe4 Mention some new packages, extra configure options.
Dave Love <fx@gnu.org>
parents: 27693
diff changeset
4863
28883
e43afc57ee04 todo-mode
Dave Love <fx@gnu.org>
parents: 28879
diff changeset
4864 *** todo-mode.el provides management of TODO lists and integration
e43afc57ee04 todo-mode
Dave Love <fx@gnu.org>
parents: 28879
diff changeset
4865 with the diary features.
e43afc57ee04 todo-mode
Dave Love <fx@gnu.org>
parents: 28879
diff changeset
4866
28912
717c04b51e93 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 28883
diff changeset
4867 *** autoarg.el provides a feature reported from Twenex Emacs whereby
717c04b51e93 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 28883
diff changeset
4868 numeric keys supply prefix args rather than self inserting.
717c04b51e93 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 28883
diff changeset
4869
29814
daf26bf9d779 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29752
diff changeset
4870 *** The function `turn-off-auto-fill' unconditionally turns off Auto
daf26bf9d779 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29752
diff changeset
4871 Fill mode.
daf26bf9d779 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29752
diff changeset
4872
33020
e21feeab77fb See ChangeLog
John Wiegley <johnw@newartisans.com>
parents: 33007
diff changeset
4873 *** pcomplete.el is a library that provides programmable completion
e21feeab77fb See ChangeLog
John Wiegley <johnw@newartisans.com>
parents: 33007
diff changeset
4874 facilities for Emacs, similar to what zsh and tcsh offer. The main
e21feeab77fb See ChangeLog
John Wiegley <johnw@newartisans.com>
parents: 33007
diff changeset
4875 difference is that completion functions are written in Lisp, meaning
e21feeab77fb See ChangeLog
John Wiegley <johnw@newartisans.com>
parents: 33007
diff changeset
4876 they can be profiled, debugged, etc.
32465
355b97042e28 non-ascii character ranges
Dave Love <fx@gnu.org>
parents: 32448
diff changeset
4877
38379
dd827746979d Mention antlr-mode.
Eli Zaretskii <eliz@gnu.org>
parents: 38307
diff changeset
4878 *** antlr-mode is a new major mode for editing ANTLR grammar files.
dd827746979d Mention antlr-mode.
Eli Zaretskii <eliz@gnu.org>
parents: 38307
diff changeset
4879 It is automatically turned on for files whose names have the extension
dd827746979d Mention antlr-mode.
Eli Zaretskii <eliz@gnu.org>
parents: 38307
diff changeset
4880 `.g'.
dd827746979d Mention antlr-mode.
Eli Zaretskii <eliz@gnu.org>
parents: 38307
diff changeset
4881
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4882 ** Changes in sort.el
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4883
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4884 The function sort-numeric-fields interprets numbers starting with `0'
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4885 as octal and numbers starting with `0x' or `0X' as hexadecimal. The
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4886 new user-option sort-numeric-base can be used to specify a default
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4887 numeric base.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4888
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4889 ** Changes to Ange-ftp
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4890
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4891 *** Ange-ftp allows you to specify of a port number in remote file
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4892 names cleanly. It is appended to the host name, separated by a hash
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4893 sign, e.g. `/foo@bar.org#666:mumble'. (This syntax comes from EFS.)
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4894
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4895 *** If the new user-option `ange-ftp-try-passive-mode' is set, passive
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4896 ftp mode will be used if the ftp client supports that.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4897
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4898 *** Ange-ftp handles the output of the w32-style clients which
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4899 output ^M at the end of lines.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4901 ** The recommended way of using Iswitchb is via the new global minor
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4902 mode `iswitchb-mode'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4903
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4904 ** Just loading the msb package doesn't switch on Msb mode anymore.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4905 If you have `(require 'msb)' in your .emacs, please replace it with
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4906 `(msb-mode 1)'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4907
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4908 ** Flyspell mode has various new options. See the `flyspell' Custom
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4909 group.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4910
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4911 ** The user option `backward-delete-char-untabify-method' controls the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4912 behavior of `backward-delete-char-untabify'. The following values
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4913 are recognized:
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4914
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4915 `untabify' -- turn a tab to many spaces, then delete one space;
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4916 `hungry' -- delete all whitespace, both tabs and spaces;
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4917 `all' -- delete all whitespace, including tabs, spaces and newlines;
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4918 nil -- just delete one character.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4919
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4920 Default value is `untabify'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4921
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4922 [This change was made in Emacs 20.3 but not mentioned then.]
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4923
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4924 ** In Cperl mode `cperl-invalid-face' should now be a normal face
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4925 symbol, not double-quoted.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4926
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4927 ** Some packages are declared obsolete, to be removed in a future
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4928 version. They are: auto-show, c-mode, hilit19, hscroll, ooutline,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4929 profile, rnews, rnewspost, and sc. Their implementations have been
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4930 moved to lisp/obsolete.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4931
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4932 ** auto-compression mode is no longer enabled just by loading jka-compr.el.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4933 To control it, set `auto-compression-mode' via Custom or use the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4934 `auto-compression-mode' command.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4935
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4936 ** `browse-url-gnome-moz' is a new option for
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4937 `browse-url-browser-function', invoking Mozilla in GNOME, and
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4938 `browse-url-kde' can be chosen for invoking the KDE browser.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4939
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4940 ** The user-option `browse-url-new-window-p' has been renamed to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4941 `browse-url-new-window-flag'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4942
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4943 ** The functions `keep-lines', `flush-lines' and `how-many' now
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4944 operate on the active region in Transient Mark mode.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4945
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4946 ** `gnus-user-agent' is a new possibility for `mail-user-agent'. It
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4947 is like `message-user-agent', but with all the Gnus paraphernalia.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4948
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4949 ** The Strokes package has been updated. If your Emacs has XPM
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4950 support, you can use it for pictographic editing. In Strokes mode,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4951 use C-mouse-2 to compose a complex stoke and insert it into the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4952 buffer. You can encode or decode a strokes buffer with new commands
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4953 M-x strokes-encode-buffer and M-x strokes-decode-buffer. There is a
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4954 new command M-x strokes-list-strokes.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4955
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4956 ** Hexl contains a new command `hexl-insert-hex-string' which inserts
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4957 a string of hexadecimal numbers read from the mini-buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4958
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4959 ** Hexl mode allows to insert non-ASCII characters.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4960
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4961 The non-ASCII characters are encoded using the same encoding as the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4962 file you are visiting in Hexl mode.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4963
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4964 ** Shell script mode changes.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4965
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4966 Shell script mode (sh-script) can now indent scripts for shells
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4967 derived from sh and rc. The indentation style is customizable, and
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4968 sh-script can attempt to "learn" the current buffer's style.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4969
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4970 ** Etags changes.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4971
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4972 *** In DOS, etags looks for file.cgz if it cannot find file.c.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4973
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4974 *** New option --ignore-case-regex is an alternative to --regex. It is now
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4975 possible to bind a regexp to a language, by prepending the regexp with
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4976 {lang}, where lang is one of the languages that `etags --help' prints out.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4977 This feature is useful especially for regex files, where each line contains
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4978 a regular expression. The manual contains details.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4979
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4980 *** In C and derived languages, etags creates tags for function
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4981 declarations when given the --declarations option.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4982
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4983 *** In C++, tags are created for "operator". The tags have the form
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4984 "operator+", without spaces between the keyword and the operator.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4985
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4986 *** You shouldn't generally need any more the -C or -c++ option: etags
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4987 automatically switches to C++ parsing when it meets the `class' or
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4988 `template' keywords.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4989
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4990 *** Etags now is able to delve at arbitrary deeps into nested structures in
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4991 C-like languages. Previously, it was limited to one or two brace levels.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4992
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4993 *** New language Ada: tags are functions, procedures, packages, tasks, and
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4994 types.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4995
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4996 *** In Fortran, `procedure' is not tagged.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4997
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4998 *** In Java, tags are created for "interface".
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4999
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5000 *** In Lisp, "(defstruct (foo", "(defun (operator" and similar constructs
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5001 are now tagged.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5002
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5003 *** In makefiles, tags the targets.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5004
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5005 *** In Perl, the --globals option tags global variables. my and local
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5006 variables are tagged.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5007
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5008 *** New language Python: def and class at the beginning of a line are tags.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5009
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5010 *** .ss files are Scheme files, .pdb is Postscript with C syntax, .psw is
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5011 for PSWrap.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5012
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5013 ** Changes in etags.el
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5014
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5015 *** The new user-option tags-case-fold-search can be used to make
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5016 tags operations case-sensitive or case-insensitive. The default
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5017 is to use the same setting as case-fold-search.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5018
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5019 *** You can display additional output with M-x tags-apropos by setting
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5020 the new variable tags-apropos-additional-actions.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5021
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5022 If non-nil, the variable's value should be a list of triples (TITLE
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5023 FUNCTION TO-SEARCH). For each triple, M-x tags-apropos processes
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5024 TO-SEARCH and lists tags from it. TO-SEARCH should be an alist,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5025 obarray, or symbol. If it is a symbol, the symbol's value is used.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5026
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5027 TITLE is a string to use to label the list of tags from TO-SEARCH.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5028
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5029 FUNCTION is a function to call when an entry is selected in the Tags
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5030 List buffer. It is called with one argument, the selected symbol.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5031
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5032 A useful example value for this variable might be something like:
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5033
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5034 '(("Emacs Lisp" Info-goto-emacs-command-node obarray)
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5035 ("Common Lisp" common-lisp-hyperspec common-lisp-hyperspec-obarray)
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5036 ("SCWM" scwm-documentation scwm-obarray))
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5037
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5038 *** The face tags-tag-face can be used to customize the appearance
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5039 of tags in the output of M-x tags-apropos.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5040
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5041 *** Setting tags-apropos-verbose to a non-nil value displays the
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5042 names of tags files in the *Tags List* buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5043
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5044 *** You can now search for tags that are part of the filename itself.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5045 If you have tagged the files topfile.c subdir/subfile.c
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5046 /tmp/tempfile.c, you can now search for tags "topfile.c", "subfile.c",
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5047 "dir/sub", "tempfile", "tempfile.c". If the tag matches the file name,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5048 point will go to the beginning of the file.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5049
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5050 *** Compressed files are now transparently supported if
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5051 auto-compression-mode is active. You can tag (with Etags) and search
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5052 (with find-tag) both compressed and uncompressed files.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5053
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5054 *** Tags commands like M-x tags-search no longer change point
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5055 in buffers where no match is found. In buffers where a match is
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5056 found, the original value of point is pushed on the marker ring.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5057
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5058 ** Fortran mode has a new command `fortran-strip-sequence-nos' to
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5059 remove text past column 72. The syntax class of `\' in Fortran is now
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5060 appropriate for C-style escape sequences in strings.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5061
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5062 ** SGML mode's default `sgml-validate-command' is now `nsgmls'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5063
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5064 ** A new command `view-emacs-problems' (C-h P) displays the PROBLEMS file.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5065
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5066 ** The Dabbrev package has a new user-option `dabbrev-ignored-regexps'
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5067 containing a list of regular expressions. Buffers matching a regular
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5068 expression from that list, are not checked.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5069
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5070 ** Emacs can now figure out modification times of remote files.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5071 When you do C-x C-f /user@host:/path/file RET and edit the file,
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5072 and someone else modifies the file, you will be prompted to revert
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5073 the buffer, just like for the local files.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5074
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5075 ** The buffer menu (C-x C-b) no longer lists the *Buffer List* buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5076
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5077 ** When invoked with a prefix argument, the command `list-abbrevs' now
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5078 displays local abbrevs, only.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5079
33290
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5080 ** Refill minor mode provides preliminary support for keeping
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5081 paragraphs filled as you modify them.
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5082
38605
f99d2e5ee830 Add description of double-click-fuzz.
Gerd Moellmann <gerd@gnu.org>
parents: 38590
diff changeset
5083 ** The variable `double-click-fuzz' specifies how much the mouse
f99d2e5ee830 Add description of double-click-fuzz.
Gerd Moellmann <gerd@gnu.org>
parents: 38590
diff changeset
5084 may be moved between clicks that are recognized as a pair. Its value
f99d2e5ee830 Add description of double-click-fuzz.
Gerd Moellmann <gerd@gnu.org>
parents: 38590
diff changeset
5085 is measured in pixels.
f99d2e5ee830 Add description of double-click-fuzz.
Gerd Moellmann <gerd@gnu.org>
parents: 38590
diff changeset
5086
33290
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5087 ** The new global minor mode `auto-image-file-mode' allows image files
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5088 to be visited as images.
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5089
39270
daf37eb76fde grep-command and grep-find-command user options.
Gerd Moellmann <gerd@gnu.org>
parents: 39255
diff changeset
5090 ** Two new user-options `grep-command' and `grep-find-command'
daf37eb76fde grep-command and grep-find-command user options.
Gerd Moellmann <gerd@gnu.org>
parents: 39255
diff changeset
5091 were added to compile.el.
daf37eb76fde grep-command and grep-find-command user options.
Gerd Moellmann <gerd@gnu.org>
parents: 39255
diff changeset
5092
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
5093 ** Withdrawn packages
Dave Love <fx@gnu.org>
parents:
diff changeset
5094
Dave Love <fx@gnu.org>
parents:
diff changeset
5095 *** mldrag.el has been removed. mouse.el provides the same
Dave Love <fx@gnu.org>
parents:
diff changeset
5096 functionality with aliases for the mldrag functions.
26133
5eb182b0c724 eval-reg removed.
Dave Love <fx@gnu.org>
parents: 26107
diff changeset
5097
27369
b7162d2b3d0b ph.el, user-init-file.
Dave Love <fx@gnu.org>
parents: 27361
diff changeset
5098 *** eval-reg.el has been obsoleted by changes to edebug.el and removed.
b7162d2b3d0b ph.el, user-init-file.
Dave Love <fx@gnu.org>
parents: 27361
diff changeset
5099
b7162d2b3d0b ph.el, user-init-file.
Dave Love <fx@gnu.org>
parents: 27361
diff changeset
5100 *** ph.el has been obsoleted by EUDC and removed.
29102
ba9cfbfc601e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28955
diff changeset
5101
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
5102
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5103 * Incompatible Lisp changes
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5104
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5105 There are a few Lisp changes which are not backwards-compatible and
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5106 may require changes to existing code. Here is a list for reference.
35421
adba111543f5 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35420
diff changeset
5107 See the sections below for details.
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5108
35297
e268b7b500f0 Changes for makefile support in etags.
Francesco Potortì <pot@gnu.org>
parents: 35278
diff changeset
5109 ** Since `format' preserves text properties, the idiom
35847
83b8f5ad1f97 Several typos fixed. From Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35784
diff changeset
5110 `(format "%s" foo)' no longer works to copy and remove properties.
41091
418fff19f92e Minor clarification.
Richard M. Stallman <rms@gnu.org>
parents: 41055
diff changeset
5111 Use `copy-sequence' to copy the string, then use `set-text-properties'
418fff19f92e Minor clarification.
Richard M. Stallman <rms@gnu.org>
parents: 41055
diff changeset
5112 to remove the properties of the copy.
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5113
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5114 ** Since the `keymap' text property now has significance, some code
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5115 which uses both `local-map' and `keymap' properties (for portability)
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5116 may, for instance, give rise to duplicate menus when the keymaps from
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5117 these properties are active.
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5118
34029
d80bd382fa99 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34017
diff changeset
5119 ** The change in the treatment of non-ASCII characters in search
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5120 ranges may affect some code.
34017
8cf5499796cc *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34001
diff changeset
5121
8cf5499796cc *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34001
diff changeset
5122 ** A non-nil value for the LOCAL arg of add-hook makes the hook
8cf5499796cc *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34001
diff changeset
5123 buffer-local even if `make-local-hook' hasn't been called, which might
8cf5499796cc *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34001
diff changeset
5124 make a difference to some code.
8cf5499796cc *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34001
diff changeset
5125
34029
d80bd382fa99 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34017
diff changeset
5126 ** The new treatment of the minibuffer prompt might affect code which
d80bd382fa99 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34017
diff changeset
5127 operates on the minibuffer.
d80bd382fa99 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34017
diff changeset
5128
34087
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5129 ** The new character sets `eight-bit-control' and `eight-bit-graphic'
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5130 cause `no-conversion' and `emacs-mule-unix' coding systems to produce
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5131 different results when reading files with non-ASCII characters
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5132 (previously, both coding systems would produce the same results).
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5133 Specifically, `no-conversion' interprets each 8-bit byte as a separate
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5134 character. This makes `no-conversion' inappropriate for reading
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5135 multibyte text, e.g. buffers written to disk in their internal MULE
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5136 encoding (auto-saving does that, for example). If a Lisp program
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5137 reads such files with `no-conversion', each byte of the multibyte
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5138 sequence, including the MULE leading codes such as \201, is treated as
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5139 a separate character, which prevents them from being interpreted in
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5140 the buffer as multibyte characters.
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5141
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5142 Therefore, Lisp programs that read files which contain the internal
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5143 MULE encoding should use `emacs-mule-unix'. `no-conversion' is only
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5144 appropriate for reading truly binary files.
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5145
34617
1759a3374578 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34564
diff changeset
5146 ** Code that relies on the obsolete `before-change-function' and
35242
910222f6a03c Tell them to use before-change-functions and after-change-functions
Eli Zaretskii <eliz@gnu.org>
parents: 35223
diff changeset
5147 `after-change-function' to detect buffer changes will now fail. Use
910222f6a03c Tell them to use before-change-functions and after-change-functions
Eli Zaretskii <eliz@gnu.org>
parents: 35223
diff changeset
5148 `before-change-functions' and `after-change-functions' instead.
34617
1759a3374578 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34564
diff changeset
5149
1759a3374578 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34564
diff changeset
5150 ** Code that uses `concat' with integer args now gets an error, as
44087
c8f919cc34e2 Clarify that mapconcat will also throw an error when it invokes
Eli Zaretskii <eliz@gnu.org>
parents: 44072
diff changeset
5151 long promised. So does any code that uses derivatives of `concat',
c8f919cc34e2 Clarify that mapconcat will also throw an error when it invokes
Eli Zaretskii <eliz@gnu.org>
parents: 44072
diff changeset
5152 such as `mapconcat'.
34617
1759a3374578 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34564
diff changeset
5153
38649
021a0445b5f6 Mention the change in base64-decode-string whereby the result is
Eli Zaretskii <eliz@gnu.org>
parents: 38605
diff changeset
5154 ** The function base64-decode-string now always returns a unibyte
021a0445b5f6 Mention the change in base64-decode-string whereby the result is
Eli Zaretskii <eliz@gnu.org>
parents: 38605
diff changeset
5155 string.
021a0445b5f6 Mention the change in base64-decode-string whereby the result is
Eli Zaretskii <eliz@gnu.org>
parents: 38605
diff changeset
5156
36244
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5157 ** Not a Lisp incompatibility as such but, with the introduction of
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5158 extra private charsets, there is now only one slot free for a new
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5159 dimension-2 private charset. User code which tries to add more than
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5160 one extra will fail unless you rebuild Emacs with some standard
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5161 charset(s) removed; that is probably inadvisable because it changes
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5162 the emacs-mule encoding. Also, files stored in the emacs-mule
36470
67c8e0a89b2d *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36428
diff changeset
5163 encoding using Emacs 20 with additional private charsets defined will
67c8e0a89b2d *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36428
diff changeset
5164 probably not be read correctly by Emacs 21.
36113
1a29f6d22f6e Mention potential incompatibilities due to new dimension-2 charsets.
Eli Zaretskii <eliz@gnu.org>
parents: 36039
diff changeset
5165
37077
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5166 ** The variable `directory-sep-char' is slated for removal.
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5167 Not really a change (yet), but a projected one that you should be
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5168 aware of: The variable `directory-sep-char' is deprecated, and should
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5169 not be used. It was always ignored on GNU/Linux and Unix systems and
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5170 on MS-DOS, but the MS-Windows port tried to support it by adapting the
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5171 behavior of certain primitives to the value of this variable. It
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5172 turned out that such support cannot be reliable, so it was decided to
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5173 remove this variable in the near future. Lisp programs are well
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5174 advised not to set it to anything but '/', because any different value
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5175 will not have any effect when support for this variable is removed.
37064
428092eb22d4 Document that directory-sep-char is deprecated.
Eli Zaretskii <eliz@gnu.org>
parents: 37061
diff changeset
5176
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
5177
29102
ba9cfbfc601e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28955
diff changeset
5178 * Lisp changes made after edition 2.6 of the Emacs Lisp Manual,
ba9cfbfc601e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28955
diff changeset
5179 (Display-related features are described in a page of their own below.)
ba9cfbfc601e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28955
diff changeset
5180
39089
64e39b9789cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39075
diff changeset
5181 ** Function assq-delete-all replaces function assoc-delete-all.
64e39b9789cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39075
diff changeset
5182
41356
39332ec6c47d Fix typos.
Eli Zaretskii <eliz@gnu.org>
parents: 41355
diff changeset
5183 ** The new function animate-string, from lisp/play/animate.el
38527
71c6489a2aff *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38471
diff changeset
5184 allows the animated display of strings.
71c6489a2aff *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38471
diff changeset
5185
37061
e5b70de7b794 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 37009
diff changeset
5186 ** The new function `interactive-form' can be used to obtain the
e5b70de7b794 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 37009
diff changeset
5187 interactive form of a function.
e5b70de7b794 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 37009
diff changeset
5188
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5189 ** The keyword :set-after in defcustom allows to specify dependencies
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5190 between custom options. Example:
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5191
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5192 (defcustom default-input-method nil
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5193 "*Default input method for multilingual text (a string).
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5194 This is the input method activated automatically by the command
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5195 `toggle-input-method' (\\[toggle-input-method])."
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5196 :group 'mule
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5197 :type '(choice (const nil) string)
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5198 :set-after '(current-language-environment))
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5199
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5200 This specifies that default-input-method should be set after
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5201 current-language-environment even if default-input-method appears
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5202 first in a custom-set-variables statement.
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5203
35862
9604ca6b3728 More typos from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35847
diff changeset
5204 ** The new hook `kbd-macro-termination-hook' is run at the end of
35125
95799f3353e7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35090
diff changeset
5205 function execute-kbd-macro. Functions on this hook are called with no
95799f3353e7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35090
diff changeset
5206 args. The hook is run independent of how the macro was terminated
95799f3353e7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35090
diff changeset
5207 (signal or normal termination).
95799f3353e7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35090
diff changeset
5208
35090
b876bd6bde9e butlast, nbutlast.
Dave Love <fx@gnu.org>
parents: 35064
diff changeset
5209 ** Functions `butlast' and `nbutlast' for removing trailing elements
b876bd6bde9e butlast, nbutlast.
Dave Love <fx@gnu.org>
parents: 35064
diff changeset
5210 from a list are now available without requiring the CL package.
b876bd6bde9e butlast, nbutlast.
Dave Love <fx@gnu.org>
parents: 35064
diff changeset
5211
34271
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
5212 ** The new user-option `even-window-heights' can be set to nil
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
5213 to prevent `display-buffer' from evening out window heights.
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
5214
33373
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
5215 ** The user-option `face-font-registry-alternatives' specifies
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
5216 alternative font registry names to try when looking for a font.
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
5217
34054
da7a782777bc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34029
diff changeset
5218 ** Function `md5' calculates the MD5 "message digest"/"checksum".
33364
Dave Love <fx@gnu.org>
parents: 33315
diff changeset
5219
32913
8a79f057b2a5 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 32865
diff changeset
5220 ** Function `delete-frame' runs `delete-frame-hook' before actually
8a79f057b2a5 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 32865
diff changeset
5221 deleting the frame. The hook is called with one arg, the frame
8a79f057b2a5 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 32865
diff changeset
5222 being deleted.
8a79f057b2a5 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 32865
diff changeset
5223
32845
e92097fd9144 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 32751
diff changeset
5224 ** `add-hook' now makes the hook local if called with a non-nil LOCAL arg.
e92097fd9144 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 32751
diff changeset
5225
32466
90886fd49673 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 32465
diff changeset
5226 ** The treatment of non-ASCII characters in search ranges has changed.
32465
355b97042e28 non-ascii character ranges
Dave Love <fx@gnu.org>
parents: 32448
diff changeset
5227 If a range in a regular expression or the arg of
355b97042e28 non-ascii character ranges
Dave Love <fx@gnu.org>
parents: 32448
diff changeset
5228 skip-chars-forward/backward starts with a unibyte character C and ends
355b97042e28 non-ascii character ranges
Dave Love <fx@gnu.org>
parents: 32448
diff changeset
5229 with a multibyte character C2, the range is divided into two: one is
355b97042e28 non-ascii character ranges
Dave Love <fx@gnu.org>
parents: 32448
diff changeset
5230 C..?\377, the other is C1..C2, where C1 is the first character of C2's
355b97042e28 non-ascii character ranges
Dave Love <fx@gnu.org>
parents: 32448
diff changeset
5231 charset.
355b97042e28 non-ascii character ranges
Dave Love <fx@gnu.org>
parents: 32448
diff changeset
5232
32259
cae38860a9ee Add entry for `display-message-or-buffer'.
Miles Bader <miles@gnu.org>
parents: 32257
diff changeset
5233 ** The new function `display-message-or-buffer' displays a message in
cae38860a9ee Add entry for `display-message-or-buffer'.
Miles Bader <miles@gnu.org>
parents: 32257
diff changeset
5234 the echo area or pops up a buffer, depending on the length of the
cae38860a9ee Add entry for `display-message-or-buffer'.
Miles Bader <miles@gnu.org>
parents: 32257
diff changeset
5235 message.
cae38860a9ee Add entry for `display-message-or-buffer'.
Miles Bader <miles@gnu.org>
parents: 32257
diff changeset
5236
32050
2a3bcf8d9877 Add entries for `auto-image-file-mode' and `with-auto-compression-mode'.
Miles Bader <miles@gnu.org>
parents: 32037
diff changeset
5237 ** The new macro `with-auto-compression-mode' allows evaluating an
2a3bcf8d9877 Add entries for `auto-image-file-mode' and `with-auto-compression-mode'.
Miles Bader <miles@gnu.org>
parents: 32037
diff changeset
5238 expression with auto-compression-mode enabled.
2a3bcf8d9877 Add entries for `auto-image-file-mode' and `with-auto-compression-mode'.
Miles Bader <miles@gnu.org>
parents: 32037
diff changeset
5239
31636
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
5240 ** In image specifications, `:heuristic-mask' has been replaced
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
5241 with the more general `:mask' property.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
5242
35364
19c93f3ebdce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35326
diff changeset
5243 ** Image specifications accept more `:conversion's.
31728
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
5244
31561
b441ceb31859 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31388
diff changeset
5245 ** A `?' can be used in a symbol name without escaping it with a
b441ceb31859 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31388
diff changeset
5246 backslash.
b441ceb31859 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31388
diff changeset
5247
31007
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5248 ** Reading from the mini-buffer now reads from standard input if Emacs
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5249 is running in batch mode. For example,
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5250
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5251 (message "%s" (read t))
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5252
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5253 will read a Lisp expression from standard input and print the result
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5254 to standard output.
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5255
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5256 ** The argument of `down-list', `backward-up-list', `up-list',
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5257 `kill-sexp', `backward-kill-sexp' and `mark-sexp' is now optional.
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5258
30564
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5259 ** If `display-buffer-reuse-frames' is set, function `display-buffer'
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5260 will raise frames displaying a buffer, instead of creating a new
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5261 frame or window.
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5262
30516
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5263 ** Two new functions for removing elements from lists/sequences
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5264 were added
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5265
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5266 - Function: remove ELT SEQ
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5267
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
5268 Return a copy of SEQ with all occurrences of ELT removed. SEQ must be
30516
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5269 a list, vector, or string. The comparison is done with `equal'.
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5270
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5271 - Function: remq ELT LIST
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5272
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
5273 Return a copy of LIST with all occurrences of ELT removed. The
30516
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5274 comparison is done with `eq'.
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5275
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5276 ** The function `delete' now also works with vectors and strings.
30511
2ac427297d38 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30502
diff changeset
5277
30502
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
5278 ** The meaning of the `:weakness WEAK' argument of make-hash-table
39075
8722aa0ae475 Mark (almost) all entries either --- or +++.
Eli Zaretskii <eliz@gnu.org>
parents: 39031
diff changeset
5279 has been changed: WEAK can now have new values `key-or-value' and
39441
cecec2db4346 Fix typo.
Gerd Moellmann <gerd@gnu.org>
parents: 39300
diff changeset
5280 `key-and-value', in addition the `nil', `key', `value', and `t'.
30502
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
5281
30357
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
5282 ** Function `aset' stores any multibyte character in any string
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
5283 without signaling "Attempt to change char length of a string". It may
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
5284 convert a unibyte string to multibyte if necessary.
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
5285
30219
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
5286 ** The value of the `help-echo' text property is called as a function
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
5287 or evaluated, if it is not a string already, to obtain a help string.
30203
34881d6fc1f6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30158
diff changeset
5288
30158
84d54b049d67 make-obsolete, plist-member changes
Dave Love <fx@gnu.org>
parents: 30155
diff changeset
5289 ** Function `make-obsolete' now has an optional arg to say when the
84d54b049d67 make-obsolete, plist-member changes
Dave Love <fx@gnu.org>
parents: 30155
diff changeset
5290 function was declared obsolete.
84d54b049d67 make-obsolete, plist-member changes
Dave Love <fx@gnu.org>
parents: 30155
diff changeset
5291
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5292 ** Function `plist-member' is renamed from `widget-plist-member' (which is
30158
84d54b049d67 make-obsolete, plist-member changes
Dave Love <fx@gnu.org>
parents: 30155
diff changeset
5293 retained as an alias).
84d54b049d67 make-obsolete, plist-member changes
Dave Love <fx@gnu.org>
parents: 30155
diff changeset
5294
30068
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5295 ** Easy-menu's :filter now works as in XEmacs.
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5296 It takes the unconverted (i.e. XEmacs) form of the menu and the result
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5297 is automatically converted to Emacs' form.
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5298
30038
9a141c819d48 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30012
diff changeset
5299 ** The new function `window-list' has been defined
9a141c819d48 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30012
diff changeset
5300
33620
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5301 - Function: window-list &optional FRAME WINDOW MINIBUF
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5302
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5303 Return a list of windows on FRAME, starting with WINDOW. FRAME nil or
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5304 omitted means use the selected frame. WINDOW nil or omitted means use
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5305 the selected window. MINIBUF t means include the minibuffer window,
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5306 even if it isn't active. MINIBUF nil or omitted means include the
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5307 minibuffer window only if it's active. MINIBUF neither nil nor t
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5308 means never include the minibuffer window.
30038
9a141c819d48 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30012
diff changeset
5309
39179
d0b29a3ee609 some-window -> get-window-with-predicate.
Gerd Moellmann <gerd@gnu.org>
parents: 39089
diff changeset
5310 ** There's a new function `get-window-with-predicate' defined as follows
d0b29a3ee609 some-window -> get-window-with-predicate.
Gerd Moellmann <gerd@gnu.org>
parents: 39089
diff changeset
5311
d0b29a3ee609 some-window -> get-window-with-predicate.
Gerd Moellmann <gerd@gnu.org>
parents: 39089
diff changeset
5312 - Function: get-window-with-predicate PREDICATE &optional MINIBUF ALL-FRAMES DEFAULT
30006
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5313
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5314 Return a window satisfying PREDICATE.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5315
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5316 This function cycles through all visible windows using `walk-windows',
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5317 calling PREDICATE on each one. PREDICATE is called with a window as
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5318 argument. The first window for which PREDICATE returns a non-nil
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5319 value is returned. If no window satisfies PREDICATE, DEFAULT is
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5320 returned.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5321
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5322 Optional second arg MINIBUF t means count the minibuffer window even
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5323 if not active. MINIBUF nil or omitted means count the minibuffer iff
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5324 it is active. MINIBUF neither t nor nil means not to count the
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5325 minibuffer even if it is active.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5326
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5327 Several frames may share a single minibuffer; if the minibuffer
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5328 counts, all windows on all frames that share that minibuffer count
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5329 too. Therefore, if you are using a separate minibuffer frame
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5330 and the minibuffer is active and MINIBUF says it counts,
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5331 `walk-windows' includes the windows in the frame from which you
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5332 entered the minibuffer, as well as the minibuffer window.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5333
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5334 ALL-FRAMES is the optional third argument.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5335 ALL-FRAMES nil or omitted means cycle within the frames as specified above.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5336 ALL-FRAMES = `visible' means include windows on all visible frames.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5337 ALL-FRAMES = 0 means include windows on all visible and iconified frames.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5338 ALL-FRAMES = t means include windows on all frames including invisible frames.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5339 If ALL-FRAMES is a frame, it means include windows on that frame.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5340 Anything else means restrict to the selected frame.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5341
30564
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5342 ** The function `single-key-description' now encloses function key and
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5343 event names in angle brackets. When called with a second optional
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5344 argument non-nil, angle brackets won't be printed.
29657
cdef08609770 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29637
diff changeset
5345
29637
6b63e5410a0e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29633
diff changeset
5346 ** If the variable `message-truncate-lines' is bound to t around a
6b63e5410a0e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29633
diff changeset
5347 call to `message', the echo area will not be resized to display that
30290
5d592031fd61 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30278
diff changeset
5348 message; it will be truncated instead, as it was done in 20.x.
5d592031fd61 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30278
diff changeset
5349 Default value is nil.
29637
6b63e5410a0e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29633
diff changeset
5350
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5351 ** The user option `line-number-display-limit' can now be set to nil,
29633
98e1c27ffe84 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29533
diff changeset
5352 meaning no limit.
98e1c27ffe84 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29533
diff changeset
5353
38126
64a45ba0553f Document line-number-display-limit-width.
Eli Zaretskii <eliz@gnu.org>
parents: 38107
diff changeset
5354 ** The new user option `line-number-display-limit-width' controls
64a45ba0553f Document line-number-display-limit-width.
Eli Zaretskii <eliz@gnu.org>
parents: 38107
diff changeset
5355 the maximum width of lines in a buffer for which Emacs displays line
64a45ba0553f Document line-number-display-limit-width.
Eli Zaretskii <eliz@gnu.org>
parents: 38107
diff changeset
5356 numbers in the mode line. The default is 200.
64a45ba0553f Document line-number-display-limit-width.
Eli Zaretskii <eliz@gnu.org>
parents: 38107
diff changeset
5357
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5358 ** `select-safe-coding-system' now also checks the most preferred
29509
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
5359 coding-system if buffer-file-coding-system is `undecided' and
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
5360 DEFAULT-CODING-SYSTEM is not specified,
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
5361
34001
fc9ba8a24dde *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33991
diff changeset
5362 ** The function `subr-arity' provides information about the argument
fc9ba8a24dde *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33991
diff changeset
5363 list of a primitive.
29238
552f0327e586 subr-arity
Dave Love <fx@gnu.org>
parents: 29218
diff changeset
5364
33111
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
5365 ** `where-is-internal' now also accepts a list of keymaps.
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
5366
29286
c0fe782084bb keymap property.
Dave Love <fx@gnu.org>
parents: 29238
diff changeset
5367 ** The text property `keymap' specifies a key map which overrides the
c0fe782084bb keymap property.
Dave Love <fx@gnu.org>
parents: 29238
diff changeset
5368 buffer's local map and the map specified by the `local-map' property.
c0fe782084bb keymap property.
Dave Love <fx@gnu.org>
parents: 29238
diff changeset
5369 This is probably what most current uses of `local-map' want, rather
c0fe782084bb keymap property.
Dave Love <fx@gnu.org>
parents: 29238
diff changeset
5370 than replacing the local map.
c0fe782084bb keymap property.
Dave Love <fx@gnu.org>
parents: 29238
diff changeset
5371
35250
d6a8befb918c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35242
diff changeset
5372 ** The obsolete variables `before-change-function' and
d6a8befb918c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35242
diff changeset
5373 `after-change-function' are no longer acted upon and have been
d6a8befb918c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35242
diff changeset
5374 removed. Use `before-change-functions' and `after-change-functions'
d6a8befb918c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35242
diff changeset
5375 instead.
29498
4b79925ce8fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29381
diff changeset
5376
4b79925ce8fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29381
diff changeset
5377 ** The function `apropos-mode' runs the hook `apropos-mode-hook'.
4b79925ce8fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29381
diff changeset
5378
33111
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
5379 ** `concat' no longer accepts individual integer arguments,
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
5380 as promised long ago.
30339
70d759570f7a C-down-mouse-3. Move concat change.
Dave Love <fx@gnu.org>
parents: 30319
diff changeset
5381
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5382 ** The new function `float-time' returns the current time as a float.
37749
1d5371e8a974 Add entry for auto-coding-regexp-alist.
Gerd Moellmann <gerd@gnu.org>
parents: 37446
diff changeset
5383
1d5371e8a974 Add entry for auto-coding-regexp-alist.
Gerd Moellmann <gerd@gnu.org>
parents: 37446
diff changeset
5384 ** The new variable auto-coding-regexp-alist specifies coding systems
1d5371e8a974 Add entry for auto-coding-regexp-alist.
Gerd Moellmann <gerd@gnu.org>
parents: 37446
diff changeset
5385 for reading specific files, analogous to auto-coding-alist, but
1d5371e8a974 Add entry for auto-coding-regexp-alist.
Gerd Moellmann <gerd@gnu.org>
parents: 37446
diff changeset
5386 patterns are checked against file contents instead of file names.
1d5371e8a974 Add entry for auto-coding-regexp-alist.
Gerd Moellmann <gerd@gnu.org>
parents: 37446
diff changeset
5387
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
5388
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
5389 * Lisp changes in Emacs 21.1 (see following page for display-related features)
Dave Love <fx@gnu.org>
parents:
diff changeset
5390
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5391 ** The new package rx.el provides an alternative sexp notation for
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5392 regular expressions.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5393
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5394 - Function: rx-to-string SEXP
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5395
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5396 Translate SEXP into a regular expression in string notation.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5397
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5398 - Macro: rx SEXP
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5399
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5400 Translate SEXP into a regular expression in string notation.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5401
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5402 The following are valid subforms of regular expressions in sexp
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5403 notation.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5404
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5405 STRING
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5406 matches string STRING literally.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5407
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5408 CHAR
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5409 matches character CHAR literally.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5410
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5411 `not-newline'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5412 matches any character except a newline.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5413 .
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5414 `anything'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5415 matches any character
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5416
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5417 `(any SET)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5418 matches any character in SET. SET may be a character or string.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5419 Ranges of characters can be specified as `A-Z' in strings.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5420
40215
77247104a65e mention html-xhtml
Sam Steingold <sds@gnu.org>
parents: 40190
diff changeset
5421 '(in SET)'
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5422 like `any'.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5423
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5424 `(not (any SET))'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5425 matches any character not in SET
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5426
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5427 `line-start'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5428 matches the empty string, but only at the beginning of a line
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5429 in the text being matched
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5430
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5431 `line-end'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5432 is similar to `line-start' but matches only at the end of a line
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5433
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5434 `string-start'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5435 matches the empty string, but only at the beginning of the
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5436 string being matched against.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5437
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5438 `string-end'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5439 matches the empty string, but only at the end of the
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5440 string being matched against.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5441
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5442 `buffer-start'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5443 matches the empty string, but only at the beginning of the
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5444 buffer being matched against.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5445
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5446 `buffer-end'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5447 matches the empty string, but only at the end of the
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5448 buffer being matched against.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5449
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5450 `point'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5451 matches the empty string, but only at point.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5452
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5453 `word-start'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5454 matches the empty string, but only at the beginning or end of a
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5455 word.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5456
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5457 `word-end'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5458 matches the empty string, but only at the end of a word.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5459
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5460 `word-boundary'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5461 matches the empty string, but only at the beginning or end of a
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5462 word.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5463
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5464 `(not word-boundary)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5465 matches the empty string, but not at the beginning or end of a
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5466 word.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5467
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5468 `digit'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5469 matches 0 through 9.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5470
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5471 `control'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5472 matches ASCII control characters.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5473
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5474 `hex-digit'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5475 matches 0 through 9, a through f and A through F.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5476
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5477 `blank'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5478 matches space and tab only.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5479
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5480 `graphic'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5481 matches graphic characters--everything except ASCII control chars,
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5482 space, and DEL.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5483
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5484 `printing'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5485 matches printing characters--everything except ASCII control chars
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5486 and DEL.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5487
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5488 `alphanumeric'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5489 matches letters and digits. (But at present, for multibyte characters,
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5490 it matches anything that has word syntax.)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5491
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5492 `letter'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5493 matches letters. (But at present, for multibyte characters,
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5494 it matches anything that has word syntax.)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5495
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5496 `ascii'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5497 matches ASCII (unibyte) characters.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5498
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5499 `nonascii'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5500 matches non-ASCII (multibyte) characters.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5501
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5502 `lower'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5503 matches anything lower-case.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5504
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5505 `upper'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5506 matches anything upper-case.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5507
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5508 `punctuation'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5509 matches punctuation. (But at present, for multibyte characters,
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5510 it matches anything that has non-word syntax.)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5511
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5512 `space'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5513 matches anything that has whitespace syntax.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5514
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5515 `word'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5516 matches anything that has word syntax.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5518 `(syntax SYNTAX)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5519 matches a character with syntax SYNTAX. SYNTAX must be one
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5520 of the following symbols.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5521
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5522 `whitespace' (\\s- in string notation)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5523 `punctuation' (\\s.)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5524 `word' (\\sw)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5525 `symbol' (\\s_)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5526 `open-parenthesis' (\\s()
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5527 `close-parenthesis' (\\s))
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5528 `expression-prefix' (\\s')
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5529 `string-quote' (\\s\")
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5530 `paired-delimiter' (\\s$)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5531 `escape' (\\s\\)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5532 `character-quote' (\\s/)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5533 `comment-start' (\\s<)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5534 `comment-end' (\\s>)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5535
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5536 `(not (syntax SYNTAX))'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5537 matches a character that has not syntax SYNTAX.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5538
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5539 `(category CATEGORY)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5540 matches a character with category CATEGORY. CATEGORY must be
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5541 either a character to use for C, or one of the following symbols.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5542
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5543 `consonant' (\\c0 in string notation)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5544 `base-vowel' (\\c1)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5545 `upper-diacritical-mark' (\\c2)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5546 `lower-diacritical-mark' (\\c3)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5547 `tone-mark' (\\c4)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5548 `symbol' (\\c5)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5549 `digit' (\\c6)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5550 `vowel-modifying-diacritical-mark' (\\c7)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5551 `vowel-sign' (\\c8)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5552 `semivowel-lower' (\\c9)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5553 `not-at-end-of-line' (\\c<)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5554 `not-at-beginning-of-line' (\\c>)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5555 `alpha-numeric-two-byte' (\\cA)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5556 `chinse-two-byte' (\\cC)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5557 `greek-two-byte' (\\cG)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5558 `japanese-hiragana-two-byte' (\\cH)
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
5559 `indian-two-byte' (\\cI)
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5560 `japanese-katakana-two-byte' (\\cK)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5561 `korean-hangul-two-byte' (\\cN)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5562 `cyrillic-two-byte' (\\cY)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5563 `ascii' (\\ca)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5564 `arabic' (\\cb)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5565 `chinese' (\\cc)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5566 `ethiopic' (\\ce)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5567 `greek' (\\cg)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5568 `korean' (\\ch)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5569 `indian' (\\ci)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5570 `japanese' (\\cj)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5571 `japanese-katakana' (\\ck)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5572 `latin' (\\cl)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5573 `lao' (\\co)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5574 `tibetan' (\\cq)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5575 `japanese-roman' (\\cr)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5576 `thai' (\\ct)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5577 `vietnamese' (\\cv)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5578 `hebrew' (\\cw)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5579 `cyrillic' (\\cy)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5580 `can-break' (\\c|)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5581
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5582 `(not (category CATEGORY))'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5583 matches a character that has not category CATEGORY.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5584
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5585 `(and SEXP1 SEXP2 ...)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5586 matches what SEXP1 matches, followed by what SEXP2 matches, etc.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5587
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5588 `(submatch SEXP1 SEXP2 ...)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5589 like `and', but makes the match accessible with `match-end',
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5590 `match-beginning', and `match-string'.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5591
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5592 `(group SEXP1 SEXP2 ...)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5593 another name for `submatch'.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5594
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5595 `(or SEXP1 SEXP2 ...)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5596 matches anything that matches SEXP1 or SEXP2, etc. If all
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5597 args are strings, use `regexp-opt' to optimize the resulting
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5598 regular expression.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5599
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5600 `(minimal-match SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5601 produce a non-greedy regexp for SEXP. Normally, regexps matching
45901
1b38863a543b *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 45891
diff changeset
5602 zero or more occurrences of something are \"greedy\" in that they
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5603 match as much as they can, as long as the overall regexp can
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5604 still match. A non-greedy regexp matches as little as possible.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5605
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5606 `(maximal-match SEXP)'
47283
0f65e6f1d100 Fix spacing.
Juanma Barranquero <lekktu@gmail.com>
parents: 47201
diff changeset
5607 produce a greedy regexp for SEXP. This is the default.
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5608
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5609 `(zero-or-more SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5610 matches zero or more occurrences of what SEXP matches.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5611
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5612 `(0+ SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5613 like `zero-or-more'.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5614
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5615 `(* SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5616 like `zero-or-more', but always produces a greedy regexp.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5617
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5618 `(*? SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5619 like `zero-or-more', but always produces a non-greedy regexp.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5620
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5621 `(one-or-more SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5622 matches one or more occurrences of A.
40215
77247104a65e mention html-xhtml
Sam Steingold <sds@gnu.org>
parents: 40190
diff changeset
5623
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5624 `(1+ SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5625 like `one-or-more'.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5626
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5627 `(+ SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5628 like `one-or-more', but always produces a greedy regexp.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5629
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5630 `(+? SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5631 like `one-or-more', but always produces a non-greedy regexp.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5632
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5633 `(zero-or-one SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5634 matches zero or one occurrences of A.
40215
77247104a65e mention html-xhtml
Sam Steingold <sds@gnu.org>
parents: 40190
diff changeset
5635
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5636 `(optional SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5637 like `zero-or-one'.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5638
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5639 `(? SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5640 like `zero-or-one', but always produces a greedy regexp.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5641
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5642 `(?? SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5643 like `zero-or-one', but always produces a non-greedy regexp.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5644
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5645 `(repeat N SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5646 matches N occurrences of what SEXP matches.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5647
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5648 `(repeat N M SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5649 matches N to M occurrences of what SEXP matches.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5650
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5651 `(eval FORM)'
47283
0f65e6f1d100 Fix spacing.
Juanma Barranquero <lekktu@gmail.com>
parents: 47201
diff changeset
5652 evaluate FORM and insert result. If result is a string,
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5653 `regexp-quote' it.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5654
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5655 `(regexp REGEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5656 include REGEXP in string notation in the result.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5657
36811
a37eeb9f04f3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36798
diff changeset
5658 *** The features `md5' and `overlay' are now provided by default.
a37eeb9f04f3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36798
diff changeset
5659
30933
3a89352a7dab Document save-restriction fix.
Miles Bader <miles@gnu.org>
parents: 30930
diff changeset
5660 *** The special form `save-restriction' now works correctly even if the
3a89352a7dab Document save-restriction fix.
Miles Bader <miles@gnu.org>
parents: 30930
diff changeset
5661 buffer is widened inside the save-restriction and changes made outside
3a89352a7dab Document save-restriction fix.
Miles Bader <miles@gnu.org>
parents: 30930
diff changeset
5662 the original restriction. Previously, doing this would cause the saved
3a89352a7dab Document save-restriction fix.
Miles Bader <miles@gnu.org>
parents: 30930
diff changeset
5663 restriction to be restored incorrectly.
3a89352a7dab Document save-restriction fix.
Miles Bader <miles@gnu.org>
parents: 30930
diff changeset
5664
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5665 *** The functions `find-charset-region' and `find-charset-string' include
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5666 `eight-bit-control' and/or `eight-bit-graphic' in the returned list
36470
67c8e0a89b2d *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36428
diff changeset
5667 when they find 8-bit characters. Previously, they included `ascii' in a
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5668 multibyte buffer and `unknown' in a unibyte buffer.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5669
39255
2ccde3c50b3a Fix a typo.
Eli Zaretskii <eliz@gnu.org>
parents: 39232
diff changeset
5670 *** The functions `set-buffer-multibyte', `string-as-multibyte' and
39212
34e0c37a5809 string-as-{muti,uni}byte doesn't act on a buffer.
Eli Zaretskii <eliz@gnu.org>
parents: 39179
diff changeset
5671 `string-as-unibyte' change the byte sequence of a buffer or a string
34e0c37a5809 string-as-{muti,uni}byte doesn't act on a buffer.
Eli Zaretskii <eliz@gnu.org>
parents: 39179
diff changeset
5672 if it contains a character from the `eight-bit-control' character set.
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5673
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5674 *** The handling of multibyte sequences in a multibyte buffer is
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5675 changed. Previously, a byte sequence matching the pattern
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5676 [\200-\237][\240-\377]+ was interpreted as a single character
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5677 regardless of the length of the trailing bytes [\240-\377]+. Thus, if
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5678 the sequence was longer than what the leading byte indicated, the
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5679 extra trailing bytes were ignored by Lisp functions. Now such extra
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5680 bytes are independent 8-bit characters belonging to the charset
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5681 eight-bit-graphic.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5682
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5683 ** Fontsets are now implemented using char-tables.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5684
35847
83b8f5ad1f97 Several typos fixed. From Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35784
diff changeset
5685 A fontset can now be specified for each independent character, for
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5686 a group of characters or for a character set rather than just for a
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5687 character set as previously.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5688
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5689 *** The arguments of the function `set-fontset-font' are changed.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5690 They are NAME, CHARACTER, FONTNAME, and optional FRAME. The function
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5691 modifies fontset NAME to use FONTNAME for CHARACTER.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5692
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5693 CHARACTER may be a cons (FROM . TO), where FROM and TO are non-generic
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5694 characters. In that case FONTNAME is used for all characters in the
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5695 range FROM and TO (inclusive). CHARACTER may be a charset. In that
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5696 case FONTNAME is used for all character in the charset.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5697
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5698 FONTNAME may be a cons (FAMILY . REGISTRY), where FAMILY is the family
35847
83b8f5ad1f97 Several typos fixed. From Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35784
diff changeset
5699 name of a font and REGISTRY is a registry name of a font.
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5700
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5701 *** Variable x-charset-registry has been deleted. The default charset
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5702 registries of character sets are set in the default fontset
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5703 "fontset-default".
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5704
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5705 *** The function `create-fontset-from-fontset-spec' ignores the second
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5706 argument STYLE-VARIANT. It never creates style-variant fontsets.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5707
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5708 ** The method of composing characters is changed. Now character
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5709 composition is done by a special text property `composition' in
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5710 buffers and strings.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5711
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5712 *** Charset composition is deleted. Emacs never creates a `composite
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5713 character' which is an independent character with a unique character
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5714 code. Thus the following functions handling `composite characters'
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5715 have been deleted: composite-char-component,
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5716 composite-char-component-count, composite-char-composition-rule,
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5717 composite-char-composition-rule and decompose-composite-char delete.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5718 The variables leading-code-composition and min-composite-char have
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5719 also been deleted.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5720
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5721 *** Three more glyph reference points are added. They can be used to
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5722 specify a composition rule. See the documentation of the variable
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5723 `reference-point-alist' for more detail.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5724
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5725 *** The function `compose-region' takes new arguments COMPONENTS and
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5726 MODIFICATION-FUNC. With COMPONENTS, you can specify not only a
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5727 composition rule but also characters to be composed. Such characters
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5728 may differ between buffer and string text.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5729
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5730 *** The function `compose-string' takes new arguments START, END,
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5731 COMPONENTS, and MODIFICATION-FUNC.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5732
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5733 *** The function `compose-string' puts text property `composition'
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5734 directly on the argument STRING instead of returning a new string.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5735 Likewise, the function `decompose-string' just removes text property
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5736 `composition' from STRING.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5737
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5738 *** The new function `find-composition' returns information about
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5739 a composition at a specified position in a buffer or a string.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5740
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5741 *** The function `decompose-composite-char' is now labeled as
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5742 obsolete.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5743
36039
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
5744 ** The new coding system `mac-roman' is primarily intended for use on
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
5745 the Macintosh but may be used generally for Macintosh-encoded text.
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
5746
33290
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5747 ** The new character sets `mule-unicode-0100-24ff',
35937
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5748 `mule-unicode-2500-33ff', and `mule-unicode-e000-ffff' have been
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5749 introduced for Unicode characters in the range U+0100..U+24FF,
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5750 U+2500..U+33FF, U+E000..U+FFFF respectively.
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5751
38012
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5752 Note that the character sets are not yet unified in Emacs, so
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5753 characters which belong to charsets such as Latin-2, Greek, Hebrew,
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5754 etc. and the same characters in the `mule-unicode-*' charsets are
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5755 different characters, as far as Emacs is concerned. For example, text
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5756 which includes Unicode characters from the Latin-2 locale cannot be
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5757 encoded by Emacs with ISO 8859-2 coding system.
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5758
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5759 ** The new coding system `mule-utf-8' has been added.
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5760 It provides limited support for decoding/encoding UTF-8 text. For
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5761 details, please see the documentation string of this coding system.
35557
eb649a1c81eb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 35470
diff changeset
5762
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5763 ** The new character sets `japanese-jisx0213-1' and
35937
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5764 `japanese-jisx0213-2' have been introduced for the new Japanese
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5765 standard JIS X 0213 Plane 1 and Plane 2.
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5766
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5767 ** The new character sets `latin-iso8859-14' and `latin-iso8859-15'
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5768 have been introduced.
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5769
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5770 ** The new character sets `eight-bit-control' and `eight-bit-graphic'
35937
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5771 have been introduced for 8-bit characters in the ranges 0x80..0x9F and
36470
67c8e0a89b2d *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36428
diff changeset
5772 0xA0..0xFF respectively. Note that the multibyte representation of
67c8e0a89b2d *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36428
diff changeset
5773 eight-bit-control is never exposed; this leads to an exception in the
67c8e0a89b2d *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36428
diff changeset
5774 emacs-mule coding system, which encodes everything else to the
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5775 buffer/string internal representation. Note that to search for
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5776 eight-bit-graphic characters in a multibyte buffer, the search string
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5777 must be multibyte, otherwise such characters will be converted to
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5778 their multibyte equivalent.
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5779
28847
c27ead6e7ea1 write-region change
Dave Love <fx@gnu.org>
parents: 28834
diff changeset
5780 ** If the APPEND argument of `write-region' is an integer, it seeks to
c27ead6e7ea1 write-region change
Dave Love <fx@gnu.org>
parents: 28834
diff changeset
5781 that offset in the file before writing.
c27ead6e7ea1 write-region change
Dave Love <fx@gnu.org>
parents: 28834
diff changeset
5782
30068
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5783 ** The function `add-minor-mode' has been added for convenience and
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5784 compatibility with XEmacs (and is used internally by define-minor-mode).
28724
48df558593f9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28710
diff changeset
5785
28710
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5786 ** The function `shell-command' now sets the default directory of the
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5787 `*Shell Command Output*' buffer to the default directory of the buffer
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5788 from which the command was issued.
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5789
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5790 ** The functions `query-replace', `query-replace-regexp',
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5791 `query-replace-regexp-eval' `map-query-replace-regexp',
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5792 `replace-string', `replace-regexp', and `perform-replace' take two
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5793 additional optional arguments START and END that specify the region to
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5794 operate on.
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5795
28658
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5796 ** The new function `count-screen-lines' is a more flexible alternative
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5797 to `window-buffer-height'.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5798
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5799 - Function: count-screen-lines &optional BEG END COUNT-FINAL-NEWLINE WINDOW
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5800
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5801 Return the number of screen lines in the region between BEG and END.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5802 The number of screen lines may be different from the number of actual
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5803 lines, due to line breaking, display table, etc.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5804
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5805 Optional arguments BEG and END default to `point-min' and `point-max'
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5806 respectively.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5807
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
5808 If region ends with a newline, ignore it unless optional third argument
28658
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5809 COUNT-FINAL-NEWLINE is non-nil.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5810
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5811 The optional fourth argument WINDOW specifies the window used for
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5812 obtaining parameters such as width, horizontal scrolling, and so
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5813 on. The default is to use the selected window's parameters.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5814
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5815 Like `vertical-motion', `count-screen-lines' always uses the current
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5816 buffer, regardless of which buffer is displayed in WINDOW. This makes
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5817 possible to use `count-screen-lines' in any buffer, whether or not it
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5818 is currently displayed in some window.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5819
28556
Dave Love <fx@gnu.org>
parents: 28525
diff changeset
5820 ** The new function `mapc' is like `mapcar' but doesn't collect the
Dave Love <fx@gnu.org>
parents: 28525
diff changeset
5821 argument function's results.
Dave Love <fx@gnu.org>
parents: 28525
diff changeset
5822
28496
92a9591b21a2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28492
diff changeset
5823 ** The functions base64-decode-region and base64-decode-string now
38649
021a0445b5f6 Mention the change in base64-decode-string whereby the result is
Eli Zaretskii <eliz@gnu.org>
parents: 38605
diff changeset
5824 signal an error instead of returning nil if decoding fails. Also,
39075
8722aa0ae475 Mark (almost) all entries either --- or +++.
Eli Zaretskii <eliz@gnu.org>
parents: 39031
diff changeset
5825 `base64-decode-string' now always returns a unibyte string (in Emacs
8722aa0ae475 Mark (almost) all entries either --- or +++.
Eli Zaretskii <eliz@gnu.org>
parents: 39031
diff changeset
5826 20, it returned a multibyte string when the result was a valid multibyte
38649
021a0445b5f6 Mention the change in base64-decode-string whereby the result is
Eli Zaretskii <eliz@gnu.org>
parents: 38605
diff changeset
5827 sequence).
28496
92a9591b21a2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28492
diff changeset
5828
28492
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5829 ** The function sendmail-user-agent-compose now recognizes a `body'
31859
9bb38b47a241 Fix typo.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 31858
diff changeset
5830 header in the list of headers passed to it.
28492
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5831
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5832 ** The new function member-ignore-case works like `member', but
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5833 ignores differences in case and text representation.
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5834
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5835 ** The buffer-local variable cursor-type can be used to specify the
28323
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5836 cursor to use in windows displaying a buffer. Values are interpreted
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5837 as follows:
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5838
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5839 t use the cursor specified for the frame (default)
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5840 nil don't display a cursor
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5841 `bar' display a bar cursor with default width
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5842 (bar . WIDTH) display a bar cursor with width WIDTH
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5843 others display a box cursor.
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5844
28303
8bdd3f67b91a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28292
diff changeset
5845 ** The variable open-paren-in-column-0-is-defun-start controls whether
8bdd3f67b91a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28292
diff changeset
5846 an open parenthesis in column 0 is considered to be the start of a
8bdd3f67b91a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28292
diff changeset
5847 defun. If set, the default, it is considered a defun start. If not
8bdd3f67b91a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28292
diff changeset
5848 set, an open parenthesis in column 0 has no special meaning.
8bdd3f67b91a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28292
diff changeset
5849
28194
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5850 ** The new function `string-to-syntax' can be used to translate syntax
28854
a5c81109bc31 Mention PCL-CVS.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 28847
diff changeset
5851 specifications in string form as accepted by `modify-syntax-entry' to
28194
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5852 the cons-cell form that is used for the values of the `syntax-table'
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5853 text property, and in `font-lock-syntactic-keywords'.
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5854
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5855 Example:
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5856
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5857 (string-to-syntax "()")
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5858 => (4 . 41)
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5859
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5860 ** Emacs' reader supports CL read syntax for integers in bases
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5861 other than 10.
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5862
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5863 *** `#BINTEGER' or `#bINTEGER' reads INTEGER in binary (radix 2).
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5864 INTEGER optionally contains a sign.
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5865
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5866 #b1111
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5867 => 15
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5868 #b-1111
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5869 => -15
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5870
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5871 *** `#OINTEGER' or `#oINTEGER' reads INTEGER in octal (radix 8).
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5872
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5873 #o666
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5874 => 438
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5875
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5876 *** `#XINTEGER' or `#xINTEGER' reads INTEGER in hexadecimal (radix 16).
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5877
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5878 #xbeef
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5879 => 48815
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5880
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5881 *** `#RADIXrINTEGER' reads INTEGER in radix RADIX, 2 <= RADIX <= 36.
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5882
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5883 #2R-111
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5884 => -7
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5885 #25rah
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5886 => 267
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5887
28335
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5888 ** The function `documentation-property' now evaluates the value of
30068
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5889 the given property to obtain a string if it doesn't refer to etc/DOC
28037
acbd35afbe7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27995
diff changeset
5890 and isn't a string.
acbd35afbe7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27995
diff changeset
5891
28335
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5892 ** If called for a symbol, the function `documentation' now looks for
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5893 a `function-documentation' property of that symbol. If it has a non-nil
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5894 value, the documentation is taken from that value. If the value is
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5895 not a string, it is evaluated to obtain a string.
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5896
27881
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5897 ** The last argument of `define-key-after' defaults to t for convenience.
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5898
28149
fd72698178e7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 28140
diff changeset
5899 ** The new function `replace-regexp-in-string' replaces all matches
27881
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5900 for a regexp in a string.
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5901
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5902 ** `mouse-position' now runs the abnormal hook
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5903 `mouse-position-function'.
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5904
27827
25e4e0c9c19a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27820
diff changeset
5905 ** The function string-to-number now returns a float for numbers
25e4e0c9c19a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27820
diff changeset
5906 that don't fit into a Lisp integer.
25e4e0c9c19a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27820
diff changeset
5907
27820
2d9b98395c82 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27770
diff changeset
5908 ** The variable keyword-symbols-constants-flag has been removed.
2d9b98395c82 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27770
diff changeset
5909 Keywords are now always considered constants.
2d9b98395c82 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27770
diff changeset
5910
27770
38f6e392c0aa *** empty log message ***
Dave Love <fx@gnu.org>
parents: 27733
diff changeset
5911 ** The new function `delete-and-extract-region' deletes text and
38f6e392c0aa *** empty log message ***
Dave Love <fx@gnu.org>
parents: 27733
diff changeset
5912 returns it.
38f6e392c0aa *** empty log message ***
Dave Love <fx@gnu.org>
parents: 27733
diff changeset
5913
27276
61772f3ab92f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27266
diff changeset
5914 ** The function `clear-this-command-keys' now also clears the vector
61772f3ab92f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27266
diff changeset
5915 returned by function `recent-keys'.
61772f3ab92f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27266
diff changeset
5916
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5917 ** Variables `beginning-of-defun-function' and `end-of-defun-function'
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5918 can be used to define handlers for the functions that find defuns.
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
5919 Major modes can define these locally instead of rebinding C-M-a
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5920 etc. if the normal conventions for defuns are not appropriate for the
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5921 mode.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5922
27094
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
5923 ** easy-mmode-define-minor-mode now takes an additional BODY argument
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
5924 and is renamed `define-minor-mode'.
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
5925
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5926 ** If an abbrev has a hook function which is a symbol, and that symbol
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5927 has a non-nil `no-self-insert' property, the return value of the hook
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5928 function specifies whether an expansion has been done or not. If it
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5929 returns nil, abbrev-expand also returns nil, meaning "no expansion has
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5930 been performed."
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5931
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5932 When abbrev expansion is done by typing a self-inserting character,
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5933 and the abbrev has a hook with the `no-self-insert' property, and the
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5934 hook function returns non-nil meaning expansion has been done,
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5935 then the self-inserting character is not inserted.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5936
26737
0aad3e0b47d2 Change of intern-soft.
Gerd Moellmann <gerd@gnu.org>
parents: 26728
diff changeset
5937 ** The function `intern-soft' now accepts a symbol as first argument.
0aad3e0b47d2 Change of intern-soft.
Gerd Moellmann <gerd@gnu.org>
parents: 26728
diff changeset
5938 In this case, that exact symbol is looked up in the specified obarray,
0aad3e0b47d2 Change of intern-soft.
Gerd Moellmann <gerd@gnu.org>
parents: 26728
diff changeset
5939 and the function's value is nil if it is not found.
0aad3e0b47d2 Change of intern-soft.
Gerd Moellmann <gerd@gnu.org>
parents: 26728
diff changeset
5940
26467
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5941 ** The new macro `with-syntax-table' can be used to evaluate forms
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5942 with the syntax table of the current buffer temporarily set to a
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5943 specified table.
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5944
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5945 (with-syntax-table TABLE &rest BODY)
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5946
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5947 Evaluate BODY with syntax table of current buffer set to a copy of
26541
ce6bf7b42bc7 --with-syntax-table changed.
Gerd Moellmann <gerd@gnu.org>
parents: 26525
diff changeset
5948 TABLE. The current syntax table is saved, BODY is evaluated, and the
ce6bf7b42bc7 --with-syntax-table changed.
Gerd Moellmann <gerd@gnu.org>
parents: 26525
diff changeset
5949 saved table is restored, even in case of an abnormal exit. Value is
ce6bf7b42bc7 --with-syntax-table changed.
Gerd Moellmann <gerd@gnu.org>
parents: 26525
diff changeset
5950 what BODY returns.
26467
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5951
27693
d8bedafef8d5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27644
diff changeset
5952 ** Regular expressions now support intervals \{n,m\} as well as
28063
f1b33463506d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 28051
diff changeset
5953 Perl's shy-groups \(?:...\) and non-greedy *? +? and ?? operators.
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
5954 Also back-references like \2 are now considered as an error if the
33913
0c780fd30da5 New font-lock-doc-face.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33862
diff changeset
5955 corresponding subgroup does not exist (or is not closed yet).
0c780fd30da5 New font-lock-doc-face.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33862
diff changeset
5956 Previously it would have been silently turned into `2' (ignoring the `\').
27094
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
5957
26397
17d6fe2e2d0f Removal of buffer argument of file-local-copy.
Gerd Moellmann <gerd@gnu.org>
parents: 26360
diff changeset
5958 ** The optional argument BUFFER of function file-local-copy has been
17d6fe2e2d0f Removal of buffer argument of file-local-copy.
Gerd Moellmann <gerd@gnu.org>
parents: 26360
diff changeset
5959 removed since it wasn't used by anything.
17d6fe2e2d0f Removal of buffer argument of file-local-copy.
Gerd Moellmann <gerd@gnu.org>
parents: 26360
diff changeset
5960
26360
5370b1c171ef Change in file-locked-p argument.
Gerd Moellmann <gerd@gnu.org>
parents: 26359
diff changeset
5961 ** The file name argument of function `file-locked-p' is now required
5370b1c171ef Change in file-locked-p argument.
Gerd Moellmann <gerd@gnu.org>
parents: 26359
diff changeset
5962 instead of being optional.
5370b1c171ef Change in file-locked-p argument.
Gerd Moellmann <gerd@gnu.org>
parents: 26359
diff changeset
5963
26277
32e16b70ae15 New built-in error `text-read-only'.
Gerd Moellmann <gerd@gnu.org>
parents: 26271
diff changeset
5964 ** The new built-in error `text-read-only' is signaled when trying to
32e16b70ae15 New built-in error `text-read-only'.
Gerd Moellmann <gerd@gnu.org>
parents: 26271
diff changeset
5965 modify read-only text.
32e16b70ae15 New built-in error `text-read-only'.
Gerd Moellmann <gerd@gnu.org>
parents: 26271
diff changeset
5966
26140
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5967 ** New functions and variables for locales.
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5968
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5969 The new variable `locale-coding-system' specifies how to encode and
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5970 decode strings passed to low-level message functions like strerror and
26525
4df5920724de Rename messages-locale to system-messages-locale
Paul Eggert <eggert@twinsun.com>
parents: 26467
diff changeset
5971 time functions like strftime. The new variables
4df5920724de Rename messages-locale to system-messages-locale
Paul Eggert <eggert@twinsun.com>
parents: 26467
diff changeset
5972 `system-messages-locale' and `system-time-locale' give the system
4df5920724de Rename messages-locale to system-messages-locale
Paul Eggert <eggert@twinsun.com>
parents: 26467
diff changeset
5973 locales to be used when invoking these two types of functions.
26140
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5974
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5975 The new function `set-locale-environment' sets the language
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5976 environment, preferred coding system, and locale coding system from
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5977 the system locale as specified by the LC_ALL, LC_CTYPE, and LANG
26525
4df5920724de Rename messages-locale to system-messages-locale
Paul Eggert <eggert@twinsun.com>
parents: 26467
diff changeset
5978 environment variables. Normally, it is invoked during startup and need
4df5920724de Rename messages-locale to system-messages-locale
Paul Eggert <eggert@twinsun.com>
parents: 26467
diff changeset
5979 not be invoked thereafter. It uses the new variables
4df5920724de Rename messages-locale to system-messages-locale
Paul Eggert <eggert@twinsun.com>
parents: 26467
diff changeset
5980 `locale-language-names', `locale-charset-language-names', and
4df5920724de Rename messages-locale to system-messages-locale
Paul Eggert <eggert@twinsun.com>
parents: 26467
diff changeset
5981 `locale-preferred-coding-systems' to make its decisions.
26140
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5982
26107
5bdae485eb03 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 26096
diff changeset
5983 ** syntax tables now understand nested comments.
5bdae485eb03 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 26096
diff changeset
5984 To declare a comment syntax as allowing nesting, just add an `n'
5bdae485eb03 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 26096
diff changeset
5985 modifier to either of the characters of the comment end and the comment
5bdae485eb03 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 26096
diff changeset
5986 start sequences.
5bdae485eb03 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 26096
diff changeset
5987
25910
918acea58309 Add section for change of pixmap-spec-p to bitmap-spec-p.
Gerd Moellmann <gerd@gnu.org>
parents: 25862
diff changeset
5988 ** The function `pixmap-spec-p' has been renamed `bitmap-spec-p'
918acea58309 Add section for change of pixmap-spec-p to bitmap-spec-p.
Gerd Moellmann <gerd@gnu.org>
parents: 25862
diff changeset
5989 because `bitmap' is more in line with the usual X terminology.
918acea58309 Add section for change of pixmap-spec-p to bitmap-spec-p.
Gerd Moellmann <gerd@gnu.org>
parents: 25862
diff changeset
5990
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
5991 ** New function `propertize'
Dave Love <fx@gnu.org>
parents:
diff changeset
5992
Dave Love <fx@gnu.org>
parents:
diff changeset
5993 The new function `propertize' can be used to conveniently construct
Dave Love <fx@gnu.org>
parents:
diff changeset
5994 strings with text properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
5995
Dave Love <fx@gnu.org>
parents:
diff changeset
5996 - Function: propertize STRING &rest PROPERTIES
Dave Love <fx@gnu.org>
parents:
diff changeset
5997
Dave Love <fx@gnu.org>
parents:
diff changeset
5998 Value is a copy of STRING with text properties assigned as specified
Dave Love <fx@gnu.org>
parents:
diff changeset
5999 by PROPERTIES. PROPERTIES is a sequence of pairs PROPERTY VALUE, with
Dave Love <fx@gnu.org>
parents:
diff changeset
6000 PROPERTY being the name of a text property and VALUE being the
Dave Love <fx@gnu.org>
parents:
diff changeset
6001 specified value of that property. Example:
Dave Love <fx@gnu.org>
parents:
diff changeset
6002
Dave Love <fx@gnu.org>
parents:
diff changeset
6003 (propertize "foo" 'face 'bold 'read-only t)
Dave Love <fx@gnu.org>
parents:
diff changeset
6004
Dave Love <fx@gnu.org>
parents:
diff changeset
6005 ** push and pop macros.
Dave Love <fx@gnu.org>
parents:
diff changeset
6006
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6007 Simple versions of the push and pop macros of Common Lisp
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6008 are now defined in Emacs Lisp. These macros allow only symbols
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6009 as the place that holds the list to be changed.
Dave Love <fx@gnu.org>
parents:
diff changeset
6010
Dave Love <fx@gnu.org>
parents:
diff changeset
6011 (push NEWELT LISTNAME) add NEWELT to the front of LISTNAME's value.
Dave Love <fx@gnu.org>
parents:
diff changeset
6012 (pop LISTNAME) return first elt of LISTNAME, and remove it
Dave Love <fx@gnu.org>
parents:
diff changeset
6013 (thus altering the value of LISTNAME).
Dave Love <fx@gnu.org>
parents:
diff changeset
6014
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6015 ** New dolist and dotimes macros.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6016
27387
d0a7127b33e5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27385
diff changeset
6017 Simple versions of the dolist and dotimes macros of Common Lisp
d0a7127b33e5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27385
diff changeset
6018 are now defined in Emacs Lisp.
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6019
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6020 (dolist (VAR LIST [RESULT]) BODY...)
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6021 Execute body once for each element of LIST,
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6022 using the variable VAR to hold the current element.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6023 Then return the value of RESULT, or nil if RESULT is omitted.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6024
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6025 (dotimes (VAR COUNT [RESULT]) BODY...)
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6026 Execute BODY with VAR bound to successive integers running from 0,
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6027 inclusive, to COUNT, exclusive.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6028 Then return the value of RESULT, or nil if RESULT is omitted.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
6029
34166
c073ad4159fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34125
diff changeset
6030 ** Regular expressions now support Posix character classes such as
c073ad4159fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34125
diff changeset
6031 [:alpha:], [:space:] and so on. These must be used within a character
c073ad4159fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34125
diff changeset
6032 class--for instance, [-[:digit:].+] matches digits or a period
c073ad4159fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34125
diff changeset
6033 or a sign.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6034
Dave Love <fx@gnu.org>
parents:
diff changeset
6035 [:digit:] matches 0 through 9
Dave Love <fx@gnu.org>
parents:
diff changeset
6036 [:cntrl:] matches ASCII control characters
Dave Love <fx@gnu.org>
parents:
diff changeset
6037 [:xdigit:] matches 0 through 9, a through f and A through F.
Dave Love <fx@gnu.org>
parents:
diff changeset
6038 [:blank:] matches space and tab only
Dave Love <fx@gnu.org>
parents:
diff changeset
6039 [:graph:] matches graphic characters--everything except ASCII control chars,
Dave Love <fx@gnu.org>
parents:
diff changeset
6040 space, and DEL.
Dave Love <fx@gnu.org>
parents:
diff changeset
6041 [:print:] matches printing characters--everything except ASCII control chars
Dave Love <fx@gnu.org>
parents:
diff changeset
6042 and DEL.
Dave Love <fx@gnu.org>
parents:
diff changeset
6043 [:alnum:] matches letters and digits.
Dave Love <fx@gnu.org>
parents:
diff changeset
6044 (But at present, for multibyte characters,
Dave Love <fx@gnu.org>
parents:
diff changeset
6045 it matches anything that has word syntax.)
Dave Love <fx@gnu.org>
parents:
diff changeset
6046 [:alpha:] matches letters.
Dave Love <fx@gnu.org>
parents:
diff changeset
6047 (But at present, for multibyte characters,
Dave Love <fx@gnu.org>
parents:
diff changeset
6048 it matches anything that has word syntax.)
Dave Love <fx@gnu.org>
parents:
diff changeset
6049 [:ascii:] matches ASCII (unibyte) characters.
Dave Love <fx@gnu.org>
parents:
diff changeset
6050 [:nonascii:] matches non-ASCII (multibyte) characters.
Dave Love <fx@gnu.org>
parents:
diff changeset
6051 [:lower:] matches anything lower-case.
Dave Love <fx@gnu.org>
parents:
diff changeset
6052 [:punct:] matches punctuation.
Dave Love <fx@gnu.org>
parents:
diff changeset
6053 (But at present, for multibyte characters,
Dave Love <fx@gnu.org>
parents:
diff changeset
6054 it matches anything that has non-word syntax.)
Dave Love <fx@gnu.org>
parents:
diff changeset
6055 [:space:] matches anything that has whitespace syntax.
Dave Love <fx@gnu.org>
parents:
diff changeset
6056 [:upper:] matches anything upper-case.
Dave Love <fx@gnu.org>
parents:
diff changeset
6057 [:word:] matches anything that has word syntax.
Dave Love <fx@gnu.org>
parents:
diff changeset
6058
Dave Love <fx@gnu.org>
parents:
diff changeset
6059 ** Emacs now has built-in hash tables.
Dave Love <fx@gnu.org>
parents:
diff changeset
6060
Dave Love <fx@gnu.org>
parents:
diff changeset
6061 The following functions are defined for hash tables:
Dave Love <fx@gnu.org>
parents:
diff changeset
6062
Dave Love <fx@gnu.org>
parents:
diff changeset
6063 - Function: make-hash-table ARGS
Dave Love <fx@gnu.org>
parents:
diff changeset
6064
Dave Love <fx@gnu.org>
parents:
diff changeset
6065 The argument list ARGS consists of keyword/argument pairs. All arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
6066 are optional. The following arguments are defined:
Dave Love <fx@gnu.org>
parents:
diff changeset
6067
Dave Love <fx@gnu.org>
parents:
diff changeset
6068 :test TEST
Dave Love <fx@gnu.org>
parents:
diff changeset
6069
Dave Love <fx@gnu.org>
parents:
diff changeset
6070 TEST must be a symbol specifying how to compare keys. Default is `eql'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6071 Predefined are `eq', `eql' and `equal'. If TEST is not predefined,
Dave Love <fx@gnu.org>
parents:
diff changeset
6072 it must have been defined with `define-hash-table-test'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6073
Dave Love <fx@gnu.org>
parents:
diff changeset
6074 :size SIZE
Dave Love <fx@gnu.org>
parents:
diff changeset
6075
Dave Love <fx@gnu.org>
parents:
diff changeset
6076 SIZE must be an integer > 0 giving a hint to the implementation how
Dave Love <fx@gnu.org>
parents:
diff changeset
6077 many elements will be put in the hash table. Default size is 65.
Dave Love <fx@gnu.org>
parents:
diff changeset
6078
Dave Love <fx@gnu.org>
parents:
diff changeset
6079 :rehash-size REHASH-SIZE
Dave Love <fx@gnu.org>
parents:
diff changeset
6080
Dave Love <fx@gnu.org>
parents:
diff changeset
6081 REHASH-SIZE specifies by how much to grow a hash table once it becomes
Dave Love <fx@gnu.org>
parents:
diff changeset
6082 full. If REHASH-SIZE is an integer, add that to the hash table's old
Dave Love <fx@gnu.org>
parents:
diff changeset
6083 size to get the new size. Otherwise, REHASH-SIZE must be a float >
Dave Love <fx@gnu.org>
parents:
diff changeset
6084 1.0, and the new size is computed by multiplying REHASH-SIZE with the
Dave Love <fx@gnu.org>
parents:
diff changeset
6085 old size. Default rehash size is 1.5.
Dave Love <fx@gnu.org>
parents:
diff changeset
6086
Dave Love <fx@gnu.org>
parents:
diff changeset
6087 :rehash-threshold THRESHOLD
Dave Love <fx@gnu.org>
parents:
diff changeset
6088
Dave Love <fx@gnu.org>
parents:
diff changeset
6089 THRESHOLD must be a float > 0 and <= 1.0 specifying when to resize the
Dave Love <fx@gnu.org>
parents:
diff changeset
6090 hash table. It is resized when the ratio of (number of entries) /
Dave Love <fx@gnu.org>
parents:
diff changeset
6091 (size of hash table) is >= THRESHOLD. Default threshold is 0.8.
Dave Love <fx@gnu.org>
parents:
diff changeset
6092
Dave Love <fx@gnu.org>
parents:
diff changeset
6093 :weakness WEAK
Dave Love <fx@gnu.org>
parents:
diff changeset
6094
30502
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
6095 WEAK must be either nil, one of the symbols `key, `value',
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
6096 `key-or-value', `key-and-value', or t, meaning the same as
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
6097 `key-and-value'. Entries are removed from weak tables during garbage
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
6098 collection if their key and/or value are not referenced elsewhere
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
6099 outside of the hash table. Default are non-weak hash tables.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6100
Dave Love <fx@gnu.org>
parents:
diff changeset
6101 - Function: makehash &optional TEST
Dave Love <fx@gnu.org>
parents:
diff changeset
6102
Dave Love <fx@gnu.org>
parents:
diff changeset
6103 Similar to make-hash-table, but only TEST can be specified.
Dave Love <fx@gnu.org>
parents:
diff changeset
6104
Dave Love <fx@gnu.org>
parents:
diff changeset
6105 - Function: hash-table-p TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6106
Dave Love <fx@gnu.org>
parents:
diff changeset
6107 Returns non-nil if TABLE is a hash table object.
Dave Love <fx@gnu.org>
parents:
diff changeset
6108
Dave Love <fx@gnu.org>
parents:
diff changeset
6109 - Function: copy-hash-table TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6110
Dave Love <fx@gnu.org>
parents:
diff changeset
6111 Returns a copy of TABLE. Only the table itself is copied, keys and
Dave Love <fx@gnu.org>
parents:
diff changeset
6112 values are shared.
Dave Love <fx@gnu.org>
parents:
diff changeset
6113
Dave Love <fx@gnu.org>
parents:
diff changeset
6114 - Function: hash-table-count TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6115
Dave Love <fx@gnu.org>
parents:
diff changeset
6116 Returns the number of entries in TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6117
Dave Love <fx@gnu.org>
parents:
diff changeset
6118 - Function: hash-table-rehash-size TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6119
Dave Love <fx@gnu.org>
parents:
diff changeset
6120 Returns the rehash size of TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6121
Dave Love <fx@gnu.org>
parents:
diff changeset
6122 - Function: hash-table-rehash-threshold TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6123
Dave Love <fx@gnu.org>
parents:
diff changeset
6124 Returns the rehash threshold of TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6125
Dave Love <fx@gnu.org>
parents:
diff changeset
6126 - Function: hash-table-rehash-size TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6127
Dave Love <fx@gnu.org>
parents:
diff changeset
6128 Returns the size of TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6129
30789
68b63779f4df typo fix
Sam Steingold <sds@gnu.org>
parents: 30788
diff changeset
6130 - Function: hash-table-test TABLE
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6131
Dave Love <fx@gnu.org>
parents:
diff changeset
6132 Returns the test TABLE uses to compare keys.
Dave Love <fx@gnu.org>
parents:
diff changeset
6133
Dave Love <fx@gnu.org>
parents:
diff changeset
6134 - Function: hash-table-weakness TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6135
Dave Love <fx@gnu.org>
parents:
diff changeset
6136 Returns the weakness specified for TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6137
Dave Love <fx@gnu.org>
parents:
diff changeset
6138 - Function: clrhash TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6139
Dave Love <fx@gnu.org>
parents:
diff changeset
6140 Clear TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6141
Dave Love <fx@gnu.org>
parents:
diff changeset
6142 - Function: gethash KEY TABLE &optional DEFAULT
Dave Love <fx@gnu.org>
parents:
diff changeset
6143
Dave Love <fx@gnu.org>
parents:
diff changeset
6144 Look up KEY in TABLE and return its associated VALUE or DEFAULT if
Dave Love <fx@gnu.org>
parents:
diff changeset
6145 not found.
Dave Love <fx@gnu.org>
parents:
diff changeset
6146
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6147 - Function: puthash KEY VALUE TABLE
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6148
Dave Love <fx@gnu.org>
parents:
diff changeset
6149 Associate KEY with VALUE in TABLE. If KEY is already associated with
Dave Love <fx@gnu.org>
parents:
diff changeset
6150 another value, replace the old value with VALUE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6151
Dave Love <fx@gnu.org>
parents:
diff changeset
6152 - Function: remhash KEY TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6153
Dave Love <fx@gnu.org>
parents:
diff changeset
6154 Remove KEY from TABLE if it is there.
Dave Love <fx@gnu.org>
parents:
diff changeset
6155
Dave Love <fx@gnu.org>
parents:
diff changeset
6156 - Function: maphash FUNCTION TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6157
Dave Love <fx@gnu.org>
parents:
diff changeset
6158 Call FUNCTION for all elements in TABLE. FUNCTION must take two
Dave Love <fx@gnu.org>
parents:
diff changeset
6159 arguments KEY and VALUE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6160
Dave Love <fx@gnu.org>
parents:
diff changeset
6161 - Function: sxhash OBJ
Dave Love <fx@gnu.org>
parents:
diff changeset
6162
Dave Love <fx@gnu.org>
parents:
diff changeset
6163 Return a hash code for Lisp object OBJ.
Dave Love <fx@gnu.org>
parents:
diff changeset
6164
Dave Love <fx@gnu.org>
parents:
diff changeset
6165 - Function: define-hash-table-test NAME TEST-FN HASH-FN
Dave Love <fx@gnu.org>
parents:
diff changeset
6166
Dave Love <fx@gnu.org>
parents:
diff changeset
6167 Define a new hash table test named NAME. If NAME is specified as
Dave Love <fx@gnu.org>
parents:
diff changeset
6168 a test in `make-hash-table', the table created will use TEST-FN for
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6169 comparing keys, and HASH-FN to compute hash codes for keys. Test
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6170 and hash function are stored as symbol property `hash-table-test'
Dave Love <fx@gnu.org>
parents:
diff changeset
6171 of NAME with a value of (TEST-FN HASH-FN).
Dave Love <fx@gnu.org>
parents:
diff changeset
6172
Dave Love <fx@gnu.org>
parents:
diff changeset
6173 TEST-FN must take two arguments and return non-nil if they are the same.
Dave Love <fx@gnu.org>
parents:
diff changeset
6174
Dave Love <fx@gnu.org>
parents:
diff changeset
6175 HASH-FN must take one argument and return an integer that is the hash
Dave Love <fx@gnu.org>
parents:
diff changeset
6176 code of the argument. The function should use the whole range of
Dave Love <fx@gnu.org>
parents:
diff changeset
6177 integer values for hash code computation, including negative integers.
Dave Love <fx@gnu.org>
parents:
diff changeset
6178
Dave Love <fx@gnu.org>
parents:
diff changeset
6179 Example: The following creates a hash table whose keys are supposed to
Dave Love <fx@gnu.org>
parents:
diff changeset
6180 be strings that are compared case-insensitively.
Dave Love <fx@gnu.org>
parents:
diff changeset
6181
Dave Love <fx@gnu.org>
parents:
diff changeset
6182 (defun case-fold-string= (a b)
Dave Love <fx@gnu.org>
parents:
diff changeset
6183 (compare-strings a nil nil b nil nil t))
Dave Love <fx@gnu.org>
parents:
diff changeset
6184
Dave Love <fx@gnu.org>
parents:
diff changeset
6185 (defun case-fold-string-hash (a)
Dave Love <fx@gnu.org>
parents:
diff changeset
6186 (sxhash (upcase a)))
Dave Love <fx@gnu.org>
parents:
diff changeset
6187
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6188 (define-hash-table-test 'case-fold 'case-fold-string=
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6189 'case-fold-string-hash))
Dave Love <fx@gnu.org>
parents:
diff changeset
6190
Dave Love <fx@gnu.org>
parents:
diff changeset
6191 (make-hash-table :test 'case-fold)
Dave Love <fx@gnu.org>
parents:
diff changeset
6192
Dave Love <fx@gnu.org>
parents:
diff changeset
6193 ** The Lisp reader handles circular structure.
Dave Love <fx@gnu.org>
parents:
diff changeset
6194
Dave Love <fx@gnu.org>
parents:
diff changeset
6195 It now works to use the #N= and #N# constructs to represent
Dave Love <fx@gnu.org>
parents:
diff changeset
6196 circular structures. For example, #1=(a . #1#) represents
Dave Love <fx@gnu.org>
parents:
diff changeset
6197 a cons cell which is its own cdr.
Dave Love <fx@gnu.org>
parents:
diff changeset
6198
Dave Love <fx@gnu.org>
parents:
diff changeset
6199 ** The Lisp printer handles circular structure.
Dave Love <fx@gnu.org>
parents:
diff changeset
6200
Dave Love <fx@gnu.org>
parents:
diff changeset
6201 If you bind print-circle to a non-nil value, the Lisp printer outputs
Dave Love <fx@gnu.org>
parents:
diff changeset
6202 #N= and #N# constructs to represent circular and shared structure.
Dave Love <fx@gnu.org>
parents:
diff changeset
6203
Dave Love <fx@gnu.org>
parents:
diff changeset
6204 ** If the second argument to `move-to-column' is anything but nil or
Dave Love <fx@gnu.org>
parents:
diff changeset
6205 t, that means replace a tab with spaces if necessary to reach the
Dave Love <fx@gnu.org>
parents:
diff changeset
6206 specified column, but do not add spaces at the end of the line if it
Dave Love <fx@gnu.org>
parents:
diff changeset
6207 is too short to reach that column.
Dave Love <fx@gnu.org>
parents:
diff changeset
6208
Dave Love <fx@gnu.org>
parents:
diff changeset
6209 ** perform-replace has a new feature: the REPLACEMENTS argument may
Dave Love <fx@gnu.org>
parents:
diff changeset
6210 now be a cons cell (FUNCTION . DATA). This means to call FUNCTION
Dave Love <fx@gnu.org>
parents:
diff changeset
6211 after each match to get the replacement text. FUNCTION is called with
Dave Love <fx@gnu.org>
parents:
diff changeset
6212 two arguments: DATA, and the number of replacements already made.
Dave Love <fx@gnu.org>
parents:
diff changeset
6213
Dave Love <fx@gnu.org>
parents:
diff changeset
6214 If the FROM-STRING contains any upper-case letters,
Dave Love <fx@gnu.org>
parents:
diff changeset
6215 perform-replace also turns off `case-fold-search' temporarily
Dave Love <fx@gnu.org>
parents:
diff changeset
6216 and inserts the replacement text without altering case in it.
Dave Love <fx@gnu.org>
parents:
diff changeset
6217
Dave Love <fx@gnu.org>
parents:
diff changeset
6218 ** The function buffer-size now accepts an optional argument
Dave Love <fx@gnu.org>
parents:
diff changeset
6219 to specify which buffer to return the size of.
Dave Love <fx@gnu.org>
parents:
diff changeset
6220
Dave Love <fx@gnu.org>
parents:
diff changeset
6221 ** The calendar motion commands now run the normal hook
Dave Love <fx@gnu.org>
parents:
diff changeset
6222 calendar-move-hook after moving point.
Dave Love <fx@gnu.org>
parents:
diff changeset
6223
Dave Love <fx@gnu.org>
parents:
diff changeset
6224 ** The new variable small-temporary-file-directory specifies a
Dave Love <fx@gnu.org>
parents:
diff changeset
6225 directory to use for creating temporary files that are likely to be
Dave Love <fx@gnu.org>
parents:
diff changeset
6226 small. (Certain Emacs features use this directory.) If
Dave Love <fx@gnu.org>
parents:
diff changeset
6227 small-temporary-file-directory is nil, they use
Dave Love <fx@gnu.org>
parents:
diff changeset
6228 temporary-file-directory instead.
Dave Love <fx@gnu.org>
parents:
diff changeset
6229
Dave Love <fx@gnu.org>
parents:
diff changeset
6230 ** The variable `inhibit-modification-hooks', if non-nil, inhibits all
Dave Love <fx@gnu.org>
parents:
diff changeset
6231 the hooks that track changes in the buffer. This affects
Dave Love <fx@gnu.org>
parents:
diff changeset
6232 `before-change-functions' and `after-change-functions', as well as
Dave Love <fx@gnu.org>
parents:
diff changeset
6233 hooks attached to text properties and overlay properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
6234
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
6235 ** assq-delete-all is a new function that deletes all the
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
6236 elements of an alist which have a car `eq' to a particular value.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6237
Dave Love <fx@gnu.org>
parents:
diff changeset
6238 ** make-temp-file provides a more reliable way to create a temporary file.
Dave Love <fx@gnu.org>
parents:
diff changeset
6239
Dave Love <fx@gnu.org>
parents:
diff changeset
6240 make-temp-file is used like make-temp-name, except that it actually
Dave Love <fx@gnu.org>
parents:
diff changeset
6241 creates the file before it returns. This prevents a timing error,
Dave Love <fx@gnu.org>
parents:
diff changeset
6242 ensuring that no other job can use the same name for a temporary file.
Dave Love <fx@gnu.org>
parents:
diff changeset
6243
Dave Love <fx@gnu.org>
parents:
diff changeset
6244 ** New exclusive-open feature in `write-region'
Dave Love <fx@gnu.org>
parents:
diff changeset
6245
Dave Love <fx@gnu.org>
parents:
diff changeset
6246 The optional seventh arg is now called MUSTBENEW. If non-nil, it insists
Dave Love <fx@gnu.org>
parents:
diff changeset
6247 on a check for an existing file with the same name. If MUSTBENEW
Dave Love <fx@gnu.org>
parents:
diff changeset
6248 is `excl', that means to get an error if the file already exists;
Dave Love <fx@gnu.org>
parents:
diff changeset
6249 never overwrite. If MUSTBENEW is neither nil nor `excl', that means
Dave Love <fx@gnu.org>
parents:
diff changeset
6250 ask for confirmation before overwriting, but do go ahead and
Dave Love <fx@gnu.org>
parents:
diff changeset
6251 overwrite the file if the user gives confirmation.
Dave Love <fx@gnu.org>
parents:
diff changeset
6252
Dave Love <fx@gnu.org>
parents:
diff changeset
6253 If the MUSTBENEW argument in `write-region' is `excl',
Dave Love <fx@gnu.org>
parents:
diff changeset
6254 that means to use a special feature in the `open' system call
Dave Love <fx@gnu.org>
parents:
diff changeset
6255 to get an error if the file exists at that time.
Dave Love <fx@gnu.org>
parents:
diff changeset
6256 The error reported is `file-already-exists'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6257
Dave Love <fx@gnu.org>
parents:
diff changeset
6258 ** Function `format' now handles text properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
6259
Dave Love <fx@gnu.org>
parents:
diff changeset
6260 Text properties of the format string are applied to the result string.
Dave Love <fx@gnu.org>
parents:
diff changeset
6261 If the result string is longer than the format string, text properties
Dave Love <fx@gnu.org>
parents:
diff changeset
6262 ending at the end of the format string are extended to the end of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6263 result string.
Dave Love <fx@gnu.org>
parents:
diff changeset
6264
Dave Love <fx@gnu.org>
parents:
diff changeset
6265 Text properties from string arguments are applied to the result
Dave Love <fx@gnu.org>
parents:
diff changeset
6266 string where arguments appear in the result string.
Dave Love <fx@gnu.org>
parents:
diff changeset
6267
Dave Love <fx@gnu.org>
parents:
diff changeset
6268 Example:
Dave Love <fx@gnu.org>
parents:
diff changeset
6269
Dave Love <fx@gnu.org>
parents:
diff changeset
6270 (let ((s1 "hello, %s")
Dave Love <fx@gnu.org>
parents:
diff changeset
6271 (s2 "world"))
Dave Love <fx@gnu.org>
parents:
diff changeset
6272 (put-text-property 0 (length s1) 'face 'bold s1)
Dave Love <fx@gnu.org>
parents:
diff changeset
6273 (put-text-property 0 (length s2) 'face 'italic s2)
26034
e7b463705814 Some typos fixed.
Gerd Moellmann <gerd@gnu.org>
parents: 26030
diff changeset
6274 (format s1 s2))
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6275
Dave Love <fx@gnu.org>
parents:
diff changeset
6276 results in a bold-face string with an italic `world' at the end.
Dave Love <fx@gnu.org>
parents:
diff changeset
6277
Dave Love <fx@gnu.org>
parents:
diff changeset
6278 ** Messages can now be displayed with text properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
6279
Dave Love <fx@gnu.org>
parents:
diff changeset
6280 Text properties are handled as described above for function `format'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6281 The following example displays a bold-face message with an italic
Dave Love <fx@gnu.org>
parents:
diff changeset
6282 argument in it.
Dave Love <fx@gnu.org>
parents:
diff changeset
6283
Dave Love <fx@gnu.org>
parents:
diff changeset
6284 (let ((msg "hello, %s!")
Dave Love <fx@gnu.org>
parents:
diff changeset
6285 (arg "world"))
Dave Love <fx@gnu.org>
parents:
diff changeset
6286 (put-text-property 0 (length msg) 'face 'bold msg)
Dave Love <fx@gnu.org>
parents:
diff changeset
6287 (put-text-property 0 (length arg) 'face 'italic arg)
Dave Love <fx@gnu.org>
parents:
diff changeset
6288 (message msg arg))
Dave Love <fx@gnu.org>
parents:
diff changeset
6289
Dave Love <fx@gnu.org>
parents:
diff changeset
6290 ** Sound support
Dave Love <fx@gnu.org>
parents:
diff changeset
6291
Dave Love <fx@gnu.org>
parents:
diff changeset
6292 Emacs supports playing sound files on GNU/Linux and the free BSDs
Dave Love <fx@gnu.org>
parents:
diff changeset
6293 (Voxware driver and native BSD driver, aka as Luigi's driver).
Dave Love <fx@gnu.org>
parents:
diff changeset
6294
Dave Love <fx@gnu.org>
parents:
diff changeset
6295 Currently supported file formats are RIFF-WAVE (*.wav) and Sun Audio
Dave Love <fx@gnu.org>
parents:
diff changeset
6296 (*.au). You must configure Emacs with the option `--with-sound=yes'
Dave Love <fx@gnu.org>
parents:
diff changeset
6297 to enable sound support.
Dave Love <fx@gnu.org>
parents:
diff changeset
6298
Dave Love <fx@gnu.org>
parents:
diff changeset
6299 Sound files can be played by calling (play-sound SOUND). SOUND is a
Dave Love <fx@gnu.org>
parents:
diff changeset
6300 list of the form `(sound PROPERTY...)'. The function is only defined
Dave Love <fx@gnu.org>
parents:
diff changeset
6301 when sound support is present for the system on which Emacs runs. The
Dave Love <fx@gnu.org>
parents:
diff changeset
6302 functions runs `play-sound-functions' with one argument which is the
Dave Love <fx@gnu.org>
parents:
diff changeset
6303 sound to play, before playing the sound.
Dave Love <fx@gnu.org>
parents:
diff changeset
6304
Dave Love <fx@gnu.org>
parents:
diff changeset
6305 The following sound properties are supported:
Dave Love <fx@gnu.org>
parents:
diff changeset
6306
Dave Love <fx@gnu.org>
parents:
diff changeset
6307 - `:file FILE'
Dave Love <fx@gnu.org>
parents:
diff changeset
6308
Dave Love <fx@gnu.org>
parents:
diff changeset
6309 FILE is a file name. If FILE isn't an absolute name, it will be
Dave Love <fx@gnu.org>
parents:
diff changeset
6310 searched relative to `data-directory'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6311
27148
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6312 - `:data DATA'
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6313
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6314 DATA is a string containing sound data. Either :file or :data
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6315 may be present, but not both.
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6316
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6317 - `:volume VOLUME'
Dave Love <fx@gnu.org>
parents:
diff changeset
6318
Dave Love <fx@gnu.org>
parents:
diff changeset
6319 VOLUME must be an integer in the range 0..100 or a float in the range
Dave Love <fx@gnu.org>
parents:
diff changeset
6320 0..1. This property is optional.
Dave Love <fx@gnu.org>
parents:
diff changeset
6321
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6322 - `:device DEVICE'
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6323
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6324 DEVICE is a string specifying the system device on which to play the
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6325 sound. The default device is system-dependent.
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6326
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6327 Other properties are ignored.
Dave Love <fx@gnu.org>
parents:
diff changeset
6328
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6329 An alternative interface is called as
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6330 (play-sound-file FILE &optional VOLUME DEVICE).
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6331
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6332 ** `multimedia' is a new Finder keyword and Custom group.
26933
73340d009a9f keywordp.
Dave Love <fx@gnu.org>
parents: 26924
diff changeset
6333
73340d009a9f keywordp.
Dave Love <fx@gnu.org>
parents: 26924
diff changeset
6334 ** keywordp is a new predicate to test efficiently for an object being
73340d009a9f keywordp.
Dave Love <fx@gnu.org>
parents: 26924
diff changeset
6335 a keyword symbol.
27145
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6336
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6337 ** Changes to garbage collection
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6338
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6339 *** The function garbage-collect now additionally returns the number
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6340 of live and free strings.
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6341
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6342 *** There is a new variable `strings-consed' holding the number of
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6343 strings that have been consed so far.
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6344
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
6345
29151
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6346 * Lisp-level Display features added after release 2.6 of the Emacs
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6347 Lisp Manual
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6348
33309
cb1bcdd72f54 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33291
diff changeset
6349 ** The user-option `resize-mini-windows' controls how Emacs resizes
cb1bcdd72f54 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33291
diff changeset
6350 mini-windows.
cb1bcdd72f54 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33291
diff changeset
6351
34389
779f5314f5fa Update entry for `pos-visible-in-window-p'.
Miles Bader <miles@gnu.org>
parents: 34334
diff changeset
6352 ** The function `pos-visible-in-window-p' now has a third optional
779f5314f5fa Update entry for `pos-visible-in-window-p'.
Miles Bader <miles@gnu.org>
parents: 34334
diff changeset
6353 argument, PARTIALLY. If a character is only partially visible, nil is
779f5314f5fa Update entry for `pos-visible-in-window-p'.
Miles Bader <miles@gnu.org>
parents: 34334
diff changeset
6354 returned, unless PARTIALLY is non-nil.
32915
f8e686a581dc Add entry for `pos-visible-in-window-p'.
Miles Bader <miles@gnu.org>
parents: 32913
diff changeset
6355
33309
cb1bcdd72f54 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33291
diff changeset
6356 ** On window systems, `glyph-table' is no longer used.
31220
e947c5224fc0 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31183
diff changeset
6357
30222
6468eaa4eaee load-path not customizable
Dave Love <fx@gnu.org>
parents: 30219
diff changeset
6358 ** Help strings in menu items are now used to provide `help-echo' text.
29939
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6359
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6360 ** The function `image-size' can be used to determine the size of an
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6361 image.
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6362
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6363 - Function: image-size SPEC &optional PIXELS FRAME
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6364
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6365 Return the size of an image as a pair (WIDTH . HEIGHT).
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6366
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6367 SPEC is an image specification. PIXELS non-nil means return sizes
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6368 measured in pixels, otherwise return sizes measured in canonical
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6369 character units (fractions of the width/height of the frame's default
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6370 font). FRAME is the frame on which the image will be displayed.
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6371 FRAME nil or omitted means use the selected frame.
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6372
31639
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6373 ** The function `image-mask-p' can be used to determine if an image
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6374 has a mask bitmap.
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6375
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6376 - Function: image-mask-p SPEC &optional FRAME
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6377
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6378 Return t if image SPEC has a mask bitmap.
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6379 FRAME is the frame on which the image will be displayed. FRAME nil
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6380 or omitted means use the selected frame.
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6381
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6382 ** The function `find-image' can be used to find a usable image
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6383 satisfying one of a list of specifications.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6384
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6385 ** The STRING argument of `put-image' and `insert-image' is now
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6386 optional.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6387
31156
deaa66a2ac5b *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31127
diff changeset
6388 ** Image specifications may contain the property `:ascent center' (see
deaa66a2ac5b *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31127
diff changeset
6389 below).
29151
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6390
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
6391
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6392 * New Lisp-level Display features in Emacs 21.1
Dave Love <fx@gnu.org>
parents:
diff changeset
6393
28634
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6394 ** The function tty-suppress-bold-inverse-default-colors can be used
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6395 to make Emacs avoid displaying text with bold black foreground on TTYs.
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6396
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6397 Some terminals, notably PC consoles, emulate bold text by displaying
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6398 text in brighter colors. On such a console, a bold black foreground
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6399 is displayed in a gray color. If this turns out to be hard to read on
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6400 your monitor---the problem occurred with the mode line on
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6401 laptops---you can instruct Emacs to ignore the text's boldness, and to
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6402 just display it black instead.
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6403
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6404 This situation can't be detected automatically. You will have to put
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6405 a line like
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6406
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6407 (tty-suppress-bold-inverse-default-colors t)
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6408
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6409 in your `.emacs'.
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6410
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6411 ** New face implementation.
Dave Love <fx@gnu.org>
parents:
diff changeset
6412
Dave Love <fx@gnu.org>
parents:
diff changeset
6413 Emacs faces have been reimplemented from scratch. They don't use XLFD
Dave Love <fx@gnu.org>
parents:
diff changeset
6414 font names anymore and face merging now works as expected.
Dave Love <fx@gnu.org>
parents:
diff changeset
6415
Dave Love <fx@gnu.org>
parents:
diff changeset
6416 *** New faces.
Dave Love <fx@gnu.org>
parents:
diff changeset
6417
Dave Love <fx@gnu.org>
parents:
diff changeset
6418 Each face can specify the following display attributes:
Dave Love <fx@gnu.org>
parents:
diff changeset
6419
Dave Love <fx@gnu.org>
parents:
diff changeset
6420 1. Font family or fontset alias name.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6421
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6422 2. Relative proportionate width, aka character set width or set
Dave Love <fx@gnu.org>
parents:
diff changeset
6423 width (swidth), e.g. `semi-compressed'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6424
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6425 3. Font height in 1/10pt
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6426
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6427 4. Font weight, e.g. `bold'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6428
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6429 5. Font slant, e.g. `italic'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6430
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6431 6. Foreground color.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6432
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6433 7. Background color.
Dave Love <fx@gnu.org>
parents:
diff changeset
6434
Dave Love <fx@gnu.org>
parents:
diff changeset
6435 8. Whether or not characters should be underlined, and in what color.
Dave Love <fx@gnu.org>
parents:
diff changeset
6436
Dave Love <fx@gnu.org>
parents:
diff changeset
6437 9. Whether or not characters should be displayed in inverse video.
Dave Love <fx@gnu.org>
parents:
diff changeset
6438
Dave Love <fx@gnu.org>
parents:
diff changeset
6439 10. A background stipple, a bitmap.
Dave Love <fx@gnu.org>
parents:
diff changeset
6440
Dave Love <fx@gnu.org>
parents:
diff changeset
6441 11. Whether or not characters should be overlined, and in what color.
Dave Love <fx@gnu.org>
parents:
diff changeset
6442
Dave Love <fx@gnu.org>
parents:
diff changeset
6443 12. Whether or not characters should be strike-through, and in what
Dave Love <fx@gnu.org>
parents:
diff changeset
6444 color.
Dave Love <fx@gnu.org>
parents:
diff changeset
6445
Dave Love <fx@gnu.org>
parents:
diff changeset
6446 13. Whether or not a box should be drawn around characters, its
Dave Love <fx@gnu.org>
parents:
diff changeset
6447 color, the width of the box lines, and 3D appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
6448
Dave Love <fx@gnu.org>
parents:
diff changeset
6449 Faces are frame-local by nature because Emacs allows to define the
Dave Love <fx@gnu.org>
parents:
diff changeset
6450 same named face (face names are symbols) differently for different
Dave Love <fx@gnu.org>
parents:
diff changeset
6451 frames. Each frame has an alist of face definitions for all named
Dave Love <fx@gnu.org>
parents:
diff changeset
6452 faces. The value of a named face in such an alist is a Lisp vector
35863
534be6e166a6 Yet another bunch of typo fizes from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35862
diff changeset
6453 with the symbol `face' in slot 0, and a slot for each of the face
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6454 attributes mentioned above.
Dave Love <fx@gnu.org>
parents:
diff changeset
6455
Dave Love <fx@gnu.org>
parents:
diff changeset
6456 There is also a global face alist `face-new-frame-defaults'. Face
Dave Love <fx@gnu.org>
parents:
diff changeset
6457 definitions from this list are used to initialize faces of newly
Dave Love <fx@gnu.org>
parents:
diff changeset
6458 created frames.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6459
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6460 A face doesn't have to specify all attributes. Those not specified
Dave Love <fx@gnu.org>
parents:
diff changeset
6461 have a nil value. Faces specifying all attributes are called
Dave Love <fx@gnu.org>
parents:
diff changeset
6462 `fully-specified'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6463
Dave Love <fx@gnu.org>
parents:
diff changeset
6464 *** Face merging.
Dave Love <fx@gnu.org>
parents:
diff changeset
6465
Dave Love <fx@gnu.org>
parents:
diff changeset
6466 The display style of a given character in the text is determined by
Dave Love <fx@gnu.org>
parents:
diff changeset
6467 combining several faces. This process is called `face merging'. Any
Dave Love <fx@gnu.org>
parents:
diff changeset
6468 aspect of the display style that isn't specified by overlays or text
Dave Love <fx@gnu.org>
parents:
diff changeset
6469 properties is taken from the `default' face. Since it is made sure
Dave Love <fx@gnu.org>
parents:
diff changeset
6470 that the default face is always fully-specified, face merging always
Dave Love <fx@gnu.org>
parents:
diff changeset
6471 results in a fully-specified face.
Dave Love <fx@gnu.org>
parents:
diff changeset
6472
Dave Love <fx@gnu.org>
parents:
diff changeset
6473 *** Face realization.
Dave Love <fx@gnu.org>
parents:
diff changeset
6474
Dave Love <fx@gnu.org>
parents:
diff changeset
6475 After all face attributes for a character have been determined by
Dave Love <fx@gnu.org>
parents:
diff changeset
6476 merging faces of that character, that face is `realized'. The
Dave Love <fx@gnu.org>
parents:
diff changeset
6477 realization process maps face attributes to what is physically
Dave Love <fx@gnu.org>
parents:
diff changeset
6478 available on the system where Emacs runs. The result is a `realized
Dave Love <fx@gnu.org>
parents:
diff changeset
6479 face' in form of an internal structure which is stored in the face
Dave Love <fx@gnu.org>
parents:
diff changeset
6480 cache of the frame on which it was realized.
Dave Love <fx@gnu.org>
parents:
diff changeset
6481
Dave Love <fx@gnu.org>
parents:
diff changeset
6482 Face realization is done in the context of the charset of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6483 character to display because different fonts and encodings are used
Dave Love <fx@gnu.org>
parents:
diff changeset
6484 for different charsets. In other words, for characters of different
Dave Love <fx@gnu.org>
parents:
diff changeset
6485 charsets, different realized faces are needed to display them.
Dave Love <fx@gnu.org>
parents:
diff changeset
6486
Dave Love <fx@gnu.org>
parents:
diff changeset
6487 Except for composite characters, faces are always realized for a
Dave Love <fx@gnu.org>
parents:
diff changeset
6488 specific character set and contain a specific font, even if the face
Dave Love <fx@gnu.org>
parents:
diff changeset
6489 being realized specifies a fontset. The reason is that the result of
Dave Love <fx@gnu.org>
parents:
diff changeset
6490 the new font selection stage is better than what can be done with
Dave Love <fx@gnu.org>
parents:
diff changeset
6491 statically defined font name patterns in fontsets.
Dave Love <fx@gnu.org>
parents:
diff changeset
6492
Dave Love <fx@gnu.org>
parents:
diff changeset
6493 In unibyte text, Emacs' charsets aren't applicable; function
Dave Love <fx@gnu.org>
parents:
diff changeset
6494 `char-charset' reports ASCII for all characters, including those >
Dave Love <fx@gnu.org>
parents:
diff changeset
6495 0x7f. The X registry and encoding of fonts to use is determined from
Dave Love <fx@gnu.org>
parents:
diff changeset
6496 the variable `face-default-registry' in this case. The variable is
Dave Love <fx@gnu.org>
parents:
diff changeset
6497 initialized at Emacs startup time from the font the user specified for
Dave Love <fx@gnu.org>
parents:
diff changeset
6498 Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
6499
Dave Love <fx@gnu.org>
parents:
diff changeset
6500 Currently all unibyte text, i.e. all buffers with
Dave Love <fx@gnu.org>
parents:
diff changeset
6501 `enable-multibyte-characters' nil are displayed with fonts of the same
Dave Love <fx@gnu.org>
parents:
diff changeset
6502 registry and encoding `face-default-registry'. This is consistent
Dave Love <fx@gnu.org>
parents:
diff changeset
6503 with the fact that languages can also be set globally, only.
Dave Love <fx@gnu.org>
parents:
diff changeset
6504
Dave Love <fx@gnu.org>
parents:
diff changeset
6505 **** Clearing face caches.
Dave Love <fx@gnu.org>
parents:
diff changeset
6506
Dave Love <fx@gnu.org>
parents:
diff changeset
6507 The Lisp function `clear-face-cache' can be called to clear face caches
Dave Love <fx@gnu.org>
parents:
diff changeset
6508 on all frames. If called with a non-nil argument, it will also unload
Dave Love <fx@gnu.org>
parents:
diff changeset
6509 unused fonts.
Dave Love <fx@gnu.org>
parents:
diff changeset
6510
Dave Love <fx@gnu.org>
parents:
diff changeset
6511 *** Font selection.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6512
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6513 Font selection tries to find the best available matching font for a
Dave Love <fx@gnu.org>
parents:
diff changeset
6514 given (charset, face) combination. This is done slightly differently
Dave Love <fx@gnu.org>
parents:
diff changeset
6515 for faces specifying a fontset, or a font family name.
Dave Love <fx@gnu.org>
parents:
diff changeset
6516
Dave Love <fx@gnu.org>
parents:
diff changeset
6517 If the face specifies a fontset name, that fontset determines a
Dave Love <fx@gnu.org>
parents:
diff changeset
6518 pattern for fonts of the given charset. If the face specifies a font
Dave Love <fx@gnu.org>
parents:
diff changeset
6519 family, a font pattern is constructed. Charset symbols have a
Dave Love <fx@gnu.org>
parents:
diff changeset
6520 property `x-charset-registry' for that purpose that maps a charset to
Dave Love <fx@gnu.org>
parents:
diff changeset
6521 an XLFD registry and encoding in the font pattern constructed.
Dave Love <fx@gnu.org>
parents:
diff changeset
6522
Dave Love <fx@gnu.org>
parents:
diff changeset
6523 Available fonts on the system on which Emacs runs are then matched
Dave Love <fx@gnu.org>
parents:
diff changeset
6524 against the font pattern. The result of font selection is the best
Dave Love <fx@gnu.org>
parents:
diff changeset
6525 match for the given face attributes in this font list.
Dave Love <fx@gnu.org>
parents:
diff changeset
6526
Dave Love <fx@gnu.org>
parents:
diff changeset
6527 Font selection can be influenced by the user.
Dave Love <fx@gnu.org>
parents:
diff changeset
6528
Dave Love <fx@gnu.org>
parents:
diff changeset
6529 The user can specify the relative importance he gives the face
Dave Love <fx@gnu.org>
parents:
diff changeset
6530 attributes width, height, weight, and slant by setting
Dave Love <fx@gnu.org>
parents:
diff changeset
6531 face-font-selection-order (faces.el) to a list of face attribute
Dave Love <fx@gnu.org>
parents:
diff changeset
6532 names. The default is (:width :height :weight :slant), and means
Dave Love <fx@gnu.org>
parents:
diff changeset
6533 that font selection first tries to find a good match for the font
Dave Love <fx@gnu.org>
parents:
diff changeset
6534 width specified by a face, then---within fonts with that width---tries
Dave Love <fx@gnu.org>
parents:
diff changeset
6535 to find a best match for the specified font height, etc.
Dave Love <fx@gnu.org>
parents:
diff changeset
6536
33373
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
6537 Setting `face-font-family-alternatives' allows the user to specify
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
6538 alternative font families to try if a family specified by a face
35297
e268b7b500f0 Changes for makefile support in etags.
Francesco Potortì <pot@gnu.org>
parents: 35278
diff changeset
6539 doesn't exist.
34630
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6540
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6541 Setting `face-font-registry-alternatives' allows the user to specify
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
6542 all alternative font registry names to try for a face specifying a
34630
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6543 registry.
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6544
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
6545 Please note that the interpretations of the above two variables are
34630
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6546 slightly different.
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6547
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6548 Setting face-ignored-fonts allows the user to ignore specific fonts.
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6549
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6550
Dave Love <fx@gnu.org>
parents:
diff changeset
6551 **** Scalable fonts
Dave Love <fx@gnu.org>
parents:
diff changeset
6552
Dave Love <fx@gnu.org>
parents:
diff changeset
6553 Emacs can make use of scalable fonts but doesn't do so by default,
Dave Love <fx@gnu.org>
parents:
diff changeset
6554 since the use of too many or too big scalable fonts may crash XFree86
Dave Love <fx@gnu.org>
parents:
diff changeset
6555 servers.
Dave Love <fx@gnu.org>
parents:
diff changeset
6556
Dave Love <fx@gnu.org>
parents:
diff changeset
6557 To enable scalable font use, set the variable
26034
e7b463705814 Some typos fixed.
Gerd Moellmann <gerd@gnu.org>
parents: 26030
diff changeset
6558 `scalable-fonts-allowed'. A value of nil, the default, means never use
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6559 scalable fonts. A value of t means any scalable font may be used.
Dave Love <fx@gnu.org>
parents:
diff changeset
6560 Otherwise, the value must be a list of regular expressions. A
Dave Love <fx@gnu.org>
parents:
diff changeset
6561 scalable font may then be used if it matches a regular expression from
Dave Love <fx@gnu.org>
parents:
diff changeset
6562 that list. Example:
Dave Love <fx@gnu.org>
parents:
diff changeset
6563
Dave Love <fx@gnu.org>
parents:
diff changeset
6564 (setq scalable-fonts-allowed '("muleindian-2$"))
Dave Love <fx@gnu.org>
parents:
diff changeset
6565
Dave Love <fx@gnu.org>
parents:
diff changeset
6566 allows the use of scalable fonts with registry `muleindian-2'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6567
Dave Love <fx@gnu.org>
parents:
diff changeset
6568 *** Functions and variables related to font selection.
Dave Love <fx@gnu.org>
parents:
diff changeset
6569
Dave Love <fx@gnu.org>
parents:
diff changeset
6570 - Function: x-family-fonts &optional FAMILY FRAME
Dave Love <fx@gnu.org>
parents:
diff changeset
6571
Dave Love <fx@gnu.org>
parents:
diff changeset
6572 Return a list of available fonts of family FAMILY on FRAME. If FAMILY
Dave Love <fx@gnu.org>
parents:
diff changeset
6573 is omitted or nil, list all families. Otherwise, FAMILY must be a
Dave Love <fx@gnu.org>
parents:
diff changeset
6574 string, possibly containing wildcards `?' and `*'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6575
Dave Love <fx@gnu.org>
parents:
diff changeset
6576 If FRAME is omitted or nil, use the selected frame. Each element of
Dave Love <fx@gnu.org>
parents:
diff changeset
6577 the result is a vector [FAMILY WIDTH POINT-SIZE WEIGHT SLANT FIXED-P
Dave Love <fx@gnu.org>
parents:
diff changeset
6578 FULL REGISTRY-AND-ENCODING]. FAMILY is the font family name.
Dave Love <fx@gnu.org>
parents:
diff changeset
6579 POINT-SIZE is the size of the font in 1/10 pt. WIDTH, WEIGHT, and
Dave Love <fx@gnu.org>
parents:
diff changeset
6580 SLANT are symbols describing the width, weight and slant of the font.
Dave Love <fx@gnu.org>
parents:
diff changeset
6581 These symbols are the same as for face attributes. FIXED-P is non-nil
Dave Love <fx@gnu.org>
parents:
diff changeset
6582 if the font is fixed-pitch. FULL is the full name of the font, and
Dave Love <fx@gnu.org>
parents:
diff changeset
6583 REGISTRY-AND-ENCODING is a string giving the registry and encoding of
Dave Love <fx@gnu.org>
parents:
diff changeset
6584 the font. The result list is sorted according to the current setting
Dave Love <fx@gnu.org>
parents:
diff changeset
6585 of the face font sort order.
Dave Love <fx@gnu.org>
parents:
diff changeset
6586
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6587 - Function: x-font-family-list
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6588
Dave Love <fx@gnu.org>
parents:
diff changeset
6589 Return a list of available font families on FRAME. If FRAME is
Dave Love <fx@gnu.org>
parents:
diff changeset
6590 omitted or nil, use the selected frame. Value is a list of conses
Dave Love <fx@gnu.org>
parents:
diff changeset
6591 (FAMILY . FIXED-P) where FAMILY is a font family, and FIXED-P is
Dave Love <fx@gnu.org>
parents:
diff changeset
6592 non-nil if fonts of that family are fixed-pitch.
Dave Love <fx@gnu.org>
parents:
diff changeset
6593
Dave Love <fx@gnu.org>
parents:
diff changeset
6594 - Variable: font-list-limit
Dave Love <fx@gnu.org>
parents:
diff changeset
6595
Dave Love <fx@gnu.org>
parents:
diff changeset
6596 Limit for font matching. If an integer > 0, font matching functions
Dave Love <fx@gnu.org>
parents:
diff changeset
6597 won't load more than that number of fonts when searching for a
Dave Love <fx@gnu.org>
parents:
diff changeset
6598 matching font. The default is currently 100.
Dave Love <fx@gnu.org>
parents:
diff changeset
6599
Dave Love <fx@gnu.org>
parents:
diff changeset
6600 *** Setting face attributes.
Dave Love <fx@gnu.org>
parents:
diff changeset
6601
Dave Love <fx@gnu.org>
parents:
diff changeset
6602 For the most part, the new face implementation is interface-compatible
Dave Love <fx@gnu.org>
parents:
diff changeset
6603 with the old one. Old face attribute related functions are now
Dave Love <fx@gnu.org>
parents:
diff changeset
6604 implemented in terms of the new functions `set-face-attribute' and
Dave Love <fx@gnu.org>
parents:
diff changeset
6605 `face-attribute'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6606
Dave Love <fx@gnu.org>
parents:
diff changeset
6607 Face attributes are identified by their names which are keyword
Dave Love <fx@gnu.org>
parents:
diff changeset
6608 symbols. All attributes can be set to `unspecified'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6609
Dave Love <fx@gnu.org>
parents:
diff changeset
6610 The following attributes are recognized:
Dave Love <fx@gnu.org>
parents:
diff changeset
6611
Dave Love <fx@gnu.org>
parents:
diff changeset
6612 `:family'
Dave Love <fx@gnu.org>
parents:
diff changeset
6613
Dave Love <fx@gnu.org>
parents:
diff changeset
6614 VALUE must be a string specifying the font family, e.g. ``courier'',
Dave Love <fx@gnu.org>
parents:
diff changeset
6615 or a fontset alias name. If a font family is specified, wild-cards `*'
Dave Love <fx@gnu.org>
parents:
diff changeset
6616 and `?' are allowed.
Dave Love <fx@gnu.org>
parents:
diff changeset
6617
Dave Love <fx@gnu.org>
parents:
diff changeset
6618 `:width'
Dave Love <fx@gnu.org>
parents:
diff changeset
6619
Dave Love <fx@gnu.org>
parents:
diff changeset
6620 VALUE specifies the relative proportionate width of the font to use.
Dave Love <fx@gnu.org>
parents:
diff changeset
6621 It must be one of the symbols `ultra-condensed', `extra-condensed',
Dave Love <fx@gnu.org>
parents:
diff changeset
6622 `condensed', `semi-condensed', `normal', `semi-expanded', `expanded',
Dave Love <fx@gnu.org>
parents:
diff changeset
6623 `extra-expanded', or `ultra-expanded'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6624
Dave Love <fx@gnu.org>
parents:
diff changeset
6625 `:height'
Dave Love <fx@gnu.org>
parents:
diff changeset
6626
31183
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6627 VALUE must be either an integer specifying the height of the font to use
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6628 in 1/10 pt, a floating point number specifying the amount by which to
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6629 scale any underlying face, or a function, which is called with the old
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6630 height (from the underlying face), and should return the new height.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6631
Dave Love <fx@gnu.org>
parents:
diff changeset
6632 `:weight'
Dave Love <fx@gnu.org>
parents:
diff changeset
6633
Dave Love <fx@gnu.org>
parents:
diff changeset
6634 VALUE specifies the weight of the font to use. It must be one of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6635 symbols `ultra-bold', `extra-bold', `bold', `semi-bold', `normal',
Dave Love <fx@gnu.org>
parents:
diff changeset
6636 `semi-light', `light', `extra-light', `ultra-light'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6637
Dave Love <fx@gnu.org>
parents:
diff changeset
6638 `:slant'
Dave Love <fx@gnu.org>
parents:
diff changeset
6639
Dave Love <fx@gnu.org>
parents:
diff changeset
6640 VALUE specifies the slant of the font to use. It must be one of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6641 symbols `italic', `oblique', `normal', `reverse-italic', or
Dave Love <fx@gnu.org>
parents:
diff changeset
6642 `reverse-oblique'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6643
Dave Love <fx@gnu.org>
parents:
diff changeset
6644 `:foreground', `:background'
Dave Love <fx@gnu.org>
parents:
diff changeset
6645
Dave Love <fx@gnu.org>
parents:
diff changeset
6646 VALUE must be a color name, a string.
Dave Love <fx@gnu.org>
parents:
diff changeset
6647
Dave Love <fx@gnu.org>
parents:
diff changeset
6648 `:underline'
Dave Love <fx@gnu.org>
parents:
diff changeset
6649
Dave Love <fx@gnu.org>
parents:
diff changeset
6650 VALUE specifies whether characters in FACE should be underlined. If
Dave Love <fx@gnu.org>
parents:
diff changeset
6651 VALUE is t, underline with foreground color of the face. If VALUE is
Dave Love <fx@gnu.org>
parents:
diff changeset
6652 a string, underline with that color. If VALUE is nil, explicitly
Dave Love <fx@gnu.org>
parents:
diff changeset
6653 don't underline.
Dave Love <fx@gnu.org>
parents:
diff changeset
6654
Dave Love <fx@gnu.org>
parents:
diff changeset
6655 `:overline'
Dave Love <fx@gnu.org>
parents:
diff changeset
6656
Dave Love <fx@gnu.org>
parents:
diff changeset
6657 VALUE specifies whether characters in FACE should be overlined. If
Dave Love <fx@gnu.org>
parents:
diff changeset
6658 VALUE is t, overline with foreground color of the face. If VALUE is a
Dave Love <fx@gnu.org>
parents:
diff changeset
6659 string, overline with that color. If VALUE is nil, explicitly don't
Dave Love <fx@gnu.org>
parents:
diff changeset
6660 overline.
Dave Love <fx@gnu.org>
parents:
diff changeset
6661
Dave Love <fx@gnu.org>
parents:
diff changeset
6662 `:strike-through'
Dave Love <fx@gnu.org>
parents:
diff changeset
6663
Dave Love <fx@gnu.org>
parents:
diff changeset
6664 VALUE specifies whether characters in FACE should be drawn with a line
Dave Love <fx@gnu.org>
parents:
diff changeset
6665 striking through them. If VALUE is t, use the foreground color of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6666 face. If VALUE is a string, strike-through with that color. If VALUE
Dave Love <fx@gnu.org>
parents:
diff changeset
6667 is nil, explicitly don't strike through.
Dave Love <fx@gnu.org>
parents:
diff changeset
6668
Dave Love <fx@gnu.org>
parents:
diff changeset
6669 `:box'
Dave Love <fx@gnu.org>
parents:
diff changeset
6670
Dave Love <fx@gnu.org>
parents:
diff changeset
6671 VALUE specifies whether characters in FACE should have a box drawn
Dave Love <fx@gnu.org>
parents:
diff changeset
6672 around them. If VALUE is nil, explicitly don't draw boxes. If
Dave Love <fx@gnu.org>
parents:
diff changeset
6673 VALUE is t, draw a box with lines of width 1 in the foreground color
Dave Love <fx@gnu.org>
parents:
diff changeset
6674 of the face. If VALUE is a string, the string must be a color name,
Dave Love <fx@gnu.org>
parents:
diff changeset
6675 and the box is drawn in that color with a line width of 1. Otherwise,
Dave Love <fx@gnu.org>
parents:
diff changeset
6676 VALUE must be a property list of the form `(:line-width WIDTH
Dave Love <fx@gnu.org>
parents:
diff changeset
6677 :color COLOR :style STYLE)'. If a keyword/value pair is missing from
Dave Love <fx@gnu.org>
parents:
diff changeset
6678 the property list, a default value will be used for the value, as
Dave Love <fx@gnu.org>
parents:
diff changeset
6679 specified below. WIDTH specifies the width of the lines to draw; it
Dave Love <fx@gnu.org>
parents:
diff changeset
6680 defaults to 1. COLOR is the name of the color to draw in, default is
Dave Love <fx@gnu.org>
parents:
diff changeset
6681 the foreground color of the face for simple boxes, and the background
Dave Love <fx@gnu.org>
parents:
diff changeset
6682 color of the face for 3D boxes. STYLE specifies whether a 3D box
Dave Love <fx@gnu.org>
parents:
diff changeset
6683 should be draw. If STYLE is `released-button', draw a box looking
Dave Love <fx@gnu.org>
parents:
diff changeset
6684 like a released 3D button. If STYLE is `pressed-button' draw a box
Dave Love <fx@gnu.org>
parents:
diff changeset
6685 that appears like a pressed button. If STYLE is nil, the default if
Dave Love <fx@gnu.org>
parents:
diff changeset
6686 the property list doesn't contain a style specification, draw a 2D
Dave Love <fx@gnu.org>
parents:
diff changeset
6687 box.
Dave Love <fx@gnu.org>
parents:
diff changeset
6688
Dave Love <fx@gnu.org>
parents:
diff changeset
6689 `:inverse-video'
Dave Love <fx@gnu.org>
parents:
diff changeset
6690
Dave Love <fx@gnu.org>
parents:
diff changeset
6691 VALUE specifies whether characters in FACE should be displayed in
Dave Love <fx@gnu.org>
parents:
diff changeset
6692 inverse video. VALUE must be one of t or nil.
Dave Love <fx@gnu.org>
parents:
diff changeset
6693
Dave Love <fx@gnu.org>
parents:
diff changeset
6694 `:stipple'
Dave Love <fx@gnu.org>
parents:
diff changeset
6695
Dave Love <fx@gnu.org>
parents:
diff changeset
6696 If VALUE is a string, it must be the name of a file of pixmap data.
Dave Love <fx@gnu.org>
parents:
diff changeset
6697 The directories listed in the `x-bitmap-file-path' variable are
Dave Love <fx@gnu.org>
parents:
diff changeset
6698 searched. Alternatively, VALUE may be a list of the form (WIDTH
Dave Love <fx@gnu.org>
parents:
diff changeset
6699 HEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA
Dave Love <fx@gnu.org>
parents:
diff changeset
6700 is a string containing the raw bits of the bitmap. VALUE nil means
Dave Love <fx@gnu.org>
parents:
diff changeset
6701 explicitly don't use a stipple pattern.
Dave Love <fx@gnu.org>
parents:
diff changeset
6702
Dave Love <fx@gnu.org>
parents:
diff changeset
6703 For convenience, attributes `:family', `:width', `:height', `:weight',
Dave Love <fx@gnu.org>
parents:
diff changeset
6704 and `:slant' may also be set in one step from an X font name:
Dave Love <fx@gnu.org>
parents:
diff changeset
6705
Dave Love <fx@gnu.org>
parents:
diff changeset
6706 `:font'
Dave Love <fx@gnu.org>
parents:
diff changeset
6707
Dave Love <fx@gnu.org>
parents:
diff changeset
6708 Set font-related face attributes from VALUE. VALUE must be a valid
Dave Love <fx@gnu.org>
parents:
diff changeset
6709 XLFD font name. If it is a font name pattern, the first matching font
Dave Love <fx@gnu.org>
parents:
diff changeset
6710 is used--this is for compatibility with the behavior of previous
Dave Love <fx@gnu.org>
parents:
diff changeset
6711 versions of Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
6712
Dave Love <fx@gnu.org>
parents:
diff changeset
6713 For compatibility with Emacs 20, keywords `:bold' and `:italic' can
Dave Love <fx@gnu.org>
parents:
diff changeset
6714 be used to specify that a bold or italic font should be used. VALUE
Dave Love <fx@gnu.org>
parents:
diff changeset
6715 must be t or nil in that case. A value of `unspecified' is not allowed."
Dave Love <fx@gnu.org>
parents:
diff changeset
6716
Dave Love <fx@gnu.org>
parents:
diff changeset
6717 Please see also the documentation of `set-face-attribute' and
Dave Love <fx@gnu.org>
parents:
diff changeset
6718 `defface'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6719
31183
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6720 `:inherit'
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6721
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6722 VALUE is the name of a face from which to inherit attributes, or a list
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6723 of face names. Attributes from inherited faces are merged into the face
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6724 like an underlying face would be, with higher priority than underlying faces.
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6725
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6726 *** Face attributes and X resources
Dave Love <fx@gnu.org>
parents:
diff changeset
6727
Dave Love <fx@gnu.org>
parents:
diff changeset
6728 The following X resource names can be used to set face attributes
Dave Love <fx@gnu.org>
parents:
diff changeset
6729 from X resources:
Dave Love <fx@gnu.org>
parents:
diff changeset
6730
Dave Love <fx@gnu.org>
parents:
diff changeset
6731 Face attribute X resource class
Dave Love <fx@gnu.org>
parents:
diff changeset
6732 -----------------------------------------------------------------------
Dave Love <fx@gnu.org>
parents:
diff changeset
6733 :family attributeFamily . Face.AttributeFamily
Dave Love <fx@gnu.org>
parents:
diff changeset
6734 :width attributeWidth Face.AttributeWidth
Dave Love <fx@gnu.org>
parents:
diff changeset
6735 :height attributeHeight Face.AttributeHeight
Dave Love <fx@gnu.org>
parents:
diff changeset
6736 :weight attributeWeight Face.AttributeWeight
Dave Love <fx@gnu.org>
parents:
diff changeset
6737 :slant attributeSlant Face.AttributeSlant
Dave Love <fx@gnu.org>
parents:
diff changeset
6738 foreground attributeForeground Face.AttributeForeground
Dave Love <fx@gnu.org>
parents:
diff changeset
6739 :background attributeBackground . Face.AttributeBackground
Dave Love <fx@gnu.org>
parents:
diff changeset
6740 :overline attributeOverline Face.AttributeOverline
Dave Love <fx@gnu.org>
parents:
diff changeset
6741 :strike-through attributeStrikeThrough Face.AttributeStrikeThrough
Dave Love <fx@gnu.org>
parents:
diff changeset
6742 :box attributeBox Face.AttributeBox
Dave Love <fx@gnu.org>
parents:
diff changeset
6743 :underline attributeUnderline Face.AttributeUnderline
Dave Love <fx@gnu.org>
parents:
diff changeset
6744 :inverse-video attributeInverse Face.AttributeInverse
Dave Love <fx@gnu.org>
parents:
diff changeset
6745 :stipple attributeStipple Face.AttributeStipple
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6746 or attributeBackgroundPixmap
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6747 Face.AttributeBackgroundPixmap
Dave Love <fx@gnu.org>
parents:
diff changeset
6748 :font attributeFont Face.AttributeFont
Dave Love <fx@gnu.org>
parents:
diff changeset
6749 :bold attributeBold Face.AttributeBold
Dave Love <fx@gnu.org>
parents:
diff changeset
6750 :italic attributeItalic . Face.AttributeItalic
Dave Love <fx@gnu.org>
parents:
diff changeset
6751 :font attributeFont Face.AttributeFont
Dave Love <fx@gnu.org>
parents:
diff changeset
6752
Dave Love <fx@gnu.org>
parents:
diff changeset
6753 *** Text property `face'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6754
Dave Love <fx@gnu.org>
parents:
diff changeset
6755 The value of the `face' text property can now be a single face
Dave Love <fx@gnu.org>
parents:
diff changeset
6756 specification or a list of such specifications. Each face
Dave Love <fx@gnu.org>
parents:
diff changeset
6757 specification can be
Dave Love <fx@gnu.org>
parents:
diff changeset
6758
Dave Love <fx@gnu.org>
parents:
diff changeset
6759 1. A symbol or string naming a Lisp face.
Dave Love <fx@gnu.org>
parents:
diff changeset
6760
Dave Love <fx@gnu.org>
parents:
diff changeset
6761 2. A property list of the form (KEYWORD VALUE ...) where each
Dave Love <fx@gnu.org>
parents:
diff changeset
6762 KEYWORD is a face attribute name, and VALUE is an appropriate value
Dave Love <fx@gnu.org>
parents:
diff changeset
6763 for that attribute. Please see the doc string of `set-face-attribute'
Dave Love <fx@gnu.org>
parents:
diff changeset
6764 for face attribute names.
Dave Love <fx@gnu.org>
parents:
diff changeset
6765
Dave Love <fx@gnu.org>
parents:
diff changeset
6766 3. Conses of the form (FOREGROUND-COLOR . COLOR) or
Dave Love <fx@gnu.org>
parents:
diff changeset
6767 (BACKGROUND-COLOR . COLOR) where COLOR is a color name. This is
Dave Love <fx@gnu.org>
parents:
diff changeset
6768 for compatibility with previous Emacs versions.
Dave Love <fx@gnu.org>
parents:
diff changeset
6769
Dave Love <fx@gnu.org>
parents:
diff changeset
6770 ** Support functions for colors on text-only terminals.
Dave Love <fx@gnu.org>
parents:
diff changeset
6771
27092
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6772 The function `tty-color-define' can be used to define colors for use
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6773 on TTY and MSDOS frames. It maps a color name to a color number on
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6774 the terminal. Emacs defines a couple of common color mappings by
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6775 default. You can get defined colors with a call to
27092
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6776 `defined-colors'. The function `tty-color-clear' can be
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6777 used to clear the mapping table.
Dave Love <fx@gnu.org>
parents:
diff changeset
6778
27092
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6779 ** Unified support for colors independent of frame type.
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6780
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6781 The new functions `defined-colors', `color-defined-p', `color-values',
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6782 and `display-color-p' work for any type of frame. On frames whose
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6783 type is neither x nor w32, these functions transparently map X-style
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6784 color specifications to the closest colors supported by the frame
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6785 display. Lisp programs should use these new functions instead of the
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6786 old `x-defined-colors', `x-color-defined-p', `x-color-values', and
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6787 `x-display-color-p'. (The old function names are still available for
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6788 compatibility; they are now aliases of the new names.) Lisp programs
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6789 should no more look at the value of the variable window-system to
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6790 modify their color-related behavior.
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6791
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6792 The primitives `color-gray-p' and `color-supported-p' also work for
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6793 any frame type.
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6794
27573
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6795 ** Platform-independent functions to describe display capabilities.
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6796
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6797 The new functions `display-mouse-p', `display-popup-menus-p',
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6798 `display-graphic-p', `display-selections-p', `display-screens',
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6799 `display-pixel-width', `display-pixel-height', `display-mm-width',
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6800 `display-mm-height', `display-backing-store', `display-save-under',
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6801 `display-planes', `display-color-cells', `display-visual-class', and
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6802 `display-grayscale-p' describe the basic capabilities of a particular
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6803 display. Lisp programs should call these functions instead of testing
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6804 the value of the variables `window-system' or `system-type', or calling
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6805 platform-specific functions such as `x-display-pixel-width'.
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6806
38471
83fa544a8070 Document display-images-p.
Eli Zaretskii <eliz@gnu.org>
parents: 38468
diff changeset
6807 The new function `display-images-p' returns non-nil if a particular
83fa544a8070 Document display-images-p.
Eli Zaretskii <eliz@gnu.org>
parents: 38468
diff changeset
6808 display can display image files.
83fa544a8070 Document display-images-p.
Eli Zaretskii <eliz@gnu.org>
parents: 38468
diff changeset
6809
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6810 ** The minibuffer prompt is now actually inserted in the minibuffer.
26062
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6811
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6812 This makes it possible to scroll through the prompt, if you want to.
33693
efa325b58d74 Mention that `minibuffer-prompt-properties' can be used to disallow
Miles Bader <miles@gnu.org>
parents: 33627
diff changeset
6813 To disallow this completely (like previous versions of emacs), customize
efa325b58d74 Mention that `minibuffer-prompt-properties' can be used to disallow
Miles Bader <miles@gnu.org>
parents: 33627
diff changeset
6814 the variable `minibuffer-prompt-properties', and turn on the
efa325b58d74 Mention that `minibuffer-prompt-properties' can be used to disallow
Miles Bader <miles@gnu.org>
parents: 33627
diff changeset
6815 `Inviolable' option.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6816
43184
de686446afd2 Fix description of minibuffer-prompt-end.
Andreas Schwab <schwab@suse.de>
parents: 43159
diff changeset
6817 The function `minibuffer-prompt-end' returns the current position of the
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6818 end of the minibuffer prompt, if the minibuffer is current.
43184
de686446afd2 Fix description of minibuffer-prompt-end.
Andreas Schwab <schwab@suse.de>
parents: 43159
diff changeset
6819 Otherwise, it returns `(point-min)'.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6820
26062
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6821 ** New `field' abstraction in buffers.
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6822
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6823 There is now code to support an abstraction called `fields' in emacs
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6824 buffers. A field is a contiguous region of text with the same `field'
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6825 property (which can be a text property or an overlay).
26062
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6826
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6827 Many emacs functions, such as forward-word, forward-sentence,
26062
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6828 forward-paragraph, beginning-of-line, etc., stop moving when they come
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6829 to the boundary between fields; beginning-of-line and end-of-line will
26062
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6830 not let the point move past the field boundary, but other movement
27144
46becbc67703 inhibit-field-text-motion
Gerd Moellmann <gerd@gnu.org>
parents: 27136
diff changeset
6831 commands continue into the next field if repeated. Stopping at field
46becbc67703 inhibit-field-text-motion
Gerd Moellmann <gerd@gnu.org>
parents: 27136
diff changeset
6832 boundaries can be suppressed programmatically by binding
46becbc67703 inhibit-field-text-motion
Gerd Moellmann <gerd@gnu.org>
parents: 27136
diff changeset
6833 `inhibit-field-text-motion' to a non-nil value around calls to these
46becbc67703 inhibit-field-text-motion
Gerd Moellmann <gerd@gnu.org>
parents: 27136
diff changeset
6834 functions.
26062
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6835
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6836 Now that the minibuffer prompt is inserted into the minibuffer, it is in
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6837 a separate field from the user-input part of the buffer, so that common
26062
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6838 editing commands treat the user's text separately from the prompt.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6839
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6840 The following functions are defined for operating on fields:
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6841
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6842 - Function: constrain-to-field NEW-POS OLD-POS &optional ESCAPE-FROM-EDGE ONLY-IN-LINE INHIBIT-CAPTURE-PROPERTY
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6843
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6844 Return the position closest to NEW-POS that is in the same field as OLD-POS.
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6845
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6846 A field is a region of text with the same `field' property.
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6847 If NEW-POS is nil, then the current point is used instead, and set to the
35847
83b8f5ad1f97 Several typos fixed. From Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35784
diff changeset
6848 constrained position if that is different.
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6849
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6850 If OLD-POS is at the boundary of two fields, then the allowable
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6851 positions for NEW-POS depends on the value of the optional argument
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6852 ESCAPE-FROM-EDGE: If ESCAPE-FROM-EDGE is nil, then NEW-POS is
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6853 constrained to the field that has the same `field' char-property
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6854 as any new characters inserted at OLD-POS, whereas if ESCAPE-FROM-EDGE
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6855 is non-nil, NEW-POS is constrained to the union of the two adjacent
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6856 fields. Additionally, if two fields are separated by another field with
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6857 the special value `boundary', then any point within this special field is
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6858 also considered to be `on the boundary'.
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6859
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6860 If the optional argument ONLY-IN-LINE is non-nil and constraining
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6861 NEW-POS would move it to a different line, NEW-POS is returned
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6862 unconstrained. This useful for commands that move by line, like
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6863 C-n or C-a, which should generally respect field boundaries
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6864 only in the case where they can still move to the right line.
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6865
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6866 If the optional argument INHIBIT-CAPTURE-PROPERTY is non-nil, and OLD-POS has
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6867 a non-nil property of that name, then any field boundaries are ignored.
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6868
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6869 Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil.
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6870
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6871 - Function: delete-field &optional POS
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6872
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6873 Delete the field surrounding POS.
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6874 A field is a region of text with the same `field' property.
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6875 If POS is nil, the value of point is used for POS.
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6876
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6877 - Function: field-beginning &optional POS ESCAPE-FROM-EDGE
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6878
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6879 Return the beginning of the field surrounding POS.
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6880 A field is a region of text with the same `field' property.
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6881 If POS is nil, the value of point is used for POS.
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6882 If ESCAPE-FROM-EDGE is non-nil and POS is at the beginning of its
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6883 field, then the beginning of the *previous* field is returned.
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6884
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6885 - Function: field-end &optional POS ESCAPE-FROM-EDGE
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6886
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6887 Return the end of the field surrounding POS.
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6888 A field is a region of text with the same `field' property.
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6889 If POS is nil, the value of point is used for POS.
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6890 If ESCAPE-FROM-EDGE is non-nil and POS is at the end of its field,
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6891 then the end of the *following* field is returned.
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6892
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6893 - Function: field-string &optional POS
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6894
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6895 Return the contents of the field surrounding POS as a string.
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6896 A field is a region of text with the same `field' property.
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6897 If POS is nil, the value of point is used for POS.
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6898
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6899 - Function: field-string-no-properties &optional POS
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6900
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6901 Return the contents of the field around POS, without text-properties.
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6902 A field is a region of text with the same `field' property.
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6903 If POS is nil, the value of point is used for POS.
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6904
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6905 ** Image support.
Dave Love <fx@gnu.org>
parents:
diff changeset
6906
Dave Love <fx@gnu.org>
parents:
diff changeset
6907 Emacs can now display images. Images are inserted into text by giving
Dave Love <fx@gnu.org>
parents:
diff changeset
6908 strings or buffer text a `display' text property containing one of
Dave Love <fx@gnu.org>
parents:
diff changeset
6909 (AREA IMAGE) or IMAGE. The display of the `display' property value
Dave Love <fx@gnu.org>
parents:
diff changeset
6910 replaces the display of the characters having that property.
Dave Love <fx@gnu.org>
parents:
diff changeset
6911
Dave Love <fx@gnu.org>
parents:
diff changeset
6912 If the property value has the form (AREA IMAGE), AREA must be one of
Dave Love <fx@gnu.org>
parents:
diff changeset
6913 `(margin left-margin)', `(margin right-margin)' or `(margin nil)'. If
Dave Love <fx@gnu.org>
parents:
diff changeset
6914 AREA is `(margin nil)', IMAGE will be displayed in the text area of a
Dave Love <fx@gnu.org>
parents:
diff changeset
6915 window, otherwise it will be displayed in the left or right marginal
Dave Love <fx@gnu.org>
parents:
diff changeset
6916 area.
Dave Love <fx@gnu.org>
parents:
diff changeset
6917
Dave Love <fx@gnu.org>
parents:
diff changeset
6918 IMAGE is an image specification.
Dave Love <fx@gnu.org>
parents:
diff changeset
6919
Dave Love <fx@gnu.org>
parents:
diff changeset
6920 *** Image specifications
Dave Love <fx@gnu.org>
parents:
diff changeset
6921
Dave Love <fx@gnu.org>
parents:
diff changeset
6922 Image specifications are lists of the form `(image PROPS)' where PROPS
Dave Love <fx@gnu.org>
parents:
diff changeset
6923 is a property list whose keys are keyword symbols. Each
Dave Love <fx@gnu.org>
parents:
diff changeset
6924 specifications must contain a property `:type TYPE' with TYPE being a
26403
03830fdf5186 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26397
diff changeset
6925 symbol specifying the image type, e.g. `xbm'. Properties not
03830fdf5186 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26397
diff changeset
6926 described below are ignored.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6927
Dave Love <fx@gnu.org>
parents:
diff changeset
6928 The following is a list of properties all image types share.
Dave Love <fx@gnu.org>
parents:
diff changeset
6929
Dave Love <fx@gnu.org>
parents:
diff changeset
6930 `:ascent ASCENT'
Dave Love <fx@gnu.org>
parents:
diff changeset
6931
28789
b69d5f20b837 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28776
diff changeset
6932 ASCENT must be a number in the range 0..100, or the symbol `center'.
b69d5f20b837 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28776
diff changeset
6933 If it is a number, it specifies the percentage of the image's height
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
6934 to use for its ascent.
28789
b69d5f20b837 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28776
diff changeset
6935
b69d5f20b837 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28776
diff changeset
6936 If not specified, ASCENT defaults to the value 50 which means that the
b69d5f20b837 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28776
diff changeset
6937 image will be centered with the base line of the row it appears in.
b69d5f20b837 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28776
diff changeset
6938
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
6939 If ASCENT is `center' the image is vertically centered around a
29151
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6940 centerline which is the vertical center of text drawn at the position
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6941 of the image, in the manner specified by the text properties and
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6942 overlays that apply to the image.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6943
Dave Love <fx@gnu.org>
parents:
diff changeset
6944 `:margin MARGIN'
Dave Love <fx@gnu.org>
parents:
diff changeset
6945
35278
80050ac10dbf *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35250
diff changeset
6946 MARGIN must be either a number >= 0 specifying how many pixels to put
80050ac10dbf *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35250
diff changeset
6947 as margin around the image, or a pair (X . Y) with X specifying the
80050ac10dbf *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35250
diff changeset
6948 horizontal margin and Y specifying the vertical margin. Default is 0.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6949
Dave Love <fx@gnu.org>
parents:
diff changeset
6950 `:relief RELIEF'
Dave Love <fx@gnu.org>
parents:
diff changeset
6951
Dave Love <fx@gnu.org>
parents:
diff changeset
6952 RELIEF is analogous to the `:relief' attribute of faces. Puts a relief
Dave Love <fx@gnu.org>
parents:
diff changeset
6953 around an image.
Dave Love <fx@gnu.org>
parents:
diff changeset
6954
35364
19c93f3ebdce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35326
diff changeset
6955 `:conversion ALGO'
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6956
31636
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6957 Apply an image algorithm to the image before displaying it.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6958
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6959 ALGO `laplace' or `emboss' means apply a Laplace or ``emboss''
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6960 edge-detection algorithm to the image.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6961
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6962 ALGO `(edge-detection :matrix MATRIX :color-adjust ADJUST)' means
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6963 apply a general edge-detection algorithm. MATRIX must be either a
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6964 nine-element list or a nine-element vector of numbers. A pixel at
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6965 position x/y in the transformed image is computed from original pixels
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6966 around that position. MATRIX specifies, for each pixel in the
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6967 neighborhood of x/y, a factor with which that pixel will influence the
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6968 transformed pixel; element 0 specifies the factor for the pixel at
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6969 x-1/y-1, element 1 the factor for the pixel at x/y-1 etc. as shown
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6970 below.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6971
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6972 (x-1/y-1 x/y-1 x+1/y-1
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6973 x-1/y x/y x+1/y
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6974 x-1/y+1 x/y+1 x+1/y+1)
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6975
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6976 The resulting pixel is computed from the color intensity of the color
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6977 resulting from summing up the RGB values of surrounding pixels,
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6978 multiplied by the specified factors, and dividing that sum by the sum
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6979 of the factors' absolute values.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6980
31858
269d69b69fe4 Update hideshow.el section.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 31827
diff changeset
6981 Laplace edge-detection currently uses a matrix of
31636
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6982
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6983 (1 0 0
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6984 0 0 0
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6985 9 9 -1)
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6986
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6987 Emboss edge-detection uses a matrix of
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6988
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6989 ( 2 -1 0
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6990 -1 0 1
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6991 0 1 -2)
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6992
31728
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
6993 ALGO `disabled' means transform the image so that it looks
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
6994 ``disabled''.
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
6995
31636
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6996 `:mask MASK'
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6997
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6998 If MASK is `heuristic' or `(heuristic BG)', build a clipping mask for
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6999 the image, so that the background of a frame is visible behind the
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
7000 image. If BG is not specified, or if BG is t, determine the
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
7001 background color of the image by looking at the 4 corners of the
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
7002 image, assuming the most frequently occurring color from the corners is
31636
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
7003 the background color of the image. Otherwise, BG must be a list `(RED
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
7004 GREEN BLUE)' specifying the color to assume for the background of the
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
7005 image.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
7006
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
7007 If MASK is nil, remove a mask from the image, if it has one. Images
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
7008 in some formats include a mask which can be removed by specifying
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
7009 `:mask nil'.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7010
Dave Love <fx@gnu.org>
parents:
diff changeset
7011 `:file FILE'
Dave Love <fx@gnu.org>
parents:
diff changeset
7012
Dave Love <fx@gnu.org>
parents:
diff changeset
7013 Load image from FILE. If FILE is not absolute after expanding it,
Dave Love <fx@gnu.org>
parents:
diff changeset
7014 search for the image in `data-directory'. Some image types support
Dave Love <fx@gnu.org>
parents:
diff changeset
7015 building images from data. When this is done, no `:file' property
Dave Love <fx@gnu.org>
parents:
diff changeset
7016 may be present in the image specification.
Dave Love <fx@gnu.org>
parents:
diff changeset
7017
27076
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
7018 `:data DATA'
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
7019
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
7020 Get image data from DATA. (As of this writing, this is not yet
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
7021 supported for image type `postscript'). Either :file or :data may be
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
7022 present in an image specification, but not both. All image types
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
7023 support strings as DATA, some types allow additional types of DATA.
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
7024
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7025 *** Supported image types
Dave Love <fx@gnu.org>
parents:
diff changeset
7026
26034
e7b463705814 Some typos fixed.
Gerd Moellmann <gerd@gnu.org>
parents: 26030
diff changeset
7027 **** XBM, image type `xbm'.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7028
Dave Love <fx@gnu.org>
parents:
diff changeset
7029 XBM images don't require an external library. Additional image
49520
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7030 properties supported are:
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7031
Dave Love <fx@gnu.org>
parents:
diff changeset
7032 `:foreground FG'
Dave Love <fx@gnu.org>
parents:
diff changeset
7033
37948
3025939a637d Add that PBM and XPM image specs may have :foreground nil, and
Gerd Moellmann <gerd@gnu.org>
parents: 37933
diff changeset
7034 FG must be a string specifying the image foreground color, or nil
49520
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7035 meaning to use the default. Default is the frame's foreground color.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7036
32572
99b7b88db80c Fix a typo.
Eli Zaretskii <eliz@gnu.org>
parents: 32551
diff changeset
7037 `:background BG'
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7038
49520
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7039 BG must be a string specifying the image background color, or nil
37948
3025939a637d Add that PBM and XPM image specs may have :foreground nil, and
Gerd Moellmann <gerd@gnu.org>
parents: 37933
diff changeset
7040 meaning to use the default. Default is the frame's background color.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7041
Dave Love <fx@gnu.org>
parents:
diff changeset
7042 XBM images can be constructed from data instead of file. In this
Dave Love <fx@gnu.org>
parents:
diff changeset
7043 case, the image specification must contain the following properties
Dave Love <fx@gnu.org>
parents:
diff changeset
7044 instead of a `:file' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7045
Dave Love <fx@gnu.org>
parents:
diff changeset
7046 `:width WIDTH'
Dave Love <fx@gnu.org>
parents:
diff changeset
7047
Dave Love <fx@gnu.org>
parents:
diff changeset
7048 WIDTH specifies the width of the image in pixels.
Dave Love <fx@gnu.org>
parents:
diff changeset
7049
Dave Love <fx@gnu.org>
parents:
diff changeset
7050 `:height HEIGHT'
Dave Love <fx@gnu.org>
parents:
diff changeset
7051
Dave Love <fx@gnu.org>
parents:
diff changeset
7052 HEIGHT specifies the height of the image in pixels.
Dave Love <fx@gnu.org>
parents:
diff changeset
7053
Dave Love <fx@gnu.org>
parents:
diff changeset
7054 `:data DATA'
Dave Love <fx@gnu.org>
parents:
diff changeset
7055
Dave Love <fx@gnu.org>
parents:
diff changeset
7056 DATA must be either
Dave Love <fx@gnu.org>
parents:
diff changeset
7057
Dave Love <fx@gnu.org>
parents:
diff changeset
7058 1. a string large enough to hold the bitmap data, i.e. it must
Dave Love <fx@gnu.org>
parents:
diff changeset
7059 have a size >= (WIDTH + 7) / 8 * HEIGHT
Dave Love <fx@gnu.org>
parents:
diff changeset
7060
Dave Love <fx@gnu.org>
parents:
diff changeset
7061 2. a bool-vector of size >= WIDTH * HEIGHT
Dave Love <fx@gnu.org>
parents:
diff changeset
7062
Dave Love <fx@gnu.org>
parents:
diff changeset
7063 3. a vector of strings or bool-vectors, one for each line of the
Dave Love <fx@gnu.org>
parents:
diff changeset
7064 bitmap.
Dave Love <fx@gnu.org>
parents:
diff changeset
7065
28748
6d96f2643b05 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28724
diff changeset
7066 4. a string that's an in-memory XBM file. Neither width nor
6d96f2643b05 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28724
diff changeset
7067 height may be specified in this case because these are defined
6d96f2643b05 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28724
diff changeset
7068 in the file.
6d96f2643b05 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28724
diff changeset
7069
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7070 **** XPM, image type `xpm'
Dave Love <fx@gnu.org>
parents:
diff changeset
7071
Dave Love <fx@gnu.org>
parents:
diff changeset
7072 XPM images require the external library `libXpm', package
Dave Love <fx@gnu.org>
parents:
diff changeset
7073 `xpm-3.4k.tar.gz', version 3.4k or later. Make sure the library is
Dave Love <fx@gnu.org>
parents:
diff changeset
7074 found when Emacs is configured by supplying appropriate paths via
Dave Love <fx@gnu.org>
parents:
diff changeset
7075 `--x-includes' and `--x-libraries'.
Dave Love <fx@gnu.org>
parents:
diff changeset
7076
Dave Love <fx@gnu.org>
parents:
diff changeset
7077 Additional image properties supported are:
Dave Love <fx@gnu.org>
parents:
diff changeset
7078
Dave Love <fx@gnu.org>
parents:
diff changeset
7079 `:color-symbols SYMBOLS'
Dave Love <fx@gnu.org>
parents:
diff changeset
7080
Dave Love <fx@gnu.org>
parents:
diff changeset
7081 SYMBOLS must be a list of pairs (NAME . COLOR), with NAME being the
Dave Love <fx@gnu.org>
parents:
diff changeset
7082 name of color as it appears in an XPM file, and COLOR being an X color
Dave Love <fx@gnu.org>
parents:
diff changeset
7083 name.
Dave Love <fx@gnu.org>
parents:
diff changeset
7084
Dave Love <fx@gnu.org>
parents:
diff changeset
7085 XPM images can be built from memory instead of files. In that case,
Dave Love <fx@gnu.org>
parents:
diff changeset
7086 add a `:data' property instead of a `:file' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7087
Dave Love <fx@gnu.org>
parents:
diff changeset
7088 The XPM library uses libz in its implementation so that it is able
Dave Love <fx@gnu.org>
parents:
diff changeset
7089 to display compressed images.
Dave Love <fx@gnu.org>
parents:
diff changeset
7090
Dave Love <fx@gnu.org>
parents:
diff changeset
7091 **** PBM, image type `pbm'
Dave Love <fx@gnu.org>
parents:
diff changeset
7092
Dave Love <fx@gnu.org>
parents:
diff changeset
7093 PBM images don't require an external library. Color, gray-scale and
32551
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7094 mono images are supported. Additional image properties supported for
49520
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7095 mono images are:
32551
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7096
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7097 `:foreground FG'
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7098
37948
3025939a637d Add that PBM and XPM image specs may have :foreground nil, and
Gerd Moellmann <gerd@gnu.org>
parents: 37933
diff changeset
7099 FG must be a string specifying the image foreground color, or nil
49520
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7100 meaning to use the default. Default is the frame's foreground color.
32551
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7101
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7102 `:background FG'
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7103
49520
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7104 BG must be a string specifying the image background color, or nil
37948
3025939a637d Add that PBM and XPM image specs may have :foreground nil, and
Gerd Moellmann <gerd@gnu.org>
parents: 37933
diff changeset
7105 meaning to use the default. Default is the frame's background color.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7106
Dave Love <fx@gnu.org>
parents:
diff changeset
7107 **** JPEG, image type `jpeg'
Dave Love <fx@gnu.org>
parents:
diff changeset
7108
Dave Love <fx@gnu.org>
parents:
diff changeset
7109 Support for JPEG images requires the external library `libjpeg',
49520
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7110 package `jpegsrc.v6a.tar.gz', or later. There are no additional image
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7111 properties defined.
27055
f43dabd831f2 Support :data for JPEG.
Gerd Moellmann <gerd@gnu.org>
parents: 27045
diff changeset
7112
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7113 **** TIFF, image type `tiff'
Dave Love <fx@gnu.org>
parents:
diff changeset
7114
Dave Love <fx@gnu.org>
parents:
diff changeset
7115 Support for TIFF images requires the external library `libtiff',
Dave Love <fx@gnu.org>
parents:
diff changeset
7116 package `tiff-v3.4-tar.gz', or later. There are no additional image
Dave Love <fx@gnu.org>
parents:
diff changeset
7117 properties defined.
Dave Love <fx@gnu.org>
parents:
diff changeset
7118
Dave Love <fx@gnu.org>
parents:
diff changeset
7119 **** GIF, image type `gif'
Dave Love <fx@gnu.org>
parents:
diff changeset
7120
Dave Love <fx@gnu.org>
parents:
diff changeset
7121 Support for GIF images requires the external library `libungif', package
Dave Love <fx@gnu.org>
parents:
diff changeset
7122 `libungif-4.1.0', or later.
Dave Love <fx@gnu.org>
parents:
diff changeset
7123
Dave Love <fx@gnu.org>
parents:
diff changeset
7124 Additional image properties supported are:
Dave Love <fx@gnu.org>
parents:
diff changeset
7125
Dave Love <fx@gnu.org>
parents:
diff changeset
7126 `:index INDEX'
Dave Love <fx@gnu.org>
parents:
diff changeset
7127
Dave Love <fx@gnu.org>
parents:
diff changeset
7128 INDEX must be an integer >= 0. Load image number INDEX from a
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
7129 multi-image GIF file. An error is signaled if INDEX is too large.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7130
Dave Love <fx@gnu.org>
parents:
diff changeset
7131 This could be used to implement limited support for animated GIFs.
Dave Love <fx@gnu.org>
parents:
diff changeset
7132 For example, the following function displays a multi-image GIF file
Dave Love <fx@gnu.org>
parents:
diff changeset
7133 at point-min in the current buffer, switching between sub-images
Dave Love <fx@gnu.org>
parents:
diff changeset
7134 every 0.1 seconds.
Dave Love <fx@gnu.org>
parents:
diff changeset
7135
Dave Love <fx@gnu.org>
parents:
diff changeset
7136 (defun show-anim (file max)
Dave Love <fx@gnu.org>
parents:
diff changeset
7137 "Display multi-image GIF file FILE which contains MAX subimages."
Dave Love <fx@gnu.org>
parents:
diff changeset
7138 (display-anim (current-buffer) file 0 max t))
Dave Love <fx@gnu.org>
parents:
diff changeset
7139
Dave Love <fx@gnu.org>
parents:
diff changeset
7140 (defun display-anim (buffer file idx max first-time)
Dave Love <fx@gnu.org>
parents:
diff changeset
7141 (when (= idx max)
Dave Love <fx@gnu.org>
parents:
diff changeset
7142 (setq idx 0))
27076
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
7143 (let ((img (create-image file nil nil :index idx)))
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7144 (save-excursion
Dave Love <fx@gnu.org>
parents:
diff changeset
7145 (set-buffer buffer)
Dave Love <fx@gnu.org>
parents:
diff changeset
7146 (goto-char (point-min))
Dave Love <fx@gnu.org>
parents:
diff changeset
7147 (unless first-time (delete-char 1))
Dave Love <fx@gnu.org>
parents:
diff changeset
7148 (insert-image img "x"))
Dave Love <fx@gnu.org>
parents:
diff changeset
7149 (run-with-timer 0.1 nil 'display-anim buffer file (1+ idx) max nil)))
Dave Love <fx@gnu.org>
parents:
diff changeset
7150
Dave Love <fx@gnu.org>
parents:
diff changeset
7151 **** PNG, image type `png'
Dave Love <fx@gnu.org>
parents:
diff changeset
7152
Dave Love <fx@gnu.org>
parents:
diff changeset
7153 Support for PNG images requires the external library `libpng',
Dave Love <fx@gnu.org>
parents:
diff changeset
7154 package `libpng-1.0.2.tar.gz', or later. There are no additional image
Dave Love <fx@gnu.org>
parents:
diff changeset
7155 properties defined.
Dave Love <fx@gnu.org>
parents:
diff changeset
7156
Dave Love <fx@gnu.org>
parents:
diff changeset
7157 **** Ghostscript, image type `postscript'.
Dave Love <fx@gnu.org>
parents:
diff changeset
7158
Dave Love <fx@gnu.org>
parents:
diff changeset
7159 Additional image properties supported are:
Dave Love <fx@gnu.org>
parents:
diff changeset
7160
Dave Love <fx@gnu.org>
parents:
diff changeset
7161 `:pt-width WIDTH'
Dave Love <fx@gnu.org>
parents:
diff changeset
7162
Dave Love <fx@gnu.org>
parents:
diff changeset
7163 WIDTH is width of the image in pt (1/72 inch). WIDTH must be an
26034
e7b463705814 Some typos fixed.
Gerd Moellmann <gerd@gnu.org>
parents: 26030
diff changeset
7164 integer. This is a required property.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7165
Dave Love <fx@gnu.org>
parents:
diff changeset
7166 `:pt-height HEIGHT'
Dave Love <fx@gnu.org>
parents:
diff changeset
7167
Dave Love <fx@gnu.org>
parents:
diff changeset
7168 HEIGHT specifies the height of the image in pt (1/72 inch). HEIGHT
26034
e7b463705814 Some typos fixed.
Gerd Moellmann <gerd@gnu.org>
parents: 26030
diff changeset
7169 must be a integer. This is an required property.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7170
Dave Love <fx@gnu.org>
parents:
diff changeset
7171 `:bounding-box BOX'
Dave Love <fx@gnu.org>
parents:
diff changeset
7172
Dave Love <fx@gnu.org>
parents:
diff changeset
7173 BOX must be a list or vector of 4 integers giving the bounding box of
Dave Love <fx@gnu.org>
parents:
diff changeset
7174 the PS image, analogous to the `BoundingBox' comment found in PS
Dave Love <fx@gnu.org>
parents:
diff changeset
7175 files. This is an required property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7176
Dave Love <fx@gnu.org>
parents:
diff changeset
7177 Part of the Ghostscript interface is implemented in Lisp. See
Dave Love <fx@gnu.org>
parents:
diff changeset
7178 lisp/gs.el.
Dave Love <fx@gnu.org>
parents:
diff changeset
7179
Dave Love <fx@gnu.org>
parents:
diff changeset
7180 *** Lisp interface.
Dave Love <fx@gnu.org>
parents:
diff changeset
7181
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7182 The variable `image-types' contains a list of those image types
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7183 which are supported in the current configuration.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7184
Dave Love <fx@gnu.org>
parents:
diff changeset
7185 Images are stored in an image cache and removed from the cache when
Dave Love <fx@gnu.org>
parents:
diff changeset
7186 they haven't been displayed for `image-cache-eviction-delay seconds.
Dave Love <fx@gnu.org>
parents:
diff changeset
7187 The function `clear-image-cache' can be used to clear the image cache
28759
069d241f19bc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28757
diff changeset
7188 manually. Images in the cache are compared with `equal', i.e. all
069d241f19bc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28757
diff changeset
7189 images with `equal' specifications share the same image.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7190
Dave Love <fx@gnu.org>
parents:
diff changeset
7191 *** Simplified image API, image.el
Dave Love <fx@gnu.org>
parents:
diff changeset
7192
Dave Love <fx@gnu.org>
parents:
diff changeset
7193 The new Lisp package image.el contains functions that simplify image
Dave Love <fx@gnu.org>
parents:
diff changeset
7194 creation and putting images into text. The function `create-image'
Dave Love <fx@gnu.org>
parents:
diff changeset
7195 can be used to create images. The macro `defimage' can be used to
Dave Love <fx@gnu.org>
parents:
diff changeset
7196 define an image based on available image types. The functions
Dave Love <fx@gnu.org>
parents:
diff changeset
7197 `put-image' and `insert-image' can be used to insert an image into a
Dave Love <fx@gnu.org>
parents:
diff changeset
7198 buffer.
Dave Love <fx@gnu.org>
parents:
diff changeset
7199
Dave Love <fx@gnu.org>
parents:
diff changeset
7200 ** Display margins.
Dave Love <fx@gnu.org>
parents:
diff changeset
7201
Dave Love <fx@gnu.org>
parents:
diff changeset
7202 Windows can now have margins which are used for special text
Dave Love <fx@gnu.org>
parents:
diff changeset
7203 and images.
Dave Love <fx@gnu.org>
parents:
diff changeset
7204
Dave Love <fx@gnu.org>
parents:
diff changeset
7205 To give a window margins, either set the buffer-local variables
Dave Love <fx@gnu.org>
parents:
diff changeset
7206 `left-margin-width' and `right-margin-width', or call
Dave Love <fx@gnu.org>
parents:
diff changeset
7207 `set-window-margins'. The function `window-margins' can be used to
Dave Love <fx@gnu.org>
parents:
diff changeset
7208 obtain the current settings. To make `left-margin-width' and
Dave Love <fx@gnu.org>
parents:
diff changeset
7209 `right-margin-width' take effect, you must set them before displaying
Dave Love <fx@gnu.org>
parents:
diff changeset
7210 the buffer in a window, or use `set-window-buffer' to force an update
Dave Love <fx@gnu.org>
parents:
diff changeset
7211 of the display margins.
Dave Love <fx@gnu.org>
parents:
diff changeset
7212
Dave Love <fx@gnu.org>
parents:
diff changeset
7213 You can put text in margins by giving it a `display' text property
Dave Love <fx@gnu.org>
parents:
diff changeset
7214 containing a pair of the form `(LOCATION . VALUE)', where LOCATION is
Dave Love <fx@gnu.org>
parents:
diff changeset
7215 one of `left-margin' or `right-margin' or nil. VALUE can be either a
Dave Love <fx@gnu.org>
parents:
diff changeset
7216 string, an image specification or a stretch specification (see later
Dave Love <fx@gnu.org>
parents:
diff changeset
7217 in this file).
Dave Love <fx@gnu.org>
parents:
diff changeset
7218
Dave Love <fx@gnu.org>
parents:
diff changeset
7219 ** Help display
Dave Love <fx@gnu.org>
parents:
diff changeset
7220
Dave Love <fx@gnu.org>
parents:
diff changeset
7221 Emacs displays short help messages in the echo area, when the mouse
Dave Love <fx@gnu.org>
parents:
diff changeset
7222 moves over a tool-bar item or a piece of text that has a text property
Dave Love <fx@gnu.org>
parents:
diff changeset
7223 `help-echo'. This feature also applies to strings in the mode line
Dave Love <fx@gnu.org>
parents:
diff changeset
7224 that have a `help-echo' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7225
30219
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7226 If the value of the `help-echo' property is a function, that function
30305
84ff1994e9d1 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30296
diff changeset
7227 is called with three arguments WINDOW, OBJECT and POSITION. WINDOW is
30372
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7228 the window in which the help was found.
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7229
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7230 If OBJECT is a buffer, POS is the position in the buffer where the
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7231 `help-echo' text property was found.
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7232
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7233 If OBJECT is an overlay, that overlay has a `help-echo' property, and
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7234 POS is the position in the overlay's buffer under the mouse.
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7235
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7236 If OBJECT is a string (an overlay string or a string displayed with
30467
26afdae5ea13 --disable-largefile, 64-bit solaris
Dave Love <fx@gnu.org>
parents: 30445
diff changeset
7237 the `display' property), POS is the position in that string under the
30372
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7238 mouse.
30219
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7239
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7240 If the value of the `help-echo' property is neither a function nor a
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7241 string, it is evaluated to obtain a help string.
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7242
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7243 For tool-bar and menu-bar items, their key definition is used to
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7244 determine the help to display. If their definition contains a
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7245 property `:help FORM', FORM is evaluated to determine the help string.
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7246 For tool-bar items without a help form, the caption of the item is
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7247 used as help string.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7248
Dave Love <fx@gnu.org>
parents:
diff changeset
7249 The hook `show-help-function' can be set to a function that displays
30339
70d759570f7a C-down-mouse-3. Move concat change.
Dave Love <fx@gnu.org>
parents: 30319
diff changeset
7250 the help string differently. For example, enabling a tooltip window
70d759570f7a C-down-mouse-3. Move concat change.
Dave Love <fx@gnu.org>
parents: 30319
diff changeset
7251 causes the help display to appear there instead of in the echo area.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7252
Dave Love <fx@gnu.org>
parents:
diff changeset
7253 ** Vertical fractional scrolling.
Dave Love <fx@gnu.org>
parents:
diff changeset
7254
Dave Love <fx@gnu.org>
parents:
diff changeset
7255 The display of text in windows can be scrolled smoothly in pixels.
Dave Love <fx@gnu.org>
parents:
diff changeset
7256 This is useful, for example, for making parts of large images visible.
Dave Love <fx@gnu.org>
parents:
diff changeset
7257
Dave Love <fx@gnu.org>
parents:
diff changeset
7258 The function `window-vscroll' returns the current value of vertical
Dave Love <fx@gnu.org>
parents:
diff changeset
7259 scrolling, a non-negative fraction of the canonical character height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7260 The function `set-window-vscroll' can be used to set the vertical
Dave Love <fx@gnu.org>
parents:
diff changeset
7261 scrolling value. Here is an example of how these function might be
Dave Love <fx@gnu.org>
parents:
diff changeset
7262 used.
Dave Love <fx@gnu.org>
parents:
diff changeset
7263
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7264 (global-set-key [A-down]
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7265 #'(lambda ()
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7266 (interactive)
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7267 (set-window-vscroll (selected-window)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7268 (+ 0.5 (window-vscroll)))))
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7269 (global-set-key [A-up]
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7270 #'(lambda ()
Dave Love <fx@gnu.org>
parents:
diff changeset
7271 (interactive)
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7272 (set-window-vscroll (selected-window)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7273 (- (window-vscroll) 0.5)))))
Dave Love <fx@gnu.org>
parents:
diff changeset
7274
Dave Love <fx@gnu.org>
parents:
diff changeset
7275 ** New hook `fontification-functions'.
Dave Love <fx@gnu.org>
parents:
diff changeset
7276
Dave Love <fx@gnu.org>
parents:
diff changeset
7277 Functions from `fontification-functions' are called from redisplay
Dave Love <fx@gnu.org>
parents:
diff changeset
7278 when it encounters a region of text that is not yet fontified. This
Dave Love <fx@gnu.org>
parents:
diff changeset
7279 variable automatically becomes buffer-local when set. Each function
Dave Love <fx@gnu.org>
parents:
diff changeset
7280 is called with one argument, POS.
Dave Love <fx@gnu.org>
parents:
diff changeset
7281
Dave Love <fx@gnu.org>
parents:
diff changeset
7282 At least one of the hook functions should fontify one or more
Dave Love <fx@gnu.org>
parents:
diff changeset
7283 characters starting at POS in the current buffer. It should mark them
Dave Love <fx@gnu.org>
parents:
diff changeset
7284 as fontified by giving them a non-nil value of the `fontified' text
Dave Love <fx@gnu.org>
parents:
diff changeset
7285 property. It may be reasonable for these functions to check for the
Dave Love <fx@gnu.org>
parents:
diff changeset
7286 `fontified' property and not put it back on, but they do not have to.
Dave Love <fx@gnu.org>
parents:
diff changeset
7287
Dave Love <fx@gnu.org>
parents:
diff changeset
7288 ** Tool bar support.
Dave Love <fx@gnu.org>
parents:
diff changeset
7289
Dave Love <fx@gnu.org>
parents:
diff changeset
7290 Emacs supports a tool bar at the top of a frame under X. The frame
Dave Love <fx@gnu.org>
parents:
diff changeset
7291 parameter `tool-bar-lines' (X resource "toolBar", class "ToolBar")
Dave Love <fx@gnu.org>
parents:
diff changeset
7292 controls how may lines to reserve for the tool bar. A zero value
Dave Love <fx@gnu.org>
parents:
diff changeset
7293 suppresses the tool bar. If the value is non-zero and
Dave Love <fx@gnu.org>
parents:
diff changeset
7294 `auto-resize-tool-bars' is non-nil the tool bar's size will be changed
Dave Love <fx@gnu.org>
parents:
diff changeset
7295 automatically so that all tool bar items are visible.
Dave Love <fx@gnu.org>
parents:
diff changeset
7296
Dave Love <fx@gnu.org>
parents:
diff changeset
7297 *** Tool bar item definitions
Dave Love <fx@gnu.org>
parents:
diff changeset
7298
Dave Love <fx@gnu.org>
parents:
diff changeset
7299 Tool bar items are defined using `define-key' with a prefix-key
Dave Love <fx@gnu.org>
parents:
diff changeset
7300 `tool-bar'. For example `(define-key global-map [tool-bar item1] ITEM)'
Dave Love <fx@gnu.org>
parents:
diff changeset
7301 where ITEM is a list `(menu-item CAPTION BINDING PROPS...)'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7302
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7303 CAPTION is the caption of the item, If it's not a string, it is
Dave Love <fx@gnu.org>
parents:
diff changeset
7304 evaluated to get a string. The caption is currently not displayed in
Dave Love <fx@gnu.org>
parents:
diff changeset
7305 the tool bar, but it is displayed if the item doesn't have a `:help'
Dave Love <fx@gnu.org>
parents:
diff changeset
7306 property (see below).
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7307
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7308 BINDING is the tool bar item's binding. Tool bar items with keymaps as
Dave Love <fx@gnu.org>
parents:
diff changeset
7309 binding are currently ignored.
Dave Love <fx@gnu.org>
parents:
diff changeset
7310
Dave Love <fx@gnu.org>
parents:
diff changeset
7311 The following properties are recognized:
Dave Love <fx@gnu.org>
parents:
diff changeset
7312
Dave Love <fx@gnu.org>
parents:
diff changeset
7313 `:enable FORM'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7314
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7315 FORM is evaluated and specifies whether the tool bar item is enabled
Dave Love <fx@gnu.org>
parents:
diff changeset
7316 or disabled.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7317
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7318 `:visible FORM'
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7319
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7320 FORM is evaluated and specifies whether the tool bar item is displayed.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7321
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7322 `:filter FUNCTION'
Dave Love <fx@gnu.org>
parents:
diff changeset
7323
Dave Love <fx@gnu.org>
parents:
diff changeset
7324 FUNCTION is called with one parameter, the same list BINDING in which
Dave Love <fx@gnu.org>
parents:
diff changeset
7325 FUNCTION is specified as the filter. The value FUNCTION returns is
Dave Love <fx@gnu.org>
parents:
diff changeset
7326 used instead of BINDING to display this item.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7327
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7328 `:button (TYPE SELECTED)'
Dave Love <fx@gnu.org>
parents:
diff changeset
7329
Dave Love <fx@gnu.org>
parents:
diff changeset
7330 TYPE must be one of `:radio' or `:toggle'. SELECTED is evaluated
Dave Love <fx@gnu.org>
parents:
diff changeset
7331 and specifies whether the button is selected (pressed) or not.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7332
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7333 `:image IMAGES'
Dave Love <fx@gnu.org>
parents:
diff changeset
7334
Dave Love <fx@gnu.org>
parents:
diff changeset
7335 IMAGES is either a single image specification or a vector of four
Dave Love <fx@gnu.org>
parents:
diff changeset
7336 image specifications. If it is a vector, this table lists the
Dave Love <fx@gnu.org>
parents:
diff changeset
7337 meaning of each of the four elements:
Dave Love <fx@gnu.org>
parents:
diff changeset
7338
Dave Love <fx@gnu.org>
parents:
diff changeset
7339 Index Use when item is
Dave Love <fx@gnu.org>
parents:
diff changeset
7340 ----------------------------------------
Dave Love <fx@gnu.org>
parents:
diff changeset
7341 0 enabled and selected
Dave Love <fx@gnu.org>
parents:
diff changeset
7342 1 enabled and deselected
Dave Love <fx@gnu.org>
parents:
diff changeset
7343 2 disabled and selected
Dave Love <fx@gnu.org>
parents:
diff changeset
7344 3 disabled and deselected
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7345
28946
f100c3d709e4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28919
diff changeset
7346 If IMAGE is a single image specification, a Laplace edge-detection
f100c3d709e4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28919
diff changeset
7347 algorithm is used on that image to draw the image in disabled state.
f100c3d709e4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28919
diff changeset
7348
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7349 `:help HELP-STRING'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7350
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7351 Gives a help string to display for the tool bar item. This help
Dave Love <fx@gnu.org>
parents:
diff changeset
7352 is displayed when the mouse is moved over the item.
Dave Love <fx@gnu.org>
parents:
diff changeset
7353
31641
15837f59a747 Strokes update. Toolbar stuff.
Dave Love <fx@gnu.org>
parents: 31639
diff changeset
7354 The function `toolbar-add-item' is a convenience function for adding
31741
dcff79c941d1 tool-bar, latin1-display
Dave Love <fx@gnu.org>
parents: 31728
diff changeset
7355 toolbar items generally, and `tool-bar-add-item-from-menu' can be used
dcff79c941d1 tool-bar, latin1-display
Dave Love <fx@gnu.org>
parents: 31728
diff changeset
7356 to define a toolbar item with a binding copied from an item on the
dcff79c941d1 tool-bar, latin1-display
Dave Love <fx@gnu.org>
parents: 31728
diff changeset
7357 menu bar.
31641
15837f59a747 Strokes update. Toolbar stuff.
Dave Love <fx@gnu.org>
parents: 31639
diff changeset
7358
33484
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
7359 The default bindings use a menu-item :filter to derive the tool-bar
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
7360 dynamically from variable `tool-bar-map' which may be set
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
7361 buffer-locally to override the global map.
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
7362
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7363 *** Tool-bar-related variables.
Dave Love <fx@gnu.org>
parents:
diff changeset
7364
Dave Love <fx@gnu.org>
parents:
diff changeset
7365 If `auto-resize-tool-bar' is non-nil, the tool bar will automatically
Dave Love <fx@gnu.org>
parents:
diff changeset
7366 resize to show all defined tool bar items. It will never grow larger
Dave Love <fx@gnu.org>
parents:
diff changeset
7367 than 1/4 of the frame's size.
Dave Love <fx@gnu.org>
parents:
diff changeset
7368
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7369 If `auto-raise-tool-bar-buttons' is non-nil, tool bar buttons will be
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7370 raised when the mouse moves over them.
Dave Love <fx@gnu.org>
parents:
diff changeset
7371
Dave Love <fx@gnu.org>
parents:
diff changeset
7372 You can add extra space between tool bar items by setting
Dave Love <fx@gnu.org>
parents:
diff changeset
7373 `tool-bar-button-margin' to a positive integer specifying a number of
35278
80050ac10dbf *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35250
diff changeset
7374 pixels, or a pair of integers (X . Y) specifying horizontal and
80050ac10dbf *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35250
diff changeset
7375 vertical margins . Default is 1.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7376
Dave Love <fx@gnu.org>
parents:
diff changeset
7377 You can change the shadow thickness of tool bar buttons by setting
Dave Love <fx@gnu.org>
parents:
diff changeset
7378 `tool-bar-button-relief' to an integer. Default is 3.
Dave Love <fx@gnu.org>
parents:
diff changeset
7379
Dave Love <fx@gnu.org>
parents:
diff changeset
7380 *** Tool-bar clicks with modifiers.
Dave Love <fx@gnu.org>
parents:
diff changeset
7381
Dave Love <fx@gnu.org>
parents:
diff changeset
7382 You can bind commands to clicks with control, shift, meta etc. on
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7383 a tool bar item. If
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7384
Dave Love <fx@gnu.org>
parents:
diff changeset
7385 (define-key global-map [tool-bar shell]
Dave Love <fx@gnu.org>
parents:
diff changeset
7386 '(menu-item "Shell" shell
Dave Love <fx@gnu.org>
parents:
diff changeset
7387 :image (image :type xpm :file "shell.xpm")))
Dave Love <fx@gnu.org>
parents:
diff changeset
7388
Dave Love <fx@gnu.org>
parents:
diff changeset
7389 is the original tool bar item definition, then
Dave Love <fx@gnu.org>
parents:
diff changeset
7390
Dave Love <fx@gnu.org>
parents:
diff changeset
7391 (define-key global-map [tool-bar S-shell] 'some-command)
Dave Love <fx@gnu.org>
parents:
diff changeset
7392
Dave Love <fx@gnu.org>
parents:
diff changeset
7393 makes a binding to run `some-command' for a shifted click on the same
Dave Love <fx@gnu.org>
parents:
diff changeset
7394 item.
Dave Love <fx@gnu.org>
parents:
diff changeset
7395
Dave Love <fx@gnu.org>
parents:
diff changeset
7396 ** Mode line changes.
Dave Love <fx@gnu.org>
parents:
diff changeset
7397
Dave Love <fx@gnu.org>
parents:
diff changeset
7398 *** Mouse-sensitive mode line.
Dave Love <fx@gnu.org>
parents:
diff changeset
7399
Dave Love <fx@gnu.org>
parents:
diff changeset
7400 The mode line can be made mouse-sensitive by displaying strings there
Dave Love <fx@gnu.org>
parents:
diff changeset
7401 that have a `local-map' text property. There are three ways to display
Dave Love <fx@gnu.org>
parents:
diff changeset
7402 a string with a `local-map' property in the mode line.
Dave Love <fx@gnu.org>
parents:
diff changeset
7403
Dave Love <fx@gnu.org>
parents:
diff changeset
7404 1. The mode line spec contains a variable whose string value has
Dave Love <fx@gnu.org>
parents:
diff changeset
7405 a `local-map' text property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7406
Dave Love <fx@gnu.org>
parents:
diff changeset
7407 2. The mode line spec contains a format specifier (e.g. `%12b'), and
Dave Love <fx@gnu.org>
parents:
diff changeset
7408 that format specifier has a `local-map' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7409
Dave Love <fx@gnu.org>
parents:
diff changeset
7410 3. The mode line spec contains a list containing `:eval FORM'. FORM
Dave Love <fx@gnu.org>
parents:
diff changeset
7411 is evaluated. If the result is a string, and that string has a
Dave Love <fx@gnu.org>
parents:
diff changeset
7412 `local-map' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7413
Dave Love <fx@gnu.org>
parents:
diff changeset
7414 The same mechanism is used to determine the `face' and `help-echo'
Dave Love <fx@gnu.org>
parents:
diff changeset
7415 properties of strings in the mode line. See `bindings.el' for an
Dave Love <fx@gnu.org>
parents:
diff changeset
7416 example.
Dave Love <fx@gnu.org>
parents:
diff changeset
7417
26359
d2970b5d3b72 Add mode line element '(:eval FORM)'.
Gerd Moellmann <gerd@gnu.org>
parents: 26322
diff changeset
7418 *** If a mode line element has the form `(:eval FORM)', FORM is
d2970b5d3b72 Add mode line element '(:eval FORM)'.
Gerd Moellmann <gerd@gnu.org>
parents: 26322
diff changeset
7419 evaluated and the result is used as mode line element.
d2970b5d3b72 Add mode line element '(:eval FORM)'.
Gerd Moellmann <gerd@gnu.org>
parents: 26322
diff changeset
7420
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7421 *** You can suppress mode-line display by setting the buffer-local
Dave Love <fx@gnu.org>
parents:
diff changeset
7422 variable mode-line-format to nil.
Dave Love <fx@gnu.org>
parents:
diff changeset
7423
Dave Love <fx@gnu.org>
parents:
diff changeset
7424 *** A headerline can now be displayed at the top of a window.
Dave Love <fx@gnu.org>
parents:
diff changeset
7425
Dave Love <fx@gnu.org>
parents:
diff changeset
7426 This mode line's contents are controlled by the new variable
Dave Love <fx@gnu.org>
parents:
diff changeset
7427 `header-line-format' and `default-header-line-format' which are
Dave Love <fx@gnu.org>
parents:
diff changeset
7428 completely analogous to `mode-line-format' and
Dave Love <fx@gnu.org>
parents:
diff changeset
7429 `default-mode-line-format'. A value of nil means don't display a top
Dave Love <fx@gnu.org>
parents:
diff changeset
7430 line.
Dave Love <fx@gnu.org>
parents:
diff changeset
7431
Dave Love <fx@gnu.org>
parents:
diff changeset
7432 The appearance of top mode lines is controlled by the face
Dave Love <fx@gnu.org>
parents:
diff changeset
7433 `header-line'.
Dave Love <fx@gnu.org>
parents:
diff changeset
7434
Dave Love <fx@gnu.org>
parents:
diff changeset
7435 The function `coordinates-in-window-p' returns `header-line' for a
Dave Love <fx@gnu.org>
parents:
diff changeset
7436 position in the header-line.
Dave Love <fx@gnu.org>
parents:
diff changeset
7437
Dave Love <fx@gnu.org>
parents:
diff changeset
7438 ** Text property `display'
Dave Love <fx@gnu.org>
parents:
diff changeset
7439
31827
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7440 The `display' text property is used to insert images into text,
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7441 replace text with other text, display text in marginal area, and it is
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7442 also used to control other aspects of how text displays. The value of
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7443 the `display' property should be a display specification, as described
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7444 below, or a list or vector containing display specifications.
Dave Love <fx@gnu.org>
parents:
diff changeset
7445
31827
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7446 *** Replacing text, displaying text in marginal areas
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7447
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7448 To replace the text having the `display' property with some other
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7449 text, use a display specification of the form `(LOCATION STRING)'.
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7450
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7451 If LOCATION is `(margin left-margin)', STRING is displayed in the left
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7452 marginal area, if it is `(margin right-margin)', it is displayed in
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7453 the right marginal area, and if LOCATION is `(margin nil)' STRING
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7454 is displayed in the text. In the latter case you can also use the
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7455 simpler form STRING as property value.
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7456
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7457 *** Variable width and height spaces
Dave Love <fx@gnu.org>
parents:
diff changeset
7458
Dave Love <fx@gnu.org>
parents:
diff changeset
7459 To display a space of fractional width or height, use a display
Dave Love <fx@gnu.org>
parents:
diff changeset
7460 specification of the form `(LOCATION STRECH)'. If LOCATION is
Dave Love <fx@gnu.org>
parents:
diff changeset
7461 `(margin left-margin)', the space is displayed in the left marginal
Dave Love <fx@gnu.org>
parents:
diff changeset
7462 area, if it is `(margin right-margin)', it is displayed in the right
Dave Love <fx@gnu.org>
parents:
diff changeset
7463 marginal area, and if LOCATION is `(margin nil)' the space is
Dave Love <fx@gnu.org>
parents:
diff changeset
7464 displayed in the text. In the latter case you can also use the
Dave Love <fx@gnu.org>
parents:
diff changeset
7465 simpler form STRETCH as property value.
Dave Love <fx@gnu.org>
parents:
diff changeset
7466
Dave Love <fx@gnu.org>
parents:
diff changeset
7467 The stretch specification STRETCH itself is a list of the form `(space
Dave Love <fx@gnu.org>
parents:
diff changeset
7468 PROPS)', where PROPS is a property list which can contain the
Dave Love <fx@gnu.org>
parents:
diff changeset
7469 properties described below.
Dave Love <fx@gnu.org>
parents:
diff changeset
7470
Dave Love <fx@gnu.org>
parents:
diff changeset
7471 The display of the fractional space replaces the display of the
Dave Love <fx@gnu.org>
parents:
diff changeset
7472 characters having the `display' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7473
Dave Love <fx@gnu.org>
parents:
diff changeset
7474 - :width WIDTH
Dave Love <fx@gnu.org>
parents:
diff changeset
7475
Dave Love <fx@gnu.org>
parents:
diff changeset
7476 Specifies that the space width should be WIDTH times the normal
Dave Love <fx@gnu.org>
parents:
diff changeset
7477 character width. WIDTH can be an integer or floating point number.
Dave Love <fx@gnu.org>
parents:
diff changeset
7478
Dave Love <fx@gnu.org>
parents:
diff changeset
7479 - :relative-width FACTOR
Dave Love <fx@gnu.org>
parents:
diff changeset
7480
Dave Love <fx@gnu.org>
parents:
diff changeset
7481 Specifies that the width of the stretch should be computed from the
Dave Love <fx@gnu.org>
parents:
diff changeset
7482 first character in a group of consecutive characters that have the
Dave Love <fx@gnu.org>
parents:
diff changeset
7483 same `display' property. The computation is done by multiplying the
Dave Love <fx@gnu.org>
parents:
diff changeset
7484 width of that character by FACTOR.
Dave Love <fx@gnu.org>
parents:
diff changeset
7485
Dave Love <fx@gnu.org>
parents:
diff changeset
7486 - :align-to HPOS
Dave Love <fx@gnu.org>
parents:
diff changeset
7487
Dave Love <fx@gnu.org>
parents:
diff changeset
7488 Specifies that the space should be wide enough to reach HPOS. The
Dave Love <fx@gnu.org>
parents:
diff changeset
7489 value HPOS is measured in units of the normal character width.
Dave Love <fx@gnu.org>
parents:
diff changeset
7490
Dave Love <fx@gnu.org>
parents:
diff changeset
7491 Exactly one of the above properties should be used.
Dave Love <fx@gnu.org>
parents:
diff changeset
7492
Dave Love <fx@gnu.org>
parents:
diff changeset
7493 - :height HEIGHT
Dave Love <fx@gnu.org>
parents:
diff changeset
7494
Dave Love <fx@gnu.org>
parents:
diff changeset
7495 Specifies the height of the space, as HEIGHT, measured in terms of the
Dave Love <fx@gnu.org>
parents:
diff changeset
7496 normal line height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7497
Dave Love <fx@gnu.org>
parents:
diff changeset
7498 - :relative-height FACTOR
Dave Love <fx@gnu.org>
parents:
diff changeset
7499
Dave Love <fx@gnu.org>
parents:
diff changeset
7500 The height of the space is computed as the product of the height
Dave Love <fx@gnu.org>
parents:
diff changeset
7501 of the text having the `display' property and FACTOR.
Dave Love <fx@gnu.org>
parents:
diff changeset
7502
Dave Love <fx@gnu.org>
parents:
diff changeset
7503 - :ascent ASCENT
Dave Love <fx@gnu.org>
parents:
diff changeset
7504
Dave Love <fx@gnu.org>
parents:
diff changeset
7505 Specifies that ASCENT percent of the height of the stretch should be
Dave Love <fx@gnu.org>
parents:
diff changeset
7506 used for the ascent of the stretch, i.e. for the part above the
Dave Love <fx@gnu.org>
parents:
diff changeset
7507 baseline. The value of ASCENT must be a non-negative number less or
Dave Love <fx@gnu.org>
parents:
diff changeset
7508 equal to 100.
Dave Love <fx@gnu.org>
parents:
diff changeset
7509
Dave Love <fx@gnu.org>
parents:
diff changeset
7510 You should not use both `:height' and `:relative-height' together.
Dave Love <fx@gnu.org>
parents:
diff changeset
7511
Dave Love <fx@gnu.org>
parents:
diff changeset
7512 *** Images
Dave Love <fx@gnu.org>
parents:
diff changeset
7513
Dave Love <fx@gnu.org>
parents:
diff changeset
7514 A display specification for an image has the form `(LOCATION
Dave Love <fx@gnu.org>
parents:
diff changeset
7515 . IMAGE)', where IMAGE is an image specification. The image replaces,
Dave Love <fx@gnu.org>
parents:
diff changeset
7516 in the display, the characters having this display specification in
Dave Love <fx@gnu.org>
parents:
diff changeset
7517 their `display' text property. If LOCATION is `(margin left-margin)',
Dave Love <fx@gnu.org>
parents:
diff changeset
7518 the image will be displayed in the left marginal area, if it is
Dave Love <fx@gnu.org>
parents:
diff changeset
7519 `(margin right-margin)' it will be displayed in the right marginal
Dave Love <fx@gnu.org>
parents:
diff changeset
7520 area, and if LOCATION is `(margin nil)' the image will be displayed in
Dave Love <fx@gnu.org>
parents:
diff changeset
7521 the text. In the latter case you can also use the simpler form IMAGE
Dave Love <fx@gnu.org>
parents:
diff changeset
7522 as display specification.
Dave Love <fx@gnu.org>
parents:
diff changeset
7523
Dave Love <fx@gnu.org>
parents:
diff changeset
7524 *** Other display properties
Dave Love <fx@gnu.org>
parents:
diff changeset
7525
33499
178c626ccf39 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33484
diff changeset
7526 - (space-width FACTOR)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7527
Dave Love <fx@gnu.org>
parents:
diff changeset
7528 Specifies that space characters in the text having that property
Dave Love <fx@gnu.org>
parents:
diff changeset
7529 should be displayed FACTOR times as wide as normal; FACTOR must be an
Dave Love <fx@gnu.org>
parents:
diff changeset
7530 integer or float.
Dave Love <fx@gnu.org>
parents:
diff changeset
7531
33499
178c626ccf39 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33484
diff changeset
7532 - (height HEIGHT)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7533
Dave Love <fx@gnu.org>
parents:
diff changeset
7534 Display text having this property in a font that is smaller or larger.
Dave Love <fx@gnu.org>
parents:
diff changeset
7535
Dave Love <fx@gnu.org>
parents:
diff changeset
7536 If HEIGHT is a list of the form `(+ N)', where N is an integer, that
Dave Love <fx@gnu.org>
parents:
diff changeset
7537 means to use a font that is N steps larger. If HEIGHT is a list of
Dave Love <fx@gnu.org>
parents:
diff changeset
7538 the form `(- N)', that means to use a font that is N steps smaller. A
Dave Love <fx@gnu.org>
parents:
diff changeset
7539 ``step'' is defined by the set of available fonts; each size for which
Dave Love <fx@gnu.org>
parents:
diff changeset
7540 a font is available counts as a step.
Dave Love <fx@gnu.org>
parents:
diff changeset
7541
Dave Love <fx@gnu.org>
parents:
diff changeset
7542 If HEIGHT is a number, that means to use a font that is HEIGHT times
Dave Love <fx@gnu.org>
parents:
diff changeset
7543 as tall as the frame's default font.
Dave Love <fx@gnu.org>
parents:
diff changeset
7544
Dave Love <fx@gnu.org>
parents:
diff changeset
7545 If HEIGHT is a symbol, it is called as a function with the current
Dave Love <fx@gnu.org>
parents:
diff changeset
7546 height as argument. The function should return the new height to use.
Dave Love <fx@gnu.org>
parents:
diff changeset
7547
Dave Love <fx@gnu.org>
parents:
diff changeset
7548 Otherwise, HEIGHT is evaluated to get the new height, with the symbol
Dave Love <fx@gnu.org>
parents:
diff changeset
7549 `height' bound to the current specified font height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7550
33499
178c626ccf39 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33484
diff changeset
7551 - (raise FACTOR)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7552
Dave Love <fx@gnu.org>
parents:
diff changeset
7553 FACTOR must be a number, specifying a multiple of the current
Dave Love <fx@gnu.org>
parents:
diff changeset
7554 font's height. If it is positive, that means to display the characters
Dave Love <fx@gnu.org>
parents:
diff changeset
7555 raised. If it is negative, that means to display them lower down. The
Dave Love <fx@gnu.org>
parents:
diff changeset
7556 amount of raising or lowering is computed without taking account of the
33499
178c626ccf39 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33484
diff changeset
7557 `height' subproperty.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7558
Dave Love <fx@gnu.org>
parents:
diff changeset
7559 *** Conditional display properties
Dave Love <fx@gnu.org>
parents:
diff changeset
7560
Dave Love <fx@gnu.org>
parents:
diff changeset
7561 All display specifications can be conditionalized. If a specification
39031
f5db16d9b787 Change conditional display property API description.
Gerd Moellmann <gerd@gnu.org>
parents: 38989
diff changeset
7562 has the form `(when CONDITION . SPEC)', the specification SPEC applies
f5db16d9b787 Change conditional display property API description.
Gerd Moellmann <gerd@gnu.org>
parents: 38989
diff changeset
7563 only when CONDITION yields a non-nil value when evaluated. During the
f5db16d9b787 Change conditional display property API description.
Gerd Moellmann <gerd@gnu.org>
parents: 38989
diff changeset
7564 evaluation, `object' is bound to the string or buffer having the
f5db16d9b787 Change conditional display property API description.
Gerd Moellmann <gerd@gnu.org>
parents: 38989
diff changeset
7565 conditional display property; `position' and `buffer-position' are
f5db16d9b787 Change conditional display property API description.
Gerd Moellmann <gerd@gnu.org>
parents: 38989
diff changeset
7566 bound to the position within `object' and the buffer position where
f5db16d9b787 Change conditional display property API description.
Gerd Moellmann <gerd@gnu.org>
parents: 38989
diff changeset
7567 the display property was found, respectively. Both positions can be
f5db16d9b787 Change conditional display property API description.
Gerd Moellmann <gerd@gnu.org>
parents: 38989
diff changeset
7568 different when object is a string.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7569
Dave Love <fx@gnu.org>
parents:
diff changeset
7570 The normal specification consisting of SPEC only is equivalent to
39031
f5db16d9b787 Change conditional display property API description.
Gerd Moellmann <gerd@gnu.org>
parents: 38989
diff changeset
7571 `(when t . SPEC)'.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7572
Dave Love <fx@gnu.org>
parents:
diff changeset
7573 ** New menu separator types.
Dave Love <fx@gnu.org>
parents:
diff changeset
7574
Dave Love <fx@gnu.org>
parents:
diff changeset
7575 Emacs now supports more than one menu separator type. Menu items with
Dave Love <fx@gnu.org>
parents:
diff changeset
7576 item names consisting of dashes only (including zero dashes) are
Dave Love <fx@gnu.org>
parents:
diff changeset
7577 treated like before. In addition, the following item names are used
Dave Love <fx@gnu.org>
parents:
diff changeset
7578 to specify other menu separator types.
Dave Love <fx@gnu.org>
parents:
diff changeset
7579
Dave Love <fx@gnu.org>
parents:
diff changeset
7580 - `--no-line' or `--space', or `--:space', or `--:noLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7581
Dave Love <fx@gnu.org>
parents:
diff changeset
7582 No separator lines are drawn, but a small space is inserted where the
Dave Love <fx@gnu.org>
parents:
diff changeset
7583 separator occurs.
Dave Love <fx@gnu.org>
parents:
diff changeset
7584
Dave Love <fx@gnu.org>
parents:
diff changeset
7585 - `--single-line' or `--:singleLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7586
Dave Love <fx@gnu.org>
parents:
diff changeset
7587 A single line in the menu's foreground color.
Dave Love <fx@gnu.org>
parents:
diff changeset
7588
Dave Love <fx@gnu.org>
parents:
diff changeset
7589 - `--double-line' or `--:doubleLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7590
Dave Love <fx@gnu.org>
parents:
diff changeset
7591 A double line in the menu's foreground color.
Dave Love <fx@gnu.org>
parents:
diff changeset
7592
Dave Love <fx@gnu.org>
parents:
diff changeset
7593 - `--single-dashed-line' or `--:singleDashedLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7594
Dave Love <fx@gnu.org>
parents:
diff changeset
7595 A single dashed line in the menu's foreground color.
Dave Love <fx@gnu.org>
parents:
diff changeset
7596
Dave Love <fx@gnu.org>
parents:
diff changeset
7597 - `--double-dashed-line' or `--:doubleDashedLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7598
Dave Love <fx@gnu.org>
parents:
diff changeset
7599 A double dashed line in the menu's foreground color.
Dave Love <fx@gnu.org>
parents:
diff changeset
7600
Dave Love <fx@gnu.org>
parents:
diff changeset
7601 - `--shadow-etched-in' or `--:shadowEtchedIn'
Dave Love <fx@gnu.org>
parents:
diff changeset
7602
35862
9604ca6b3728 More typos from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35847
diff changeset
7603 A single line with 3D sunken appearance. This is the form
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7604 displayed for item names consisting of dashes only.
Dave Love <fx@gnu.org>
parents:
diff changeset
7605
Dave Love <fx@gnu.org>
parents:
diff changeset
7606 - `--shadow-etched-out' or `--:shadowEtchedOut'
Dave Love <fx@gnu.org>
parents:
diff changeset
7607
Dave Love <fx@gnu.org>
parents:
diff changeset
7608 A single line with 3D raised appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7609
Dave Love <fx@gnu.org>
parents:
diff changeset
7610 - `--shadow-etched-in-dash' or `--:shadowEtchedInDash'
Dave Love <fx@gnu.org>
parents:
diff changeset
7611
Dave Love <fx@gnu.org>
parents:
diff changeset
7612 A single dashed line with 3D sunken appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7613
Dave Love <fx@gnu.org>
parents:
diff changeset
7614 - `--shadow-etched-out-dash' or `--:shadowEtchedOutDash'
Dave Love <fx@gnu.org>
parents:
diff changeset
7615
Dave Love <fx@gnu.org>
parents:
diff changeset
7616 A single dashed line with 3D raise appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7617
Dave Love <fx@gnu.org>
parents:
diff changeset
7618 - `--shadow-double-etched-in' or `--:shadowDoubleEtchedIn'
Dave Love <fx@gnu.org>
parents:
diff changeset
7619
Dave Love <fx@gnu.org>
parents:
diff changeset
7620 Two lines with 3D sunken appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7621
Dave Love <fx@gnu.org>
parents:
diff changeset
7622 - `--shadow-double-etched-out' or `--:shadowDoubleEtchedOut'
Dave Love <fx@gnu.org>
parents:
diff changeset
7623
Dave Love <fx@gnu.org>
parents:
diff changeset
7624 Two lines with 3D raised appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7625
Dave Love <fx@gnu.org>
parents:
diff changeset
7626 - `--shadow-double-etched-in-dash' or `--:shadowDoubleEtchedInDash'
Dave Love <fx@gnu.org>
parents:
diff changeset
7627
Dave Love <fx@gnu.org>
parents:
diff changeset
7628 Two dashed lines with 3D sunken appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7629
Dave Love <fx@gnu.org>
parents:
diff changeset
7630 - `--shadow-double-etched-out-dash' or `--:shadowDoubleEtchedOutDash'
Dave Love <fx@gnu.org>
parents:
diff changeset
7631
Dave Love <fx@gnu.org>
parents:
diff changeset
7632 Two dashed lines with 3D raised appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7633
Dave Love <fx@gnu.org>
parents:
diff changeset
7634 Under LessTif/Motif, the last four separator types are displayed like
Dave Love <fx@gnu.org>
parents:
diff changeset
7635 the corresponding single-line separators.
Dave Love <fx@gnu.org>
parents:
diff changeset
7636
Dave Love <fx@gnu.org>
parents:
diff changeset
7637 ** New frame parameters for scroll bar colors.
Dave Love <fx@gnu.org>
parents:
diff changeset
7638
Dave Love <fx@gnu.org>
parents:
diff changeset
7639 The new frame parameters `scroll-bar-foreground' and
Dave Love <fx@gnu.org>
parents:
diff changeset
7640 `scroll-bar-background' can be used to change scroll bar colors.
Dave Love <fx@gnu.org>
parents:
diff changeset
7641 Their value must be either a color name, a string, or nil to specify
Dave Love <fx@gnu.org>
parents:
diff changeset
7642 that scroll bars should use a default color. For toolkit scroll bars,
Dave Love <fx@gnu.org>
parents:
diff changeset
7643 default colors are toolkit specific. For non-toolkit scroll bars, the
Dave Love <fx@gnu.org>
parents:
diff changeset
7644 default background is the background color of the frame, and the
Dave Love <fx@gnu.org>
parents:
diff changeset
7645 default foreground is black.
Dave Love <fx@gnu.org>
parents:
diff changeset
7646
Dave Love <fx@gnu.org>
parents:
diff changeset
7647 The X resource name of these parameters are `scrollBarForeground'
Dave Love <fx@gnu.org>
parents:
diff changeset
7648 (class ScrollBarForeground) and `scrollBarBackground' (class
Dave Love <fx@gnu.org>
parents:
diff changeset
7649 `ScrollBarBackground').
Dave Love <fx@gnu.org>
parents:
diff changeset
7650
Dave Love <fx@gnu.org>
parents:
diff changeset
7651 Setting these parameters overrides toolkit specific X resource
Dave Love <fx@gnu.org>
parents:
diff changeset
7652 settings for scroll bar colors.
Dave Love <fx@gnu.org>
parents:
diff changeset
7653
Dave Love <fx@gnu.org>
parents:
diff changeset
7654 ** You can set `redisplay-dont-pause' to a non-nil value to prevent
Dave Love <fx@gnu.org>
parents:
diff changeset
7655 display updates from being interrupted when input is pending.
Dave Love <fx@gnu.org>
parents:
diff changeset
7656
Dave Love <fx@gnu.org>
parents:
diff changeset
7657 ** Changing a window's width may now change its window start if it
Dave Love <fx@gnu.org>
parents:
diff changeset
7658 starts on a continuation line. The new window start is computed based
Dave Love <fx@gnu.org>
parents:
diff changeset
7659 on the window's new width, starting from the start of the continued
Dave Love <fx@gnu.org>
parents:
diff changeset
7660 line as the start of the screen line with the minimum distance from
Dave Love <fx@gnu.org>
parents:
diff changeset
7661 the original window start.
Dave Love <fx@gnu.org>
parents:
diff changeset
7662
Dave Love <fx@gnu.org>
parents:
diff changeset
7663 ** The variable `hscroll-step' and the functions
Dave Love <fx@gnu.org>
parents:
diff changeset
7664 `hscroll-point-visible' and `hscroll-window-column' have been removed
Dave Love <fx@gnu.org>
parents:
diff changeset
7665 now that proper horizontal scrolling is implemented.
Dave Love <fx@gnu.org>
parents:
diff changeset
7666
Dave Love <fx@gnu.org>
parents:
diff changeset
7667 ** Windows can now be made fixed-width and/or fixed-height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7668
Dave Love <fx@gnu.org>
parents:
diff changeset
7669 A window is fixed-size if its buffer has a buffer-local variable
Dave Love <fx@gnu.org>
parents:
diff changeset
7670 `window-size-fixed' whose value is not nil. A value of `height' makes
Dave Love <fx@gnu.org>
parents:
diff changeset
7671 windows fixed-height, a value of `width' makes them fixed-width, any
Dave Love <fx@gnu.org>
parents:
diff changeset
7672 other non-nil value makes them both fixed-width and fixed-height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7673
Dave Love <fx@gnu.org>
parents:
diff changeset
7674 The following code makes all windows displaying the current buffer
Dave Love <fx@gnu.org>
parents:
diff changeset
7675 fixed-width and fixed-height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7676
Dave Love <fx@gnu.org>
parents:
diff changeset
7677 (set (make-local-variable 'window-size-fixed) t)
Dave Love <fx@gnu.org>
parents:
diff changeset
7678
Dave Love <fx@gnu.org>
parents:
diff changeset
7679 A call to enlarge-window on a window gives an error if that window is
Dave Love <fx@gnu.org>
parents:
diff changeset
7680 fixed-width and it is tried to change the window's width, or if the
Dave Love <fx@gnu.org>
parents:
diff changeset
7681 window is fixed-height, and it is tried to change its height. To
Dave Love <fx@gnu.org>
parents:
diff changeset
7682 change the size of a fixed-size window, bind `window-size-fixed'
Dave Love <fx@gnu.org>
parents:
diff changeset
7683 temporarily to nil, for example
Dave Love <fx@gnu.org>
parents:
diff changeset
7684
Dave Love <fx@gnu.org>
parents:
diff changeset
7685 (let ((window-size-fixed nil))
Dave Love <fx@gnu.org>
parents:
diff changeset
7686 (enlarge-window 10))
Dave Love <fx@gnu.org>
parents:
diff changeset
7687
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7688 Likewise, an attempt to split a fixed-height window vertically,
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7689 or a fixed-width window horizontally results in a error.
28094
e1e48e0663f6 Mention cursor-type support on MS-DOS terminals.
Eli Zaretskii <eliz@gnu.org>
parents: 28063
diff changeset
7690
e1e48e0663f6 Mention cursor-type support on MS-DOS terminals.
Eli Zaretskii <eliz@gnu.org>
parents: 28063
diff changeset
7691 ** The cursor-type frame parameter is now supported on MS-DOS
e1e48e0663f6 Mention cursor-type support on MS-DOS terminals.
Eli Zaretskii <eliz@gnu.org>
parents: 28063
diff changeset
7692 terminals. When Emacs starts, it by default changes the cursor shape
e1e48e0663f6 Mention cursor-type support on MS-DOS terminals.
Eli Zaretskii <eliz@gnu.org>
parents: 28063
diff changeset
7693 to a solid box, as it does on Unix. The `cursor-type' frame parameter
e1e48e0663f6 Mention cursor-type support on MS-DOS terminals.
Eli Zaretskii <eliz@gnu.org>
parents: 28063
diff changeset
7694 overrides this as it does on Unix, except that the bar cursor is
e1e48e0663f6 Mention cursor-type support on MS-DOS terminals.
Eli Zaretskii <eliz@gnu.org>
parents: 28063
diff changeset
7695 horizontal rather than vertical (since the MS-DOS display doesn't
e1e48e0663f6 Mention cursor-type support on MS-DOS terminals.
Eli Zaretskii <eliz@gnu.org>
parents: 28063
diff changeset
7696 support a vertical-bar cursor).
30786
550344dcef43 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30781
diff changeset
7697
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7698
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
7699
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7700 * Emacs 20.7 is a bug-fix release with few user-visible changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7701
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7702 ** It is now possible to use CCL-based coding systems for keyboard
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7703 input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7704
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7705 ** ange-ftp now handles FTP security extensions, like Kerberos.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7706
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7707 ** Rmail has been extended to recognize more forms of digest messages.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7708
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7709 ** Now, most coding systems set in keyboard coding system work not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7710 only for character input, but also in incremental search. The
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7711 exceptions are such coding systems that handle 2-byte character sets
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7712 (e.g euc-kr, euc-jp) and that use ISO's escape sequence
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7713 (e.g. iso-2022-jp). They are ignored in incremental search.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7714
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7715 ** Support for Macintosh PowerPC-based machines running GNU/Linux has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7716 been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7717
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
7718
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7719 * Emacs 20.6 is a bug-fix release with one user-visible change
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7720
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7721 ** Support for ARM-based non-RISCiX machines has been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7722
35469
Sam Steingold <sds@gnu.org>
parents: 35460
diff changeset
7723
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
7724
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7725 * Emacs 20.5 is a bug-fix release with no user-visible changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7726
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7727 ** Not new, but not mentioned before:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7728 M-w when Transient Mark mode is enabled disables the mark.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
7729
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7730 * Changes in Emacs 20.4
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7731
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7732 ** Init file may be called .emacs.el.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7733
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7734 You can now call the Emacs init file `.emacs.el'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7735 Formerly the name had to be `.emacs'. If you use the name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7736 `.emacs.el', you can byte-compile the file in the usual way.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7737
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7738 If both `.emacs' and `.emacs.el' exist, the latter file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7739 is the one that is used.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7740
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7741 ** shell-command, and shell-command-on-region, now return
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7742 the exit code of the command (unless it is asynchronous).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7743 Also, you can specify a place to put the error output,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7744 separate from the command's regular output.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7745 Interactively, the variable shell-command-default-error-buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7746 says where to put error output; set it to a buffer name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7747 In calls from Lisp, an optional argument ERROR-BUFFER specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7748 the buffer name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7749
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7750 When you specify a non-nil error buffer (or buffer name), any error
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7751 output is inserted before point in that buffer, with \f\n to separate
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7752 it from the previous batch of error output. The error buffer is not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7753 cleared, so error output from successive commands accumulates there.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7754
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7755 ** Setting the default value of enable-multibyte-characters to nil in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7756 the .emacs file, either explicitly using setq-default, or via Custom,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7757 is now essentially equivalent to using --unibyte: all buffers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7758 created during startup will be made unibyte after loading .emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7759
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7760 ** C-x C-f now handles the wildcards * and ? in file names. For
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7761 example, typing C-x C-f c*.c RET visits all the files whose names
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7762 match c*.c. To visit a file whose name contains * or ?, add the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7763 quoting sequence /: to the beginning of the file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7764
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7765 ** The M-x commands keep-lines, flush-lines and count-matches
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7766 now have the same feature as occur and query-replace:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7767 if the pattern contains any upper case letters, then
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7768 they never ignore case.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7769
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7770 ** The end-of-line format conversion feature previously mentioned
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7771 under `* Emacs 20.1 changes for MS-DOS and MS-Windows' actually
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7772 applies to all operating systems. Emacs recognizes from the contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7773 of a file what convention it uses to separate lines--newline, CRLF, or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7774 just CR--and automatically converts the contents to the normal Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7775 convention (using newline to separate lines) for editing. This is a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7776 part of the general feature of coding system conversion.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7777
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7778 If you subsequently save the buffer, Emacs converts the text back to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7779 the same format that was used in the file before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7780
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7781 You can turn off end-of-line conversion by setting the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7782 `inhibit-eol-conversion' to non-nil, e.g. with Custom in the MULE group.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7783
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7784 ** The character set property `prefered-coding-system' has been
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7785 renamed to `preferred-coding-system', for the sake of correct spelling.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7786 This is a fairly internal feature, so few programs should be affected.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7787
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7788 ** Mode-line display of end-of-line format is changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7789 The indication of the end-of-line format of the file visited by a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7790 buffer is now more explicit when that format is not the usual one for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7791 your operating system. For example, the DOS-style end-of-line format
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7792 is displayed as "(DOS)" on Unix and GNU/Linux systems. The usual
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7793 end-of-line format is still displayed as a single character (colon for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7794 Unix, backslash for DOS and Windows, and forward slash for the Mac).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7795
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7796 The values of the variables eol-mnemonic-unix, eol-mnemonic-dos,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7797 eol-mnemonic-mac, and eol-mnemonic-undecided, which are strings,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7798 control what is displayed in the mode line for each end-of-line
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7799 format. You can now customize these variables.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7800
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7801 ** In the previous version of Emacs, tar-mode didn't work well if a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7802 filename contained non-ASCII characters. Now this is fixed. Such a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7803 filename is decoded by file-name-coding-system if the default value of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7804 enable-multibyte-characters is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7805
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7806 ** The command temp-buffer-resize-mode toggles a minor mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7807 in which temporary buffers (such as help buffers) are given
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7808 windows just big enough to hold the whole contents.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7809
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7810 ** If you use completion.el, you must now run the function
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7811 dynamic-completion-mode to enable it. Just loading the file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7812 doesn't have any effect.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7813
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7814 ** In Flyspell mode, the default is now to make just one Ispell process,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7815 not one per buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7816
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7817 ** If you use iswitchb but do not call (iswitchb-default-keybindings) to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7818 use the default keybindings, you will need to add the following line:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7819 (add-hook 'minibuffer-setup-hook 'iswitchb-minibuffer-setup)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7820
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7821 ** Auto-show mode is no longer enabled just by loading auto-show.el.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7822 To control it, set `auto-show-mode' via Custom or use the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7823 `auto-show-mode' command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7824
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7825 ** Handling of X fonts' ascent/descent parameters has been changed to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7826 avoid redisplay problems. As a consequence, compared with previous
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7827 versions the line spacing and frame size now differ with some font
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7828 choices, typically increasing by a pixel per line. This change
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7829 occurred in version 20.3 but was not documented then.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7830
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7831 ** If you select the bar cursor style, it uses the frame's
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7832 cursor-color, rather than the cursor foreground pixel.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7833
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7834 ** In multibyte mode, Rmail decodes incoming MIME messages using the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7835 character set specified in the message. If you want to disable this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7836 feature, set the variable rmail-decode-mime-charset to nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7837
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7838 ** Not new, but not mentioned previously in NEWS: when you use #! at
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7839 the beginning of a file to make it executable and specify an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7840 interpreter program, Emacs looks on the second line for the -*- mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7841 and variable specification, as well as on the first line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7842
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7843 ** Support for IBM codepage encoding of non-ASCII characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7844
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7845 The new command M-x codepage-setup creates a special coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7846 that can be used to convert text between a specific IBM codepage and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7847 one of the character sets built into Emacs which matches that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7848 codepage. For example, codepage 850 corresponds to Latin-1 character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7849 set, codepage 855 corresponds to Cyrillic-ISO character set, etc.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7850
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7851 Windows codepages 1250, 1251 and some others, where Windows deviates
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7852 from the corresponding ISO character set, are also supported.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7853
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7854 IBM box-drawing characters and other glyphs which don't have
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7855 equivalents in the corresponding ISO character set, are converted to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7856 a character defined by dos-unsupported-char-glyph on MS-DOS, and to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7857 `?' on other systems.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7858
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7859 IBM codepages are widely used on MS-DOS and MS-Windows, so this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7860 feature is most useful on those platforms, but it can also be used on
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7861 Unix.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7862
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7863 Emacs compiled for MS-DOS automatically loads the support for the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7864 current codepage when it starts.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7865
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7866 ** Mail changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7867
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7868 *** When mail is sent using compose-mail (C-x m), and if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7869 `mail-send-nonascii' is set to the new default value `mime',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7870 appropriate MIME headers are added. The headers are added only if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7871 non-ASCII characters are present in the body of the mail, and no other
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7872 MIME headers are already present. For example, the following three
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7873 headers are added if the coding system used in the *mail* buffer is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7874 latin-1:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7875
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7876 MIME-version: 1.0
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7877 Content-type: text/plain; charset=iso-8859-1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7878 Content-Transfer-Encoding: 8bit
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7879
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7880 *** The new variable default-sendmail-coding-system specifies the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7881 default way to encode outgoing mail. This has higher priority than
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7882 default-buffer-file-coding-system but has lower priority than
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7883 sendmail-coding-system and the local value of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7884 buffer-file-coding-system.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7885
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7886 You should not set this variable manually. Instead, set
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7887 sendmail-coding-system to specify a fixed encoding for all outgoing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7888 mail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7889
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7890 *** When you try to send a message that contains non-ASCII characters,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7891 if the coding system specified by those variables doesn't handle them,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7892 Emacs will ask you to select a suitable coding system while showing a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7893 list of possible coding systems.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7894
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7895 ** CC Mode changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7896
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7897 *** c-default-style can now take an association list that maps major
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7898 modes to style names. When this variable is an alist, Java mode no
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7899 longer hardcodes a setting to "java" style. See the variable's
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7900 docstring for details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7901
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7902 *** It's now possible to put a list as the offset on a syntactic
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7903 symbol. The list is evaluated recursively until a non-nil offset is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7904 found. This is useful to combine several lineup functions to act in a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7905 prioritized order on a single line. However, none of the supplied
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7906 lineup functions use this feature currently.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7907
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7908 *** New syntactic symbol catch-clause, which is used on the "catch" and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7909 "finally" lines in try-catch constructs in C++ and Java.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7910
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7911 *** New cleanup brace-catch-brace on c-cleanup-list, which does for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7912 "catch" lines what brace-elseif-brace does for "else if" lines.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7913
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7914 *** The braces of Java anonymous inner classes are treated separately
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7915 from the braces of other classes in auto-newline mode. Two new
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7916 symbols inexpr-class-open and inexpr-class-close may be used on
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7917 c-hanging-braces-alist to control the automatic newlines used for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7918 anonymous classes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7919
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7920 *** Support for the Pike language added, along with new Pike specific
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7921 syntactic symbols: inlambda, lambda-intro-cont
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7923 *** Support for Java anonymous classes via new syntactic symbol
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7924 inexpr-class. New syntactic symbol inexpr-statement for Pike
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7925 support and gcc-style statements inside expressions. New lineup
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7926 function c-lineup-inexpr-block.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7927
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7928 *** New syntactic symbol brace-entry-open which is used in brace lists
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7929 (i.e. static initializers) when a list entry starts with an open
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7930 brace. These used to be recognized as brace-list-entry's.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7931 c-electric-brace also recognizes brace-entry-open braces
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7932 (brace-list-entry's can no longer be electrified).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7933
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7934 *** New command c-indent-line-or-region, not bound by default.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7935
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7936 *** `#' is only electric when typed in the indentation of a line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7937
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7938 *** Parentheses are now electric (via the new command c-electric-paren)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7939 for auto-reindenting lines when parens are typed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7940
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7941 *** In "gnu" style, inline-open offset is now set to zero.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7942
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7943 *** Uniform handling of the inclass syntactic symbol. The indentation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7944 associated with it is now always relative to the class opening brace.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7945 This means that the indentation behavior has changed in some
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7946 circumstances, but only if you've put anything besides 0 on the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7947 class-open syntactic symbol (none of the default styles do that).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7948
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7949 ** Gnus changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7950
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7951 *** New functionality for using Gnus as an offline newsreader has been
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7952 added. A plethora of new commands and modes have been added. See the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7953 Gnus manual for the full story.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7954
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7955 *** The nndraft backend has returned, but works differently than
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7956 before. All Message buffers are now also articles in the nndraft
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7957 group, which is created automatically.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7958
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7959 *** `gnus-alter-header-function' can now be used to alter header
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7960 values.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7961
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7962 *** `gnus-summary-goto-article' now accept Message-ID's.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7963
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7964 *** A new Message command for deleting text in the body of a message
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7965 outside the region: `C-c C-v'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7966
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7967 *** You can now post to component group in nnvirtual groups with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7968 `C-u C-c C-c'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7969
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7970 *** `nntp-rlogin-program' -- new variable to ease customization.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7971
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7972 *** `C-u C-c C-c' in `gnus-article-edit-mode' will now inhibit
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7973 re-highlighting of the article buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7974
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7975 *** New element in `gnus-boring-article-headers' -- `long-to'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7976
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7977 *** `M-i' symbolic prefix command. See the section "Symbolic
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7978 Prefixes" in the Gnus manual for details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7979
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7980 *** `L' and `I' in the summary buffer now take the symbolic prefix
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7981 `a' to add the score rule to the "all.SCORE" file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7982
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7983 *** `gnus-simplify-subject-functions' variable to allow greater
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7984 control over simplification.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7985
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7986 *** `A T' -- new command for fetching the current thread.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7987
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7988 *** `/ T' -- new command for including the current thread in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7989 limit.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7990
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7991 *** `M-RET' is a new Message command for breaking cited text.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7992
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7993 *** \\1-expressions are now valid in `nnmail-split-methods'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7994
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7995 *** The `custom-face-lookup' function has been removed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7996 If you used this function in your initialization files, you must
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7997 rewrite them to use `face-spec-set' instead.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7998
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
7999 *** Canceling now uses the current select method. Symbolic prefix
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8000 `a' forces normal posting method.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8001
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8002 *** New command to translate M******** sm*rtq**t*s into proper text
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8003 -- `W d'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8004
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8005 *** For easier debugging of nntp, you can set `nntp-record-commands'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8006 to a non-nil value.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8007
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8008 *** nntp now uses ~/.authinfo, a .netrc-like file, for controlling
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8009 where and how to send AUTHINFO to NNTP servers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8010
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8011 *** A command for editing group parameters from the summary buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8012 has been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8013
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8014 *** A history of where mails have been split is available.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8015
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8016 *** A new article date command has been added -- `article-date-iso8601'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8017
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8018 *** Subjects can be simplified when threading by setting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8019 `gnus-score-thread-simplify'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8020
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8021 *** A new function for citing in Message has been added --
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8022 `message-cite-original-without-signature'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8023
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8024 *** `article-strip-all-blank-lines' -- new article command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8025
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8026 *** A new Message command to kill to the end of the article has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8027 been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8028
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8029 *** A minimum adaptive score can be specified by using the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8030 `gnus-adaptive-word-minimum' variable.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8031
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8032 *** The "lapsed date" article header can be kept continually
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8033 updated by the `gnus-start-date-timer' command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8034
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8035 *** Web listserv archives can be read with the nnlistserv backend.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8036
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8037 *** Old dejanews archives can now be read by nnweb.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8038
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8039 *** `gnus-posting-styles' has been re-activated.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8040
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8041 ** Changes to TeX and LaTeX mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8042
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8043 *** The new variable `tex-start-options-string' can be used to give
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8044 options for the TeX run. The default value causes TeX to run in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8045 nonstopmode. For an interactive TeX run set it to nil or "".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8046
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8047 *** The command `tex-feed-input' sends input to the Tex Shell. In a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8048 TeX buffer it is bound to the keys C-RET, C-c RET, and C-c C-m (some
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8049 of these keys may not work on all systems). For instance, if you run
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8050 TeX interactively and if the TeX run stops because of an error, you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8051 can continue it without leaving the TeX buffer by typing C-RET.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8052
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8053 *** The Tex Shell Buffer is now in `compilation-shell-minor-mode'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8054 All error-parsing commands of the Compilation major mode are available
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8055 but bound to keys that don't collide with the shell. Thus you can use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8056 the Tex Shell for command line executions like a usual shell.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8057
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8058 *** The commands `tex-validate-region' and `tex-validate-buffer' check
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8059 the matching of braces and $'s. The errors are listed in a *Occur*
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8060 buffer and you can use C-c C-c or mouse-2 to go to a particular
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8061 mismatch.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8062
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8063 ** Changes to RefTeX mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8064
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8065 *** The table of contents buffer can now also display labels and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8066 file boundaries in addition to sections. Use `l', `i', and `c' keys.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8067
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8068 *** Labels derived from context (the section heading) are now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8069 lowercase by default. To make the label legal in LaTeX, latin-1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8070 characters will lose their accent. All Mule characters will be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8071 removed from the label.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8072
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8073 *** The automatic display of cross reference information can also use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8074 a window instead of the echo area. See variable `reftex-auto-view-crossref'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8075
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8076 *** kpsewhich can be used by RefTeX to find TeX and BibTeX files. See the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8077 customization group `reftex-finding-files'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8078
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8079 *** The option `reftex-bibfile-ignore-list' has been renamed to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8080 `reftex-bibfile-ignore-regexps' and indeed can be fed with regular
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8081 expressions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8082
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8083 *** Multiple Selection buffers are now hidden buffers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8084
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8085 ** New/deleted modes and packages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8086
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8087 *** The package snmp-mode.el provides major modes for editing SNMP and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8088 SNMPv2 MIBs. It has entries on `auto-mode-alist'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8089
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8090 *** The package sql.el provides a major mode, M-x sql-mode, for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8091 editing SQL files, and M-x sql-interactive-mode for interacting with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8092 SQL interpreters. It has an entry on `auto-mode-alist'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8093
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8094 *** M-x highlight-changes-mode provides a minor mode displaying buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8095 changes with a special face.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8096
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8097 *** ispell4.el has been deleted. It got in the way of ispell.el and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8098 this was hard to fix reliably. It has long been obsolete -- use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8099 Ispell 3.1 and ispell.el.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
8100
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8101 * MS-DOS changes in Emacs 20.4
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8102
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8103 ** Emacs compiled for MS-DOS now supports MULE features better.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8104 This includes support for display of all ISO 8859-N character sets,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8105 conversion to and from IBM codepage encoding of non-ASCII characters,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8106 and automatic setup of the MULE environment at startup. For details,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8107 check out the section `MS-DOS and MULE' in the manual.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8108
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8109 The MS-DOS installation procedure automatically configures and builds
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8110 Emacs with input method support if it finds an unpacked Leim
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8111 distribution when the config.bat script is run.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8112
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8113 ** Formerly, the value of lpr-command did not affect printing on
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8114 MS-DOS unless print-region-function was set to nil, but now it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8115 controls whether an external program is invoked or output is written
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8116 directly to a printer port. Similarly, in the previous version of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8117 Emacs, the value of ps-lpr-command did not affect PostScript printing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8118 on MS-DOS unless ps-printer-name was set to something other than a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8119 string (eg. t or `pipe'), but now it controls whether an external
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8120 program is used. (These changes were made so that configuration of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8121 printing variables would be almost identical across all platforms.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8122
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8123 ** In the previous version of Emacs, PostScript and non-PostScript
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8124 output was piped to external programs, but because most print programs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8125 available for MS-DOS and MS-Windows cannot read data from their standard
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8126 input, on those systems the data to be output is now written to a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8127 temporary file whose name is passed as the last argument to the external
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8128 program.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8129
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8130 An exception is made for `print', a standard program on Windows NT,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8131 and `nprint', a standard program on Novell Netware. For both of these
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8132 programs, the command line is constructed in the appropriate syntax
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8133 automatically, using only the value of printer-name or ps-printer-name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8134 as appropriate--the value of the relevant `-switches' variable is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8135 ignored, as both programs have no useful switches.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8136
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8137 ** The value of the variable dos-printer (cf. dos-ps-printer), if it has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8138 a value, overrides the value of printer-name (cf. ps-printer-name), on
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8139 MS-DOS and MS-Windows only. This has been true since version 20.3, but
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8140 was not documented clearly before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8141
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8142 ** All the Emacs games now work on MS-DOS terminals.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8143 This includes Tetris and Snake.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
8144
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8145 * Lisp changes in Emacs 20.4
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8146
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8147 ** New functions line-beginning-position and line-end-position
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8148 return the position of the beginning or end of the current line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8149 They both accept an optional argument, which has the same
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8150 meaning as the argument to beginning-of-line or end-of-line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8151
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8152 ** find-file and allied functions now have an optional argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8153 WILDCARD. If this is non-nil, they do wildcard processing,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8154 and visit all files that match the wildcard pattern.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8155
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8156 ** Changes in the file-attributes function.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8157
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8158 *** The file size returned by file-attributes may be an integer or a float.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8159 It is an integer if the size fits in a Lisp integer, float otherwise.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8160
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8161 *** The inode number returned by file-attributes may be an integer (if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8162 the number fits in a Lisp integer) or a cons cell containing two
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8163 integers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8164
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8165 ** The new function directory-files-and-attributes returns a list of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8166 files in a directory and their attributes. It accepts the same
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8167 arguments as directory-files and has similar semantics, except that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8168 file names and attributes are returned.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8169
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8170 ** The new function file-attributes-lessp is a helper function for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8171 sorting the list generated by directory-files-and-attributes. It
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
8172 accepts two arguments, each a list of a file name and its attributes.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8173 It compares the file names of each according to string-lessp and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8174 returns the result.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8175
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8176 ** The new function file-expand-wildcards expands a wildcard-pattern
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8177 to produce a list of existing files that match the pattern.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8178
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8179 ** New functions for base64 conversion:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8180
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8181 The function base64-encode-region converts a part of the buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8182 into the base64 code used in MIME. base64-decode-region
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8183 performs the opposite conversion. Line-breaking is supported
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8184 optionally.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8185
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8186 Functions base64-encode-string and base64-decode-string do a similar
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8187 job on the text in a string. They return the value as a new string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8188
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8189 **
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8190 The new function process-running-child-p
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8191 will tell you if a subprocess has given control of its
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8192 terminal to its own child process.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8193
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8194 ** interrupt-process and such functions have a new feature:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8195 when the second argument is `lambda', they send a signal
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8196 to the running child of the subshell, if any, but if the shell
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8197 itself owns its terminal, no signal is sent.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8198
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8199 ** There are new widget types `plist' and `alist' which can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8200 be used for customizing variables whose values are plists or alists.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8201
42974
b5c45e2ad1ae Fix typo.
Pavel Janík <Pavel@Janik.cz>
parents: 42958
diff changeset
8202 ** easymenu.el now understands `:key-sequence' and `:style button'.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8203 :included is an alias for :visible.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8204
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8205 easy-menu-add-item now understands the values returned by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8206 easy-menu-remove-item and easy-menu-item-present-p. This can be used
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8207 to move or copy menu entries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8208
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8209 ** Multibyte editing changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8210
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8211 *** The definitions of sref and char-bytes are changed. Now, sref is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8212 an alias of aref and char-bytes always returns 1. This change is to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8213 make some Emacs Lisp code which works on 20.2 and earlier also
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8214 work on the latest Emacs. Such code uses a combination of sref and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8215 char-bytes in a loop typically as below:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8216 (setq char (sref str idx)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8217 idx (+ idx (char-bytes idx)))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8218 The byte-compiler now warns that this is obsolete.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8219
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8220 If you want to know how many bytes a specific multibyte character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8221 (say, CH) occupies in a multibyte buffer, use this code:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8222 (charset-bytes (char-charset ch))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8223
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8224 *** In multibyte mode, when you narrow a buffer to some region, and the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8225 region is preceded or followed by non-ASCII codes, inserting or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8226 deleting at the head or the end of the region may signal this error:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8227
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
8228 Byte combining across boundary of accessible buffer text inhibited
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8229
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8230 This is to avoid some bytes being combined together into a character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8231 across the boundary.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8232
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8233 *** The functions find-charset-region and find-charset-string include
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8234 `unknown' in the returned list in the following cases:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8235 o The current buffer or the target string is unibyte and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8236 contains 8-bit characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8237 o The current buffer or the target string is multibyte and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8238 contains invalid characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8239
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8240 *** The functions decode-coding-region and encode-coding-region remove
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8241 text properties of the target region. Ideally, they should correctly
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8242 preserve text properties, but for the moment, it's hard. Removing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8243 text properties is better than preserving them in a less-than-correct
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8244 way.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8245
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8246 *** prefer-coding-system sets EOL conversion of default coding systems.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8247 If the argument to prefer-coding-system specifies a certain type of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8248 end of line conversion, the default coding systems set by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8249 prefer-coding-system will specify that conversion type for end of line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8250
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8251 *** The new function thai-compose-string can be used to properly
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8252 compose Thai characters in a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8253
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8254 ** The primitive `define-prefix-command' now takes an optional third
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8255 argument NAME, which should be a string. It supplies the menu name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8256 for the created keymap. Keymaps created in order to be displayed as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8257 menus should always use the third argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8258
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8259 ** The meanings of optional second arguments for read-char,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8260 read-event, and read-char-exclusive are flipped. Now the second
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8261 arguments are INHERIT-INPUT-METHOD. These functions use the current
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8262 input method (if any) if and only if INHERIT-INPUT-METHOD is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8263
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8264 ** The new function clear-this-command-keys empties out the contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8265 of the vector that (this-command-keys) returns. This is useful in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8266 programs that read passwords, to prevent the passwords from echoing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8267 inadvertently as part of the next command in certain cases.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8268
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8269 ** The new macro `with-temp-message' displays a temporary message in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8270 the echo area, while executing some Lisp code. Like `progn', it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8271 returns the value of the last form, but it also restores the previous
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8272 echo area contents.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8273
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8274 (with-temp-message MESSAGE &rest BODY)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8275
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8276 ** The function `require' now takes an optional third argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8277 NOERROR. If it is non-nil, then there is no error if the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8278 requested feature cannot be loaded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8279
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8280 ** In the function modify-face, an argument of (nil) for the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8281 foreground color, background color or stipple pattern
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8282 means to clear out that attribute.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8283
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8284 ** The `outer-window-id' frame property of an X frame
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8285 gives the window number of the outermost X window for the frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8286
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8287 ** Temporary buffers made with with-output-to-temp-buffer are now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8288 read-only by default, and normally use the major mode Help mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8289 unless you put them in some other non-Fundamental mode before the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8290 end of with-output-to-temp-buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8291
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8292 ** The new functions gap-position and gap-size return information on
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8293 the gap of the current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8294
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8295 ** The new functions position-bytes and byte-to-position provide a way
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8296 to convert between character positions and byte positions in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8297 current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8298
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8299 ** vc.el defines two new macros, `edit-vc-file' and `with-vc-file', to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8300 facilitate working with version-controlled files from Lisp programs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8301 These macros check out a given file automatically if needed, and check
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8302 it back in after any modifications have been made.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
8303
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8304 * Installation Changes in Emacs 20.3
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8305
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8306 ** The default value of load-path now includes most subdirectories of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8307 the site-specific directories /usr/local/share/emacs/site-lisp and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8308 /usr/local/share/emacs/VERSION/site-lisp, in addition to those
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8309 directories themselves. Both immediate subdirectories and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8310 subdirectories multiple levels down are added to load-path.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8311
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8312 Not all subdirectories are included, though. Subdirectories whose
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8313 names do not start with a letter or digit are excluded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8314 Subdirectories named RCS or CVS are excluded. Also, a subdirectory
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8315 which contains a file named `.nosearch' is excluded. You can use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8316 these methods to prevent certain subdirectories from being searched.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8317
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8318 Emacs finds these subdirectories and adds them to load-path when it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8319 starts up. While it would be cleaner to find the subdirectories each
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8320 time Emacs loads a file, that would be much slower.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8321
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8322 This feature is an incompatible change. If you have stored some Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8323 Lisp files in a subdirectory of the site-lisp directory specifically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8324 to prevent them from being used, you will need to rename the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8325 subdirectory to start with a non-alphanumeric character, or create a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8326 `.nosearch' file in it, in order to continue to achieve the desired
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8327 results.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8328
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8329 ** Emacs no longer includes an old version of the C preprocessor from
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8330 GCC. This was formerly used to help compile Emacs with C compilers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8331 that had limits on the significant length of an identifier, but in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8332 fact we stopped supporting such compilers some time ago.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
8333
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8334 * Changes in Emacs 20.3
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8335
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8336 ** The new command C-x z (repeat) repeats the previous command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8337 including its argument. If you repeat the z afterward,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8338 it repeats the command additional times; thus, you can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8339 perform many repetitions with one keystroke per repetition.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8340
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8341 ** Emacs now supports "selective undo" which undoes only within a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8342 specified region. To do this, set point and mark around the desired
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8343 region and type C-u C-x u (or C-u C-_). You can then continue undoing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8344 further, within the same region, by repeating the ordinary undo
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8345 command C-x u or C-_. This will keep undoing changes that were made
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8346 within the region you originally specified, until either all of them
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8347 are undone, or it encounters a change which crosses the edge of that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8348 region.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8349
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8350 In Transient Mark mode, undoing when a region is active requests
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8351 selective undo.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8352
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8353 ** If you specify --unibyte when starting Emacs, then all buffers are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8354 unibyte, except when a Lisp program specifically creates a multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8355 buffer. Setting the environment variable EMACS_UNIBYTE has the same
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8356 effect. The --no-unibyte option overrides EMACS_UNIBYTE and directs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8357 Emacs to run normally in multibyte mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8358
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8359 The option --unibyte does not affect the reading of Emacs Lisp files,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8360 though. If you want a Lisp file to be read in unibyte mode, use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8361 -*-unibyte: t;-*- on its first line. That will force Emacs to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8362 load that file in unibyte mode, regardless of how Emacs was started.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8363
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8364 ** toggle-enable-multibyte-characters no longer has a key binding and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8365 no longer appears in the menu bar. We've realized that changing the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8366 enable-multibyte-characters variable in an existing buffer is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8367 something that most users not do.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8368
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8369 ** You can specify a coding system to use for the next cut or paste
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8370 operations through the window system with the command C-x RET X.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8371 The coding system can make a difference for communication with other
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8372 applications.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8373
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8374 C-x RET x specifies a coding system for all subsequent cutting and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8375 pasting operations.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8376
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8377 ** You can specify the printer to use for commands that do printing by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8378 setting the variable `printer-name'. Just what a printer name looks
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8379 like depends on your operating system. You can specify a different
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8380 printer for the Postscript printing commands by setting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8381 `ps-printer-name'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8382
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8383 ** Emacs now supports on-the-fly spell checking by the means of a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8384 minor mode. It is called M-x flyspell-mode. You don't have to remember
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8385 any other special commands to use it, and you will hardly notice it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8386 except when you make a spelling error. Flyspell works by highlighting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8387 incorrect words as soon as they are completed or as soon as the cursor
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8388 hits a new word.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8389
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8390 Flyspell mode works with whichever dictionary you have selected for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8391 Ispell in Emacs. In TeX mode, it understands TeX syntax so as not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8392 to be confused by TeX commands.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8393
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8394 You can correct a misspelled word by editing it into something
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8395 correct. You can also correct it, or accept it as correct, by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8396 clicking on the word with Mouse-2; that gives you a pop-up menu
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8397 of various alternative replacements and actions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8398
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8399 Flyspell mode also proposes "automatic" corrections. M-TAB replaces
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8400 the current misspelled word with a possible correction. If several
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8401 corrections are made possible, M-TAB cycles through them in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8402 alphabetical order, or in order of decreasing likelihood if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8403 flyspell-sort-corrections is nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8404
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8405 Flyspell mode also flags an error when a word is repeated, if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8406 flyspell-mark-duplications-flag is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8407
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8408 ** Changes in input method usage.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8409
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8410 Now you can use arrow keys (right, left, down, up) for selecting among
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8411 the alternatives just the same way as you do by C-f, C-b, C-n, and C-p
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8412 respectively.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8413
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8414 You can use the ENTER key to accept the current conversion.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8415
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8416 If you type TAB to display a list of alternatives, you can select one
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8417 of the alternatives with Mouse-2.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8418
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8419 The meaning of the variable `input-method-verbose-flag' is changed so
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8420 that you can set it to t, nil, `default', or `complex-only'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8421
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8422 If the value is nil, extra guidance is never given.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8423
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8424 If the value is t, extra guidance is always given.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8425
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8426 If the value is `complex-only', extra guidance is always given only
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8427 when you are using complex input methods such as chinese-py.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8428
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8429 If the value is `default' (this is the default), extra guidance is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8430 given in the following case:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8431 o When you are using a complex input method.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8432 o When you are using a simple input method but not in the minibuffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8433
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8434 If you are using Emacs through a very slow line, setting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8435 input-method-verbose-flag to nil or to complex-only is a good choice,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8436 and if you are using an input method you are not familiar with,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8437 setting it to t is helpful.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8438
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8439 The old command select-input-method is now called set-input-method.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8440
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8441 In the language environment "Korean", you can use the following
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8442 keys:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8443 Shift-SPC toggle-korean-input-method
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8444 C-F9 quail-hangul-switch-symbol-ksc
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8445 F9 quail-hangul-switch-hanja
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8446 These key bindings are canceled when you switch to another language
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8447 environment.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8448
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8449 ** The minibuffer history of file names now records the specified file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8450 names, not the entire minibuffer input. For example, if the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8451 minibuffer starts out with /usr/foo/, you might type in /etc/passwd to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8452 get
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8453
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8454 /usr/foo//etc/passwd
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8455
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8456 which stands for the file /etc/passwd.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8457
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8458 Formerly, this used to put /usr/foo//etc/passwd in the history list.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8459 Now this puts just /etc/passwd in the history list.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8460
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8461 ** If you are root, Emacs sets backup-by-copying-when-mismatch to t
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8462 at startup, so that saving a file will be sure to preserve
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8463 its owner and group.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8464
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8465 ** find-func.el can now also find the place of definition of Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8466 Lisp variables in user-loaded libraries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8467
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8468 ** C-x r t (string-rectangle) now deletes the existing rectangle
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8469 contents before inserting the specified string on each line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8470
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8471 ** There is a new command delete-whitespace-rectangle
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8472 which deletes whitespace starting from a particular column
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8473 in all the lines on a rectangle. The column is specified
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8474 by the left edge of the rectangle.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8475
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8476 ** You can now store a number into a register with C-u NUMBER C-x r n REG,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8477 increment it by INC with C-u INC C-x r + REG (to increment by one, omit
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8478 C-u INC), and insert it in the buffer with C-x r g REG. This is useful
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8479 for writing keyboard macros.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8480
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8481 ** The new command M-x speedbar displays a frame in which directories,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8482 files, and tags can be displayed, manipulated, and jumped to. The
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8483 frame defaults to 20 characters in width, and is the same height as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8484 the frame that it was started from. Some major modes define
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8485 additional commands for the speedbar, including Rmail, GUD/GDB, and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8486 info.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8487
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8488 ** query-replace-regexp is now bound to C-M-%.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8489
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8490 ** In Transient Mark mode, when the region is active, M-x
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8491 query-replace and the other replace commands now operate on the region
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8492 contents only.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8493
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8494 ** M-x write-region, when used interactively, now asks for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8495 confirmation before overwriting an existing file. When you call
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8496 the function from a Lisp program, a new optional argument CONFIRM
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8497 says whether to ask for confirmation in this case.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8498
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8499 ** If you use find-file-literally and the file is already visited
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8500 non-literally, the command asks you whether to revisit the file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8501 literally. If you say no, it signals an error.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8502
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8503 ** Major modes defined with the "derived mode" feature
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8504 now use the proper name for the mode hook: WHATEVER-mode-hook.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8505 Formerly they used the name WHATEVER-mode-hooks, but that is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8506 inconsistent with Emacs conventions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8507
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8508 ** shell-command-on-region (and shell-command) reports success or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8509 failure if the command produces no output.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8510
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8511 ** Set focus-follows-mouse to nil if your window system or window
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8512 manager does not transfer focus to another window when you just move
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8513 the mouse.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8514
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8515 ** mouse-menu-buffer-maxlen has been renamed to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8516 mouse-buffer-menu-maxlen to be consistent with the other related
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8517 function and variable names.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8518
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8519 ** The new variable auto-coding-alist specifies coding systems for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8520 reading specific files. This has higher priority than
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8521 file-coding-system-alist.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8522
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8523 ** If you set the variable unibyte-display-via-language-environment to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8524 t, then Emacs displays non-ASCII characters are displayed by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8525 converting them to the equivalent multibyte characters according to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8526 the current language environment. As a result, they are displayed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8527 according to the current fontset.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8528
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8529 ** C-q's handling of codes in the range 0200 through 0377 is changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8530
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8531 The codes in the range 0200 through 0237 are inserted as one byte of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8532 that code regardless of the values of nonascii-translation-table and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8533 nonascii-insert-offset.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8534
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8535 For the codes in the range 0240 through 0377, if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8536 enable-multibyte-characters is non-nil and nonascii-translation-table
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8537 nor nonascii-insert-offset can't convert them to valid multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8538 characters, they are converted to Latin-1 characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8539
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8540 ** If you try to find a file that is not read-accessible, you now get
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8541 an error, rather than an empty buffer and a warning.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8542
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8543 ** In the minibuffer history commands M-r and M-s, an upper case
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8544 letter in the regular expression forces case-sensitive search.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8545
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8546 ** In the *Help* buffer, cross-references to commands and variables
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8547 are inferred and hyperlinked. Use C-h m in Help mode for the relevant
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8548 command keys.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8549
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8550 ** M-x apropos-command, with a prefix argument, no longer looks for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8551 user option variables--instead it looks for noninteractive functions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8552
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8553 Meanwhile, the command apropos-variable normally searches for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8554 user option variables; with a prefix argument, it looks at
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8555 all variables that have documentation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8556
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8557 ** When you type a long line in the minibuffer, and the minibuffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8558 shows just one line, automatically scrolling works in a special way
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8559 that shows you overlap with the previous line of text. The variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8560 minibuffer-scroll-overlap controls how many characters of overlap
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8561 it should show; the default is 20.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8562
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8563 Meanwhile, Resize Minibuffer mode is still available; in that mode,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8564 the minibuffer grows taller (up to a point) as needed to show the whole
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8565 of your input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8566
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8567 ** The new command M-x customize-changed-options lets you customize
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8568 all the options whose meanings or default values have changed in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8569 recent Emacs versions. You specify a previous Emacs version number as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8570 argument, and the command creates a customization buffer showing all
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8571 the customizable options which were changed since that version.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8572 Newly added options are included as well.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8573
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8574 If you don't specify a particular version number argument,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8575 then the customization buffer shows all the customizable options
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8576 for which Emacs versions of changes are recorded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8577
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8578 This function is also bound to the Changed Options entry in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8579 Customize menu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8580
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8581 ** When you run M-x grep with a prefix argument, it figures out
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8582 the tag around point and puts that into the default grep command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8583
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8584 ** The new command M-* (pop-tag-mark) pops back through a history of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8585 buffer positions from which M-. or other tag-finding commands were
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8586 invoked.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8587
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8588 ** The new variable comment-padding specifies the number of spaces
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8589 that `comment-region' will insert before the actual text of the comment.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8590 The default is 1.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8591
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8592 ** In Fortran mode the characters `.', `_' and `$' now have symbol
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8593 syntax, not word syntax. Fortran mode now supports `imenu' and has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8594 new commands fortran-join-line (M-^) and fortran-narrow-to-subprogram
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8595 (C-x n d). M-q can be used to fill a statement or comment block
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8596 sensibly.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8597
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8598 ** GUD now supports jdb, the Java debugger, and pdb, the Python debugger.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8599
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8600 ** If you set the variable add-log-keep-changes-together to a non-nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8601 value, the command `C-x 4 a' will automatically notice when you make
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8602 two entries in one day for one file, and combine them.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8603
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8604 ** You can use the command M-x diary-mail-entries to mail yourself a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8605 reminder about upcoming diary entries. See the documentation string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8606 for a sample shell script for calling this function automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8607 every night.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8608
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8609 ** Desktop changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8610
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8611 *** All you need to do to enable use of the Desktop package, is to set
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8612 the variable desktop-enable to t with Custom.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8613
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8614 *** Minor modes are now restored. Which minor modes are restored
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8615 and how modes are restored is controlled by `desktop-minor-mode-table'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8616
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8617 ** There is no need to do anything special, now, to enable Gnus to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8618 read and post multi-lingual articles.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8619
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8620 ** Outline mode has now support for showing hidden outlines when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8621 doing an isearch. In order for this to happen search-invisible should
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8622 be set to open (the default). If an isearch match is inside a hidden
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8623 outline the outline is made visible. If you continue pressing C-s and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8624 the match moves outside the formerly invisible outline, the outline is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8625 made invisible again.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8626
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8627 ** Mail reading and sending changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8628
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8629 *** The Rmail e command now switches to displaying the whole header of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8630 the message before it lets you edit the message. This is so that any
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8631 changes you make in the header will not be lost if you subsequently
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8632 toggle.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8633
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8634 *** The w command in Rmail, which writes the message body into a file,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8635 now works in the summary buffer as well. (The command to delete the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8636 summary buffer is now Q.) The default file name for the w command, if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8637 the message has no subject, is stored in the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8638 rmail-default-body-file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8639
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8640 *** Most of the commands and modes that operate on mail and netnews no
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8641 longer depend on the value of mail-header-separator. Instead, they
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8642 handle whatever separator the buffer happens to use.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8643
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8644 *** If you set mail-signature to a value which is not t, nil, or a string,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8645 it should be an expression. When you send a message, this expression
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8646 is evaluated to insert the signature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8647
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8648 *** The new Lisp library feedmail.el (version 8) enhances processing of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8649 outbound email messages. It works in coordination with other email
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8650 handling packages (e.g., rmail, VM, gnus) and is responsible for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8651 putting final touches on messages and actually submitting them for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8652 transmission. Users of the emacs program "fakemail" might be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8653 especially interested in trying feedmail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8654
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8655 feedmail is not enabled by default. See comments at the top of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8656 feedmail.el for set-up instructions. Among the bigger features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8657 provided by feedmail are:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8658
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8659 **** you can park outgoing messages into a disk-based queue and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8660 stimulate sending some or all of them later (handy for laptop users);
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8661 there is also a queue for draft messages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8662
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8663 **** you can get one last look at the prepped outbound message and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8664 be prompted for confirmation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8665
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8666 **** does smart filling of address headers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8667
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8668 **** can generate a MESSAGE-ID: line and a DATE: line; the date can be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8669 the time the message was written or the time it is being sent; this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8670 can make FCC copies more closely resemble copies that recipients get
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8671
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8672 **** you can specify an arbitrary function for actually transmitting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8673 the message; included in feedmail are interfaces for /bin/[r]mail,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8674 /usr/lib/sendmail, and elisp smtpmail; it's easy to write a new
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8675 function for something else (10-20 lines of elisp)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8676
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8677 ** Dired changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8678
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8679 *** The Dired function dired-do-toggle, which toggles marked and unmarked
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8680 files, is now bound to "t" instead of "T".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8681
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8682 *** dired-at-point has been added to ffap.el. It allows one to easily
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8683 run Dired on the directory name at point.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8684
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8685 *** Dired has a new command: %g. It searches the contents of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8686 files in the directory and marks each file that contains a match
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8687 for a specified regexp.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8688
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8689 ** VC Changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8690
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8691 *** New option vc-ignore-vc-files lets you turn off version control
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8692 conveniently.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8693
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8694 *** VC Dired has been completely rewritten. It is now much
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8695 faster, especially for CVS, and works very similar to ordinary
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8696 Dired.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8697
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8698 VC Dired is invoked by typing C-x v d and entering the name of the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8699 directory to display. By default, VC Dired gives you a recursive
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8700 listing of all files at or below the given directory which are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8701 currently locked (for CVS, all files not up-to-date are shown).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8702
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8703 You can change the listing format by setting vc-dired-recurse to nil,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8704 then it shows only the given directory, and you may also set
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8705 vc-dired-terse-display to nil, then it shows all files under version
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8706 control plus the names of any subdirectories, so that you can type `i'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8707 on such lines to insert them manually, as in ordinary Dired.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8708
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8709 All Dired commands operate normally in VC Dired, except for `v', which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8710 is redefined as the version control prefix. That means you may type
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8711 `v l', `v =' etc. to invoke `vc-print-log', `vc-diff' and the like on
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8712 the file named in the current Dired buffer line. `v v' invokes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8713 `vc-next-action' on this file, or on all files currently marked.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8714
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8715 The new command `v t' (vc-dired-toggle-terse-mode) allows you to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8716 toggle between terse display (only locked files) and full display (all
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8717 VC files plus subdirectories). There is also a special command,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8718 `* l', to mark all files currently locked.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8719
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8720 Giving a prefix argument to C-x v d now does the same thing as in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8721 ordinary Dired: it allows you to supply additional options for the ls
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8722 command in the minibuffer, to fine-tune VC Dired's output.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8723
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8724 *** Under CVS, if you merge changes from the repository into a working
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8725 file, and CVS detects conflicts, VC now offers to start an ediff
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8726 session to resolve them.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8727
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8728 Alternatively, you can use the new command `vc-resolve-conflicts' to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8729 resolve conflicts in a file at any time. It works in any buffer that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8730 contains conflict markers as generated by rcsmerge (which is what CVS
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8731 uses as well).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8732
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8733 *** You can now transfer changes between branches, using the new
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8734 command vc-merge (C-x v m). It is implemented for RCS and CVS. When
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8735 you invoke it in a buffer under version-control, you can specify
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8736 either an entire branch or a pair of versions, and the changes on that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8737 branch or between the two versions are merged into the working file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8738 If this results in any conflicts, they may be resolved interactively,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8739 using ediff.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8740
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8741 ** Changes in Font Lock
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8742
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8743 *** The face and variable previously known as font-lock-reference-face
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8744 are now called font-lock-constant-face to better reflect their typical
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8745 use for highlighting constants and labels. (Its face properties are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8746 unchanged.) The variable font-lock-reference-face remains for now for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8747 compatibility reasons, but its value is font-lock-constant-face.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8748
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8749 ** Frame name display changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8750
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8751 *** The command set-frame-name lets you set the name of the current
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8752 frame. You can use the new command select-frame-by-name to select and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8753 raise a frame; this is mostly useful on character-only terminals, or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8754 when many frames are invisible or iconified.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8755
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8756 *** On character-only terminal (not a window system), changing the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8757 frame name is now reflected on the mode line and in the Buffers/Frames
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8758 menu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8759
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8760 ** Comint (subshell) changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8761
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8762 *** In Comint modes, the commands to kill, stop or interrupt a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8763 subjob now also kill pending input. This is for compatibility
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8764 with ordinary shells, where the signal characters do this.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8765
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8766 *** There are new commands in Comint mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8767
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8768 C-c C-x fetches the "next" line from the input history;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8769 that is, the line after the last line you got.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8770 You can use this command to fetch successive lines, one by one.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8771
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8772 C-c SPC accumulates lines of input. More precisely, it arranges to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8773 send the current line together with the following line, when you send
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8774 the following line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8775
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8776 C-c C-a if repeated twice consecutively now moves to the process mark,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8777 which separates the pending input from the subprocess output and the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8778 previously sent input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8779
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8780 C-c M-r now runs comint-previous-matching-input-from-input;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8781 it searches for a previous command, using the current pending input
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8782 as the search string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8783
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8784 *** New option compilation-scroll-output can be set to scroll
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8785 automatically in compilation-mode windows.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8786
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8787 ** C mode changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8788
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8789 *** Multiline macros are now handled, both as they affect indentation,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8790 and as recognized syntax. New syntactic symbol cpp-macro-cont is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8791 assigned to second and subsequent lines of a multiline macro
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8792 definition.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8793
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8794 *** A new style "user" which captures all non-hook-ified
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8795 (i.e. top-level) .emacs file variable settings and customizations.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8796 Style "cc-mode" is an alias for "user" and is deprecated. "gnu"
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8797 style is still the default however.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8798
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8799 *** "java" style now conforms to Sun's JDK coding style.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8800
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8801 *** There are new commands c-beginning-of-defun, c-end-of-defun which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8802 are alternatives which you could bind to C-M-a and C-M-e if you prefer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8803 them. They do not have key bindings by default.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8804
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8805 *** New and improved implementations of M-a (c-beginning-of-statement)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8806 and M-e (c-end-of-statement).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8807
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8808 *** C++ namespace blocks are supported, with new syntactic symbols
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8809 namespace-open, namespace-close, and innamespace.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8810
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8811 *** File local variable settings of c-file-style and c-file-offsets
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8812 makes the style variables local to that buffer only.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8813
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8814 *** New indentation functions c-lineup-close-paren,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8815 c-indent-one-line-block, c-lineup-dont-change.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8816
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8817 *** Improvements (hopefully!) to the way CC Mode is loaded. You
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8818 should now be able to do a (require 'cc-mode) to get the entire
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8819 package loaded properly for customization in your .emacs file. A new
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8820 variable c-initialize-on-load controls this and is t by default.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8821
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8822 ** Changes to hippie-expand.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8823
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8824 *** New customization variable `hippie-expand-dabbrev-skip-space'. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8825 non-nil, trailing spaces may be included in the abbreviation to search for,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8826 which then gives the same behavior as the original `dabbrev-expand'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8827
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8828 *** New customization variable `hippie-expand-dabbrev-as-symbol'. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8829 non-nil, characters of syntax '_' is considered part of the word when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8830 expanding dynamically.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8831
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8832 *** New customization variable `hippie-expand-no-restriction'. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8833 non-nil, narrowed buffers are widened before they are searched.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8834
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8835 *** New customization variable `hippie-expand-only-buffers'. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8836 non-empty, buffers searched are restricted to the types specified in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8837 this list. Useful for example when constructing new special-purpose
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8838 expansion functions with `make-hippie-expand-function'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8839
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8840 *** Text properties of the expansion are no longer copied.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8841
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8842 ** Changes in BibTeX mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8843
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8844 *** Any titleword matching a regexp in the new variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8845 bibtex-autokey-titleword-ignore (case sensitive) is ignored during
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8846 automatic key generation. This replaces variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8847 bibtex-autokey-titleword-first-ignore, which only checked for matches
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8848 against the first word in the title.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8849
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8850 *** Autokey generation now uses all words from the title, not just
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8851 capitalized words. To avoid conflicts with existing customizations,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8852 bibtex-autokey-titleword-ignore is set up such that words starting with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8853 lowerkey characters will still be ignored. Thus, if you want to use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8854 lowercase words from the title, you will have to overwrite the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8855 bibtex-autokey-titleword-ignore standard setting.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8856
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8857 *** Case conversion of names and title words for automatic key
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8858 generation is more flexible. Variable bibtex-autokey-preserve-case is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8859 replaced by bibtex-autokey-titleword-case-convert and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8860 bibtex-autokey-name-case-convert.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8861
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8862 ** Changes in vcursor.el.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8863
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8864 *** Support for character terminals is available: there is a new keymap
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8865 and the vcursor will appear as an arrow between buffer text. A
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8866 variable `vcursor-interpret-input' allows input from the vcursor to be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8867 entered exactly as if typed. Numerous functions, including
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8868 `vcursor-compare-windows', have been rewritten to improve consistency
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8869 in the selection of windows and corresponding keymaps.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8870
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8871 *** vcursor options can now be altered with M-x customize under the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8872 Editing group once the package is loaded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8873
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8874 *** Loading vcursor now does not define keys by default, as this is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8875 generally a bad side effect. Use M-x customize to set
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
8876 vcursor-key-bindings to t to restore the old behavior.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8877
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8878 *** vcursor-auto-disable can be `copy', which turns off copying from the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8879 vcursor, but doesn't disable it, after any non-vcursor command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8880
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8881 ** Ispell changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8882
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8883 *** You can now spell check comments and strings in the current
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8884 buffer with M-x ispell-comments-and-strings. Comments and strings
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8885 are identified by syntax tables in effect.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8886
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8887 *** Generic region skipping implemented.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8888 A single buffer can be broken into a number of regions where text will
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8889 and will not be checked. The definitions of the regions can be user
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8890 defined. New applications and improvements made available by this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8891 include:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8892
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8893 o URLs are automatically skipped
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8894 o EMail message checking is vastly improved.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8895
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8896 *** Ispell can highlight the erroneous word even on non-window terminals.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8897
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8898 ** Changes to RefTeX mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8899
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8900 RefTeX has been updated in order to make it more usable with very
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8901 large projects (like a several volume math book). The parser has been
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8902 re-written from scratch. To get maximum speed from RefTeX, check the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8903 section `Optimizations' in the manual.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8904
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8905 *** New recursive parser.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8906
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8907 The old version of RefTeX created a single large buffer containing the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8908 entire multifile document in order to parse the document. The new
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8909 recursive parser scans the individual files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8910
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8911 *** Parsing only part of a document.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8912
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8913 Reparsing of changed document parts can now be made faster by enabling
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8914 partial scans. To use this feature, read the documentation string of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8915 the variable `reftex-enable-partial-scans' and set the variable to t.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8916
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8917 (setq reftex-enable-partial-scans t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8918
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8919 *** Storing parsing information in a file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8920
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8921 This can improve startup times considerably. To turn it on, use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8923 (setq reftex-save-parse-info t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8924
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8925 *** Using multiple selection buffers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8926
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8927 If the creation of label selection buffers is too slow (this happens
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8928 for large documents), you can reuse these buffers by setting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8929
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8930 (setq reftex-use-multiple-selection-buffers t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8931
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8932 *** References to external documents.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8933
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8934 The LaTeX package `xr' allows to cross-reference labels in external
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8935 documents. RefTeX can provide information about the external
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8936 documents as well. To use this feature, set up the \externaldocument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8937 macros required by the `xr' package and rescan the document with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8938 RefTeX. The external labels can then be accessed with the `x' key in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8939 the selection buffer provided by `reftex-reference' (bound to `C-c )').
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8940 The `x' key also works in the table of contents buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8941
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8942 *** Many more labeled LaTeX environments are recognized by default.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8943
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
8944 The built-in command list now covers all the standard LaTeX commands,
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8945 and all of the major packages included in the LaTeX distribution.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8946
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8947 Also, RefTeX now understands the \appendix macro and changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8948 the enumeration of sections in the *toc* buffer accordingly.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8949
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8950 *** Mouse support for selection and *toc* buffers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8951
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8952 The mouse can now be used to select items in the selection and *toc*
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8953 buffers. See also the new option `reftex-highlight-selection'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8954
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8955 *** New keymaps for selection and table of contents modes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8956
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8957 The selection processes for labels and citation keys, and the table of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8958 contents buffer now have their own keymaps: `reftex-select-label-map',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8959 `reftex-select-bib-map', `reftex-toc-map'. The selection processes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8960 have a number of new keys predefined. In particular, TAB lets you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8961 enter a label with completion. Check the on-the-fly help (press `?'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8962 at the selection prompt) or read the Info documentation to find out
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8963 more.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8964
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8965 *** Support for the varioref package
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8966
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8967 The `v' key in the label selection buffer toggles \ref versus \vref.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8968
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8969 *** New hooks
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8970
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8971 Three new hooks can be used to redefine the way labels, references,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8972 and citations are created. These hooks are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8973 `reftex-format-label-function', `reftex-format-ref-function',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8974 `reftex-format-cite-function'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8975
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8976 *** Citations outside LaTeX
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8977
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8978 The command `reftex-citation' may also be used outside LaTeX (e.g. in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8979 a mail buffer). See the Info documentation for details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8980
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8981 *** Short context is no longer fontified.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8982
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8983 The short context in the label menu no longer copies the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8984 fontification from the text in the buffer. If you prefer it to be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8985 fontified, use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8986
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8987 (setq reftex-refontify-context t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8988
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8989 ** file-cache-minibuffer-complete now accepts a prefix argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8990 With a prefix argument, it does not try to do completion of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8991 the file name within its directory; it only checks for other
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8992 directories that contain the same file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8993
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8994 Thus, given the file name Makefile, and assuming that a file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8995 Makefile.in exists in the same directory, ordinary
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8996 file-cache-minibuffer-complete will try to complete Makefile to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8997 Makefile.in and will therefore never look for other directories that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8998 have Makefile. A prefix argument tells it not to look for longer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8999 names such as Makefile.in, so that instead it will look for other
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9000 directories--just as if the name were already complete in its present
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9001 directory.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9002
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9003 ** New modes and packages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9004
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9005 *** There is a new alternative major mode for Perl, Cperl mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9006 It has many more features than Perl mode, and some people prefer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9007 it, but some do not.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9008
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9009 *** There is a new major mode, M-x vhdl-mode, for editing files of VHDL
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9010 code.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9011
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9012 *** M-x which-function-mode enables a minor mode that displays the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9013 current function name continuously in the mode line, as you move
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9014 around in a buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9015
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9016 Which Function mode is effective in major modes which support Imenu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9017
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9018 *** Gametree is a major mode for editing game analysis trees. The author
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9019 uses it for keeping notes about his postal Chess games, but it should
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9020 be helpful for other two-player games as well, as long as they have an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9021 established system of notation similar to Chess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9022
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9023 *** The new minor mode checkdoc-minor-mode provides Emacs Lisp
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9024 documentation string checking for style and spelling. The style
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9025 guidelines are found in the Emacs Lisp programming manual.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9026
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9027 *** The net-utils package makes some common networking features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9028 available in Emacs. Some of these functions are wrappers around
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9029 system utilities (ping, nslookup, etc); others are implementations of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9030 simple protocols (finger, whois) in Emacs Lisp. There are also
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9031 functions to make simple connections to TCP/IP ports for debugging and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9032 the like.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9033
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9034 *** highlight-changes-mode is a minor mode that uses colors to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9035 identify recently changed parts of the buffer text.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9036
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9037 *** The new package `midnight' lets you specify things to be done
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9038 within Emacs at midnight--by default, kill buffers that you have not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9039 used in a considerable time. To use this feature, customize
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9040 the user option `midnight-mode' to t.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9041
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9042 *** The file generic-x.el defines a number of simple major modes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9043
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9044 apache-generic-mode: For Apache and NCSA httpd configuration files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9045 samba-generic-mode: Samba configuration files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9046 fvwm-generic-mode: For fvwm initialization files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9047 x-resource-generic-mode: For X resource files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9048 hosts-generic-mode: For hosts files (.rhosts, /etc/hosts, etc)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9049 mailagent-rules-generic-mode: For mailagent .rules files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9050 javascript-generic-mode: For JavaScript files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9051 vrml-generic-mode: For VRML files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9052 java-manifest-generic-mode: For Java MANIFEST files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9053 java-properties-generic-mode: For Java property files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9054 mailrc-generic-mode: For .mailrc files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9055
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9056 Platform-specific modes:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9057
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9058 prototype-generic-mode: For Solaris/Sys V prototype files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9059 pkginfo-generic-mode: For Solaris/Sys V pkginfo files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9060 alias-generic-mode: For C shell alias files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9061 inf-generic-mode: For MS-Windows INF files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9062 ini-generic-mode: For MS-Windows INI files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9063 reg-generic-mode: For MS-Windows Registry files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9064 bat-generic-mode: For MS-Windows BAT scripts
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9065 rc-generic-mode: For MS-Windows Resource files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9066 rul-generic-mode: For InstallShield scripts
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
9067
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9068 * Lisp changes in Emacs 20.3 since the Emacs Lisp Manual was published
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9069
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9070 ** If you want a Lisp file to be read in unibyte mode,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9071 use -*-unibyte: t;-*- on its first line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9072 That will force Emacs to read that file in unibyte mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9073 Otherwise, the file will be loaded and byte-compiled in multibyte mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9074
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9075 Thus, each lisp file is read in a consistent way regardless of whether
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9076 you started Emacs with --unibyte, so that a Lisp program gives
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9077 consistent results regardless of how Emacs was started.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9078
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9079 ** The new function assoc-default is useful for searching an alist,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9080 and using a default value if the key is not found there. You can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9081 specify a comparison predicate, so this function is useful for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9082 searching comparing a string against an alist of regular expressions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9083
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9084 ** The functions unibyte-char-to-multibyte and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9085 multibyte-char-to-unibyte convert between unibyte and multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9086 character codes, in a way that is appropriate for the current language
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9087 environment.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9088
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9089 ** The functions read-event, read-char and read-char-exclusive now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9090 take two optional arguments. PROMPT, if non-nil, specifies a prompt
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9091 string. SUPPRESS-INPUT-METHOD, if non-nil, says to disable the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9092 current input method for reading this one event.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9093
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9094 ** Two new variables print-escape-nonascii and print-escape-multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9095 now control whether to output certain characters as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9096 backslash-sequences. print-escape-nonascii applies to single-byte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9097 non-ASCII characters; print-escape-multibyte applies to multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9098 characters. Both of these variables are used only when printing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9099 in readable fashion (prin1 uses them, princ does not).
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
9100
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9101 * Lisp changes in Emacs 20.3 before the Emacs Lisp Manual was published
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9102
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9103 ** Compiled Emacs Lisp files made with the modified "MBSK" version
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9104 of Emacs 20.2 do not work in Emacs 20.3.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9105
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9106 ** Buffer positions are now measured in characters, as they were
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9107 in Emacs 19 and before. This means that (forward-char 1)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9108 always increases point by 1.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9109
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9110 The function chars-in-region now just subtracts its arguments. It is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9111 considered obsolete. The function char-boundary-p has been deleted.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9112
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9113 See below for additional changes relating to multibyte characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9114
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9115 ** defcustom, defface and defgroup now accept the keyword `:version'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9116 Use this to specify in which version of Emacs a certain variable's
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9117 default value changed. For example,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9118
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9119 (defcustom foo-max 34 "*Maximum number of foo's allowed."
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9120 :type 'integer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9121 :group 'foo
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9122 :version "20.3")
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9123
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9124 (defgroup foo-group nil "The foo group."
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9125 :version "20.3")
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9126
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9127 If an entire new group is added or the variables in it have the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9128 default values changed, then just add a `:version' to that group. It
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9129 is recommended that new packages added to the distribution contain a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9130 `:version' in the top level group.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9131
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9132 This information is used to control the customize-changed-options command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9133
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9134 ** It is now an error to change the value of a symbol whose name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9135 starts with a colon--if it is interned in the standard obarray.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9136
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9137 However, setting such a symbol to its proper value, which is that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9138 symbol itself, is not an error. This is for the sake of programs that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9139 support previous Emacs versions by explicitly setting these variables
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9140 to themselves.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9141
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9142 If you set the variable keyword-symbols-constant-flag to nil,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9143 this error is suppressed, and you can set these symbols to any
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9144 values whatever.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9145
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9146 ** There is a new debugger command, R.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9147 It evaluates an expression like e, but saves the result
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9148 in the buffer *Debugger-record*.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9149
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9150 ** Frame-local variables.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9151
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9152 You can now make a variable local to various frames. To do this, call
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9153 the function make-variable-frame-local; this enables frames to have
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9154 local bindings for that variable.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9155
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9156 These frame-local bindings are actually frame parameters: you create a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9157 frame-local binding in a specific frame by calling
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9158 modify-frame-parameters and specifying the variable name as the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9159 parameter name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9160
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9161 Buffer-local bindings take precedence over frame-local bindings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9162 Thus, if the current buffer has a buffer-local binding, that binding is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9163 active; otherwise, if the selected frame has a frame-local binding,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9164 that binding is active; otherwise, the default binding is active.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9165
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9166 It would not be hard to implement window-local bindings, but it is not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9167 clear that this would be very useful; windows tend to come and go in a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9168 very transitory fashion, so that trying to produce any specific effect
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9169 through a window-local binding would not be very robust.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9170
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9171 ** `sregexq' and `sregex' are two new functions for constructing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9172 "symbolic regular expressions." These are Lisp expressions that, when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9173 evaluated, yield conventional string-based regexps. The symbolic form
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9174 makes it easier to construct, read, and maintain complex patterns.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9175 See the documentation in sregex.el.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9176
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9177 ** parse-partial-sexp's return value has an additional element which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9178 is used to pass information along if you pass it to another call to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9179 parse-partial-sexp, starting its scan where the first call ended.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9180 The contents of this field are not yet finalized.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9181
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9182 ** eval-region now accepts a fourth optional argument READ-FUNCTION.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9183 If it is non-nil, that function is used instead of `read'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9184
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9185 ** unload-feature by default removes the feature's functions from
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9186 known hooks to avoid trouble, but a package providing FEATURE can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9187 define a hook FEATURE-unload-hook to be run by unload-feature instead.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9188
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9189 ** read-from-minibuffer no longer returns the argument DEFAULT-VALUE
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9190 when the user enters empty input. It now returns the null string, as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9191 it did in Emacs 19. The default value is made available in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9192 history via M-n, but it is not applied here as a default.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9193
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9194 The other, more specialized minibuffer-reading functions continue to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9195 return the default value (not the null string) when the user enters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9196 empty input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9197
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9198 ** The new variable read-buffer-function controls which routine to use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9199 for selecting buffers. For example, if you set this variable to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9200 `iswitchb-read-buffer', iswitchb will be used to read buffer names.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9201 Other functions can also be used if they accept the same arguments as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9202 `read-buffer' and return the selected buffer name as a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9203
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9204 ** The new function read-passwd reads a password from the terminal,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9205 echoing a period for each character typed. It takes three arguments:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9206 a prompt string, a flag which says "read it twice to make sure", and a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9207 default password to use if the user enters nothing.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9208
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9209 ** The variable fill-nobreak-predicate gives major modes a way to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9210 specify not to break a line at certain places. Its value is a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9211 function which is called with no arguments, with point located at the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9212 place where a break is being considered. If the function returns
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9213 non-nil, then the line won't be broken there.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9214
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9215 ** window-end now takes an optional second argument, UPDATE.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9216 If this is non-nil, then the function always returns an accurate
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9217 up-to-date value for the buffer position corresponding to the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9218 end of the window, even if this requires computation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9219
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9220 ** other-buffer now takes an optional argument FRAME
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9221 which specifies which frame's buffer list to use.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9222 If it is nil, that means use the selected frame's buffer list.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9223
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9224 ** The new variable buffer-display-time, always local in every buffer,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9225 holds the value of (current-time) as of the last time that a window
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9226 was directed to display this buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9227
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9228 ** It is now meaningful to compare two window-configuration objects
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9229 with `equal'. Two window-configuration objects are equal if they
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9230 describe equivalent arrangements of windows, in the same frame--in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9231 other words, if they would give the same results if passed to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9232 set-window-configuration.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9233
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9234 ** compare-window-configurations is a new function that compares two
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9235 window configurations loosely. It ignores differences in saved buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9236 positions and scrolling, and considers only the structure and sizes of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9237 windows and the choice of buffers to display.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9238
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9239 ** The variable minor-mode-overriding-map-alist allows major modes to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9240 override the key bindings of a minor mode. The elements of this alist
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9241 look like the elements of minor-mode-map-alist: (VARIABLE . KEYMAP).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9242
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9243 If the VARIABLE in an element of minor-mode-overriding-map-alist has a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9244 non-nil value, the paired KEYMAP is active, and totally overrides the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9245 map (if any) specified for the same variable in minor-mode-map-alist.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9246
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9247 minor-mode-overriding-map-alist is automatically local in all buffers,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9248 and it is meant to be set by major modes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9249
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9250 ** The function match-string-no-properties is like match-string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9251 except that it discards all text properties from the result.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9252
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9253 ** The function load-average now accepts an optional argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9254 USE-FLOATS. If it is non-nil, the load average values are returned as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9255 floating point numbers, rather than as integers to be divided by 100.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9256
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9257 ** The new variable temporary-file-directory specifies the directory
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9258 to use for creating temporary files. The default value is determined
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9259 in a reasonable way for your operating system; on GNU and Unix systems
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9260 it is based on the TMP and TMPDIR environment variables.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9261
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9262 ** Menu changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9263
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9264 *** easymenu.el now uses the new menu item format and supports the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9265 keywords :visible and :filter. The existing keyword :keys is now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9266 better supported.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9267
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9268 The variable `easy-menu-precalculate-equivalent-keybindings' controls
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9269 a new feature which calculates keyboard equivalents for the menu when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9270 you define the menu. The default is t. If you rarely use menus, you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9271 can set the variable to nil to disable this precalculation feature;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9272 then the calculation is done only if you use the menu bar.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9273
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9274 *** A new format for menu items is supported.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9275
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9276 In a keymap, a key binding that has the format
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9277 (STRING . REAL-BINDING) or (STRING HELP-STRING . REAL-BINDING)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9278 defines a menu item. Now a menu item definition may also be a list that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9279 starts with the symbol `menu-item'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9280
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9281 The format is:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9282 (menu-item ITEM-NAME) or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9283 (menu-item ITEM-NAME REAL-BINDING . ITEM-PROPERTY-LIST)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9284 where ITEM-NAME is an expression which evaluates to the menu item
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9285 string, and ITEM-PROPERTY-LIST has the form of a property list.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9286 The supported properties include
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9287
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9288 :enable FORM Evaluate FORM to determine whether the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9289 item is enabled.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9290 :visible FORM Evaluate FORM to determine whether the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9291 item should appear in the menu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9292 :filter FILTER-FN
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9293 FILTER-FN is a function of one argument,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9294 which will be REAL-BINDING.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9295 It should return a binding to use instead.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9296 :keys DESCRIPTION
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9297 DESCRIPTION is a string that describes an equivalent keyboard
35862
9604ca6b3728 More typos from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35847
diff changeset
9298 binding for REAL-BINDING. DESCRIPTION is expanded with
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9299 `substitute-command-keys' before it is used.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9300 :key-sequence KEY-SEQUENCE
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9301 KEY-SEQUENCE is a key-sequence for an equivalent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9302 keyboard binding.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9303 :key-sequence nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9304 This means that the command normally has no
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9305 keyboard equivalent.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9306 :help HELP HELP is the extra help string (not currently used).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9307 :button (TYPE . SELECTED)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9308 TYPE is :toggle or :radio.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9309 SELECTED is a form, to be evaluated, and its
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9310 value says whether this button is currently selected.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9311
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9312 Buttons are at the moment only simulated by prefixes in the menu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9313 Eventually ordinary X-buttons may be supported.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9314
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9315 (menu-item ITEM-NAME) defines unselectable item.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9316
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9317 ** New event types
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9318
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9319 *** The new event type `mouse-wheel' is generated by a wheel on a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9320 mouse (such as the MS Intellimouse). The event contains a delta that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9321 corresponds to the amount and direction that the wheel is rotated,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9322 which is typically used to implement a scroll or zoom. The format is:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9323
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9324 (mouse-wheel POSITION DELTA)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9325
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9326 where POSITION is a list describing the position of the event in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9327 same format as a mouse-click event, and DELTA is a signed number
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9328 indicating the number of increments by which the wheel was rotated. A
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9329 negative DELTA indicates that the wheel was rotated backwards, towards
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9330 the user, and a positive DELTA indicates that the wheel was rotated
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9331 forward, away from the user.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9332
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9333 As of now, this event type is generated only on MS Windows.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9334
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9335 *** The new event type `drag-n-drop' is generated when a group of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9336 files is selected in an application outside of Emacs, and then dragged
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9337 and dropped onto an Emacs frame. The event contains a list of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9338 filenames that were dragged and dropped, which are then typically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9339 loaded into Emacs. The format is:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9340
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9341 (drag-n-drop POSITION FILES)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9342
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9343 where POSITION is a list describing the position of the event in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9344 same format as a mouse-click event, and FILES is the list of filenames
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9345 that were dragged and dropped.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9346
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9347 As of now, this event type is generated only on MS Windows.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9348
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9349 ** Changes relating to multibyte characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9350
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9351 *** The variable enable-multibyte-characters is now read-only;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9352 any attempt to set it directly signals an error. The only way
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9353 to change this value in an existing buffer is with set-buffer-multibyte.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9354
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9355 *** In a string constant, `\ ' now stands for "nothing at all". You
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9356 can use it to terminate a hex escape which is followed by a character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9357 that could otherwise be read as part of the hex escape.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9358
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9359 *** String indices are now measured in characters, as they were
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9360 in Emacs 19 and before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9361
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9362 The function chars-in-string has been deleted.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9363 The function concat-chars has been renamed to `string'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9364
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9365 *** The function set-buffer-multibyte sets the flag in the current
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9366 buffer that says whether the buffer uses multibyte representation or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9367 unibyte representation. If the argument is nil, it selects unibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9368 representation. Otherwise it selects multibyte representation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9369
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9370 This function does not change the contents of the buffer, viewed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9371 as a sequence of bytes. However, it does change the contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9372 viewed as characters; a sequence of two bytes which is treated as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9373 one character when the buffer uses multibyte representation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9374 will count as two characters using unibyte representation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9375
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9376 This function sets enable-multibyte-characters to record which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9377 representation is in use. It also adjusts various data in the buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9378 (including its markers, overlays and text properties) so that they are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9379 consistent with the new representation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9380
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9381 *** string-make-multibyte takes a string and converts it to multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9382 representation. Most of the time, you don't need to care
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9383 about the representation, because Emacs converts when necessary;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9384 however, it makes a difference when you compare strings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9385
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9386 The conversion of non-ASCII characters works by adding the value of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9387 nonascii-insert-offset to each character, or by translating them
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9388 using the table nonascii-translation-table.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9389
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9390 *** string-make-unibyte takes a string and converts it to unibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9391 representation. Most of the time, you don't need to care about the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9392 representation, but it makes a difference when you compare strings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9393
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9394 The conversion from multibyte to unibyte representation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9395 loses information; the only time Emacs performs it automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9396 is when inserting a multibyte string into a unibyte buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9397
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9398 *** string-as-multibyte takes a string, and returns another string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9399 which contains the same bytes, but treats them as multibyte.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9400
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9401 *** string-as-unibyte takes a string, and returns another string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9402 which contains the same bytes, but treats them as unibyte.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9403
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9404 *** The new function compare-strings lets you compare
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9405 portions of two strings. Unibyte strings are converted to multibyte,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9406 so that a unibyte string can match a multibyte string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9407 You can specify whether to ignore case or not.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9408
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9409 *** assoc-ignore-case now uses compare-strings so that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9410 it can treat unibyte and multibyte strings as equal.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9411
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9412 *** Regular expression operations and buffer string searches now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9413 convert the search pattern to multibyte or unibyte to accord with the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9414 buffer or string being searched.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9415
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9416 One consequence is that you cannot always use \200-\377 inside of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9417 [...] to match all non-ASCII characters. This does still work when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9418 searching or matching a unibyte buffer or string, but not when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9419 searching or matching a multibyte string. Unfortunately, there is no
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9420 obvious choice of syntax to use within [...] for that job. But, what
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9421 you want is just to match all non-ASCII characters, the regular
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9422 expression [^\0-\177] works for it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9423
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9424 *** Structure of coding system changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9425
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9426 All coding systems (including aliases and subsidiaries) are named
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9427 by symbols; the symbol's `coding-system' property is a vector
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9428 which defines the coding system. Aliases share the same vector
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9429 as the principal name, so that altering the contents of this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9430 vector affects the principal name and its aliases. You can define
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9431 your own alias name of a coding system by the function
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9432 define-coding-system-alias.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9433
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9434 The coding system definition includes a property list of its own. Use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9435 the new functions `coding-system-get' and `coding-system-put' to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9436 access such coding system properties as post-read-conversion,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9437 pre-write-conversion, character-translation-table-for-decode,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9438 character-translation-table-for-encode, mime-charset, and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9439 safe-charsets. For instance, (coding-system-get 'iso-latin-1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9440 'mime-charset) gives the corresponding MIME-charset parameter
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9441 `iso-8859-1'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9442
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9443 Among the coding system properties listed above, safe-charsets is new.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9444 The value of this property is a list of character sets which this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9445 coding system can correctly encode and decode. For instance:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9446 (coding-system-get 'iso-latin-1 'safe-charsets) => (ascii latin-iso8859-1)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9447
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9448 Here, "correctly encode" means that the encoded character sets can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9449 also be handled safely by systems other than Emacs as far as they
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9450 are capable of that coding system. Though, Emacs itself can encode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9451 the other character sets and read it back correctly.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9452
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9453 *** The new function select-safe-coding-system can be used to find a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9454 proper coding system for encoding the specified region or string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9455 This function requires a user interaction.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9456
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9457 *** The new functions find-coding-systems-region and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9458 find-coding-systems-string are helper functions used by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9459 select-safe-coding-system. They return a list of all proper coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9460 systems to encode a text in some region or string. If you don't want
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9461 a user interaction, use one of these functions instead of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9462 select-safe-coding-system.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9463
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9464 *** The explicit encoding and decoding functions, such as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9465 decode-coding-region and encode-coding-string, now set
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9466 last-coding-system-used to reflect the actual way encoding or decoding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9467 was done.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9468
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9469 *** The new function detect-coding-with-language-environment can be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9470 used to detect a coding system of text according to priorities of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9471 coding systems used by some specific language environment.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9472
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9473 *** The functions detect-coding-region and detect-coding-string always
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9474 return a list if the arg HIGHEST is nil. Thus, if only ASCII
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9475 characters are found, they now return a list of single element
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9476 `undecided' or its subsidiaries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9477
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9478 *** The new functions coding-system-change-eol-conversion and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9479 coding-system-change-text-conversion can be used to get a different
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9480 coding system than what specified only in how end-of-line or text is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9481 converted.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9482
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9483 *** The new function set-selection-coding-system can be used to set a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9484 coding system for communicating with other X clients.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9485
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9486 *** The function `map-char-table' now passes as argument only valid
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9487 character codes, plus generic characters that stand for entire
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9488 character sets or entire subrows of a character set. In other words,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9489 each time `map-char-table' calls its FUNCTION argument, the key value
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9490 either will be a valid individual character code, or will stand for a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9491 range of characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9492
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9493 *** The new function `char-valid-p' can be used for checking whether a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9494 Lisp object is a valid character code or not.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9495
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9496 *** The new function `charset-after' returns a charset of a character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9497 in the current buffer at position POS.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9498
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9499 *** Input methods are now implemented using the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9500 input-method-function. If this is non-nil, its value should be a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9501 function; then, whenever Emacs reads an input event that is a printing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9502 character with no modifier bits, it calls that function, passing the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9503 event as an argument. Often this function will read more input, first
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9504 binding input-method-function to nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9505
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9506 The return value should be a list of the events resulting from input
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9507 method processing. These events will be processed sequentially as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9508 input, before resorting to unread-command-events. Events returned by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9509 the input method function are not passed to the input method function,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9510 not even if they are printing characters with no modifier bits.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9511
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9512 The input method function is not called when reading the second and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9513 subsequent events of a key sequence.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9514
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9515 *** You can customize any language environment by using
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9516 set-language-environment-hook and exit-language-environment-hook.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9517
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9518 The hook `exit-language-environment-hook' should be used to undo
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9519 customizations that you made with set-language-environment-hook. For
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9520 instance, if you set up a special key binding for a specific language
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9521 environment by set-language-environment-hook, you should set up
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9522 exit-language-environment-hook to restore the normal key binding.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
9523
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9524 * Changes in Emacs 20.1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9525
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9526 ** Emacs has a new facility for customization of its many user
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9527 options. It is called M-x customize. With this facility you can look
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9528 at the many user options in an organized way; they are grouped into a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9529 tree structure.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9530
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9531 M-x customize also knows what sorts of values are legitimate for each
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9532 user option and ensures that you don't use invalid values.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9533
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9534 With M-x customize, you can set options either for the present Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9535 session or permanently. (Permanent settings are stored automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9536 in your .emacs file.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9537
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9538 ** Scroll bars are now on the left side of the window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9539 You can change this with M-x customize-option scroll-bar-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9540
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9541 ** The mode line no longer includes the string `Emacs'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9542 This makes more space in the mode line for other information.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9543
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9544 ** When you select a region with the mouse, it is highlighted
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9545 immediately afterward. At that time, if you type the DELETE key, it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9546 kills the region.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9547
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9548 The BACKSPACE key, and the ASCII character DEL, do not do this; they
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9549 delete the character before point, as usual.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9550
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9551 ** In an incremental search the whole current match is highlighted
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9552 on terminals which support this. (You can disable this feature
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9553 by setting search-highlight to nil.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9554
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9555 ** In the minibuffer, in some cases, you can now use M-n to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9556 insert the default value into the minibuffer as text. In effect,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9557 the default value (if the minibuffer routines know it) is tacked
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9558 onto the history "in the future". (The more normal use of the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9559 history list is to use M-p to insert minibuffer input used in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9560 past.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9561
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9562 ** In Text mode, now only blank lines separate paragraphs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9563 This makes it possible to get the full benefit of Adaptive Fill mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9564 in Text mode, and other modes derived from it (such as Mail mode).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9565 TAB in Text mode now runs the command indent-relative; this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9566 makes a practical difference only when you use indented paragraphs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9567
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9568 As a result, the old Indented Text mode is now identical to Text mode,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9569 and is an alias for it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9570
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9571 If you want spaces at the beginning of a line to start a paragraph,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9572 use the new mode, Paragraph Indent Text mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9573
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9574 ** Scrolling changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9575
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9576 *** Scroll commands to scroll a whole screen now preserve the screen
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9577 position of the cursor, if scroll-preserve-screen-position is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9578
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9579 In this mode, if you scroll several screens back and forth, finishing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9580 on the same screen where you started, the cursor goes back to the line
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9581 where it started.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9582
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9583 *** If you set scroll-conservatively to a small number, then when you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9584 move point a short distance off the screen, Emacs will scroll the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9585 screen just far enough to bring point back on screen, provided that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9586 does not exceed `scroll-conservatively' lines.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9587
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9588 *** The new variable scroll-margin says how close point can come to the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9589 top or bottom of a window. It is a number of screen lines; if point
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9590 comes within that many lines of the top or bottom of the window, Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9591 recenters the window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9592
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9593 ** International character set support (MULE)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9594
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9595 Emacs now supports a wide variety of international character sets,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9596 including European variants of the Latin alphabet, as well as Chinese,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9597 Devanagari (Hindi and Marathi), Ethiopian, Greek, IPA, Japanese,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9598 Korean, Lao, Russian, Thai, Tibetan, and Vietnamese scripts. These
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9599 features have been merged from the modified version of Emacs known as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9600 MULE (for "MULti-lingual Enhancement to GNU Emacs")
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9601
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9602 Users of these scripts have established many more-or-less standard
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9603 coding systems for storing files. Emacs uses a single multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9604 character encoding within Emacs buffers; it can translate from a wide
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9605 variety of coding systems when reading a file and can translate back
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9606 into any of these coding systems when saving a file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9607
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9608 Keyboards, even in the countries where these character sets are used,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9609 generally don't have keys for all the characters in them. So Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9610 supports various "input methods", typically one for each script or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9611 language, to make it possible to type them.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9612
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9613 The Emacs internal multibyte encoding represents a non-ASCII
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9614 character as a sequence of bytes in the range 0200 through 0377.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9615
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9616 The new prefix key C-x RET is used for commands that pertain
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9617 to multibyte characters, coding systems, and input methods.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9618
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9619 You can disable multibyte character support as follows:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9620
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9621 (setq-default enable-multibyte-characters nil)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9622
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9623 Calling the function standard-display-european turns off multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9624 characters, unless you specify a non-nil value for the second
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9625 argument, AUTO. This provides compatibility for people who are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9626 already using standard-display-european to continue using unibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9627 characters for their work until they want to change.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9628
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9629 *** Input methods
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9630
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9631 An input method is a kind of character conversion which is designed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9632 specifically for interactive input. In Emacs, typically each language
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9633 has its own input method (though sometimes several languages which use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9634 the same characters can share one input method). Some languages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9635 support several input methods.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9636
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9637 The simplest kind of input method works by mapping ASCII letters into
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9638 another alphabet. This is how the Greek and Russian input methods
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9639 work.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9640
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9641 A more powerful technique is composition: converting sequences of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9642 characters into one letter. Many European input methods use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9643 composition to produce a single non-ASCII letter from a sequence which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9644 consists of a letter followed by diacritics. For example, a' is one
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9645 sequence of two characters that might be converted into a single
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9646 letter.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9647
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9648 The input methods for syllabic scripts typically use mapping followed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9649 by conversion. The input methods for Thai and Korean work this way.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9650 First, letters are mapped into symbols for particular sounds or tone
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9651 marks; then, sequences of these which make up a whole syllable are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9652 mapped into one syllable sign--most often a "composite character".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9653
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9654 None of these methods works very well for Chinese and Japanese, so
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9655 they are handled specially. First you input a whole word using
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9656 phonetic spelling; then, after the word is in the buffer, Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9657 converts it into one or more characters using a large dictionary.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9658
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9659 Since there is more than one way to represent a phonetically spelled
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9660 word using Chinese characters, Emacs can only guess which one to use;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9661 typically these input methods give you a way to say "guess again" if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9662 the first guess is wrong.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9663
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9664 *** The command C-x RET m (toggle-enable-multibyte-characters)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9665 turns multibyte character support on or off for the current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9666
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9667 If multibyte character support is turned off in a buffer, then each
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9668 byte is a single character, even codes 0200 through 0377--exactly as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9669 they did in Emacs 19.34. This includes the features for support for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9670 the European characters, ISO Latin-1 and ISO Latin-2.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9671
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9672 However, there is no need to turn off multibyte character support to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9673 use ISO Latin-1 or ISO Latin-2; the Emacs multibyte character set
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9674 includes all the characters in these character sets, and Emacs can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9675 translate automatically to and from either one.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9676
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9677 *** Visiting a file in unibyte mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9678
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9679 Turning off multibyte character support in the buffer after visiting a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9680 file with multibyte code conversion will display the multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9681 sequences already in the buffer, byte by byte. This is probably not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9682 what you want.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9683
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9684 If you want to edit a file of unibyte characters (Latin-1, for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9685 example), you can do it by specifying `no-conversion' as the coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9686 system when reading the file. This coding system also turns off
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9687 multibyte characters in that buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9688
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9689 If you turn off multibyte character support entirely, this turns off
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9690 character conversion as well.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9691
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9692 *** Displaying international characters on X Windows.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9693
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9694 A font for X typically displays just one alphabet or script.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9695 Therefore, displaying the entire range of characters Emacs supports
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9696 requires using many fonts.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9697
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9698 Therefore, Emacs now supports "fontsets". Each fontset is a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9699 collection of fonts, each assigned to a range of character codes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9700
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9701 A fontset has a name, like a font. Individual fonts are defined by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9702 the X server; fontsets are defined within Emacs itself. But once you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9703 have defined a fontset, you can use it in a face or a frame just as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9704 you would use a font.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9705
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9706 If a fontset specifies no font for a certain character, or if it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9707 specifies a font that does not exist on your system, then it cannot
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9708 display that character. It will display an empty box instead.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9709
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9710 The fontset height and width are determined by the ASCII characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9711 (that is, by the font in the fontset which is used for ASCII
41055
ff0394a304bd Remove the description of variabel `highlight-wrong-size-font'.
Pavel Janík <Pavel@Janik.cz>
parents: 40973
diff changeset
9712 characters).
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9713
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9714 *** Defining fontsets.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9715
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9716 Emacs does not use any fontset by default. Its default font is still
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9717 chosen as in previous versions. You can tell Emacs to use a fontset
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9718 with the `-fn' option or the `Font' X resource.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9719
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9720 Emacs creates a standard fontset automatically according to the value
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9721 of standard-fontset-spec. This fontset's short name is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9722 `fontset-standard'. Bold, italic, and bold-italic variants of the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9723 standard fontset are created automatically.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9724
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9725 If you specify a default ASCII font with the `Font' resource or `-fn'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9726 argument, a fontset is generated from it. This works by replacing the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9727 FOUNDARY, FAMILY, ADD_STYLE, and AVERAGE_WIDTH fields of the font name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9728 with `*' then using this to specify a fontset. This fontset's short
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9729 name is `fontset-startup'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9730
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9731 Emacs checks resources of the form Fontset-N where N is 0, 1, 2...
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9732 The resource value should have this form:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9733 FONTSET-NAME, [CHARSET-NAME:FONT-NAME]...
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9734 FONTSET-NAME should have the form of a standard X font name, except:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9735 * most fields should be just the wild card "*".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9736 * the CHARSET_REGISTRY field should be "fontset"
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9737 * the CHARSET_ENCODING field can be any nickname of the fontset.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9738 The construct CHARSET-NAME:FONT-NAME can be repeated any number
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9739 of times; each time specifies the font for one character set.
35863
534be6e166a6 Yet another bunch of typo fizes from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35862
diff changeset
9740 CHARSET-NAME should be the name of a character set, and FONT-NAME
534be6e166a6 Yet another bunch of typo fizes from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35862
diff changeset
9741 should specify an actual font to use for that character set.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9742
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9743 Each of these fontsets has an alias which is made from the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9744 last two font name fields, CHARSET_REGISTRY and CHARSET_ENCODING.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9745 You can refer to the fontset by that alias or by its full name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9746
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9747 For any character sets that you don't mention, Emacs tries to choose a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9748 font by substituting into FONTSET-NAME. For instance, with the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9749 following resource,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9750 Emacs*Fontset-0: -*-fixed-medium-r-normal-*-24-*-*-*-*-*-fontset-24
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9751 the font for ASCII is generated as below:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9752 -*-fixed-medium-r-normal-*-24-*-ISO8859-1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9753 Here is the substitution rule:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9754 Change CHARSET_REGISTRY and CHARSET_ENCODING to that of the charset
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9755 defined in the variable x-charset-registries. For instance, ASCII has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9756 the entry (ascii . "ISO8859-1") in this variable. Then, reduce
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9757 sequences of wild cards -*-...-*- with a single wildcard -*-.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9758 (This is to prevent use of auto-scaled fonts.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9759
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9760 The function which processes the fontset resource value to create the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9761 fontset is called create-fontset-from-fontset-spec. You can also call
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9762 that function explicitly to create a fontset.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9763
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9764 With the X resource Emacs.Font, you can specify a fontset name just
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9765 like an actual font name. But be careful not to specify a fontset
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9766 name in a wildcard resource like Emacs*Font--that tries to specify the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9767 fontset for other purposes including menus, and they cannot handle
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9768 fontsets.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9769
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9770 *** The command M-x set-language-environment sets certain global Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9771 defaults for a particular choice of language.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9772
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9773 Selecting a language environment typically specifies a default input
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9774 method and which coding systems to recognize automatically when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9775 visiting files. However, it does not try to reread files you have
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9776 already visited; the text in those buffers is not affected. The
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9777 language environment may also specify a default choice of coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9778 system for new files that you create.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9779
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9780 It makes no difference which buffer is current when you use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9781 set-language-environment, because these defaults apply globally to the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9782 whole Emacs session.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9783
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9784 For example, M-x set-language-environment RET Latin-1 RET
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9785 chooses the Latin-1 character set. In the .emacs file, you can do this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9786 with (set-language-environment "Latin-1").
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9787
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9788 *** The command C-x RET f (set-buffer-file-coding-system)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9789 specifies the file coding system for the current buffer. This
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9790 specifies what sort of character code translation to do when saving
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9791 the file. As an argument, you must specify the name of one of the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9792 coding systems that Emacs supports.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9793
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9794 *** The command C-x RET c (universal-coding-system-argument)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9795 lets you specify a coding system when you read or write a file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9796 This command uses the minibuffer to read a coding system name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9797 After you exit the minibuffer, the specified coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9798 is used for *the immediately following command*.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9799
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9800 So if the immediately following command is a command to read or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9801 write a file, it uses the specified coding system for that file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9802
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9803 If the immediately following command does not use the coding system,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9804 then C-x RET c ultimately has no effect.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9805
47283
0f65e6f1d100 Fix spacing.
Juanma Barranquero <lekktu@gmail.com>
parents: 47201
diff changeset
9806 For example, C-x RET c iso-8859-1 RET C-x C-f temp RET
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9807 visits the file `temp' treating it as ISO Latin-1.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9808
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9809 *** You can specify the coding system for a file using the -*-
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9810 construct. Include `coding: CODINGSYSTEM;' inside the -*-...-*-
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9811 to specify use of coding system CODINGSYSTEM. You can also
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9812 specify the coding system in a local variable list at the end
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9813 of the file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9814
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9815 *** The command C-x RET t (set-terminal-coding-system) specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9816 the coding system for terminal output. If you specify a character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9817 code for terminal output, all characters output to the terminal are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9818 translated into that character code.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9819
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9820 This feature is useful for certain character-only terminals built in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9821 various countries to support the languages of those countries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9822
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9823 By default, output to the terminal is not translated at all.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9824
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9825 *** The command C-x RET k (set-keyboard-coding-system) specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9826 the coding system for keyboard input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9827
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9828 Character code translation of keyboard input is useful for terminals
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9829 with keys that send non-ASCII graphic characters--for example,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9830 some terminals designed for ISO Latin-1 or subsets of it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9831
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9832 By default, keyboard input is not translated at all.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9833
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9834 Character code translation of keyboard input is similar to using an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9835 input method, in that both define sequences of keyboard input that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9836 translate into single characters. However, input methods are designed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9837 to be convenient for interactive use, while the code translations are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9838 designed to work with terminals.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9839
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9840 *** The command C-x RET p (set-buffer-process-coding-system)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9841 specifies the coding system for input and output to a subprocess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9842 This command applies to the current buffer; normally, each subprocess
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9843 has its own buffer, and thus you can use this command to specify
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9844 translation to and from a particular subprocess by giving the command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9845 in the corresponding buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9846
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9847 By default, process input and output are not translated at all.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9848
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9849 *** The variable file-name-coding-system specifies the coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9850 to use for encoding file names before operating on them.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9851 It is also used for decoding file names obtained from the system.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9852
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9853 *** The command C-\ (toggle-input-method) activates or deactivates
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9854 an input method. If no input method has been selected before, the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9855 command prompts for you to specify the language and input method you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9856 want to use.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9857
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9858 C-u C-\ (select-input-method) lets you switch to a different input
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9859 method. C-h C-\ (or C-h I) describes the current input method.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9860
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9861 *** Some input methods remap the keyboard to emulate various keyboard
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9862 layouts commonly used for particular scripts. How to do this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9863 remapping properly depends on your actual keyboard layout. To specify
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9864 which layout your keyboard has, use M-x quail-set-keyboard-layout.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9865
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9866 *** The command C-h C (describe-coding-system) displays
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9867 the coding systems currently selected for various purposes, plus
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9868 related information.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9869
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9870 *** The command C-h h (view-hello-file) displays a file called
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9871 HELLO, which has examples of text in many languages, using various
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9872 scripts.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9873
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9874 *** The command C-h L (describe-language-support) displays
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9875 information about the support for a particular language.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9876 You specify the language as an argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9877
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9878 *** The mode line now contains a letter or character that identifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9879 the coding system used in the visited file. It normally follows the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9880 first dash.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9881
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9882 A dash indicates the default state of affairs: no code conversion
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9883 (except CRLF => newline if appropriate). `=' means no conversion
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9884 whatsoever. The ISO 8859 coding systems are represented by digits
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9885 1 through 9. Other coding systems are represented by letters:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9886
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9887 A alternativnyj (Russian)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9888 B big5 (Chinese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9889 C cn-gb-2312 (Chinese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9890 C iso-2022-cn (Chinese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9891 D in-is13194-devanagari (Indian languages)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9892 E euc-japan (Japanese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9893 I iso-2022-cjk or iso-2022-ss2 (Chinese, Japanese, Korean)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9894 J junet (iso-2022-7) or old-jis (iso-2022-jp-1978-irv) (Japanese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9895 K euc-korea (Korean)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9896 R koi8 (Russian)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9897 Q tibetan
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9898 S shift_jis (Japanese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9899 T lao
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9900 T tis620 (Thai)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9901 V viscii or vscii (Vietnamese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9902 i iso-2022-lock (Chinese, Japanese, Korean)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9903 k iso-2022-kr (Korean)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9904 v viqr (Vietnamese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9905 z hz (Chinese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9906
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9907 When you are using a character-only terminal (not a window system),
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9908 two additional characters appear in between the dash and the file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9909 coding system. These two characters describe the coding system for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9910 keyboard input, and the coding system for terminal output.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9911
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9912 *** The new variable rmail-file-coding-system specifies the code
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9913 conversion to use for RMAIL files. The default value is nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9914
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9915 When you read mail with Rmail, each message is decoded automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9916 into Emacs' internal format. This has nothing to do with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9917 rmail-file-coding-system. That variable controls reading and writing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9918 Rmail files themselves.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9919
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9920 *** The new variable sendmail-coding-system specifies the code
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9921 conversion for outgoing mail. The default value is nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9923 Actually, there are three different ways of specifying the coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9924 for sending mail:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9925
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9926 - If you use C-x RET f in the mail buffer, that takes priority.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9927 - Otherwise, if you set sendmail-coding-system non-nil, that specifies it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9928 - Otherwise, the default coding system for new files is used,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9929 if that is non-nil. That comes from your language environment.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9930 - Otherwise, Latin-1 is used.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9931
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9932 *** The command C-h t (help-with-tutorial) accepts a prefix argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9933 to specify the language for the tutorial file. Currently, English,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9934 Japanese, Korean and Thai are supported. We welcome additional
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9935 translations.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9936
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9937 ** An easy new way to visit a file with no code or format conversion
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9938 of any kind: Use M-x find-file-literally. There is also a command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9939 insert-file-literally which inserts a file into the current buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9940 without any conversion.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9941
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9942 ** C-q's handling of octal character codes is changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9943 You can now specify any number of octal digits.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9944 RET terminates the digits and is discarded;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9945 any other non-digit terminates the digits and is then used as input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9946
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9947 ** There are new commands for looking up Info documentation for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9948 functions, variables and file names used in your programs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9949
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9950 Type M-x info-lookup-symbol to look up a symbol in the buffer at point.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9951 Type M-x info-lookup-file to look up a file in the buffer at point.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9952
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9953 Precisely which Info files are used to look it up depends on the major
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9954 mode. For example, in C mode, the GNU libc manual is used.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9955
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9956 ** M-TAB in most programming language modes now runs the command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9957 complete-symbol. This command performs completion on the symbol name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9958 in the buffer before point.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9959
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9960 With a numeric argument, it performs completion based on the set of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9961 symbols documented in the Info files for the programming language that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9962 you are using.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9963
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9964 With no argument, it does completion based on the current tags tables,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9965 just like the old binding of M-TAB (complete-tag).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9966
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9967 ** File locking works with NFS now.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9968
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9969 The lock file for FILENAME is now a symbolic link named .#FILENAME,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9970 in the same directory as FILENAME.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9971
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9972 This means that collision detection between two different machines now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9973 works reasonably well; it also means that no file server or directory
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9974 can become a bottleneck.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9975
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9976 The new method does have drawbacks. It means that collision detection
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9977 does not operate when you edit a file in a directory where you cannot
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9978 create new files. Collision detection also doesn't operate when the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9979 file server does not support symbolic links. But these conditions are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9980 rare, and the ability to have collision detection while using NFS is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9981 so useful that the change is worth while.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9982
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9983 When Emacs or a system crashes, this may leave behind lock files which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9984 are stale. So you may occasionally get warnings about spurious
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9985 collisions. When you determine that the collision is spurious, just
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9986 tell Emacs to go ahead anyway.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9987
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9988 ** If you wish to use Show Paren mode to display matching parentheses,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9989 it is no longer sufficient to load paren.el. Instead you must call
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9990 show-paren-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9991
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9992 ** If you wish to use Delete Selection mode to replace a highlighted
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9993 selection when you insert new text, it is no longer sufficient to load
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9994 delsel.el. Instead you must call the function delete-selection-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9995
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9996 ** If you wish to use Partial Completion mode to complete partial words
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9997 within symbols or filenames, it is no longer sufficient to load
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9998 complete.el. Instead you must call the function partial-completion-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9999
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10000 ** If you wish to use uniquify to rename buffers for you,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10001 it is no longer sufficient to load uniquify.el. You must also
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10002 set uniquify-buffer-name-style to one of the non-nil legitimate values.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10003
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10004 ** Changes in View mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10005
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10006 *** Several new commands are available in View mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10007 Do H in view mode for a list of commands.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10008
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10009 *** There are two new commands for entering View mode:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10010 view-file-other-frame and view-buffer-other-frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10011
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10012 *** Exiting View mode does a better job of restoring windows to their
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10013 previous state.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10014
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10015 *** New customization variable view-scroll-auto-exit. If non-nil,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10016 scrolling past end of buffer makes view mode exit.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10017
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10018 *** New customization variable view-exits-all-viewing-windows. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10019 non-nil, view-mode will at exit restore all windows viewing buffer,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10020 not just the selected window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10021
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10022 *** New customization variable view-read-only. If non-nil, visiting a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10023 read-only file automatically enters View mode, and toggle-read-only
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10024 turns View mode on or off.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10025
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10026 *** New customization variable view-remove-frame-by-deleting controls
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10027 how to remove a not needed frame at view mode exit. If non-nil,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10028 delete the frame, if nil make an icon of it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10029
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10030 ** C-x v l, the command to print a file's version control log,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10031 now positions point at the entry for the file's current branch version.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10032
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10033 ** C-x v =, the command to compare a file with the last checked-in version,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10034 has a new feature. If the file is currently not locked, so that it is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10035 presumably identical to the last checked-in version, the command now asks
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10036 which version to compare with.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10037
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10038 ** When using hideshow.el, incremental search can temporarily show hidden
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10039 blocks if a match is inside the block.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10040
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10041 The block is hidden again if the search is continued and the next match
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10042 is outside the block. By customizing the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10043 isearch-hide-immediately you can choose to hide all the temporarily
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10044 shown blocks only when exiting from incremental search.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10045
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10046 By customizing the variable hs-isearch-open you can choose what kind
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10047 of blocks to temporarily show during isearch: comment blocks, code
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10048 blocks, all of them or none.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10049
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10050 ** The new command C-x 4 0 (kill-buffer-and-window) kills the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10051 current buffer and deletes the selected window. It asks for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10052 confirmation first.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10053
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10054 ** C-x C-w, which saves the buffer into a specified file name,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10055 now changes the major mode according to that file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10056 However, the mode will not be changed if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10057 (1) a local variables list or the `-*-' line specifies a major mode, or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10058 (2) the current major mode is a "special" mode,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10059 not suitable for ordinary files, or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10060 (3) the new file name does not particularly specify any mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10061
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10062 This applies to M-x set-visited-file-name as well.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10063
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10064 However, if you set change-major-mode-with-file-name to nil, then
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10065 these commands do not change the major mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10066
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10067 ** M-x occur changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10068
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10069 *** If the argument to M-x occur contains upper case letters,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10070 it performs a case-sensitive search.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10071
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10072 *** In the *Occur* buffer made by M-x occur,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10073 if you type g or M-x revert-buffer, this repeats the search
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10074 using the same regular expression and the same buffer as before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10075
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10076 ** In Transient Mark mode, the region in any one buffer is highlighted
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10077 in just one window at a time. At first, it is highlighted in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10078 window where you set the mark. The buffer's highlighting remains in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10079 that window unless you select to another window which shows the same
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10080 buffer--then the highlighting moves to that window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10081
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10082 ** The feature to suggest key bindings when you use M-x now operates
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10083 after the command finishes. The message suggesting key bindings
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10084 appears temporarily in the echo area. The previous echo area contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10085 come back after a few seconds, in case they contain useful information.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10086
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10087 ** Each frame now independently records the order for recently
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10088 selected buffers, so that the default for C-x b is now based on the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10089 buffers recently selected in the selected frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10090
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10091 ** Outline mode changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10092
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10093 *** Outline mode now uses overlays (this is the former noutline.el).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10094
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10095 *** Incremental searches skip over invisible text in Outline mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10096
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10097 ** When a minibuffer window is active but not the selected window, if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10098 you try to use the minibuffer, you used to get a nested minibuffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10099 Now, this not only gives an error, it also cancels the minibuffer that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10100 was already active.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10101
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10102 The motive for this change is so that beginning users do not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10103 unknowingly move away from minibuffers, leaving them active, and then
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10104 get confused by it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10105
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10106 If you want to be able to have recursive minibuffers, you must
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10107 set enable-recursive-minibuffers to non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10108
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10109 ** Changes in dynamic abbrevs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10110
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10111 *** Expanding dynamic abbrevs with M-/ is now smarter about case
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10112 conversion. If the expansion has mixed case not counting the first
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10113 character, and the abbreviation matches the beginning of the expansion
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10114 including case, then the expansion is copied verbatim.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10115
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10116 The expansion is also copied verbatim if the abbreviation itself has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10117 mixed case. And using SPC M-/ to copy an additional word always
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10118 copies it verbatim except when the previous copied word is all caps.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10119
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10120 *** The values of `dabbrev-case-replace' and `dabbrev-case-fold-search'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10121 are no longer Lisp expressions. They have simply three possible
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10122 values.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10123
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10124 `dabbrev-case-replace' has these three values: nil (don't preserve
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10125 case), t (do), or `case-replace' (do like M-x query-replace).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10126 `dabbrev-case-fold-search' has these three values: nil (don't ignore
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10127 case), t (do), or `case-fold-search' (do like search).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10128
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10129 ** Minibuffer history lists are truncated automatically now to a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10130 certain length. The variable history-length specifies how long they
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10131 can be. The default value is 30.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10132
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10133 ** Changes in Mail mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10134
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10135 *** The key C-x m no longer runs the `mail' command directly.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10136 Instead, it runs the command `compose-mail', which invokes the mail
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10137 composition mechanism you have selected with the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10138 `mail-user-agent'. The default choice of user agent is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10139 `sendmail-user-agent', which gives behavior compatible with the old
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10140 behavior.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10141
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10142 C-x 4 m now runs compose-mail-other-window, and C-x 5 m runs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10143 compose-mail-other-frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10144
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10145 *** While composing a reply to a mail message, from Rmail, you can use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10146 the command C-c C-r to cite just the region from the message you are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10147 replying to. This copies the text which is the selected region in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10148 buffer that shows the original message.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10149
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10150 *** The command C-c C-i inserts a file at the end of the message,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10151 with separator lines around the contents.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10152
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10153 *** The command M-x expand-mail-aliases expands all mail aliases
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10154 in suitable mail headers. Emacs automatically extracts mail alias
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10155 definitions from your mail alias file (e.g., ~/.mailrc). You do not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10156 need to expand mail aliases yourself before sending mail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10157
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10158 *** New features in the mail-complete command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10159
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10160 **** The mail-complete command now inserts the user's full name,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10161 for local users or if that is known. The variable mail-complete-style
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10162 controls the style to use, and whether to do this at all.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10163 Its values are like those of mail-from-style.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10164
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10165 **** The variable mail-passwd-command lets you specify a shell command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10166 to run to fetch a set of password-entries that add to the ones in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10167 /etc/passwd.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10168
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10169 **** The variable mail-passwd-file now specifies a list of files to read
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10170 to get the list of user ids. By default, one file is used:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10171 /etc/passwd.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10172
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10173 ** You can "quote" a file name to inhibit special significance of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10174 special syntax, by adding `/:' to the beginning. Thus, if you have a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10175 directory named `/foo:', you can prevent it from being treated as a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10176 reference to a remote host named `foo' by writing it as `/:/foo:'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10177
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10178 Emacs uses this new construct automatically when necessary, such as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10179 when you start it with a working directory whose name might otherwise
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10180 be taken to be magic.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10181
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10182 ** There is a new command M-x grep-find which uses find to select
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10183 files to search through, and grep to scan them. The output is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10184 available in a Compile mode buffer, as with M-x grep.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10185
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10186 M-x grep now uses the -e option if the grep program supports that.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10187 (-e prevents problems if the search pattern starts with a dash.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10188
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10189 ** In Dired, the & command now flags for deletion the files whose names
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10190 suggest they are probably not needed in the long run.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10191
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10192 In Dired, * is now a prefix key for mark-related commands.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10193
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10194 new key dired.el binding old key
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10195 ------- ---------------- -------
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10196 * c dired-change-marks c
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10197 * m dired-mark m
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10198 * * dired-mark-executables * (binding deleted)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10199 * / dired-mark-directories / (binding deleted)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10200 * @ dired-mark-symlinks @ (binding deleted)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10201 * u dired-unmark u
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10202 * DEL dired-unmark-backward DEL
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
10203 * ? dired-unmark-all-files C-M-?
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10204 * ! dired-unmark-all-marks
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10205 * % dired-mark-files-regexp % m
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10206 * C-n dired-next-marked-file M-}
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10207 * C-p dired-prev-marked-file M-{
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10208
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10209 ** Rmail changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10210
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10211 *** When Rmail cannot convert your incoming mail into Babyl format, it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10212 saves the new mail in the file RMAILOSE.n, where n is an integer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10213 chosen to make a unique name. This way, Rmail will not keep crashing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10214 each time you run it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10215
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10216 *** In Rmail, the variable rmail-summary-line-count-flag now controls
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10217 whether to include the line count in the summary. Non-nil means yes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10218
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10219 *** In Rmail summary buffers, d and C-d (the commands to delete
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10220 messages) now take repeat counts as arguments. A negative argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10221 means to move in the opposite direction.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10222
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10223 *** In Rmail, the t command now takes an optional argument which lets
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10224 you specify whether to show the message headers in full or pruned.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10225
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10226 *** In Rmail, the new command w (rmail-output-body-to-file) writes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10227 just the body of the current message into a file, without the headers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10228 It takes the file name from the message subject, by default, but you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10229 can edit that file name in the minibuffer before it is actually used
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10230 for output.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10231
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10232 ** Gnus changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10233
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10234 *** nntp.el has been totally rewritten in an asynchronous fashion.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10235
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10236 *** Article prefetching functionality has been moved up into
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10237 Gnus.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10238
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10239 *** Scoring can now be performed with logical operators like
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10240 `and', `or', `not', and parent redirection.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10241
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10242 *** Article washing status can be displayed in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10243 article mode line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10244
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10245 *** gnus.el has been split into many smaller files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10246
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10247 *** Suppression of duplicate articles based on Message-ID.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10248
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10249 (setq gnus-suppress-duplicates t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10250
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10251 *** New variables for specifying what score and adapt files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10252 are to be considered home score and adapt files. See
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10253 `gnus-home-score-file' and `gnus-home-adapt-files'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10254
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10255 *** Groups can inherit group parameters from parent topics.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10256
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10257 *** Article editing has been revamped and is now usable.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10258
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10259 *** Signatures can be recognized in more intelligent fashions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10260 See `gnus-signature-separator' and `gnus-signature-limit'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10261
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10262 *** Summary pick mode has been made to look more nn-like.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10263 Line numbers are displayed and the `.' command can be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10264 used to pick articles.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10265
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10266 *** Commands for moving the .newsrc.eld from one server to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10267 another have been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10268
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10269 `M-x gnus-change-server'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10270
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10271 *** A way to specify that "uninteresting" fields be suppressed when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10272 generating lines in buffers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10273
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10274 *** Several commands in the group buffer can be undone with
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
10275 `C-M-_'.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10276
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10277 *** Scoring can be done on words using the new score type `w'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10278
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10279 *** Adaptive scoring can be done on a Subject word-by-word basis:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10280
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10281 (setq gnus-use-adaptive-scoring '(word))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10282
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10283 *** Scores can be decayed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10284
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10285 (setq gnus-decay-scores t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10286
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10287 *** Scoring can be performed using a regexp on the Date header. The
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10288 Date is normalized to compact ISO 8601 format first.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10289
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10290 *** A new command has been added to remove all data on articles from
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10291 the native server.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10292
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10293 `M-x gnus-group-clear-data-on-native-groups'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10294
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10295 *** A new command for reading collections of documents
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
10296 (nndoc with nnvirtual on top) has been added -- `C-M-d'.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10297
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10298 *** Process mark sets can be pushed and popped.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10299
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10300 *** A new mail-to-news backend makes it possible to post
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10301 even when the NNTP server doesn't allow posting.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10302
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10303 *** A new backend for reading searches from Web search engines
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10304 (DejaNews, Alta Vista, InReference) has been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10305
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10306 Use the `G w' command in the group buffer to create such
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10307 a group.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10308
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10309 *** Groups inside topics can now be sorted using the standard
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10310 sorting functions, and each topic can be sorted independently.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10311
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10312 See the commands under the `T S' submap.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10313
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10314 *** Subsets of the groups can be sorted independently.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10315
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10316 See the commands under the `G P' submap.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10317
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10318 *** Cached articles can be pulled into the groups.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10319
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10320 Use the `Y c' command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10321
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10322 *** Score files are now applied in a more reliable order.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10323
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10324 *** Reports on where mail messages end up can be generated.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10325
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10326 `M-x nnmail-split-history'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10327
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10328 *** More hooks and functions have been added to remove junk
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10329 from incoming mail before saving the mail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10330
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10331 See `nnmail-prepare-incoming-header-hook'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10332
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10333 *** The nnml mail backend now understands compressed article files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10334
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10335 *** To enable Gnus to read/post multi-lingual articles, you must execute
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10336 the following code, for instance, in your .emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10337
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10338 (add-hook 'gnus-startup-hook 'gnus-mule-initialize)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10339
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10340 Then, when you start Gnus, it will decode non-ASCII text automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10341 and show appropriate characters. (Note: if you are using gnus-mime
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10342 from the SEMI package, formerly known as TM, you should NOT add this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10343 hook to gnus-startup-hook; gnus-mime has its own method of handling
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10344 this issue.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10345
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10346 Since it is impossible to distinguish all coding systems
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10347 automatically, you may need to specify a choice of coding system for a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10348 particular news group. This can be done by:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10349
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10350 (gnus-mule-add-group NEWSGROUP 'CODING-SYSTEM)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10351
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10352 Here NEWSGROUP should be a string which names a newsgroup or a tree
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10353 of newsgroups. If NEWSGROUP is "XXX.YYY", all news groups under
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10354 "XXX.YYY" (including "XXX.YYY.ZZZ") will use the specified coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10355 system. CODING-SYSTEM specifies which coding system to use (for both
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10356 for reading and posting).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10357
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10358 CODING-SYSTEM can also be a cons cell of the form
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10359 (READ-CODING-SYSTEM . POST-CODING-SYSTEM)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10360 Then READ-CODING-SYSTEM is used when you read messages from the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10361 newsgroups, while POST-CODING-SYSTEM is used when you post messages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10362 there.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10363
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10364 Emacs knows the right coding systems for certain newsgroups by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10365 default. Here are some of these default settings:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10366
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10367 (gnus-mule-add-group "fj" 'iso-2022-7)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10368 (gnus-mule-add-group "alt.chinese.text" 'hz-gb-2312)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10369 (gnus-mule-add-group "alt.hk" 'hz-gb-2312)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10370 (gnus-mule-add-group "alt.chinese.text.big5" 'cn-big5)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10371 (gnus-mule-add-group "soc.culture.vietnamese" '(nil . viqr))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10372
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10373 When you reply by mail to an article, these settings are ignored;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10374 the mail is encoded according to sendmail-coding-system, as usual.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10375
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10376 ** CC mode changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10377
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10378 *** If you edit primarily one style of C (or C++, Objective-C, Java)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10379 code, you may want to make the CC Mode style variables have global
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10380 values so that you can set them directly in your .emacs file. To do
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10381 this, set c-style-variables-are-local-p to nil in your .emacs file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10382 Note that this only takes effect if you do it *before* cc-mode.el is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10383 loaded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10384
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10385 If you typically edit more than one style of C (or C++, Objective-C,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10386 Java) code in a single Emacs session, you may want to make the CC Mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10387 style variables have buffer local values. By default, all buffers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10388 share the same style variable settings; to make them buffer local, set
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10389 c-style-variables-are-local-p to t in your .emacs file. Note that you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10390 must do this *before* CC Mode is loaded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10391
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10392 *** The new variable c-indentation-style holds the C style name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10393 of the current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10394
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10395 *** The variable c-block-comments-indent-p has been deleted, because
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10396 it is no longer necessary. C mode now handles all the supported styles
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10397 of block comments, with no need to say which one you will use.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10398
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10399 *** There is a new indentation style "python", which specifies the C
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10400 style that the Python developers like.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10401
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10402 *** There is a new c-cleanup-list option: brace-elseif-brace.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10403 This says to put ...} else if (...) {... on one line,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10404 just as brace-else-brace says to put ...} else {... on one line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10405
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10406 ** VC Changes [new]
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10407
36908
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10408 *** In vc-retrieve-snapshot (C-x v r), if you don't specify a snapshot
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10409 name, it retrieves the *latest* versions of all files in the current
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10410 directory and its subdirectories (aside from files already locked).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10411
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10412 This feature is useful if your RCS directory is a link to a common
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10413 master directory, and you want to pick up changes made by other
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10414 developers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10415
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10416 You can do the same thing for an individual file by typing C-u C-x C-q
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10417 RET in a buffer visiting that file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10418
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10419 *** VC can now handle files under CVS that are being "watched" by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10420 other developers. Such files are made read-only by CVS. To get a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10421 writable copy, type C-x C-q in a buffer visiting such a file. VC then
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10422 calls "cvs edit", which notifies the other developers of it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10423
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10424 *** vc-version-diff (C-u C-x v =) now suggests reasonable defaults for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10425 version numbers, based on the current state of the file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10426
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10427 ** Calendar changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10428
36908
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10429 *** A new function, list-holidays, allows you list holidays or
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10430 subclasses of holidays for ranges of years. Related menu items allow
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10431 you do this for the year of the selected date, or the
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10432 following/previous years.
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10433
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10434 *** There is now support for the Baha'i calendar system. Use `pb' in
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10435 the *Calendar* buffer to display the current Baha'i date. The Baha'i
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10436 calendar, or "Badi calendar" is a system of 19 months with 19 days
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10437 each, and 4 intercalary days (5 during a Gregorian leap year). The
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10438 calendar begins May 23, 1844, with each of the months named after a
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10439 supposed attribute of God.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10440
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10441 ** ps-print changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10442
37289
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10443 There are some new user variables and subgroups for customizing the page
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10444 layout.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10445
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10446 *** Headers & Footers (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10447
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10448 Some printer systems print a header page and force the first page to
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10449 be printed on the back of the header page when using duplex. If your
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10450 printer system has this behavior, set variable
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10451 `ps-banner-page-when-duplexing' to t.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10452
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10453 If variable `ps-banner-page-when-duplexing' is non-nil, it prints a
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10454 blank page as the very first printed page. So, it behaves as if the
37375
612c8df1b6a5 Fix a typo.
Gerd Moellmann <gerd@gnu.org>
parents: 37365
diff changeset
10455 very first character of buffer (or region) were a form feed ^L (\014).
37289
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10456
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10457 The variable `ps-spool-config' specifies who is responsible for
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10458 setting duplex mode and page size. Valid values are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10459
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10460 lpr-switches duplex and page size are configured by `ps-lpr-switches'.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10461 Don't forget to set `ps-lpr-switches' to select duplex
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10462 printing for your printer.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10463
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10464 setpagedevice duplex and page size are configured by ps-print using the
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10465 setpagedevice PostScript operator.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10466
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10467 nil duplex and page size are configured by ps-print *not* using
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10468 the setpagedevice PostScript operator.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10469
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10470 The variable `ps-spool-tumble' specifies how the page images on
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10471 opposite sides of a sheet are oriented with respect to each other. If
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10472 `ps-spool-tumble' is nil, ps-print produces output suitable for
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10473 bindings on the left or right. If `ps-spool-tumble' is non-nil,
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10474 ps-print produces output suitable for bindings at the top or bottom.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10475 This variable takes effect only if `ps-spool-duplex' is non-nil.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10476 The default value is nil.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10477
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10478 The variable `ps-header-frame-alist' specifies a header frame
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10479 properties alist. Valid frame properties are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10480
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10481 fore-color Specify the foreground frame color.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10482 Value should be a float number between 0.0 (black
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10483 color) and 1.0 (white color), or a string which is a
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10484 color name, or a list of 3 float numbers which
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10485 correspond to the Red Green Blue color scale, each
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10486 float number between 0.0 (dark color) and 1.0 (bright
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10487 color). The default is 0 ("black").
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10488
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10489 back-color Specify the background frame color (similar to fore-color).
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10490 The default is 0.9 ("gray90").
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10491
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10492 shadow-color Specify the shadow color (similar to fore-color).
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10493 The default is 0 ("black").
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10494
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10495 border-color Specify the border color (similar to fore-color).
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10496 The default is 0 ("black").
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10497
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10498 border-width Specify the border width.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10499 The default is 0.4.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10500
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10501 Any other property is ignored.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10502
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10503 Don't change this alist directly; instead use Custom, or the
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10504 `ps-value', `ps-get', `ps-put' and `ps-del' functions (see there for
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10505 documentation).
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10506
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10507 Ps-print can also print footers. The footer variables are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10508 `ps-print-footer', `ps-footer-offset', `ps-print-footer-frame',
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10509 `ps-footer-font-family', `ps-footer-font-size', `ps-footer-line-pad',
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10510 `ps-footer-lines', `ps-left-footer', `ps-right-footer' and
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10511 `ps-footer-frame-alist'. These variables are similar to those
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10512 controlling headers.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10513
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10514 *** Color management (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10515
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10516 If `ps-print-color-p' is non-nil, the buffer's text will be printed in
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10517 color.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10518
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10519 *** Face Management (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10520
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10521 If you need to print without worrying about face background colors,
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10522 set the variable `ps-use-face-background' which specifies if face
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10523 background should be used. Valid values are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10524
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10525 t always use face background color.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10526 nil never use face background color.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10527 (face...) list of faces whose background color will be used.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10528
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10529 *** N-up printing (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10530
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10531 The variable `ps-n-up-printing' specifies the number of pages per
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10532 sheet of paper.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10533
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10534 The variable `ps-n-up-margin' specifies the margin in points (pt)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10535 between the sheet border and the n-up printing.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10536
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10537 If variable `ps-n-up-border-p' is non-nil, a border is drawn around
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10538 each page.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10539
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10540 The variable `ps-n-up-filling' specifies how the page matrix is filled
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10541 on each sheet of paper. Following are the valid values for
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10542 `ps-n-up-filling' with a filling example using a 3x4 page matrix:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10543
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10544 `left-top' 1 2 3 4 `left-bottom' 9 10 11 12
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10545 5 6 7 8 5 6 7 8
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10546 9 10 11 12 1 2 3 4
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10547
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10548 `right-top' 4 3 2 1 `right-bottom' 12 11 10 9
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10549 8 7 6 5 8 7 6 5
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10550 12 11 10 9 4 3 2 1
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10551
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10552 `top-left' 1 4 7 10 `bottom-left' 3 6 9 12
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10553 2 5 8 11 2 5 8 11
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10554 3 6 9 12 1 4 7 10
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10555
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10556 `top-right' 10 7 4 1 `bottom-right' 12 9 6 3
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10557 11 8 5 2 11 8 5 2
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10558 12 9 6 3 10 7 4 1
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10559
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10560 Any other value is treated as `left-top'.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10561
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10562 *** Zebra stripes (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10563
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10564 The variable `ps-zebra-color' controls the zebra stripes grayscale or
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10565 RGB color.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10566
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10567 The variable `ps-zebra-stripe-follow' specifies how zebra stripes
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10568 continue on next page. Visually, valid values are (the character `+'
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10569 to the right of each column indicates that a line is printed):
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10570
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10571 `nil' `follow' `full' `full-follow'
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10572 Current Page -------- ----------- --------- ----------------
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10573 1 XXXXX + 1 XXXXXXXX + 1 XXXXXX + 1 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10574 2 XXXXX + 2 XXXXXXXX + 2 XXXXXX + 2 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10575 3 XXXXX + 3 XXXXXXXX + 3 XXXXXX + 3 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10576 4 + 4 + 4 + 4 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10577 5 + 5 + 5 + 5 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10578 6 + 6 + 6 + 6 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10579 7 XXXXX + 7 XXXXXXXX + 7 XXXXXX + 7 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10580 8 XXXXX + 8 XXXXXXXX + 8 XXXXXX + 8 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10581 9 XXXXX + 9 XXXXXXXX + 9 XXXXXX + 9 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10582 10 + 10 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10583 11 + 11 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10584 -------- ----------- --------- ----------------
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10585 Next Page -------- ----------- --------- ----------------
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10586 12 XXXXX + 12 + 10 XXXXXX + 10 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10587 13 XXXXX + 13 XXXXXXXX + 11 XXXXXX + 11 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10588 14 XXXXX + 14 XXXXXXXX + 12 XXXXXX + 12 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10589 15 + 15 XXXXXXXX + 13 + 13 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10590 16 + 16 + 14 + 14 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10591 17 + 17 + 15 + 15 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10592 18 XXXXX + 18 + 16 XXXXXX + 16 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10593 19 XXXXX + 19 XXXXXXXX + 17 XXXXXX + 17 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10594 20 XXXXX + 20 XXXXXXXX + 18 XXXXXX + 18 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10595 21 + 21 XXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10596 22 + 22 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10597 -------- ----------- --------- ----------------
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10598
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10599 Any other value is treated as `nil'.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10600
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10601
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10602 *** Printer management (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10603
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10604 The variable `ps-printer-name-option' determines the option used by
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10605 some utilities to indicate the printer name; it's used only when
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10606 `ps-printer-name' is a non-empty string. If you're using the lpr
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10607 utility to print, for example, `ps-printer-name-option' should be set
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10608 to "-P".
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10609
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10610 The variable `ps-manual-feed' indicates if the printer requires manual
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10611 paper feeding. If it's nil, automatic feeding takes place. If it's
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10612 non-nil, manual feeding takes place.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10613
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10614 The variable `ps-end-with-control-d' specifies whether C-d (\x04)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10615 should be inserted at end of the generated PostScript. Non-nil means
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10616 do so.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10617
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10618 *** Page settings (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10619
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10620 If variable `ps-warn-paper-type' is nil, it's *not* treated as an
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10621 error if the PostScript printer doesn't have a paper with the size
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10622 indicated by `ps-paper-type'; the default paper size will be used
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10623 instead. If `ps-warn-paper-type' is non-nil, an error is signaled if
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10624 the PostScript printer doesn't support a paper with the size indicated
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10625 by `ps-paper-type'. This is used when `ps-spool-config' is set to
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10626 `setpagedevice'.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10627
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10628 The variable `ps-print-upside-down' determines the orientation for
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10629 printing pages: nil means `normal' printing, non-nil means
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10630 `upside-down' printing (that is, the page is rotated by 180 degrees).
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10631
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10632 The variable `ps-selected-pages' specifies which pages to print. If
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10633 it's nil, all pages are printed. If it's a list, list elements may be
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10634 integers specifying a single page to print, or cons cells (FROM . TO)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10635 specifying to print from page FROM to TO. Invalid list elements, that
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10636 is integers smaller than one, or elements whose FROM is greater than
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10637 its TO, are ignored.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10638
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10639 The variable `ps-even-or-odd-pages' specifies how to print even/odd
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10640 pages. Valid values are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10641
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10642 nil print all pages.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10643
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10644 `even-page' print only even pages.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10645
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10646 `odd-page' print only odd pages.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10647
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10648 `even-sheet' print only even sheets.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10649 That is, if `ps-n-up-printing' is 1, it behaves like
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10650 `even-page', but for values greater than 1, it'll
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10651 print only the even sheet of paper.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10652
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10653 `odd-sheet' print only odd sheets.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10654 That is, if `ps-n-up-printing' is 1, it behaves like
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10655 `odd-page'; but for values greater than 1, it'll print
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10656 only the odd sheet of paper.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10657
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10658 Any other value is treated as nil.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10659
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10660 If you set `ps-selected-pages' (see there for documentation), pages
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10661 are filtered by `ps-selected-pages', and then by
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10662 `ps-even-or-odd-pages'. For example, if we have:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10663
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10664 (setq ps-selected-pages '(1 4 (6 . 10) (12 . 16) 20))
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10665
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10666 and we combine this with `ps-even-or-odd-pages' and
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10667 `ps-n-up-printing', we get:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10668
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10669 `ps-n-up-printing' = 1:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10670 `ps-even-or-odd-pages' PAGES PRINTED
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10671 nil 1, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10672 even-page 4, 6, 8, 10, 12, 14, 16, 20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10673 odd-page 1, 7, 9, 13, 15
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10674 even-sheet 4, 6, 8, 10, 12, 14, 16, 20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10675 odd-sheet 1, 7, 9, 13, 15
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10676
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10677 `ps-n-up-printing' = 2:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10678 `ps-even-or-odd-pages' PAGES PRINTED
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10679 nil 1/4, 6/7, 8/9, 10/12, 13/14, 15/16, 20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10680 even-page 4/6, 8/10, 12/14, 16/20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10681 odd-page 1/7, 9/13, 15
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10682 even-sheet 6/7, 10/12, 15/16
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10683 odd-sheet 1/4, 8/9, 13/14, 20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10684
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10685 *** Miscellany (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10686
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10687 The variable `ps-error-handler-message' specifies where error handler
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10688 messages should be sent.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10689
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10690 It is also possible to add a user-defined PostScript prologue code in
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10691 front of all generated prologue code by setting the variable
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10692 `ps-user-defined-prologue'.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10693
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10694 The variable `ps-line-number-font' specifies the font for line numbers.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10695
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10696 The variable `ps-line-number-font-size' specifies the font size in
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10697 points for line numbers.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10698
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10699 The variable `ps-line-number-color' specifies the color for line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10700 numbers. See `ps-zebra-color' for documentation.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10701
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10702 The variable `ps-line-number-step' specifies the interval in which
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10703 line numbers are printed. For example, if `ps-line-number-step' is set
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10704 to 2, the printing will look like:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10705
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10706 1 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10707 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10708 3 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10709 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10710 5 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10711 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10712 ...
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10713
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10714 Valid values are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10715
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10716 integer an integer specifying the interval in which line numbers are
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10717 printed. If it's smaller than or equal to zero, 1
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10718 is used.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10719
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10720 `zebra' specifies that only the line number of the first line in a
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10721 zebra stripe is to be printed.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10722
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10723 Any other value is treated as `zebra'.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10724
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10725 The variable `ps-line-number-start' specifies the starting point in
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10726 the interval given by `ps-line-number-step'. For example, if
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10727 `ps-line-number-step' is set to 3, and `ps-line-number-start' is set to
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10728 3, the output will look like:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10729
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10730 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10731 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10732 3 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10733 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10734 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10735 6 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10736 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10737 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10738 9 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10739 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10740 ...
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10741
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10742 The variable `ps-postscript-code-directory' specifies the directory
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10743 where the PostScript prologue file used by ps-print is found.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10744
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10745 The variable `ps-line-spacing' determines the line spacing in points,
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10746 for ordinary text, when generating PostScript (similar to
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10747 `ps-font-size').
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10748
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10749 The variable `ps-paragraph-spacing' determines the paragraph spacing,
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10750 in points, for ordinary text, when generating PostScript (similar to
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10751 `ps-font-size').
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10752
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10753 The variable `ps-paragraph-regexp' specifies the paragraph delimiter.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10754
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10755 The variable `ps-begin-cut-regexp' and `ps-end-cut-regexp' specify the
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10756 start and end of a region to cut out when printing.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10757
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10758 ** hideshow changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10759
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10760 *** now supports hiding of blocks of single line comments (like // for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10761 C++, ; for lisp).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10762
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10763 *** Support for java-mode added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10764
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10765 *** When doing `hs-hide-all' it is now possible to also hide the comments
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10766 in the file if `hs-hide-comments-when-hiding-all' is set.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10767
35862
9604ca6b3728 More typos from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35847
diff changeset
10768 *** The new function `hs-hide-initial-comment' hides the comments at
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10769 the beginning of the files. Finally those huge RCS logs don't stay in your
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10770 way! This is run by default when entering the `hs-minor-mode'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10771
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10772 *** Now uses overlays instead of `selective-display', so is more
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10773 robust and a lot faster.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10774
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10775 *** A block beginning can span multiple lines.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10776
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10777 *** The new variable `hs-show-hidden-short-form' if t, directs hideshow
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10778 to show only the beginning of a block when it is hidden. See the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10779 documentation for more details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10780
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10781 ** Changes in Enriched mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10782
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10783 *** When you visit a file in enriched-mode, Emacs will make sure it is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10784 filled to the current fill-column. This behavior is now independent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10785 of the size of the window. When you save the file, the fill-column in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10786 use is stored as well, so that the whole buffer need not be refilled
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10787 the next time unless the fill-column is different.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10788
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10789 *** use-hard-newlines is now a minor mode. When it is enabled, Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10790 distinguishes between hard and soft newlines, and treats hard newlines
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10791 as paragraph boundaries. Otherwise all newlines inserted are marked
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10792 as soft, and paragraph boundaries are determined solely from the text.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10793
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10794 ** Font Lock mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10795
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10796 *** Custom support
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10797
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10798 The variables font-lock-face-attributes, font-lock-display-type and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10799 font-lock-background-mode are now obsolete; the recommended way to specify the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10800 faces to use for Font Lock mode is with M-x customize-group on the new custom
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10801 group font-lock-highlighting-faces. If you set font-lock-face-attributes in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10802 your ~/.emacs file, Font Lock mode will respect its value. However, you should
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10803 consider converting from setting that variable to using M-x customize.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10804
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10805 You can still use X resources to specify Font Lock face appearances.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10806
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10807 *** Maximum decoration
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10808
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10809 Fontification now uses the maximum level of decoration supported by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10810 default. Previously, fontification used a mode-specific default level
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10811 of decoration, which is typically the minimum level of decoration
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10812 supported. You can set font-lock-maximum-decoration to nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10813 to get the old behavior.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10814
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10815 *** New support
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10816
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10817 Support is now provided for Java, Objective-C, AWK and SIMULA modes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10818
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10819 Note that Font Lock mode can be turned on without knowing exactly what modes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10820 support Font Lock mode, via the command global-font-lock-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10821
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10822 *** Configurable support
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10823
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10824 Support for C, C++, Objective-C and Java can be more easily configured for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10825 additional types and classes via the new variables c-font-lock-extra-types,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10826 c++-font-lock-extra-types, objc-font-lock-extra-types and, you guessed it,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10827 java-font-lock-extra-types. These value of each of these variables should be a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10828 list of regexps matching the extra type names. For example, the default value
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10829 of c-font-lock-extra-types is ("\\sw+_t") which means fontification follows the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10830 convention that C type names end in _t. This results in slower fontification.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10831
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10832 Of course, you can change the variables that specify fontification in whatever
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10833 way you wish, typically by adding regexps. However, these new variables make
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10834 it easier to make specific and common changes for the fontification of types.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10835
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10836 *** Adding highlighting patterns to existing support
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10837
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10838 You can use the new function font-lock-add-keywords to add your own
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10839 highlighting patterns, such as for project-local or user-specific constructs,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10840 for any mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10841
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10842 For example, to highlight `FIXME:' words in C comments, put:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10843
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10844 (font-lock-add-keywords 'c-mode '(("\\<FIXME:" 0 font-lock-warning-face t)))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10845
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10846 in your ~/.emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10847
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10848 *** New faces
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10849
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10850 Font Lock now defines two new faces, font-lock-builtin-face and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10851 font-lock-warning-face. These are intended to highlight builtin keywords,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10852 distinct from a language's normal keywords, and objects that should be brought
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10853 to user attention, respectively. Various modes now use these new faces.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10854
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10855 *** Changes to fast-lock support mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10856
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10857 The fast-lock package, one of the two Font Lock support modes, can now process
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10858 cache files silently. You can use the new variable fast-lock-verbose, in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10859 same way as font-lock-verbose, to control this feature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10860
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10861 *** Changes to lazy-lock support mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10862
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10863 The lazy-lock package, one of the two Font Lock support modes, can now fontify
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10864 according to the true syntactic context relative to other lines. You can use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10865 the new variable lazy-lock-defer-contextually to control this feature. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10866 non-nil, changes to the buffer will cause subsequent lines in the buffer to be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10867 refontified after lazy-lock-defer-time seconds of idle time. If nil, then only
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10868 the modified lines will be refontified; this is the same as the previous Lazy
46989
eeab5bdaffa2 Fix typos.
Richard M. Stallman <rms@gnu.org>
parents: 46962
diff changeset
10869 Lock mode behavior and the behavior of Font Lock mode.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10870
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10871 This feature is useful in modes where strings or comments can span lines.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10872 For example, if a string or comment terminating character is deleted, then if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10873 this feature is enabled subsequent lines in the buffer will be correctly
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10874 refontified to reflect their new syntactic context. Previously, only the line
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10875 containing the deleted character would be refontified and you would have to use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10876 the command M-g M-g (font-lock-fontify-block) to refontify some lines.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10877
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10878 As a consequence of this new feature, two other variables have changed:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10879
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10880 Variable `lazy-lock-defer-driven' is renamed `lazy-lock-defer-on-scrolling'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10881 Variable `lazy-lock-defer-time' can now only be a time, i.e., a number.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10882 Buffer modes for which on-the-fly deferral applies can be specified via the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10883 new variable `lazy-lock-defer-on-the-fly'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10884
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10885 If you set these variables in your ~/.emacs, then you may have to change those
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10886 settings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10887
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10888 ** Ada mode changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10889
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10890 *** There is now better support for using find-file.el with Ada mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10891 If you switch between spec and body, the cursor stays in the same
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10892 procedure (modulo overloading). If a spec has no body file yet, but
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10893 you try to switch to its body file, Ada mode now generates procedure
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10894 stubs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10895
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10896 *** There are two new commands:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10897 - `ada-make-local' : invokes gnatmake on the current buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10898 - `ada-check-syntax' : check syntax of current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10899
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10900 The user options `ada-compiler-make', `ada-make-options',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10901 `ada-language-version', `ada-compiler-syntax-check', and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10902 `ada-compile-options' are used within these commands.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10903
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10904 *** Ada mode can now work with Outline minor mode. The outline level
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10905 is calculated from the indenting, not from syntactic constructs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10906 Outlining does not work if your code is not correctly indented.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10907
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10908 *** The new function `ada-gnat-style' converts the buffer to the style of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10909 formatting used in GNAT. It places two blanks after a comment start,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10910 places one blank between a word end and an opening '(', and puts one
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10911 space between a comma and the beginning of a word.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10912
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10913 ** Scheme mode changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10914
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10915 *** Scheme mode indentation now uses many of the facilities of Lisp
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10916 mode; therefore, the variables to customize it are the variables used
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10917 for Lisp mode which have names starting with `lisp-'. The variables
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10918 with names starting with `scheme-' which used to do this no longer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10919 have any effect.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10920
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10921 If you want to use different indentation for Scheme and Lisp, this is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10922 still possible, but now you must do it by adding a hook to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10923 scheme-mode-hook, which could work by setting the `lisp-' indentation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10924 variables as buffer-local variables.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10925
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10926 *** DSSSL mode is a variant of Scheme mode, for editing DSSSL scripts.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10927 Use M-x dsssl-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10928
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10929 ** Changes to the emacsclient program
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10930
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10931 *** If a socket can't be found, and environment variables LOGNAME or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10932 USER are set, emacsclient now looks for a socket based on the UID
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10933 associated with the name. That is an emacsclient running as root
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10934 can connect to an Emacs server started by a non-root user.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10935
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10936 *** The emacsclient program now accepts an option --no-wait which tells
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10937 it to return immediately without waiting for you to "finish" the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10938 buffer in Emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10939
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10940 *** The new option --alternate-editor allows to specify an editor to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10941 use if Emacs is not running. The environment variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10942 ALTERNATE_EDITOR can be used for the same effect; the command line
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10943 option takes precedence.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10944
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10945 ** M-x eldoc-mode enables a minor mode in which the echo area
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10946 constantly shows the parameter list for function being called at point
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10947 (in Emacs Lisp and Lisp Interaction modes only).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10948
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10949 ** C-x n d now runs the new command narrow-to-defun,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10950 which narrows the accessible parts of the buffer to just
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10951 the current defun.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10952
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10953 ** Emacs now handles the `--' argument in the standard way; all
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10954 following arguments are treated as ordinary file names.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10955
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10956 ** On MSDOS and Windows, the bookmark file is now called _emacs.bmk,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10957 and the saved desktop file is now called _emacs.desktop (truncated if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10958 necessary).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10959
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10960 ** When you kill a buffer that visits a file,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10961 if there are any registers that save positions in the file,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10962 these register values no longer become completely useless.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10963 If you try to go to such a register with C-x j, then you are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10964 asked whether to visit the file again. If you say yes,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10965 it visits the file and then goes to the same position.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10966
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10967 ** When you visit a file that changes frequently outside Emacs--for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10968 example, a log of output from a process that continues to run--it may
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10969 be useful for Emacs to revert the file without querying you whenever
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10970 you visit the file afresh with C-x C-f.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10971
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10972 You can request this behavior for certain files by setting the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10973 variable revert-without-query to a list of regular expressions. If a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10974 file's name matches any of these regular expressions, find-file and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10975 revert-buffer revert the buffer without asking for permission--but
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10976 only if you have not edited the buffer text yourself.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10977
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10978 ** set-default-font has been renamed to set-frame-font
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10979 since it applies only to the current frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10980
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10981 ** In TeX mode, you can use the variable tex-main-file to specify the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10982 file for tex-file to run TeX on. (By default, tex-main-file is nil,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10983 and tex-file runs TeX on the current visited file.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10984
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10985 This is useful when you are editing a document that consists of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10986 multiple files. In each of the included files, you can set up a local
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10987 variable list which specifies the top-level file of your document for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10988 tex-main-file. Then tex-file will run TeX on the whole document
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10989 instead of just the file you are editing.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10990
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10991 ** RefTeX mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10992
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10993 RefTeX mode is a new minor mode with special support for \label, \ref
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10994 and \cite macros in LaTeX documents. RefTeX distinguishes labels of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10995 different environments (equation, figure, ...) and has full support for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10996 multifile documents. To use it, select a buffer with a LaTeX document and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10997 turn the mode on with M-x reftex-mode. Here are the main user commands:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10998
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10999 C-c ( reftex-label
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11000 Creates a label semi-automatically. RefTeX is context sensitive and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11001 knows which kind of label is needed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11002
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11003 C-c ) reftex-reference
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11004 Offers in a menu all labels in the document, along with context of the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11005 label definition. The selected label is referenced as \ref{LABEL}.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11006
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11007 C-c [ reftex-citation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11008 Prompts for a regular expression and displays a list of matching BibTeX
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11009 database entries. The selected entry is cited with a \cite{KEY} macro.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11010
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11011 C-c & reftex-view-crossref
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11012 Views the cross reference of a \ref or \cite command near point.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11013
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11014 C-c = reftex-toc
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11015 Shows a table of contents of the (multifile) document. From there you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11016 can quickly jump to every section.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11017
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11018 Under X, RefTeX installs a "Ref" menu in the menu bar, with additional
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11019 commands. Press `?' to get help when a prompt mentions this feature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11020 Full documentation and customization examples are in the file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11021 reftex.el. You can use the finder to view the file documentation:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11022 C-h p --> tex --> reftex.el
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11023
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11024 ** Changes in BibTeX mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11025
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11026 *** Info documentation is now available.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11027
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11028 *** Don't allow parentheses in string constants anymore. This confused
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11029 both the BibTeX program and Emacs BibTeX mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11030
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11031 *** Renamed variable bibtex-mode-user-optional-fields to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11032 bibtex-user-optional-fields.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11033
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11034 *** Removed variable bibtex-include-OPTannote
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11035 (use bibtex-user-optional-fields instead).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11036
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11037 *** New interactive functions to copy and kill fields and complete
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11038 entries to the BibTeX kill ring, from where they can be yanked back by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11039 appropriate functions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11040
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11041 *** New interactive functions for repositioning and marking of
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
11042 entries. They are bound by default to C-M-l and C-M-h.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11043
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11044 *** New hook bibtex-clean-entry-hook. It is called after entry has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11045 been cleaned.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11046
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11047 *** New variable bibtex-field-delimiters, which replaces variables
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11048 bibtex-field-{left|right}-delimiter.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11049
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11050 *** New variable bibtex-entry-delimiters to determine how entries
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11051 shall be delimited.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11052
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11053 *** Allow preinitialization of fields. See documentation of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11054 bibtex-user-optional-fields, bibtex-entry-field-alist, and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11055 bibtex-include-OPTkey for details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11056
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11057 *** Book and InBook entries require either an author or an editor
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11058 field. This is now supported by bibtex.el. Alternative fields are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11059 prefixed with `ALT'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11060
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11061 *** New variable bibtex-entry-format, which replaces variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11062 bibtex-clean-entry-zap-empty-opts and allows specification of many
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11063 formatting options performed on cleaning an entry (see variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11064 documentation).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11065
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11066 *** Even more control on how automatic keys are generated. See
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11067 documentation of bibtex-generate-autokey for details. Transcriptions
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11068 for foreign languages other than German are now handled, too.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11069
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11070 *** New boolean user option bibtex-comma-after-last-field to decide if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11071 comma should be inserted at end of last field.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11072
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11073 *** New boolean user option bibtex-align-at-equal-sign to determine if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11074 alignment should be made at left side of field contents or at equal
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11075 signs. New user options to control entry layout (e.g. indentation).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11076
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11077 *** New function bibtex-fill-entry to realign entries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11078
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11079 *** New function bibtex-reformat to reformat region or buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11080
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11081 *** New function bibtex-convert-alien to convert a BibTeX database
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11082 from alien sources.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11083
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11084 *** New function bibtex-complete-key (similar to bibtex-complete-string)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11085 to complete prefix to a key defined in buffer. Mainly useful in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11086 crossref entries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11087
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11088 *** New function bibtex-count-entries to count entries in buffer or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11089 region.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11090
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11091 *** Added support for imenu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11092
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11093 *** The function `bibtex-validate' now checks current region instead
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11094 of buffer if mark is active. Now it shows all errors of buffer in a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11095 `compilation mode' buffer. You can use the normal commands (e.g.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11096 `next-error') for compilation modes to jump to errors.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11097
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11098 *** New variable `bibtex-string-file-path' to determine where the files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11099 from `bibtex-string-files' are searched.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11100
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11101 ** Iso Accents mode now supports Latin-3 as an alternative.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11102
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11103 ** The command next-error now opens blocks hidden by hideshow.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11104
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11105 ** The function using-unix-filesystems has been replaced by the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11106 functions add-untranslated-filesystem and remove-untranslated-filesystem.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11107 Each of these functions takes the name of a drive letter or directory
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11108 as an argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11109
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11110 When a filesystem is added as untranslated, all files on it are read
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11111 and written in binary mode (no cr/lf translation is performed).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11112
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11113 ** browse-url changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11114
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11115 *** New methods for: Grail (browse-url-generic), MMM (browse-url-mmm),
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11116 Lynx in a separate xterm (browse-url-lynx-xterm) or in an Emacs window
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11117 (browse-url-lynx-emacs), remote W3 (browse-url-w3-gnudoit), generic
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11118 non-remote-controlled browsers (browse-url-generic) and associated
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11119 customization variables.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11120
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11121 *** New commands `browse-url-of-region' and `browse-url'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11122
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11123 *** URLs marked up with <URL:...> (RFC1738) work if broken across
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11124 lines. Browsing methods can be associated with URL regexps
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11125 (e.g. mailto: URLs) via `browse-url-browser-function'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11126
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11127 ** Changes in Ediff
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11128
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11129 *** Clicking Mouse-2 on a brief command description in Ediff control panel
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11130 pops up the Info file for this command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11131
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11132 *** There is now a variable, ediff-autostore-merges, which controls whether
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11133 the result of a merge is saved in a file. By default, this is done only when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11134 merge is done from a session group (eg, when merging files in two different
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11135 directories).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11136
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11137 *** Since Emacs 19.31 (this hasn't been announced before), Ediff can compare
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11138 and merge groups of files residing in different directories, or revisions of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11139 files in the same directory.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11140
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11141 *** Since Emacs 19.31, Ediff can apply multi-file patches interactively.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11142 The patches must be in the context format or GNU unified format. (The bug
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11143 related to the GNU format has now been fixed.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11144
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11145 ** Changes in Viper
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11146
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11147 *** The startup file is now .viper instead of .vip
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11148 *** All variable/function names have been changed to start with viper-
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11149 instead of vip-.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11150 *** C-\ now simulates the meta-key in all Viper states.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11151 *** C-z in Insert state now escapes to Vi for the duration of the next
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11152 Viper command. In Vi and Insert states, C-z behaves as before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11153 *** C-c \ escapes to Vi for one command if Viper is in Insert or Emacs states.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11154 *** _ is no longer the meta-key in Vi state.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11155 *** The variable viper-insert-state-cursor-color can be used to change cursor
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11156 color when Viper is in insert state.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11157 *** If search lands the cursor near the top or the bottom of the window,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11158 Viper pulls the window up or down to expose more context. The variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11159 viper-adjust-window-after-search controls this behavior.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11160
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11161 ** Etags changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11162
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11163 *** In C, C++, Objective C and Java, Etags tags global variables by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11164 default. The resulting tags files are inflated by 30% on average.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11165 Use --no-globals to turn this feature off. Etags can also tag
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11166 variables which are members of structure-like constructs, but it does
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11167 not by default. Use --members to turn this feature on.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11168
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11169 *** C++ member functions are now recognized as tags.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11170
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11171 *** Java is tagged like C++. In addition, "extends" and "implements"
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11172 constructs are tagged. Files are recognised by the extension .java.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11173
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11174 *** Etags can now handle programs written in Postscript. Files are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11175 recognised by the extensions .ps and .pdb (Postscript with C syntax).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11176 In Postscript, tags are lines that start with a slash.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11177
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11178 *** Etags now handles Objective C and Objective C++ code. The usual C and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11179 C++ tags are recognized in these languages; in addition, etags
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11180 recognizes special Objective C syntax for classes, class categories,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11181 methods and protocols.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11182
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11183 *** Etags also handles Cobol. Files are recognised by the extension
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11184 .cobol. The tagged lines are those containing a word that begins in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11185 column 8 and ends in a full stop, i.e. anything that could be a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11186 paragraph name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11187
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11188 *** Regexps in Etags now support intervals, as in ed or grep. The syntax of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11189 an interval is \{M,N\}, and it means to match the preceding expression
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11190 at least M times and as many as N times.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11191
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11192 ** The format for specifying a custom format for time-stamp to insert
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11193 in files has changed slightly.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11194
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11195 With the new enhancements to the functionality of format-time-string,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11196 time-stamp-format will change to be eventually compatible with it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11197 This conversion is being done in two steps to maintain compatibility
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11198 with old time-stamp-format values.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11199
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11200 In the new scheme, alternate case is signified by the number-sign
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11201 (`#') modifier, rather than changing the case of the format character.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11202 This feature is as yet incompletely implemented for compatibility
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11203 reasons.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11204
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11205 In the old time-stamp-format, all numeric fields defaulted to their
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11206 natural width. (With format-time-string, each format has a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11207 fixed-width default.) In this version, you can specify the colon
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11208 (`:') modifier to a numeric conversion to mean "give me the historical
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11209 time-stamp-format width default." Do not use colon if you are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11210 specifying an explicit width, as in "%02d".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11211
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11212 Numbers are no longer truncated to the requested width, except in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11213 case of "%02y", which continues to give a two-digit year. Digit
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11214 truncation probably wasn't being used for anything else anyway.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11215
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11216 The new formats will work with old versions of Emacs. New formats are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11217 being recommended now to allow time-stamp-format to change in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11218 future to be compatible with format-time-string. The new forms being
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11219 recommended now will continue to work then.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11220
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11221 See the documentation string for the variable time-stamp-format for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11222 details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11223
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11224 ** There are some additional major modes:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11225
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11226 dcl-mode, for editing VMS DCL files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11227 m4-mode, for editing files of m4 input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11228 meta-mode, for editing MetaFont and MetaPost source files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11229
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11230 ** In Shell mode, the command shell-copy-environment-variable lets you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11231 copy the value of a specified environment variable from the subshell
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11232 into Emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11233
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11234 ** New Lisp packages include:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11235
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11236 *** battery.el displays battery status for laptops.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11237
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11238 *** M-x bruce (named after Lenny Bruce) is a program that might
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11239 be used for adding some indecent words to your email.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11240
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11241 *** M-x crisp-mode enables an emulation for the CRiSP editor.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11242
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11243 *** M-x dirtrack arranges for better tracking of directory changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11244 in shell buffers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11245
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11246 *** The new library elint.el provides for linting of Emacs Lisp code.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11247 See the documentation for `elint-initialize', `elint-current-buffer'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11248 and `elint-defun'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11249
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11250 *** M-x expand-add-abbrevs defines a special kind of abbrev which is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11251 meant for programming constructs. These abbrevs expand like ordinary
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11252 ones, when you type SPC, but only at the end of a line and not within
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11253 strings or comments.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11254
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11255 These abbrevs can act as templates: you can define places within an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11256 abbrev for insertion of additional text. Once you expand the abbrev,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11257 you can then use C-x a p and C-x a n to move back and forth to these
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11258 insertion points. Thus you can conveniently insert additional text
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11259 at these points.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11260
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11261 *** filecache.el remembers the location of files so that you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11262 can visit them by short forms of their names.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11263
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11264 *** find-func.el lets you find the definition of the user-loaded
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11265 Emacs Lisp function at point.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11266
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11267 *** M-x handwrite converts text to a "handwritten" picture.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11268
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11269 *** M-x iswitchb-buffer is a command for switching to a buffer, much like
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11270 switch-buffer, but it reads the argument in a more helpful way.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11271
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11272 *** M-x landmark implements a neural network for landmark learning.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11273
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11274 *** M-x locate provides a convenient interface to the `locate' program.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11275
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11276 *** M4 mode is a new mode for editing files of m4 input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11277
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11278 *** mantemp.el creates C++ manual template instantiations
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11279 from the GCC error messages which indicate which instantiations are needed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11280
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11281 *** mouse-copy.el provides a one-click copy and move feature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11282 You can drag a region with M-mouse-1, and it is automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11283 inserted at point. M-Shift-mouse-1 deletes the text from its
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11284 original place after inserting the copy.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11285
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11286 *** mouse-drag.el lets you do scrolling by dragging Mouse-2
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11287 on the buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11288
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11289 You click the mouse and move; that distance either translates into the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11290 velocity to scroll (with mouse-drag-throw) or the distance to scroll
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11291 (with mouse-drag-drag). Horizontal scrolling is enabled when needed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11292
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11293 Enable mouse-drag with:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11294 (global-set-key [down-mouse-2] 'mouse-drag-throw)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11295 -or-
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11296 (global-set-key [down-mouse-2] 'mouse-drag-drag)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11297
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11298 *** mspools.el is useful for determining which mail folders have
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11299 mail waiting to be read in them. It works with procmail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11300
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11301 *** Octave mode is a major mode for editing files of input for Octave.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11302 It comes with a facility for communicating with an Octave subprocess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11303
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11304 *** ogonek
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11305
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11306 The ogonek package provides functions for changing the coding of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11307 Polish diacritic characters in buffers. Codings known from various
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11308 platforms are supported such as ISO8859-2, Mazovia, IBM Latin2, and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11309 TeX. For example, you can change the coding from Mazovia to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11310 ISO8859-2. Another example is a change of coding from ISO8859-2 to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11311 prefix notation (in which `/a' stands for the aogonek character, for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11312 instance) and vice versa.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11313
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11314 To use this package load it using
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11315 M-x load-library [enter] ogonek
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11316 Then, you may get an explanation by calling one of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11317 M-x ogonek-jak -- in Polish
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11318 M-x ogonek-how -- in English
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11319 The info specifies the commands and variables provided as well as the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11320 ways of customization in `.emacs'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11321
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11322 *** Interface to ph.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11323
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11324 Emacs provides a client interface to CCSO Nameservers (ph/qi)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11325
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11326 The CCSO nameserver is used in many universities to provide directory
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11327 services about people. ph.el provides a convenient Emacs interface to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11328 these servers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11329
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11330 *** uce.el is useful for replying to unsolicited commercial email.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11331
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11332 *** vcursor.el implements a "virtual cursor" feature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11333 You can move the virtual cursor with special commands
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11334 while the real cursor does not move.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11335
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11336 *** webjump.el is a "hot list" package which you can set up
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11337 for visiting your favorite web sites.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11338
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11339 *** M-x winner-mode is a minor mode which saves window configurations,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11340 so you can move back to other configurations that you have recently used.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11341
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11342 ** movemail change
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11343
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11344 Movemail no longer needs to be installed setuid root in order for POP
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11345 mail retrieval to function properly. This is because it no longer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11346 supports the RPOP (reserved-port POP) protocol; instead, it uses the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11347 user's POP password to authenticate to the mail server.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11348
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11349 This change was made earlier, but not reported in NEWS before.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
11350
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11351 * Emacs 20.1 changes for MS-DOS and MS-Windows.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11352
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11353 ** Changes in handling MS-DOS/MS-Windows text files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11354
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11355 Emacs handles three different conventions for representing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11356 end-of-line: CRLF for MSDOS, LF for Unix and GNU, and CR (used on the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11357 Macintosh). Emacs determines which convention is used in a specific
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11358 file based on the contents of that file (except for certain special
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11359 file names), and when it saves the file, it uses the same convention.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11360
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11361 To save the file and change the end-of-line convention, you can use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11362 C-x RET f (set-buffer-file-coding-system) to specify a different
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11363 coding system for the buffer. Then, when you save the file, the newly
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11364 specified coding system will take effect. For example, to save with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11365 LF, specify undecided-unix (or some other ...-unix coding system); to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11366 save with CRLF, specify undecided-dos.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
11367
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11368 * Lisp Changes in Emacs 20.1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11369
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11370 ** Byte-compiled files made with Emacs 20 will, in general, work in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11371 Emacs 19 as well, as long as the source code runs in Emacs 19. And
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11372 vice versa: byte-compiled files made with Emacs 19 should also run in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11373 Emacs 20, as long as the program itself works in Emacs 20.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11374
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11375 ** Windows-specific functions and variables have been renamed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11376 to start with w32- instead of win32-.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11377
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11378 In hacker language, calling something a "win" is a form of praise. We
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11379 don't want to praise a non-free Microsoft system, so we don't call it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11380 "win".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11381
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11382 ** Basic Lisp changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11383
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11384 *** A symbol whose name starts with a colon now automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11385 evaluates to itself. Therefore such a symbol can be used as a constant.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11386
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11387 *** The defined purpose of `defconst' has been changed. It should now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11388 be used only for values that should not be changed whether by a program
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11389 or by the user.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11390
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11391 The actual behavior of defconst has not been changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11392
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11393 *** There are new macros `when' and `unless'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11394
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11395 (when CONDITION BODY...) is short for (if CONDITION (progn BODY...))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11396 (unless CONDITION BODY...) is short for (if CONDITION nil BODY...)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11397
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11398 *** Emacs now defines functions caar, cadr, cdar and cddr with their
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11399 usual Lisp meanings. For example, caar returns the car of the car of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11400 its argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11401
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11402 *** equal, when comparing strings, now ignores their text properties.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11403
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11404 *** The new function `functionp' tests whether an object is a function.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11405
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11406 *** arrayp now returns t for char-tables and bool-vectors.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11407
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11408 *** Certain primitives which use characters (as integers) now get an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11409 error if the integer is not a valid character code. These primitives
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11410 include insert-char, char-to-string, and the %c construct in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11411 `format' function.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11412
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11413 *** The `require' function now insists on adding a suffix, either .el
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11414 or .elc, to the file name. Thus, (require 'foo) will not use a file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11415 whose name is just foo. It insists on foo.el or foo.elc.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11416
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11417 *** The `autoload' function, when the file name does not contain
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11418 either a directory name or the suffix .el or .elc, insists on
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11419 adding one of these suffixes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11420
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11421 *** string-to-number now takes an optional second argument BASE
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11422 which specifies the base to use when converting an integer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11423 If BASE is omitted, base 10 is used.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11424
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11425 We have not implemented other radices for floating point numbers,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11426 because that would be much more work and does not seem useful.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11427
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11428 *** substring now handles vectors as well as strings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11429
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11430 *** The Common Lisp function eql is no longer defined normally.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11431 You must load the `cl' library to define it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11432
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11433 *** The new macro `with-current-buffer' lets you evaluate an expression
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11434 conveniently with a different current buffer. It looks like this:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11435
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11436 (with-current-buffer BUFFER BODY-FORMS...)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11437
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11438 BUFFER is the expression that says which buffer to use.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11439 BODY-FORMS say what to do in that buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11440
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11441 *** The new primitive `save-current-buffer' saves and restores the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11442 choice of current buffer, like `save-excursion', but without saving or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11443 restoring the value of point or the mark. `with-current-buffer'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11444 works using `save-current-buffer'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11445
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11446 *** The new macro `with-temp-file' lets you do some work in a new buffer and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11447 write the output to a specified file. Like `progn', it returns the value
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11448 of the last form.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11449
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11450 *** The new macro `with-temp-buffer' lets you do some work in a new buffer,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11451 which is discarded after use. Like `progn', it returns the value of the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11452 last form. If you wish to return the buffer contents, use (buffer-string)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11453 as the last form.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11454
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11455 *** The new function split-string takes a string, splits it at certain
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11456 characters, and returns a list of the substrings in between the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11457 matches.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11458
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11459 For example, (split-string "foo bar lose" " +") returns ("foo" "bar" "lose").
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11460
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11461 *** The new macro with-output-to-string executes some Lisp expressions
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11462 with standard-output set up so that all output feeds into a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11463 Then it returns that string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11464
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11465 For example, if the current buffer name is `foo',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11466
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11467 (with-output-to-string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11468 (princ "The buffer is ")
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11469 (princ (buffer-name)))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11470
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11471 returns "The buffer is foo".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11472
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11473 ** Non-ASCII characters are now supported, if enable-multibyte-characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11474 is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11475
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11476 These characters have character codes above 256. When inserted in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11477 buffer or stored in a string, they are represented as multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11478 characters that occupy several buffer positions each.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11479
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11480 *** When enable-multibyte-characters is non-nil, a single character in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11481 a buffer or string can be two or more bytes (as many as four).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11482
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11483 Buffers and strings are still made up of unibyte elements;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11484 character positions and string indices are always measured in bytes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11485 Therefore, moving forward one character can increase the buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11486 position by 2, 3 or 4. The function forward-char moves by whole
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11487 characters, and therefore is no longer equivalent to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11488 (lambda (n) (goto-char (+ (point) n))).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11489
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11490 ASCII characters (codes 0 through 127) are still single bytes, always.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11491 Sequences of byte values 128 through 255 are used to represent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11492 non-ASCII characters. These sequences are called "multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11493 characters".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11494
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11495 The first byte of a multibyte character is always in the range 128
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11496 through 159 (octal 0200 through 0237). These values are called
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11497 "leading codes". The second and subsequent bytes are always in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11498 range 160 through 255 (octal 0240 through 0377). The first byte, the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11499 leading code, determines how many bytes long the sequence is.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11500
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11501 *** The function forward-char moves over characters, and therefore
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11502 (forward-char 1) may increase point by more than 1 if it moves over a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11503 multibyte character. Likewise, delete-char always deletes a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11504 character, which may be more than one buffer position.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11505
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11506 This means that some Lisp programs, which assume that a character is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11507 always one buffer position, need to be changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11508
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11509 However, all ASCII characters are always one buffer position.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11510
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11511 *** The regexp [\200-\377] no longer matches all non-ASCII characters,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11512 because when enable-multibyte-characters is non-nil, these characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11513 have codes that are not in the range octal 200 to octal 377. However,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11514 the regexp [^\000-\177] does match all non-ASCII characters,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11515 guaranteed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11516
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11517 *** The function char-boundary-p returns non-nil if position POS is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11518 between two characters in the buffer (not in the middle of a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11519 character).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11520
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11521 When the value is non-nil, it says what kind of character follows POS:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11522
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11523 0 if POS is at an ASCII character or at the end of range,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11524 1 if POS is before a 2-byte length multi-byte form,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11525 2 if POS is at a head of 3-byte length multi-byte form,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11526 3 if POS is at a head of 4-byte length multi-byte form,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11527 4 if POS is at a head of multi-byte form of a composite character.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11528
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11529 *** The function char-bytes returns how many bytes the character CHAR uses.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11530
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11531 *** Strings can contain multibyte characters. The function
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11532 `length' returns the string length counting bytes, which may be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11533 more than the number of characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11534
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11535 You can include a multibyte character in a string constant by writing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11536 it literally. You can also represent it with a hex escape,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11537 \xNNNNNNN..., using as many digits as necessary. Any character which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11538 is not a valid hex digit terminates this construct. If you want to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11539 follow it with a character that is a hex digit, write backslash and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11540 newline in between; that will terminate the hex escape.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11541
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11542 *** The function concat-chars takes arguments which are characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11543 and returns a string containing those characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11544
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11545 *** The function sref access a multibyte character in a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11546 (sref STRING INDX) returns the character in STRING at INDEX. INDEX
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11547 counts from zero. If INDEX is at a position in the middle of a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11548 character, sref signals an error.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11549
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11550 *** The function chars-in-string returns the number of characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11551 in a string. This is less than the length of the string, if the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11552 string contains multibyte characters (the length counts bytes).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11553
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11554 *** The function chars-in-region returns the number of characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11555 in a region from BEG to END. This is less than (- END BEG) if the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11556 region contains multibyte characters (the length counts bytes).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11557
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11558 *** The function string-to-list converts a string to a list of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11559 the characters in it. string-to-vector converts a string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11560 to a vector of the characters in it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11561
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11562 *** The function store-substring alters part of the contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11563 of a string. You call it as follows:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11564
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11565 (store-substring STRING IDX OBJ)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11566
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11567 This says to alter STRING, by storing OBJ starting at index IDX in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11568 STRING. OBJ may be either a character or a (smaller) string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11569 This function really does alter the contents of STRING.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11570 Since it is impossible to change the length of an existing string,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11571 it is an error if OBJ doesn't fit within STRING's actual length.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11572
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11573 *** char-width returns the width (in columns) of the character CHAR,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11574 if it were displayed in the current buffer and the selected window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11575
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11576 *** string-width returns the width (in columns) of the text in STRING,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11577 if it were displayed in the current buffer and the selected window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11578
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11579 *** truncate-string-to-width shortens a string, if necessary,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11580 to fit within a certain number of columns. (Of course, it does
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11581 not alter the string that you give it; it returns a new string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11582 which contains all or just part of the existing string.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11583
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11584 (truncate-string-to-width STR END-COLUMN &optional START-COLUMN PADDING)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11585
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11586 This returns the part of STR up to column END-COLUMN.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11587
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11588 The optional argument START-COLUMN specifies the starting column.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11589 If this is non-nil, then the first START-COLUMN columns of the string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11590 are not included in the resulting value.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11591
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11592 The optional argument PADDING, if non-nil, is a padding character to be added
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11593 at the beginning and end the resulting string, to extend it to exactly
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11594 WIDTH columns. If PADDING is nil, that means do not pad; then, if STRING
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11595 is narrower than WIDTH, the value is equal to STRING.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11596
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11597 If PADDING and START-COLUMN are both non-nil, and if there is no clean
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11598 place in STRING that corresponds to START-COLUMN (because one
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11599 character extends across that column), then the padding character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11600 PADDING is added one or more times at the beginning of the result
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11601 string, so that its columns line up as if it really did start at
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11602 column START-COLUMN.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11603
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11604 *** When the functions in the list after-change-functions are called,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11605 the third argument is the number of bytes in the pre-change text, not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11606 necessarily the number of characters. It is, in effect, the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11607 difference in buffer position between the beginning and the end of the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11608 changed text, before the change.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11609
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11610 *** The characters Emacs uses are classified in various character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11611 sets, each of which has a name which is a symbol. In general there is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11612 one character set for each script, not for each language.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11613
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11614 **** The function charsetp tests whether an object is a character set name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11615
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11616 **** The variable charset-list holds a list of character set names.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11617
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11618 **** char-charset, given a character code, returns the name of the character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11619 set that the character belongs to. (The value is a symbol.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11620
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11621 **** split-char, given a character code, returns a list containing the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11622 name of the character set, followed by one or two byte-values
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11623 which identify the character within that character set.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11624
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11625 **** make-char, given a character set name and one or two subsequent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11626 byte-values, constructs a character code. This is roughly the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11627 opposite of split-char.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11628
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11629 **** find-charset-region returns a list of the character sets
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11630 of all the characters between BEG and END.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11631
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11632 **** find-charset-string returns a list of the character sets
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11633 of all the characters in a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11634
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11635 *** Here are the Lisp facilities for working with coding systems
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11636 and specifying coding systems.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11637
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11638 **** The function coding-system-list returns a list of all coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11639 system names (symbols). With optional argument t, it returns a list
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11640 of all distinct base coding systems, not including variants.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11641 (Variant coding systems are those like latin-1-dos, latin-1-unix
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11642 and latin-1-mac which specify the end-of-line conversion as well
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11643 as what to do about code conversion.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11644
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11645 **** coding-system-p tests a symbol to see if it is a coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11646 name. It returns t if so, nil if not.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11647
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11648 **** file-coding-system-alist specifies which coding systems to use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11649 for certain file names. It works like network-coding-system-alist,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11650 except that the PATTERN is matched against the file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11651
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11652 Each element has the format (PATTERN . VAL), where PATTERN determines
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11653 which file names the element applies to. PATTERN should be a regexp
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11654 to match against a file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11655
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11656 VAL is a coding system, a cons cell containing two coding systems, or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11657 a function symbol. If VAL is a coding system, it is used for both
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11658 decoding what received from the network stream and encoding what sent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11659 to the network stream. If VAL is a cons cell containing two coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11660 systems, the car specifies the coding system for decoding, and the cdr
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11661 specifies the coding system for encoding.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11662
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11663 If VAL is a function symbol, the function must return a coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11664 or a cons cell containing two coding systems, which is used as above.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11665
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11666 **** The variable network-coding-system-alist specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11667 the coding system to use for network sockets.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11668
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11669 Each element has the format (PATTERN . VAL), where PATTERN determines
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11670 which network sockets the element applies to. PATTERN should be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11671 either a port number or a regular expression matching some network
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11672 service names.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11673
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11674 VAL is a coding system, a cons cell containing two coding systems, or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11675 a function symbol. If VAL is a coding system, it is used for both
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11676 decoding what received from the network stream and encoding what sent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11677 to the network stream. If VAL is a cons cell containing two coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11678 systems, the car specifies the coding system for decoding, and the cdr
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11679 specifies the coding system for encoding.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11680
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11681 If VAL is a function symbol, the function must return a coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11682 or a cons cell containing two coding systems, which is used as above.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11683
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11684 **** process-coding-system-alist specifies which coding systems to use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11685 for certain subprocess. It works like network-coding-system-alist,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11686 except that the PATTERN is matched against the program name used to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11687 start the subprocess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11688
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11689 **** The variable default-process-coding-system specifies the coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11690 systems to use for subprocess (and net connection) input and output,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11691 when nothing else specifies what to do. The value is a cons cell
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11692 (OUTPUT-CODING . INPUT-CODING). OUTPUT-CODING applies to output
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11693 to the subprocess, and INPUT-CODING applies to input from it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11694
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11695 **** The variable coding-system-for-write, if non-nil, specifies the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11696 coding system to use for writing a file, or for output to a synchronous
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11697 subprocess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11698
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11699 It also applies to any asynchronous subprocess or network connection,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11700 but in a different way: the value of coding-system-for-write when you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11701 start the subprocess or connection affects that subprocess or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11702 connection permanently or until overridden.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11703
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11704 The variable coding-system-for-write takes precedence over
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11705 file-coding-system-alist, process-coding-system-alist and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11706 network-coding-system-alist, and all other methods of specifying a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11707 coding system for output. But most of the time this variable is nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11708 It exists so that Lisp programs can bind it to a specific coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11709 system for one operation at a time.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11710
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11711 **** coding-system-for-read applies similarly to input from
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11712 files, subprocesses or network connections.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11713
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11714 **** The function process-coding-system tells you what
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11715 coding systems(s) an existing subprocess is using.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11716 The value is a cons cell,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11717 (DECODING-CODING-SYSTEM . ENCODING-CODING-SYSTEM)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11718 where DECODING-CODING-SYSTEM is used for decoding output from
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11719 the subprocess, and ENCODING-CODING-SYSTEM is used for encoding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11720 input to the subprocess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11721
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11722 **** The function set-process-coding-system can be used to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11723 change the coding systems in use for an existing subprocess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11724
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11725 ** Emacs has a new facility to help users manage the many
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11726 customization options. To make a Lisp program work with this facility,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11727 you need to use the new macros defgroup and defcustom.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11728
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11729 You use defcustom instead of defvar, for defining a user option
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11730 variable. The difference is that you specify two additional pieces of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11731 information (usually): the "type" which says what values are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11732 legitimate, and the "group" which specifies the hierarchy for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11733 customization.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11734
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11735 Thus, instead of writing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11736
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11737 (defvar foo-blurgoze nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11738 "*Non-nil means that foo will act very blurgozely.")
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11739
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11740 you would now write this:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11741
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11742 (defcustom foo-blurgoze nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11743 "*Non-nil means that foo will act very blurgozely."
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11744 :type 'boolean
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11745 :group foo)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11746
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11747 The type `boolean' means that this variable has only
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11748 two meaningful states: nil and non-nil. Other type values
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11749 describe other possibilities; see the manual for Custom
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11750 for a description of them.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11751
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11752 The "group" argument is used to specify a group which the option
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11753 should belong to. You define a new group like this:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11754
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11755 (defgroup ispell nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11756 "Spell checking using Ispell."
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11757 :group 'processes)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11758
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11759 The "group" argument in defgroup specifies the parent group. The root
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11760 group is called `emacs'; it should not contain any variables itself,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11761 but only other groups. The immediate subgroups of `emacs' correspond
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11762 to the keywords used by C-h p. Under these subgroups come
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11763 second-level subgroups that belong to individual packages.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11764
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11765 Each Emacs package should have its own set of groups. A simple
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11766 package should have just one group; a more complex package should
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11767 have a hierarchy of its own groups. The sole or root group of a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11768 package should be a subgroup of one or more of the "keyword"
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11769 first-level subgroups.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11770
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11771 ** New `widget' library for inserting UI components in buffers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11772
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11773 This library, used by the new custom library, is documented in a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11774 separate manual that accompanies Emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11775
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11776 ** easy-mmode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11777
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11778 The easy-mmode package provides macros and functions that make
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11779 developing minor modes easier. Roughly, the programmer has to code
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11780 only the functionality of the minor mode. All the rest--toggles,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11781 predicate, and documentation--can be done in one call to the macro
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11782 `easy-mmode-define-minor-mode' (see the documentation). See also
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11783 `easy-mmode-define-keymap'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11784
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11785 ** Text property changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11786
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11787 *** The `intangible' property now works on overlays as well as on a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11788 text property.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11789
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11790 *** The new functions next-char-property-change and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11791 previous-char-property-change scan through the buffer looking for a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11792 place where either a text property or an overlay might change. The
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11793 functions take two arguments, POSITION and LIMIT. POSITION is the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11794 starting position for the scan. LIMIT says where to stop the scan.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11795
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11796 If no property change is found before LIMIT, the value is LIMIT. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11797 LIMIT is nil, scan goes to the beginning or end of the accessible part
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11798 of the buffer. If no property change is found, the value is the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11799 position of the beginning or end of the buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11800
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11801 *** In the `local-map' text property or overlay property, the property
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11802 value can now be a symbol whose function definition is a keymap. This
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11803 is an alternative to using the keymap itself.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11804
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11805 ** Changes in invisibility features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11806
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11807 *** Isearch can now temporarily show parts of the buffer which are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11808 hidden by an overlay with a invisible property, when the search match
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11809 is inside that portion of the buffer. To enable this the overlay
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11810 should have a isearch-open-invisible property which is a function that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11811 would be called having the overlay as an argument, the function should
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11812 make the overlay visible.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11813
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11814 During incremental search the overlays are shown by modifying the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11815 invisible and intangible properties, if beside this more actions are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11816 needed the overlay should have a isearch-open-invisible-temporary
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11817 which is a function. The function is called with 2 arguments: one is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11818 the overlay and the second is nil when it should show the overlay and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11819 t when it should hide it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11820
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11821 *** add-to-invisibility-spec, remove-from-invisibility-spec
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11822
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11823 Modes that use overlays to hide portions of a buffer should set the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11824 invisible property of the overlay to the mode's name (or another symbol)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11825 and modify the `buffer-invisibility-spec' to include that symbol.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11826 Use `add-to-invisibility-spec' and `remove-from-invisibility-spec' to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11827 manipulate the `buffer-invisibility-spec'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11828 Here is an example of how to do this:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11829
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11830 ;; If we want to display an ellipsis:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11831 (add-to-invisibility-spec '(my-symbol . t))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11832 ;; If you don't want ellipsis:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11833 (add-to-invisibility-spec 'my-symbol)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11834
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11835 ...
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11836 (overlay-put (make-overlay beginning end) 'invisible 'my-symbol)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11837
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11838 ...
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11839 ;; When done with the overlays:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11840 (remove-from-invisibility-spec '(my-symbol . t))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11841 ;; Or respectively:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11842 (remove-from-invisibility-spec 'my-symbol)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11843
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11844 ** Changes in syntax parsing.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11845
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11846 *** The syntax-directed buffer-scan functions (such as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11847 `parse-partial-sexp', `forward-word' and similar functions) can now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11848 obey syntax information specified by text properties, if the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11849 `parse-sexp-lookup-properties' is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11850
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11851 If the value of `parse-sexp-lookup-properties' is nil, the behavior
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11852 is as before: the syntax-table of the current buffer is always
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11853 used to determine the syntax of the character at the position.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11854
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11855 When `parse-sexp-lookup-properties' is non-nil, the syntax of a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11856 character in the buffer is calculated thus:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11857
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11858 a) if the `syntax-table' text-property of that character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11859 is a cons, this cons becomes the syntax-type;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11860
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11861 Valid values of `syntax-table' text-property are: nil, a valid
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11862 syntax-table, and a valid syntax-table element, i.e.,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11863 a cons cell of the form (SYNTAX-CODE . MATCHING-CHAR).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11864
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11865 b) if the character's `syntax-table' text-property
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11866 is a syntax table, this syntax table is used
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11867 (instead of the syntax-table of the current buffer) to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11868 determine the syntax type of the character.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11869
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11870 c) otherwise the syntax-type is determined by the syntax-table
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11871 of the current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11872
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11873 *** The meaning of \s in regular expressions is also affected by the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11874 value of `parse-sexp-lookup-properties'. The details are the same as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11875 for the syntax-directed buffer-scan functions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11876
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11877 *** There are two new syntax-codes, `!' and `|' (numeric values 14
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11878 and 15). A character with a code `!' starts a comment which is ended
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11879 only by another character with the same code (unless quoted). A
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11880 character with a code `|' starts a string which is ended only by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11881 another character with the same code (unless quoted).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11882
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11883 These codes are mainly meant for use as values of the `syntax-table'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11884 text property.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11885
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11886 *** The function `parse-partial-sexp' has new semantics for the sixth
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11887 arg COMMENTSTOP. If it is `syntax-table', parse stops after the start
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11888 of a comment or a string, or after end of a comment or a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11889
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11890 *** The state-list which the return value from `parse-partial-sexp'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11891 (and can also be used as an argument) now has an optional ninth
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11892 element: the character address of the start of last comment or string;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11893 nil if none. The fourth and eighth elements have special values if the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11894 string/comment is started by a "!" or "|" syntax-code.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11895
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11896 *** Since new features of `parse-partial-sexp' allow a complete
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11897 syntactic parsing, `font-lock' no longer supports
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11898 `font-lock-comment-start-regexp'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11899
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11900 ** Changes in face features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11901
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11902 *** The face functions are now unconditionally defined in Emacs, even
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11903 if it does not support displaying on a device that supports faces.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11904
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11905 *** The function face-documentation returns the documentation string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11906 of a face (or nil if it doesn't have one).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11907
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11908 *** The function face-bold-p returns t if a face should be bold.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11909 set-face-bold-p sets that flag.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11910
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11911 *** The function face-italic-p returns t if a face should be italic.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11912 set-face-italic-p sets that flag.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11913
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11914 *** You can now specify foreground and background colors for text
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11915 by adding elements of the form (foreground-color . COLOR-NAME)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11916 and (background-color . COLOR-NAME) to the list of faces in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11917 the `face' property (either the character's text property or an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11918 overlay property).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11919
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11920 This means that you no longer need to create named faces to use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11921 arbitrary colors in a Lisp package.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11923 ** Changes in file-handling functions
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11924
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11925 *** File-access primitive functions no longer discard an extra redundant
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11926 directory name from the beginning of the file name. In other words,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11927 they no longer do anything special with // or /~. That conversion
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11928 is now done only in substitute-in-file-name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11929
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11930 This makes it possible for a Lisp program to open a file whose name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11931 begins with ~.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11932
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11933 *** If copy-file is unable to set the date of the output file,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11934 it now signals an error with the condition file-date-error.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11935
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11936 *** The inode number returned by file-attributes may be an integer (if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11937 the number fits in a Lisp integer) or a list of integers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11938
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11939 *** insert-file-contents can now read from a special file,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11940 as long as the arguments VISIT and REPLACE are nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11941
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11942 *** The RAWFILE arg to find-file-noselect, if non-nil, now suppresses
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11943 character code conversion as well as other things.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11944
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11945 Meanwhile, this feature does work with remote file names
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11946 (formerly it did not).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11947
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11948 *** Lisp packages which create temporary files should use the TMPDIR
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11949 environment variable to decide which directory to put them in.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11950
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11951 *** interpreter-mode-alist elements now specify regexps
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11952 instead of constant strings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11953
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11954 *** expand-file-name no longer treats `//' or `/~' specially. It used
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11955 to delete all the text of a file name up through the first slash of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11956 any `//' or `/~' sequence. Now it passes them straight through.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11957
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11958 substitute-in-file-name continues to treat those sequences specially,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11959 in the same way as before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11960
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11961 *** The variable `format-alist' is more general now.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11962 The FROM-FN and TO-FN in a format definition can now be strings
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11963 which specify shell commands to use as filters to perform conversion.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11964
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11965 *** The new function access-file tries to open a file, and signals an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11966 error if that fails. If the open succeeds, access-file does nothing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11967 else, and returns nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11968
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11969 *** The function insert-directory now signals an error if the specified
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11970 directory cannot be listed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11971
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11972 ** Changes in minibuffer input
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11973
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11974 *** The functions read-buffer, read-variable, read-command, read-string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11975 read-file-name, read-from-minibuffer and completing-read now take an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11976 additional argument which specifies the default value. If this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11977 argument is non-nil, it should be a string; that string is used in two
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11978 ways:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11979
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11980 It is returned if the user enters empty input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11981 It is available through the history command M-n.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11982
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11983 *** The functions read-string, read-from-minibuffer,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11984 read-no-blanks-input and completing-read now take an additional
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11985 argument INHERIT-INPUT-METHOD. If this is non-nil, then the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11986 minibuffer inherits the current input method and the setting of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11987 enable-multibyte-characters from the previously current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11988
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11989 In an interactive spec, you can use M instead of s to read an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11990 argument in this way.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11991
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11992 *** All minibuffer input functions discard text properties
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11993 from the text you enter in the minibuffer, unless the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11994 minibuffer-allow-text-properties is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11995
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11996 ** Echo area features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11997
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11998 *** Clearing the echo area now runs the normal hook
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11999 echo-area-clear-hook. Note that the echo area can be used while the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12000 minibuffer is active; in that case, the minibuffer is still active
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12001 after the echo area is cleared.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12002
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12003 *** The function current-message returns the message currently displayed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12004 in the echo area, or nil if there is none.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12005
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12006 ** Keyboard input features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12007
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12008 *** tty-erase-char is a new variable that reports which character was
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12009 set up as the terminal's erase character when time Emacs was started.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12010
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12011 *** num-nonmacro-input-events is the total number of input events
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12012 received so far from the terminal. It does not count those generated
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12013 by keyboard macros.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12014
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12015 ** Frame-related changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12016
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12017 *** make-frame runs the normal hook before-make-frame-hook just before
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12018 creating a frame, and just after creating a frame it runs the abnormal
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12019 hook after-make-frame-functions with the new frame as arg.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12020
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12021 *** The new hook window-configuration-change-hook is now run every time
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12022 the window configuration has changed. The frame whose configuration
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12023 has changed is the selected frame when the hook is run.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12024
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12025 *** Each frame now independently records the order for recently
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12026 selected buffers, in its buffer-list frame parameter, so that the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12027 value of other-buffer is now based on the buffers recently displayed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12028 in the selected frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12029
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12030 *** The value of the frame parameter vertical-scroll-bars
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12031 is now `left', `right' or nil. A non-nil value specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12032 which side of the window to put the scroll bars on.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12033
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12034 ** X Windows features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12035
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12036 *** You can examine X resources for other applications by binding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12037 x-resource-class around a call to x-get-resource. The usual value of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12038 x-resource-class is "Emacs", which is the correct value for Emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12039
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12040 *** In menus, checkboxes and radio buttons now actually work.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12041 The menu displays the current status of the box or button.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12042
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12043 *** The function x-list-fonts now takes an optional fourth argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12044 MAXIMUM which sets a limit on how many matching fonts to return.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12045 A smaller value of MAXIMUM makes the function faster.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12046
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12047 If the only question is whether *any* font matches the pattern,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12048 it is good to supply 1 for this argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12049
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12050 ** Subprocess features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12051
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12052 *** A reminder: it is no longer necessary for subprocess filter
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12053 functions and sentinels to do save-match-data, because Emacs does this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12054 automatically.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12055
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12056 *** The new function shell-command-to-string executes a shell command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12057 and returns the output from the command as a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12058
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12059 *** The new function process-contact returns t for a child process,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12060 and (HOSTNAME SERVICE) for a net connection.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12061
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12062 ** An error in running pre-command-hook or post-command-hook
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12063 does clear the variable to nil. The documentation was wrong before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12064
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12065 ** In define-key-after, if AFTER is t, the new binding now always goes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12066 at the end of the keymap. If the keymap is a menu, this means it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12067 goes after the other menu items.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12068
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12069 ** If you have a program that makes several changes in the same area
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12070 of the buffer, you can use the macro combine-after-change-calls
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12071 around that Lisp code to make it faster when after-change hooks
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12072 are in use.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12073
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12074 The macro arranges to call the after-change functions just once for a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12075 series of several changes--if that seems safe.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12076
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12077 Don't alter the variables after-change-functions and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12078 after-change-function within the body of a combine-after-change-calls
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12079 form.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12080
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12081 ** If you define an abbrev (with define-abbrev) whose EXPANSION
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12082 is not a string, then the abbrev does not expand in the usual sense,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12083 but its hook is still run.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12084
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12085 ** Normally, the Lisp debugger is not used (even if you have enabled it)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12086 for errors that are handled by condition-case.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12087
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12088 If you set debug-on-signal to a non-nil value, then the debugger is called
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12089 regardless of whether there is a handler for the condition. This is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12090 useful for debugging problems that happen inside of a condition-case.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12091
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12092 This mode of operation seems to be unreliable in other ways. Errors that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12093 are normal and ought to be handled, perhaps in timers or process
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12094 filters, will instead invoke the debugger. So don't say you weren't
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12095 warned.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12096
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12097 ** The new variable ring-bell-function lets you specify your own
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12098 way for Emacs to "ring the bell".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12099
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12100 ** If run-at-time's TIME argument is t, the action is repeated at
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12101 integral multiples of REPEAT from the epoch; this is useful for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12102 functions like display-time.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12103
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12104 ** You can use the function locate-library to find the precise file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12105 name of a Lisp library. This isn't new, but wasn't documented before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12106
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12107 ** Commands for entering view mode have new optional arguments that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12108 can be used from Lisp. Low-level entrance to and exit from view mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12109 is done by functions view-mode-enter and view-mode-exit.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12110
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12111 ** batch-byte-compile-file now makes Emacs return a nonzero status code
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12112 if there is an error in compilation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12113
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12114 ** pop-to-buffer, switch-to-buffer-other-window and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12115 switch-to-buffer-other-frame now accept an additional optional
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12116 argument NORECORD, much like switch-to-buffer. If it is non-nil,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12117 they don't put the buffer at the front of the buffer list.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12118
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12119 ** If your .emacs file leaves the *scratch* buffer non-empty,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12120 Emacs does not display the startup message, so as to avoid changing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12121 the *scratch* buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12122
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12123 ** The new function regexp-opt returns an efficient regexp to match a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12124 The arguments are STRINGS and (optionally) PAREN. This function can be used
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12125 where regexp matching or searching is intensively used and speed is important,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12126 e.g., in Font Lock mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12127
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12128 ** The variable buffer-display-count is local to each buffer,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12129 and is incremented each time the buffer is displayed in a window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12130 It starts at 0 when the buffer is created.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12131
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12132 ** The new function compose-mail starts composing a mail message
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12133 using the user's chosen mail composition agent (specified with the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12134 variable mail-user-agent). It has variants compose-mail-other-window
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12135 and compose-mail-other-frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12136
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12137 ** The `user-full-name' function now takes an optional parameter which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12138 can either be a number (the UID) or a string (the login name). The
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12139 full name of the specified user will be returned.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12140
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12141 ** Lisp packages that load files of customizations, or any other sort
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12142 of user profile, should obey the variable init-file-user in deciding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12143 where to find it. They should load the profile of the user name found
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12144 in that variable. If init-file-user is nil, meaning that the -q
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12145 option was used, then Lisp packages should not load the customization
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12146 files at all.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12147
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12148 ** format-time-string now allows you to specify the field width
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12149 and type of padding. This works as in printf: you write the field
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12150 width as digits in the middle of a %-construct. If you start
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12151 the field width with 0, it means to pad with zeros.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12152
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12153 For example, %S normally specifies the number of seconds since the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12154 minute; %03S means to pad this with zeros to 3 positions, %_3S to pad
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12155 with spaces to 3 positions. Plain %3S pads with zeros, because that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12156 is how %S normally pads to two positions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12157
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12158 ** thing-at-point now supports a new kind of "thing": url.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12159
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12160 ** imenu.el changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12161
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12162 You can now specify a function to be run when selecting an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12163 item from menu created by imenu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12164
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12165 An example of using this feature: if we define imenu items for the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12166 #include directives in a C file, we can open the included file when we
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12167 select one of those items.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
12168
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12169 * For older news, see the file ONEWS
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
12170
Dave Love <fx@gnu.org>
parents:
diff changeset
12171 ----------------------------------------------------------------------
Dave Love <fx@gnu.org>
parents:
diff changeset
12172 Copyright information:
Dave Love <fx@gnu.org>
parents:
diff changeset
12173
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
12174 Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
12175
Dave Love <fx@gnu.org>
parents:
diff changeset
12176 Permission is granted to anyone to make or distribute verbatim copies
Dave Love <fx@gnu.org>
parents:
diff changeset
12177 of this document as received, in any medium, provided that the
Dave Love <fx@gnu.org>
parents:
diff changeset
12178 copyright notice and this permission notice are preserved,
Dave Love <fx@gnu.org>
parents:
diff changeset
12179 thus giving the recipient permission to redistribute in turn.
Dave Love <fx@gnu.org>
parents:
diff changeset
12180
Dave Love <fx@gnu.org>
parents:
diff changeset
12181 Permission is granted to distribute modified versions
Dave Love <fx@gnu.org>
parents:
diff changeset
12182 of this document, or of portions of it,
Dave Love <fx@gnu.org>
parents:
diff changeset
12183 under the above conditions, provided also that they
Dave Love <fx@gnu.org>
parents:
diff changeset
12184 carry prominent notices stating who last changed them.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
12185
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
12186 Local variables:
Dave Love <fx@gnu.org>
parents:
diff changeset
12187 mode: outline
Dave Love <fx@gnu.org>
parents:
diff changeset
12188 paragraph-separate: "[ ]*$"
Dave Love <fx@gnu.org>
parents:
diff changeset
12189 end:
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 52233
diff changeset
12190
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 52233
diff changeset
12191 arch-tag: 1aca9dfa-2ac4-4d14-bebf-0007cee12793