annotate etc/NEWS @ 52480:dc467d89341e

(dired-mode-map): Bind M-g to dired-goto-file.
author Richard M. Stallman <rms@gnu.org>
date Fri, 12 Sep 2003 00:51:13 +0000
parents 2a049fb2c8d8
children 96d237d6be00
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
52407
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
86 ** Under XFree86 4, the display table is modified so that `' is
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
87 displayed as balanced quotes, not the ASCII glyphs whose shape has
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
88 been changed generally in the XFree86 fonts.
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
89
51902
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
90 ** sql changes.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
91
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
92 *** The variable `sql-product' controls the highlightng of different
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
93 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
94 buffer-specific basis via local variable settings, or for the current
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
95 session using the new SQL->Product submenu. (This menu replaces the
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
96 SQL->Highlighting submenu.)
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
97
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
98 The following values are supported:
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
99
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
100 ansi ANSI Standard (default)
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
101 db2 DB2
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
102 informix Informix
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
103 ingres Ingres
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
104 interbase Interbase
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
105 linter Linter
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
106 ms Microsoft
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
107 mysql MySQL
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
108 oracle Oracle
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
109 postgres Postgres
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
110 solid Solid
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
111 sqlite SQLite
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
112 sybase Sybase
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
113
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
114 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
115 SQL mode indicator.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
116
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
117 The technique of setting `sql-mode-font-lock-defaults' directly in
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
118 your .emacs will no longer establish the default highlighting -- Use
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
119 `sql-product' to accomplish this.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
120
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
121 *** The function `sql-add-product-keywords' can be used to add
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
122 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
123 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
124 you would use the following line in your .emacs file:
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 (sql-add-product-keywords 'ms
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
127 '("\\<\\w+_t\\>" . font-lock-type-face))
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
128
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
129 *** Oracle support includes keyword highlighting for Oracle 9i. Most
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
130 SQL and PL/SQL keywords are implemented. SQL*Plus commands are
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
131 highlighted in `font-lock-doc-face'.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
132
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
133 *** Microsoft SQLServer support has been significantly improved.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
134 Keyword highlighting for SqlServer 2000 is implemented.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
135 sql-interactive-mode defaults to use osql, rather than isql, because
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
136 osql flushes it's error stream more frequently. Thus error messages
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
137 are displayed when they occur rather than when the session is
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
138 terminated.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
139
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
140 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
141 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
142 credentials to authenticate the user.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
143
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
144 *** Imenu support has been enhanced to locate tables, views, indexes,
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
145 packages, procedures, functions, triggers, sequences, rules, and
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
146 defaults.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
147
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
148 *** Added SQL->Start SQLi Session menu entry which calls the
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
149 appropriate sql-interactive-mode wrapper for the current setting of
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
150 `sql-product'.
80522e1627b8 *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51886
diff changeset
151
51852
dc926bfd8248 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51831
diff changeset
152 ** 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
153 with special modes such as Tar mode.
dc926bfd8248 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51831
diff changeset
154
51934
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
155 ** Enhancements to apropos commands:
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
156
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
157 *** 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
158 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
159 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
160 available.
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
161
6c938273685a New apropos features.
Kim F. Storm <storm@cua.dk>
parents: 51928
diff changeset
162 *** 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
163 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
164 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
165 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
166 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
167 matching item.
51886
8065f7ca3329 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51852
diff changeset
168
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
169 +++
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
170 ** 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
171 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
172 the operating system or your X server.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
173
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
174 ** 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
175 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
176 restores the previous value of `buffer-invisibility-spec'.
51710
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
177
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
178 ** New command `kill-whole-line' kills an entire line at once.
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
179 By default, it is bound to C-S-<backspace>.
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
180
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
181 +++
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
182 ** 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
183 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
184 `Info-hide-note-references' to nil.
28e2763d0439 *** empty log message ***
Luc Teirlinck <teirllm@auburn.edu>
parents: 51647
diff changeset
185
51608
05ddf95bcbff *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51602
diff changeset
186 ** 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
187 'sql-sqlite'.
05ddf95bcbff *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51602
diff changeset
188
51505
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
189 ** BibTeX mode:
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
190 *** New `bibtex-entry-format' option `required-fields', enabled by default.
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
191 *** bibtex-maintain-sorted-entries can take values `plain',
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
192 `crossref', and `entry-class' which control the sorting scheme used
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
193 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
194 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
195 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
196 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
197
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
198 *** 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
199 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
200
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
201 *** 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
202 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
203
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
204 *** 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
205 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
206
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
207 *** 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
208 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
209
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
210 *** 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
211 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
212
31b7c8b5289d Describe bibtex.el changes. From Roland Winkler.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 51715
diff changeset
213 *** 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
214 individual fields of a BibTeX entry.
51505
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
215
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
216 ** 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
217 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
218 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
219
51222
083c1ba5b1d9 Fix typos.
Juanma Barranquero <lekktu@gmail.com>
parents: 51215
diff changeset
220 ** 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
221 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
222
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
223 Such individual settings are now preserved when windows are split
51222
083c1ba5b1d9 Fix typos.
Juanma Barranquero <lekktu@gmail.com>
parents: 51215
diff changeset
224 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
225 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
226
51182
3dd4104b45b6 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51133
diff changeset
227 ** Under X, mouse-wheel-mode is turned on by default.
3dd4104b45b6 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51133
diff changeset
228
51133
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
229 ** 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
230 speed up Emacs with slow networking to the X server.
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
231
51828
94d3cf9e9e14 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 51808
diff changeset
232 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
233 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
234
51133
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
235 ** `describe-char' can show data from the Unicode database file. See
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
236 user option `unicode-data'.
8eb2d4a0fe7f *** empty log message ***
Dave Love <fx@gnu.org>
parents: 51077
diff changeset
237
51374
31bb2083978b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51300
diff changeset
238 ** `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
239
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
240 ** `uniquify-strip-common-suffix' tells uniquify to prefer
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
241 `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
242
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
243 ** 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
244 Emacs will prompt her for confirmation.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
245
50897
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
246 ** 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
247
50794
4239cd7727ca Add an entry for GDB-UI.
Nick Roberts <nickrob@snap.net.nz>
parents: 50773
diff changeset
248 ** 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
249 and other common debugger commands.
4239cd7727ca Add an entry for GDB-UI.
Nick Roberts <nickrob@snap.net.nz>
parents: 50773
diff changeset
250
50716
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
251 ** recentf changes.
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
252
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
253 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
254 enabled. The new option `recentf-auto-cleanup' controls when to do
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
255 automatic cleanup.
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
256
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
257 With the more advanced option: `recentf-filename-handler', you can
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
258 specify a function that transforms filenames handled by recentf. For
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
259 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
260 recent list with different symbolic links.
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
261
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
262 To follow naming convention, `recentf-keep-non-readable-files-flag'
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
263 and `recentf-menu-append-commands-flag' respectively replace the
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
264 misnamed options `recentf-keep-non-readable-files-p' and
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
265 `recentf-menu-append-commands-p'. The old names remain available as
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
266 aliases, but have been marked obsolete.
bb0aa4c18cfe *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 50710
diff changeset
267
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
268 ** 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
269 from the locale.
49713
f863aaa8296d *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49668
diff changeset
270
48021
1c7fc6ad1178 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47739
diff changeset
271 ** Init file changes
1c7fc6ad1178 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47739
diff changeset
272
1c7fc6ad1178 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47739
diff changeset
273 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
274 ~/.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
275
50553
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
276 ** partial-completion-mode now does partial completion on directory names.
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
277
51300
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
278 ** 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
279 interregion interaction. @ has reverted to only setting
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
280 skeleton-positions and no longer sets skeleton-point. Skeletons
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
281 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
282 instead. The updated skeleton-insert docstring explains these new
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
283 features along with other details of skeleton construction.
0d8a28231554 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51222
diff changeset
284
47730
2568d5a27317 Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents: 47650
diff changeset
285 ** MH-E changes.
2568d5a27317 Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents: 47650
diff changeset
286
50702
7dd3d5eae9c7 Upgraded to MH-E version 7.3.
Bill Wohler <wohler@newt.com>
parents: 50607
diff changeset
287 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
288 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
289
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
290 +++
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
291 ** The `emacsclient' command understands the options `--eval' and
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
292 `--display' which tell Emacs respectively to evaluate the given elisp
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
293 expression and to use the given display when visiting files.
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
294
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
295 ** 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
296
5dbc6d83f14d Add info about --eval and --display.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 47621
diff changeset
297 +++
46736
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
298 ** 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
299 When the file is maintained under version control, that information
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
300 appears between the position information and the major mode.
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
301
47201
f17f344680f2 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47172
diff changeset
302 ** 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
303 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
304
46736
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
305 +++
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
306 ** 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
307 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
308 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
309 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
310 set-fringe-style.
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
311
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
312 +++
45426
784a17ff4998 Move remarks on `mail-default-directory' down to section
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45425
diff changeset
313 ** 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
314 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
315 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
316 "~/".
784a17ff4998 Move remarks on `mail-default-directory' down to section
Markus Rost <rost@math.uni-bielefeld.de>
parents: 45425
diff changeset
317
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
318 +++
46201
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
319 ** 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
320 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
321 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
322 to alter the file.)
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
323
46787
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
324 ** 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
325 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
326
50312
11f0b75d4df1 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50055
diff changeset
327 ** 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
328 of a file.
11f0b75d4df1 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50055
diff changeset
329
44876
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
330 ---
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
331 ** `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
332
a6bd3dde3bfd Document that ps-print can print Unicode characters.
Eli Zaretskii <eliz@gnu.org>
parents: 45302
diff changeset
333 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
334 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
335 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
336
a6bd3dde3bfd Document that ps-print can print Unicode characters.
Eli Zaretskii <eliz@gnu.org>
parents: 45302
diff changeset
337 ---
44876
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
338 ** The new options `buffers-menu-show-directories' and
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
339 `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
340 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
341
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
342 `buffers-menu-show-directories' controls whether the menu displays
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
343 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
344 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
345 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
346 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
347
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
348 `buffers-menu-show-status' controls whether the Buffers menu includes
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
349 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
350 t, and the status is shown.
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
351
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
352 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
353 the Buffers menu is regenerated.
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
354
29664616fca1 Add latest new features.
Eli Zaretskii <eliz@gnu.org>
parents: 44857
diff changeset
355 +++
44843
4872781b98d4 Customize-face suggesting to customize face under point.
Gerd Moellmann <gerd@gnu.org>
parents: 44827
diff changeset
356 ** 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
357 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
358 specified for that character, the commands by default customize those
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
359 faces.
44843
4872781b98d4 Customize-face suggesting to customize face under point.
Gerd Moellmann <gerd@gnu.org>
parents: 44827
diff changeset
360
52439
60e95c98df0a code-pages changes
Dave Love <fx@gnu.org>
parents: 52419
diff changeset
361 ** New language environments: French, Ukrainian, Tajik,
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
362 Bulgarian, Belarusian, Ukrainian, UTF-8, Windows-1255, Welsh, Latin-6,
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
363 Latin-7, Lithuanian, Latvian, Swedish, Slovenian, Croatian, Georgian,
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
364 Italian, Russian, Malayalam, Tamil, Russian, Chinese-EUC-TW. (Set up
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
365 automatically according to the locale.)
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
366
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
367 ** Indian support has been updated.
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
368 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
369 assumed. There is a framework for supporting various
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
370 Indian scripts, but currently only Devanagari, Malayalam and Tamil are
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
371 supported.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
372
46936
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
373 ---
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
374 ** New input methods: latin-alt-postfix, latin-postfix, latin-prefix,
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
375 ukrainian-computer, belarusian, bulgarian-bds, russian-computer,
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
376 vietnamese-telex, lithuanian-numeric, lithuanian-keyboard,
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
377 latvian-keyboard, welsh, georgian, rfc1345, ucs, sgml,
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
378 bulgarian-phonetic, dutch, slovenian, croatian, malayalam-inscript,
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
379 tamil-inscript.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
380
46936
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
381 ---
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
382 ** 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
383 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
384 Big 5 is then converted to CNS.
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
385
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
386 ---
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
387 ** Many new coding systems are available by loading the `code-pages'
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
388 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
389 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
390 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
391 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
392 latter is used by GNU locales.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
393
50897
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
394 ** The utf-8/16 coding systems have been enhanced.
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
395 By default, untranslatable utf-8 sequences (mostly representing CJK
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
396 characters) are simply composed into single quasi-characters. User
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
397 option `utf-translate-cjk' arranges to translate many utf-8 CJK
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
398 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
399 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
400 You can augment/amend the CJK translation via hash tables
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
401 `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
402 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
403 one-dimensional internal charsets, specifically the ISO-8859 ones.
50897
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
404 The utf-16 coding system is affected similarly.
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
405
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
406 ** 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
407 characters encodable by the utf-8 coding system. Just specify the
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
408 fontset appropriately.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
409
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
410 ** New command `ucs-insert' inserts a character specified by its
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
411 unicode.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
412
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
413 +++
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
414 ** Limited support for character `unification' has been added.
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
415 Emacs now knows how to translate between different representations of
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
416 the same characters in various Emacs charsets according to standard
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
417 Unicode mappings. This applies mainly to characters in the ISO 8859
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
418 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
419 translation works amongst the Emacs ...-iso8859-... charsets and the
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
420 mule-unicode-... ones.
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
421
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
422 By default this translation will happen automatically on encoding.
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
423 Self-inserting characters are translated to make the input conformant
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
424 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
425 possible.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
426
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
427 You can force a more complete unification with the user option
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
428 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
429 into Unicode characters (from the latin-iso8859-1 and
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
430 mule-unicode-0100-24ff charsets) on decoding. Note that this mode
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
431 will often effectively clobber data with an iso-2022 encoding.
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
432
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
433 ** There is support for decoding Greek and Cyrillic characters into
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
434 either Unicode (the mule-unicode charsets) or the iso-8859 charsets,
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
435 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
436 controlled by user option utf-fragment-on-decoding.
44018
9ebe6b2c13f3 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43973
diff changeset
437
48886
f016200d5069 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 48885
diff changeset
438 ** 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
439 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
440 (Options->Mule->Set Coding Systems->For File Name) invokes this
f016200d5069 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 48885
diff changeset
441 command.
48885
d5393fb79ea2 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 48849
diff changeset
442
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
443 ---
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
444 ** 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
445 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
446 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
447
44694
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
448 +++
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
449 ** Emacs can produce an underscore-like (horizontal bar) cursor.
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
450 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
451 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
452 cursor does.
04976f1e1ec2 Document the addition of `hbar'.
Eli Zaretskii <eliz@gnu.org>
parents: 44680
diff changeset
453
52419
e41d6d070429 Blinking cursor's default off state restored to "no cursor".
Kim F. Storm <storm@cua.dk>
parents: 52413
diff changeset
454 +++
e41d6d070429 Blinking cursor's default off state restored to "no cursor".
Kim F. Storm <storm@cua.dk>
parents: 52413
diff changeset
455 ** 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
456 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
457
44934
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
458 ** 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
459 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
460 program files that include other program files.
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
461
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
462 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
463 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
464 in them.
ae16f63fe28f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44898
diff changeset
465
43931
27dac8aa4a17 Document addition of po.el.
Eli Zaretskii <eliz@gnu.org>
parents: 43925
diff changeset
466 ---
27dac8aa4a17 Document addition of po.el.
Eli Zaretskii <eliz@gnu.org>
parents: 43925
diff changeset
467 ** 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
468 when Emacs visits them.
27dac8aa4a17 Document addition of po.el.
Eli Zaretskii <eliz@gnu.org>
parents: 43925
diff changeset
469
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
470 ---
43772
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
471 ** The game `mpuz' is enhanced.
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
472
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
473 `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
474 default, all trivial operations involving whole lines are performed
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
475 automatically. The game uses faces for better visual feedback.
c8b075cfe7eb Document enhancements to `mpuz.el'.
Eli Zaretskii <eliz@gnu.org>
parents: 43754
diff changeset
476
51602
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
477 ** The new variable `x-select-request-type' controls how Emacs
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
478 requests X selection. The default value is nil, which means that
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
479 Emacs requests X selection with types COMPOUND_TEXT and UTF8_STRING,
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
480 and use the more appropriately result.
5dccfdd80acb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 51506
diff changeset
481
43356
ba0eac6c2e94 Mark the new hscroll-related variables as documented in the manual.
Eli Zaretskii <eliz@gnu.org>
parents: 43353
diff changeset
482 +++
ba0eac6c2e94 Mark the new hscroll-related variables as documented in the manual.
Eli Zaretskii <eliz@gnu.org>
parents: 43353
diff changeset
483 ** 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
484 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
485 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
486 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
487
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
488 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
489 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
490 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
491 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
492 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
493 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
494
46936
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
495 The variable `automatic-hscrolling' was renamed to
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
496 `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
497
51505
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
498 ** TeX modes:
51374
31bb2083978b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51300
diff changeset
499 *** 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
500 +++
50553
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
501 *** 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
502 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
503 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
504 TeX commands to use at startup.
50553
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
505 *** verbatim environments are now highlighted in courier by font-lock
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
506 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
507
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
508 *** New major mode doctex-mode for *.dtx files.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
509
43666
a84483ed5134 Rename the variables related to automatic horizontal scrolling.
Eli Zaretskii <eliz@gnu.org>
parents: 43626
diff changeset
510 +++
50509
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
511 ** 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
512 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
513 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
514 different Emacs window will select that window (minibuffer window can
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
515 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
516 feature is not enabled.
43345
1230529aa3ae *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 43302
diff changeset
517
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
518 +++
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
519 ** 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
520 description various information about a character, including its
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
521 encodings and syntax, its text properties, overlays, and widgets at
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
522 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
523 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
524
44822
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
525 +++
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
526 ** 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
527 search multiple buffers. There is also a new command
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
528 `multi-occur-by-filename-regexp' which allows you to specify the
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
529 buffers to search by their filename. Internally, Occur mode has been
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
530 rewritten, and now uses font-lock, among other changes.
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
531
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
532 +++
43433
bacf1b0c4081 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 43415
diff changeset
533 ** Emacs normally highlights mouse sensitive text whenever the mouse
bacf1b0c4081 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 43415
diff changeset
534 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
535 can optionally enable mouse highlighting only after you move the
bacf1b0c4081 Minor cleanup.
Richard M. Stallman <rms@gnu.org>
parents: 43415
diff changeset
536 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
537 also disable mouse highlighting.
43375
7370da6d0364 Document new mouse-highlight variable and associated behaviour.
Kim F. Storm <storm@cua.dk>
parents: 43356
diff changeset
538
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
539 +++
43238
14e305b050b5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43217
diff changeset
540 ** 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
541 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
542 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
543 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
544 trouble with fontification and/or indentation.
14e305b050b5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43217
diff changeset
545
43100
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
546 +++
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
547 ** There's a new face `minibuffer-prompt'.
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
548 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
549 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
550 prompt string.
b31f95ef830a Document the minibuffer-prompt face.
Eli Zaretskii <eliz@gnu.org>
parents: 43061
diff changeset
551
43263
6862a1a4bd8e *** empty log message ***
Eli Zaretskii <eliz@gnu.org>
parents: 43245
diff changeset
552 +++
43206
cc9c8c17538f Describe new mode-line-inactive face.
Kim F. Storm <storm@cua.dk>
parents: 43196
diff changeset
553 ** 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
554 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
555 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
556
43245
6a3915789e36 Describe mode-line-in-non-selected-windows variable.
Kim F. Storm <storm@cua.dk>
parents: 43238
diff changeset
557 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
558 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
559
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
560 ---
43008
970e7e00f09a Mention "Show/Hide" menu.
Pavel Janík <Pavel@Janik.cz>
parents: 43001
diff changeset
561 ** 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
562 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
563 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
564 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
565 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
566 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
567 mode-line.
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
568
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
569 ---
43383
d21a74d23497 2002-02-17 Per Abrahamsen <abraham@dina.kvl.dk>
Per Abrahamsen <abraham@dina.kvl.dk>
parents: 43375
diff changeset
570 ** 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
571
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
572 +++
50897
289523dd4fa7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 50794
diff changeset
573 ** 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
574 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
575 `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
576
42822
b2bfe0b4018b Advertise Info-scroll-prefer-subnodes.
Eli Zaretskii <eliz@gnu.org>
parents: 42820
diff changeset
577 +++
51928
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
578 ** 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
579
42786
66b0f6a32c47 LDAP support now defaults to ldapsearch from OpenLDAP version 2.
Pavel Janík <Pavel@Janik.cz>
parents: 42749
diff changeset
580 ---
66b0f6a32c47 LDAP support now defaults to ldapsearch from OpenLDAP version 2.
Pavel Janík <Pavel@Janik.cz>
parents: 42749
diff changeset
581 ** 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
582
43045
39d6853f817c Mark the pc-selection-mode change as documented.
Eli Zaretskii <eliz@gnu.org>
parents: 43043
diff changeset
583 +++
43043
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
584 ** 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
585 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
586 argument it toggles the mode.
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
587
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
588 Turning off PC-Selection mode restores the global key bindings
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
589 that were replaced by turning on the mode.
98b7448c1aac *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43009
diff changeset
590
45874
5cce53a1bf6f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45859
diff changeset
591 +++
45565
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
592 ** 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
593 arguments were given. The new command-line option --no-splash
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
594 disables the splash screen; see also the variable
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
595 `inhibit-startup-message' (which is also aliased as
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
596 `inhibit-splash-screen').
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
597
42958
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
598 ** 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
599
42729
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
600 +++
42958
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
601 *** 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
602 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
603 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
604 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
605 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
606 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
607 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
608 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
609 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
610
42958
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
611 ---
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
612 *** 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
613 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
614 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
615 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
616 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
617
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
618 ---
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
619 *** 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
620
42749
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
621 +++
42729
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
622 ** 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
623
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
624 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
625 `--fullwidth', `--fullheight', and `--fullscreen' produce a frame
5814fed2f430 Document the new full-screen options.
Eli Zaretskii <eliz@gnu.org>
parents: 42725
diff changeset
626 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
627 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
628
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
629 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
630 ** Info-index offers completion.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
631
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
632 ---
45694
b31ffbdd8d11 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45692
diff changeset
633 ** 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
634 automatically.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
635
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
636 +++
49658
b4b0014862b1 Fix misspelling of `comint-insert-previous-argument'.
John Paul Wallington <jpw@pobox.com>
parents: 49657
diff changeset
637 ** 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
638 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
639 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
640 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
641
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
642 +++
42739
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
643 ** Changes in C-h bindings:
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
644
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
645 C-h e displays the *Messages* buffer.
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
646
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
647 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
648 that do not change:
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
649
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
650 C-h C-f displays the FAQ.
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
651 C-h C-e displays the PROBLEMS file.
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
652
f53ba4c83bf8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42729
diff changeset
653 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
654 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
655
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
656 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
657
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
658 - 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
659 run by the key sequence.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
660
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
661 - 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
662 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
663 that command.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
664
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
665 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
666 to new-kill-line, these commands now report:
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
667
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
668 - C-h c and C-h k C-k reports:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
669 C-k runs the command new-kill-line
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
670
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
671 - C-h w and C-h f kill-line reports:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
672 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
673
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
674 - 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
675 new-kill-line is on C-k
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
676
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
677 +++
41928
31fb6b379d0f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41923
diff changeset
678 ** 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
679 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
680 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
681 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
682
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
683 +++
44680
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
684 ** Yanking text now discards certain text properties that can
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
685 be inconvenient when you did not expect them. The variable
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
686 `yank-excluded-properties' specifies which ones. Insertion
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
687 of register contents and rectangles also discards these properties.
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
688
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
689 +++
45565
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
690 ** Occur, Info, and comint-derived modes now support using
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
691 M-x font-lock-mode to toggle fontification. The variable
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
692 `Info-fontify' is no longer applicable; to disable fontification,
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
693 remove `turn-on-font-lock' from `Info-mode-hook'.
c3aabeb6a3af *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45547
diff changeset
694
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
695 +++
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
696 ** 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
697 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
698 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
699 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
700 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
701 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
702
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
703 ---
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
704 ** 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
705 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
706 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
707 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
708 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
709 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
710 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
711
47537
b7761880867f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47506
diff changeset
712 +++
47506
7281e0917f10 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47485
diff changeset
713 ** 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
714 the previous value becomes the "backup value" of the variable.
7281e0917f10 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47485
diff changeset
715 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
716 under the "[State]" button.
7281e0917f10 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47485
diff changeset
717
48735
f5f4f758df8e New customization type `float'.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48728
diff changeset
718 ** 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
719 point (no integers are allowed).
f5f4f758df8e New customization type `float'.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48728
diff changeset
720
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
721 +++
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
722 ** 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
723 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
724
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
725 ---
42874
95d25103a45e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42867
diff changeset
726 ** GUD mode improvements for jdb:
42830
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
727
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
728 *** Search for source files using jdb classpath and class
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
729 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
730 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
731 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
732 and `gud-jdb-classpath' customization variables documentation.
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
733
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
734 *** Supports the standard breakpoint (gud-break, gud-clear)
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
735 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
736 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
737 (gud-finish).
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
738
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
739 *** 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
740 (Java 1.1 jdb).
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 *** The previous method of searching for source files has been
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
743 preserved in case someone still wants/needs to use it.
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
744 Set gud-jdb-use-classpath to nil.
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
745
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
746 Added Customization Variables
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 *** 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
749
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
750 *** 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
751 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
752 java sources (previous method).
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
753
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
754 *** 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
755 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
756 is nil).
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
757
20fac7788e1f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42822
diff changeset
758 Minor Improvements
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 *** 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
761
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
762 +++
41620
d5ea676e4052 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41596
diff changeset
763 ** hide-ifdef-mode now uses overlays rather than selective-display
d5ea676e4052 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41596
diff changeset
764 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
765 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
766
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
767 +++
42677
449f96bbb6d0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42629
diff changeset
768 ** In Dired's ! command (dired-do-shell-command), `*' and `?' now
449f96bbb6d0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42629
diff changeset
769 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
770 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
771 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
772 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
773 special treatment in `dired-do-shell-command'.
42677
449f96bbb6d0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42629
diff changeset
774
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
775 +++
44477
5bcb255d9dc5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44431
diff changeset
776 ** 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
777 types of files. The variable `dired-view-command-alist' controls
5bcb255d9dc5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44431
diff changeset
778 what external viewers to use and when.
5bcb255d9dc5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44431
diff changeset
779
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
780 +++
41596
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
781 ** 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
782 the corresponding environment variable does not exist.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
783 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
784 is only rarely needed.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
785
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
786 ---
41337
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
787 ** 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
788
994a9d1eee71 Minor change of wording in the documentation of jit-lock-defer-time.
Eli Zaretskii <eliz@gnu.org>
parents: 41482
diff changeset
789 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
790 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
791 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
792 only happen after 0.25s of idle time.
41337
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
793
43301
898b4b31410f * lisp/simple.el (mark-word): Mark more if repeated.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43297
diff changeset
794 +++
898b4b31410f * lisp/simple.el (mark-word): Mark more if repeated.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43297
diff changeset
795 ** 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
796 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
797 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
798 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
799 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
800 bind that to a key.
41298
dd0332958888 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41246
diff changeset
801
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
802 +++
44655
13e9258cbefb *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44625
diff changeset
803 ** 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
804 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
805 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
806 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
807 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
808 command only.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
809
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
810 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
811 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
812 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
813 mark or the region.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
814
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
815 After these commands, Transient Mark mode remains enabled until you
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
816 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
817 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
818 C-g.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
819
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
820 +++
44589
cff126affe7f Enhancements to set-mark-command and exchange-point-and-mark.
Kim F. Storm <storm@cua.dk>
parents: 44477
diff changeset
821 ** 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
822 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
823 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
824
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
825 +++
42605
32e40100d0de *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42487
diff changeset
826 ** 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
827 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
828 switching to it.
42299
4bc3e5620674 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42281
diff changeset
829
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
830 +++
42299
4bc3e5620674 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42281
diff changeset
831 ** 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
832 all frames you create. A position specified with --geometry only
4bc3e5620674 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42281
diff changeset
833 affects the initial frame.
4bc3e5620674 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42281
diff changeset
834
41746
6d817b78bf33 Document prefix arg for M-h.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 41730
diff changeset
835 +++
42183
ccf68d58861d Fix typos. From Juanma Barranquero <lektu@teleline.es>.
Pavel Janík <Pavel@Janik.cz>
parents: 42160
diff changeset
836 ** 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
837 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
838 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
839 paragraphs.
41746
6d817b78bf33 Document prefix arg for M-h.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 41730
diff changeset
840
42101
66b4582e344c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42043
diff changeset
841 ** 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
842 into the kill ring.
66b4582e344c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42043
diff changeset
843
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
844 +++
42160
530136f9f1b9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42101
diff changeset
845 ** 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
846 have been renamed to directory-free-space-program and
530136f9f1b9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42101
diff changeset
847 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
848 directory listing into a buffer.
530136f9f1b9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42101
diff changeset
849
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
850 ---
41298
dd0332958888 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41246
diff changeset
851 ** 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
852 (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
853
48575
691ba5e96011 mwheel.el change.
Kim F. Storm <storm@cua.dk>
parents: 48501
diff changeset
854 ** 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
855 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
856 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
857 mouse-wheel-inhibit-click-time variables.
691ba5e96011 mwheel.el change.
Kim F. Storm <storm@cua.dk>
parents: 48501
diff changeset
858
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
859 +++
48899
d684f5bc91b8 keyboard-coding-system, optimize-char-coding-system-table
Dave Love <fx@gnu.org>
parents: 48886
diff changeset
860 ** 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
861 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
862 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
863 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
864 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
865 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
866 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
867 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
868
40916
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
869 +++
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
870 ** 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
871 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
872 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
873 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
874 according to the value of `save-abbrevs'.
40916
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
875
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
876 +++
40729
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
877 ** 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
878 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
879 appears in.
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
880
47172
dfcd4fdf6fb0 cursor-in-non-selected-windows can now be any cursor type.
Kim F. Storm <storm@cua.dk>
parents: 47158
diff changeset
881 ** 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
882 of the recognized cursor types.
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
883
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
884 ---
44718
e1f429a4cfd7 Variable auto-save-file-name-transforms now has a third element.
Glenn Morris <rgm@gnu.org>
parents: 44694
diff changeset
885 ** 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
886 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
887 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
888
46736
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
889 +++
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
890 ** Diary sexp entries can have custom marking in the calendar.
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
891 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
892 `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
893 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
894 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
895 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
896 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
897 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
898 appointments, paydays or anything else using a sexp.
11f94cbe273f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46687
diff changeset
899
52233
20e27d5ca4c8 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52214
diff changeset
900 +++
20e27d5ca4c8 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52214
diff changeset
901 ** 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
902 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
903 count backward from the end of the year.
20e27d5ca4c8 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52214
diff changeset
904
52413
2aa1900aa34c *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52407
diff changeset
905 ** 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
906 This can be controlled through the variables `diary-header-line-flag'
2aa1900aa34c *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52407
diff changeset
907 and `diary-header-line-format'.
2aa1900aa34c *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 52407
diff changeset
908
44199
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
909 ** VC Changes
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
910
46456
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
911 *** 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
912 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
913 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
914 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
915 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
916
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
917 (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
918
af0b2d3d6ef8 Add entry for C-x C-q.
André Spiegel <spiegel@gnu.org>
parents: 46401
diff changeset
919 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
920
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
921 +++
44199
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
922 *** 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
923 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
924 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
925 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
926 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
927 CVS.
c157bec8fb40 Add section for VC Changes. New entry for `vc-cvs-global-switches'.
André Spiegel <spiegel@gnu.org>
parents: 44160
diff changeset
928
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
929 *** New backends for Subversion and Meta-CVS.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
930
44030
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
931 ** EDiff changes.
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
932
44058
b52e085be218 added +++'s
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44030
diff changeset
933 +++
44030
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
934 *** When comparing directories.
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
935 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
936 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
937 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
938
44058
b52e085be218 added +++'s
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44030
diff changeset
939 +++
44030
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
940 *** 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
941 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
942 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
943 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
944 comparison.
67ba867f0082 added a description of the new features in Ediff
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44018
diff changeset
945
48736
5fc281abe34e Increase outline level of description `ediff-backup' by one *.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 48735
diff changeset
946 *** 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
947 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
948 `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
949
46028
278093843f21 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45997
diff changeset
950 +++
42043
0fe5fe39786c Etags changes for Prolog and PHP.
Francesco Potortì <pot@gnu.org>
parents: 41928
diff changeset
951 ** Etags changes.
0fe5fe39786c Etags changes for Prolog and PHP.
Francesco Potortì <pot@gnu.org>
parents: 41928
diff changeset
952
45828
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
953 *** New regular expressions features
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
954
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
955 **** 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
956 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
957 only for backward compatibility. The new equivalent syntax is
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
958 --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
959 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
960 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
961 (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
962 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
963 (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
964 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
965 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
966
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
967 **** 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
968 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
969 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
970 CR, TAB, VT,
d11816fe2c59 New multi-line regexp and new regexp syntax.
Francesco Potortì <pot@gnu.org>
parents: 45758
diff changeset
971
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
972 **** 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
973 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
974 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
975 particularly useful when storing regexps in a file.
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
976
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
977 **** Regular expressions can be read from a file.
45802
d4c9f3bd6dfa New {language} and @regexp features.
Francesco Potortì <pot@gnu.org>
parents: 45800
diff changeset
978 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
979 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
980
45828
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
981 *** New language parsing features
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
982
47158
6ec82a0927f2 Etags improvement.
Francesco Potortì <pot@gnu.org>
parents: 47096
diff changeset
983 **** The `::' qualifier triggers C++ parsing in C file.
6ec82a0927f2 Etags improvement.
Francesco Potortì <pot@gnu.org>
parents: 47096
diff changeset
984 Previously, only the `template' and `class' keywords had this effect.
6ec82a0927f2 Etags improvement.
Francesco Potortì <pot@gnu.org>
parents: 47096
diff changeset
985
45828
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
986 **** In Perl, packages are tags.
43855
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
987 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
988 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
989 package::sub.
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
990
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
991 **** New language PHP.
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
992 Tags are functions, classes and defines.
45919
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
993 If the --members option is specified to etags, tags are vars also.
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
994
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
995 **** New language HTML.
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
996 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
997 used inside an anchor and whenever id= is used.
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
998
45828
ad50e4ff5888 Structure the changes for etags using outline headers.
Francesco Potortì <pot@gnu.org>
parents: 45802
diff changeset
999 **** New default keywords for TeX.
45661
a47ac7311101 Document new default keywords for TeX.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
1000 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
1001 renewenvironment.
a47ac7311101 Document new default keywords for TeX.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
1002
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1003 **** In Makefiles, constants are tagged.
46989
eeab5bdaffa2 Fix typos.
Richard M. Stallman <rms@gnu.org>
parents: 46962
diff changeset
1004 If you want the old behavior instead, thus avoiding to increase the
45919
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
1005 size of the tags file, use the --no-globals option.
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
1006
Francesco Potortì <pot@gnu.org>
parents: 45901
diff changeset
1007 **** 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
1008
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1009 *** Honour #line directives.
db463e67459c Better description of what etags does with #line.
Francesco Potortì <pot@gnu.org>
parents: 43772
diff changeset
1010 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
1011 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
1012 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
1013 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
1014 writes tags pointing to the source file.
43724
16affaf7292b etags honours #line directives.
Francesco Potortì <pot@gnu.org>
parents: 43666
diff changeset
1015
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1016 *** New option --parse-stdin=FILE.
45661
a47ac7311101 Document new default keywords for TeX.
Francesco Potortì <pot@gnu.org>
parents: 45660
diff changeset
1017 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
1018 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
1019 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
1020 the file FILE.
45657
77cb605109fc Document --parse-stdin=FILE for Etags.
Francesco Potortì <pot@gnu.org>
parents: 45614
diff changeset
1021
40493
94818b20da05 Document the change in list-buffers-noselect wrt buffers visiting files
Eli Zaretskii <eliz@gnu.org>
parents: 40487
diff changeset
1022 +++
51715
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1023 ** CC Mode changes.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1024
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1025 *** Font lock support.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1026 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
1027 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
1028 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
1029 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
1030 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
1031 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
1032
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1033 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
1034 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
1035 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
1036 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
1037 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
1038 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
1039 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
1040 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
1041 variable font-lock-maximum-decoration.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1042
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1043 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
1044 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
1045 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
1046 (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
1047 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
1048 take the better part of a minute.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1049
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1050 **** 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
1051 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
1052 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
1053 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
1054 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
1055 not contain patterns for uncertain types.
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 **** Support for documentation comments.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1058 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
1059 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
1060 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
1061 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
1062
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1063 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
1064 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
1065 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
1066 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
1067
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1068 **** Better handling of C++ templates.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1069 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
1070 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
1071 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
1072 parens.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1073
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1074 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
1075 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
1076 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
1077 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
1078 not as configurable as it ought to be.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1079
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1080 **** Improved handling of Objective-C and CORBA IDL.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1081 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
1082 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
1083 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
1084 handled correctly, also wrt indentation.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1085
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1086 *** Support for the AWK language.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1087 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
1088 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
1089 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
1090 Here is a summary:
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1091
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1092 **** Indentation Engine
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1093 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
1094
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1095 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
1096 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
1097 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
1098 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
1099 definition, or structured statement.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1100
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1101 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
1102 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
1103 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
1104
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1105 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
1106 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
1107 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
1108 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
1109
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1110 **** Font Locking
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1111 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
1112 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
1113 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
1114 the AWK language itself.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1115
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1116 **** Comment Commands
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1117 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
1118 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
1119
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1120 **** Movement Commands
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1121 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
1122 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
1123 (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
1124
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1125 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
1126 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
1127 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
1128 functions.
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 **** Auto-newline Insertion and Clean-ups
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1131 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
1132 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
1133 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
1134
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1135 *** New syntactic symbols in IDL mode.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1136 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
1137 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
1138 module-open, module-close, inmodule, composition-open,
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1139 composition-close, and incomposition.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1140
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1141 *** 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
1142 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
1143 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
1144 Contributed by Kevin Ryde.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1145
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1146 *** Better control over require-final-newline.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1147 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
1148 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
1149 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
1150 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
1151 (C, C++ and Objective-C).
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1152
51831
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1153 *** 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
1154 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
1155 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
1156 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
1157 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
1158
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1159 ((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
1160
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1161 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
1162
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1163 ((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
1164
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1165 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
1166 symbol.
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1167
b1326ab47cbe A bit more talk about an API change in CC Mode.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51828
diff changeset
1168 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
1169 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
1170 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
1171 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
1172
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1173 *** API changes for derived modes.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1174 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
1175 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
1176 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
1177 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
1178 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
1179
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1180 **** New language variable system.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1181 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
1182
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1183 **** New initialization functions.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1184 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
1185 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
1186 c-init-language-vars.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1187
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1188 *** Changes in analysis of nested syntactic constructs.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1189 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
1190 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
1191 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
1192
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1193 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
1194 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
1195 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
1196 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
1197 it to bug-cc-mode@gnu.org.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1198
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1199 **** New syntactic symbol substatement-label.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1200 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
1201 its substatement. E.g:
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1202
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1203 if (x)
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1204 x_is_true:
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1205 do_stuff();
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 *** Better handling of multiline macros.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1208
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1209 **** Syntactic indentation inside macros.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1210 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
1211 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
1212 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
1213 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
1214 inside #define's.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1215
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1216 **** New lineup function c-lineup-cpp-define.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1217 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
1218 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
1219 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
1220 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
1221 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
1222 empty lines within the macro better.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1223
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1224 **** 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
1225 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
1226 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
1227
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1228 **** Better alignment of line continuation backslashes.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1229 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
1230 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
1231 backslashes can be moved.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1232
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1233 **** Automatic alignment of line continuation backslashes.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1234 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
1235 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
1236 inserted in auto-newline mode.
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 **** Line indentation works better inside macros.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1239 Regardless whether syntactic indentation and syntactic indentation
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1240 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
1241 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
1242 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
1243 backslash) in the macro.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1244
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1245 *** indent-for-comment is more customizable.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1246 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
1247 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
1248 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
1249 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
1250 (something which was hardcoded earlier).
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 *** New function c-context-open-line.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1253 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
1254
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1255 *** New lineup functions
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1256
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1257 **** c-lineup-string-cont
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1258 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
1259 continues. E.g:
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1260
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1261 result = prefix + "A message "
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1262 "string."; <- c-lineup-string-cont
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1263
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1264 **** c-lineup-cascaded-calls
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1265 Lines up series of calls separated by "->" or ".".
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1266
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1267 **** c-lineup-knr-region-comment
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1268 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
1269 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
1270
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1271 **** c-lineup-gcc-asm-reg
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1272 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
1273 Ryde.
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 **** c-lineup-argcont
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1276 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
1277 Contributed by Kevin Ryde.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1278
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1279 *** Better caching of the syntactic context.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1280 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
1281 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
1282 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
1283 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
1284 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
1285
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1286 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
1287 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
1288 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
1289 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
1290 context.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1291
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1292 *** Statements are recognized in a more robust way.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1293 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
1294 "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
1295 happen when macros are involved.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1296
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1297 *** 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
1298 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
1299 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
1300 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
1301 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
1302 line is left untouched.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1303
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1304 *** Added toggle for syntactic indentation.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1305 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
1306 syntactic indentation.
6e2487a7e9ff CC Mode 5.30 news.
Martin Stjernholm <mast@lysator.liu.se>
parents: 51711
diff changeset
1307
40575
4ce7861c6181 Mention --no-window-system changes in the NEWS.
Pavel Janík <Pavel@Janik.cz>
parents: 40526
diff changeset
1308 ** 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
1309 --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
1310
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1311 +++
45574
a0ad5c5f6951 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45565
diff changeset
1312 ** The command `list-text-properties-at' has been deleted because
a0ad5c5f6951 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45565
diff changeset
1313 C-u C-x = gives the same information and more.
a0ad5c5f6951 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45565
diff changeset
1314
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1315 +++
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1316 ** `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
1317 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
1318 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
1319
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1320 +++
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1321 ** You can now customize fill-nobreak-predicate to control where
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1322 filling can break lines. We provide two sample predicates,
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1323 fill-single-word-nobreak-p and fill-french-nobreak-p.
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
1324
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1325 +++
40316
ddce8f484e75 New user option `add-log-always-start-new-record'.
Sam Steingold <sds@gnu.org>
parents: 40296
diff changeset
1326 ** 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
1327 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
1328 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
1329
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1330 +++
45977
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
1331 ** SGML mode has indentation and supports XML syntax.
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
1332 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
1333 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
1334 i.e., there is always a closing tag.
45977
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
1335 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
1336 from the file name or buffer contents.
40215
77247104a65e mention html-xhtml
Sam Steingold <sds@gnu.org>
parents: 40190
diff changeset
1337
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1338 +++
48728
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1339 ** `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
1340
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1341 +++
41756
97f872fb595d Describe isearch-resume-enabled.
Kim F. Storm <storm@cua.dk>
parents: 41749
diff changeset
1342 ** New user option `isearch-resume-enabled'.
46989
eeab5bdaffa2 Fix typos.
Richard M. Stallman <rms@gnu.org>
parents: 46962
diff changeset
1343 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
1344 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
1345
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1346 ---
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1347 ** 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
1348
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1349 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1350 ** Perl mode has a new variable `perl-indent-continued-arguments'.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1351
45997
9ee4a7e22180 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 45993
diff changeset
1352 +++
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1353 ** Fortran mode has a new variable `fortran-directive-re'.
45997
9ee4a7e22180 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 45993
diff changeset
1354 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
1355 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
1356
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1357 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1358 ** F90 mode has new navigation commands `f90-end-of-block',
45543
b436ae710691 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 45499
diff changeset
1359 `f90-beginning-of-block', `f90-next-block', `f90-previous-block'.
45499
a35026845779 *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 45495
diff changeset
1360
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1361 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1362 ** 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
1363 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
1364
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1365 +++
39849
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
1366 ** `special-display-buffer-names' and `special-display-regexps' now
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
1367 understand two new boolean pseudo-frame-parameters `same-frame' and
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
1368 `same-window'.
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
1369
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1370 +++
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1371 ** 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
1372 `${foo}' in the specified new value of the environment variable. To
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1373 include a `$' in the value, use `$$'.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1374
39881
9c1b9334eb73 Mark last change as documented in the manual.
Eli Zaretskii <eliz@gnu.org>
parents: 39879
diff changeset
1375 +++
39879
fba70cf81a87 Document the significance of the trailing slash in elements of
Eli Zaretskii <eliz@gnu.org>
parents: 39849
diff changeset
1376 ** 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
1377 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
1378 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
1379 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
1380 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
1381 candidate is a directory.
fba70cf81a87 Document the significance of the trailing slash in elements of
Eli Zaretskii <eliz@gnu.org>
parents: 39849
diff changeset
1382
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1383 +++
46201
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
1384 ** 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
1385 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
1386 it remains unchanged.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1387
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1388 +++
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1389 ** New user option `inhibit-startup-buffer-menu'.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1390 When loading many files, for instance with `emacs *', Emacs normally
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1391 displays a buffer menu. This option turns the buffer menu off.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1392
52089
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1393 ** New user option `compilation-environment'.
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1394 This option allows you to specify environment variables for inferior
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1395 compilation processes without affecting the environment that all
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1396 subprocesses inherit.
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1397
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1398 ---
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1399 ** Rmail now displays 5-digit message ids in its summary buffer.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
1400
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1401 ---
40963
ff6a29bbaf7e Add note about system caret on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 40916
diff changeset
1402 ** 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
1403 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
1404 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
1405
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1406 ---
41482
fe774ae6bd57 Added entry for tooltips on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41471
diff changeset
1407 ** Tooltips now work on MS Windows.
fe774ae6bd57 Added entry for tooltips on MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41471
diff changeset
1408 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
1409
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1410 ---
49566
ca56eac8c658 Updated image support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 49549
diff changeset
1411 ** Images are now supported on MS Windows.
ca56eac8c658 Updated image support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 49549
diff changeset
1412 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
1413 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
1414 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
1415 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
1416 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
1417 against.
44117
48ee57a8b28c Add news of image support on Windows
Jason Rumney <jasonr@gnu.org>
parents: 44087
diff changeset
1418
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1419 ---
48501
41fb6d06759c Added note about sound support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 48060
diff changeset
1420 ** 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
1421 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
1422 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
1423 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
1424 sound support for those formats.
41fb6d06759c Added note about sound support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 48060
diff changeset
1425
41fb6d06759c Added note about sound support on MS Windows
Jason Rumney <jasonr@gnu.org>
parents: 48060
diff changeset
1426 ---
49395
58c9926affeb Add note for mouse pointer support.
Jason Rumney <jasonr@gnu.org>
parents: 49379
diff changeset
1427 ** 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
1428 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
1429
58c9926affeb Add note for mouse pointer support.
Jason Rumney <jasonr@gnu.org>
parents: 49379
diff changeset
1430 ---
42725
7982df5e7d71 Add note about support for more mouse buttons in MS Windows.
Jason Rumney <jasonr@gnu.org>
parents: 42703
diff changeset
1431 ** 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
1432 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
1433 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
1434 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
1435
51506
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1436 ---
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1437 ** 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
1438 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
1439 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
1440 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
1441 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
1442 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
1443 `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
1444 wish to use them in other faces.
eb007228d1de Document new System colors on MS-Windows
Jason Rumney <jasonr@gnu.org>
parents: 51505
diff changeset
1445
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1446 +++
43302
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1447 ** 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
1448 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
1449 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
1450 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
1451 Meta and Alt:
2f479ac769e1 (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 43301
diff changeset
1452 (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
1453 (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
1454
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1455 * 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
1456
52466
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
1457 +++
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
1458 ** The new global minor mode `size-indication-mode' (off by default)
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
1459 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
1460
51374
31bb2083978b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51300
diff changeset
1461 ** 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
1462
41246
003c53bb8906 Mention the French translations of the tutorial and the survival guide.
Eli Zaretskii <eliz@gnu.org>
parents: 41229
diff changeset
1463 ---
49648
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1464 ** 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
1465
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1466 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
1467 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
1468 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
1469 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
1470
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1471 ---
49648
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1472 ** 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
1473
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1474 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
1475 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
1476 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
1477 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
1478 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
1479 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
1480
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1481 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
1482 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
1483 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
1484 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
1485
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1486 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
1487 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
1488 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
1489 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
1490 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
1491 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
1492 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
1493
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1494 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
1495 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
1496 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
1497
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1498 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
1499 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
1500
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1501 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
1502 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
1503 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
1504 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
1505
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1506 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
1507 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
1508 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
1509 `cua-enable-cua-keys' variable.
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1510
49648
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1511 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
1512 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
1513 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
1514 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
1515
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1516 ** 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
1517 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
1518 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
1519 +, -, /, 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
1520 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
1521
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1522 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
1523 `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
1524 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
1525 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
1526 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
1527 the NumLock toggle state (off/on).
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1528
9171c407208a Added more documentation for keypad package.
Kim F. Storm <storm@cua.dk>
parents: 47324
diff changeset
1529 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
1530 `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
1531 `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
1532 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
1533 `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
1534 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
1535 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
1536 `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
1537 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
1538 or local keymaps.
44972
0cdd0e248c05 Describe cua and keypad packages.
Kim F. Storm <storm@cua.dk>
parents: 44957
diff changeset
1539
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1540 ** 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
1541 emacs' keyboard macro facilities.
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
1542
47096
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1543 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
1544 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
1545 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
1546 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
1547
46962
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1548 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
1549 defined macros.
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1550
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1551 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
1552 defines bindings for moving through the keyboard macro ring,
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1553 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
1554 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
1555 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
1556 for more commands.
aeb54264d594 Describe new kmacro features.
Kim F. Storm <storm@cua.dk>
parents: 46959
diff changeset
1557
47085
a881d14145d0 etags now parses HTML.
Francesco Potortì <pot@gnu.org>
parents: 47070
diff changeset
1558 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
1559 the keyboard macro ring.
46124
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
1560
47313
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1561 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
1562 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
1563
f0b41fba2995 Describe new kmacro bindings for f3/f4 and C-x e.
Kim F. Storm <storm@cua.dk>
parents: 47085
diff changeset
1564 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
1565 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
1566 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
1567 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
1568
47313
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1569 Keyboard macros can now be debugged and edited interactively.
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1570 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
1571 at a time, prompting for the actions to take.
52f90db3f174 Keyboard macro improvements.
Kim F. Storm <storm@cua.dk>
parents: 47283
diff changeset
1572
49341
aa7e1948ad31 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 49316
diff changeset
1573 ---
aa7e1948ad31 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 49316
diff changeset
1574 ** 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
1575 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
1576 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
1577 C-c C-i b, and so on.
aa7e1948ad31 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 49316
diff changeset
1578
49648
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1579 ** 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
1580
4dd9a6db81d7 New entry for printing package.
Kim F. Storm <storm@cua.dk>
parents: 49578
diff changeset
1581 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
1582 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
1583 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
1584 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
1585 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
1586 `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
1587
40847
0de09e872237 An entry for Calc.
Eli Zaretskii <eliz@gnu.org>
parents: 40729
diff changeset
1588 +++
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1589 ** Calc is now part of the Emacs distribution.
40847
0de09e872237 An entry for Calc.
Eli Zaretskii <eliz@gnu.org>
parents: 40729
diff changeset
1590
0de09e872237 An entry for Calc.
Eli Zaretskii <eliz@gnu.org>
parents: 40729
diff changeset
1591 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
1592 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
1593 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
1594 available in `etc/calccard.tex' and `etc/calccard.ps'.
40847
0de09e872237 An entry for Calc.
Eli Zaretskii <eliz@gnu.org>
parents: 40729
diff changeset
1595
40889
c410bf71eef7 Mention the addition of the ELisp reference.
Eli Zaretskii <eliz@gnu.org>
parents: 40865
diff changeset
1596 +++
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1597 ** Tramp is now part of the distribution.
45891
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1598
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1599 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
1600 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
1601 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
1602 for filename completion and directory listings and suchlike, but for
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1603 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
1604 `inline' methods (which transfer the files through the shell
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1605 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
1606 (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
1607 `rsync' to do the copying).
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1608
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1609 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
1610 `su' and `sudo'.
e945d29fa2b5 Mention Tramp.
Kai Großjohann <kgrossjo@eu.uu.net>
parents: 45874
diff changeset
1611
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1612 ---
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1613 ** 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
1614 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
1615 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
1616 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
1617 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
1618 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
1619
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1620 ---
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1621 ** 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
1622 "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
1623 change the `fill-column', `window-margins' and `tab-stop-list'
9c1411458564 Add ruler-mode.
Gerd Moellmann <gerd@gnu.org>
parents: 39647
diff changeset
1624 settings.
9c1411458564 Add ruler-mode.
Gerd Moellmann <gerd@gnu.org>
parents: 39647
diff changeset
1625
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1626 ---
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1627 ** 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
1628 move your cursor into hidden regions of the buffer.
41623
8cf1bafe44b1 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41620
diff changeset
1629 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
1630 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
1631
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1632 There is also Global Reveal mode which affects all buffers.
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1633
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1634 ---
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1635 ** The new package ibuffer provides a powerful, completely
44822
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
1636 customizable replacement for buff-menu.el.
0ecfbafcac13 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 44724
diff changeset
1637
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1638 ** The new package table.el implements editable, WYSIWYG, embedded
46936
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
1639 `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
1640 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
1641 table editing available in modern word processors. The package also
731e4a095774 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46878
diff changeset
1642 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
1643 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
1644
48060
26cda8b2f7ea +++/--- bugfix
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48054
diff changeset
1645 +++
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1646 ** 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
1647 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
1648 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
1649 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
1650
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
1651 ---
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
1652 ** 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
1653 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
1654 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
1655 mode-lines in inverse-video.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
1656
48728
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1657 ---
52089
0713c3d48620 Mention `compilation-environment'.
John Paul Wallington <jpw@pobox.com>
parents: 51982
diff changeset
1658 ** 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
1659
49574
e4bf575fd91c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49566
diff changeset
1660 ** New package benchmark.el contains simple support for convenient
e4bf575fd91c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49566
diff changeset
1661 timing measurements of code (including the garbage collection component).
e4bf575fd91c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49566
diff changeset
1662
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1663 ** 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
1664 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
1665 in Indented-Text mode.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1666
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1667 ** If you set `query-replace-skip-read-only' non-nil,
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1668 `query-replace' and related functions simply ignore
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1669 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
1670
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
1671 ** 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
1672
44724
867beadfbb38 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 44718
diff changeset
1673 * Lisp Changes in Emacs 21.4
40729
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
1674
52448
4bdd799997d1 Eldoc change
Dave Love <fx@gnu.org>
parents: 52444
diff changeset
1675 ** Major modes can define `eldoc-print-current-symbol-info-function'
4bdd799997d1 Eldoc change
Dave Love <fx@gnu.org>
parents: 52444
diff changeset
1676 locally to provide Eldoc functionality by some method appropriate to
4bdd799997d1 Eldoc change
Dave Love <fx@gnu.org>
parents: 52444
diff changeset
1677 the language.
4bdd799997d1 Eldoc change
Dave Love <fx@gnu.org>
parents: 52444
diff changeset
1678
52407
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
1679 ** New coding system property `mime-text-unsuitable' indicates that
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
1680 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
1681 parts, e.g. utf-16.
ad9565f86518 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 52401
diff changeset
1682
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1683 +++
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
1684 ** The argument to forward-word, backward-word, forward-to-indentation
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
1685 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
1686
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1687 +++
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1688 ** (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
1689 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
1690 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
1691
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1692 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
1693 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
1694
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
1695 +++
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1696 ** 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
1697 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
1698 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
1699 the mode line.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1700
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1701 +++
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1702 ** 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
1703 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
1704
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1705 +++
51505
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
1706 ** The kill-buffer-hook is now permanent-local.
96facfc71511 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 51374
diff changeset
1707
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1708 +++
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1709 ** `select-window' takes an optional second argument `norecord', like
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1710 `switch-to-buffer'.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1711
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1712 +++
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1713 ** The new macro `with-selected-window' temporarily switches the
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1714 selected window without impacting the order of buffer-list.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1715
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1716 +++
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1717 ** 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
1718 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
1719 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
1720
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1721 +++
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1722 ** (map-keymap FUNCTION KEYMAP) applies the function to each binding
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1723 in the keymap.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1724
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1725 ---
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1726 ** VC changes for backends:
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1727 *** (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
1728 *** The new `find-version' backend function replaces the `destfile'
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1729 parameter of the `checkout' backend function.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1730 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
1731 uses the old `destfile' parameter.
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
1732
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1733 +++
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1734 ** The new macro dynamic-completion-table supports using functions
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1735 as a dynamic completion table.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1736
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1737 (dynamic-completion-table FUN)
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1738
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1739 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
1740 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
1741 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
1742 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
1743 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
1744 entered. dynamic-completion-table then computes the completion.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1745
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1746 +++
51808
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1747 ** The new macro lazy-completion-table initializes a variable
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1748 as a lazy completion table.
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1749
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1750 (lazy-completion-table VAR FUN &rest ARGS)
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1751
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1752 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
1753 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
1754 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
1755 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
1756 from which the minibuffer was entered. The return value of
fb3e76b44f41 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51744
diff changeset
1757 `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
1758
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1759 +++
50607
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
1760 ** `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
1761
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1762 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1763 ** The new function `modify-all-frames-parameters' modifies parameters
50607
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
1764 for all (existing and future) frames.
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
1765
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1766 +++
50607
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
1767 ** `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
1768
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1769 +++
50590
0a31ec45f727 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50553
diff changeset
1770 ** New standard font-lock face `font-lock-preprocessor-face'.
0a31ec45f727 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50553
diff changeset
1771
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
1772 +++
50590
0a31ec45f727 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50553
diff changeset
1773 ** 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
1774
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1775 +++
50543
ae1a0ad24e03 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50509
diff changeset
1776 ** The variable `face-font-rescale-alist' specifies how much larger
ae1a0ad24e03 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50509
diff changeset
1777 (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
1778 '((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
1779 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
1780 SOME-FONTNAME-PATTERN.
ae1a0ad24e03 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 50509
diff changeset
1781
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1782 +++
50474
b473e7c82366 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50312
diff changeset
1783 ** The function `number-sequence' returns a list of equally-separated
b473e7c82366 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50312
diff changeset
1784 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
1785 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
1786 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
1787
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1788 +++
51608
05ddf95bcbff *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 51602
diff changeset
1789 ** `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
1790 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
1791 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
1792 `file-chase-links' returns it anyway.
81ee3475a52d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50474
diff changeset
1793
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1794 ---
49883
4fb79f65681e *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49799
diff changeset
1795 ** `set-fontset-font', `fontset-info', `fontset-font' now operate on
4fb79f65681e *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49799
diff changeset
1796 the default fontset if the argument NAME is nil..
4fb79f65681e *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49799
diff changeset
1797
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1798 +++
50050
32bb98768466 Mention `dcl-font-lock-keywords' and `dcl-font-lock-defaults'.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 49887
diff changeset
1799 ** 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
1800 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
1801 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
1802 In strings, \s is always interpreted as a space.
d0dedef2274e *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 49758
diff changeset
1803
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1804 +++
49668
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1805 ** New function `set-process-filter-multibyte' sets the multibyteness
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1806 of a string given to a process's filter.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1807
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1808 +++
49668
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1809 ** New function `process-filter-multibyte-p' returns t if
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1810 a string given to a process's filter is multibyte.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1811
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1812 +++
49668
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1813 ** 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
1814 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
1815 value of `default-enable-multibyte-characters' when the process is
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1816 created and can be changed later by `set-process-filter-multibyte'.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
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 ** 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
1820 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
1821 to multibyte by `string-to-multibyte' then inserted in the buffer.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1822 Previously, it was converted to multibyte by `string-as-multibyte',
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1823 which was not compatible with the behaviour of file reading.
f118fc83f5a5 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49658
diff changeset
1824
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1825 +++
49657
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1826 ** New function `string-to-multibyte' converts a unibyte string to a
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1827 multibyte string with the same individual character codes.
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1828
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1829 +++
49530
4746ab25c458 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49520
diff changeset
1830 ** New variables `gc-elapsed' and `gcs-done' provide extra information
4746ab25c458 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49520
diff changeset
1831 on garbage collection.
4746ab25c458 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49520
diff changeset
1832
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1833 +++
49657
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1834 ** New function `decode-coding-inserted-region' decodes a region as if
f4b5295c3540 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49648
diff changeset
1835 it is read from a file without decoding.
49378
f2d0a984961b *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 49347
diff changeset
1836
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1837 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1838 ** New function `locale-info' accesses locale information.
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1839
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1840 +++
48953
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1841 ** `save-selected-window' now saves and restores the selected window
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1842 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
1843 by calling `select-window'.
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1844
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1845 ---
48953
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1846 ** `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
1847 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
1848 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
1849 need to have a name.
b6cceff9402d *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48899
diff changeset
1850
48849
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1851 ** Byte compiler changes:
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1852
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1853 ---
48849
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1854 *** `(featurep 'xemacs)' is treated by the compiler as nil. This
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1855 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
1856 Emacs and XEmacs and may sometimes make the result significantly more
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1857 efficient. Since byte code from recent versions of XEmacs won't
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1858 generally run in Emacs and vice versa, this optimization doesn't lose
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1859 you anything.
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1860
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1861 +++
48849
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1862 *** You can avoid warnings for possibly-undefined symbols with a
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1863 simple convention that the compiler understands. (This is mostly
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1864 useful in code meant to be portable to different Emacs versions.)
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1865 Write forms like the following, or code that macroexpands into such
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1866 forms:
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1867
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1868 (if (fboundp 'foo) <then> <else>)
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1869 (if (boundp 'foo) <then> <else)
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1870
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1871 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
1872 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
1873 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
1874 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
1875 macro expansion), but such tests may be nested. Note that `when' and
27e5569d6a32 Compiler changes
Dave Love <fx@gnu.org>
parents: 48770
diff changeset
1876 `unless' expand to `if', but `cond' doesn't.
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
1877
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1878 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1879 *** The new macro `with-no-warnings' suppresses all compiler warnings
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1880 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
1881
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1882 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1883 ** The new translation table `translation-table-for-input'
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1884 is used for customizing self-insertion. The character to
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1885 be inserted is translated through it.
48770
208d298f6d14 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 48736
diff changeset
1886
48728
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1887 +++
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1888 ** `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
1889 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
1890 current file redefined it).
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
1891
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1892 +++
48027
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1893 ** 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
1894 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
1895 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
1896 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
1897 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
1898 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
1899
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1900 *** 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
1901 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
1902 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
1903 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
1904 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
1905
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1906 *** 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
1907 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
1908 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
1909
48060
26cda8b2f7ea +++/--- bugfix
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48054
diff changeset
1910 +++
48027
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1911 ** 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
1912 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
1913 unsafe (calls dangerous function, alters global variable, etc).
ad86b7acaeec Added ses-mode, unsafep, testcover
Jonathan Yavner <jyavner@member.fsf.org>
parents: 48021
diff changeset
1914
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1915 +++
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1916 ** The new variable `print-continuous-numbering', when non-nil, says
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1917 that successive calls to print functions should use the same
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1918 numberings for circular structure references. This is only relevant
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1919 when `print-circle' is non-nil.
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1920
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1921 When you bind `print-continuous-numbering' to t, you should
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1922 also bind `print-number-table' to nil.
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1923
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1924 +++
47433
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1925 ** When using non-toolkit scroll bars with the default width,
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1926 the scroll-bar-width frame parameter value is nil.
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1927
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1928 +++
47433
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1929 ** 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
1930 is a copy of a given abbrev table.
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
1931
47324
fd6bfaf82fa4 Minor change.
Richard M. Stallman <rms@gnu.org>
parents: 47313
diff changeset
1932 +++
47062
632e05bbcb98 Describe --script.
Richard M. Stallman <rms@gnu.org>
parents: 47061
diff changeset
1933 ** 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
1934 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
1935 can start with this line:
47062
632e05bbcb98 Describe --script.
Richard M. Stallman <rms@gnu.org>
parents: 47061
diff changeset
1936
632e05bbcb98 Describe --script.
Richard M. Stallman <rms@gnu.org>
parents: 47061
diff changeset
1937 #!/usr/bin/emacs --script
632e05bbcb98 Describe --script.
Richard M. Stallman <rms@gnu.org>
parents: 47061
diff changeset
1938
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1939 +++
46959
2566b90da6fc *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46936
diff changeset
1940 ** 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
1941 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
1942
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1943 ---
46677
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
1944 ** New CCL functions `lookup-character' and `lookup-integer' access
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
1945 hash tables defined by the Lisp function `define-translation-hash-table'.
86e8d59e2e49 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 46582
diff changeset
1946
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1947 +++
47621
2e93b2eb38c8 Mention minibufferp's optional buffer arg.
John Paul Wallington <jpw@pobox.com>
parents: 47616
diff changeset
1948 ** 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
1949 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
1950 the current buffer.
46878
901426f0ae5f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46787
diff changeset
1951
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
1952 +++
46582
c5989a0d356e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46456
diff changeset
1953 ** There is a new Warnings facility; see the functions `warn'
c5989a0d356e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46456
diff changeset
1954 and `display-warning'.
c5989a0d356e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46456
diff changeset
1955
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1956 +++
46226
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
1957 ** The functions all-completions and try-completion now accept lists
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
1958 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
1959 and functions. Furthermore, the function `test-completion' is now
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
1960 exported to Lisp.
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
1961
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1962 ---
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1963 ** When pure storage overflows while dumping, Emacs now prints how
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1964 much pure storage it will approximately need.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
1965
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1966 +++
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1967 ** The new variable `auto-coding-functions' lets you specify functions
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1968 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
1969 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
1970 file, you can put a `coding:' tags to override it.)
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1971
51982
f3d2ca716f2c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51934
diff changeset
1972 ---
46787
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
1973 ** The new function `merge-coding-systems' fills in unspecified aspects
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
1974 of one coding system from another coding system.
6f3953a83c05 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46775
diff changeset
1975
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
1976 ---
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1977 ** 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
1978 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
1979 specification. Normally Emacs asks for confirmation before evaluating
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1980 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
1981 needed.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1982
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
1983 ---
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1984 ** 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
1985 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
1986 appears in an `eval' local variables specification. If the property
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1987 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
1988 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
1989 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
1990
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1991 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
1992 confirmation as before.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
1993
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
1994 +++
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
1995 ** 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
1996
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
1997 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
1998 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
1999 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
2000 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
2001
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2002 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
2003 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
2004 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
2005 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
2006 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
2007 only the left fringe gets the specified width).
46214
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2008
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2009 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
2010 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
2011 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
2012 fringe bitmaps is 8 pixels.
e89fee6c4aea *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46201
diff changeset
2013
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2014 +++
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2015 ** Per-window fringes settings
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2016
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2017 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
2018 settings.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2019
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2020 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
2021 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
2022 `set-window-fringes'.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2023
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2024 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
2025 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
2026 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
2027 `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
2028
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2029 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
2030 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
2031 `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
2032 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
2033 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
2034
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2035 +++
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2036 ** 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
2037
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2038 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
2039 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
2040
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2041 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
2042 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
2043 `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
2044 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
2045 `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
2046 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
2047 of the display margins.
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2048
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2049 +++
51215
7cb8c4e0b650 New per-window fringe and scroll-bar settings.
Kim F. Storm <storm@cua.dk>
parents: 51182
diff changeset
2050 ** 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
2051 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
2052 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
2053
45979
87962bf716e3 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45977
diff changeset
2054 +++
45977
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2055 ** Renamed file hooks to follow the convention:
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2056 find-file-hooks to find-file-hook,
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2057 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
2058 write-file-hooks to write-file-functions,
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2059 write-contents-hooks to write-contents-functions.
ac1a42ec420b *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 45919
diff changeset
2060 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
2061
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2062 +++
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
2063 ** 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
2064 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
2065 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
2066
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2067 +++
45547
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2068 ** 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
2069 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
2070 new variable `read-file-name-predicate' contains the predicate argument
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2071 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
2072 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
2073
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2074 ---
45547
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2075 ** 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
2076 to override the internal read-file-name function.
a227ea81fd67 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 45543
diff changeset
2077
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2078 +++
45757
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2079 ** 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
2080 `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
2081 will only show directories.
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2082
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2083 +++
46201
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2084 ** 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
2085 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
2086 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
2087
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2088 ---
46201
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2089 ** 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
2090 now issues warnings about these calls, unless the file performs
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2091 (require 'cl) when loaded.
ec2505a6b272 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 46128
diff changeset
2092
52154
2f8d4ec4e546 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52089
diff changeset
2093 +++
44134
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2094 ** The `defmacro' form may contain declarations specifying how to
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2095 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
2096 syntax of defmacro has been extended to
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2097
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2098 (defmacro NAME LAMBDA-LIST [DOC-STRING] [DECLARATION ...] ...)
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2099
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2100 DECLARATION is a list `(declare DECLARATION-SPECIFIER ...)'. The
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2101 declaration specifiers supported are:
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2102
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2103 (indent INDENT)
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2104 Set NAME's `lisp-indent-function' property to INDENT.
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2105
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2106 (edebug DEBUG)
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2107 Set NAME's `edebug-form-spec' property to DEBUG. (This is
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2108 equivalent to writing a `def-edebug-spec' for the macro.
ee7e76098967 Declarations in macros.
Gerd Moellmann <gerd@gnu.org>
parents: 44125
diff changeset
2109
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2110 +++
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2111 ** Interactive commands can be remapped through keymaps.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2112
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2113 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
2114 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
2115 binding and lookup functionality.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2116
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2117 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
2118 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
2119 original command.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2120
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2121 Example:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2122 Suppose that minor mode my-mode has defined the commands
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2123 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
2124 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
2125 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
2126 kill-word.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2127
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2128 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
2129 command remapping allows you to directly map kill-line into
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2130 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
2131 map using define-key:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2132
43503
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2133 (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
2134 (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
2135
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2136 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
2137 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
2138
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2139 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
2140 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
2141 then C-k still runs my-kill-line.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2142
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2143 The following changes have been made to provide command remapping:
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2144
43503
324295ebaf57 Modify description of command remapping which now uses a `remap'
Kim F. Storm <storm@cua.dk>
parents: 43493
diff changeset
2145 - 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
2146 `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
2147 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
2148 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
2149
49758
0f9474583892 Renamed remap-command to command-remapping.
Kim F. Storm <storm@cua.dk>
parents: 49713
diff changeset
2150 - 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
2151 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
2152
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2153 - 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
2154 third argument NO-REMAP is non-nil.
43159
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2155
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2156 - 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
2157 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
2158 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
2159 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
2160 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
2161 <kill-line> for my-kill-line).
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2162
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2163 - The new variable `this-original-command' contains the original
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2164 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
2165 command was not remapped.
c69608fb5b19 Added command remapping.
Kim F. Storm <storm@cua.dk>
parents: 43143
diff changeset
2166
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2167 +++
45223
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2168 ** New variable emulation-mode-map-alists.
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2169
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2170 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
2171 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
2172 alist to this list.
4cb22a508fe3 Added emulation-mode-map-alists.
Kim F. Storm <storm@cua.dk>
parents: 45195
diff changeset
2173
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2174 +++
43139
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2175 ** Atomic change groups.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2176
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2177 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
2178 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
2179 around the code that makes changes. For instance:
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2180
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2181 (atomic-change-group
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2182 (insert foo)
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2183 (delete-region x y))
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2184
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2185 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
2186 `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
2187 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
2188 on any other buffers--any such changes remain.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2189
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2190 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
2191 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
2192
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2193 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
2194 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
2195 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
2196 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
2197
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2198 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
2199 group. Pass the handle to `activate-change-group' afterward to
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2200 do this.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2201
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2202 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
2203 either accept the changes or cancel them all. Call
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2204 `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
2205 call `cancel-change-group' to undo them all.
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 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
2208 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
2209 `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
2210 (This is one reason why `prepare-change-group' and
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2211 `activate-change-group' are separate functions.) Once you finish the
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2212 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
2213 twice.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2214
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2215 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
2216 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
2217 returned values, like this:
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2218
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2219 (nconc (prepare-change-group buffer-1)
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2220 (prepare-change-group buffer-2))
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2221
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2222 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
2223 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
2224 `accept-change-group' or `cancel-change-group'.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2225
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2226 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
2227 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
2228 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
2229 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
2230 finished.
22ff542d67ee *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 43100
diff changeset
2231
45692
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2232 +++
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2233 ** New variable char-property-alias-alist.
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2234
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2235 This variable allows you to create alternative names for text
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2236 properties. It works at the same level as `default-text-properties',
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2237 although it applies to overlays as well. This variable was introduced
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2238 to implement the `font-lock-face' property.
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2239
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2240 +++
45692
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2241 ** New special text property `font-lock-face'.
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2242
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2243 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
2244 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
2245 property. Instead, it is implemented inside font-core.el, using the
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2246 new variable `char-property-alias-alist'.
bac6738f3c27 *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45667
diff changeset
2247
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2248 +++
44680
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
2249 ** New function remove-list-of-text-properties.
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
2250
39c7ce6f26c1 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44666
diff changeset
2251 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
2252 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
2253 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
2254
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2255 +++
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2256 ** New function insert-for-yank.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2257
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2258 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
2259 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
2260 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
2261 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
2262 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
2263
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2264 +++
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2265 ** New function insert-buffer-substring-as-yank.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2266
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2267 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
2268 text properties in the `yank-excluded-properties' list.
44724
867beadfbb38 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 44718
diff changeset
2269
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2270 +++
44724
867beadfbb38 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 44718
diff changeset
2271 ** New function insert-buffer-substring-no-properties.
867beadfbb38 *** empty log message ***
Kim F. Storm <storm@cua.dk>
parents: 44718
diff changeset
2272
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2273 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
2274 text properties from the inserted substring.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2275
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2276 +++
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2277 ** 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
2278 previously killed text on the kill-ring is reinserted.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2279
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2280 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
2281 elements with the following format:
49493
67c5cfa83ddd Remove COMMAND element from yank handler.
Kim F. Storm <storm@cua.dk>
parents: 49458
diff changeset
2282 (FUNCTION PARAM NOEXCLUDE UNDO).
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2283
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2284 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
2285 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
2286 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
2287 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
2288
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2289 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
2290 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
2291 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
2292 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
2293 `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
2294 rectangle.
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2295 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
2296 yank-excluded-properties is not performed; instead FUNCTION is
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2297 responsible for removing those properties. This may be necessary
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2298 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
2299 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
2300 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
2301 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
2302 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
2303
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2304 *** 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
2305 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
2306 the killed text.
49316
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2307
1ace047a072a New yank-handler property.
Kim F. Storm <storm@cua.dk>
parents: 49228
diff changeset
2308 *** 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
2309 `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
2310 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
2311 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
2312 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
2313
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2314 +++
45744
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2315 ** 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
2316 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
2317
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2318 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
2319 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
2320 defined with defface.
75e9d527da2b display-supports-face-attributes-p
Miles Bader <miles@gnu.org>
parents: 45694
diff changeset
2321
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2322 +++
46246
097c4cba0759 Add entries for face-attribute-relative-p, merge-face-attribute.
Miles Bader <miles@gnu.org>
parents: 46226
diff changeset
2323 ** 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
2324 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
2325 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
2326
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2327 +++
46246
097c4cba0759 Add entries for face-attribute-relative-p, merge-face-attribute.
Miles Bader <miles@gnu.org>
parents: 46226
diff changeset
2328 ** 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
2329 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
2330
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2331 +++
49201
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2332 ** Enhancements to process support
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2333
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2334 *** 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
2335 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
2336
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2337 *** 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
2338 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
2339 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
2340
5a6e0cbe25e5 Put "process enhancements" before "network enhancements".
Kim F. Storm <storm@cua.dk>
parents: 49200
diff changeset
2341 *** 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
2342 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
2343
49228
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2344 *** Processes now have an associated property list where programs can
49549
99be3a1e2589 Cygwin support patch.
Juanma Barranquero <lekktu@gmail.com>
parents: 49530
diff changeset
2345 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
2346
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2347 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
2348 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
2349
ac42843384b3 Replace "process private vars" with "process plist".
Kim F. Storm <storm@cua.dk>
parents: 49201
diff changeset
2350 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
2351 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
2352
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2353 +++
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2354 ** Enhanced networking support.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2355
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2356 *** 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
2357 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
2358 create a stream or datagram server inside emacs.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2359
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2360 - 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
2361 - Datagram connection is selected using :type 'datagram arg.
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2362 - 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
2363 - Local sockets are supported using :family 'local arg.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2364 - 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
2365 - 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
2366 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
2367 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
2368
44072
434c70e973e8 Explain how to use featurep with make-network-process.
Kim F. Storm <storm@cua.dk>
parents: 44058
diff changeset
2369 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
2370 (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
2371
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2372 *** 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
2373
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2374 *** New function open-network-stream-nowait.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2375
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2376 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
2377 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
2378 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
2379 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
2380 matching "open" or "failed".
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2381
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2382 *** New function open-network-stream-server.
49135
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2383
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2384 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
2385 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
2386 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
2387 is called for the new process.
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2388
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2389 *** 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
2390
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2391 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
2392 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
2393
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
2394 *** New function format-network-address.
49135
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2395
3752935a65db Add docs for new networking functions.
Kim F. Storm <storm@cua.dk>
parents: 49120
diff changeset
2396 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
2397 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
2398 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
2399 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
2400 string for other formatting options.
48054
b302909e7e67 Document enhanced signal-process functionality.
Kim F. Storm <storm@cua.dk>
parents: 48027
diff changeset
2401
43973
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2402 *** 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
2403 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
2404 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
2405
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2406 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
2407 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
2408 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
2409 the fifth is the port number.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2410
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2411 *** Network processes can now be stopped and restarted with
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2412 `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
2413 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
2414 no input is received in the stopped state.
7e66682c7ec6 Describe enhanced networking support.
Kim F. Storm <storm@cua.dk>
parents: 43947
diff changeset
2415
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2416 +++
45758
d6822e2dafb3 Add copy-tree.
Colin Walters <walters@gnu.org>
parents: 45757
diff changeset
2417 ** New function copy-tree.
d6822e2dafb3 Add copy-tree.
Colin Walters <walters@gnu.org>
parents: 45757
diff changeset
2418
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2419 +++
42940
7c0e12d6edb5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42874
diff changeset
2420 ** New function substring-no-properties.
7c0e12d6edb5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42874
diff changeset
2421
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2422 +++
43626
de43922d0921 Blinking cursor enhancement.
Kim F. Storm <storm@cua.dk>
parents: 43607
diff changeset
2423 ** New function minibuffer-selected-window.
de43922d0921 Blinking cursor enhancement.
Kim F. Storm <storm@cua.dk>
parents: 43607
diff changeset
2424
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2425 +++
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2426 ** New function `call-process-shell-command'.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2427
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2428 ---
44957
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2429 ** The dummy function keys made by easymenu
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2430 are now always lower case. If you specify the
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2431 menu item name "Ada", for instance, it uses `ada'
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2432 as the "key" bound by that key binding.
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2433
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2434 This is relevant only if Lisp code looks for
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2435 the bindings that were made with easymenu.
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2436
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2437 +++
44957
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2438 ** The function `commandp' takes an additional optional
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2439 argument. If it is non-nil, then `commandp' checks
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2440 for a function that could be called with `call-interactively',
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2441 and does not return t for keyboard macros.
15ba9db103f6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44934
diff changeset
2442
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2443 ---
45022
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2444 ** 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
2445 buffer without leaving your current buffer, the master buffer.
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2446
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2447 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
2448 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
2449 buffer containing the output from the SQL buffer containing the
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2450 commands.
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2451
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2452 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
2453 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
2454 SQL buffer.
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2455
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2456 (add-hook 'sql-mode-hook
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2457 (function (lambda ()
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2458 (master-mode t)
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2459 (master-set-slave sql-buffer))))
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2460 (add-hook 'sql-set-sqli-hook
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2461 (function (lambda ()
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2462 (master-set-slave sql-buffer))))
4359b383982c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44996
diff changeset
2463
52478
2a049fb2c8d8 Document char-displayable-p more clearly.
Richard M. Stallman <rms@gnu.org>
parents: 52466
diff changeset
2464 +++
44418
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2465 ** File local variables.
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2466
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2467 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
2468 properties--any specified text properties are discarded.
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2469
42958
2d81f84af342 Document the extended color support for xterm and rxvt, and the
Eli Zaretskii <eliz@gnu.org>
parents: 42940
diff changeset
2470 +++
42820
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2471 ** New function window-body-height.
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2472
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2473 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
2474 or the header line.
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2475
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2476 +++
45757
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2477 ** New function format-mode-line.
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2478
3f48cd2eb90a Added read-directory-name.
Kim F. Storm <storm@cua.dk>
parents: 45744
diff changeset
2479 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
2480 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
2481
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2482 +++
44160
9139b10bc7e6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44134
diff changeset
2483 ** New functions `lax-plist-get' and `lax-plist-put'.
9139b10bc7e6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44134
diff changeset
2484
9139b10bc7e6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44134
diff changeset
2485 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
2486 compare the property name using `equal' rather than `eq'.
9139b10bc7e6 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44134
diff changeset
2487
52214
0a6efed807f5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 52154
diff changeset
2488 +++
44308
ecd559f0d5c3 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44295
diff changeset
2489 ** New function `tool-bar-local-item-from-menu'
ecd559f0d5c3 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44295
diff changeset
2490
48728
ea9832f89c8f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 48645
diff changeset
2491 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
2492 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
2493 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
2494 you specify the map to use as an argument.
ecd559f0d5c3 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44295
diff changeset
2495
42820
6477316b4dd9 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42786
diff changeset
2496 +++
43415
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2497 ** 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
2498
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2499 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
2500 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
2501 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
2502
59c97b8695ee Document the optional second arg of `atan'.
Eli Zaretskii <eliz@gnu.org>
parents: 43390
diff changeset
2503 +++
42867
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2504 ** 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
2505
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2506 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
2507 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
2508 `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
2509 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
2510 variables call for both, only the mode line actually appears.
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2511
68f16b55e041 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42830
diff changeset
2512 +++
42749
62c6ce7088f2 Document the new --color arg and tty-color-mode frame parameter.
Eli Zaretskii <eliz@gnu.org>
parents: 42739
diff changeset
2513 ** 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
2514 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
2515 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
2516 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
2517
44418
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2518 ** Mode line display ignores text properties in the value
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2519 of a variable whose `risky-local-variables' property is nil.
68cfd204d729 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 44356
diff changeset
2520
52466
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
2521 +++
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
2522 ** 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
2523 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
2524 line.
c5caefc395de *** empty log message ***
Lute Kamstra <lute@gnu.org>
parents: 52448
diff changeset
2525
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2526 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2527 ** 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
2528 cl-indent package. The new user options
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2529 `lisp-loop-keyword-indentation', `lisp-loop-forms-indentation', and
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2530 `lisp-simple-loop-indentation' can be used to customize the
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2531 indentation of keywords and forms in loop forms.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2532
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2533 ---
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2534 ** Indentation of backquoted forms has been made customizable in the
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2535 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
2536
42629
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2537 ** 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
2538
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2539 Multibyte buffers can now faithfully record all 256 character codes
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2540 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
2541 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
2542 now:
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2543
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2544 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
2545
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2546 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
2547 the time it takes to convert the format.
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2548
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2549 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
2550 wasteful.
180b3f3a8fb8 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42605
diff changeset
2551
42487
88fb2c8602aa *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42437
diff changeset
2552 ** If text has a `keymap' property, that keymap takes precedence
88fb2c8602aa *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42437
diff changeset
2553 over minor mode keymaps.
88fb2c8602aa *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42437
diff changeset
2554
42425
aa6c345a4af0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42367
diff changeset
2555 ** 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
2556 An octal escape makes it unibyte.
aa6c345a4af0 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42367
diff changeset
2557
50607
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
2558 ** 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
2559 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
2560 image or composition property.
6ee7467b8fd7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 50590
diff changeset
2561
50975
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
2562 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
2563 This is particularly good because the intangible property often has
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
2564 unexpected side-effects since the property applies to everything
bf7c2783b20d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50897
diff changeset
2565 (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
2566 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
2567
44625
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2568 ** 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
2569 considered an acceptable value for point; which one is determined by
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2570 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
2571 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
2572 properties control this.)
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2573
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2574 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
2575 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
2576 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
2577 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
2578 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
2579 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
2580 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
2581 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
2582 moving forwards, to one position later).
44625
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2583
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2584 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
2585 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
2586 on the screen.
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2587
50710
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2588 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
2589 after are unacceptable.
f2e284a34123 Update invisible/intangible handling spec.
Richard M. Stallman <rms@gnu.org>
parents: 50702
diff changeset
2590
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2591 +++
44625
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2592 ** field-beginning and field-end now accept an additional optional
cd1ab4027e5a More updates.
Miles Bader <miles@gnu.org>
parents: 44622
diff changeset
2593 argument, LIMIT.
42367
e79ed5ab7b08 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42342
diff changeset
2594
42437
5426f6a09f35 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42434
diff changeset
2595 +++
42434
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2596 ** define-abbrev now accepts an optional argument SYSTEM-FLAG. If
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2597 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
2598 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
2599 Major modes that predefine some abbrevs should always specify this
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2600 flag.
2c3aa5c554ca *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 42425
diff changeset
2601
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2602 ---
42281
18095fb6473e *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 42216
diff changeset
2603 ** Support for Mocklisp has been removed.
18095fb6473e *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 42216
diff changeset
2604
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2605 ---
42281
18095fb6473e *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 42216
diff changeset
2606 ** The function insert-string is now obsolete.
18095fb6473e *** empty log message ***
Pavel Janík <Pavel@Janik.cz>
parents: 42216
diff changeset
2607
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2608 ---
41596
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2609 ** The precedence of file-name-handlers has been changed.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2610 Instead of blindly choosing the first handler that matches,
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2611 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
2612 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
2613 handler whose (match-beginning 0) is the largest is chosen.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2614 In case of ties, the old "first matched" rule applies.
3c035e37d086 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41594
diff changeset
2615
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2616 ---
41594
452efff38a6e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41501
diff changeset
2617 ** Dense keymaps now handle inheritance correctly.
41847
7423116b7ac3 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41820
diff changeset
2618 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
2619 bindings of the parent keymap.
41594
452efff38a6e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41501
diff changeset
2620
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2621 ---
41337
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2622 ** 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
2623 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
2624 (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
2625 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
2626 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
2627 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
2628
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2629 s{
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2630 foo
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2631 }{
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2632 bar
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2633 }e
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2634
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2635 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
2636 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
2637 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
2638 refontification of `bar' whenever the `e' is added/removed.
3a8e8dd8a64e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41298
diff changeset
2639
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2640 ---
41298
dd0332958888 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41246
diff changeset
2641 ** 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
2642 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
2643
41229
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2644 ** defcustom and other custom declarations now use a default group
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2645 (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
2646
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2647 +++
41229
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2648 ** 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
2649 it receives a request from emacsclient.
70059cb88be4 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41099
diff changeset
2650
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2651 ---
41471
41ef4373121e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41439
diff changeset
2652 ** The variable `recursive-load-depth-limit' has been deleted.
41ef4373121e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41439
diff changeset
2653 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
2654 than 3 levels of nesting.
41ef4373121e *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 41439
diff changeset
2655
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2656 ---
40973
5959d9cfe456 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40963
diff changeset
2657 ** 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
2658 property, `clone-indirect-buffer' signals an error if you use
5959d9cfe456 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40963
diff changeset
2659 it in that buffer.
5959d9cfe456 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40963
diff changeset
2660
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2661 ---
41367
65eb0f7957c8 Fix a typo.
Eli Zaretskii <eliz@gnu.org>
parents: 41356
diff changeset
2662 ** In `replace-match', the replacement text no longer inherits
41356
39332ec6c47d Fix typos.
Eli Zaretskii <eliz@gnu.org>
parents: 41355
diff changeset
2663 properties from surrounding text.
40973
5959d9cfe456 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40963
diff changeset
2664
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2665 +++
40729
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
2666 ** New function `buffer-local-value'.
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
2667
650fb912b343 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40686
diff changeset
2668 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
2669 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
2670 buffer BUFFER, it returns the default value of VARIABLE instead.
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2671
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2672 ---
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2673 ** 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
2674 that are kept identical by transparently propagating changes from one
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2675 clone to the other.
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2676
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2677 +++
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2678 ** font-lock can manage arbitrary text-properties beside `face'.
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2679 *** the FACENAME returned in font-lock-keywords can be a list
43607
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 43602
diff changeset
2680 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
2681 other properties than `face'.
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2682 *** 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
2683 properties are automatically cleaned up by font-lock.
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2684
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2685 ---
43932
435ee4108bad Document removal of special treatment of fg:COLOR and bg:COLOR faces.
Eli Zaretskii <eliz@gnu.org>
parents: 43931
diff changeset
2686 ** 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
2687 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
2688 `defface' facility for defining faces with specific colors, or use
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2689 the feature of specifying the face attributes :foreground and :background
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2690 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
2691
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2692 +++
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2693 ** 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
2694 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
2695 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
2696
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2697 +++
50553
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
2698 ** define-minor-mode now accepts arbitrary additional keyword arguments
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
2699 and simply passes them to defcustom, if applicable.
11c29e283064 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 50544
diff changeset
2700
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2701 +++
47433
eb9a3f38650c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 47415
diff changeset
2702 ** 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
2703 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
2704
46226
d6e8e4f90f8c *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 46214
diff changeset
2705 +++
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2706 ** `provide' and `featurep' now accept an optional second argument
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2707 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
2708 and runs any code associated with the provided feature.
40487
8c17e2ae6bf5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 40378
diff changeset
2709
40190
9ba78bf11cf1 Document changes in file-name-sans-extension and file-name-extension.
Eli Zaretskii <eliz@gnu.org>
parents: 39975
diff changeset
2710 +++
9ba78bf11cf1 Document changes in file-name-sans-extension and file-name-extension.
Eli Zaretskii <eliz@gnu.org>
parents: 39975
diff changeset
2711 ** 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
2712 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
2713 `.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
2714
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2715 +++
39778
939f548d08cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39771
diff changeset
2716 ** 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
2717 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
2718 accepts a float as UID parameter.
939f548d08cd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39771
diff changeset
2719
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2720 ---
39765
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2721 ** `define-key-after' now accepts keys longer than 1.
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2722
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2723 +++
39765
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2724 ** 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
2725
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2726 +++
45993
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2727 ** 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
2728 character position of errors, where possible. Additionally, the form
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2729 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
2730 the output of other GNU tools.
b974df2c611f *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 45979
diff changeset
2731
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2732 +++
39849
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2733 ** New functions `keymap-prompt' and `current-active-maps'.
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2734
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2735 ---
39849
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2736 ** New function `describe-buffer-bindings'.
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2737
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2738 +++
39849
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2739 ** New vars `exec-suffixes' and `load-suffixes' used when
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2740 searching for an executable resp. an elisp file.
10b9480202e8 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39784
diff changeset
2741
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2742 +++
45614
8f47aa4a587a *** empty log message ***
Colin Walters <walters@gnu.org>
parents: 45610
diff changeset
2743 ** Variable aliases have been implemented:
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2744
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2745 *** defvaralias ALIAS-VAR BASE-VAR [DOCSTRING]
46401
0616af8d6d42 Fix reference to `defvaralias' as a macro.
Juanma Barranquero <lekktu@gmail.com>
parents: 46391
diff changeset
2746
0616af8d6d42 Fix reference to `defvaralias' as a macro.
Juanma Barranquero <lekktu@gmail.com>
parents: 46391
diff changeset
2747 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
2748 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
2749 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
2750 changes the value of BASE-VAR.
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2751
46391
5d5a55d8897b Document third argument of defvaralias.
Juanma Barranquero <lekktu@gmail.com>
parents: 46246
diff changeset
2752 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
2753 the same documentation as BASE-VAR.
5d5a55d8897b Document third argument of defvaralias.
Juanma Barranquero <lekktu@gmail.com>
parents: 46246
diff changeset
2754
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2755 *** indirect-variable VARIABLE
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2756
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2757 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
2758 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
2759 defined as an alias, the function returns VARIABLE.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2760
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2761 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
2762 variables, including buffer-local and frame-local variables.
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2763
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2764 +++
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2765 ** 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
2766 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
2767
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2768 +++
39604
3eb5c468047e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39601
diff changeset
2769 ** 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
2770 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
2771
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2772 +++
39647
387ceba6fde4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39605
diff changeset
2773 ** The variables most-positive-fixnum and most-negative-fixnum
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2774 hold the largest and smallest possible integer values.
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2775
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2776 ---
41355
ffd42182dd37 Added note about locale-coding-system on Windows.
Jason Rumney <jasonr@gnu.org>
parents: 41340
diff changeset
2777 ** 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
2778 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
2779 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
2780
51926
402fb9100d33 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 51902
diff changeset
2781 ** 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
2782 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
2783 using the text properties (esp. the face) of the prompt string.
877062848c63 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 43724
diff changeset
2784
39765
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2785 ** New packages:
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2786
51928
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2787 *** 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
2788 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
2789 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
2790 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
2791 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
2792 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
2793 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
2794
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2795 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
2796
39765
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2797 *** 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
2798 current syntactic context (as returned by parse-partial-sexp).
e8c0b3b54fc7 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 39738
diff changeset
2799
46124
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
2800 *** 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
2801 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
2802 data structures.
daab102d5c4f Added ido, kmacro, and bindat packages.
Kim F. Storm <storm@cua.dk>
parents: 46064
diff changeset
2803
41340
00ed4838100e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 41337
diff changeset
2804 *** 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
2805 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
2806
44622
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2807 *** 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
2808 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
2809 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
2810 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
2811 as help and apropos buffers.
a632dc3d85af Add entries for some things I did earlier:
Miles Bader <miles@gnu.org>
parents: 44589
diff changeset
2812
39552
fa9fb33863fe *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39517
diff changeset
2813
51928
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2814 * 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
2815
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2816 ** 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
2817 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
2818
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2819
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2820 * 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
2821
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2822 ** 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
2823 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
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 ** 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
2826 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
2827 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
2828 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
2829 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
2830
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2831 ** 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
2832 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
2833
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2834 ** 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
2835 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
2836 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
2837 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
2838 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
2839 (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
2840 `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
2841 `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
2842 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
2843 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
2844
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2845 ** 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
2846 `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
2847
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2848 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
2849 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
2850 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
2851 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
2852 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
2853
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 * 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
2856
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2857 ** 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
2858
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2859 ** 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
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
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2862 * 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
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 ** 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
2865
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2866 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
2867 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
2868 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
2869 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
2870 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
2871
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2872 ** 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
2873 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
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 ** 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
2876 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
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 ** 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
2879 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
2880 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
2881
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2882 ** 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
2883 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
2884 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
2885 (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
2886 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
2887 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
2888 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
2889
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2890 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
2891 NEWS.
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2892
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 * 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
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 ** 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
2897 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
2898 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
2899
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2900 ** 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
2901 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
2902
c94d493b710a Merge in the changes for versions 21.2 and 21.3 as
Nick Roberts <nickrob@snap.net.nz>
parents: 51926
diff changeset
2903
25995
0c93f1c6603a Note --with-pop change.
Dave Love <fx@gnu.org>
parents: 25992
diff changeset
2904 * Installation Changes in Emacs 21.1
0c93f1c6603a Note --with-pop change.
Dave Love <fx@gnu.org>
parents: 25992
diff changeset
2905
36039
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
2906 See the INSTALL file for information on installing extra libraries and
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
2907 fonts to take advantage of the new graphical features and extra
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
2908 charsets in this release.
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
2909
30576
e53905a0a16b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30568
diff changeset
2910 ** Support for GNU/Linux on IA64 machines has been added.
e53905a0a16b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30568
diff changeset
2911
31007
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
2912 ** Support for LynxOS has been added.
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
2913
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
2914 ** 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
2915 images and toolkit scrollbars. Use the --help option in `configure'
cb2595f03c92 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 29949
diff changeset
2916 to list them.
29696
a5051216d618 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29676
diff changeset
2917
30467
26afdae5ea13 --disable-largefile, 64-bit solaris
Dave Love <fx@gnu.org>
parents: 30445
diff changeset
2918 ** 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
2919 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
2920 maximum buffer size. See etc/MACHINES for instructions. Changes to
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
2921 build on other 64-bit systems should be straightforward modulo any
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
2922 necessary changes to unexec.
30576
e53905a0a16b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30568
diff changeset
2923
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2924 ** 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
2925 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
2926
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2927 ** 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
2928 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
2929
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2930 ** `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
2931 the --without-pop configure option, should that be necessary.
32428
e67d8ebd2b24 windows/mac non-support
Dave Love <fx@gnu.org>
parents: 32314
diff changeset
2932
32865
34e286ed22a5 Say that Emacs can now be built on the Macintosh.
Andrew Choi <akochoi@shaw.ca>
parents: 32845
diff changeset
2933 ** 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
2934 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
2935 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
2936 "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
2937 description of aspects specific to the Mac.
32428
e67d8ebd2b24 windows/mac non-support
Dave Love <fx@gnu.org>
parents: 32314
diff changeset
2938
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2939 ** 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
2940 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
2941
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
2942
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
2943 * Changes in Emacs 21.1
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
2944
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2945 ** Emacs has a new redisplay engine.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2946
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2947 The new redisplay handles characters of variable width and height.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2948 Italic text can be used without redisplay problems. Fonts containing
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2949 oversized characters, i.e. characters larger than the logical height
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2950 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
2951 the text.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2952
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2953 ** Emacs has a new face implementation.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2954
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2955 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
2956 font. Instead, each face has several independent attributes--family,
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2957 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
2958 These attributes can be merged from various faces, and then together
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2959 specify a font.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2960
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2961 Faces are supported on terminals that can display color or fonts.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2962 These terminal capabilities are auto-detected. Details can be found
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2963 under Lisp changes, below.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2964
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2965 ** Emacs can display faces on TTY frames.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2966
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2967 Emacs automatically detects terminals that are able to display colors.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2968 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
2969 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
2970 italic faces are displayed dimmed, if the terminal supports it.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2971 Underlined faces are displayed underlined if possible. Other face
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2972 attributes such as `overline', `strike-through', and `box' are ignored
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2973 on terminals.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2974
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2975 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
2976 supported on character terminals.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2977
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2978 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
2979 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
2980 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
2981 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
2982
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2983 ** New default font is Courier 12pt under X.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2984
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2985 ** Sound support
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2986
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
2987 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
2988 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
2989 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
2990 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
2991 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
2992
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2993 ** Emacs now resizes mini-windows if appropriate.
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 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
2996 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
2997 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
2998 minibuffer window size by setting the following variables:
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
2999
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3000 - User option: max-mini-window-height
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3001
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3002 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
3003 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
3004 specifies a number of lines.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3005
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3006 Default is 0.25.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3007
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3008 - User option: resize-mini-windows
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3009
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3010 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
3011 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
3012 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
3013 again.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3014
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3015 Default is `grow-only'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3016
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3017 ** LessTif support.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3018
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3019 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
3020 <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
3021
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3022 ** LessTif/Motif file selection dialog.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3023
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3024 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
3025 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
3026 non-nil.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3027
39485
5e20b8bbcc45 Document the support for file selection dialog on MS-Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 39441
diff changeset
3028 ** 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
3029
5e20b8bbcc45 Document the support for file selection dialog on MS-Windows.
Eli Zaretskii <eliz@gnu.org>
parents: 39441
diff changeset
3030 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
3031 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
3032 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
3033
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3034 ** Toolkit scroll bars.
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 Emacs now uses toolkit scroll bars if available. When configured for
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3037 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
3038 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
3039 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
3040 bars by specifying `--with-toolkit-scroll-bars=no' when configuring
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3041 Emacs.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3042
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3043 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
3044 Xaw3d is compiled on your system. If the Makefile generated from
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3045 Xaw3d's Imakefile contains a `-DNARROWPROTO' compiler option, and your
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3046 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
3047 define for NARROWPROTO, you might consider adding it. Take
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3048 `s/freebsd.h' as an example.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3049
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3050 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
3051 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
3052 directory `/usr/X11R6/lib/X11/config' (paths are different on
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3053 different systems). You will find files `*.cf' there. If your
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3054 system's cf-file contains a line like `#define NeedWidePrototypes NO',
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3055 add a `#define NARROWPROTO' to your Emacs system configuration file.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3056
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3057 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
3058 `float' function parameters depending on the setting of NARROWPROTO.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3059 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
3060 imake configuration file contains the necessary information. Since
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3061 Emacs doesn't use imake, this has do be done manually.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3062
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3063 ** Tool bar support.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3064
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3065 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
3066 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
3067 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
3068 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
3069 if Emacs has been built with XPM image support. Otherwise monochrome
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3070 icons will be used.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3071
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3072 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
3073 for specific modes (with copyright assignments).
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3074
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3075 ** Tooltips.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3076
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3077 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
3078 mouse position. The Lisp package `tooltip' implements them. You can
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3079 turn them off via the user option `tooltip-mode'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3080
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3081 Tooltips also provides support for GUD debugging. If activated,
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3082 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
3083 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
3084 tooltip display in the group `tooltip'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3085
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3086 ** Automatic Hscrolling
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3087
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3088 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
3089 `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
3090 customized.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3091
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3092 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
3093 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
3094 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
3095 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
3096 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
3097
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3098 ** 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
3099 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
3100 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
3101 `cursor-in-non-selected-windows' controls how to display the
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3102 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
3103 non-nil a hollow box cursor is shown.
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 ** 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
3106 truncation marks, continuation marks, overlay arrows and alike. The
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3107 foreground, background, and stipple of these areas can be changed by
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3108 customizing face `fringe'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3109
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3110 ** 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
3111 You can change its appearance by modifying the face `mode-line'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3112 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
3113 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
3114 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
3115 the window to be partially obscured.)
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3116
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3117 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
3118 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
3119 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
3120 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
3121
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3122 ** Mouse-sensitive mode line.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3123
36848
87bf5cef20c7 Mode line is mouse-sensitive on all systems which have a mouse.
Eli Zaretskii <eliz@gnu.org>
parents: 36821
diff changeset
3124 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
3125 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
3126 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
3127 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
3128 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
3129 have enabled one.
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3130
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3131 Currently, the following actions have been defined:
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3132
40916
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
3133 - 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
3134
4a749a84888c *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40889
diff changeset
3135 - 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
3136
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3137 - 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
3138 `*') toggles the status.
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 - Mouse-3 on the mode name displays a minor-mode menu.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3141
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3142 ** Hourglass pointer
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3143
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3144 Emacs can optionally display an hourglass pointer under X. You can
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3145 turn the display on or off by customizing group `cursor'.
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 ** Blinking cursor
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3148
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3149 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
3150 terminals having terminal capabilities `vi', `vs', and `ve'. Blinking
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3151 and related parameters like frequency and delay can be customized in
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3152 the group `cursor'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3153
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3154 ** New font-lock support mode `jit-lock-mode'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3155
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3156 This support mode is roughly equivalent to `lazy-lock' but is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3157 generally faster. It supports stealth and deferred fontification.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3158 See the documentation of the function `jit-lock-mode' for more
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3159 details.
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 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
3162 have to do anything to activate it.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3163
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3164 ** 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
3165
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3166 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
3167 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
3168
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3169 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
3170 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
3171 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
3172 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
3173 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
3174 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
3175 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
3176 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
3177
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3178 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
3179 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
3180 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
3181 `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
3182 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
3183 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
3184
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3185 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
3186 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
3187
36821
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3188 ** The default for user-option `next-line-add-newlines' has been
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3189 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
3190 buffer by default.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3191
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3192 ** 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
3193 current line, respectively. C-<home> and C-<end> move to the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3194 beginning and end of the buffer.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3195
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3196 ** Emacs now checks for recursive loads of Lisp files. If the
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3197 recursion depth exceeds `recursive-load-depth-limit', an error is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3198 signaled.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3199
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3200 ** 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
3201 file, Emacs now pops up the *Messages* buffer.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3202
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3203 ** Emacs now refuses to load compiled Lisp files which weren't
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3204 compiled with Emacs. Set `load-dangerous-libraries' to t to change
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3205 this behavior.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3206
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3207 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
3208 compiler. Files compiled with XEmacs can contain byte codes that let
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3209 Emacs dump core.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3210
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3211 ** Toggle buttons and radio buttons in menus.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3212
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3213 When compiled with LessTif (or Motif) support, Emacs uses toolkit
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3214 widgets for radio and toggle buttons in menus. When configured for
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3215 Lucid, Emacs draws radio buttons and toggle buttons similar to Motif.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3216
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3217 ** The menu bar configuration has changed. The new configuration is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3218 more CUA-compliant. The most significant change is that Options is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3219 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
3220
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3221 ** Item Save Options on the Options menu allows saving options set
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3222 using that menu.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3223
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3224 ** Highlighting of trailing whitespace.
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 When `show-trailing-whitespace' is non-nil, Emacs displays trailing
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3227 whitespace in the face `trailing-whitespace'. Trailing whitespace is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3228 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
3229 highlighting when entering new text, trailing whitespace is not
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3230 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
3231 whitespace.
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 ** 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
3234 all frames except the selected one.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3235
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3236 ** The new user-option `confirm-kill-emacs' can be customized to
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3237 let Emacs ask for confirmation before exiting.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3238
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3239 ** 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
3240 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
3241 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
3242 This behavior may be disabled by customizing the option
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3243 `Info-use-header-line'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3244
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3245 ** Polish, Czech, German, and French translations of Emacs' reference card
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3246 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
3247 `de-refcard.tex' and `fr-refcard.tex'. Postscript files are included.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3248
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3249 ** An `Emacs Survival Guide', etc/survival.tex, is available.
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 ** A reference card for Dired has been added. Its name is
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3252 `dired-ref.tex'. A French translation is available in
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3253 `fr-drdref.tex'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3254
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3255 ** 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
3256 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
3257 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
3258 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
3259
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3260 ** 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
3261
38107
Sam Steingold <sds@gnu.org>
parents: 38102
diff changeset
3262 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
3263 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
3264 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
3265 `~/.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
3266
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3267 ** C-u C-x = provides detailed information about the character at
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3268 point in a pop-up window.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3269
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3270 ** Emacs can now support 'wheeled' mice (such as the MS IntelliMouse)
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3271 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
3272 customize the variable `mouse-wheel-mode'.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3273
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3274 The variables `mouse-wheel-follow-mouse' and `mouse-wheel-scroll-amount'
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3275 determine where and by how much buffers are scrolled.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3276
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3277 ** 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
3278 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
3279 (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
3280 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
3281
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3282 ** The function `getenv' is now callable interactively.
3caf523e6afd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36811
diff changeset
3283
34271
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
3284 ** 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
3285 to prevent `display-buffer' from evening out window heights.
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
3286
33796
10ffa5b56f53 mention `delete-trailing-whitespace'
Sam Steingold <sds@gnu.org>
parents: 33720
diff changeset
3287 ** 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
3288 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
3289 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
3290
33559
c6a08bfab7fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33541
diff changeset
3291 ** 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
3292 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
3293 non-nil.
33559
c6a08bfab7fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33541
diff changeset
3294
31728
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
3295 ** 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
3296 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
3297 file that is already visited under a different name.
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
3298
31807
db5ea3d2a1b4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31742
diff changeset
3299 ** 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
3300 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
3301
31728
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
3302 ** 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
3303 and displays information about that.
31248
87ff760a4902 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 31231
diff changeset
3304
30693
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3305 ** The new variable `auto-mode-interpreter-regexp' contains a regular
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3306 expression matching interpreters, for file mode determination.
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3307
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3308 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
3309 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
3310 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
3311 interpreted by the interpreter matched by the second group of the
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3312 regular expression. The mode is then determined as the mode
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3313 associated with that interpreter in `interpreter-mode-alist'.
fc3acf3f8131 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30650
diff changeset
3314
29532
9609bc6529ac executable-make-buffer-file-executable-if-script-p
Dave Love <fx@gnu.org>
parents: 29509
diff changeset
3315 ** 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
3316 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
3317
29509
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3318 ** 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
3319 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
3320 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
3321 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
3322 insert a non-ASCII character from your current language environment,
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3323 the file will be saved silently with the appropriate coding.
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3324 Previously you would be prompted for a safe coding system.
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
3325
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3326 ** 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
3327 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
3328
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3329 ** 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
3330 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
3331
30296
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3332 ** New variable `inhibit-iso-escape-detection' determines if Emacs'
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3333 coding system detection algorithm should pay attention to ISO2022's
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3334 escape sequences. If this variable is non-nil, the algorithm ignores
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3335 such escape sequences. The default value is nil, and it is
8454f2730931 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30290
diff changeset
3336 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
3337 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
3338 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
3339 (`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
3340 RET C-x C-f filename RET.
30205
e596e66d3044 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30203
diff changeset
3341
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3342 ** Variable `default-korean-keyboard' is initialized properly from the
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3343 environment variable `HANGUL_KEYBOARD_TYPE'.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3344
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3345 ** 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
3346 displays all characters in that character set.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3347
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3348 ** 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
3349 coding systems such as cpXXX and cyrillic-koi8.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
3350
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3351 ** 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
3352 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
3353 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
3354
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3355 ** 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
3356 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
3357 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
3358 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
3359 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
3360 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
3361 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
3362
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3363 ** 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
3364 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
3365 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
3366
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3367 ** 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
3368 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
3369 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
3370
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3371 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
3372 --- ------- -----------
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3373 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
3374 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
3375 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
3376
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3377 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
3378 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
3379 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
3380
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3381 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
3382 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
3383 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
3384 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
3385 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
3386 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
3387
39885
91b2bb6856b0 List the new input methods introduced with Emacs 21.1.
Eli Zaretskii <eliz@gnu.org>
parents: 39881
diff changeset
3388 ** 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
3389 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
3390 "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
3391 package.
91b2bb6856b0 List the new input methods introduced with Emacs 21.1.
Eli Zaretskii <eliz@gnu.org>
parents: 39881
diff changeset
3392
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3393 ** 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
3394 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
3395 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
3396 "=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
3397 "`", 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
3398
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3399 ** 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
3400 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
3401 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
3402 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
3403 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
3404 on.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3405
29218
e956cc90f6c0 newcomment and the change of binding for M-;
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 29162
diff changeset
3406 ** 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
3407 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
3408 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
3409 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
3410
28799
94a120630e7d display-time stuff
Dave Love <fx@gnu.org>
parents: 28789
diff changeset
3411 ** New user options `display-time-mail-face' and
94a120630e7d display-time stuff
Dave Love <fx@gnu.org>
parents: 28789
diff changeset
3412 `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
3413 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
3414 indicator can be an icon and is mouse-sensitive.
94a120630e7d display-time stuff
Dave Love <fx@gnu.org>
parents: 28789
diff changeset
3415
28695
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3416 ** On window-systems, additional space can be put between text lines
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3417 on the display using several methods
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3418
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3419 - By setting frame parameter `line-spacing' to PIXELS. PIXELS must be
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3420 a positive integer, and specifies that PIXELS number of pixels should
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3421 be put below text lines on the affected frame or frames.
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3422
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3423 - By setting X resource `lineSpacing', class `LineSpacing'. This is
33838
415baa3f1914 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 33796
diff changeset
3424 equivalent to specifying the frame parameter.
28695
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3425
28870
b3629cc23098 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28855
diff changeset
3426 - 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
3427
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3428 - By setting buffer-local variable `line-spacing'. The meaning is
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3429 the same, but applies to the a particular buffer only.
3930c7410fd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28677
diff changeset
3430
29752
76ef59b86226 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 29696
diff changeset
3431 ** 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
3432 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
3433 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
3434 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
3435
28525
05658544eaff backup-directory-alist, make-backup-file-name-function.
Dave Love <fx@gnu.org>
parents: 28506
diff changeset
3436 ** New user options `backup-directory-alist' and
28757
2fb6dbfe29f6 concat change
Dave Love <fx@gnu.org>
parents: 28751
diff changeset
3437 `make-backup-file-name-function' control the placement of backups,
2fb6dbfe29f6 concat change
Dave Love <fx@gnu.org>
parents: 28751
diff changeset
3438 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
3439
28396
225ae57ab78e iso-iso2sgml
Dave Love <fx@gnu.org>
parents: 28335
diff changeset
3440 ** New commands iso-iso2sgml and iso-sgml2iso convert between Latin-1
225ae57ab78e iso-iso2sgml
Dave Love <fx@gnu.org>
parents: 28335
diff changeset
3441 characters and the corresponding SGML (HTML) entities.
225ae57ab78e iso-iso2sgml
Dave Love <fx@gnu.org>
parents: 28335
diff changeset
3442
28159
20862b49300f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28149
diff changeset
3443 ** New X resources recognized
27994
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3444
28140
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3445 *** The X resource `synchronous', class `Synchronous', specifies
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3446 whether Emacs should run in synchronous mode. Synchronous mode
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3447 is useful for debugging X problems.
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3448
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3449 Example:
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3450
28159
20862b49300f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28149
diff changeset
3451 emacs.synchronous: true
28140
343d3197bdea *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28132
diff changeset
3452
27994
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3453 *** The X resource `visualClass, class `VisualClass', specifies the
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3454 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
3455 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
3456 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
3457 visual class names are
27994
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3458
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3459 TrueColor
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3460 PseudoColor
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3461 DirectColor
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3462 StaticColor
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3463 GrayScale
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3464 StaticGray
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3465
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3466 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
3467 `pseudocolor', `Pseudocolor' and `PseudoColor' all have the same
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3468 meaning.
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3469
27995
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3470 The program `xdpyinfo' can be used to list the visual classes
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3471 supported on your display, and which depths they have. If
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3472 `visualClass' is not specified, Emacs uses the display's default
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3473 visual.
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3474
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3475 Example:
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3476
28159
20862b49300f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28149
diff changeset
3477 emacs.visualClass: TrueColor-8
27994
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3478
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3479 *** The X resource `privateColormap', class `PrivateColormap',
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3480 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
3481 default visual, and that visual is of class PseudoColor. Recognized
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3482 resource values are `true' or `on'.
0ef07a7894e2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27966
diff changeset
3483
27995
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3484 Example:
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3485
28159
20862b49300f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28149
diff changeset
3486 emacs.privateColormap: true
27995
82c488f26a07 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27994
diff changeset
3487
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3488 ** Faces and frame parameters.
Dave Love <fx@gnu.org>
parents:
diff changeset
3489
Dave Love <fx@gnu.org>
parents:
diff changeset
3490 There are four new faces `scroll-bar', `border', `cursor' and `mouse'.
Dave Love <fx@gnu.org>
parents:
diff changeset
3491 Setting the frame parameters `scroll-bar-foreground' and
Dave Love <fx@gnu.org>
parents:
diff changeset
3492 `scroll-bar-background' sets foreground and background color of face
Dave Love <fx@gnu.org>
parents:
diff changeset
3493 `scroll-bar' and vice versa. Setting frame parameter `border-color'
Dave Love <fx@gnu.org>
parents:
diff changeset
3494 sets the background color of face `border' and vice versa. Likewise
Dave Love <fx@gnu.org>
parents:
diff changeset
3495 for frame parameters `cursor-color' and face `cursor', and frame
Dave Love <fx@gnu.org>
parents:
diff changeset
3496 parameter `mouse-color' and face `mouse'.
Dave Love <fx@gnu.org>
parents:
diff changeset
3497
Dave Love <fx@gnu.org>
parents:
diff changeset
3498 Changing frame parameter `font' sets font-related attributes of the
Dave Love <fx@gnu.org>
parents:
diff changeset
3499 `default' face and vice versa. Setting frame parameters
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
3500 `foreground-color' or `background-color' sets the colors of the
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3501 `default' face and vice versa.
Dave Love <fx@gnu.org>
parents:
diff changeset
3502
25951
b3f0ced6423b Add entry for face `menu'.
Gerd Moellmann <gerd@gnu.org>
parents: 25949
diff changeset
3503 ** New face `menu'.
b3f0ced6423b Add entry for face `menu'.
Gerd Moellmann <gerd@gnu.org>
parents: 25949
diff changeset
3504
b3f0ced6423b Add entry for face `menu'.
Gerd Moellmann <gerd@gnu.org>
parents: 25949
diff changeset
3505 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
3506
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3507 ** New frame parameter `screen-gamma' for gamma correction.
Dave Love <fx@gnu.org>
parents:
diff changeset
3508
Dave Love <fx@gnu.org>
parents:
diff changeset
3509 The new frame parameter `screen-gamma' specifies gamma-correction for
Dave Love <fx@gnu.org>
parents:
diff changeset
3510 colors. Its value may be nil, the default, in which case no gamma
Dave Love <fx@gnu.org>
parents:
diff changeset
3511 correction occurs, or a number > 0, usually a float, that specifies
Dave Love <fx@gnu.org>
parents:
diff changeset
3512 the screen gamma of a frame's display.
Dave Love <fx@gnu.org>
parents:
diff changeset
3513
Dave Love <fx@gnu.org>
parents:
diff changeset
3514 PC monitors usually have a screen gamma of 2.2. smaller values result
Dave Love <fx@gnu.org>
parents:
diff changeset
3515 in darker colors. You might want to try a screen gamma of 1.5 for LCD
Dave Love <fx@gnu.org>
parents:
diff changeset
3516 color displays. The viewing gamma Emacs uses is 0.4545. (1/2.2).
Dave Love <fx@gnu.org>
parents:
diff changeset
3517
Dave Love <fx@gnu.org>
parents:
diff changeset
3518 The X resource name of this parameter is `screenGamma', class
Dave Love <fx@gnu.org>
parents:
diff changeset
3519 `ScreenGamma'.
Dave Love <fx@gnu.org>
parents:
diff changeset
3520
Dave Love <fx@gnu.org>
parents:
diff changeset
3521 ** Tabs and variable-width text.
Dave Love <fx@gnu.org>
parents:
diff changeset
3522
Dave Love <fx@gnu.org>
parents:
diff changeset
3523 Tabs are now displayed with stretch properties; the width of a tab is
Dave Love <fx@gnu.org>
parents:
diff changeset
3524 defined as a multiple of the normal character width of a frame, and is
Dave Love <fx@gnu.org>
parents:
diff changeset
3525 independent of the fonts used in the text where the tab appears.
Dave Love <fx@gnu.org>
parents:
diff changeset
3526 Thus, tabs can be used to line up text in different fonts.
Dave Love <fx@gnu.org>
parents:
diff changeset
3527
Dave Love <fx@gnu.org>
parents:
diff changeset
3528 ** Enhancements of the Lucid menu bar
Dave Love <fx@gnu.org>
parents:
diff changeset
3529
Dave Love <fx@gnu.org>
parents:
diff changeset
3530 *** The Lucid menu bar now supports the resource "margin".
Dave Love <fx@gnu.org>
parents:
diff changeset
3531
Dave Love <fx@gnu.org>
parents:
diff changeset
3532 emacs.pane.menubar.margin: 5
Dave Love <fx@gnu.org>
parents:
diff changeset
3533
28677
950ff4674e17 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 28660
diff changeset
3534 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
3535 LessTif/Motif one.
950ff4674e17 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 28660
diff changeset
3536
950ff4674e17 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 28660
diff changeset
3537 *** 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
3538 LessTif and Motif.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3539
Dave Love <fx@gnu.org>
parents:
diff changeset
3540 ** A block cursor can be drawn as wide as the glyph under it under X.
Dave Love <fx@gnu.org>
parents:
diff changeset
3541
Dave Love <fx@gnu.org>
parents:
diff changeset
3542 As an example: if a block cursor is over a tab character, it will be
Dave Love <fx@gnu.org>
parents:
diff changeset
3543 drawn as wide as that tab on the display. To do this, set
Dave Love <fx@gnu.org>
parents:
diff changeset
3544 `x-stretch-cursor' to a non-nil value.
Dave Love <fx@gnu.org>
parents:
diff changeset
3545
Dave Love <fx@gnu.org>
parents:
diff changeset
3546 ** 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
3547 bitmap (this is similar to the tilde displayed by vi and Less).
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3548
Dave Love <fx@gnu.org>
parents:
diff changeset
3549 This behavior is activated by setting the buffer-local variable
Dave Love <fx@gnu.org>
parents:
diff changeset
3550 `indicate-empty-lines' to a non-nil value. The default value of this
Dave Love <fx@gnu.org>
parents:
diff changeset
3551 variable is found in `default-indicate-empty-lines'.
Dave Love <fx@gnu.org>
parents:
diff changeset
3552
Dave Love <fx@gnu.org>
parents:
diff changeset
3553 ** There is a new "aggressive" scrolling method.
Dave Love <fx@gnu.org>
parents:
diff changeset
3554
Dave Love <fx@gnu.org>
parents:
diff changeset
3555 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
3556 value of the buffer-local variable `scroll-up-aggressively' is a
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3557 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
3558 fraction of the window's height from the top of the window.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3559
Dave Love <fx@gnu.org>
parents:
diff changeset
3560 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
3561 value of the buffer-local variable `scroll-down-aggressively' is a
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3562 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
3563 fraction of the window's height from the bottom of the window.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3564
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3565 ** 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
3566 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
3567 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
3568 buffers.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3569
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3570 ** 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
3571
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3572 ** 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
3573 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
3574 `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
3575
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3576 ** 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
3577 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
3578 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
3579 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
3580 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
3581 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
3582
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3583 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
3584
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3585 ** The rectangle commands now avoid inserting undesirable spaces,
Dave Love <fx@gnu.org>
parents:
diff changeset
3586 notably at the end of lines.
Dave Love <fx@gnu.org>
parents:
diff changeset
3587
Dave Love <fx@gnu.org>
parents:
diff changeset
3588 All these functions have been rewritten to avoid inserting unwanted
Dave Love <fx@gnu.org>
parents:
diff changeset
3589 spaces, and an optional prefix now allows them to behave the old way.
Dave Love <fx@gnu.org>
parents:
diff changeset
3590
37446
1b121f2746a8 Change entries for string-rectangle and alike.
Gerd Moellmann <gerd@gnu.org>
parents: 37388
diff changeset
3591 ** 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
3592
1b121f2746a8 Change entries for string-rectangle and alike.
Gerd Moellmann <gerd@gnu.org>
parents: 37388
diff changeset
3593 ** 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
3594 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
3595
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3596 ** The new command M-x query-replace-regexp-eval acts like
Dave Love <fx@gnu.org>
parents:
diff changeset
3597 query-replace-regexp, but takes a Lisp expression which is evaluated
Dave Love <fx@gnu.org>
parents:
diff changeset
3598 after each match to get the replacement text.
Dave Love <fx@gnu.org>
parents:
diff changeset
3599
29972
39c1579e89a8 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29962
diff changeset
3600 ** 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
3601 you edit the replacement string.
28805
d77e34df755e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28799
diff changeset
3602
38925
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
3603 ** 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
3604 (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
3605 in the text, analogous to lisp-complete-symbol.
28805
d77e34df755e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28799
diff changeset
3606
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3607 ** 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
3608
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3609 ** 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
3610 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
3611
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3612 ** 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
3613 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
3614 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
3615 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
3616
38925
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
3617 --
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3618 ** 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
3619 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
3620
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3621 ** 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
3622 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
3623 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
3624 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
3625
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3626 ** 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
3627 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
3628
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3629 ** 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
3630 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
3631 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
3632 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
3633 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
3634 of Emacs.
29676
6c84e790448f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29657
diff changeset
3635
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3636 ** Customize changes
Dave Love <fx@gnu.org>
parents:
diff changeset
3637
Dave Love <fx@gnu.org>
parents:
diff changeset
3638 *** Customize now supports comments about customized items. Use the
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
3639 `State' menu to add comments, or give a prefix argument to
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
3640 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
3641 customization comments will cause the customizations to fail in
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
3642 earlier versions of Emacs.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3643
Dave Love <fx@gnu.org>
parents:
diff changeset
3644 *** The new option `custom-buffer-done-function' says whether to kill
Dave Love <fx@gnu.org>
parents:
diff changeset
3645 Custom buffers when you've done with them or just bury them (the
Dave Love <fx@gnu.org>
parents:
diff changeset
3646 default).
Dave Love <fx@gnu.org>
parents:
diff changeset
3647
37901
9447d0447996 Document that customizations from "emacs -q" cannot be saved.
Eli Zaretskii <eliz@gnu.org>
parents: 37805
diff changeset
3648 *** 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
3649 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
3650 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
3651 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
3652 file.
9447d0447996 Document that customizations from "emacs -q" cannot be saved.
Eli Zaretskii <eliz@gnu.org>
parents: 37805
diff changeset
3653
43061
357ce0fca815 Document the new behavior of novice.el under "emacs -q".
Eli Zaretskii <eliz@gnu.org>
parents: 43045
diff changeset
3654 ** 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
3655 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
3656 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
3657 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
3658
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3659 ** New features in evaluation commands
Dave Love <fx@gnu.org>
parents:
diff changeset
3660
30056
2381ee2fec5b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30038
diff changeset
3661 *** The commands to evaluate Lisp expressions, such as C-M-x in Lisp
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3662 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
3663 print-level, print-length, and debug-on-error based on the new
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
3664 customizable variables eval-expression-print-level,
Dave Love <fx@gnu.org>
parents:
diff changeset
3665 eval-expression-print-length, and eval-expression-debug-on-error.
Dave Love <fx@gnu.org>
parents:
diff changeset
3666
38562
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3667 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
3668 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
3669 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
3670 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
3671 printed).
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3672
38590
7c2e49c3cf0a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38573
diff changeset
3673 <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
3674 printed representation and an unabbreviated one.
38573
37d0e44d564c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38562
diff changeset
3675
38562
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3676 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
3677 during evaluation produces a backtrace.
5a192d819ce2 Mention the effect of eval-expression-print-length and
Eli Zaretskii <eliz@gnu.org>
parents: 38527
diff changeset
3678
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
3679 *** 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
3680 code when called with a prefix argument.
2381ee2fec5b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30038
diff changeset
3681
26820
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3682 ** CC mode changes.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3683
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3684 Note: This release contains changes that might not be compatible with
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3685 current user setups (although it's believed that these
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3686 incompatibilities will only show in very uncommon circumstances).
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3687 However, since the impact is uncertain, these changes may be rolled
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3688 back depending on user feedback. Therefore there's no forward
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3689 compatibility guarantee wrt the new features introduced in this
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3690 release.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3691
37009
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3692 *** The hardcoded switch to "java" style in Java mode is gone.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3693 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
3694 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
3695 confusion.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3696
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3697 However, to keep backward compatibility to a certain extent, the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3698 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
3699 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
3700 notice the change if you haven't touched that variable.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3701
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3702 *** New cleanups, space-before-funcall and compact-empty-funcall.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3703 Two new cleanups have been added to c-cleanup-list:
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3704
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3705 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
3706 parenthesis of a function call, which gives the style "foo (bar)".
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3707
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3708 compact-empty-funcall causes any space before a function call opening
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3709 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
3710 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
3711 style "foo (bar)" and "foo()".
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3712
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3713 *** Some keywords now automatically trigger reindentation.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3714 Keywords like "else", "while", "catch" and "finally" have been made
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3715 "electric" to make them reindent automatically when they continue an
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3716 earlier statement. An example:
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3717
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3718 for (i = 0; i < 17; i++)
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3719 if (a[i])
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3720 res += a[i]->offset;
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3721 else
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3722
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3723 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
3724 continues that statement. CC Mode will automatically reindent it after
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3725 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
3726 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
3727 the preceding "if".
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3728
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3729 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
3730 by default.
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 *** 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
3733 Previously these two keys only moved by sentence in comments, which
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3734 meant that sentence movement didn't work in strings containing
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3735 documentation or other natural language text.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3736
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3737 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
3738 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
3739 the short strings that often reside inside statements. Multiline
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3740 strings almost always contain text in a natural language, as opposed
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3741 to other strings that typically contain format specifications,
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3742 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
3743 sentences in single line strings, since they're short anyway.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3744
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3745 *** Support for autodoc comments in Pike mode.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3746 Autodoc comments for Pike are used to extract documentation from the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3747 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
3748 comment prefixes and paragraph starts.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3749
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3750 *** 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
3751 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
3752 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
3753 change came about to support the special autodoc comment prefix in
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3754 Pike mode only.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3755
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3756 *** Better handling of syntactic errors.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3757 The recovery after unbalanced parens earlier in the buffer has been
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3758 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
3759 stating the offending line, but still recovers and indent the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3760 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
3761 matching "if" is handled similarly. If an error is discovered while
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3762 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
3763 is reported afterwards.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3764
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3765 *** Lineup functions may now return absolute columns.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3766 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
3767 returning a vector with the desired column as the first element.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3768
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3769 *** More robust and warning-free byte compilation.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3770 Although this is strictly not a user visible change (well, depending
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3771 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
3772 can be compiled in the standard ways without causing trouble. Some
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3773 code have also been moved between the subpackages to enhance the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3774 modularity somewhat. Thanks to Martin Buchholz for doing the
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3775 groundwork.
cceb6b28e250 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36917
diff changeset
3776
30412
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3777 *** c-style-variables-are-local-p now defaults to t.
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3778 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
3779 of the style system wrt global variable settings less confusing for
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3780 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
3781 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
3782 have to bother.
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3783
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3784 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
3785 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
3786 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
3787 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
3788 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
3789 by default) to override the global settings made by the user.
527532050288 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30372
diff changeset
3790
26820
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3791 *** New initialization procedure for the style system.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3792 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
3793 variable c-default-style), the global values of style variables now
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3794 take precedence over the values specified by the chosen style. This
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3795 is different than the old behavior: previously, the style-specific
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3796 settings would override the global settings. This change makes it
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3797 possible to do simple configuration in the intuitive way with
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3798 Customize or with setq lines in one's .emacs file.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3799
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3800 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
3801 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
3802 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
3803 of a style variable will cause the "overriding" behavior described
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3804 above.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3805
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3806 Also note that global settings override style-specific settings *only*
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3807 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
3808 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
3809 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
3810 then the style-specific values take precedence over any global style
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3811 values. In Lisp terms, global values override style-specific values
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3812 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
3813 function documentation for more info.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3814
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3815 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
3816 especially novice users, to do simple customizations with Customize or
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3817 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
3818 intended to be compatible with advanced users' customizations as well,
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3819 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
3820 is believed to be almost entirely compatible with current
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3821 configurations, in spite of the changed precedence between style and
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3822 global variable settings when a buffer's default style is set.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3823
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3824 (Thanks to Eric Eide for clarifying this explanation a bit.)
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3825
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3826 **** c-offsets-alist is now a customizable variable.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3827 This became possible as a result of the new initialization behavior.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3828
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3829 This variable is treated slightly differently from the other style
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3830 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
3831 completed with the syntactic symbols it doesn't already contain when
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3832 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
3833 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
3834 style system.
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 **** Compatibility variable to restore the old behavior.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3837 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
3838 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
3839 as far as possible.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3840
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3841 *** Improvements to line breaking and text filling.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3842 CC Mode now handles this more intelligently and seamlessly wrt the
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3843 surrounding code, especially inside comments. For details see the new
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3844 chapter about this in the manual.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3845
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3846 **** New variable to recognize comment line prefix decorations.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3847 The variable c-comment-prefix-regexp has been added to properly
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3848 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
3849 primarily used to initialize the various paragraph recognition and
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3850 adaptive filling variables that the text handling functions uses.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3851
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3852 **** New variable c-block-comment-prefix.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3853 This is a generalization of the now obsolete variable
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3854 c-comment-continuation-stars to handle arbitrary strings.
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 **** CC Mode now uses adaptive fill mode.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3857 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
3858
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3859 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
3860 Mode, notably Kyle E. Jones' Filladapt mode (http://wonderworks.com/).
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3861 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
3862 inside CC Mode.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3863
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3864 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
3865 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
3866 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
3867 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
3868 cc-mode/).
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3869
38894
681dc47ffb61 Document the removal of c-hanging-comment-starter-p and
Eli Zaretskii <eliz@gnu.org>
parents: 38832
diff changeset
3870 **** 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
3871 `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
3872 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
3873 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
3874 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
3875
26820
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3876 **** It's now possible to selectively turn off auto filling.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3877 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
3878 specific contexts, e.g. in preprocessor directives and in string
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3879 literals.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3880
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3881 **** New context sensitive line break function c-context-line-break.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3882 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
3883 prefix according to the comment style when used inside comments. If
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3884 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
3885 this function.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3886
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3887 *** Fixes to IDL mode.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3888 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
3889 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
3890 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
3891 Thanks to Eric Eide.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3892
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3893 *** Improvements to the Whitesmith style.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3894 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
3895 opening braces hangs and when they don't.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3896
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3897 **** New lineup function c-lineup-whitesmith-in-block.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3898
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3899 *** 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
3900 See their docstrings for details. c-lineup-template-args does a
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3901 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
3902 and is used by default to line up continued template arguments.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3903
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3904 *** c-lineup-comment now preserves alignment with a comment on the
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3905 previous line. It used to instead preserve comments that started in
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3906 the column specified by comment-column.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3907
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3908 *** c-lineup-C-comments handles "free form" text comments.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3909 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
3910 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
3911 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
3912 contain documentation with its own formatting. In these you normally
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3913 don't want CC Mode to change the indentation.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3914
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3915 *** The `c' syntactic symbol is now relative to the comment start
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3916 instead of the previous line, to make integers usable as lineup
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3917 arguments.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3918
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3919 *** All lineup functions have gotten docstrings.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3920
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3921 *** More preprocessor directive movement functions.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3922 c-down-conditional does the reverse of c-up-conditional.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3923 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
3924 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
3925 Provan).
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 *** Minor improvements to many movement functions in tricky situations.
b7d914dd51a6 cc-mode changes.
Gerd Moellmann <gerd@gnu.org>
parents: 26786
diff changeset
3928
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3929 ** Dired changes
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3930
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3931 *** 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
3932 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
3933 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
3934
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3935 *** 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
3936 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
3937 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
3938
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3939 *** 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
3940 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
3941 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
3942
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3943 *** 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
3944 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
3945 directory.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3946
38989
6dcbf4154ff0 Change key for dired-show-file-type to `y'.
Gerd Moellmann <gerd@gnu.org>
parents: 38938
diff changeset
3947 *** 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
3948 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
3949 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
3950 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
3951 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
3952
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3953 *** 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
3954 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
3955
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3956 *** 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
3957 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
3958 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
3959 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
3960
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3961 ** Gnus changes.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3962
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3963 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
3964 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
3965 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
3966
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3967 *** 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
3968 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
3969
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3970 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
3971
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3972 (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
3973 (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
3974 (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
3975 (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
3976
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3977 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
3978
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3979 (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
3980 '((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
3981 :suffix ".in")))
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 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
3984 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
3985
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3986 *** 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
3987 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
3988 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
3989 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
3990
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3991 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
3992 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
3993 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
3994
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
3995 *** 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
3996 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
3997 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
3998 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
3999
38925
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
4000 *** 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
4001 Gnus facilities.
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
4002
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4003 *** 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
4004 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
4005
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4006 *** 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
4007 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
4008
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4009 *** `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
4010 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
4011
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4012 *** 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
4013 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
4014
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4015 *** 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
4016 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
4017 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
4018
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4019 *** 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
4020
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4021 *** 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
4022
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4023 ** 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
4024
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4025 *** 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
4026 macros
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4027
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4028 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
4029 -------------------------
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4030 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
4031 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
4032 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
4033 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
4034 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
4035 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
4036 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
4037
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4038 *** 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
4039
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4040 ** 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
4041
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4042 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
4043 `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
4044 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
4045
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4046 ** 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
4047
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4048 *** 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
4049 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
4050 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
4051 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
4052 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
4053
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4054 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
4055 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
4056 this way.
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 ** 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
4059 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
4060
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4061 ** 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
4062
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4063 *** 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
4064 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
4065 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
4066
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4067 ** 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
4068 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
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 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
4071
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4072 *** 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
4073
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4074 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
4075 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
4076 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
4077 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
4078
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4079 *** 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
4080 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
4081 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
4082 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
4083
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4084 *** 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
4085 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
4086 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
4087
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4088 *** 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
4089
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4090 *** 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
4091 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
4092 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
4093 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
4094
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4095 *** 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
4096 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
4097
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4098 ** 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
4099
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4100 *** 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
4101 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
4102 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
4103
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4104 **** 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
4105 current buffer.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4106
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4107 *** 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
4108 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
4109
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4110 *** 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
4111 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
4112 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
4113 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
4114 `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
4115 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
4116
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4117 *** 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
4118
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4119 ** 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
4120
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4121 *** 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
4122 `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
4123
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4124 ** 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
4125
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4126 *** 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
4127 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
4128
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4129 *** 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
4130 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
4131
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4132 *** `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
4133 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
4134
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4135 *** 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
4136 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
4137
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4138 ** 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
4139
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4140 *** 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
4141 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
4142 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
4143 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
4144
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4145 ** 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
4146
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4147 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
4148 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
4149
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4150 *** 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
4151 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
4152 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
4153 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
4154 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
4155 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
4156
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4157 *** 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
4158 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
4159 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
4160 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
4161 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
4162 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
4163 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
4164 `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
4165
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4166 *** 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
4167 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
4168
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4169 *** 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
4170 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
4171 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
4172
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4173 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
4174 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
4175 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
4176
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4177 *** 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
4178 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
4179 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
4180
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4181 *** 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
4182 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
4183 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
4184
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4185 *** 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
4186 (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
4187 compatibility.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4188
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4189 *** 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
4190 ring (history).
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4191
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4192 *** 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
4193 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
4194 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
4195
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4196 ** 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
4197
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4198 *** 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
4199 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
4200 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
4201 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
4202 `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
4203 as correspondent.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4204
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4205 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
4206 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
4207 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
4208
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4209 *** 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
4210 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
4211 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
4212 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
4213 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
4214
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4215 *** 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
4216 like `j'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4217
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4218 *** 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
4219 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
4220 digest message.
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 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
4223 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
4224
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4225 *** 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
4226 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
4227 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
4228
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4229 ** 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
4230 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
4231
38925
d5d4948816a7 Label all user-level changes with either +++ or ---.
Eli Zaretskii <eliz@gnu.org>
parents: 38900
diff changeset
4232 ** 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
4233 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
4234
39300
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4235 ** 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
4236 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
4237 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
4238 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
4239 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
4240 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
4241
8b178b9f2ee1 Document that rmail-output-to-rmail-file now writes in emacs-mule.
Eli Zaretskii <eliz@gnu.org>
parents: 39270
diff changeset
4242 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
4243 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
4244 `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
4245
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4246 ** 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
4247
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4248 *** 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
4249 `latex-mode'.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4250
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4251 *** 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
4252
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4253 *** 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
4254
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4255 *** 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
4256
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4257 ** 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
4258
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4259 *** 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
4260 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
4261 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
4262 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
4263 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
4264 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
4265
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4266 *** 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
4267 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
4268 `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
4269
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4270 *** 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
4271 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
4272
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4273 *** 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
4274 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
4275 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
4276 been cited.
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 ** 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
4279 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
4280 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
4281 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
4282
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4283 ** 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
4284 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
4285
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4286 *** 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
4287 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
4288 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
4289 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
4290
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4291 *** 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
4292 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
4293 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
4294 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
4295 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
4296 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
4297
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4298 ** 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
4299 file names.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4300
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4301 ** Ispell changes
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 *** 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
4304 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
4305 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
4306
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4307 *** 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
4308 added.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4309
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4310 *** 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
4311 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
4312
49799
8cdcf1a04744 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49766
diff changeset
4313 *** 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
4314
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4315 *** 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
4316 cases.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4317
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4318 *** 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
4319 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
4320
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4321 *** 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
4322 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
4323
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4324 *** 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
4325
28506
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4326 ** Makefile mode changes
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4327
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4328 *** The mode now uses the abbrev table `makefile-mode-abbrev-table'.
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4329
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
4330 *** Conditionals and include statements are now highlighted when
28506
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4331 Fontlock mode is active.
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4332
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4333 ** Isearch changes
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4334
30477
5996e9860cd2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30467
diff changeset
4335 *** 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
4336 so that searches can be resumed.
5996e9860cd2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30467
diff changeset
4337
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
4338 *** 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
4339 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
4340 that started the search.
3d557619ba03 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28496
diff changeset
4341
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4342 *** In Isearch mode, mouse-2 in the echo area now yanks the current
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4343 selection into the search string rather than giving an error.
Dave Love <fx@gnu.org>
parents:
diff changeset
4344
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4345 *** There is a new lazy highlighting feature in incremental search.
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4346
26417
5678b244c3ac Changes in `list-buffers'.
Gerd Moellmann <gerd@gnu.org>
parents: 26407
diff changeset
4347 Lazy highlighting is switched on/off by customizing variable
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4348 `isearch-lazy-highlight'. When active, all matches for the current
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4349 search string are highlighted. The current match is highlighted as
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4350 before using face `isearch' or `region'. All other matches are
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4351 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
4352 `secondary-selection'.
26407
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4353
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4354 The extra highlighting makes it easier to anticipate where the cursor
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4355 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
4356 Highlighting of these additional matches happens in a deferred fashion
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4357 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
4358 usual snappy response.
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4359
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4360 If `isearch-lazy-highlight-cleanup' is set to t, highlights for
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4361 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
4362 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
4363 isearch-lazy-highlight-cleanup'.
ef48fc763e7f Isearch lazy highlight
Gerd Moellmann <gerd@gnu.org>
parents: 26403
diff changeset
4364
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4365 ** VC Changes
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4366
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4367 VC has been overhauled internally. It is now modular, making it
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4368 easier to plug-in arbitrary version control backends. (See Lisp
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4369 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
4370 to enable and disable support for particular version systems has
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4371 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
4372 `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
4373 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
4374 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
4375 file is registered in that backend.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4376
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4377 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
4378 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
4379 directory of the file (e.g. because a corresponding subdirectory for
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4380 master files exists). If none of the backends is responsible, then
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4381 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
4382 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
4383
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4384 The old variable `vc-master-templates' is also obsolete, although VC
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4385 still supports it for backward compatibility. To define templates for
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4386 RCS or SCCS, you should rather use the new variables
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4387 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
4388 where it doesn't make sense.)
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4389
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4390 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
4391 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
4392 `CVS' from the list, respectively, to achieve their effect now.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4393
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4394 *** General Changes
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4395
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4396 The variable `vc-checkout-carefully' is obsolete: the corresponding
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4397 checks are always done now.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4398
31858
269d69b69fe4 Update hideshow.el section.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 31827
diff changeset
4399 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
4400 operations.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4401
33111
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
4402 `vc-diff' output is now displayed in `diff-mode'.
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
4403 `vc-print-log' uses `log-view-mode'.
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
4404 `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
4405
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4406 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
4407 first revision number. This means that any recent changes on the
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4408 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
4409 the working file (``merge news'').
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4410
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4411 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
4412 (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
4413 downwards.
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4414
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4415 *** Multiple Backends
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4416
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4417 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
4418 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
4419 repository. You can then use RCS for local editing, and occasionally
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4420 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
4421 local RCS archives.
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4422
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4423 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
4424 should come first in `vc-handled-backends', and the ``more remote''
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4425 backend (CVS) should come later. (The default value of
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4426 `vc-handled-backends' already has it that way.)
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4427
36275
44540d398934 Some corrections to the VC news.
André Spiegel <spiegel@gnu.org>
parents: 36259
diff changeset
4428 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
4429 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
4430 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
4431 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
4432 current revision number from the more remote backend.
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4433
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4434 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
4435 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
4436 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
4437 pick up changes from CVS while working under RCS locally.
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4438
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4439 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
4440 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
4441 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
4442 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
4443
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4444 *** Changes for CVS
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4445
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4446 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
4447 default), then VC avoids network queries for files registered in
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4448 remote repositories. The state of such files is then only determined
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4449 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
4450 regexp to match against repository hostnames; only files from hosts
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4451 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
4452 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
4453
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4454 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
4455 repository versions. This means that ordinary diffs (C-x v =) and
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4456 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
4457 any repository interactions at all. The name of a local version
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4458 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
4459 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
4460 (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
4461 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
4462 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
4463 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
4464 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
4465 name.)
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4466
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4467 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
4468 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
4469 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
4470 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
4471 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
4472 entire directory tree.
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4473
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4474 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
4475 "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
4476 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
4477 "watched" by other developers.)
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4478
33541
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4479 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
4480 (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
4481 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
4482 starting at the given directory.
3542a106155f Updated VC news.
André Spiegel <spiegel@gnu.org>
parents: 33499
diff changeset
4483
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4484 *** Lisp Changes in VC
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4485
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4486 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
4487 add support for arbitrary version control backends by writing a
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4488 library that provides a certain set of backend-specific functions, and
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4489 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
4490 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
4491 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
4492 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
4493 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
4494 `SYS' to the list `vc-handled-backends'.
31388
c0199a9a07fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31279
diff changeset
4495
36525
cb77fd8249b6 Change the `***' for the EDT entry to `**'.
Gerd Moellmann <gerd@gnu.org>
parents: 36470
diff changeset
4496 ** The customizable EDT emulation package now supports the EDT
35163
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4497 SUBS command and EDT scroll margins. It also works with more
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4498 terminal/keyboard configurations and it now works under XEmacs.
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4499 See etc/edt-user.doc for more information.
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4500
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4501 ** New modes and packages
Dave Love <fx@gnu.org>
parents:
diff changeset
4502
34394
d6a4dd5cd345 Entry for `minibuffer-electric-default-mode'.
Miles Bader <miles@gnu.org>
parents: 34389
diff changeset
4503 *** 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
4504 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
4505 the default is not applicable.
d6a4dd5cd345 Entry for `minibuffer-electric-default-mode'.
Miles Bader <miles@gnu.org>
parents: 34389
diff changeset
4506
33618
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4507 *** 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
4508 rectangles and ellipses by using your mouse and/or keyboard. The
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4509 shapes are made up with the ascii characters |, -, / and \.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4510
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4511 Features are:
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4512
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4513 - Intersecting: When a `|' intersects with a `-', a `+' is
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4514 drawn, like this: | \ /
33796
10ffa5b56f53 mention `delete-trailing-whitespace'
Sam Steingold <sds@gnu.org>
parents: 33720
diff changeset
4515 --+-- X
33618
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4516 | / \
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4517
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4518 - Rubber-banding: When drawing lines you can interactively see the
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4519 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
4520 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
4521 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
4522 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
4523 you are drawing.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4524
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4525 - Arrows: After having drawn a (straight) line or a (straight)
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4526 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
4527
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4528 - 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
4529 flood-filling.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4530
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4531 - Cut copy and paste: You can cut, copy and paste rectangular
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4532 regions. Artist also interfaces with the rect package (this can be
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4533 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
4534 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
4535
33618
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4536 - 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
4537 also do without the mouse.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4538
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4539 - Aspect-ratio: You can set the variable artist-aspect-ratio to
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4540 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
4541 and circles are then drawn square/round. Note, that once your
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4542 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
4543 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
4544
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4545 - Drawing operations: The following drawing operations are implemented:
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 lines straight-lines
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4548 rectangles squares
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4549 poly-lines straight poly-lines
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4550 ellipses circles
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4551 text (see-thru) text (overwrite)
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4552 spray-can setting size for spraying
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4553 vaporize line vaporize lines
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4554 erase characters erase rectangles
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4555
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4556 Straight lines are lines that go horizontally, vertically or
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4557 diagonally. Plain lines go in any direction. The operations in
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4558 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
4559 drawing.
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 It is possible to vaporize (erase) entire lines and connected lines
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4562 (rectangles for example) as long as the lines being vaporized are
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4563 straight and connected at their endpoints. Vaporizing is inspired
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4564 by the drawrect package by Jari Aalto <jari.aalto@poboxes.com>.
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4565
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4566 - Picture mode compatibility: Artist is picture mode compatible (this
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4567 can be turned off).
beb961476e7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33559
diff changeset
4568
32448
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4569 *** 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
4570 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
4571 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
4572 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
4573 history lists, aliases, extended globbing, smart scrolling, etc. It
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4574 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
4575 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
4576 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
4577 all within the scope of your Emacs process.
4925b241a9ac Added a note about Eshell.
John Wiegley <johnw@newartisans.com>
parents: 32428
diff changeset
4578
30781
59479ef35bf2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30776
diff changeset
4579 *** 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
4580 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
4581 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
4582 on certain projects.
59479ef35bf2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30776
diff changeset
4583
35927
f41b5b91e80d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35923
diff changeset
4584 *** The new package hi-lock.el provides commands to highlight matches
f41b5b91e80d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35923
diff changeset
4585 of interactively entered regexps. For example,
30789
68b63779f4df typo fix
Sam Steingold <sds@gnu.org>
parents: 30788
diff changeset
4586
68b63779f4df typo fix
Sam Steingold <sds@gnu.org>
parents: 30788
diff changeset
4587 M-x highlight-regexp RET clearly RET RET
30565
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4588
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4589 will highlight all occurrences of `clearly' using a yellow background
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4590 face. New occurrences of `clearly' will be highlighted as they are
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4591 typed. `M-x unhighlight-regexp RET' will remove the highlighting.
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4592 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
4593 appropriate faces is provided. The regexps can be written into the
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4594 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
4595 corresponding file is read. There are commands to highlight matches
f41b5b91e80d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35923
diff changeset
4596 to phrases and to highlight entire lines containing a match.
30565
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4597
30789
68b63779f4df typo fix
Sam Steingold <sds@gnu.org>
parents: 30788
diff changeset
4598 *** 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
4599 Emacs is idle.
338238ca63ce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30564
diff changeset
4600
38099
3255cb9d0be2 Mention tildify.el.
Eli Zaretskii <eliz@gnu.org>
parents: 38067
diff changeset
4601 *** 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
4602 fragments in accordance with the current major mode.
3255cb9d0be2 Mention tildify.el.
Eli Zaretskii <eliz@gnu.org>
parents: 38067
diff changeset
4603
30319
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4604 *** The new package xml.el provides a simple but generic XML
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4605 parser. It doesn't parse the DTDs however.
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4606
29218
e956cc90f6c0 newcomment and the change of binding for M-;
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 29162
diff changeset
4607 *** 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
4608 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
4609 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
4610 `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
4611 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
4612
28879
2a918425ca15 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28870
diff changeset
4613 *** The Ebrowse package implements a C++ class browser and tags
2a918425ca15 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28870
diff changeset
4614 facilities tailored for use with C++. It is documented in a
2a918425ca15 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28870
diff changeset
4615 separate Texinfo file.
2a918425ca15 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28870
diff changeset
4616
31007
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
4617 *** 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
4618 by visiting a CVS administrative directory (with a prefix argument)
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
4619 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
4620 `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
4621 enter check-in log messages.
31007
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
4622
28834
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4623 *** The new package called `woman' allows to browse Unix man pages
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4624 without invoking external programs.
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4625
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4626 The command `M-x woman' formats manual pages entirely in Emacs Lisp
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4627 and then displays them, like `M-x manual-entry' does. Unlike
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4628 `manual-entry', `woman' does not invoke any external programs, so it
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4629 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
4630 Groff or `troff' commands are not readily available.
28834
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4631
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4632 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
4633 page, then formats and displays it like `M-x woman' does.
636c8cafb7d4 Mention `woman'.
Eli Zaretskii <eliz@gnu.org>
parents: 28805
diff changeset
4634
28098
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4635 *** 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
4636 authoring regular expressions with immediate visual feedback.
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4637
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4638 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
4639 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
4640 the target buffer is immediately color marked during the editing.
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4641 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
4642 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
4643 single step.
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4644
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4645 On displays not supporting faces the matches instead blink like
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4646 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
4647 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
4648 contains such to get feedback about their respective limits.
2fc1959fa99d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28094
diff changeset
4649
27644
1ac28043dbd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27573
diff changeset
4650 *** glasses-mode is a minor mode that makes
1ac28043dbd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27573
diff changeset
4651 unreadableIdentifiersLikeThis readable. It works as glasses, without
1ac28043dbd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27573
diff changeset
4652 actually modifying content of a buffer.
1ac28043dbd6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27573
diff changeset
4653
27498
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4654 *** The package ebnf2ps translates an EBNF to a syntactic chart in
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4655 PostScript.
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4656
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4657 Currently accepts ad-hoc EBNF, ISO EBNF and Bison/Yacc.
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4658
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4659 The ad-hoc default EBNF syntax has the following elements:
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4660
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4661 ; comment (until end of line)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4662 A non-terminal
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4663 "C" terminal
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4664 ?C? special
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4665 $A default non-terminal
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4666 $"C" default terminal
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4667 $?C? default special
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4668 A = B. production (A is the header and B the body)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4669 C D sequence (C occurs before D)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4670 C | D alternative (C or D occurs)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4671 A - B exception (A excluding B, B without any non-terminal)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4672 n * A repetition (A repeats n (integer) times)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4673 (C) group (expression C is grouped together)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4674 [C] optional (C may or not occurs)
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4675 C+ one or more occurrences of C
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4676 {C}+ one or more occurrences of C
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4677 {C}* zero or more occurrences of C
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4678 {C} zero or more occurrences of C
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4679 C / D equivalent to: C {D C}*
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4680 {C || D}+ equivalent to: C {D C}*
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4681 {C || D}* equivalent to: [C {D C}*]
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4682 {C || D} equivalent to: [C {D C}*]
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4683
960ea40c1a7e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27475
diff changeset
4684 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
4685
27328
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4686 *** 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
4687 align. Its mode-specific rules, based on regular expressions,
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4688 determine where the columns should be split. In C and C++, for
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4689 example, it will align variable names in declaration lists, or the
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4690 equal signs of assignments.
7748234c70d7 align.el
Gerd Moellmann <gerd@gnu.org>
parents: 27307
diff changeset
4691
27266
8ce11c7a7fcb read-mail-command, outline mode changes, change-log-merge,
Dave Love <fx@gnu.org>
parents: 27200
diff changeset
4692 *** `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
4693 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
4694
27016
62cd5f1749cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27005
diff changeset
4695 *** bs.el is a new package for buffer selection similar to
62cd5f1749cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27005
diff changeset
4696 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
4697 buffer menu with this package. See the Custom group `bs'.
27016
62cd5f1749cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27005
diff changeset
4698
29696
a5051216d618 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29676
diff changeset
4699 *** 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
4700
27733
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4701 *** calculator.el is a small calculator package that is intended to
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4702 replace desktop calculators such as xcalc and calc.exe. Actually, it
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4703 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
4704 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
4705 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
4706 which answers different needs.
d6a89b95b32d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27714
diff changeset
4707
26964
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4708 *** 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
4709 suspicious C and C++ constructions. Currently, assignments inside
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4710 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
4711 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
4712 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
4713 to be enabled.
2939daf50656 Font-lock changes by Anders Lindgren.
Gerd Moellmann <gerd@gnu.org>
parents: 26933
diff changeset
4714
27094
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
4715 *** 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
4716 containing diff3-style conflict markers, such as generated by RCS.
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
4717
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4718 *** 5x5.el is a simple puzzle game.
Dave Love <fx@gnu.org>
parents:
diff changeset
4719
38938
0815e13f099e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38925
diff changeset
4720 *** 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
4721 current line in the current buffer. It also provides
46989
eeab5bdaffa2 Fix typos.
Richard M. Stallman <rms@gnu.org>
parents: 46962
diff changeset
4722 `global-hl-line-mode' to provide the same behavior in all buffers.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4723
Dave Love <fx@gnu.org>
parents:
diff changeset
4724 *** ansi-color.el translates ANSI terminal escapes into text-properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
4725
35578
f499794dc393 flyspell
Dave Love <fx@gnu.org>
parents: 35577
diff changeset
4726 Please note: if `ansi-color-for-comint-mode' and
31936
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4727 `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
4728 disable font-lock and add `ansi-color-apply' to
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4729 `comint-preoutput-filter-functions' for all shell-mode buffers. This
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4730 displays the output of "ls --color=yes" using the correct foreground
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4731 and background colors.
3d17044d63a9 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31924
diff changeset
4732
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4733 *** delphi.el provides a major mode for editing the Delphi (Object
Dave Love <fx@gnu.org>
parents:
diff changeset
4734 Pascal) language.
Dave Love <fx@gnu.org>
parents:
diff changeset
4735
Dave Love <fx@gnu.org>
parents:
diff changeset
4736 *** quickurl.el provides a simple method of inserting a URL based on
Dave Love <fx@gnu.org>
parents:
diff changeset
4737 the text at point.
Dave Love <fx@gnu.org>
parents:
diff changeset
4738
Dave Love <fx@gnu.org>
parents:
diff changeset
4739 *** sql.el provides an interface to SQL data bases.
Dave Love <fx@gnu.org>
parents:
diff changeset
4740
25862
62b8ede0e424 Mention fortune.el.
Dave Love <fx@gnu.org>
parents: 25853
diff changeset
4741 *** fortune.el uses the fortune program to create mail/news signatures.
62b8ede0e424 Mention fortune.el.
Dave Love <fx@gnu.org>
parents: 25853
diff changeset
4742
35163
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4743 *** whitespace.el is a package for warning about and cleaning bogus
2aa481613ac4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35162
diff changeset
4744 whitespace in a file.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
4745
25992
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4746 *** 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
4747 files. It offers: interaction with a PostScript interpreter, including
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4748 (very basic) error handling; fontification, easily customizable for
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4749 interpreter messages; auto-indentation; insertion of EPSF templates and
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4750 often used code snippets; viewing of BoundingBox; commenting out /
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4751 uncommenting regions; conversion of 8bit characters to PostScript octal
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4752 codes. All functionality is accessible through a menu.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4753
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4754 *** 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
4755
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4756 Here is an example of columns:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4757
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4758 horse apple bus
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4759 dog pineapple car EXTRA
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4760 porcupine strawberry airplane
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4761
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4762 Doing the following settings:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4763
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4764 (setq delimit-columns-str-before "[ ")
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4765 (setq delimit-columns-str-after " ]")
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4766 (setq delimit-columns-str-separator ", ")
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4767 (setq delimit-columns-separator "\t")
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4768
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4769
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4770 Selecting the lines above and typing:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4771
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4772 M-x delimit-columns-region
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4773
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4774 It results:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4775
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4776 [ horse , apple , bus , ]
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4777 [ dog , pineapple , car , EXTRA ]
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4778 [ porcupine, strawberry, airplane, ]
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4779
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4780 delim-col has the following options:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4781
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4782 delimit-columns-str-before Specify a string to be inserted
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4783 before all columns.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4784
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4785 delimit-columns-str-separator Specify a string to be inserted
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4786 between each column.
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 delimit-columns-str-after Specify a string to be inserted
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4789 after all columns.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4790
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4791 delimit-columns-separator Specify a regexp which separates
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4792 each column.
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 delim-col has the following commands:
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4795
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4796 delimit-columns-region Prettify all columns in a text region.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4797 delimit-columns-rectangle Prettify all columns in a text rectangle.
8f40394739f2 Add sh-script changes.
Gerd Moellmann <gerd@gnu.org>
parents: 25984
diff changeset
4798
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
4799 *** Recentf mode maintains a menu for visiting files that were
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
4800 operated on recently. User option recentf-menu-filter specifies a
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
4801 menu filter function to change the menu appearance. For example, the
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
4802 recent file list can be displayed:
30319
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4803
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4804 - organized by major modes, directories or user defined rules.
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
4805 - sorted by file paths, file names, ascending or descending.
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
4806 - showing paths relative to the current default-directory
30319
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4807
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4808 The `recentf-filter-changer' menu filter function allows to
c84efa0acd91 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30305
diff changeset
4809 dynamically change the menu appearance.
26030
c5e8559a53cb Add description of recentf.
Gerd Moellmann <gerd@gnu.org>
parents: 26016
diff changeset
4810
26149
0a342d5afcc2 elide-head.el
Dave Love <fx@gnu.org>
parents: 26144
diff changeset
4811 *** elide-head.el provides a mechanism for eliding boilerplate header
0a342d5afcc2 elide-head.el
Dave Love <fx@gnu.org>
parents: 26144
diff changeset
4812 text.
0a342d5afcc2 elide-head.el
Dave Love <fx@gnu.org>
parents: 26144
diff changeset
4813
26924
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4814 *** footnote.el provides `footnote-mode', a minor mode supporting use
26786
d30b640777b8 footnote.el
Dave Love <fx@gnu.org>
parents: 26768
diff changeset
4815 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
4816 specific to Message mode.
d30b640777b8 footnote.el
Dave Love <fx@gnu.org>
parents: 26768
diff changeset
4817
26924
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4818 *** diff-mode.el provides `diff-mode', a major mode for
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4819 viewing/editing context diffs (patches). It is selected for files
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4820 with extension `.diff', `.diffs', `.patch' and `.rej'.
5348841810f6 Add diff-mode.
Dave Love <fx@gnu.org>
parents: 26835
diff changeset
4821
27714
22a581e00fe4 Mention some new packages, extra configure options.
Dave Love <fx@gnu.org>
parents: 27693
diff changeset
4822 *** 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
4823 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
4824 protocols. It has a separate manual.
22a581e00fe4 Mention some new packages, extra configure options.
Dave Love <fx@gnu.org>
parents: 27693
diff changeset
4825
28132
2a26c31d59c5 replace-rectangle, autoconf.el
Dave Love <fx@gnu.org>
parents: 28098
diff changeset
4826 *** 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
4827 for Autoconf, selected automatically.
2a26c31d59c5 replace-rectangle, autoconf.el
Dave Love <fx@gnu.org>
parents: 28098
diff changeset
4828
28710
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
4829 *** 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
4830
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
4831 *** 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
4832 minibuffer with completion.
27714
22a581e00fe4 Mention some new packages, extra configure options.
Dave Love <fx@gnu.org>
parents: 27693
diff changeset
4833
28883
e43afc57ee04 todo-mode
Dave Love <fx@gnu.org>
parents: 28879
diff changeset
4834 *** todo-mode.el provides management of TODO lists and integration
e43afc57ee04 todo-mode
Dave Love <fx@gnu.org>
parents: 28879
diff changeset
4835 with the diary features.
e43afc57ee04 todo-mode
Dave Love <fx@gnu.org>
parents: 28879
diff changeset
4836
28912
717c04b51e93 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 28883
diff changeset
4837 *** autoarg.el provides a feature reported from Twenex Emacs whereby
717c04b51e93 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 28883
diff changeset
4838 numeric keys supply prefix args rather than self inserting.
717c04b51e93 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 28883
diff changeset
4839
29814
daf26bf9d779 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29752
diff changeset
4840 *** The function `turn-off-auto-fill' unconditionally turns off Auto
daf26bf9d779 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29752
diff changeset
4841 Fill mode.
daf26bf9d779 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29752
diff changeset
4842
33020
e21feeab77fb See ChangeLog
John Wiegley <johnw@newartisans.com>
parents: 33007
diff changeset
4843 *** pcomplete.el is a library that provides programmable completion
e21feeab77fb See ChangeLog
John Wiegley <johnw@newartisans.com>
parents: 33007
diff changeset
4844 facilities for Emacs, similar to what zsh and tcsh offer. The main
e21feeab77fb See ChangeLog
John Wiegley <johnw@newartisans.com>
parents: 33007
diff changeset
4845 difference is that completion functions are written in Lisp, meaning
e21feeab77fb See ChangeLog
John Wiegley <johnw@newartisans.com>
parents: 33007
diff changeset
4846 they can be profiled, debugged, etc.
32465
355b97042e28 non-ascii character ranges
Dave Love <fx@gnu.org>
parents: 32448
diff changeset
4847
38379
dd827746979d Mention antlr-mode.
Eli Zaretskii <eliz@gnu.org>
parents: 38307
diff changeset
4848 *** 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
4849 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
4850 `.g'.
dd827746979d Mention antlr-mode.
Eli Zaretskii <eliz@gnu.org>
parents: 38307
diff changeset
4851
38900
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4852 ** 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
4853
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4854 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
4855 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
4856 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
4857 numeric base.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4858
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4859 ** 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
4860
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4861 *** 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
4862 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
4863 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
4864
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4865 *** 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
4866 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
4867
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4868 *** 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
4869 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
4870
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4871 ** 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
4872 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
4873
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4874 ** 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
4875 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
4876 `(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
4877
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4878 ** 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
4879 group.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4880
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4881 ** 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
4882 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
4883 are recognized:
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4884
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4885 `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
4886 `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
4887 `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
4888 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
4889
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4890 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
4891
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4892 [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
4893
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4894 ** 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
4895 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
4896
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4897 ** 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
4898 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
4899 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
4900 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
4901
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4902 ** 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
4903 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
4904 `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
4905
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4906 ** `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
4907 `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
4908 `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
4909
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4910 ** 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
4911 `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
4912
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4913 ** 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
4914 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
4915
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4916 ** `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
4917 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
4918
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4919 ** 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
4920 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
4921 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
4922 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
4923 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
4924 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
4925
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4926 ** 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
4927 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
4928
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4929 ** 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
4930
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4931 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
4932 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
4933
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4934 ** 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
4935
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4936 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
4937 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
4938 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
4939
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4940 ** Etags changes.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4941
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4942 *** 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
4943
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4944 *** 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
4945 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
4946 {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
4947 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
4948 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
4949
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4950 *** 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
4951 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
4952
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4953 *** 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
4954 "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
4955
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4956 *** 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
4957 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
4958 `template' keywords.
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4959
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4960 *** 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
4961 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
4962
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4963 *** 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
4964 types.
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 *** 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
4967
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4968 *** 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
4969
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4970 *** 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
4971 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
4972
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4973 *** 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
4974
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4975 *** 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
4976 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
4977
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4978 *** 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
4979
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4980 *** .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
4981 for PSWrap.
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 ** 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
4984
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4985 *** 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
4986 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
4987 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
4988
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4989 *** 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
4990 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
4991
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4992 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
4993 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
4994 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
4995 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
4996
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4997 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
4998
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
4999 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
5000 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
5001
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5002 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
5003
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5004 '(("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
5005 ("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
5006 ("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
5007
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5008 *** 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
5009 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
5010
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5011 *** 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
5012 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
5013
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5014 *** 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
5015 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
5016 /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
5017 "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
5018 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
5019
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5020 *** 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
5021 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
5022 (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
5023
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5024 *** 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
5025 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
5026 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
5027
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5028 ** 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
5029 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
5030 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
5031
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5032 ** 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
5033
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5034 ** 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
5035
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5036 ** 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
5037 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
5038 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
5039
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5040 ** 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
5041 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
5042 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
5043 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
5044
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5045 ** 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
5046
a3e94a8271e0 Reshuffle user-level changes to bring more important ones closer to the
Eli Zaretskii <eliz@gnu.org>
parents: 38894
diff changeset
5047 ** 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
5048 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
5049
33290
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5050 ** Refill minor mode provides preliminary support for keeping
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5051 paragraphs filled as you modify them.
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5052
38605
f99d2e5ee830 Add description of double-click-fuzz.
Gerd Moellmann <gerd@gnu.org>
parents: 38590
diff changeset
5053 ** 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
5054 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
5055 is measured in pixels.
f99d2e5ee830 Add description of double-click-fuzz.
Gerd Moellmann <gerd@gnu.org>
parents: 38590
diff changeset
5056
33290
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5057 ** 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
5058 to be visited as images.
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5059
39270
daf37eb76fde grep-command and grep-find-command user options.
Gerd Moellmann <gerd@gnu.org>
parents: 39255
diff changeset
5060 ** 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
5061 were added to compile.el.
daf37eb76fde grep-command and grep-find-command user options.
Gerd Moellmann <gerd@gnu.org>
parents: 39255
diff changeset
5062
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
5063 ** Withdrawn packages
Dave Love <fx@gnu.org>
parents:
diff changeset
5064
Dave Love <fx@gnu.org>
parents:
diff changeset
5065 *** mldrag.el has been removed. mouse.el provides the same
Dave Love <fx@gnu.org>
parents:
diff changeset
5066 functionality with aliases for the mldrag functions.
26133
5eb182b0c724 eval-reg removed.
Dave Love <fx@gnu.org>
parents: 26107
diff changeset
5067
27369
b7162d2b3d0b ph.el, user-init-file.
Dave Love <fx@gnu.org>
parents: 27361
diff changeset
5068 *** 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
5069
b7162d2b3d0b ph.el, user-init-file.
Dave Love <fx@gnu.org>
parents: 27361
diff changeset
5070 *** ph.el has been obsoleted by EUDC and removed.
29102
ba9cfbfc601e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28955
diff changeset
5071
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
5072
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5073 * Incompatible Lisp changes
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5074
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5075 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
5076 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
5077 See the sections below for details.
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5078
35297
e268b7b500f0 Changes for makefile support in etags.
Francesco Potortì <pot@gnu.org>
parents: 35278
diff changeset
5079 ** 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
5080 `(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
5081 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
5082 to remove the properties of the copy.
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5083
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5084 ** Since the `keymap' text property now has significance, some code
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5085 which uses both `local-map' and `keymap' properties (for portability)
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5086 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
5087 these properties are active.
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
5088
34029
d80bd382fa99 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34017
diff changeset
5089 ** 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
5090 ranges may affect some code.
34017
8cf5499796cc *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34001
diff changeset
5091
8cf5499796cc *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34001
diff changeset
5092 ** 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
5093 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
5094 make a difference to some code.
8cf5499796cc *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34001
diff changeset
5095
34029
d80bd382fa99 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34017
diff changeset
5096 ** The new treatment of the minibuffer prompt might affect code which
d80bd382fa99 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34017
diff changeset
5097 operates on the minibuffer.
d80bd382fa99 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34017
diff changeset
5098
34087
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5099 ** 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
5100 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
5101 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
5102 (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
5103 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
5104 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
5105 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
5106 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
5107 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
5108 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
5109 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
5110 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
5111
4fcc3c4e9b0f Explain why `no-conversion' is no longer appropriate for reading
Eli Zaretskii <eliz@gnu.org>
parents: 34060
diff changeset
5112 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
5113 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
5114 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
5115
34617
1759a3374578 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34564
diff changeset
5116 ** 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
5117 `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
5118 `before-change-functions' and `after-change-functions' instead.
34617
1759a3374578 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34564
diff changeset
5119
1759a3374578 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34564
diff changeset
5120 ** 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
5121 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
5122 such as `mapconcat'.
34617
1759a3374578 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 34564
diff changeset
5123
38649
021a0445b5f6 Mention the change in base64-decode-string whereby the result is
Eli Zaretskii <eliz@gnu.org>
parents: 38605
diff changeset
5124 ** 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
5125 string.
021a0445b5f6 Mention the change in base64-decode-string whereby the result is
Eli Zaretskii <eliz@gnu.org>
parents: 38605
diff changeset
5126
36244
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5127 ** Not a Lisp incompatibility as such but, with the introduction of
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5128 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
5129 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
5130 one extra will fail unless you rebuild Emacs with some standard
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5131 charset(s) removed; that is probably inadvisable because it changes
7f8002783bf3 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36113
diff changeset
5132 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
5133 encoding using Emacs 20 with additional private charsets defined will
67c8e0a89b2d *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36428
diff changeset
5134 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
5135
37077
8b914cd4ae0c Fix the wording about directory-sep-char deprecation.
Eli Zaretskii <eliz@gnu.org>
parents: 37064
diff changeset
5136 ** 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
5137 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
5138 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
5139 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
5140 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
5141 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
5142 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
5143 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
5144 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
5145 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
5146
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
5147
29102
ba9cfbfc601e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28955
diff changeset
5148 * 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
5149 (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
5150
39089
64e39b9789cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39075
diff changeset
5151 ** Function assq-delete-all replaces function assoc-delete-all.
64e39b9789cc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 39075
diff changeset
5152
41356
39332ec6c47d Fix typos.
Eli Zaretskii <eliz@gnu.org>
parents: 41355
diff changeset
5153 ** The new function animate-string, from lisp/play/animate.el
38527
71c6489a2aff *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38471
diff changeset
5154 allows the animated display of strings.
71c6489a2aff *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 38471
diff changeset
5155
37061
e5b70de7b794 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 37009
diff changeset
5156 ** The new function `interactive-form' can be used to obtain the
e5b70de7b794 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 37009
diff changeset
5157 interactive form of a function.
e5b70de7b794 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 37009
diff changeset
5158
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5159 ** The keyword :set-after in defcustom allows to specify dependencies
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5160 between custom options. Example:
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5161
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5162 (defcustom default-input-method nil
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5163 "*Default input method for multilingual text (a string).
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5164 This is the input method activated automatically by the command
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5165 `toggle-input-method' (\\[toggle-input-method])."
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5166 :group 'mule
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5167 :type '(choice (const nil) string)
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5168 :set-after '(current-language-environment))
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5169
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5170 This specifies that default-input-method should be set after
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5171 current-language-environment even if default-input-method appears
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5172 first in a custom-set-variables statement.
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5173
35862
9604ca6b3728 More typos from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35847
diff changeset
5174 ** 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
5175 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
5176 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
5177 (signal or normal termination).
95799f3353e7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35090
diff changeset
5178
35090
b876bd6bde9e butlast, nbutlast.
Dave Love <fx@gnu.org>
parents: 35064
diff changeset
5179 ** Functions `butlast' and `nbutlast' for removing trailing elements
b876bd6bde9e butlast, nbutlast.
Dave Love <fx@gnu.org>
parents: 35064
diff changeset
5180 from a list are now available without requiring the CL package.
b876bd6bde9e butlast, nbutlast.
Dave Love <fx@gnu.org>
parents: 35064
diff changeset
5181
34271
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
5182 ** 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
5183 to prevent `display-buffer' from evening out window heights.
52c06c998aac *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34204
diff changeset
5184
33373
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
5185 ** The user-option `face-font-registry-alternatives' specifies
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
5186 alternative font registry names to try when looking for a font.
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
5187
34054
da7a782777bc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34029
diff changeset
5188 ** Function `md5' calculates the MD5 "message digest"/"checksum".
33364
Dave Love <fx@gnu.org>
parents: 33315
diff changeset
5189
32913
8a79f057b2a5 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 32865
diff changeset
5190 ** Function `delete-frame' runs `delete-frame-hook' before actually
8a79f057b2a5 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 32865
diff changeset
5191 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
5192 being deleted.
8a79f057b2a5 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 32865
diff changeset
5193
32845
e92097fd9144 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 32751
diff changeset
5194 ** `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
5195
32466
90886fd49673 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 32465
diff changeset
5196 ** 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
5197 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
5198 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
5199 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
5200 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
5201 charset.
355b97042e28 non-ascii character ranges
Dave Love <fx@gnu.org>
parents: 32448
diff changeset
5202
32259
cae38860a9ee Add entry for `display-message-or-buffer'.
Miles Bader <miles@gnu.org>
parents: 32257
diff changeset
5203 ** 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
5204 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
5205 message.
cae38860a9ee Add entry for `display-message-or-buffer'.
Miles Bader <miles@gnu.org>
parents: 32257
diff changeset
5206
32050
2a3bcf8d9877 Add entries for `auto-image-file-mode' and `with-auto-compression-mode'.
Miles Bader <miles@gnu.org>
parents: 32037
diff changeset
5207 ** 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
5208 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
5209
31636
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
5210 ** In image specifications, `:heuristic-mask' has been replaced
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
5211 with the more general `:mask' property.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
5212
35364
19c93f3ebdce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35326
diff changeset
5213 ** Image specifications accept more `:conversion's.
31728
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
5214
31561
b441ceb31859 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31388
diff changeset
5215 ** 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
5216 backslash.
b441ceb31859 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31388
diff changeset
5217
31007
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5218 ** 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
5219 is running in batch mode. For example,
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5220
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5221 (message "%s" (read t))
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5222
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5223 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
5224 to standard output.
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5225
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5226 ** The argument of `down-list', `backward-up-list', `up-list',
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5227 `kill-sexp', `backward-kill-sexp' and `mark-sexp' is now optional.
0e3404fe9965 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31004
diff changeset
5228
30564
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5229 ** If `display-buffer-reuse-frames' is set, function `display-buffer'
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5230 will raise frames displaying a buffer, instead of creating a new
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5231 frame or window.
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5232
30516
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5233 ** Two new functions for removing elements from lists/sequences
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5234 were added
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5235
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5236 - Function: remove ELT SEQ
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5237
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
5238 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
5239 a list, vector, or string. The comparison is done with `equal'.
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5240
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5241 - Function: remq ELT LIST
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5242
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
5243 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
5244 comparison is done with `eq'.
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5245
148c11ee6b89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30511
diff changeset
5246 ** The function `delete' now also works with vectors and strings.
30511
2ac427297d38 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30502
diff changeset
5247
30502
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
5248 ** 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
5249 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
5250 `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
5251
30357
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
5252 ** Function `aset' stores any multibyte character in any string
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
5253 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
5254 convert a unibyte string to multibyte if necessary.
2696b797cd2f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 30339
diff changeset
5255
30219
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
5256 ** 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
5257 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
5258
30158
84d54b049d67 make-obsolete, plist-member changes
Dave Love <fx@gnu.org>
parents: 30155
diff changeset
5259 ** 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
5260 function was declared obsolete.
84d54b049d67 make-obsolete, plist-member changes
Dave Love <fx@gnu.org>
parents: 30155
diff changeset
5261
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5262 ** 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
5263 retained as an alias).
84d54b049d67 make-obsolete, plist-member changes
Dave Love <fx@gnu.org>
parents: 30155
diff changeset
5264
30068
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5265 ** Easy-menu's :filter now works as in XEmacs.
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5266 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
5267 is automatically converted to Emacs' form.
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5268
30038
9a141c819d48 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30012
diff changeset
5269 ** The new function `window-list' has been defined
9a141c819d48 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30012
diff changeset
5270
33620
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5271 - Function: window-list &optional FRAME WINDOW MINIBUF
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5272
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5273 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
5274 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
5275 the selected window. MINIBUF t means include the minibuffer window,
62859e71806e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33618
diff changeset
5276 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
5277 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
5278 means never include the minibuffer window.
30038
9a141c819d48 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30012
diff changeset
5279
39179
d0b29a3ee609 some-window -> get-window-with-predicate.
Gerd Moellmann <gerd@gnu.org>
parents: 39089
diff changeset
5280 ** 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
5281
d0b29a3ee609 some-window -> get-window-with-predicate.
Gerd Moellmann <gerd@gnu.org>
parents: 39089
diff changeset
5282 - 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
5283
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5284 Return a window satisfying PREDICATE.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5285
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5286 This function cycles through all visible windows using `walk-windows',
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5287 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
5288 argument. The first window for which PREDICATE returns a non-nil
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5289 value is returned. If no window satisfies PREDICATE, DEFAULT is
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5290 returned.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5291
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5292 Optional second arg MINIBUF t means count the minibuffer window even
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5293 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
5294 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
5295 minibuffer even if it is active.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5296
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5297 Several frames may share a single minibuffer; if the minibuffer
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5298 counts, all windows on all frames that share that minibuffer count
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5299 too. Therefore, if you are using a separate minibuffer frame
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5300 and the minibuffer is active and MINIBUF says it counts,
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5301 `walk-windows' includes the windows in the frame from which you
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5302 entered the minibuffer, as well as the minibuffer window.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5303
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5304 ALL-FRAMES is the optional third argument.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5305 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
5306 ALL-FRAMES = `visible' means include windows on all visible frames.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5307 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
5308 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
5309 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
5310 Anything else means restrict to the selected frame.
f39010aa1be6 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29972
diff changeset
5311
30564
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5312 ** The function `single-key-description' now encloses function key and
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5313 event names in angle brackets. When called with a second optional
a363ab77020c *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30518
diff changeset
5314 argument non-nil, angle brackets won't be printed.
29657
cdef08609770 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29637
diff changeset
5315
29637
6b63e5410a0e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29633
diff changeset
5316 ** 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
5317 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
5318 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
5319 Default value is nil.
29637
6b63e5410a0e *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29633
diff changeset
5320
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5321 ** 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
5322 meaning no limit.
98e1c27ffe84 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29533
diff changeset
5323
38126
64a45ba0553f Document line-number-display-limit-width.
Eli Zaretskii <eliz@gnu.org>
parents: 38107
diff changeset
5324 ** 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
5325 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
5326 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
5327
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5328 ** `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
5329 coding-system if buffer-file-coding-system is `undecided' and
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
5330 DEFAULT-CODING-SYSTEM is not specified,
fc84e59f692c Preferred coding system change.
Dave Love <fx@gnu.org>
parents: 29506
diff changeset
5331
34001
fc9ba8a24dde *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33991
diff changeset
5332 ** The function `subr-arity' provides information about the argument
fc9ba8a24dde *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33991
diff changeset
5333 list of a primitive.
29238
552f0327e586 subr-arity
Dave Love <fx@gnu.org>
parents: 29218
diff changeset
5334
33111
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
5335 ** `where-is-internal' now also accepts a list of keymaps.
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
5336
29286
c0fe782084bb keymap property.
Dave Love <fx@gnu.org>
parents: 29238
diff changeset
5337 ** The text property `keymap' specifies a key map which overrides the
c0fe782084bb keymap property.
Dave Love <fx@gnu.org>
parents: 29238
diff changeset
5338 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
5339 This is probably what most current uses of `local-map' want, rather
c0fe782084bb keymap property.
Dave Love <fx@gnu.org>
parents: 29238
diff changeset
5340 than replacing the local map.
c0fe782084bb keymap property.
Dave Love <fx@gnu.org>
parents: 29238
diff changeset
5341
35250
d6a8befb918c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35242
diff changeset
5342 ** The obsolete variables `before-change-function' and
d6a8befb918c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35242
diff changeset
5343 `after-change-function' are no longer acted upon and have been
d6a8befb918c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35242
diff changeset
5344 removed. Use `before-change-functions' and `after-change-functions'
d6a8befb918c *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35242
diff changeset
5345 instead.
29498
4b79925ce8fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29381
diff changeset
5346
4b79925ce8fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29381
diff changeset
5347 ** The function `apropos-mode' runs the hook `apropos-mode-hook'.
4b79925ce8fa *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29381
diff changeset
5348
33111
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
5349 ** `concat' no longer accepts individual integer arguments,
bbf383648e4d *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 33020
diff changeset
5350 as promised long ago.
30339
70d759570f7a C-down-mouse-3. Move concat change.
Dave Love <fx@gnu.org>
parents: 30319
diff changeset
5351
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5352 ** 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
5353
1d5371e8a974 Add entry for auto-coding-regexp-alist.
Gerd Moellmann <gerd@gnu.org>
parents: 37446
diff changeset
5354 ** 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
5355 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
5356 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
5357
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
5358
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
5359 * Lisp changes in Emacs 21.1 (see following page for display-related features)
Dave Love <fx@gnu.org>
parents:
diff changeset
5360
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5361 ** The new package rx.el provides an alternative sexp notation for
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5362 regular expressions.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5363
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5364 - Function: rx-to-string SEXP
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5365
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5366 Translate SEXP into a regular expression in string notation.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5367
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5368 - Macro: rx SEXP
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5369
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5370 Translate SEXP into a regular expression in string notation.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5371
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5372 The following are valid subforms of regular expressions in sexp
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5373 notation.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5374
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5375 STRING
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5376 matches string STRING literally.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5377
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5378 CHAR
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5379 matches character CHAR literally.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5380
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5381 `not-newline'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5382 matches any character except a newline.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5383 .
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5384 `anything'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5385 matches any character
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5386
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5387 `(any SET)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5388 matches any character in SET. SET may be a character or string.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5389 Ranges of characters can be specified as `A-Z' in strings.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5390
40215
77247104a65e mention html-xhtml
Sam Steingold <sds@gnu.org>
parents: 40190
diff changeset
5391 '(in SET)'
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5392 like `any'.
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 `(not (any SET))'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5395 matches any character not in SET
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5396
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5397 `line-start'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5398 matches the empty string, but only at the beginning of a line
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5399 in the text being matched
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5400
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5401 `line-end'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5402 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
5403
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5404 `string-start'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5405 matches the empty string, but only at the beginning of the
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5406 string being matched against.
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 `string-end'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5409 matches the empty string, but only at the end of the
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5410 string being matched against.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5411
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5412 `buffer-start'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5413 matches the empty string, but only at the beginning of the
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5414 buffer being matched against.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5415
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5416 `buffer-end'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5417 matches the empty string, but only at the end of the
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5418 buffer being matched against.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5419
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5420 `point'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5421 matches the empty string, but only at point.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5422
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5423 `word-start'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5424 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
5425 word.
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 `word-end'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5428 matches the empty string, but only at the end of a word.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5429
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5430 `word-boundary'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5431 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
5432 word.
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 `(not word-boundary)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5435 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
5436 word.
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 `digit'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5439 matches 0 through 9.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5440
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5441 `control'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5442 matches ASCII control characters.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5443
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5444 `hex-digit'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5445 matches 0 through 9, a through f and A through F.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5446
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5447 `blank'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5448 matches space and tab only.
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 `graphic'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5451 matches graphic characters--everything except ASCII control chars,
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5452 space, and DEL.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5453
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5454 `printing'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5455 matches printing characters--everything except ASCII control chars
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5456 and DEL.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5457
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5458 `alphanumeric'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5459 matches letters and digits. (But at present, for multibyte characters,
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5460 it matches anything that has word syntax.)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5461
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5462 `letter'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5463 matches letters. (But at present, for multibyte characters,
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5464 it matches anything that has word syntax.)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5465
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5466 `ascii'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5467 matches ASCII (unibyte) characters.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5468
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5469 `nonascii'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5470 matches non-ASCII (multibyte) characters.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5471
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5472 `lower'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5473 matches anything lower-case.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5474
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5475 `upper'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5476 matches anything upper-case.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5477
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5478 `punctuation'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5479 matches punctuation. (But at present, for multibyte characters,
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5480 it matches anything that has non-word syntax.)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5481
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5482 `space'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5483 matches anything that has whitespace syntax.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5484
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5485 `word'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5486 matches anything that has word syntax.
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 `(syntax SYNTAX)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5489 matches a character with syntax SYNTAX. SYNTAX must be one
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5490 of the following symbols.
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 `whitespace' (\\s- in string notation)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5493 `punctuation' (\\s.)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5494 `word' (\\sw)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5495 `symbol' (\\s_)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5496 `open-parenthesis' (\\s()
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5497 `close-parenthesis' (\\s))
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5498 `expression-prefix' (\\s')
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5499 `string-quote' (\\s\")
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5500 `paired-delimiter' (\\s$)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5501 `escape' (\\s\\)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5502 `character-quote' (\\s/)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5503 `comment-start' (\\s<)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5504 `comment-end' (\\s>)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5505
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5506 `(not (syntax SYNTAX))'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5507 matches a character that has not syntax SYNTAX.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5508
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5509 `(category CATEGORY)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5510 matches a character with category CATEGORY. CATEGORY must be
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5511 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
5512
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5513 `consonant' (\\c0 in string notation)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5514 `base-vowel' (\\c1)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5515 `upper-diacritical-mark' (\\c2)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5516 `lower-diacritical-mark' (\\c3)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5517 `tone-mark' (\\c4)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5518 `symbol' (\\c5)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5519 `digit' (\\c6)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5520 `vowel-modifying-diacritical-mark' (\\c7)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5521 `vowel-sign' (\\c8)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5522 `semivowel-lower' (\\c9)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5523 `not-at-end-of-line' (\\c<)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5524 `not-at-beginning-of-line' (\\c>)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5525 `alpha-numeric-two-byte' (\\cA)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5526 `chinse-two-byte' (\\cC)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5527 `greek-two-byte' (\\cG)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5528 `japanese-hiragana-two-byte' (\\cH)
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
5529 `indian-two-byte' (\\cI)
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5530 `japanese-katakana-two-byte' (\\cK)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5531 `korean-hangul-two-byte' (\\cN)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5532 `cyrillic-two-byte' (\\cY)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5533 `ascii' (\\ca)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5534 `arabic' (\\cb)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5535 `chinese' (\\cc)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5536 `ethiopic' (\\ce)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5537 `greek' (\\cg)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5538 `korean' (\\ch)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5539 `indian' (\\ci)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5540 `japanese' (\\cj)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5541 `japanese-katakana' (\\ck)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5542 `latin' (\\cl)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5543 `lao' (\\co)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5544 `tibetan' (\\cq)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5545 `japanese-roman' (\\cr)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5546 `thai' (\\ct)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5547 `vietnamese' (\\cv)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5548 `hebrew' (\\cw)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5549 `cyrillic' (\\cy)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5550 `can-break' (\\c|)
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5551
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5552 `(not (category CATEGORY))'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5553 matches a character that has not category CATEGORY.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5554
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5555 `(and SEXP1 SEXP2 ...)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5556 matches what SEXP1 matches, followed by what SEXP2 matches, etc.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5557
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5558 `(submatch SEXP1 SEXP2 ...)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5559 like `and', but makes the match accessible with `match-end',
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5560 `match-beginning', and `match-string'.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5561
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5562 `(group SEXP1 SEXP2 ...)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5563 another name for `submatch'.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5564
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5565 `(or SEXP1 SEXP2 ...)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5566 matches anything that matches SEXP1 or SEXP2, etc. If all
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5567 args are strings, use `regexp-opt' to optimize the resulting
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5568 regular expression.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5569
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5570 `(minimal-match SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5571 produce a non-greedy regexp for SEXP. Normally, regexps matching
45901
1b38863a543b *** empty log message ***
Juanma Barranquero <lekktu@gmail.com>
parents: 45891
diff changeset
5572 zero or more occurrences of something are \"greedy\" in that they
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5573 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
5574 still match. A non-greedy regexp matches as little as possible.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5575
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5576 `(maximal-match SEXP)'
47283
0f65e6f1d100 Fix spacing.
Juanma Barranquero <lekktu@gmail.com>
parents: 47201
diff changeset
5577 produce a greedy regexp for SEXP. This is the default.
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5578
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5579 `(zero-or-more SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5580 matches zero or more occurrences of what SEXP matches.
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 `(0+ SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5583 like `zero-or-more'.
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 `(* SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5586 like `zero-or-more', but always produces a greedy regexp.
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 `(*? SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5589 like `zero-or-more', but always produces a non-greedy regexp.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5590
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5591 `(one-or-more SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5592 matches one or more occurrences of A.
40215
77247104a65e mention html-xhtml
Sam Steingold <sds@gnu.org>
parents: 40190
diff changeset
5593
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5594 `(1+ SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5595 like `one-or-more'.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5596
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5597 `(+ SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5598 like `one-or-more', but always produces a greedy regexp.
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 `(+? SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5601 like `one-or-more', but always produces a non-greedy regexp.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5602
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5603 `(zero-or-one SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5604 matches zero or one occurrences of A.
40215
77247104a65e mention html-xhtml
Sam Steingold <sds@gnu.org>
parents: 40190
diff changeset
5605
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5606 `(optional SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5607 like `zero-or-one'.
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 `(? SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5610 like `zero-or-one', but always produces a greedy regexp.
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 `(?? SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5613 like `zero-or-one', but always produces a non-greedy regexp.
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 `(repeat N SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5616 matches N occurrences of what SEXP matches.
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 `(repeat N M SEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5619 matches N to M occurrences of what SEXP matches.
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 `(eval FORM)'
47283
0f65e6f1d100 Fix spacing.
Juanma Barranquero <lekktu@gmail.com>
parents: 47201
diff changeset
5622 evaluate FORM and insert result. If result is a string,
39517
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5623 `regexp-quote' it.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5624
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5625 `(regexp REGEXP)'
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5626 include REGEXP in string notation in the result.
81ce748b1748 Mention Rx.
Gerd Moellmann <gerd@gnu.org>
parents: 39485
diff changeset
5627
36811
a37eeb9f04f3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36798
diff changeset
5628 *** The features `md5' and `overlay' are now provided by default.
a37eeb9f04f3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 36798
diff changeset
5629
30933
3a89352a7dab Document save-restriction fix.
Miles Bader <miles@gnu.org>
parents: 30930
diff changeset
5630 *** 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
5631 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
5632 the original restriction. Previously, doing this would cause the saved
3a89352a7dab Document save-restriction fix.
Miles Bader <miles@gnu.org>
parents: 30930
diff changeset
5633 restriction to be restored incorrectly.
3a89352a7dab Document save-restriction fix.
Miles Bader <miles@gnu.org>
parents: 30930
diff changeset
5634
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5635 *** The functions `find-charset-region' and `find-charset-string' include
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5636 `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
5637 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
5638 multibyte buffer and `unknown' in a unibyte buffer.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5639
39255
2ccde3c50b3a Fix a typo.
Eli Zaretskii <eliz@gnu.org>
parents: 39232
diff changeset
5640 *** 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
5641 `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
5642 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
5643
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5644 *** The handling of multibyte sequences in a multibyte buffer is
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5645 changed. Previously, a byte sequence matching the pattern
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5646 [\200-\237][\240-\377]+ was interpreted as a single character
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5647 regardless of the length of the trailing bytes [\240-\377]+. Thus, if
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5648 the sequence was longer than what the leading byte indicated, the
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5649 extra trailing bytes were ignored by Lisp functions. Now such extra
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5650 bytes are independent 8-bit characters belonging to the charset
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5651 eight-bit-graphic.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5652
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5653 ** Fontsets are now implemented using char-tables.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5654
35847
83b8f5ad1f97 Several typos fixed. From Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35784
diff changeset
5655 A fontset can now be specified for each independent character, for
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5656 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
5657 character set as previously.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5658
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5659 *** The arguments of the function `set-fontset-font' are changed.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5660 They are NAME, CHARACTER, FONTNAME, and optional FRAME. The function
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5661 modifies fontset NAME to use FONTNAME for CHARACTER.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5662
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5663 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
5664 characters. In that case FONTNAME is used for all characters in the
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5665 range FROM and TO (inclusive). CHARACTER may be a charset. In that
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5666 case FONTNAME is used for all character in the charset.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5667
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5668 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
5669 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
5670
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5671 *** Variable x-charset-registry has been deleted. The default charset
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5672 registries of character sets are set in the default fontset
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5673 "fontset-default".
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5674
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5675 *** The function `create-fontset-from-fontset-spec' ignores the second
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5676 argument STYLE-VARIANT. It never creates style-variant fontsets.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5677
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5678 ** The method of composing characters is changed. Now character
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5679 composition is done by a special text property `composition' in
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5680 buffers and strings.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5681
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5682 *** Charset composition is deleted. Emacs never creates a `composite
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5683 character' which is an independent character with a unique character
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5684 code. Thus the following functions handling `composite characters'
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5685 have been deleted: composite-char-component,
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5686 composite-char-component-count, composite-char-composition-rule,
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5687 composite-char-composition-rule and decompose-composite-char delete.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5688 The variables leading-code-composition and min-composite-char have
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5689 also been deleted.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5690
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5691 *** Three more glyph reference points are added. They can be used to
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5692 specify a composition rule. See the documentation of the variable
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5693 `reference-point-alist' for more detail.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5694
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5695 *** The function `compose-region' takes new arguments COMPONENTS and
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5696 MODIFICATION-FUNC. With COMPONENTS, you can specify not only a
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5697 composition rule but also characters to be composed. Such characters
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5698 may differ between buffer and string text.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5699
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5700 *** The function `compose-string' takes new arguments START, END,
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5701 COMPONENTS, and MODIFICATION-FUNC.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5702
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5703 *** The function `compose-string' puts text property `composition'
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5704 directly on the argument STRING instead of returning a new string.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5705 Likewise, the function `decompose-string' just removes text property
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5706 `composition' from STRING.
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 new function `find-composition' returns information about
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5709 a composition at a specified position in a buffer or a string.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5710
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5711 *** The function `decompose-composite-char' is now labeled as
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5712 obsolete.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5713
36039
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
5714 ** 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
5715 the Macintosh but may be used generally for Macintosh-encoded text.
9c2bd5a836b3 point to INSTALL
Dave Love <fx@gnu.org>
parents: 35937
diff changeset
5716
33290
b0b23815e8ca *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33274
diff changeset
5717 ** The new character sets `mule-unicode-0100-24ff',
35937
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5718 `mule-unicode-2500-33ff', and `mule-unicode-e000-ffff' have been
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5719 introduced for Unicode characters in the range U+0100..U+24FF,
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5720 U+2500..U+33FF, U+E000..U+FFFF respectively.
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5721
38012
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5722 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
5723 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
5724 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
5725 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
5726 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
5727 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
5728
3bf93c45de95 Mention that mule-unicode-* charsets aren't unified with the others.
Eli Zaretskii <eliz@gnu.org>
parents: 37948
diff changeset
5729 ** 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
5730 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
5731 details, please see the documentation string of this coding system.
35557
eb649a1c81eb *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 35470
diff changeset
5732
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5733 ** The new character sets `japanese-jisx0213-1' and
35937
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5734 `japanese-jisx0213-2' have been introduced for the new Japanese
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5735 standard JIS X 0213 Plane 1 and Plane 2.
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5736
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5737 ** The new character sets `latin-iso8859-14' and `latin-iso8859-15'
f6e7e24f14e9 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 35927
diff changeset
5738 have been introduced.
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5739
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5740 ** 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
5741 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
5742 0xA0..0xFF respectively. Note that the multibyte representation of
67c8e0a89b2d *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36428
diff changeset
5743 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
5744 emacs-mule coding system, which encodes everything else to the
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5745 buffer/string internal representation. Note that to search for
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5746 eight-bit-graphic characters in a multibyte buffer, the search string
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5747 must be multibyte, otherwise such characters will be converted to
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
5748 their multibyte equivalent.
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
5749
28847
c27ead6e7ea1 write-region change
Dave Love <fx@gnu.org>
parents: 28834
diff changeset
5750 ** 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
5751 that offset in the file before writing.
c27ead6e7ea1 write-region change
Dave Love <fx@gnu.org>
parents: 28834
diff changeset
5752
30068
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5753 ** 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
5754 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
5755
28710
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5756 ** The function `shell-command' now sets the default directory of the
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5757 `*Shell Command Output*' buffer to the default directory of the buffer
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5758 from which the command was issued.
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5759
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5760 ** The functions `query-replace', `query-replace-regexp',
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5761 `query-replace-regexp-eval' `map-query-replace-regexp',
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5762 `replace-string', `replace-regexp', and `perform-replace' take two
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5763 additional optional arguments START and END that specify the region to
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5764 operate on.
6efaa4627dee *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28699
diff changeset
5765
28658
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5766 ** The new function `count-screen-lines' is a more flexible alternative
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5767 to `window-buffer-height'.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5768
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5769 - Function: count-screen-lines &optional BEG END COUNT-FINAL-NEWLINE WINDOW
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5770
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5771 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
5772 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
5773 lines, due to line breaking, display table, etc.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5774
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5775 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
5776 respectively.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5777
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
5778 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
5779 COUNT-FINAL-NEWLINE is non-nil.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5780
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5781 The optional fourth argument WINDOW specifies the window used for
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5782 obtaining parameters such as width, horizontal scrolling, and so
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5783 on. The default is to use the selected window's parameters.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5784
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5785 Like `vertical-motion', `count-screen-lines' always uses the current
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5786 buffer, regardless of which buffer is displayed in WINDOW. This makes
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5787 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
5788 is currently displayed in some window.
bb5083cf0565 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28634
diff changeset
5789
28556
Dave Love <fx@gnu.org>
parents: 28525
diff changeset
5790 ** The new function `mapc' is like `mapcar' but doesn't collect the
Dave Love <fx@gnu.org>
parents: 28525
diff changeset
5791 argument function's results.
Dave Love <fx@gnu.org>
parents: 28525
diff changeset
5792
28496
92a9591b21a2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28492
diff changeset
5793 ** 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
5794 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
5795 `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
5796 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
5797 sequence).
28496
92a9591b21a2 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28492
diff changeset
5798
28492
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5799 ** The function sendmail-user-agent-compose now recognizes a `body'
31859
9bb38b47a241 Fix typo.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 31858
diff changeset
5800 header in the list of headers passed to it.
28492
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5801
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5802 ** The new function member-ignore-case works like `member', but
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5803 ignores differences in case and text representation.
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5804
fc5e9fc89c9d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28396
diff changeset
5805 ** 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
5806 cursor to use in windows displaying a buffer. Values are interpreted
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5807 as follows:
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5808
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5809 t use the cursor specified for the frame (default)
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5810 nil don't display a cursor
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5811 `bar' display a bar cursor with default width
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5812 (bar . WIDTH) display a bar cursor with width WIDTH
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5813 others display a box cursor.
c58dc3f08133 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28303
diff changeset
5814
28303
8bdd3f67b91a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28292
diff changeset
5815 ** 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
5816 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
5817 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
5818 set, an open parenthesis in column 0 has no special meaning.
8bdd3f67b91a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28292
diff changeset
5819
28194
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5820 ** 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
5821 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
5822 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
5823 text property, and in `font-lock-syntactic-keywords'.
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5824
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5825 Example:
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5826
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5827 (string-to-syntax "()")
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5828 => (4 . 41)
59c09e95d278 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28166
diff changeset
5829
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5830 ** Emacs' reader supports CL read syntax for integers in bases
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5831 other than 10.
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5832
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5833 *** `#BINTEGER' or `#bINTEGER' reads INTEGER in binary (radix 2).
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5834 INTEGER optionally contains a sign.
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5835
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5836 #b1111
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5837 => 15
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5838 #b-1111
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5839 => -15
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5840
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5841 *** `#OINTEGER' or `#oINTEGER' reads INTEGER in octal (radix 8).
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5842
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5843 #o666
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5844 => 438
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5845
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5846 *** `#XINTEGER' or `#xINTEGER' reads INTEGER in hexadecimal (radix 16).
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5847
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5848 #xbeef
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5849 => 48815
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5850
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5851 *** `#RADIXrINTEGER' reads INTEGER in radix RADIX, 2 <= RADIX <= 36.
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5852
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5853 #2R-111
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5854 => -7
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
5855 #25rah
28166
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5856 => 267
f3ea89b2cc47 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28159
diff changeset
5857
28335
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5858 ** The function `documentation-property' now evaluates the value of
30068
fd80ab818a0c Fix various typos.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 30056
diff changeset
5859 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
5860 and isn't a string.
acbd35afbe7b *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27995
diff changeset
5861
28335
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5862 ** If called for a symbol, the function `documentation' now looks for
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5863 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
5864 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
5865 not a string, it is evaluated to obtain a string.
012be509f4f4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28323
diff changeset
5866
27881
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5867 ** 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
5868
28149
fd72698178e7 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 28140
diff changeset
5869 ** 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
5870 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
5871
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5872 ** `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
5873 `mouse-position-function'.
f54471f7b913 replace-regexps-in-string, mouse-position-function, define-key-after change
Dave Love <fx@gnu.org>
parents: 27847
diff changeset
5874
27827
25e4e0c9c19a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27820
diff changeset
5875 ** The function string-to-number now returns a float for numbers
25e4e0c9c19a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27820
diff changeset
5876 that don't fit into a Lisp integer.
25e4e0c9c19a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27820
diff changeset
5877
27820
2d9b98395c82 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27770
diff changeset
5878 ** The variable keyword-symbols-constants-flag has been removed.
2d9b98395c82 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27770
diff changeset
5879 Keywords are now always considered constants.
2d9b98395c82 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27770
diff changeset
5880
27770
38f6e392c0aa *** empty log message ***
Dave Love <fx@gnu.org>
parents: 27733
diff changeset
5881 ** The new function `delete-and-extract-region' deletes text and
38f6e392c0aa *** empty log message ***
Dave Love <fx@gnu.org>
parents: 27733
diff changeset
5882 returns it.
38f6e392c0aa *** empty log message ***
Dave Love <fx@gnu.org>
parents: 27733
diff changeset
5883
27276
61772f3ab92f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27266
diff changeset
5884 ** The function `clear-this-command-keys' now also clears the vector
61772f3ab92f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27266
diff changeset
5885 returned by function `recent-keys'.
61772f3ab92f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 27266
diff changeset
5886
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5887 ** Variables `beginning-of-defun-function' and `end-of-defun-function'
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5888 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
5889 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
5890 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
5891 mode.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5892
27094
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
5893 ** 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
5894 and is renamed `define-minor-mode'.
6500fd0a7d8e *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27092
diff changeset
5895
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5896 ** 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
5897 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
5898 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
5899 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
5900 been performed."
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5901
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5902 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
5903 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
5904 hook function returns non-nil meaning expansion has been done,
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5905 then the self-inserting character is not inserted.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5906
26737
0aad3e0b47d2 Change of intern-soft.
Gerd Moellmann <gerd@gnu.org>
parents: 26728
diff changeset
5907 ** 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
5908 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
5909 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
5910
26467
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5911 ** 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
5912 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
5913 specified table.
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5914
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5915 (with-syntax-table TABLE &rest BODY)
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5916
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5917 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
5918 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
5919 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
5920 what BODY returns.
26467
fe1632dc5fb3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26432
diff changeset
5921
27693
d8bedafef8d5 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 27644
diff changeset
5922 ** 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
5923 Perl's shy-groups \(?:...\) and non-greedy *? +? and ?? operators.
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
5924 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
5925 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
5926 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
5927
26397
17d6fe2e2d0f Removal of buffer argument of file-local-copy.
Gerd Moellmann <gerd@gnu.org>
parents: 26360
diff changeset
5928 ** 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
5929 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
5930
26360
5370b1c171ef Change in file-locked-p argument.
Gerd Moellmann <gerd@gnu.org>
parents: 26359
diff changeset
5931 ** 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
5932 instead of being optional.
5370b1c171ef Change in file-locked-p argument.
Gerd Moellmann <gerd@gnu.org>
parents: 26359
diff changeset
5933
26277
32e16b70ae15 New built-in error `text-read-only'.
Gerd Moellmann <gerd@gnu.org>
parents: 26271
diff changeset
5934 ** 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
5935 modify read-only text.
32e16b70ae15 New built-in error `text-read-only'.
Gerd Moellmann <gerd@gnu.org>
parents: 26271
diff changeset
5936
26140
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5937 ** New functions and variables for locales.
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5938
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5939 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
5940 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
5941 time functions like strftime. The new variables
4df5920724de Rename messages-locale to system-messages-locale
Paul Eggert <eggert@twinsun.com>
parents: 26467
diff changeset
5942 `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
5943 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
5944
068f7ad41d40 Describe new functions and variables for locales.
Paul Eggert <eggert@twinsun.com>
parents: 26133
diff changeset
5945 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
5946 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
5947 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
5948 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
5949 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
5950 `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
5951 `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
5952
26107
5bdae485eb03 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 26096
diff changeset
5953 ** syntax tables now understand nested comments.
5bdae485eb03 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 26096
diff changeset
5954 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
5955 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
5956 start sequences.
5bdae485eb03 *** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 26096
diff changeset
5957
25910
918acea58309 Add section for change of pixmap-spec-p to bitmap-spec-p.
Gerd Moellmann <gerd@gnu.org>
parents: 25862
diff changeset
5958 ** 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
5959 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
5960
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
5961 ** New function `propertize'
Dave Love <fx@gnu.org>
parents:
diff changeset
5962
Dave Love <fx@gnu.org>
parents:
diff changeset
5963 The new function `propertize' can be used to conveniently construct
Dave Love <fx@gnu.org>
parents:
diff changeset
5964 strings with text properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
5965
Dave Love <fx@gnu.org>
parents:
diff changeset
5966 - Function: propertize STRING &rest PROPERTIES
Dave Love <fx@gnu.org>
parents:
diff changeset
5967
Dave Love <fx@gnu.org>
parents:
diff changeset
5968 Value is a copy of STRING with text properties assigned as specified
Dave Love <fx@gnu.org>
parents:
diff changeset
5969 by PROPERTIES. PROPERTIES is a sequence of pairs PROPERTY VALUE, with
Dave Love <fx@gnu.org>
parents:
diff changeset
5970 PROPERTY being the name of a text property and VALUE being the
Dave Love <fx@gnu.org>
parents:
diff changeset
5971 specified value of that property. Example:
Dave Love <fx@gnu.org>
parents:
diff changeset
5972
Dave Love <fx@gnu.org>
parents:
diff changeset
5973 (propertize "foo" 'face 'bold 'read-only t)
Dave Love <fx@gnu.org>
parents:
diff changeset
5974
Dave Love <fx@gnu.org>
parents:
diff changeset
5975 ** push and pop macros.
Dave Love <fx@gnu.org>
parents:
diff changeset
5976
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5977 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
5978 are now defined in Emacs Lisp. These macros allow only symbols
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
5979 as the place that holds the list to be changed.
Dave Love <fx@gnu.org>
parents:
diff changeset
5980
Dave Love <fx@gnu.org>
parents:
diff changeset
5981 (push NEWELT LISTNAME) add NEWELT to the front of LISTNAME's value.
Dave Love <fx@gnu.org>
parents:
diff changeset
5982 (pop LISTNAME) return first elt of LISTNAME, and remove it
Dave Love <fx@gnu.org>
parents:
diff changeset
5983 (thus altering the value of LISTNAME).
Dave Love <fx@gnu.org>
parents:
diff changeset
5984
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5985 ** New dolist and dotimes macros.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5986
27387
d0a7127b33e5 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27385
diff changeset
5987 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
5988 are now defined in Emacs Lisp.
27385
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5989
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5990 (dolist (VAR LIST [RESULT]) BODY...)
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5991 Execute body once for each element of LIST,
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5992 using the variable VAR to hold the current element.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5993 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
5994
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5995 (dotimes (VAR COUNT [RESULT]) BODY...)
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5996 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
5997 inclusive, to COUNT, exclusive.
f7b7fdb0f3f4 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 27381
diff changeset
5998 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
5999
34166
c073ad4159fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34125
diff changeset
6000 ** Regular expressions now support Posix character classes such as
c073ad4159fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34125
diff changeset
6001 [: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
6002 class--for instance, [-[:digit:].+] matches digits or a period
c073ad4159fd *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 34125
diff changeset
6003 or a sign.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6004
Dave Love <fx@gnu.org>
parents:
diff changeset
6005 [:digit:] matches 0 through 9
Dave Love <fx@gnu.org>
parents:
diff changeset
6006 [:cntrl:] matches ASCII control characters
Dave Love <fx@gnu.org>
parents:
diff changeset
6007 [:xdigit:] matches 0 through 9, a through f and A through F.
Dave Love <fx@gnu.org>
parents:
diff changeset
6008 [:blank:] matches space and tab only
Dave Love <fx@gnu.org>
parents:
diff changeset
6009 [:graph:] matches graphic characters--everything except ASCII control chars,
Dave Love <fx@gnu.org>
parents:
diff changeset
6010 space, and DEL.
Dave Love <fx@gnu.org>
parents:
diff changeset
6011 [:print:] matches printing characters--everything except ASCII control chars
Dave Love <fx@gnu.org>
parents:
diff changeset
6012 and DEL.
Dave Love <fx@gnu.org>
parents:
diff changeset
6013 [:alnum:] matches letters and digits.
Dave Love <fx@gnu.org>
parents:
diff changeset
6014 (But at present, for multibyte characters,
Dave Love <fx@gnu.org>
parents:
diff changeset
6015 it matches anything that has word syntax.)
Dave Love <fx@gnu.org>
parents:
diff changeset
6016 [:alpha:] matches letters.
Dave Love <fx@gnu.org>
parents:
diff changeset
6017 (But at present, for multibyte characters,
Dave Love <fx@gnu.org>
parents:
diff changeset
6018 it matches anything that has word syntax.)
Dave Love <fx@gnu.org>
parents:
diff changeset
6019 [:ascii:] matches ASCII (unibyte) characters.
Dave Love <fx@gnu.org>
parents:
diff changeset
6020 [:nonascii:] matches non-ASCII (multibyte) characters.
Dave Love <fx@gnu.org>
parents:
diff changeset
6021 [:lower:] matches anything lower-case.
Dave Love <fx@gnu.org>
parents:
diff changeset
6022 [:punct:] matches punctuation.
Dave Love <fx@gnu.org>
parents:
diff changeset
6023 (But at present, for multibyte characters,
Dave Love <fx@gnu.org>
parents:
diff changeset
6024 it matches anything that has non-word syntax.)
Dave Love <fx@gnu.org>
parents:
diff changeset
6025 [:space:] matches anything that has whitespace syntax.
Dave Love <fx@gnu.org>
parents:
diff changeset
6026 [:upper:] matches anything upper-case.
Dave Love <fx@gnu.org>
parents:
diff changeset
6027 [:word:] matches anything that has word syntax.
Dave Love <fx@gnu.org>
parents:
diff changeset
6028
Dave Love <fx@gnu.org>
parents:
diff changeset
6029 ** Emacs now has built-in hash tables.
Dave Love <fx@gnu.org>
parents:
diff changeset
6030
Dave Love <fx@gnu.org>
parents:
diff changeset
6031 The following functions are defined for hash tables:
Dave Love <fx@gnu.org>
parents:
diff changeset
6032
Dave Love <fx@gnu.org>
parents:
diff changeset
6033 - Function: make-hash-table ARGS
Dave Love <fx@gnu.org>
parents:
diff changeset
6034
Dave Love <fx@gnu.org>
parents:
diff changeset
6035 The argument list ARGS consists of keyword/argument pairs. All arguments
Dave Love <fx@gnu.org>
parents:
diff changeset
6036 are optional. The following arguments are defined:
Dave Love <fx@gnu.org>
parents:
diff changeset
6037
Dave Love <fx@gnu.org>
parents:
diff changeset
6038 :test TEST
Dave Love <fx@gnu.org>
parents:
diff changeset
6039
Dave Love <fx@gnu.org>
parents:
diff changeset
6040 TEST must be a symbol specifying how to compare keys. Default is `eql'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6041 Predefined are `eq', `eql' and `equal'. If TEST is not predefined,
Dave Love <fx@gnu.org>
parents:
diff changeset
6042 it must have been defined with `define-hash-table-test'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6043
Dave Love <fx@gnu.org>
parents:
diff changeset
6044 :size SIZE
Dave Love <fx@gnu.org>
parents:
diff changeset
6045
Dave Love <fx@gnu.org>
parents:
diff changeset
6046 SIZE must be an integer > 0 giving a hint to the implementation how
Dave Love <fx@gnu.org>
parents:
diff changeset
6047 many elements will be put in the hash table. Default size is 65.
Dave Love <fx@gnu.org>
parents:
diff changeset
6048
Dave Love <fx@gnu.org>
parents:
diff changeset
6049 :rehash-size REHASH-SIZE
Dave Love <fx@gnu.org>
parents:
diff changeset
6050
Dave Love <fx@gnu.org>
parents:
diff changeset
6051 REHASH-SIZE specifies by how much to grow a hash table once it becomes
Dave Love <fx@gnu.org>
parents:
diff changeset
6052 full. If REHASH-SIZE is an integer, add that to the hash table's old
Dave Love <fx@gnu.org>
parents:
diff changeset
6053 size to get the new size. Otherwise, REHASH-SIZE must be a float >
Dave Love <fx@gnu.org>
parents:
diff changeset
6054 1.0, and the new size is computed by multiplying REHASH-SIZE with the
Dave Love <fx@gnu.org>
parents:
diff changeset
6055 old size. Default rehash size is 1.5.
Dave Love <fx@gnu.org>
parents:
diff changeset
6056
Dave Love <fx@gnu.org>
parents:
diff changeset
6057 :rehash-threshold THRESHOLD
Dave Love <fx@gnu.org>
parents:
diff changeset
6058
Dave Love <fx@gnu.org>
parents:
diff changeset
6059 THRESHOLD must be a float > 0 and <= 1.0 specifying when to resize the
Dave Love <fx@gnu.org>
parents:
diff changeset
6060 hash table. It is resized when the ratio of (number of entries) /
Dave Love <fx@gnu.org>
parents:
diff changeset
6061 (size of hash table) is >= THRESHOLD. Default threshold is 0.8.
Dave Love <fx@gnu.org>
parents:
diff changeset
6062
Dave Love <fx@gnu.org>
parents:
diff changeset
6063 :weakness WEAK
Dave Love <fx@gnu.org>
parents:
diff changeset
6064
30502
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
6065 WEAK must be either nil, one of the symbols `key, `value',
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
6066 `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
6067 `key-and-value'. Entries are removed from weak tables during garbage
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
6068 collection if their key and/or value are not referenced elsewhere
0dca3aa6405a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30483
diff changeset
6069 outside of the hash table. Default are non-weak hash tables.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6070
Dave Love <fx@gnu.org>
parents:
diff changeset
6071 - Function: makehash &optional TEST
Dave Love <fx@gnu.org>
parents:
diff changeset
6072
Dave Love <fx@gnu.org>
parents:
diff changeset
6073 Similar to make-hash-table, but only TEST can be specified.
Dave Love <fx@gnu.org>
parents:
diff changeset
6074
Dave Love <fx@gnu.org>
parents:
diff changeset
6075 - Function: hash-table-p TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6076
Dave Love <fx@gnu.org>
parents:
diff changeset
6077 Returns non-nil if TABLE is a hash table object.
Dave Love <fx@gnu.org>
parents:
diff changeset
6078
Dave Love <fx@gnu.org>
parents:
diff changeset
6079 - Function: copy-hash-table TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6080
Dave Love <fx@gnu.org>
parents:
diff changeset
6081 Returns a copy of TABLE. Only the table itself is copied, keys and
Dave Love <fx@gnu.org>
parents:
diff changeset
6082 values are shared.
Dave Love <fx@gnu.org>
parents:
diff changeset
6083
Dave Love <fx@gnu.org>
parents:
diff changeset
6084 - Function: hash-table-count TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6085
Dave Love <fx@gnu.org>
parents:
diff changeset
6086 Returns the number of entries in TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6087
Dave Love <fx@gnu.org>
parents:
diff changeset
6088 - Function: hash-table-rehash-size TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6089
Dave Love <fx@gnu.org>
parents:
diff changeset
6090 Returns the rehash size of TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6091
Dave Love <fx@gnu.org>
parents:
diff changeset
6092 - Function: hash-table-rehash-threshold TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6093
Dave Love <fx@gnu.org>
parents:
diff changeset
6094 Returns the rehash threshold of TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6095
Dave Love <fx@gnu.org>
parents:
diff changeset
6096 - Function: hash-table-rehash-size TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6097
Dave Love <fx@gnu.org>
parents:
diff changeset
6098 Returns the size of TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6099
30789
68b63779f4df typo fix
Sam Steingold <sds@gnu.org>
parents: 30788
diff changeset
6100 - Function: hash-table-test TABLE
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6101
Dave Love <fx@gnu.org>
parents:
diff changeset
6102 Returns the test TABLE uses to compare keys.
Dave Love <fx@gnu.org>
parents:
diff changeset
6103
Dave Love <fx@gnu.org>
parents:
diff changeset
6104 - Function: hash-table-weakness TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6105
Dave Love <fx@gnu.org>
parents:
diff changeset
6106 Returns the weakness specified for TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6107
Dave Love <fx@gnu.org>
parents:
diff changeset
6108 - Function: clrhash TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6109
Dave Love <fx@gnu.org>
parents:
diff changeset
6110 Clear TABLE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6111
Dave Love <fx@gnu.org>
parents:
diff changeset
6112 - Function: gethash KEY TABLE &optional DEFAULT
Dave Love <fx@gnu.org>
parents:
diff changeset
6113
Dave Love <fx@gnu.org>
parents:
diff changeset
6114 Look up KEY in TABLE and return its associated VALUE or DEFAULT if
Dave Love <fx@gnu.org>
parents:
diff changeset
6115 not found.
Dave Love <fx@gnu.org>
parents:
diff changeset
6116
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6117 - Function: puthash KEY VALUE TABLE
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6118
Dave Love <fx@gnu.org>
parents:
diff changeset
6119 Associate KEY with VALUE in TABLE. If KEY is already associated with
Dave Love <fx@gnu.org>
parents:
diff changeset
6120 another value, replace the old value with VALUE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6121
Dave Love <fx@gnu.org>
parents:
diff changeset
6122 - Function: remhash KEY TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6123
Dave Love <fx@gnu.org>
parents:
diff changeset
6124 Remove KEY from TABLE if it is there.
Dave Love <fx@gnu.org>
parents:
diff changeset
6125
Dave Love <fx@gnu.org>
parents:
diff changeset
6126 - Function: maphash FUNCTION TABLE
Dave Love <fx@gnu.org>
parents:
diff changeset
6127
Dave Love <fx@gnu.org>
parents:
diff changeset
6128 Call FUNCTION for all elements in TABLE. FUNCTION must take two
Dave Love <fx@gnu.org>
parents:
diff changeset
6129 arguments KEY and VALUE.
Dave Love <fx@gnu.org>
parents:
diff changeset
6130
Dave Love <fx@gnu.org>
parents:
diff changeset
6131 - Function: sxhash OBJ
Dave Love <fx@gnu.org>
parents:
diff changeset
6132
Dave Love <fx@gnu.org>
parents:
diff changeset
6133 Return a hash code for Lisp object OBJ.
Dave Love <fx@gnu.org>
parents:
diff changeset
6134
Dave Love <fx@gnu.org>
parents:
diff changeset
6135 - Function: define-hash-table-test NAME TEST-FN HASH-FN
Dave Love <fx@gnu.org>
parents:
diff changeset
6136
Dave Love <fx@gnu.org>
parents:
diff changeset
6137 Define a new hash table test named NAME. If NAME is specified as
Dave Love <fx@gnu.org>
parents:
diff changeset
6138 a test in `make-hash-table', the table created will use TEST-FN for
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6139 comparing keys, and HASH-FN to compute hash codes for keys. Test
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6140 and hash function are stored as symbol property `hash-table-test'
Dave Love <fx@gnu.org>
parents:
diff changeset
6141 of NAME with a value of (TEST-FN HASH-FN).
Dave Love <fx@gnu.org>
parents:
diff changeset
6142
Dave Love <fx@gnu.org>
parents:
diff changeset
6143 TEST-FN must take two arguments and return non-nil if they are the same.
Dave Love <fx@gnu.org>
parents:
diff changeset
6144
Dave Love <fx@gnu.org>
parents:
diff changeset
6145 HASH-FN must take one argument and return an integer that is the hash
Dave Love <fx@gnu.org>
parents:
diff changeset
6146 code of the argument. The function should use the whole range of
Dave Love <fx@gnu.org>
parents:
diff changeset
6147 integer values for hash code computation, including negative integers.
Dave Love <fx@gnu.org>
parents:
diff changeset
6148
Dave Love <fx@gnu.org>
parents:
diff changeset
6149 Example: The following creates a hash table whose keys are supposed to
Dave Love <fx@gnu.org>
parents:
diff changeset
6150 be strings that are compared case-insensitively.
Dave Love <fx@gnu.org>
parents:
diff changeset
6151
Dave Love <fx@gnu.org>
parents:
diff changeset
6152 (defun case-fold-string= (a b)
Dave Love <fx@gnu.org>
parents:
diff changeset
6153 (compare-strings a nil nil b nil nil t))
Dave Love <fx@gnu.org>
parents:
diff changeset
6154
Dave Love <fx@gnu.org>
parents:
diff changeset
6155 (defun case-fold-string-hash (a)
Dave Love <fx@gnu.org>
parents:
diff changeset
6156 (sxhash (upcase a)))
Dave Love <fx@gnu.org>
parents:
diff changeset
6157
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6158 (define-hash-table-test 'case-fold 'case-fold-string=
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6159 'case-fold-string-hash))
Dave Love <fx@gnu.org>
parents:
diff changeset
6160
Dave Love <fx@gnu.org>
parents:
diff changeset
6161 (make-hash-table :test 'case-fold)
Dave Love <fx@gnu.org>
parents:
diff changeset
6162
Dave Love <fx@gnu.org>
parents:
diff changeset
6163 ** The Lisp reader handles circular structure.
Dave Love <fx@gnu.org>
parents:
diff changeset
6164
Dave Love <fx@gnu.org>
parents:
diff changeset
6165 It now works to use the #N= and #N# constructs to represent
Dave Love <fx@gnu.org>
parents:
diff changeset
6166 circular structures. For example, #1=(a . #1#) represents
Dave Love <fx@gnu.org>
parents:
diff changeset
6167 a cons cell which is its own cdr.
Dave Love <fx@gnu.org>
parents:
diff changeset
6168
Dave Love <fx@gnu.org>
parents:
diff changeset
6169 ** The Lisp printer handles circular structure.
Dave Love <fx@gnu.org>
parents:
diff changeset
6170
Dave Love <fx@gnu.org>
parents:
diff changeset
6171 If you bind print-circle to a non-nil value, the Lisp printer outputs
Dave Love <fx@gnu.org>
parents:
diff changeset
6172 #N= and #N# constructs to represent circular and shared structure.
Dave Love <fx@gnu.org>
parents:
diff changeset
6173
Dave Love <fx@gnu.org>
parents:
diff changeset
6174 ** If the second argument to `move-to-column' is anything but nil or
Dave Love <fx@gnu.org>
parents:
diff changeset
6175 t, that means replace a tab with spaces if necessary to reach the
Dave Love <fx@gnu.org>
parents:
diff changeset
6176 specified column, but do not add spaces at the end of the line if it
Dave Love <fx@gnu.org>
parents:
diff changeset
6177 is too short to reach that column.
Dave Love <fx@gnu.org>
parents:
diff changeset
6178
Dave Love <fx@gnu.org>
parents:
diff changeset
6179 ** perform-replace has a new feature: the REPLACEMENTS argument may
Dave Love <fx@gnu.org>
parents:
diff changeset
6180 now be a cons cell (FUNCTION . DATA). This means to call FUNCTION
Dave Love <fx@gnu.org>
parents:
diff changeset
6181 after each match to get the replacement text. FUNCTION is called with
Dave Love <fx@gnu.org>
parents:
diff changeset
6182 two arguments: DATA, and the number of replacements already made.
Dave Love <fx@gnu.org>
parents:
diff changeset
6183
Dave Love <fx@gnu.org>
parents:
diff changeset
6184 If the FROM-STRING contains any upper-case letters,
Dave Love <fx@gnu.org>
parents:
diff changeset
6185 perform-replace also turns off `case-fold-search' temporarily
Dave Love <fx@gnu.org>
parents:
diff changeset
6186 and inserts the replacement text without altering case in it.
Dave Love <fx@gnu.org>
parents:
diff changeset
6187
Dave Love <fx@gnu.org>
parents:
diff changeset
6188 ** The function buffer-size now accepts an optional argument
Dave Love <fx@gnu.org>
parents:
diff changeset
6189 to specify which buffer to return the size of.
Dave Love <fx@gnu.org>
parents:
diff changeset
6190
Dave Love <fx@gnu.org>
parents:
diff changeset
6191 ** The calendar motion commands now run the normal hook
Dave Love <fx@gnu.org>
parents:
diff changeset
6192 calendar-move-hook after moving point.
Dave Love <fx@gnu.org>
parents:
diff changeset
6193
Dave Love <fx@gnu.org>
parents:
diff changeset
6194 ** The new variable small-temporary-file-directory specifies a
Dave Love <fx@gnu.org>
parents:
diff changeset
6195 directory to use for creating temporary files that are likely to be
Dave Love <fx@gnu.org>
parents:
diff changeset
6196 small. (Certain Emacs features use this directory.) If
Dave Love <fx@gnu.org>
parents:
diff changeset
6197 small-temporary-file-directory is nil, they use
Dave Love <fx@gnu.org>
parents:
diff changeset
6198 temporary-file-directory instead.
Dave Love <fx@gnu.org>
parents:
diff changeset
6199
Dave Love <fx@gnu.org>
parents:
diff changeset
6200 ** The variable `inhibit-modification-hooks', if non-nil, inhibits all
Dave Love <fx@gnu.org>
parents:
diff changeset
6201 the hooks that track changes in the buffer. This affects
Dave Love <fx@gnu.org>
parents:
diff changeset
6202 `before-change-functions' and `after-change-functions', as well as
Dave Love <fx@gnu.org>
parents:
diff changeset
6203 hooks attached to text properties and overlay properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
6204
36885
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
6205 ** assq-delete-all is a new function that deletes all the
9902636b4757 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 36848
diff changeset
6206 elements of an alist which have a car `eq' to a particular value.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6207
Dave Love <fx@gnu.org>
parents:
diff changeset
6208 ** make-temp-file provides a more reliable way to create a temporary file.
Dave Love <fx@gnu.org>
parents:
diff changeset
6209
Dave Love <fx@gnu.org>
parents:
diff changeset
6210 make-temp-file is used like make-temp-name, except that it actually
Dave Love <fx@gnu.org>
parents:
diff changeset
6211 creates the file before it returns. This prevents a timing error,
Dave Love <fx@gnu.org>
parents:
diff changeset
6212 ensuring that no other job can use the same name for a temporary file.
Dave Love <fx@gnu.org>
parents:
diff changeset
6213
Dave Love <fx@gnu.org>
parents:
diff changeset
6214 ** New exclusive-open feature in `write-region'
Dave Love <fx@gnu.org>
parents:
diff changeset
6215
Dave Love <fx@gnu.org>
parents:
diff changeset
6216 The optional seventh arg is now called MUSTBENEW. If non-nil, it insists
Dave Love <fx@gnu.org>
parents:
diff changeset
6217 on a check for an existing file with the same name. If MUSTBENEW
Dave Love <fx@gnu.org>
parents:
diff changeset
6218 is `excl', that means to get an error if the file already exists;
Dave Love <fx@gnu.org>
parents:
diff changeset
6219 never overwrite. If MUSTBENEW is neither nil nor `excl', that means
Dave Love <fx@gnu.org>
parents:
diff changeset
6220 ask for confirmation before overwriting, but do go ahead and
Dave Love <fx@gnu.org>
parents:
diff changeset
6221 overwrite the file if the user gives confirmation.
Dave Love <fx@gnu.org>
parents:
diff changeset
6222
Dave Love <fx@gnu.org>
parents:
diff changeset
6223 If the MUSTBENEW argument in `write-region' is `excl',
Dave Love <fx@gnu.org>
parents:
diff changeset
6224 that means to use a special feature in the `open' system call
Dave Love <fx@gnu.org>
parents:
diff changeset
6225 to get an error if the file exists at that time.
Dave Love <fx@gnu.org>
parents:
diff changeset
6226 The error reported is `file-already-exists'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6227
Dave Love <fx@gnu.org>
parents:
diff changeset
6228 ** Function `format' now handles text properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
6229
Dave Love <fx@gnu.org>
parents:
diff changeset
6230 Text properties of the format string are applied to the result string.
Dave Love <fx@gnu.org>
parents:
diff changeset
6231 If the result string is longer than the format string, text properties
Dave Love <fx@gnu.org>
parents:
diff changeset
6232 ending at the end of the format string are extended to the end of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6233 result string.
Dave Love <fx@gnu.org>
parents:
diff changeset
6234
Dave Love <fx@gnu.org>
parents:
diff changeset
6235 Text properties from string arguments are applied to the result
Dave Love <fx@gnu.org>
parents:
diff changeset
6236 string where arguments appear in the result string.
Dave Love <fx@gnu.org>
parents:
diff changeset
6237
Dave Love <fx@gnu.org>
parents:
diff changeset
6238 Example:
Dave Love <fx@gnu.org>
parents:
diff changeset
6239
Dave Love <fx@gnu.org>
parents:
diff changeset
6240 (let ((s1 "hello, %s")
Dave Love <fx@gnu.org>
parents:
diff changeset
6241 (s2 "world"))
Dave Love <fx@gnu.org>
parents:
diff changeset
6242 (put-text-property 0 (length s1) 'face 'bold s1)
Dave Love <fx@gnu.org>
parents:
diff changeset
6243 (put-text-property 0 (length s2) 'face 'italic s2)
26034
e7b463705814 Some typos fixed.
Gerd Moellmann <gerd@gnu.org>
parents: 26030
diff changeset
6244 (format s1 s2))
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6245
Dave Love <fx@gnu.org>
parents:
diff changeset
6246 results in a bold-face string with an italic `world' at the end.
Dave Love <fx@gnu.org>
parents:
diff changeset
6247
Dave Love <fx@gnu.org>
parents:
diff changeset
6248 ** Messages can now be displayed with text properties.
Dave Love <fx@gnu.org>
parents:
diff changeset
6249
Dave Love <fx@gnu.org>
parents:
diff changeset
6250 Text properties are handled as described above for function `format'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6251 The following example displays a bold-face message with an italic
Dave Love <fx@gnu.org>
parents:
diff changeset
6252 argument in it.
Dave Love <fx@gnu.org>
parents:
diff changeset
6253
Dave Love <fx@gnu.org>
parents:
diff changeset
6254 (let ((msg "hello, %s!")
Dave Love <fx@gnu.org>
parents:
diff changeset
6255 (arg "world"))
Dave Love <fx@gnu.org>
parents:
diff changeset
6256 (put-text-property 0 (length msg) 'face 'bold msg)
Dave Love <fx@gnu.org>
parents:
diff changeset
6257 (put-text-property 0 (length arg) 'face 'italic arg)
Dave Love <fx@gnu.org>
parents:
diff changeset
6258 (message msg arg))
Dave Love <fx@gnu.org>
parents:
diff changeset
6259
Dave Love <fx@gnu.org>
parents:
diff changeset
6260 ** Sound support
Dave Love <fx@gnu.org>
parents:
diff changeset
6261
Dave Love <fx@gnu.org>
parents:
diff changeset
6262 Emacs supports playing sound files on GNU/Linux and the free BSDs
Dave Love <fx@gnu.org>
parents:
diff changeset
6263 (Voxware driver and native BSD driver, aka as Luigi's driver).
Dave Love <fx@gnu.org>
parents:
diff changeset
6264
Dave Love <fx@gnu.org>
parents:
diff changeset
6265 Currently supported file formats are RIFF-WAVE (*.wav) and Sun Audio
Dave Love <fx@gnu.org>
parents:
diff changeset
6266 (*.au). You must configure Emacs with the option `--with-sound=yes'
Dave Love <fx@gnu.org>
parents:
diff changeset
6267 to enable sound support.
Dave Love <fx@gnu.org>
parents:
diff changeset
6268
Dave Love <fx@gnu.org>
parents:
diff changeset
6269 Sound files can be played by calling (play-sound SOUND). SOUND is a
Dave Love <fx@gnu.org>
parents:
diff changeset
6270 list of the form `(sound PROPERTY...)'. The function is only defined
Dave Love <fx@gnu.org>
parents:
diff changeset
6271 when sound support is present for the system on which Emacs runs. The
Dave Love <fx@gnu.org>
parents:
diff changeset
6272 functions runs `play-sound-functions' with one argument which is the
Dave Love <fx@gnu.org>
parents:
diff changeset
6273 sound to play, before playing the sound.
Dave Love <fx@gnu.org>
parents:
diff changeset
6274
Dave Love <fx@gnu.org>
parents:
diff changeset
6275 The following sound properties are supported:
Dave Love <fx@gnu.org>
parents:
diff changeset
6276
Dave Love <fx@gnu.org>
parents:
diff changeset
6277 - `:file FILE'
Dave Love <fx@gnu.org>
parents:
diff changeset
6278
Dave Love <fx@gnu.org>
parents:
diff changeset
6279 FILE is a file name. If FILE isn't an absolute name, it will be
Dave Love <fx@gnu.org>
parents:
diff changeset
6280 searched relative to `data-directory'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6281
27148
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6282 - `:data DATA'
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6283
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6284 DATA is a string containing sound data. Either :file or :data
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6285 may be present, but not both.
929f111a6823 Sound with :data.
Gerd Moellmann <gerd@gnu.org>
parents: 27145
diff changeset
6286
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6287 - `:volume VOLUME'
Dave Love <fx@gnu.org>
parents:
diff changeset
6288
Dave Love <fx@gnu.org>
parents:
diff changeset
6289 VOLUME must be an integer in the range 0..100 or a float in the range
Dave Love <fx@gnu.org>
parents:
diff changeset
6290 0..1. This property is optional.
Dave Love <fx@gnu.org>
parents:
diff changeset
6291
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6292 - `:device DEVICE'
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6293
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6294 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
6295 sound. The default device is system-dependent.
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6296
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6297 Other properties are ignored.
Dave Love <fx@gnu.org>
parents:
diff changeset
6298
33991
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6299 An alternative interface is called as
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6300 (play-sound-file FILE &optional VOLUME DEVICE).
b741aa7a2d46 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33990
diff changeset
6301
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6302 ** `multimedia' is a new Finder keyword and Custom group.
26933
73340d009a9f keywordp.
Dave Love <fx@gnu.org>
parents: 26924
diff changeset
6303
73340d009a9f keywordp.
Dave Love <fx@gnu.org>
parents: 26924
diff changeset
6304 ** keywordp is a new predicate to test efficiently for an object being
73340d009a9f keywordp.
Dave Love <fx@gnu.org>
parents: 26924
diff changeset
6305 a keyword symbol.
27145
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6306
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6307 ** Changes to garbage collection
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6308
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6309 *** 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
6310 of live and free strings.
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6311
01abacc81cce Changes to garbage-collect, new var strings-consed,
Gerd Moellmann <gerd@gnu.org>
parents: 27144
diff changeset
6312 *** 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
6313 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
6314
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
6315
29151
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6316 * 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
6317 Lisp Manual
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6318
33309
cb1bcdd72f54 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33291
diff changeset
6319 ** The user-option `resize-mini-windows' controls how Emacs resizes
cb1bcdd72f54 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33291
diff changeset
6320 mini-windows.
cb1bcdd72f54 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33291
diff changeset
6321
34389
779f5314f5fa Update entry for `pos-visible-in-window-p'.
Miles Bader <miles@gnu.org>
parents: 34334
diff changeset
6322 ** 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
6323 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
6324 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
6325
33309
cb1bcdd72f54 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33291
diff changeset
6326 ** On window systems, `glyph-table' is no longer used.
31220
e947c5224fc0 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31183
diff changeset
6327
30222
6468eaa4eaee load-path not customizable
Dave Love <fx@gnu.org>
parents: 30219
diff changeset
6328 ** 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
6329
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6330 ** 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
6331 image.
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6332
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6333 - Function: image-size SPEC &optional PIXELS FRAME
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6334
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6335 Return the size of an image as a pair (WIDTH . HEIGHT).
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6336
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6337 SPEC is an image specification. PIXELS non-nil means return sizes
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6338 measured in pixels, otherwise return sizes measured in canonical
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6339 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
6340 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
6341 FRAME nil or omitted means use the selected frame.
3a5f38acde89 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29814
diff changeset
6342
31639
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6343 ** 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
6344 has a mask bitmap.
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6345
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6346 - Function: image-mask-p SPEC &optional FRAME
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6347
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6348 Return t if image SPEC has a mask bitmap.
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6349 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
6350 or omitted means use the selected frame.
1c5bd105d7dc *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31636
diff changeset
6351
29506
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6352 ** The function `find-image' can be used to find a usable image
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6353 satisfying one of a list of specifications.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6354
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6355 ** The STRING argument of `put-image' and `insert-image' is now
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6356 optional.
096cd250bd8d MULE changes.
Dave Love <fx@gnu.org>
parents: 29498
diff changeset
6357
31156
deaa66a2ac5b *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31127
diff changeset
6358 ** Image specifications may contain the property `:ascent center' (see
deaa66a2ac5b *** empty log message ***
Dave Love <fx@gnu.org>
parents: 31127
diff changeset
6359 below).
29151
fa8f476affa7 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 29102
diff changeset
6360
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
6361
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6362 * New Lisp-level Display features in Emacs 21.1
Dave Love <fx@gnu.org>
parents:
diff changeset
6363
28634
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6364 ** The function tty-suppress-bold-inverse-default-colors can be used
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6365 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
6366
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6367 Some terminals, notably PC consoles, emulate bold text by displaying
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6368 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
6369 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
6370 your monitor---the problem occurred with the mode line on
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6371 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
6372 just display it black instead.
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6373
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6374 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
6375 a line like
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6376
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6377 (tty-suppress-bold-inverse-default-colors t)
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6378
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6379 in your `.emacs'.
a2cce25e6c7f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28626
diff changeset
6380
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6381 ** New face implementation.
Dave Love <fx@gnu.org>
parents:
diff changeset
6382
Dave Love <fx@gnu.org>
parents:
diff changeset
6383 Emacs faces have been reimplemented from scratch. They don't use XLFD
Dave Love <fx@gnu.org>
parents:
diff changeset
6384 font names anymore and face merging now works as expected.
Dave Love <fx@gnu.org>
parents:
diff changeset
6385
Dave Love <fx@gnu.org>
parents:
diff changeset
6386 *** New faces.
Dave Love <fx@gnu.org>
parents:
diff changeset
6387
Dave Love <fx@gnu.org>
parents:
diff changeset
6388 Each face can specify the following display attributes:
Dave Love <fx@gnu.org>
parents:
diff changeset
6389
Dave Love <fx@gnu.org>
parents:
diff changeset
6390 1. Font family or fontset alias name.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6391
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6392 2. Relative proportionate width, aka character set width or set
Dave Love <fx@gnu.org>
parents:
diff changeset
6393 width (swidth), e.g. `semi-compressed'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6394
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6395 3. Font height in 1/10pt
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6396
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6397 4. Font weight, e.g. `bold'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6398
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6399 5. Font slant, e.g. `italic'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6400
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6401 6. Foreground color.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6402
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6403 7. Background color.
Dave Love <fx@gnu.org>
parents:
diff changeset
6404
Dave Love <fx@gnu.org>
parents:
diff changeset
6405 8. Whether or not characters should be underlined, and in what color.
Dave Love <fx@gnu.org>
parents:
diff changeset
6406
Dave Love <fx@gnu.org>
parents:
diff changeset
6407 9. Whether or not characters should be displayed in inverse video.
Dave Love <fx@gnu.org>
parents:
diff changeset
6408
Dave Love <fx@gnu.org>
parents:
diff changeset
6409 10. A background stipple, a bitmap.
Dave Love <fx@gnu.org>
parents:
diff changeset
6410
Dave Love <fx@gnu.org>
parents:
diff changeset
6411 11. Whether or not characters should be overlined, and in what color.
Dave Love <fx@gnu.org>
parents:
diff changeset
6412
Dave Love <fx@gnu.org>
parents:
diff changeset
6413 12. Whether or not characters should be strike-through, and in what
Dave Love <fx@gnu.org>
parents:
diff changeset
6414 color.
Dave Love <fx@gnu.org>
parents:
diff changeset
6415
Dave Love <fx@gnu.org>
parents:
diff changeset
6416 13. Whether or not a box should be drawn around characters, its
Dave Love <fx@gnu.org>
parents:
diff changeset
6417 color, the width of the box lines, and 3D appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
6418
Dave Love <fx@gnu.org>
parents:
diff changeset
6419 Faces are frame-local by nature because Emacs allows to define the
Dave Love <fx@gnu.org>
parents:
diff changeset
6420 same named face (face names are symbols) differently for different
Dave Love <fx@gnu.org>
parents:
diff changeset
6421 frames. Each frame has an alist of face definitions for all named
Dave Love <fx@gnu.org>
parents:
diff changeset
6422 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
6423 with the symbol `face' in slot 0, and a slot for each of the face
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6424 attributes mentioned above.
Dave Love <fx@gnu.org>
parents:
diff changeset
6425
Dave Love <fx@gnu.org>
parents:
diff changeset
6426 There is also a global face alist `face-new-frame-defaults'. Face
Dave Love <fx@gnu.org>
parents:
diff changeset
6427 definitions from this list are used to initialize faces of newly
Dave Love <fx@gnu.org>
parents:
diff changeset
6428 created frames.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6429
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6430 A face doesn't have to specify all attributes. Those not specified
Dave Love <fx@gnu.org>
parents:
diff changeset
6431 have a nil value. Faces specifying all attributes are called
Dave Love <fx@gnu.org>
parents:
diff changeset
6432 `fully-specified'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6433
Dave Love <fx@gnu.org>
parents:
diff changeset
6434 *** Face merging.
Dave Love <fx@gnu.org>
parents:
diff changeset
6435
Dave Love <fx@gnu.org>
parents:
diff changeset
6436 The display style of a given character in the text is determined by
Dave Love <fx@gnu.org>
parents:
diff changeset
6437 combining several faces. This process is called `face merging'. Any
Dave Love <fx@gnu.org>
parents:
diff changeset
6438 aspect of the display style that isn't specified by overlays or text
Dave Love <fx@gnu.org>
parents:
diff changeset
6439 properties is taken from the `default' face. Since it is made sure
Dave Love <fx@gnu.org>
parents:
diff changeset
6440 that the default face is always fully-specified, face merging always
Dave Love <fx@gnu.org>
parents:
diff changeset
6441 results in a fully-specified face.
Dave Love <fx@gnu.org>
parents:
diff changeset
6442
Dave Love <fx@gnu.org>
parents:
diff changeset
6443 *** Face realization.
Dave Love <fx@gnu.org>
parents:
diff changeset
6444
Dave Love <fx@gnu.org>
parents:
diff changeset
6445 After all face attributes for a character have been determined by
Dave Love <fx@gnu.org>
parents:
diff changeset
6446 merging faces of that character, that face is `realized'. The
Dave Love <fx@gnu.org>
parents:
diff changeset
6447 realization process maps face attributes to what is physically
Dave Love <fx@gnu.org>
parents:
diff changeset
6448 available on the system where Emacs runs. The result is a `realized
Dave Love <fx@gnu.org>
parents:
diff changeset
6449 face' in form of an internal structure which is stored in the face
Dave Love <fx@gnu.org>
parents:
diff changeset
6450 cache of the frame on which it was realized.
Dave Love <fx@gnu.org>
parents:
diff changeset
6451
Dave Love <fx@gnu.org>
parents:
diff changeset
6452 Face realization is done in the context of the charset of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6453 character to display because different fonts and encodings are used
Dave Love <fx@gnu.org>
parents:
diff changeset
6454 for different charsets. In other words, for characters of different
Dave Love <fx@gnu.org>
parents:
diff changeset
6455 charsets, different realized faces are needed to display them.
Dave Love <fx@gnu.org>
parents:
diff changeset
6456
Dave Love <fx@gnu.org>
parents:
diff changeset
6457 Except for composite characters, faces are always realized for a
Dave Love <fx@gnu.org>
parents:
diff changeset
6458 specific character set and contain a specific font, even if the face
Dave Love <fx@gnu.org>
parents:
diff changeset
6459 being realized specifies a fontset. The reason is that the result of
Dave Love <fx@gnu.org>
parents:
diff changeset
6460 the new font selection stage is better than what can be done with
Dave Love <fx@gnu.org>
parents:
diff changeset
6461 statically defined font name patterns in fontsets.
Dave Love <fx@gnu.org>
parents:
diff changeset
6462
Dave Love <fx@gnu.org>
parents:
diff changeset
6463 In unibyte text, Emacs' charsets aren't applicable; function
Dave Love <fx@gnu.org>
parents:
diff changeset
6464 `char-charset' reports ASCII for all characters, including those >
Dave Love <fx@gnu.org>
parents:
diff changeset
6465 0x7f. The X registry and encoding of fonts to use is determined from
Dave Love <fx@gnu.org>
parents:
diff changeset
6466 the variable `face-default-registry' in this case. The variable is
Dave Love <fx@gnu.org>
parents:
diff changeset
6467 initialized at Emacs startup time from the font the user specified for
Dave Love <fx@gnu.org>
parents:
diff changeset
6468 Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
6469
Dave Love <fx@gnu.org>
parents:
diff changeset
6470 Currently all unibyte text, i.e. all buffers with
Dave Love <fx@gnu.org>
parents:
diff changeset
6471 `enable-multibyte-characters' nil are displayed with fonts of the same
Dave Love <fx@gnu.org>
parents:
diff changeset
6472 registry and encoding `face-default-registry'. This is consistent
Dave Love <fx@gnu.org>
parents:
diff changeset
6473 with the fact that languages can also be set globally, only.
Dave Love <fx@gnu.org>
parents:
diff changeset
6474
Dave Love <fx@gnu.org>
parents:
diff changeset
6475 **** Clearing face caches.
Dave Love <fx@gnu.org>
parents:
diff changeset
6476
Dave Love <fx@gnu.org>
parents:
diff changeset
6477 The Lisp function `clear-face-cache' can be called to clear face caches
Dave Love <fx@gnu.org>
parents:
diff changeset
6478 on all frames. If called with a non-nil argument, it will also unload
Dave Love <fx@gnu.org>
parents:
diff changeset
6479 unused fonts.
Dave Love <fx@gnu.org>
parents:
diff changeset
6480
Dave Love <fx@gnu.org>
parents:
diff changeset
6481 *** Font selection.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6482
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6483 Font selection tries to find the best available matching font for a
Dave Love <fx@gnu.org>
parents:
diff changeset
6484 given (charset, face) combination. This is done slightly differently
Dave Love <fx@gnu.org>
parents:
diff changeset
6485 for faces specifying a fontset, or a font family name.
Dave Love <fx@gnu.org>
parents:
diff changeset
6486
Dave Love <fx@gnu.org>
parents:
diff changeset
6487 If the face specifies a fontset name, that fontset determines a
Dave Love <fx@gnu.org>
parents:
diff changeset
6488 pattern for fonts of the given charset. If the face specifies a font
Dave Love <fx@gnu.org>
parents:
diff changeset
6489 family, a font pattern is constructed. Charset symbols have a
Dave Love <fx@gnu.org>
parents:
diff changeset
6490 property `x-charset-registry' for that purpose that maps a charset to
Dave Love <fx@gnu.org>
parents:
diff changeset
6491 an XLFD registry and encoding in the font pattern constructed.
Dave Love <fx@gnu.org>
parents:
diff changeset
6492
Dave Love <fx@gnu.org>
parents:
diff changeset
6493 Available fonts on the system on which Emacs runs are then matched
Dave Love <fx@gnu.org>
parents:
diff changeset
6494 against the font pattern. The result of font selection is the best
Dave Love <fx@gnu.org>
parents:
diff changeset
6495 match for the given face attributes in this font list.
Dave Love <fx@gnu.org>
parents:
diff changeset
6496
Dave Love <fx@gnu.org>
parents:
diff changeset
6497 Font selection can be influenced by the user.
Dave Love <fx@gnu.org>
parents:
diff changeset
6498
Dave Love <fx@gnu.org>
parents:
diff changeset
6499 The user can specify the relative importance he gives the face
Dave Love <fx@gnu.org>
parents:
diff changeset
6500 attributes width, height, weight, and slant by setting
Dave Love <fx@gnu.org>
parents:
diff changeset
6501 face-font-selection-order (faces.el) to a list of face attribute
Dave Love <fx@gnu.org>
parents:
diff changeset
6502 names. The default is (:width :height :weight :slant), and means
Dave Love <fx@gnu.org>
parents:
diff changeset
6503 that font selection first tries to find a good match for the font
Dave Love <fx@gnu.org>
parents:
diff changeset
6504 width specified by a face, then---within fonts with that width---tries
Dave Love <fx@gnu.org>
parents:
diff changeset
6505 to find a best match for the specified font height, etc.
Dave Love <fx@gnu.org>
parents:
diff changeset
6506
33373
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
6507 Setting `face-font-family-alternatives' allows the user to specify
701833d4b661 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33364
diff changeset
6508 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
6509 doesn't exist.
34630
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6510
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6511 Setting `face-font-registry-alternatives' allows the user to specify
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
6512 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
6513 registry.
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6514
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
6515 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
6516 slightly different.
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6517
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6518 Setting face-ignored-fonts allows the user to ignore specific fonts.
3d5061d0047f *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 34617
diff changeset
6519
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6520
Dave Love <fx@gnu.org>
parents:
diff changeset
6521 **** Scalable fonts
Dave Love <fx@gnu.org>
parents:
diff changeset
6522
Dave Love <fx@gnu.org>
parents:
diff changeset
6523 Emacs can make use of scalable fonts but doesn't do so by default,
Dave Love <fx@gnu.org>
parents:
diff changeset
6524 since the use of too many or too big scalable fonts may crash XFree86
Dave Love <fx@gnu.org>
parents:
diff changeset
6525 servers.
Dave Love <fx@gnu.org>
parents:
diff changeset
6526
Dave Love <fx@gnu.org>
parents:
diff changeset
6527 To enable scalable font use, set the variable
26034
e7b463705814 Some typos fixed.
Gerd Moellmann <gerd@gnu.org>
parents: 26030
diff changeset
6528 `scalable-fonts-allowed'. A value of nil, the default, means never use
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6529 scalable fonts. A value of t means any scalable font may be used.
Dave Love <fx@gnu.org>
parents:
diff changeset
6530 Otherwise, the value must be a list of regular expressions. A
Dave Love <fx@gnu.org>
parents:
diff changeset
6531 scalable font may then be used if it matches a regular expression from
Dave Love <fx@gnu.org>
parents:
diff changeset
6532 that list. Example:
Dave Love <fx@gnu.org>
parents:
diff changeset
6533
Dave Love <fx@gnu.org>
parents:
diff changeset
6534 (setq scalable-fonts-allowed '("muleindian-2$"))
Dave Love <fx@gnu.org>
parents:
diff changeset
6535
Dave Love <fx@gnu.org>
parents:
diff changeset
6536 allows the use of scalable fonts with registry `muleindian-2'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6537
Dave Love <fx@gnu.org>
parents:
diff changeset
6538 *** Functions and variables related to font selection.
Dave Love <fx@gnu.org>
parents:
diff changeset
6539
Dave Love <fx@gnu.org>
parents:
diff changeset
6540 - Function: x-family-fonts &optional FAMILY FRAME
Dave Love <fx@gnu.org>
parents:
diff changeset
6541
Dave Love <fx@gnu.org>
parents:
diff changeset
6542 Return a list of available fonts of family FAMILY on FRAME. If FAMILY
Dave Love <fx@gnu.org>
parents:
diff changeset
6543 is omitted or nil, list all families. Otherwise, FAMILY must be a
Dave Love <fx@gnu.org>
parents:
diff changeset
6544 string, possibly containing wildcards `?' and `*'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6545
Dave Love <fx@gnu.org>
parents:
diff changeset
6546 If FRAME is omitted or nil, use the selected frame. Each element of
Dave Love <fx@gnu.org>
parents:
diff changeset
6547 the result is a vector [FAMILY WIDTH POINT-SIZE WEIGHT SLANT FIXED-P
Dave Love <fx@gnu.org>
parents:
diff changeset
6548 FULL REGISTRY-AND-ENCODING]. FAMILY is the font family name.
Dave Love <fx@gnu.org>
parents:
diff changeset
6549 POINT-SIZE is the size of the font in 1/10 pt. WIDTH, WEIGHT, and
Dave Love <fx@gnu.org>
parents:
diff changeset
6550 SLANT are symbols describing the width, weight and slant of the font.
Dave Love <fx@gnu.org>
parents:
diff changeset
6551 These symbols are the same as for face attributes. FIXED-P is non-nil
Dave Love <fx@gnu.org>
parents:
diff changeset
6552 if the font is fixed-pitch. FULL is the full name of the font, and
Dave Love <fx@gnu.org>
parents:
diff changeset
6553 REGISTRY-AND-ENCODING is a string giving the registry and encoding of
Dave Love <fx@gnu.org>
parents:
diff changeset
6554 the font. The result list is sorted according to the current setting
Dave Love <fx@gnu.org>
parents:
diff changeset
6555 of the face font sort order.
Dave Love <fx@gnu.org>
parents:
diff changeset
6556
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6557 - Function: x-font-family-list
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6558
Dave Love <fx@gnu.org>
parents:
diff changeset
6559 Return a list of available font families on FRAME. If FRAME is
Dave Love <fx@gnu.org>
parents:
diff changeset
6560 omitted or nil, use the selected frame. Value is a list of conses
Dave Love <fx@gnu.org>
parents:
diff changeset
6561 (FAMILY . FIXED-P) where FAMILY is a font family, and FIXED-P is
Dave Love <fx@gnu.org>
parents:
diff changeset
6562 non-nil if fonts of that family are fixed-pitch.
Dave Love <fx@gnu.org>
parents:
diff changeset
6563
Dave Love <fx@gnu.org>
parents:
diff changeset
6564 - Variable: font-list-limit
Dave Love <fx@gnu.org>
parents:
diff changeset
6565
Dave Love <fx@gnu.org>
parents:
diff changeset
6566 Limit for font matching. If an integer > 0, font matching functions
Dave Love <fx@gnu.org>
parents:
diff changeset
6567 won't load more than that number of fonts when searching for a
Dave Love <fx@gnu.org>
parents:
diff changeset
6568 matching font. The default is currently 100.
Dave Love <fx@gnu.org>
parents:
diff changeset
6569
Dave Love <fx@gnu.org>
parents:
diff changeset
6570 *** Setting face attributes.
Dave Love <fx@gnu.org>
parents:
diff changeset
6571
Dave Love <fx@gnu.org>
parents:
diff changeset
6572 For the most part, the new face implementation is interface-compatible
Dave Love <fx@gnu.org>
parents:
diff changeset
6573 with the old one. Old face attribute related functions are now
Dave Love <fx@gnu.org>
parents:
diff changeset
6574 implemented in terms of the new functions `set-face-attribute' and
Dave Love <fx@gnu.org>
parents:
diff changeset
6575 `face-attribute'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6576
Dave Love <fx@gnu.org>
parents:
diff changeset
6577 Face attributes are identified by their names which are keyword
Dave Love <fx@gnu.org>
parents:
diff changeset
6578 symbols. All attributes can be set to `unspecified'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6579
Dave Love <fx@gnu.org>
parents:
diff changeset
6580 The following attributes are recognized:
Dave Love <fx@gnu.org>
parents:
diff changeset
6581
Dave Love <fx@gnu.org>
parents:
diff changeset
6582 `:family'
Dave Love <fx@gnu.org>
parents:
diff changeset
6583
Dave Love <fx@gnu.org>
parents:
diff changeset
6584 VALUE must be a string specifying the font family, e.g. ``courier'',
Dave Love <fx@gnu.org>
parents:
diff changeset
6585 or a fontset alias name. If a font family is specified, wild-cards `*'
Dave Love <fx@gnu.org>
parents:
diff changeset
6586 and `?' are allowed.
Dave Love <fx@gnu.org>
parents:
diff changeset
6587
Dave Love <fx@gnu.org>
parents:
diff changeset
6588 `:width'
Dave Love <fx@gnu.org>
parents:
diff changeset
6589
Dave Love <fx@gnu.org>
parents:
diff changeset
6590 VALUE specifies the relative proportionate width of the font to use.
Dave Love <fx@gnu.org>
parents:
diff changeset
6591 It must be one of the symbols `ultra-condensed', `extra-condensed',
Dave Love <fx@gnu.org>
parents:
diff changeset
6592 `condensed', `semi-condensed', `normal', `semi-expanded', `expanded',
Dave Love <fx@gnu.org>
parents:
diff changeset
6593 `extra-expanded', or `ultra-expanded'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6594
Dave Love <fx@gnu.org>
parents:
diff changeset
6595 `:height'
Dave Love <fx@gnu.org>
parents:
diff changeset
6596
31183
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6597 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
6598 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
6599 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
6600 height (from the underlying face), and should return the new height.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6601
Dave Love <fx@gnu.org>
parents:
diff changeset
6602 `:weight'
Dave Love <fx@gnu.org>
parents:
diff changeset
6603
Dave Love <fx@gnu.org>
parents:
diff changeset
6604 VALUE specifies the weight of the font to use. It must be one of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6605 symbols `ultra-bold', `extra-bold', `bold', `semi-bold', `normal',
Dave Love <fx@gnu.org>
parents:
diff changeset
6606 `semi-light', `light', `extra-light', `ultra-light'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6607
Dave Love <fx@gnu.org>
parents:
diff changeset
6608 `:slant'
Dave Love <fx@gnu.org>
parents:
diff changeset
6609
Dave Love <fx@gnu.org>
parents:
diff changeset
6610 VALUE specifies the slant of the font to use. It must be one of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6611 symbols `italic', `oblique', `normal', `reverse-italic', or
Dave Love <fx@gnu.org>
parents:
diff changeset
6612 `reverse-oblique'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6613
Dave Love <fx@gnu.org>
parents:
diff changeset
6614 `:foreground', `:background'
Dave Love <fx@gnu.org>
parents:
diff changeset
6615
Dave Love <fx@gnu.org>
parents:
diff changeset
6616 VALUE must be a color name, a string.
Dave Love <fx@gnu.org>
parents:
diff changeset
6617
Dave Love <fx@gnu.org>
parents:
diff changeset
6618 `:underline'
Dave Love <fx@gnu.org>
parents:
diff changeset
6619
Dave Love <fx@gnu.org>
parents:
diff changeset
6620 VALUE specifies whether characters in FACE should be underlined. If
Dave Love <fx@gnu.org>
parents:
diff changeset
6621 VALUE is t, underline with foreground color of the face. If VALUE is
Dave Love <fx@gnu.org>
parents:
diff changeset
6622 a string, underline with that color. If VALUE is nil, explicitly
Dave Love <fx@gnu.org>
parents:
diff changeset
6623 don't underline.
Dave Love <fx@gnu.org>
parents:
diff changeset
6624
Dave Love <fx@gnu.org>
parents:
diff changeset
6625 `:overline'
Dave Love <fx@gnu.org>
parents:
diff changeset
6626
Dave Love <fx@gnu.org>
parents:
diff changeset
6627 VALUE specifies whether characters in FACE should be overlined. If
Dave Love <fx@gnu.org>
parents:
diff changeset
6628 VALUE is t, overline with foreground color of the face. If VALUE is a
Dave Love <fx@gnu.org>
parents:
diff changeset
6629 string, overline with that color. If VALUE is nil, explicitly don't
Dave Love <fx@gnu.org>
parents:
diff changeset
6630 overline.
Dave Love <fx@gnu.org>
parents:
diff changeset
6631
Dave Love <fx@gnu.org>
parents:
diff changeset
6632 `:strike-through'
Dave Love <fx@gnu.org>
parents:
diff changeset
6633
Dave Love <fx@gnu.org>
parents:
diff changeset
6634 VALUE specifies whether characters in FACE should be drawn with a line
Dave Love <fx@gnu.org>
parents:
diff changeset
6635 striking through them. If VALUE is t, use the foreground color of the
Dave Love <fx@gnu.org>
parents:
diff changeset
6636 face. If VALUE is a string, strike-through with that color. If VALUE
Dave Love <fx@gnu.org>
parents:
diff changeset
6637 is nil, explicitly don't strike through.
Dave Love <fx@gnu.org>
parents:
diff changeset
6638
Dave Love <fx@gnu.org>
parents:
diff changeset
6639 `:box'
Dave Love <fx@gnu.org>
parents:
diff changeset
6640
Dave Love <fx@gnu.org>
parents:
diff changeset
6641 VALUE specifies whether characters in FACE should have a box drawn
Dave Love <fx@gnu.org>
parents:
diff changeset
6642 around them. If VALUE is nil, explicitly don't draw boxes. If
Dave Love <fx@gnu.org>
parents:
diff changeset
6643 VALUE is t, draw a box with lines of width 1 in the foreground color
Dave Love <fx@gnu.org>
parents:
diff changeset
6644 of the face. If VALUE is a string, the string must be a color name,
Dave Love <fx@gnu.org>
parents:
diff changeset
6645 and the box is drawn in that color with a line width of 1. Otherwise,
Dave Love <fx@gnu.org>
parents:
diff changeset
6646 VALUE must be a property list of the form `(:line-width WIDTH
Dave Love <fx@gnu.org>
parents:
diff changeset
6647 :color COLOR :style STYLE)'. If a keyword/value pair is missing from
Dave Love <fx@gnu.org>
parents:
diff changeset
6648 the property list, a default value will be used for the value, as
Dave Love <fx@gnu.org>
parents:
diff changeset
6649 specified below. WIDTH specifies the width of the lines to draw; it
Dave Love <fx@gnu.org>
parents:
diff changeset
6650 defaults to 1. COLOR is the name of the color to draw in, default is
Dave Love <fx@gnu.org>
parents:
diff changeset
6651 the foreground color of the face for simple boxes, and the background
Dave Love <fx@gnu.org>
parents:
diff changeset
6652 color of the face for 3D boxes. STYLE specifies whether a 3D box
Dave Love <fx@gnu.org>
parents:
diff changeset
6653 should be draw. If STYLE is `released-button', draw a box looking
Dave Love <fx@gnu.org>
parents:
diff changeset
6654 like a released 3D button. If STYLE is `pressed-button' draw a box
Dave Love <fx@gnu.org>
parents:
diff changeset
6655 that appears like a pressed button. If STYLE is nil, the default if
Dave Love <fx@gnu.org>
parents:
diff changeset
6656 the property list doesn't contain a style specification, draw a 2D
Dave Love <fx@gnu.org>
parents:
diff changeset
6657 box.
Dave Love <fx@gnu.org>
parents:
diff changeset
6658
Dave Love <fx@gnu.org>
parents:
diff changeset
6659 `:inverse-video'
Dave Love <fx@gnu.org>
parents:
diff changeset
6660
Dave Love <fx@gnu.org>
parents:
diff changeset
6661 VALUE specifies whether characters in FACE should be displayed in
Dave Love <fx@gnu.org>
parents:
diff changeset
6662 inverse video. VALUE must be one of t or nil.
Dave Love <fx@gnu.org>
parents:
diff changeset
6663
Dave Love <fx@gnu.org>
parents:
diff changeset
6664 `:stipple'
Dave Love <fx@gnu.org>
parents:
diff changeset
6665
Dave Love <fx@gnu.org>
parents:
diff changeset
6666 If VALUE is a string, it must be the name of a file of pixmap data.
Dave Love <fx@gnu.org>
parents:
diff changeset
6667 The directories listed in the `x-bitmap-file-path' variable are
Dave Love <fx@gnu.org>
parents:
diff changeset
6668 searched. Alternatively, VALUE may be a list of the form (WIDTH
Dave Love <fx@gnu.org>
parents:
diff changeset
6669 HEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA
Dave Love <fx@gnu.org>
parents:
diff changeset
6670 is a string containing the raw bits of the bitmap. VALUE nil means
Dave Love <fx@gnu.org>
parents:
diff changeset
6671 explicitly don't use a stipple pattern.
Dave Love <fx@gnu.org>
parents:
diff changeset
6672
Dave Love <fx@gnu.org>
parents:
diff changeset
6673 For convenience, attributes `:family', `:width', `:height', `:weight',
Dave Love <fx@gnu.org>
parents:
diff changeset
6674 and `:slant' may also be set in one step from an X font name:
Dave Love <fx@gnu.org>
parents:
diff changeset
6675
Dave Love <fx@gnu.org>
parents:
diff changeset
6676 `:font'
Dave Love <fx@gnu.org>
parents:
diff changeset
6677
Dave Love <fx@gnu.org>
parents:
diff changeset
6678 Set font-related face attributes from VALUE. VALUE must be a valid
Dave Love <fx@gnu.org>
parents:
diff changeset
6679 XLFD font name. If it is a font name pattern, the first matching font
Dave Love <fx@gnu.org>
parents:
diff changeset
6680 is used--this is for compatibility with the behavior of previous
Dave Love <fx@gnu.org>
parents:
diff changeset
6681 versions of Emacs.
Dave Love <fx@gnu.org>
parents:
diff changeset
6682
Dave Love <fx@gnu.org>
parents:
diff changeset
6683 For compatibility with Emacs 20, keywords `:bold' and `:italic' can
Dave Love <fx@gnu.org>
parents:
diff changeset
6684 be used to specify that a bold or italic font should be used. VALUE
Dave Love <fx@gnu.org>
parents:
diff changeset
6685 must be t or nil in that case. A value of `unspecified' is not allowed."
Dave Love <fx@gnu.org>
parents:
diff changeset
6686
Dave Love <fx@gnu.org>
parents:
diff changeset
6687 Please see also the documentation of `set-face-attribute' and
Dave Love <fx@gnu.org>
parents:
diff changeset
6688 `defface'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6689
31183
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6690 `:inherit'
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6691
cb5d69bcd655 Add description of new :inherit face attribute, and additional legal
Miles Bader <miles@gnu.org>
parents: 31156
diff changeset
6692 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
6693 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
6694 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
6695
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6696 *** Face attributes and X resources
Dave Love <fx@gnu.org>
parents:
diff changeset
6697
Dave Love <fx@gnu.org>
parents:
diff changeset
6698 The following X resource names can be used to set face attributes
Dave Love <fx@gnu.org>
parents:
diff changeset
6699 from X resources:
Dave Love <fx@gnu.org>
parents:
diff changeset
6700
Dave Love <fx@gnu.org>
parents:
diff changeset
6701 Face attribute X resource class
Dave Love <fx@gnu.org>
parents:
diff changeset
6702 -----------------------------------------------------------------------
Dave Love <fx@gnu.org>
parents:
diff changeset
6703 :family attributeFamily . Face.AttributeFamily
Dave Love <fx@gnu.org>
parents:
diff changeset
6704 :width attributeWidth Face.AttributeWidth
Dave Love <fx@gnu.org>
parents:
diff changeset
6705 :height attributeHeight Face.AttributeHeight
Dave Love <fx@gnu.org>
parents:
diff changeset
6706 :weight attributeWeight Face.AttributeWeight
Dave Love <fx@gnu.org>
parents:
diff changeset
6707 :slant attributeSlant Face.AttributeSlant
Dave Love <fx@gnu.org>
parents:
diff changeset
6708 foreground attributeForeground Face.AttributeForeground
Dave Love <fx@gnu.org>
parents:
diff changeset
6709 :background attributeBackground . Face.AttributeBackground
Dave Love <fx@gnu.org>
parents:
diff changeset
6710 :overline attributeOverline Face.AttributeOverline
Dave Love <fx@gnu.org>
parents:
diff changeset
6711 :strike-through attributeStrikeThrough Face.AttributeStrikeThrough
Dave Love <fx@gnu.org>
parents:
diff changeset
6712 :box attributeBox Face.AttributeBox
Dave Love <fx@gnu.org>
parents:
diff changeset
6713 :underline attributeUnderline Face.AttributeUnderline
Dave Love <fx@gnu.org>
parents:
diff changeset
6714 :inverse-video attributeInverse Face.AttributeInverse
Dave Love <fx@gnu.org>
parents:
diff changeset
6715 :stipple attributeStipple Face.AttributeStipple
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
6716 or attributeBackgroundPixmap
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6717 Face.AttributeBackgroundPixmap
Dave Love <fx@gnu.org>
parents:
diff changeset
6718 :font attributeFont Face.AttributeFont
Dave Love <fx@gnu.org>
parents:
diff changeset
6719 :bold attributeBold Face.AttributeBold
Dave Love <fx@gnu.org>
parents:
diff changeset
6720 :italic attributeItalic . Face.AttributeItalic
Dave Love <fx@gnu.org>
parents:
diff changeset
6721 :font attributeFont Face.AttributeFont
Dave Love <fx@gnu.org>
parents:
diff changeset
6722
Dave Love <fx@gnu.org>
parents:
diff changeset
6723 *** Text property `face'.
Dave Love <fx@gnu.org>
parents:
diff changeset
6724
Dave Love <fx@gnu.org>
parents:
diff changeset
6725 The value of the `face' text property can now be a single face
Dave Love <fx@gnu.org>
parents:
diff changeset
6726 specification or a list of such specifications. Each face
Dave Love <fx@gnu.org>
parents:
diff changeset
6727 specification can be
Dave Love <fx@gnu.org>
parents:
diff changeset
6728
Dave Love <fx@gnu.org>
parents:
diff changeset
6729 1. A symbol or string naming a Lisp face.
Dave Love <fx@gnu.org>
parents:
diff changeset
6730
Dave Love <fx@gnu.org>
parents:
diff changeset
6731 2. A property list of the form (KEYWORD VALUE ...) where each
Dave Love <fx@gnu.org>
parents:
diff changeset
6732 KEYWORD is a face attribute name, and VALUE is an appropriate value
Dave Love <fx@gnu.org>
parents:
diff changeset
6733 for that attribute. Please see the doc string of `set-face-attribute'
Dave Love <fx@gnu.org>
parents:
diff changeset
6734 for face attribute names.
Dave Love <fx@gnu.org>
parents:
diff changeset
6735
Dave Love <fx@gnu.org>
parents:
diff changeset
6736 3. Conses of the form (FOREGROUND-COLOR . COLOR) or
Dave Love <fx@gnu.org>
parents:
diff changeset
6737 (BACKGROUND-COLOR . COLOR) where COLOR is a color name. This is
Dave Love <fx@gnu.org>
parents:
diff changeset
6738 for compatibility with previous Emacs versions.
Dave Love <fx@gnu.org>
parents:
diff changeset
6739
Dave Love <fx@gnu.org>
parents:
diff changeset
6740 ** Support functions for colors on text-only terminals.
Dave Love <fx@gnu.org>
parents:
diff changeset
6741
27092
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6742 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
6743 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
6744 the terminal. Emacs defines a couple of common color mappings by
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6745 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
6746 `defined-colors'. The function `tty-color-clear' can be
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6747 used to clear the mapping table.
Dave Love <fx@gnu.org>
parents:
diff changeset
6748
27092
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6749 ** 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
6750
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6751 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
6752 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
6753 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
6754 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
6755 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
6756 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
6757 `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
6758 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
6759 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
6760 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
6761
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6762 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
6763 any frame type.
60f5b0f50db9 Document the unified frame-independent support for colors and faces.
Eli Zaretskii <eliz@gnu.org>
parents: 27076
diff changeset
6764
27573
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6765 ** Platform-independent functions to describe display capabilities.
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6766
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6767 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
6768 `display-graphic-p', `display-selections-p', `display-screens',
32f4457e5501 Document functions which return display capabilities.
Eli Zaretskii <eliz@gnu.org>
parents: 27533
diff changeset
6769 `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
6770 `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
6771 `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
6772 `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
6773 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
6774 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
6775 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
6776
38471
83fa544a8070 Document display-images-p.
Eli Zaretskii <eliz@gnu.org>
parents: 38468
diff changeset
6777 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
6778 display can display image files.
83fa544a8070 Document display-images-p.
Eli Zaretskii <eliz@gnu.org>
parents: 38468
diff changeset
6779
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6780 ** 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
6781
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6782 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
6783 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
6784 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
6785 `Inviolable' option.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6786
43184
de686446afd2 Fix description of minibuffer-prompt-end.
Andreas Schwab <schwab@suse.de>
parents: 43159
diff changeset
6787 The function `minibuffer-prompt-end' returns the current position of the
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6788 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
6789 Otherwise, it returns `(point-min)'.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6790
26062
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6791 ** New `field' abstraction in buffers.
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6792
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6793 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
6794 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
6795 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
6796
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6797 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
6798 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
6799 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
6800 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
6801 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
6802 boundaries can be suppressed programmatically by binding
46becbc67703 inhibit-field-text-motion
Gerd Moellmann <gerd@gnu.org>
parents: 27136
diff changeset
6803 `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
6804 functions.
26062
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6805
fd35581d53c1 Add Miles Bader's description of fields.
Gerd Moellmann <gerd@gnu.org>
parents: 26034
diff changeset
6806 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
6807 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
6808 editing commands treat the user's text separately from the prompt.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6809
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6810 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
6811
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6812 - 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
6813
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6814 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
6815
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6816 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
6817 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
6818 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
6819
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6820 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
6821 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
6822 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
6823 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
6824 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
6825 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
6826 fields. Additionally, if two fields are separated by another field with
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6827 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
6828 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
6829
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6830 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
6831 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
6832 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
6833 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
6834 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
6835
30776
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6836 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
6837 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
6838
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6839 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
6840
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6841 - Function: delete-field &optional POS
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6842
ec759fa10ad9 Update `fields' entry.
Miles Bader <miles@gnu.org>
parents: 30759
diff changeset
6843 Delete the field surrounding POS.
26300
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6844 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
6845 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
6846
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6847 - 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
6848
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6849 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
6850 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
6851 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
6852 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
6853 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
6854
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6855 - 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
6856
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6857 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
6858 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
6859 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
6860 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
6861 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
6862
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6863 - Function: field-string &optional POS
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6864
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6865 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
6866 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
6867 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
6868
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6869 - 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
6870
25356c16306f Expanded description of `field' property from Miles Bader.
Gerd Moellmann <gerd@gnu.org>
parents: 26292
diff changeset
6871 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
6872 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
6873 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
6874
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6875 ** Image support.
Dave Love <fx@gnu.org>
parents:
diff changeset
6876
Dave Love <fx@gnu.org>
parents:
diff changeset
6877 Emacs can now display images. Images are inserted into text by giving
Dave Love <fx@gnu.org>
parents:
diff changeset
6878 strings or buffer text a `display' text property containing one of
Dave Love <fx@gnu.org>
parents:
diff changeset
6879 (AREA IMAGE) or IMAGE. The display of the `display' property value
Dave Love <fx@gnu.org>
parents:
diff changeset
6880 replaces the display of the characters having that property.
Dave Love <fx@gnu.org>
parents:
diff changeset
6881
Dave Love <fx@gnu.org>
parents:
diff changeset
6882 If the property value has the form (AREA IMAGE), AREA must be one of
Dave Love <fx@gnu.org>
parents:
diff changeset
6883 `(margin left-margin)', `(margin right-margin)' or `(margin nil)'. If
Dave Love <fx@gnu.org>
parents:
diff changeset
6884 AREA is `(margin nil)', IMAGE will be displayed in the text area of a
Dave Love <fx@gnu.org>
parents:
diff changeset
6885 window, otherwise it will be displayed in the left or right marginal
Dave Love <fx@gnu.org>
parents:
diff changeset
6886 area.
Dave Love <fx@gnu.org>
parents:
diff changeset
6887
Dave Love <fx@gnu.org>
parents:
diff changeset
6888 IMAGE is an image specification.
Dave Love <fx@gnu.org>
parents:
diff changeset
6889
Dave Love <fx@gnu.org>
parents:
diff changeset
6890 *** Image specifications
Dave Love <fx@gnu.org>
parents:
diff changeset
6891
Dave Love <fx@gnu.org>
parents:
diff changeset
6892 Image specifications are lists of the form `(image PROPS)' where PROPS
Dave Love <fx@gnu.org>
parents:
diff changeset
6893 is a property list whose keys are keyword symbols. Each
Dave Love <fx@gnu.org>
parents:
diff changeset
6894 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
6895 symbol specifying the image type, e.g. `xbm'. Properties not
03830fdf5186 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 26397
diff changeset
6896 described below are ignored.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6897
Dave Love <fx@gnu.org>
parents:
diff changeset
6898 The following is a list of properties all image types share.
Dave Love <fx@gnu.org>
parents:
diff changeset
6899
Dave Love <fx@gnu.org>
parents:
diff changeset
6900 `:ascent ASCENT'
Dave Love <fx@gnu.org>
parents:
diff changeset
6901
28789
b69d5f20b837 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28776
diff changeset
6902 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
6903 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
6904 to use for its ascent.
28789
b69d5f20b837 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28776
diff changeset
6905
b69d5f20b837 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28776
diff changeset
6906 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
6907 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
6908
30483
05fc373ff5b8 mention `float-time' and the remote file modtime check
Sam Steingold <sds@gnu.org>
parents: 30482
diff changeset
6909 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
6910 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
6911 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
6912 overlays that apply to the image.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6913
Dave Love <fx@gnu.org>
parents:
diff changeset
6914 `:margin MARGIN'
Dave Love <fx@gnu.org>
parents:
diff changeset
6915
35278
80050ac10dbf *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35250
diff changeset
6916 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
6917 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
6918 horizontal margin and Y specifying the vertical margin. Default is 0.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6919
Dave Love <fx@gnu.org>
parents:
diff changeset
6920 `:relief RELIEF'
Dave Love <fx@gnu.org>
parents:
diff changeset
6921
Dave Love <fx@gnu.org>
parents:
diff changeset
6922 RELIEF is analogous to the `:relief' attribute of faces. Puts a relief
Dave Love <fx@gnu.org>
parents:
diff changeset
6923 around an image.
Dave Love <fx@gnu.org>
parents:
diff changeset
6924
35364
19c93f3ebdce *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35326
diff changeset
6925 `:conversion ALGO'
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6926
31636
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6927 Apply an image algorithm to the image before displaying it.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6928
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6929 ALGO `laplace' or `emboss' means apply a Laplace or ``emboss''
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6930 edge-detection algorithm to the image.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6931
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6932 ALGO `(edge-detection :matrix MATRIX :color-adjust ADJUST)' means
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6933 apply a general edge-detection algorithm. MATRIX must be either a
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6934 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
6935 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
6936 around that position. MATRIX specifies, for each pixel in the
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6937 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
6938 transformed pixel; element 0 specifies the factor for the pixel at
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6939 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
6940 below.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6941
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6942 (x-1/y-1 x/y-1 x+1/y-1
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6943 x-1/y x/y x+1/y
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6944 x-1/y+1 x/y+1 x+1/y+1)
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6945
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6946 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
6947 resulting from summing up the RGB values of surrounding pixels,
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6948 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
6949 of the factors' absolute values.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6950
31858
269d69b69fe4 Update hideshow.el section.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 31827
diff changeset
6951 Laplace edge-detection currently uses a matrix of
31636
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6952
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6953 (1 0 0
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6954 0 0 0
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6955 9 9 -1)
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6956
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6957 Emboss edge-detection uses a matrix of
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 ( 2 -1 0
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6960 -1 0 1
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6961 0 1 -2)
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6962
31728
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
6963 ALGO `disabled' means transform the image so that it looks
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
6964 ``disabled''.
1b791fcfaa10 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31641
diff changeset
6965
31636
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6966 `:mask MASK'
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6967
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6968 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
6969 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
6970 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
6971 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
6972 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
6973 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
6974 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
6975 image.
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6976
3ff1515f7c7a *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31561
diff changeset
6977 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
6978 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
6979 `:mask nil'.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6980
Dave Love <fx@gnu.org>
parents:
diff changeset
6981 `:file FILE'
Dave Love <fx@gnu.org>
parents:
diff changeset
6982
Dave Love <fx@gnu.org>
parents:
diff changeset
6983 Load image from FILE. If FILE is not absolute after expanding it,
Dave Love <fx@gnu.org>
parents:
diff changeset
6984 search for the image in `data-directory'. Some image types support
Dave Love <fx@gnu.org>
parents:
diff changeset
6985 building images from data. When this is done, no `:file' property
Dave Love <fx@gnu.org>
parents:
diff changeset
6986 may be present in the image specification.
Dave Love <fx@gnu.org>
parents:
diff changeset
6987
27076
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
6988 `:data DATA'
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
6989
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
6990 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
6991 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
6992 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
6993 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
6994
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6995 *** Supported image types
Dave Love <fx@gnu.org>
parents:
diff changeset
6996
26034
e7b463705814 Some typos fixed.
Gerd Moellmann <gerd@gnu.org>
parents: 26030
diff changeset
6997 **** XBM, image type `xbm'.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
6998
Dave Love <fx@gnu.org>
parents:
diff changeset
6999 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
7000 properties supported are:
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7001
Dave Love <fx@gnu.org>
parents:
diff changeset
7002 `:foreground FG'
Dave Love <fx@gnu.org>
parents:
diff changeset
7003
37948
3025939a637d Add that PBM and XPM image specs may have :foreground nil, and
Gerd Moellmann <gerd@gnu.org>
parents: 37933
diff changeset
7004 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
7005 meaning to use the default. Default is the frame's foreground color.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7006
32572
99b7b88db80c Fix a typo.
Eli Zaretskii <eliz@gnu.org>
parents: 32551
diff changeset
7007 `:background BG'
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7008
49520
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7009 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
7010 meaning to use the default. Default is the frame's background color.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7011
Dave Love <fx@gnu.org>
parents:
diff changeset
7012 XBM images can be constructed from data instead of file. In this
Dave Love <fx@gnu.org>
parents:
diff changeset
7013 case, the image specification must contain the following properties
Dave Love <fx@gnu.org>
parents:
diff changeset
7014 instead of a `:file' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7015
Dave Love <fx@gnu.org>
parents:
diff changeset
7016 `:width WIDTH'
Dave Love <fx@gnu.org>
parents:
diff changeset
7017
Dave Love <fx@gnu.org>
parents:
diff changeset
7018 WIDTH specifies the width of the image in pixels.
Dave Love <fx@gnu.org>
parents:
diff changeset
7019
Dave Love <fx@gnu.org>
parents:
diff changeset
7020 `:height HEIGHT'
Dave Love <fx@gnu.org>
parents:
diff changeset
7021
Dave Love <fx@gnu.org>
parents:
diff changeset
7022 HEIGHT specifies the height of the image in pixels.
Dave Love <fx@gnu.org>
parents:
diff changeset
7023
Dave Love <fx@gnu.org>
parents:
diff changeset
7024 `:data DATA'
Dave Love <fx@gnu.org>
parents:
diff changeset
7025
Dave Love <fx@gnu.org>
parents:
diff changeset
7026 DATA must be either
Dave Love <fx@gnu.org>
parents:
diff changeset
7027
Dave Love <fx@gnu.org>
parents:
diff changeset
7028 1. a string large enough to hold the bitmap data, i.e. it must
Dave Love <fx@gnu.org>
parents:
diff changeset
7029 have a size >= (WIDTH + 7) / 8 * HEIGHT
Dave Love <fx@gnu.org>
parents:
diff changeset
7030
Dave Love <fx@gnu.org>
parents:
diff changeset
7031 2. a bool-vector of size >= WIDTH * HEIGHT
Dave Love <fx@gnu.org>
parents:
diff changeset
7032
Dave Love <fx@gnu.org>
parents:
diff changeset
7033 3. a vector of strings or bool-vectors, one for each line of the
Dave Love <fx@gnu.org>
parents:
diff changeset
7034 bitmap.
Dave Love <fx@gnu.org>
parents:
diff changeset
7035
28748
6d96f2643b05 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28724
diff changeset
7036 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
7037 height may be specified in this case because these are defined
6d96f2643b05 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28724
diff changeset
7038 in the file.
6d96f2643b05 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28724
diff changeset
7039
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7040 **** XPM, image type `xpm'
Dave Love <fx@gnu.org>
parents:
diff changeset
7041
Dave Love <fx@gnu.org>
parents:
diff changeset
7042 XPM images require the external library `libXpm', package
Dave Love <fx@gnu.org>
parents:
diff changeset
7043 `xpm-3.4k.tar.gz', version 3.4k or later. Make sure the library is
Dave Love <fx@gnu.org>
parents:
diff changeset
7044 found when Emacs is configured by supplying appropriate paths via
Dave Love <fx@gnu.org>
parents:
diff changeset
7045 `--x-includes' and `--x-libraries'.
Dave Love <fx@gnu.org>
parents:
diff changeset
7046
Dave Love <fx@gnu.org>
parents:
diff changeset
7047 Additional image properties supported are:
Dave Love <fx@gnu.org>
parents:
diff changeset
7048
Dave Love <fx@gnu.org>
parents:
diff changeset
7049 `:color-symbols SYMBOLS'
Dave Love <fx@gnu.org>
parents:
diff changeset
7050
Dave Love <fx@gnu.org>
parents:
diff changeset
7051 SYMBOLS must be a list of pairs (NAME . COLOR), with NAME being the
Dave Love <fx@gnu.org>
parents:
diff changeset
7052 name of color as it appears in an XPM file, and COLOR being an X color
Dave Love <fx@gnu.org>
parents:
diff changeset
7053 name.
Dave Love <fx@gnu.org>
parents:
diff changeset
7054
Dave Love <fx@gnu.org>
parents:
diff changeset
7055 XPM images can be built from memory instead of files. In that case,
Dave Love <fx@gnu.org>
parents:
diff changeset
7056 add a `:data' property instead of a `:file' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7057
Dave Love <fx@gnu.org>
parents:
diff changeset
7058 The XPM library uses libz in its implementation so that it is able
Dave Love <fx@gnu.org>
parents:
diff changeset
7059 to display compressed images.
Dave Love <fx@gnu.org>
parents:
diff changeset
7060
Dave Love <fx@gnu.org>
parents:
diff changeset
7061 **** PBM, image type `pbm'
Dave Love <fx@gnu.org>
parents:
diff changeset
7062
Dave Love <fx@gnu.org>
parents:
diff changeset
7063 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
7064 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
7065 mono images are:
32551
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7066
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7067 `:foreground FG'
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7068
37948
3025939a637d Add that PBM and XPM image specs may have :foreground nil, and
Gerd Moellmann <gerd@gnu.org>
parents: 37933
diff changeset
7069 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
7070 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
7071
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7072 `:background FG'
329cbf266d5c Add description of :foreground and :background to PBM images.
Gerd Moellmann <gerd@gnu.org>
parents: 32511
diff changeset
7073
49520
de390d032ae7 Fix typos in description of image properties.
Juanma Barranquero <lekktu@gmail.com>
parents: 49493
diff changeset
7074 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
7075 meaning to use the default. Default is the frame's background color.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7076
Dave Love <fx@gnu.org>
parents:
diff changeset
7077 **** JPEG, image type `jpeg'
Dave Love <fx@gnu.org>
parents:
diff changeset
7078
Dave Love <fx@gnu.org>
parents:
diff changeset
7079 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
7080 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
7081 properties defined.
27055
f43dabd831f2 Support :data for JPEG.
Gerd Moellmann <gerd@gnu.org>
parents: 27045
diff changeset
7082
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7083 **** TIFF, image type `tiff'
Dave Love <fx@gnu.org>
parents:
diff changeset
7084
Dave Love <fx@gnu.org>
parents:
diff changeset
7085 Support for TIFF images requires the external library `libtiff',
Dave Love <fx@gnu.org>
parents:
diff changeset
7086 package `tiff-v3.4-tar.gz', or later. There are no additional image
Dave Love <fx@gnu.org>
parents:
diff changeset
7087 properties defined.
Dave Love <fx@gnu.org>
parents:
diff changeset
7088
Dave Love <fx@gnu.org>
parents:
diff changeset
7089 **** GIF, image type `gif'
Dave Love <fx@gnu.org>
parents:
diff changeset
7090
Dave Love <fx@gnu.org>
parents:
diff changeset
7091 Support for GIF images requires the external library `libungif', package
Dave Love <fx@gnu.org>
parents:
diff changeset
7092 `libungif-4.1.0', or later.
Dave Love <fx@gnu.org>
parents:
diff changeset
7093
Dave Love <fx@gnu.org>
parents:
diff changeset
7094 Additional image properties supported are:
Dave Love <fx@gnu.org>
parents:
diff changeset
7095
Dave Love <fx@gnu.org>
parents:
diff changeset
7096 `:index INDEX'
Dave Love <fx@gnu.org>
parents:
diff changeset
7097
Dave Love <fx@gnu.org>
parents:
diff changeset
7098 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
7099 multi-image GIF file. An error is signaled if INDEX is too large.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7100
Dave Love <fx@gnu.org>
parents:
diff changeset
7101 This could be used to implement limited support for animated GIFs.
Dave Love <fx@gnu.org>
parents:
diff changeset
7102 For example, the following function displays a multi-image GIF file
Dave Love <fx@gnu.org>
parents:
diff changeset
7103 at point-min in the current buffer, switching between sub-images
Dave Love <fx@gnu.org>
parents:
diff changeset
7104 every 0.1 seconds.
Dave Love <fx@gnu.org>
parents:
diff changeset
7105
Dave Love <fx@gnu.org>
parents:
diff changeset
7106 (defun show-anim (file max)
Dave Love <fx@gnu.org>
parents:
diff changeset
7107 "Display multi-image GIF file FILE which contains MAX subimages."
Dave Love <fx@gnu.org>
parents:
diff changeset
7108 (display-anim (current-buffer) file 0 max t))
Dave Love <fx@gnu.org>
parents:
diff changeset
7109
Dave Love <fx@gnu.org>
parents:
diff changeset
7110 (defun display-anim (buffer file idx max first-time)
Dave Love <fx@gnu.org>
parents:
diff changeset
7111 (when (= idx max)
Dave Love <fx@gnu.org>
parents:
diff changeset
7112 (setq idx 0))
27076
40c18bc759e9 Change description of :data for images.
Gerd Moellmann <gerd@gnu.org>
parents: 27055
diff changeset
7113 (let ((img (create-image file nil nil :index idx)))
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7114 (save-excursion
Dave Love <fx@gnu.org>
parents:
diff changeset
7115 (set-buffer buffer)
Dave Love <fx@gnu.org>
parents:
diff changeset
7116 (goto-char (point-min))
Dave Love <fx@gnu.org>
parents:
diff changeset
7117 (unless first-time (delete-char 1))
Dave Love <fx@gnu.org>
parents:
diff changeset
7118 (insert-image img "x"))
Dave Love <fx@gnu.org>
parents:
diff changeset
7119 (run-with-timer 0.1 nil 'display-anim buffer file (1+ idx) max nil)))
Dave Love <fx@gnu.org>
parents:
diff changeset
7120
Dave Love <fx@gnu.org>
parents:
diff changeset
7121 **** PNG, image type `png'
Dave Love <fx@gnu.org>
parents:
diff changeset
7122
Dave Love <fx@gnu.org>
parents:
diff changeset
7123 Support for PNG images requires the external library `libpng',
Dave Love <fx@gnu.org>
parents:
diff changeset
7124 package `libpng-1.0.2.tar.gz', or later. There are no additional image
Dave Love <fx@gnu.org>
parents:
diff changeset
7125 properties defined.
Dave Love <fx@gnu.org>
parents:
diff changeset
7126
Dave Love <fx@gnu.org>
parents:
diff changeset
7127 **** Ghostscript, image type `postscript'.
Dave Love <fx@gnu.org>
parents:
diff changeset
7128
Dave Love <fx@gnu.org>
parents:
diff changeset
7129 Additional image properties supported are:
Dave Love <fx@gnu.org>
parents:
diff changeset
7130
Dave Love <fx@gnu.org>
parents:
diff changeset
7131 `:pt-width WIDTH'
Dave Love <fx@gnu.org>
parents:
diff changeset
7132
Dave Love <fx@gnu.org>
parents:
diff changeset
7133 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
7134 integer. This is a required property.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7135
Dave Love <fx@gnu.org>
parents:
diff changeset
7136 `:pt-height HEIGHT'
Dave Love <fx@gnu.org>
parents:
diff changeset
7137
Dave Love <fx@gnu.org>
parents:
diff changeset
7138 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
7139 must be a integer. This is an required property.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7140
Dave Love <fx@gnu.org>
parents:
diff changeset
7141 `:bounding-box BOX'
Dave Love <fx@gnu.org>
parents:
diff changeset
7142
Dave Love <fx@gnu.org>
parents:
diff changeset
7143 BOX must be a list or vector of 4 integers giving the bounding box of
Dave Love <fx@gnu.org>
parents:
diff changeset
7144 the PS image, analogous to the `BoundingBox' comment found in PS
Dave Love <fx@gnu.org>
parents:
diff changeset
7145 files. This is an required property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7146
Dave Love <fx@gnu.org>
parents:
diff changeset
7147 Part of the Ghostscript interface is implemented in Lisp. See
Dave Love <fx@gnu.org>
parents:
diff changeset
7148 lisp/gs.el.
Dave Love <fx@gnu.org>
parents:
diff changeset
7149
Dave Love <fx@gnu.org>
parents:
diff changeset
7150 *** Lisp interface.
Dave Love <fx@gnu.org>
parents:
diff changeset
7151
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7152 The variable `image-types' contains a list of those image types
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7153 which are supported in the current configuration.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7154
Dave Love <fx@gnu.org>
parents:
diff changeset
7155 Images are stored in an image cache and removed from the cache when
Dave Love <fx@gnu.org>
parents:
diff changeset
7156 they haven't been displayed for `image-cache-eviction-delay seconds.
Dave Love <fx@gnu.org>
parents:
diff changeset
7157 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
7158 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
7159 images with `equal' specifications share the same image.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7160
Dave Love <fx@gnu.org>
parents:
diff changeset
7161 *** Simplified image API, image.el
Dave Love <fx@gnu.org>
parents:
diff changeset
7162
Dave Love <fx@gnu.org>
parents:
diff changeset
7163 The new Lisp package image.el contains functions that simplify image
Dave Love <fx@gnu.org>
parents:
diff changeset
7164 creation and putting images into text. The function `create-image'
Dave Love <fx@gnu.org>
parents:
diff changeset
7165 can be used to create images. The macro `defimage' can be used to
Dave Love <fx@gnu.org>
parents:
diff changeset
7166 define an image based on available image types. The functions
Dave Love <fx@gnu.org>
parents:
diff changeset
7167 `put-image' and `insert-image' can be used to insert an image into a
Dave Love <fx@gnu.org>
parents:
diff changeset
7168 buffer.
Dave Love <fx@gnu.org>
parents:
diff changeset
7169
Dave Love <fx@gnu.org>
parents:
diff changeset
7170 ** Display margins.
Dave Love <fx@gnu.org>
parents:
diff changeset
7171
Dave Love <fx@gnu.org>
parents:
diff changeset
7172 Windows can now have margins which are used for special text
Dave Love <fx@gnu.org>
parents:
diff changeset
7173 and images.
Dave Love <fx@gnu.org>
parents:
diff changeset
7174
Dave Love <fx@gnu.org>
parents:
diff changeset
7175 To give a window margins, either set the buffer-local variables
Dave Love <fx@gnu.org>
parents:
diff changeset
7176 `left-margin-width' and `right-margin-width', or call
Dave Love <fx@gnu.org>
parents:
diff changeset
7177 `set-window-margins'. The function `window-margins' can be used to
Dave Love <fx@gnu.org>
parents:
diff changeset
7178 obtain the current settings. To make `left-margin-width' and
Dave Love <fx@gnu.org>
parents:
diff changeset
7179 `right-margin-width' take effect, you must set them before displaying
Dave Love <fx@gnu.org>
parents:
diff changeset
7180 the buffer in a window, or use `set-window-buffer' to force an update
Dave Love <fx@gnu.org>
parents:
diff changeset
7181 of the display margins.
Dave Love <fx@gnu.org>
parents:
diff changeset
7182
Dave Love <fx@gnu.org>
parents:
diff changeset
7183 You can put text in margins by giving it a `display' text property
Dave Love <fx@gnu.org>
parents:
diff changeset
7184 containing a pair of the form `(LOCATION . VALUE)', where LOCATION is
Dave Love <fx@gnu.org>
parents:
diff changeset
7185 one of `left-margin' or `right-margin' or nil. VALUE can be either a
Dave Love <fx@gnu.org>
parents:
diff changeset
7186 string, an image specification or a stretch specification (see later
Dave Love <fx@gnu.org>
parents:
diff changeset
7187 in this file).
Dave Love <fx@gnu.org>
parents:
diff changeset
7188
Dave Love <fx@gnu.org>
parents:
diff changeset
7189 ** Help display
Dave Love <fx@gnu.org>
parents:
diff changeset
7190
Dave Love <fx@gnu.org>
parents:
diff changeset
7191 Emacs displays short help messages in the echo area, when the mouse
Dave Love <fx@gnu.org>
parents:
diff changeset
7192 moves over a tool-bar item or a piece of text that has a text property
Dave Love <fx@gnu.org>
parents:
diff changeset
7193 `help-echo'. This feature also applies to strings in the mode line
Dave Love <fx@gnu.org>
parents:
diff changeset
7194 that have a `help-echo' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7195
30219
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7196 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
7197 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
7198 the window in which the help was found.
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7199
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7200 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
7201 `help-echo' text property was found.
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7202
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7203 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
7204 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
7205
2047c9586451 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30357
diff changeset
7206 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
7207 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
7208 mouse.
30219
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7209
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7210 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
7211 string, it is evaluated to obtain a help string.
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7212
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7213 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
7214 determine the help to display. If their definition contains a
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7215 property `:help FORM', FORM is evaluated to determine the help string.
87d8ca1f4b52 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30206
diff changeset
7216 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
7217 used as help string.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7218
Dave Love <fx@gnu.org>
parents:
diff changeset
7219 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
7220 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
7221 causes the help display to appear there instead of in the echo area.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7222
Dave Love <fx@gnu.org>
parents:
diff changeset
7223 ** Vertical fractional scrolling.
Dave Love <fx@gnu.org>
parents:
diff changeset
7224
Dave Love <fx@gnu.org>
parents:
diff changeset
7225 The display of text in windows can be scrolled smoothly in pixels.
Dave Love <fx@gnu.org>
parents:
diff changeset
7226 This is useful, for example, for making parts of large images visible.
Dave Love <fx@gnu.org>
parents:
diff changeset
7227
Dave Love <fx@gnu.org>
parents:
diff changeset
7228 The function `window-vscroll' returns the current value of vertical
Dave Love <fx@gnu.org>
parents:
diff changeset
7229 scrolling, a non-negative fraction of the canonical character height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7230 The function `set-window-vscroll' can be used to set the vertical
Dave Love <fx@gnu.org>
parents:
diff changeset
7231 scrolling value. Here is an example of how these function might be
Dave Love <fx@gnu.org>
parents:
diff changeset
7232 used.
Dave Love <fx@gnu.org>
parents:
diff changeset
7233
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7234 (global-set-key [A-down]
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7235 #'(lambda ()
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7236 (interactive)
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7237 (set-window-vscroll (selected-window)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7238 (+ 0.5 (window-vscroll)))))
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7239 (global-set-key [A-up]
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7240 #'(lambda ()
Dave Love <fx@gnu.org>
parents:
diff changeset
7241 (interactive)
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7242 (set-window-vscroll (selected-window)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7243 (- (window-vscroll) 0.5)))))
Dave Love <fx@gnu.org>
parents:
diff changeset
7244
Dave Love <fx@gnu.org>
parents:
diff changeset
7245 ** New hook `fontification-functions'.
Dave Love <fx@gnu.org>
parents:
diff changeset
7246
Dave Love <fx@gnu.org>
parents:
diff changeset
7247 Functions from `fontification-functions' are called from redisplay
Dave Love <fx@gnu.org>
parents:
diff changeset
7248 when it encounters a region of text that is not yet fontified. This
Dave Love <fx@gnu.org>
parents:
diff changeset
7249 variable automatically becomes buffer-local when set. Each function
Dave Love <fx@gnu.org>
parents:
diff changeset
7250 is called with one argument, POS.
Dave Love <fx@gnu.org>
parents:
diff changeset
7251
Dave Love <fx@gnu.org>
parents:
diff changeset
7252 At least one of the hook functions should fontify one or more
Dave Love <fx@gnu.org>
parents:
diff changeset
7253 characters starting at POS in the current buffer. It should mark them
Dave Love <fx@gnu.org>
parents:
diff changeset
7254 as fontified by giving them a non-nil value of the `fontified' text
Dave Love <fx@gnu.org>
parents:
diff changeset
7255 property. It may be reasonable for these functions to check for the
Dave Love <fx@gnu.org>
parents:
diff changeset
7256 `fontified' property and not put it back on, but they do not have to.
Dave Love <fx@gnu.org>
parents:
diff changeset
7257
Dave Love <fx@gnu.org>
parents:
diff changeset
7258 ** Tool bar support.
Dave Love <fx@gnu.org>
parents:
diff changeset
7259
Dave Love <fx@gnu.org>
parents:
diff changeset
7260 Emacs supports a tool bar at the top of a frame under X. The frame
Dave Love <fx@gnu.org>
parents:
diff changeset
7261 parameter `tool-bar-lines' (X resource "toolBar", class "ToolBar")
Dave Love <fx@gnu.org>
parents:
diff changeset
7262 controls how may lines to reserve for the tool bar. A zero value
Dave Love <fx@gnu.org>
parents:
diff changeset
7263 suppresses the tool bar. If the value is non-zero and
Dave Love <fx@gnu.org>
parents:
diff changeset
7264 `auto-resize-tool-bars' is non-nil the tool bar's size will be changed
Dave Love <fx@gnu.org>
parents:
diff changeset
7265 automatically so that all tool bar items are visible.
Dave Love <fx@gnu.org>
parents:
diff changeset
7266
Dave Love <fx@gnu.org>
parents:
diff changeset
7267 *** Tool bar item definitions
Dave Love <fx@gnu.org>
parents:
diff changeset
7268
Dave Love <fx@gnu.org>
parents:
diff changeset
7269 Tool bar items are defined using `define-key' with a prefix-key
Dave Love <fx@gnu.org>
parents:
diff changeset
7270 `tool-bar'. For example `(define-key global-map [tool-bar item1] ITEM)'
Dave Love <fx@gnu.org>
parents:
diff changeset
7271 where ITEM is a list `(menu-item CAPTION BINDING PROPS...)'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7272
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7273 CAPTION is the caption of the item, If it's not a string, it is
Dave Love <fx@gnu.org>
parents:
diff changeset
7274 evaluated to get a string. The caption is currently not displayed in
Dave Love <fx@gnu.org>
parents:
diff changeset
7275 the tool bar, but it is displayed if the item doesn't have a `:help'
Dave Love <fx@gnu.org>
parents:
diff changeset
7276 property (see below).
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7277
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7278 BINDING is the tool bar item's binding. Tool bar items with keymaps as
Dave Love <fx@gnu.org>
parents:
diff changeset
7279 binding are currently ignored.
Dave Love <fx@gnu.org>
parents:
diff changeset
7280
Dave Love <fx@gnu.org>
parents:
diff changeset
7281 The following properties are recognized:
Dave Love <fx@gnu.org>
parents:
diff changeset
7282
Dave Love <fx@gnu.org>
parents:
diff changeset
7283 `:enable FORM'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7284
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7285 FORM is evaluated and specifies whether the tool bar item is enabled
Dave Love <fx@gnu.org>
parents:
diff changeset
7286 or disabled.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7287
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7288 `:visible FORM'
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7289
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7290 FORM is evaluated and specifies whether the tool bar item is displayed.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7291
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7292 `:filter FUNCTION'
Dave Love <fx@gnu.org>
parents:
diff changeset
7293
Dave Love <fx@gnu.org>
parents:
diff changeset
7294 FUNCTION is called with one parameter, the same list BINDING in which
Dave Love <fx@gnu.org>
parents:
diff changeset
7295 FUNCTION is specified as the filter. The value FUNCTION returns is
Dave Love <fx@gnu.org>
parents:
diff changeset
7296 used instead of BINDING to display this item.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7297
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7298 `:button (TYPE SELECTED)'
Dave Love <fx@gnu.org>
parents:
diff changeset
7299
Dave Love <fx@gnu.org>
parents:
diff changeset
7300 TYPE must be one of `:radio' or `:toggle'. SELECTED is evaluated
Dave Love <fx@gnu.org>
parents:
diff changeset
7301 and specifies whether the button is selected (pressed) or not.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7302
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7303 `:image IMAGES'
Dave Love <fx@gnu.org>
parents:
diff changeset
7304
Dave Love <fx@gnu.org>
parents:
diff changeset
7305 IMAGES is either a single image specification or a vector of four
Dave Love <fx@gnu.org>
parents:
diff changeset
7306 image specifications. If it is a vector, this table lists the
Dave Love <fx@gnu.org>
parents:
diff changeset
7307 meaning of each of the four elements:
Dave Love <fx@gnu.org>
parents:
diff changeset
7308
Dave Love <fx@gnu.org>
parents:
diff changeset
7309 Index Use when item is
Dave Love <fx@gnu.org>
parents:
diff changeset
7310 ----------------------------------------
Dave Love <fx@gnu.org>
parents:
diff changeset
7311 0 enabled and selected
Dave Love <fx@gnu.org>
parents:
diff changeset
7312 1 enabled and deselected
Dave Love <fx@gnu.org>
parents:
diff changeset
7313 2 disabled and selected
Dave Love <fx@gnu.org>
parents:
diff changeset
7314 3 disabled and deselected
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7315
28946
f100c3d709e4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28919
diff changeset
7316 If IMAGE is a single image specification, a Laplace edge-detection
f100c3d709e4 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 28919
diff changeset
7317 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
7318
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7319 `:help HELP-STRING'.
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7320
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7321 Gives a help string to display for the tool bar item. This help
Dave Love <fx@gnu.org>
parents:
diff changeset
7322 is displayed when the mouse is moved over the item.
Dave Love <fx@gnu.org>
parents:
diff changeset
7323
31641
15837f59a747 Strokes update. Toolbar stuff.
Dave Love <fx@gnu.org>
parents: 31639
diff changeset
7324 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
7325 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
7326 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
7327 menu bar.
31641
15837f59a747 Strokes update. Toolbar stuff.
Dave Love <fx@gnu.org>
parents: 31639
diff changeset
7328
33484
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
7329 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
7330 dynamically from variable `tool-bar-map' which may be set
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
7331 buffer-locally to override the global map.
e64bda3bd077 *** empty log message ***
Dave Love <fx@gnu.org>
parents: 33411
diff changeset
7332
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7333 *** Tool-bar-related variables.
Dave Love <fx@gnu.org>
parents:
diff changeset
7334
Dave Love <fx@gnu.org>
parents:
diff changeset
7335 If `auto-resize-tool-bar' is non-nil, the tool bar will automatically
Dave Love <fx@gnu.org>
parents:
diff changeset
7336 resize to show all defined tool bar items. It will never grow larger
Dave Love <fx@gnu.org>
parents:
diff changeset
7337 than 1/4 of the frame's size.
Dave Love <fx@gnu.org>
parents:
diff changeset
7338
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7339 If `auto-raise-tool-bar-buttons' is non-nil, tool bar buttons will be
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7340 raised when the mouse moves over them.
Dave Love <fx@gnu.org>
parents:
diff changeset
7341
Dave Love <fx@gnu.org>
parents:
diff changeset
7342 You can add extra space between tool bar items by setting
Dave Love <fx@gnu.org>
parents:
diff changeset
7343 `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
7344 pixels, or a pair of integers (X . Y) specifying horizontal and
80050ac10dbf *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35250
diff changeset
7345 vertical margins . Default is 1.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7346
Dave Love <fx@gnu.org>
parents:
diff changeset
7347 You can change the shadow thickness of tool bar buttons by setting
Dave Love <fx@gnu.org>
parents:
diff changeset
7348 `tool-bar-button-relief' to an integer. Default is 3.
Dave Love <fx@gnu.org>
parents:
diff changeset
7349
Dave Love <fx@gnu.org>
parents:
diff changeset
7350 *** Tool-bar clicks with modifiers.
Dave Love <fx@gnu.org>
parents:
diff changeset
7351
Dave Love <fx@gnu.org>
parents:
diff changeset
7352 You can bind commands to clicks with control, shift, meta etc. on
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7353 a tool bar item. If
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7354
Dave Love <fx@gnu.org>
parents:
diff changeset
7355 (define-key global-map [tool-bar shell]
Dave Love <fx@gnu.org>
parents:
diff changeset
7356 '(menu-item "Shell" shell
Dave Love <fx@gnu.org>
parents:
diff changeset
7357 :image (image :type xpm :file "shell.xpm")))
Dave Love <fx@gnu.org>
parents:
diff changeset
7358
Dave Love <fx@gnu.org>
parents:
diff changeset
7359 is the original tool bar item definition, then
Dave Love <fx@gnu.org>
parents:
diff changeset
7360
Dave Love <fx@gnu.org>
parents:
diff changeset
7361 (define-key global-map [tool-bar S-shell] 'some-command)
Dave Love <fx@gnu.org>
parents:
diff changeset
7362
Dave Love <fx@gnu.org>
parents:
diff changeset
7363 makes a binding to run `some-command' for a shifted click on the same
Dave Love <fx@gnu.org>
parents:
diff changeset
7364 item.
Dave Love <fx@gnu.org>
parents:
diff changeset
7365
Dave Love <fx@gnu.org>
parents:
diff changeset
7366 ** Mode line changes.
Dave Love <fx@gnu.org>
parents:
diff changeset
7367
Dave Love <fx@gnu.org>
parents:
diff changeset
7368 *** Mouse-sensitive mode line.
Dave Love <fx@gnu.org>
parents:
diff changeset
7369
Dave Love <fx@gnu.org>
parents:
diff changeset
7370 The mode line can be made mouse-sensitive by displaying strings there
Dave Love <fx@gnu.org>
parents:
diff changeset
7371 that have a `local-map' text property. There are three ways to display
Dave Love <fx@gnu.org>
parents:
diff changeset
7372 a string with a `local-map' property in the mode line.
Dave Love <fx@gnu.org>
parents:
diff changeset
7373
Dave Love <fx@gnu.org>
parents:
diff changeset
7374 1. The mode line spec contains a variable whose string value has
Dave Love <fx@gnu.org>
parents:
diff changeset
7375 a `local-map' text property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7376
Dave Love <fx@gnu.org>
parents:
diff changeset
7377 2. The mode line spec contains a format specifier (e.g. `%12b'), and
Dave Love <fx@gnu.org>
parents:
diff changeset
7378 that format specifier has a `local-map' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7379
Dave Love <fx@gnu.org>
parents:
diff changeset
7380 3. The mode line spec contains a list containing `:eval FORM'. FORM
Dave Love <fx@gnu.org>
parents:
diff changeset
7381 is evaluated. If the result is a string, and that string has a
Dave Love <fx@gnu.org>
parents:
diff changeset
7382 `local-map' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7383
Dave Love <fx@gnu.org>
parents:
diff changeset
7384 The same mechanism is used to determine the `face' and `help-echo'
Dave Love <fx@gnu.org>
parents:
diff changeset
7385 properties of strings in the mode line. See `bindings.el' for an
Dave Love <fx@gnu.org>
parents:
diff changeset
7386 example.
Dave Love <fx@gnu.org>
parents:
diff changeset
7387
26359
d2970b5d3b72 Add mode line element '(:eval FORM)'.
Gerd Moellmann <gerd@gnu.org>
parents: 26322
diff changeset
7388 *** 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
7389 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
7390
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7391 *** You can suppress mode-line display by setting the buffer-local
Dave Love <fx@gnu.org>
parents:
diff changeset
7392 variable mode-line-format to nil.
Dave Love <fx@gnu.org>
parents:
diff changeset
7393
Dave Love <fx@gnu.org>
parents:
diff changeset
7394 *** A headerline can now be displayed at the top of a window.
Dave Love <fx@gnu.org>
parents:
diff changeset
7395
Dave Love <fx@gnu.org>
parents:
diff changeset
7396 This mode line's contents are controlled by the new variable
Dave Love <fx@gnu.org>
parents:
diff changeset
7397 `header-line-format' and `default-header-line-format' which are
Dave Love <fx@gnu.org>
parents:
diff changeset
7398 completely analogous to `mode-line-format' and
Dave Love <fx@gnu.org>
parents:
diff changeset
7399 `default-mode-line-format'. A value of nil means don't display a top
Dave Love <fx@gnu.org>
parents:
diff changeset
7400 line.
Dave Love <fx@gnu.org>
parents:
diff changeset
7401
Dave Love <fx@gnu.org>
parents:
diff changeset
7402 The appearance of top mode lines is controlled by the face
Dave Love <fx@gnu.org>
parents:
diff changeset
7403 `header-line'.
Dave Love <fx@gnu.org>
parents:
diff changeset
7404
Dave Love <fx@gnu.org>
parents:
diff changeset
7405 The function `coordinates-in-window-p' returns `header-line' for a
Dave Love <fx@gnu.org>
parents:
diff changeset
7406 position in the header-line.
Dave Love <fx@gnu.org>
parents:
diff changeset
7407
Dave Love <fx@gnu.org>
parents:
diff changeset
7408 ** Text property `display'
Dave Love <fx@gnu.org>
parents:
diff changeset
7409
31827
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7410 The `display' text property is used to insert images into text,
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7411 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
7412 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
7413 the `display' property should be a display specification, as described
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7414 below, or a list or vector containing display specifications.
Dave Love <fx@gnu.org>
parents:
diff changeset
7415
31827
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7416 *** Replacing text, displaying text in marginal areas
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7417
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7418 To replace the text having the `display' property with some other
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7419 text, use a display specification of the form `(LOCATION STRING)'.
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7420
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7421 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
7422 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
7423 the right marginal area, and if LOCATION is `(margin nil)' STRING
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7424 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
7425 simpler form STRING as property value.
7c50babd3f4f *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 31816
diff changeset
7426
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7427 *** Variable width and height spaces
Dave Love <fx@gnu.org>
parents:
diff changeset
7428
Dave Love <fx@gnu.org>
parents:
diff changeset
7429 To display a space of fractional width or height, use a display
Dave Love <fx@gnu.org>
parents:
diff changeset
7430 specification of the form `(LOCATION STRECH)'. If LOCATION is
Dave Love <fx@gnu.org>
parents:
diff changeset
7431 `(margin left-margin)', the space is displayed in the left marginal
Dave Love <fx@gnu.org>
parents:
diff changeset
7432 area, if it is `(margin right-margin)', it is displayed in the right
Dave Love <fx@gnu.org>
parents:
diff changeset
7433 marginal area, and if LOCATION is `(margin nil)' the space is
Dave Love <fx@gnu.org>
parents:
diff changeset
7434 displayed in the text. In the latter case you can also use the
Dave Love <fx@gnu.org>
parents:
diff changeset
7435 simpler form STRETCH as property value.
Dave Love <fx@gnu.org>
parents:
diff changeset
7436
Dave Love <fx@gnu.org>
parents:
diff changeset
7437 The stretch specification STRETCH itself is a list of the form `(space
Dave Love <fx@gnu.org>
parents:
diff changeset
7438 PROPS)', where PROPS is a property list which can contain the
Dave Love <fx@gnu.org>
parents:
diff changeset
7439 properties described below.
Dave Love <fx@gnu.org>
parents:
diff changeset
7440
Dave Love <fx@gnu.org>
parents:
diff changeset
7441 The display of the fractional space replaces the display of the
Dave Love <fx@gnu.org>
parents:
diff changeset
7442 characters having the `display' property.
Dave Love <fx@gnu.org>
parents:
diff changeset
7443
Dave Love <fx@gnu.org>
parents:
diff changeset
7444 - :width WIDTH
Dave Love <fx@gnu.org>
parents:
diff changeset
7445
Dave Love <fx@gnu.org>
parents:
diff changeset
7446 Specifies that the space width should be WIDTH times the normal
Dave Love <fx@gnu.org>
parents:
diff changeset
7447 character width. WIDTH can be an integer or floating point number.
Dave Love <fx@gnu.org>
parents:
diff changeset
7448
Dave Love <fx@gnu.org>
parents:
diff changeset
7449 - :relative-width FACTOR
Dave Love <fx@gnu.org>
parents:
diff changeset
7450
Dave Love <fx@gnu.org>
parents:
diff changeset
7451 Specifies that the width of the stretch should be computed from the
Dave Love <fx@gnu.org>
parents:
diff changeset
7452 first character in a group of consecutive characters that have the
Dave Love <fx@gnu.org>
parents:
diff changeset
7453 same `display' property. The computation is done by multiplying the
Dave Love <fx@gnu.org>
parents:
diff changeset
7454 width of that character by FACTOR.
Dave Love <fx@gnu.org>
parents:
diff changeset
7455
Dave Love <fx@gnu.org>
parents:
diff changeset
7456 - :align-to HPOS
Dave Love <fx@gnu.org>
parents:
diff changeset
7457
Dave Love <fx@gnu.org>
parents:
diff changeset
7458 Specifies that the space should be wide enough to reach HPOS. The
Dave Love <fx@gnu.org>
parents:
diff changeset
7459 value HPOS is measured in units of the normal character width.
Dave Love <fx@gnu.org>
parents:
diff changeset
7460
Dave Love <fx@gnu.org>
parents:
diff changeset
7461 Exactly one of the above properties should be used.
Dave Love <fx@gnu.org>
parents:
diff changeset
7462
Dave Love <fx@gnu.org>
parents:
diff changeset
7463 - :height HEIGHT
Dave Love <fx@gnu.org>
parents:
diff changeset
7464
Dave Love <fx@gnu.org>
parents:
diff changeset
7465 Specifies the height of the space, as HEIGHT, measured in terms of the
Dave Love <fx@gnu.org>
parents:
diff changeset
7466 normal line height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7467
Dave Love <fx@gnu.org>
parents:
diff changeset
7468 - :relative-height FACTOR
Dave Love <fx@gnu.org>
parents:
diff changeset
7469
Dave Love <fx@gnu.org>
parents:
diff changeset
7470 The height of the space is computed as the product of the height
Dave Love <fx@gnu.org>
parents:
diff changeset
7471 of the text having the `display' property and FACTOR.
Dave Love <fx@gnu.org>
parents:
diff changeset
7472
Dave Love <fx@gnu.org>
parents:
diff changeset
7473 - :ascent ASCENT
Dave Love <fx@gnu.org>
parents:
diff changeset
7474
Dave Love <fx@gnu.org>
parents:
diff changeset
7475 Specifies that ASCENT percent of the height of the stretch should be
Dave Love <fx@gnu.org>
parents:
diff changeset
7476 used for the ascent of the stretch, i.e. for the part above the
Dave Love <fx@gnu.org>
parents:
diff changeset
7477 baseline. The value of ASCENT must be a non-negative number less or
Dave Love <fx@gnu.org>
parents:
diff changeset
7478 equal to 100.
Dave Love <fx@gnu.org>
parents:
diff changeset
7479
Dave Love <fx@gnu.org>
parents:
diff changeset
7480 You should not use both `:height' and `:relative-height' together.
Dave Love <fx@gnu.org>
parents:
diff changeset
7481
Dave Love <fx@gnu.org>
parents:
diff changeset
7482 *** Images
Dave Love <fx@gnu.org>
parents:
diff changeset
7483
Dave Love <fx@gnu.org>
parents:
diff changeset
7484 A display specification for an image has the form `(LOCATION
Dave Love <fx@gnu.org>
parents:
diff changeset
7485 . IMAGE)', where IMAGE is an image specification. The image replaces,
Dave Love <fx@gnu.org>
parents:
diff changeset
7486 in the display, the characters having this display specification in
Dave Love <fx@gnu.org>
parents:
diff changeset
7487 their `display' text property. If LOCATION is `(margin left-margin)',
Dave Love <fx@gnu.org>
parents:
diff changeset
7488 the image will be displayed in the left marginal area, if it is
Dave Love <fx@gnu.org>
parents:
diff changeset
7489 `(margin right-margin)' it will be displayed in the right marginal
Dave Love <fx@gnu.org>
parents:
diff changeset
7490 area, and if LOCATION is `(margin nil)' the image will be displayed in
Dave Love <fx@gnu.org>
parents:
diff changeset
7491 the text. In the latter case you can also use the simpler form IMAGE
Dave Love <fx@gnu.org>
parents:
diff changeset
7492 as display specification.
Dave Love <fx@gnu.org>
parents:
diff changeset
7493
Dave Love <fx@gnu.org>
parents:
diff changeset
7494 *** Other display properties
Dave Love <fx@gnu.org>
parents:
diff changeset
7495
33499
178c626ccf39 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33484
diff changeset
7496 - (space-width FACTOR)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7497
Dave Love <fx@gnu.org>
parents:
diff changeset
7498 Specifies that space characters in the text having that property
Dave Love <fx@gnu.org>
parents:
diff changeset
7499 should be displayed FACTOR times as wide as normal; FACTOR must be an
Dave Love <fx@gnu.org>
parents:
diff changeset
7500 integer or float.
Dave Love <fx@gnu.org>
parents:
diff changeset
7501
33499
178c626ccf39 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33484
diff changeset
7502 - (height HEIGHT)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7503
Dave Love <fx@gnu.org>
parents:
diff changeset
7504 Display text having this property in a font that is smaller or larger.
Dave Love <fx@gnu.org>
parents:
diff changeset
7505
Dave Love <fx@gnu.org>
parents:
diff changeset
7506 If HEIGHT is a list of the form `(+ N)', where N is an integer, that
Dave Love <fx@gnu.org>
parents:
diff changeset
7507 means to use a font that is N steps larger. If HEIGHT is a list of
Dave Love <fx@gnu.org>
parents:
diff changeset
7508 the form `(- N)', that means to use a font that is N steps smaller. A
Dave Love <fx@gnu.org>
parents:
diff changeset
7509 ``step'' is defined by the set of available fonts; each size for which
Dave Love <fx@gnu.org>
parents:
diff changeset
7510 a font is available counts as a step.
Dave Love <fx@gnu.org>
parents:
diff changeset
7511
Dave Love <fx@gnu.org>
parents:
diff changeset
7512 If HEIGHT is a number, that means to use a font that is HEIGHT times
Dave Love <fx@gnu.org>
parents:
diff changeset
7513 as tall as the frame's default font.
Dave Love <fx@gnu.org>
parents:
diff changeset
7514
Dave Love <fx@gnu.org>
parents:
diff changeset
7515 If HEIGHT is a symbol, it is called as a function with the current
Dave Love <fx@gnu.org>
parents:
diff changeset
7516 height as argument. The function should return the new height to use.
Dave Love <fx@gnu.org>
parents:
diff changeset
7517
Dave Love <fx@gnu.org>
parents:
diff changeset
7518 Otherwise, HEIGHT is evaluated to get the new height, with the symbol
Dave Love <fx@gnu.org>
parents:
diff changeset
7519 `height' bound to the current specified font height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7520
33499
178c626ccf39 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 33484
diff changeset
7521 - (raise FACTOR)
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7522
Dave Love <fx@gnu.org>
parents:
diff changeset
7523 FACTOR must be a number, specifying a multiple of the current
Dave Love <fx@gnu.org>
parents:
diff changeset
7524 font's height. If it is positive, that means to display the characters
Dave Love <fx@gnu.org>
parents:
diff changeset
7525 raised. If it is negative, that means to display them lower down. The
Dave Love <fx@gnu.org>
parents:
diff changeset
7526 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
7527 `height' subproperty.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7528
Dave Love <fx@gnu.org>
parents:
diff changeset
7529 *** Conditional display properties
Dave Love <fx@gnu.org>
parents:
diff changeset
7530
Dave Love <fx@gnu.org>
parents:
diff changeset
7531 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
7532 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
7533 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
7534 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
7535 conditional display property; `position' and `buffer-position' are
f5db16d9b787 Change conditional display property API description.
Gerd Moellmann <gerd@gnu.org>
parents: 38989
diff changeset
7536 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
7537 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
7538 different when object is a string.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7539
Dave Love <fx@gnu.org>
parents:
diff changeset
7540 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
7541 `(when t . SPEC)'.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7542
Dave Love <fx@gnu.org>
parents:
diff changeset
7543 ** New menu separator types.
Dave Love <fx@gnu.org>
parents:
diff changeset
7544
Dave Love <fx@gnu.org>
parents:
diff changeset
7545 Emacs now supports more than one menu separator type. Menu items with
Dave Love <fx@gnu.org>
parents:
diff changeset
7546 item names consisting of dashes only (including zero dashes) are
Dave Love <fx@gnu.org>
parents:
diff changeset
7547 treated like before. In addition, the following item names are used
Dave Love <fx@gnu.org>
parents:
diff changeset
7548 to specify other menu separator types.
Dave Love <fx@gnu.org>
parents:
diff changeset
7549
Dave Love <fx@gnu.org>
parents:
diff changeset
7550 - `--no-line' or `--space', or `--:space', or `--:noLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7551
Dave Love <fx@gnu.org>
parents:
diff changeset
7552 No separator lines are drawn, but a small space is inserted where the
Dave Love <fx@gnu.org>
parents:
diff changeset
7553 separator occurs.
Dave Love <fx@gnu.org>
parents:
diff changeset
7554
Dave Love <fx@gnu.org>
parents:
diff changeset
7555 - `--single-line' or `--:singleLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7556
Dave Love <fx@gnu.org>
parents:
diff changeset
7557 A single line in the menu's foreground color.
Dave Love <fx@gnu.org>
parents:
diff changeset
7558
Dave Love <fx@gnu.org>
parents:
diff changeset
7559 - `--double-line' or `--:doubleLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7560
Dave Love <fx@gnu.org>
parents:
diff changeset
7561 A double line in the menu's foreground color.
Dave Love <fx@gnu.org>
parents:
diff changeset
7562
Dave Love <fx@gnu.org>
parents:
diff changeset
7563 - `--single-dashed-line' or `--:singleDashedLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7564
Dave Love <fx@gnu.org>
parents:
diff changeset
7565 A single dashed line in the menu's foreground color.
Dave Love <fx@gnu.org>
parents:
diff changeset
7566
Dave Love <fx@gnu.org>
parents:
diff changeset
7567 - `--double-dashed-line' or `--:doubleDashedLine'
Dave Love <fx@gnu.org>
parents:
diff changeset
7568
Dave Love <fx@gnu.org>
parents:
diff changeset
7569 A double dashed line in the menu's foreground color.
Dave Love <fx@gnu.org>
parents:
diff changeset
7570
Dave Love <fx@gnu.org>
parents:
diff changeset
7571 - `--shadow-etched-in' or `--:shadowEtchedIn'
Dave Love <fx@gnu.org>
parents:
diff changeset
7572
35862
9604ca6b3728 More typos from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35847
diff changeset
7573 A single line with 3D sunken appearance. This is the form
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7574 displayed for item names consisting of dashes only.
Dave Love <fx@gnu.org>
parents:
diff changeset
7575
Dave Love <fx@gnu.org>
parents:
diff changeset
7576 - `--shadow-etched-out' or `--:shadowEtchedOut'
Dave Love <fx@gnu.org>
parents:
diff changeset
7577
Dave Love <fx@gnu.org>
parents:
diff changeset
7578 A single line with 3D raised appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7579
Dave Love <fx@gnu.org>
parents:
diff changeset
7580 - `--shadow-etched-in-dash' or `--:shadowEtchedInDash'
Dave Love <fx@gnu.org>
parents:
diff changeset
7581
Dave Love <fx@gnu.org>
parents:
diff changeset
7582 A single dashed line with 3D sunken appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7583
Dave Love <fx@gnu.org>
parents:
diff changeset
7584 - `--shadow-etched-out-dash' or `--:shadowEtchedOutDash'
Dave Love <fx@gnu.org>
parents:
diff changeset
7585
Dave Love <fx@gnu.org>
parents:
diff changeset
7586 A single dashed line with 3D raise appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7587
Dave Love <fx@gnu.org>
parents:
diff changeset
7588 - `--shadow-double-etched-in' or `--:shadowDoubleEtchedIn'
Dave Love <fx@gnu.org>
parents:
diff changeset
7589
Dave Love <fx@gnu.org>
parents:
diff changeset
7590 Two lines with 3D sunken appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7591
Dave Love <fx@gnu.org>
parents:
diff changeset
7592 - `--shadow-double-etched-out' or `--:shadowDoubleEtchedOut'
Dave Love <fx@gnu.org>
parents:
diff changeset
7593
Dave Love <fx@gnu.org>
parents:
diff changeset
7594 Two lines with 3D raised appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7595
Dave Love <fx@gnu.org>
parents:
diff changeset
7596 - `--shadow-double-etched-in-dash' or `--:shadowDoubleEtchedInDash'
Dave Love <fx@gnu.org>
parents:
diff changeset
7597
Dave Love <fx@gnu.org>
parents:
diff changeset
7598 Two dashed lines with 3D sunken appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7599
Dave Love <fx@gnu.org>
parents:
diff changeset
7600 - `--shadow-double-etched-out-dash' or `--:shadowDoubleEtchedOutDash'
Dave Love <fx@gnu.org>
parents:
diff changeset
7601
Dave Love <fx@gnu.org>
parents:
diff changeset
7602 Two dashed lines with 3D raised appearance.
Dave Love <fx@gnu.org>
parents:
diff changeset
7603
Dave Love <fx@gnu.org>
parents:
diff changeset
7604 Under LessTif/Motif, the last four separator types are displayed like
Dave Love <fx@gnu.org>
parents:
diff changeset
7605 the corresponding single-line separators.
Dave Love <fx@gnu.org>
parents:
diff changeset
7606
Dave Love <fx@gnu.org>
parents:
diff changeset
7607 ** New frame parameters for scroll bar colors.
Dave Love <fx@gnu.org>
parents:
diff changeset
7608
Dave Love <fx@gnu.org>
parents:
diff changeset
7609 The new frame parameters `scroll-bar-foreground' and
Dave Love <fx@gnu.org>
parents:
diff changeset
7610 `scroll-bar-background' can be used to change scroll bar colors.
Dave Love <fx@gnu.org>
parents:
diff changeset
7611 Their value must be either a color name, a string, or nil to specify
Dave Love <fx@gnu.org>
parents:
diff changeset
7612 that scroll bars should use a default color. For toolkit scroll bars,
Dave Love <fx@gnu.org>
parents:
diff changeset
7613 default colors are toolkit specific. For non-toolkit scroll bars, the
Dave Love <fx@gnu.org>
parents:
diff changeset
7614 default background is the background color of the frame, and the
Dave Love <fx@gnu.org>
parents:
diff changeset
7615 default foreground is black.
Dave Love <fx@gnu.org>
parents:
diff changeset
7616
Dave Love <fx@gnu.org>
parents:
diff changeset
7617 The X resource name of these parameters are `scrollBarForeground'
Dave Love <fx@gnu.org>
parents:
diff changeset
7618 (class ScrollBarForeground) and `scrollBarBackground' (class
Dave Love <fx@gnu.org>
parents:
diff changeset
7619 `ScrollBarBackground').
Dave Love <fx@gnu.org>
parents:
diff changeset
7620
Dave Love <fx@gnu.org>
parents:
diff changeset
7621 Setting these parameters overrides toolkit specific X resource
Dave Love <fx@gnu.org>
parents:
diff changeset
7622 settings for scroll bar colors.
Dave Love <fx@gnu.org>
parents:
diff changeset
7623
Dave Love <fx@gnu.org>
parents:
diff changeset
7624 ** You can set `redisplay-dont-pause' to a non-nil value to prevent
Dave Love <fx@gnu.org>
parents:
diff changeset
7625 display updates from being interrupted when input is pending.
Dave Love <fx@gnu.org>
parents:
diff changeset
7626
Dave Love <fx@gnu.org>
parents:
diff changeset
7627 ** Changing a window's width may now change its window start if it
Dave Love <fx@gnu.org>
parents:
diff changeset
7628 starts on a continuation line. The new window start is computed based
Dave Love <fx@gnu.org>
parents:
diff changeset
7629 on the window's new width, starting from the start of the continued
Dave Love <fx@gnu.org>
parents:
diff changeset
7630 line as the start of the screen line with the minimum distance from
Dave Love <fx@gnu.org>
parents:
diff changeset
7631 the original window start.
Dave Love <fx@gnu.org>
parents:
diff changeset
7632
Dave Love <fx@gnu.org>
parents:
diff changeset
7633 ** The variable `hscroll-step' and the functions
Dave Love <fx@gnu.org>
parents:
diff changeset
7634 `hscroll-point-visible' and `hscroll-window-column' have been removed
Dave Love <fx@gnu.org>
parents:
diff changeset
7635 now that proper horizontal scrolling is implemented.
Dave Love <fx@gnu.org>
parents:
diff changeset
7636
Dave Love <fx@gnu.org>
parents:
diff changeset
7637 ** Windows can now be made fixed-width and/or fixed-height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7638
Dave Love <fx@gnu.org>
parents:
diff changeset
7639 A window is fixed-size if its buffer has a buffer-local variable
Dave Love <fx@gnu.org>
parents:
diff changeset
7640 `window-size-fixed' whose value is not nil. A value of `height' makes
Dave Love <fx@gnu.org>
parents:
diff changeset
7641 windows fixed-height, a value of `width' makes them fixed-width, any
Dave Love <fx@gnu.org>
parents:
diff changeset
7642 other non-nil value makes them both fixed-width and fixed-height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7643
Dave Love <fx@gnu.org>
parents:
diff changeset
7644 The following code makes all windows displaying the current buffer
Dave Love <fx@gnu.org>
parents:
diff changeset
7645 fixed-width and fixed-height.
Dave Love <fx@gnu.org>
parents:
diff changeset
7646
Dave Love <fx@gnu.org>
parents:
diff changeset
7647 (set (make-local-variable 'window-size-fixed) t)
Dave Love <fx@gnu.org>
parents:
diff changeset
7648
Dave Love <fx@gnu.org>
parents:
diff changeset
7649 A call to enlarge-window on a window gives an error if that window is
Dave Love <fx@gnu.org>
parents:
diff changeset
7650 fixed-width and it is tried to change the window's width, or if the
Dave Love <fx@gnu.org>
parents:
diff changeset
7651 window is fixed-height, and it is tried to change its height. To
Dave Love <fx@gnu.org>
parents:
diff changeset
7652 change the size of a fixed-size window, bind `window-size-fixed'
Dave Love <fx@gnu.org>
parents:
diff changeset
7653 temporarily to nil, for example
Dave Love <fx@gnu.org>
parents:
diff changeset
7654
Dave Love <fx@gnu.org>
parents:
diff changeset
7655 (let ((window-size-fixed nil))
Dave Love <fx@gnu.org>
parents:
diff changeset
7656 (enlarge-window 10))
Dave Love <fx@gnu.org>
parents:
diff changeset
7657
26264
Francesco Potortì <pot@gnu.org>
parents: 26171
diff changeset
7658 Likewise, an attempt to split a fixed-height window vertically,
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
7659 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
7660
e1e48e0663f6 Mention cursor-type support on MS-DOS terminals.
Eli Zaretskii <eliz@gnu.org>
parents: 28063
diff changeset
7661 ** 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
7662 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
7663 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
7664 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
7665 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
7666 support a vertical-bar cursor).
30786
550344dcef43 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30781
diff changeset
7667
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7668
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
7669
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7670 * 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
7671
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7672 ** 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
7673 input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7674
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7675 ** ange-ftp now handles FTP security extensions, like Kerberos.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7676
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7677 ** Rmail has been extended to recognize more forms of digest messages.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7678
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7679 ** Now, most coding systems set in keyboard coding system work not
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7680 only for character input, but also in incremental search. The
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7681 exceptions are such coding systems that handle 2-byte character sets
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7682 (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
7683 (e.g. iso-2022-jp). They are ignored in incremental search.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7684
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7685 ** Support for Macintosh PowerPC-based machines running GNU/Linux has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7686 been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7687
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
7688
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7689 * 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
7690
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7691 ** Support for ARM-based non-RISCiX machines has been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7692
35469
Sam Steingold <sds@gnu.org>
parents: 35460
diff changeset
7693
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
7694
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7695 * 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
7696
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7697 ** Not new, but not mentioned before:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7698 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
7699
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7700 * Changes in Emacs 20.4
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 ** Init file may be called .emacs.el.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7703
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7704 You can now call the Emacs init file `.emacs.el'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7705 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
7706 `.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
7707
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7708 If both `.emacs' and `.emacs.el' exist, the latter file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7709 is the one that is used.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7710
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7711 ** shell-command, and shell-command-on-region, now return
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7712 the exit code of the command (unless it is asynchronous).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7713 Also, you can specify a place to put the error output,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7714 separate from the command's regular output.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7715 Interactively, the variable shell-command-default-error-buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7716 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
7717 In calls from Lisp, an optional argument ERROR-BUFFER specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7718 the buffer name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7719
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7720 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
7721 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
7722 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
7723 cleared, so error output from successive commands accumulates there.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7724
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7725 ** Setting the default value of enable-multibyte-characters to nil in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7726 the .emacs file, either explicitly using setq-default, or via Custom,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7727 is now essentially equivalent to using --unibyte: all buffers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7728 created during startup will be made unibyte after loading .emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7729
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7730 ** 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
7731 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
7732 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
7733 quoting sequence /: to the beginning of the file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7734
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7735 ** The M-x commands keep-lines, flush-lines and count-matches
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7736 now have the same feature as occur and query-replace:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7737 if the pattern contains any upper case letters, then
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7738 they never ignore case.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7739
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7740 ** The end-of-line format conversion feature previously mentioned
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7741 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
7742 applies to all operating systems. Emacs recognizes from the contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7743 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
7744 just CR--and automatically converts the contents to the normal Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7745 convention (using newline to separate lines) for editing. This is a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7746 part of the general feature of coding system conversion.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7747
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7748 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
7749 the same format that was used in the file before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7750
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7751 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
7752 `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
7753
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7754 ** The character set property `prefered-coding-system' has been
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7755 renamed to `preferred-coding-system', for the sake of correct spelling.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7756 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
7757
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7758 ** Mode-line display of end-of-line format is changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7759 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
7760 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
7761 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
7762 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
7763 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
7764 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
7765
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7766 The values of the variables eol-mnemonic-unix, eol-mnemonic-dos,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7767 eol-mnemonic-mac, and eol-mnemonic-undecided, which are strings,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7768 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
7769 format. You can now customize these variables.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7770
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7771 ** 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
7772 filename contained non-ASCII characters. Now this is fixed. Such a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7773 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
7774 enable-multibyte-characters is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7775
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7776 ** The command temp-buffer-resize-mode toggles a minor mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7777 in which temporary buffers (such as help buffers) are given
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7778 windows just big enough to hold the whole contents.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7779
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7780 ** If you use completion.el, you must now run the function
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7781 dynamic-completion-mode to enable it. Just loading the file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7782 doesn't have any effect.
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 ** 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
7785 not one per buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7786
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7787 ** 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
7788 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
7789 (add-hook 'minibuffer-setup-hook 'iswitchb-minibuffer-setup)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7790
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7791 ** 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
7792 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
7793 `auto-show-mode' command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7794
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7795 ** Handling of X fonts' ascent/descent parameters has been changed to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7796 avoid redisplay problems. As a consequence, compared with previous
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7797 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
7798 choices, typically increasing by a pixel per line. This change
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7799 occurred in version 20.3 but was not documented then.
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 ** 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
7802 cursor-color, rather than the cursor foreground pixel.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7803
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7804 ** In multibyte mode, Rmail decodes incoming MIME messages using the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7805 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
7806 feature, set the variable rmail-decode-mime-charset to nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7807
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7808 ** 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
7809 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
7810 interpreter program, Emacs looks on the second line for the -*- mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7811 and variable specification, as well as on the first line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7812
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7813 ** Support for IBM codepage encoding of non-ASCII characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7814
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7815 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
7816 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
7817 one of the character sets built into Emacs which matches that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7818 codepage. For example, codepage 850 corresponds to Latin-1 character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7819 set, codepage 855 corresponds to Cyrillic-ISO character set, etc.
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 Windows codepages 1250, 1251 and some others, where Windows deviates
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7822 from the corresponding ISO character set, are also supported.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7823
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7824 IBM box-drawing characters and other glyphs which don't have
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7825 equivalents in the corresponding ISO character set, are converted to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7826 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
7827 `?' on other systems.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7828
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7829 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
7830 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
7831 Unix.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7832
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7833 Emacs compiled for MS-DOS automatically loads the support for the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7834 current codepage when it starts.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7835
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7836 ** Mail changes
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 *** 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
7839 `mail-send-nonascii' is set to the new default value `mime',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7840 appropriate MIME headers are added. The headers are added only if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7841 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
7842 MIME headers are already present. For example, the following three
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7843 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
7844 latin-1:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7845
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7846 MIME-version: 1.0
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7847 Content-type: text/plain; charset=iso-8859-1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7848 Content-Transfer-Encoding: 8bit
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7849
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7850 *** The new variable default-sendmail-coding-system specifies the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7851 default way to encode outgoing mail. This has higher priority than
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7852 default-buffer-file-coding-system but has lower priority than
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7853 sendmail-coding-system and the local value of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7854 buffer-file-coding-system.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7855
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7856 You should not set this variable manually. Instead, set
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7857 sendmail-coding-system to specify a fixed encoding for all outgoing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7858 mail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7859
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7860 *** 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
7861 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
7862 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
7863 list of possible coding systems.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7864
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7865 ** CC Mode changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7866
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7867 *** 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
7868 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
7869 longer hardcodes a setting to "java" style. See the variable's
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7870 docstring for details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7871
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7872 *** 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
7873 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
7874 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
7875 prioritized order on a single line. However, none of the supplied
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7876 lineup functions use this feature currently.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7877
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7878 *** 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
7879 "finally" lines in try-catch constructs in C++ and Java.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7880
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7881 *** 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
7882 "catch" lines what brace-elseif-brace does for "else if" lines.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7883
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7884 *** The braces of Java anonymous inner classes are treated separately
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7885 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
7886 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
7887 c-hanging-braces-alist to control the automatic newlines used for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7888 anonymous classes.
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 *** Support for the Pike language added, along with new Pike specific
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7891 syntactic symbols: inlambda, lambda-intro-cont
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7892
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7893 *** Support for Java anonymous classes via new syntactic symbol
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7894 inexpr-class. New syntactic symbol inexpr-statement for Pike
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7895 support and gcc-style statements inside expressions. New lineup
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7896 function c-lineup-inexpr-block.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7897
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7898 *** 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
7899 (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
7900 brace. These used to be recognized as brace-list-entry's.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7901 c-electric-brace also recognizes brace-entry-open braces
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7902 (brace-list-entry's can no longer be electrified).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7903
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7904 *** New command c-indent-line-or-region, not bound by default.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7905
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7906 *** `#' is only electric when typed in the indentation of a line.
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 *** Parentheses are now electric (via the new command c-electric-paren)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7909 for auto-reindenting lines when parens are typed.
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 *** In "gnu" style, inline-open offset is now set to zero.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7912
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7913 *** Uniform handling of the inclass syntactic symbol. The indentation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7914 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
7915 This means that the indentation behavior has changed in some
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7916 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
7917 class-open syntactic symbol (none of the default styles do that).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7918
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7919 ** Gnus changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7920
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7921 *** New functionality for using Gnus as an offline newsreader has been
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7922 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
7923 Gnus manual for the full story.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7924
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7925 *** The nndraft backend has returned, but works differently than
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7926 before. All Message buffers are now also articles in the nndraft
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7927 group, which is created automatically.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7928
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7929 *** `gnus-alter-header-function' can now be used to alter header
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7930 values.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7931
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7932 *** `gnus-summary-goto-article' now accept Message-ID's.
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 *** 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
7935 outside the region: `C-c C-v'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7936
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7937 *** You can now post to component group in nnvirtual groups with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7938 `C-u C-c C-c'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7939
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7940 *** `nntp-rlogin-program' -- new variable to ease customization.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7941
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7942 *** `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
7943 re-highlighting of the article buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7944
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7945 *** New element in `gnus-boring-article-headers' -- `long-to'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7946
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7947 *** `M-i' symbolic prefix command. See the section "Symbolic
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7948 Prefixes" in the Gnus manual for details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7949
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7950 *** `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
7951 `a' to add the score rule to the "all.SCORE" file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7952
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7953 *** `gnus-simplify-subject-functions' variable to allow greater
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7954 control over simplification.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7955
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7956 *** `A T' -- new command for fetching the current thread.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7957
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7958 *** `/ T' -- new command for including the current thread in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7959 limit.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7960
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7961 *** `M-RET' is a new Message command for breaking cited text.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7962
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7963 *** \\1-expressions are now valid in `nnmail-split-methods'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7964
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7965 *** The `custom-face-lookup' function has been removed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7966 If you used this function in your initialization files, you must
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7967 rewrite them to use `face-spec-set' instead.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7968
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
7969 *** Canceling now uses the current select method. Symbolic prefix
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7970 `a' forces normal posting method.
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 *** 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
7973 -- `W d'.
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 *** For easier debugging of nntp, you can set `nntp-record-commands'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7976 to a non-nil value.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7977
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7978 *** nntp now uses ~/.authinfo, a .netrc-like file, for controlling
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7979 where and how to send AUTHINFO to NNTP servers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7980
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7981 *** A command for editing group parameters from the summary buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7982 has been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7983
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7984 *** A history of where mails have been split is available.
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 new article date command has been added -- `article-date-iso8601'.
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 *** Subjects can be simplified when threading by setting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7989 `gnus-score-thread-simplify'.
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 *** A new function for citing in Message has been added --
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7992 `message-cite-original-without-signature'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7993
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7994 *** `article-strip-all-blank-lines' -- new article command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7995
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7996 *** 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
7997 been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7998
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
7999 *** A minimum adaptive score can be specified by using the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8000 `gnus-adaptive-word-minimum' variable.
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 *** The "lapsed date" article header can be kept continually
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8003 updated by the `gnus-start-date-timer' command.
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 *** Web listserv archives can be read with the nnlistserv backend.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8006
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8007 *** Old dejanews archives can now be read by nnweb.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8008
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8009 *** `gnus-posting-styles' has been re-activated.
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 ** Changes to TeX and LaTeX mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8012
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8013 *** 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
8014 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
8015 nonstopmode. For an interactive TeX run set it to nil or "".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8016
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8017 *** 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
8018 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
8019 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
8020 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
8021 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
8022
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8023 *** The Tex Shell Buffer is now in `compilation-shell-minor-mode'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8024 All error-parsing commands of the Compilation major mode are available
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8025 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
8026 the Tex Shell for command line executions like a usual shell.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8027
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8028 *** The commands `tex-validate-region' and `tex-validate-buffer' check
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8029 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
8030 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
8031 mismatch.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8032
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8033 ** Changes to RefTeX mode
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 *** The table of contents buffer can now also display labels and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8036 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
8037
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8038 *** Labels derived from context (the section heading) are now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8039 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
8040 characters will lose their accent. All Mule characters will be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8041 removed from the label.
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 automatic display of cross reference information can also use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8044 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
8045
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8046 *** 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
8047 customization group `reftex-finding-files'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8048
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8049 *** The option `reftex-bibfile-ignore-list' has been renamed to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8050 `reftex-bibfile-ignore-regexps' and indeed can be fed with regular
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8051 expressions.
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 *** Multiple Selection buffers are now hidden buffers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8054
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8055 ** New/deleted modes and packages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8056
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8057 *** 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
8058 SNMPv2 MIBs. It has entries on `auto-mode-alist'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8059
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8060 *** 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
8061 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
8062 SQL interpreters. It has an entry on `auto-mode-alist'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8063
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8064 *** M-x highlight-changes-mode provides a minor mode displaying buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8065 changes with a special face.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8066
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8067 *** 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
8068 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
8069 Ispell 3.1 and ispell.el.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
8070
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8071 * MS-DOS changes in Emacs 20.4
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 ** Emacs compiled for MS-DOS now supports MULE features better.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8074 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
8075 conversion to and from IBM codepage encoding of non-ASCII characters,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8076 and automatic setup of the MULE environment at startup. For details,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8077 check out the section `MS-DOS and MULE' in the manual.
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 MS-DOS installation procedure automatically configures and builds
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8080 Emacs with input method support if it finds an unpacked Leim
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8081 distribution when the config.bat script is run.
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 ** Formerly, the value of lpr-command did not affect printing on
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8084 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
8085 controls whether an external program is invoked or output is written
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8086 directly to a printer port. Similarly, in the previous version of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8087 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
8088 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
8089 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
8090 program is used. (These changes were made so that configuration of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8091 printing variables would be almost identical across all platforms.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8092
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8093 ** In the previous version of Emacs, PostScript and non-PostScript
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8094 output was piped to external programs, but because most print programs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8095 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
8096 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
8097 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
8098 program.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8099
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8100 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
8101 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
8102 programs, the command line is constructed in the appropriate syntax
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8103 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
8104 as appropriate--the value of the relevant `-switches' variable is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8105 ignored, as both programs have no useful switches.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8106
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8107 ** 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
8108 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
8109 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
8110 was not documented clearly before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8111
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8112 ** All the Emacs games now work on MS-DOS terminals.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8113 This includes Tetris and Snake.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
8114
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8115 * Lisp changes in Emacs 20.4
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8116
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8117 ** New functions line-beginning-position and line-end-position
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8118 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
8119 They both accept an optional argument, which has the same
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8120 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
8121
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8122 ** find-file and allied functions now have an optional argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8123 WILDCARD. If this is non-nil, they do wildcard processing,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8124 and visit all files that match the wildcard pattern.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8125
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8126 ** Changes in the file-attributes function.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8127
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8128 *** 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
8129 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
8130
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8131 *** 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
8132 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
8133 integers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8134
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8135 ** The new function directory-files-and-attributes returns a list of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8136 files in a directory and their attributes. It accepts the same
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8137 arguments as directory-files and has similar semantics, except that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8138 file names and attributes are returned.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8139
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8140 ** The new function file-attributes-lessp is a helper function for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8141 sorting the list generated by directory-files-and-attributes. It
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
8142 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
8143 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
8144 returns the result.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8145
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8146 ** The new function file-expand-wildcards expands a wildcard-pattern
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8147 to produce a list of existing files that match the pattern.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8148
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8149 ** New functions for base64 conversion:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8150
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8151 The function base64-encode-region converts a part of the buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8152 into the base64 code used in MIME. base64-decode-region
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8153 performs the opposite conversion. Line-breaking is supported
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8154 optionally.
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 Functions base64-encode-string and base64-decode-string do a similar
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8157 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
8158
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8159 **
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8160 The new function process-running-child-p
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8161 will tell you if a subprocess has given control of its
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8162 terminal to its own child process.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8163
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8164 ** interrupt-process and such functions have a new feature:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8165 when the second argument is `lambda', they send a signal
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8166 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
8167 itself owns its terminal, no signal is sent.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8168
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8169 ** There are new widget types `plist' and `alist' which can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8170 be used for customizing variables whose values are plists or alists.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8171
42974
b5c45e2ad1ae Fix typo.
Pavel Janík <Pavel@Janik.cz>
parents: 42958
diff changeset
8172 ** easymenu.el now understands `:key-sequence' and `:style button'.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8173 :included is an alias for :visible.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8174
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8175 easy-menu-add-item now understands the values returned by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8176 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
8177 to move or copy menu entries.
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 ** Multibyte editing changes
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 definitions of sref and char-bytes are changed. Now, sref is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8182 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
8183 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
8184 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
8185 char-bytes in a loop typically as below:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8186 (setq char (sref str idx)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8187 idx (+ idx (char-bytes idx)))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8188 The byte-compiler now warns that this is obsolete.
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 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
8191 (say, CH) occupies in a multibyte buffer, use this code:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8192 (charset-bytes (char-charset ch))
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 *** 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
8195 region is preceded or followed by non-ASCII codes, inserting or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8196 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
8197
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
8198 Byte combining across boundary of accessible buffer text inhibited
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8199
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8200 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
8201 across the boundary.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8202
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8203 *** The functions find-charset-region and find-charset-string include
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8204 `unknown' in the returned list in the following cases:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8205 o The current buffer or the target string is unibyte and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8206 contains 8-bit characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8207 o The current buffer or the target string is multibyte and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8208 contains invalid characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8209
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8210 *** The functions decode-coding-region and encode-coding-region remove
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8211 text properties of the target region. Ideally, they should correctly
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8212 preserve text properties, but for the moment, it's hard. Removing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8213 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
8214 way.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8215
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8216 *** prefer-coding-system sets EOL conversion of default coding systems.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8217 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
8218 end of line conversion, the default coding systems set by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8219 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
8220
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8221 *** The new function thai-compose-string can be used to properly
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8222 compose Thai characters in a string.
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 ** The primitive `define-prefix-command' now takes an optional third
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8225 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
8226 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
8227 menus should always use the third argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8228
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8229 ** The meanings of optional second arguments for read-char,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8230 read-event, and read-char-exclusive are flipped. Now the second
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8231 arguments are INHERIT-INPUT-METHOD. These functions use the current
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8232 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
8233
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8234 ** The new function clear-this-command-keys empties out the contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8235 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
8236 programs that read passwords, to prevent the passwords from echoing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8237 inadvertently as part of the next command in certain cases.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8238
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8239 ** The new macro `with-temp-message' displays a temporary message in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8240 the echo area, while executing some Lisp code. Like `progn', it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8241 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
8242 echo area contents.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8243
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8244 (with-temp-message MESSAGE &rest BODY)
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 ** The function `require' now takes an optional third argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8247 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
8248 requested feature cannot be loaded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8249
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8250 ** In the function modify-face, an argument of (nil) for the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8251 foreground color, background color or stipple pattern
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8252 means to clear out that attribute.
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 `outer-window-id' frame property of an X frame
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8255 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
8256
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8257 ** Temporary buffers made with with-output-to-temp-buffer are now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8258 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
8259 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
8260 end of with-output-to-temp-buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8261
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8262 ** The new functions gap-position and gap-size return information on
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8263 the gap of the current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8264
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8265 ** 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
8266 to convert between character positions and byte positions in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8267 current buffer.
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 ** 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
8270 facilitate working with version-controlled files from Lisp programs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8271 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
8272 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
8273
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8274 * Installation Changes in Emacs 20.3
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 default value of load-path now includes most subdirectories of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8277 the site-specific directories /usr/local/share/emacs/site-lisp and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8278 /usr/local/share/emacs/VERSION/site-lisp, in addition to those
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8279 directories themselves. Both immediate subdirectories and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8280 subdirectories multiple levels down are added to load-path.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8281
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8282 Not all subdirectories are included, though. Subdirectories whose
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8283 names do not start with a letter or digit are excluded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8284 Subdirectories named RCS or CVS are excluded. Also, a subdirectory
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8285 which contains a file named `.nosearch' is excluded. You can use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8286 these methods to prevent certain subdirectories from being searched.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8287
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8288 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
8289 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
8290 time Emacs loads a file, that would be much slower.
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 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
8293 Lisp files in a subdirectory of the site-lisp directory specifically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8294 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
8295 subdirectory to start with a non-alphanumeric character, or create a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8296 `.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
8297 results.
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 ** 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
8300 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
8301 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
8302 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
8303
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8304 * 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 new command C-x z (repeat) repeats the previous command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8307 including its argument. If you repeat the z afterward,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8308 it repeats the command additional times; thus, you can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8309 perform many repetitions with one keystroke per repetition.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8310
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8311 ** Emacs now supports "selective undo" which undoes only within a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8312 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
8313 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
8314 further, within the same region, by repeating the ordinary undo
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8315 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
8316 within the region you originally specified, until either all of them
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8317 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
8318 region.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8319
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8320 In Transient Mark mode, undoing when a region is active requests
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8321 selective undo.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8322
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8323 ** If you specify --unibyte when starting Emacs, then all buffers are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8324 unibyte, except when a Lisp program specifically creates a multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8325 buffer. Setting the environment variable EMACS_UNIBYTE has the same
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8326 effect. The --no-unibyte option overrides EMACS_UNIBYTE and directs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8327 Emacs to run normally in multibyte mode.
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 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
8330 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
8331 -*-unibyte: t;-*- on its first line. That will force Emacs to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8332 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
8333
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8334 ** toggle-enable-multibyte-characters no longer has a key binding and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8335 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
8336 enable-multibyte-characters variable in an existing buffer is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8337 something that most users not do.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8338
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8339 ** 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
8340 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
8341 The coding system can make a difference for communication with other
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8342 applications.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8343
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8344 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
8345 pasting operations.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8346
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8347 ** 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
8348 setting the variable `printer-name'. Just what a printer name looks
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8349 like depends on your operating system. You can specify a different
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8350 printer for the Postscript printing commands by setting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8351 `ps-printer-name'.
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 ** 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
8354 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
8355 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
8356 except when you make a spelling error. Flyspell works by highlighting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8357 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
8358 hits a new word.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8359
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8360 Flyspell mode works with whichever dictionary you have selected for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8361 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
8362 to be confused by TeX commands.
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 You can correct a misspelled word by editing it into something
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8365 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
8366 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
8367 of various alternative replacements and actions.
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 Flyspell mode also proposes "automatic" corrections. M-TAB replaces
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8370 the current misspelled word with a possible correction. If several
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8371 corrections are made possible, M-TAB cycles through them in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8372 alphabetical order, or in order of decreasing likelihood if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8373 flyspell-sort-corrections is nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8374
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8375 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
8376 flyspell-mark-duplications-flag is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8377
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8378 ** Changes in input method usage.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8379
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8380 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
8381 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
8382 respectively.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8383
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8384 You can use the ENTER key to accept the current conversion.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8385
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8386 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
8387 of the alternatives with Mouse-2.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8388
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8389 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
8390 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
8391
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8392 If the value is nil, extra guidance is never given.
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 If the value is t, extra guidance is always given.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8395
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8396 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
8397 when you are using complex input methods such as chinese-py.
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 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
8400 given in the following case:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8401 o When you are using a complex input method.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8402 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
8403
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8404 If you are using Emacs through a very slow line, setting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8405 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
8406 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
8407 setting it to t is helpful.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8408
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8409 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
8410
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8411 In the language environment "Korean", you can use the following
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8412 keys:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8413 Shift-SPC toggle-korean-input-method
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8414 C-F9 quail-hangul-switch-symbol-ksc
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8415 F9 quail-hangul-switch-hanja
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8416 These key bindings are canceled when you switch to another language
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8417 environment.
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 minibuffer history of file names now records the specified file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8420 names, not the entire minibuffer input. For example, if the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8421 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
8422 get
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 /usr/foo//etc/passwd
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 which stands for the file /etc/passwd.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8427
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8428 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
8429 Now this puts just /etc/passwd in the history list.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8430
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8431 ** 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
8432 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
8433 its owner and group.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8434
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8435 ** 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
8436 Lisp variables in user-loaded libraries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8437
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8438 ** C-x r t (string-rectangle) now deletes the existing rectangle
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8439 contents before inserting the specified string on each line.
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 ** There is a new command delete-whitespace-rectangle
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8442 which deletes whitespace starting from a particular column
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8443 in all the lines on a rectangle. The column is specified
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8444 by the left edge of the rectangle.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8445
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8446 ** 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
8447 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
8448 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
8449 for writing keyboard macros.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8450
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8451 ** 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
8452 files, and tags can be displayed, manipulated, and jumped to. The
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8453 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
8454 the frame that it was started from. Some major modes define
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8455 additional commands for the speedbar, including Rmail, GUD/GDB, and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8456 info.
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 ** query-replace-regexp is now bound to C-M-%.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8459
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8460 ** In Transient Mark mode, when the region is active, M-x
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8461 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
8462 contents only.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8463
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8464 ** M-x write-region, when used interactively, now asks for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8465 confirmation before overwriting an existing file. When you call
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8466 the function from a Lisp program, a new optional argument CONFIRM
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8467 says whether to ask for confirmation in this case.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8468
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8469 ** 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
8470 non-literally, the command asks you whether to revisit the file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8471 literally. If you say no, it signals an error.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8472
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8473 ** Major modes defined with the "derived mode" feature
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8474 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
8475 Formerly they used the name WHATEVER-mode-hooks, but that is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8476 inconsistent with Emacs conventions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8477
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8478 ** shell-command-on-region (and shell-command) reports success or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8479 failure if the command produces no output.
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 ** 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
8482 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
8483 the mouse.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8484
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8485 ** mouse-menu-buffer-maxlen has been renamed to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8486 mouse-buffer-menu-maxlen to be consistent with the other related
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8487 function and variable names.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8488
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8489 ** The new variable auto-coding-alist specifies coding systems for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8490 reading specific files. This has higher priority than
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8491 file-coding-system-alist.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8492
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8493 ** If you set the variable unibyte-display-via-language-environment to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8494 t, then Emacs displays non-ASCII characters are displayed by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8495 converting them to the equivalent multibyte characters according to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8496 the current language environment. As a result, they are displayed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8497 according to the current fontset.
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 ** 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
8500
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8501 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
8502 that code regardless of the values of nonascii-translation-table and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8503 nonascii-insert-offset.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8504
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8505 For the codes in the range 0240 through 0377, if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8506 enable-multibyte-characters is non-nil and nonascii-translation-table
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8507 nor nonascii-insert-offset can't convert them to valid multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8508 characters, they are converted to Latin-1 characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8509
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8510 ** 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
8511 an error, rather than an empty buffer and a warning.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8512
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8513 ** 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
8514 letter in the regular expression forces case-sensitive search.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8515
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8516 ** In the *Help* buffer, cross-references to commands and variables
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8517 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
8518 command keys.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8519
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8520 ** 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
8521 user option variables--instead it looks for noninteractive functions.
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 Meanwhile, the command apropos-variable normally searches for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8524 user option variables; with a prefix argument, it looks at
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8525 all variables that have documentation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8526
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8527 ** 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
8528 shows just one line, automatically scrolling works in a special way
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8529 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
8530 minibuffer-scroll-overlap controls how many characters of overlap
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8531 it should show; the default is 20.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8532
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8533 Meanwhile, Resize Minibuffer mode is still available; in that mode,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8534 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
8535 of your input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8536
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8537 ** The new command M-x customize-changed-options lets you customize
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8538 all the options whose meanings or default values have changed in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8539 recent Emacs versions. You specify a previous Emacs version number as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8540 argument, and the command creates a customization buffer showing all
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8541 the customizable options which were changed since that version.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8542 Newly added options are included as well.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8543
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8544 If you don't specify a particular version number argument,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8545 then the customization buffer shows all the customizable options
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8546 for which Emacs versions of changes are recorded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8547
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8548 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
8549 Customize menu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8550
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8551 ** 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
8552 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
8553
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8554 ** 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
8555 buffer positions from which M-. or other tag-finding commands were
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8556 invoked.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8557
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8558 ** The new variable comment-padding specifies the number of spaces
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8559 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
8560 The default is 1.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8561
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8562 ** In Fortran mode the characters `.', `_' and `$' now have symbol
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8563 syntax, not word syntax. Fortran mode now supports `imenu' and has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8564 new commands fortran-join-line (M-^) and fortran-narrow-to-subprogram
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8565 (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
8566 sensibly.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8567
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8568 ** 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
8569
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8570 ** 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
8571 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
8572 two entries in one day for one file, and combine them.
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 ** 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
8575 reminder about upcoming diary entries. See the documentation string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8576 for a sample shell script for calling this function automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8577 every night.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8578
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8579 ** Desktop changes
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 *** 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
8582 the variable desktop-enable to t with Custom.
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 *** Minor modes are now restored. Which minor modes are restored
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8585 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
8586
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8587 ** 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
8588 read and post multi-lingual articles.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8589
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8590 ** Outline mode has now support for showing hidden outlines when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8591 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
8592 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
8593 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
8594 the match moves outside the formerly invisible outline, the outline is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8595 made invisible again.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8596
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8597 ** Mail reading and sending changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8598
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8599 *** 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
8600 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
8601 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
8602 toggle.
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 *** 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
8605 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
8606 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
8607 the message has no subject, is stored in the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8608 rmail-default-body-file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8609
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8610 *** 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
8611 longer depend on the value of mail-header-separator. Instead, they
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8612 handle whatever separator the buffer happens to use.
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 *** 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
8615 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
8616 is evaluated to insert the signature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8617
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8618 *** The new Lisp library feedmail.el (version 8) enhances processing of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8619 outbound email messages. It works in coordination with other email
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8620 handling packages (e.g., rmail, VM, gnus) and is responsible for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8621 putting final touches on messages and actually submitting them for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8622 transmission. Users of the emacs program "fakemail" might be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8623 especially interested in trying feedmail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8624
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8625 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
8626 feedmail.el for set-up instructions. Among the bigger features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8627 provided by feedmail are:
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 **** you can park outgoing messages into a disk-based queue and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8630 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
8631 there is also a queue for draft messages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8632
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8633 **** 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
8634 be prompted for confirmation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8635
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8636 **** does smart filling of address headers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8637
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8638 **** 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
8639 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
8640 can make FCC copies more closely resemble copies that recipients get
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8641
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8642 **** you can specify an arbitrary function for actually transmitting
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8643 the message; included in feedmail are interfaces for /bin/[r]mail,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8644 /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
8645 function for something else (10-20 lines of elisp)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8646
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8647 ** Dired changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8648
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8649 *** The Dired function dired-do-toggle, which toggles marked and unmarked
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8650 files, is now bound to "t" instead of "T".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8651
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8652 *** 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
8653 run Dired on the directory name at point.
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 *** Dired has a new command: %g. It searches the contents of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8656 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
8657 for a specified regexp.
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 ** VC Changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8660
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8661 *** 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
8662 conveniently.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8663
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8664 *** VC Dired has been completely rewritten. It is now much
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8665 faster, especially for CVS, and works very similar to ordinary
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8666 Dired.
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 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
8669 directory to display. By default, VC Dired gives you a recursive
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8670 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
8671 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
8672
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8673 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
8674 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
8675 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
8676 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
8677 on such lines to insert them manually, as in ordinary Dired.
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 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
8680 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
8681 `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
8682 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
8683 `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
8684
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8685 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
8686 toggle between terse display (only locked files) and full display (all
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8687 VC files plus subdirectories). There is also a special command,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8688 `* l', to mark all files currently locked.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8689
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8690 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
8691 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
8692 command in the minibuffer, to fine-tune VC Dired's output.
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 *** 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
8695 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
8696 session to resolve them.
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 Alternatively, you can use the new command `vc-resolve-conflicts' to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8699 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
8700 contains conflict markers as generated by rcsmerge (which is what CVS
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8701 uses as well).
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 now transfer changes between branches, using the new
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8704 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
8705 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
8706 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
8707 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
8708 If this results in any conflicts, they may be resolved interactively,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8709 using ediff.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8710
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8711 ** Changes in Font Lock
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8712
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8713 *** The face and variable previously known as font-lock-reference-face
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8714 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
8715 use for highlighting constants and labels. (Its face properties are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8716 unchanged.) The variable font-lock-reference-face remains for now for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8717 compatibility reasons, but its value is font-lock-constant-face.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8718
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8719 ** Frame name display changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8720
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8721 *** 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
8722 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
8723 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
8724 when many frames are invisible or iconified.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8725
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8726 *** On character-only terminal (not a window system), changing the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8727 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
8728 menu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8729
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8730 ** Comint (subshell) changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8731
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8732 *** In Comint modes, the commands to kill, stop or interrupt a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8733 subjob now also kill pending input. This is for compatibility
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8734 with ordinary shells, where the signal characters do this.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8735
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8736 *** There are new commands in Comint mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8737
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8738 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
8739 that is, the line after the last line you got.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8740 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
8741
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8742 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
8743 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
8744 the following line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8745
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8746 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
8747 which separates the pending input from the subprocess output and the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8748 previously sent input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8749
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8750 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
8751 it searches for a previous command, using the current pending input
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8752 as the search string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8753
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8754 *** New option compilation-scroll-output can be set to scroll
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8755 automatically in compilation-mode windows.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8756
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8757 ** C mode changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8758
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8759 *** Multiline macros are now handled, both as they affect indentation,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8760 and as recognized syntax. New syntactic symbol cpp-macro-cont is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8761 assigned to second and subsequent lines of a multiline macro
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8762 definition.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8763
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8764 *** A new style "user" which captures all non-hook-ified
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8765 (i.e. top-level) .emacs file variable settings and customizations.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8766 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
8767 style is still the default however.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8768
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8769 *** "java" style now conforms to Sun's JDK coding style.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8770
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8771 *** 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
8772 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
8773 them. They do not have key bindings by default.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8774
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8775 *** New and improved implementations of M-a (c-beginning-of-statement)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8776 and M-e (c-end-of-statement).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8777
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8778 *** C++ namespace blocks are supported, with new syntactic symbols
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8779 namespace-open, namespace-close, and innamespace.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8780
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8781 *** 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
8782 makes the style variables local to that buffer only.
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 indentation functions c-lineup-close-paren,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8785 c-indent-one-line-block, c-lineup-dont-change.
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 *** Improvements (hopefully!) to the way CC Mode is loaded. You
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8788 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
8789 package loaded properly for customization in your .emacs file. A new
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8790 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
8791
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8792 ** Changes to hippie-expand.
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 *** New customization variable `hippie-expand-dabbrev-skip-space'. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8795 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
8796 which then gives the same behavior as the original `dabbrev-expand'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8797
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8798 *** New customization variable `hippie-expand-dabbrev-as-symbol'. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8799 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
8800 expanding dynamically.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8801
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8802 *** New customization variable `hippie-expand-no-restriction'. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8803 non-nil, narrowed buffers are widened before they are searched.
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 customization variable `hippie-expand-only-buffers'. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8806 non-empty, buffers searched are restricted to the types specified in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8807 this list. Useful for example when constructing new special-purpose
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8808 expansion functions with `make-hippie-expand-function'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8809
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8810 *** Text properties of the expansion are no longer copied.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8811
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8812 ** Changes in BibTeX mode.
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 *** Any titleword matching a regexp in the new variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8815 bibtex-autokey-titleword-ignore (case sensitive) is ignored during
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8816 automatic key generation. This replaces variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8817 bibtex-autokey-titleword-first-ignore, which only checked for matches
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8818 against the first word in the title.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8819
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8820 *** Autokey generation now uses all words from the title, not just
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8821 capitalized words. To avoid conflicts with existing customizations,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8822 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
8823 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
8824 lowercase words from the title, you will have to overwrite the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8825 bibtex-autokey-titleword-ignore standard setting.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8826
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8827 *** Case conversion of names and title words for automatic key
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8828 generation is more flexible. Variable bibtex-autokey-preserve-case is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8829 replaced by bibtex-autokey-titleword-case-convert and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8830 bibtex-autokey-name-case-convert.
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 ** Changes in vcursor.el.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8833
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8834 *** Support for character terminals is available: there is a new keymap
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8835 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
8836 variable `vcursor-interpret-input' allows input from the vcursor to be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8837 entered exactly as if typed. Numerous functions, including
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8838 `vcursor-compare-windows', have been rewritten to improve consistency
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8839 in the selection of windows and corresponding keymaps.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8840
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8841 *** 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
8842 Editing group once the package is loaded.
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 *** 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
8845 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
8846 vcursor-key-bindings to t to restore the old behavior.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8847
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8848 *** 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
8849 vcursor, but doesn't disable it, after any non-vcursor command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8850
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8851 ** Ispell changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8852
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8853 *** You can now spell check comments and strings in the current
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8854 buffer with M-x ispell-comments-and-strings. Comments and strings
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8855 are identified by syntax tables in effect.
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 *** Generic region skipping implemented.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8858 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
8859 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
8860 defined. New applications and improvements made available by this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8861 include:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8862
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8863 o URLs are automatically skipped
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8864 o EMail message checking is vastly improved.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8865
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8866 *** Ispell can highlight the erroneous word even on non-window terminals.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8867
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8868 ** Changes to RefTeX mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8869
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8870 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
8871 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
8872 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
8873 section `Optimizations' in the manual.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8874
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8875 *** New recursive parser.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8876
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8877 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
8878 entire multifile document in order to parse the document. The new
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8879 recursive parser scans the individual files.
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 *** Parsing only part of a document.
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 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
8884 partial scans. To use this feature, read the documentation string of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8885 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
8886
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8887 (setq reftex-enable-partial-scans t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8888
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8889 *** Storing parsing information in a file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8890
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8891 This can improve startup times considerably. To turn it on, use
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 (setq reftex-save-parse-info t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8894
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8895 *** Using multiple selection buffers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8896
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8897 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
8898 for large documents), you can reuse these buffers by setting
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 (setq reftex-use-multiple-selection-buffers t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8901
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8902 *** References to external documents.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8903
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8904 The LaTeX package `xr' allows to cross-reference labels in external
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8905 documents. RefTeX can provide information about the external
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8906 documents as well. To use this feature, set up the \externaldocument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8907 macros required by the `xr' package and rescan the document with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8908 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
8909 the selection buffer provided by `reftex-reference' (bound to `C-c )').
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8910 The `x' key also works in the table of contents buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8911
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8912 *** Many more labeled LaTeX environments are recognized by default.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8913
35680
1a6073992224 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 35665
diff changeset
8914 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
8915 and all of the major packages included in the LaTeX distribution.
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 Also, RefTeX now understands the \appendix macro and changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8918 the enumeration of sections in the *toc* buffer accordingly.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8919
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8920 *** Mouse support for selection and *toc* buffers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8921
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8922 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
8923 buffers. See also the new option `reftex-highlight-selection'.
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 *** New keymaps for selection and table of contents modes.
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 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
8928 contents buffer now have their own keymaps: `reftex-select-label-map',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8929 `reftex-select-bib-map', `reftex-toc-map'. The selection processes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8930 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
8931 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
8932 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
8933 more.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8934
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8935 *** Support for the varioref package
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8936
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8937 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
8938
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8939 *** New hooks
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8940
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8941 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
8942 and citations are created. These hooks are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8943 `reftex-format-label-function', `reftex-format-ref-function',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8944 `reftex-format-cite-function'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8945
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8946 *** Citations outside LaTeX
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8947
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8948 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
8949 a mail buffer). See the Info documentation for details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8950
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8951 *** Short context is no longer fontified.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8952
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8953 The short context in the label menu no longer copies the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8954 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
8955 fontified, use
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 (setq reftex-refontify-context t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8958
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8959 ** file-cache-minibuffer-complete now accepts a prefix argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8960 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
8961 the file name within its directory; it only checks for other
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8962 directories that contain the same file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8963
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8964 Thus, given the file name Makefile, and assuming that a file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8965 Makefile.in exists in the same directory, ordinary
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8966 file-cache-minibuffer-complete will try to complete Makefile to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8967 Makefile.in and will therefore never look for other directories that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8968 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
8969 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
8970 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
8971 directory.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8972
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8973 ** New modes and packages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8974
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8975 *** There is a new alternative major mode for Perl, Cperl mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8976 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
8977 it, but some do not.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8978
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8979 *** 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
8980 code.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8981
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8982 *** 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
8983 current function name continuously in the mode line, as you move
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8984 around in a buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8985
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8986 Which Function mode is effective in major modes which support Imenu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8987
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8988 *** 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
8989 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
8990 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
8991 established system of notation similar to Chess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8992
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8993 *** The new minor mode checkdoc-minor-mode provides Emacs Lisp
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8994 documentation string checking for style and spelling. The style
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8995 guidelines are found in the Emacs Lisp programming manual.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8996
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8997 *** The net-utils package makes some common networking features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8998 available in Emacs. Some of these functions are wrappers around
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
8999 system utilities (ping, nslookup, etc); others are implementations of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9000 simple protocols (finger, whois) in Emacs Lisp. There are also
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9001 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
9002 the like.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9003
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9004 *** highlight-changes-mode is a minor mode that uses colors to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9005 identify recently changed parts of the buffer text.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9006
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9007 *** The new package `midnight' lets you specify things to be done
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9008 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
9009 used in a considerable time. To use this feature, customize
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9010 the user option `midnight-mode' to t.
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 *** 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
9013
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9014 apache-generic-mode: For Apache and NCSA httpd configuration files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9015 samba-generic-mode: Samba configuration files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9016 fvwm-generic-mode: For fvwm initialization files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9017 x-resource-generic-mode: For X resource files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9018 hosts-generic-mode: For hosts files (.rhosts, /etc/hosts, etc)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9019 mailagent-rules-generic-mode: For mailagent .rules files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9020 javascript-generic-mode: For JavaScript files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9021 vrml-generic-mode: For VRML files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9022 java-manifest-generic-mode: For Java MANIFEST files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9023 java-properties-generic-mode: For Java property files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9024 mailrc-generic-mode: For .mailrc files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9025
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9026 Platform-specific modes:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9027
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9028 prototype-generic-mode: For Solaris/Sys V prototype files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9029 pkginfo-generic-mode: For Solaris/Sys V pkginfo files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9030 alias-generic-mode: For C shell alias files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9031 inf-generic-mode: For MS-Windows INF files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9032 ini-generic-mode: For MS-Windows INI files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9033 reg-generic-mode: For MS-Windows Registry files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9034 bat-generic-mode: For MS-Windows BAT scripts
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9035 rc-generic-mode: For MS-Windows Resource files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9036 rul-generic-mode: For InstallShield scripts
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
9037
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9038 * 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
9039
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9040 ** 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
9041 use -*-unibyte: t;-*- on its first line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9042 That will force Emacs to read that file in unibyte mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9043 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
9044
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9045 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
9046 you started Emacs with --unibyte, so that a Lisp program gives
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9047 consistent results regardless of how Emacs was started.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9048
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9049 ** The new function assoc-default is useful for searching an alist,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9050 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
9051 specify a comparison predicate, so this function is useful for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9052 searching comparing a string against an alist of regular expressions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9053
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9054 ** The functions unibyte-char-to-multibyte and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9055 multibyte-char-to-unibyte convert between unibyte and multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9056 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
9057 environment.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9058
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9059 ** The functions read-event, read-char and read-char-exclusive now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9060 take two optional arguments. PROMPT, if non-nil, specifies a prompt
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9061 string. SUPPRESS-INPUT-METHOD, if non-nil, says to disable the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9062 current input method for reading this one event.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9063
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9064 ** Two new variables print-escape-nonascii and print-escape-multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9065 now control whether to output certain characters as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9066 backslash-sequences. print-escape-nonascii applies to single-byte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9067 non-ASCII characters; print-escape-multibyte applies to multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9068 characters. Both of these variables are used only when printing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9069 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
9070
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9071 * 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
9072
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9073 ** Compiled Emacs Lisp files made with the modified "MBSK" version
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9074 of Emacs 20.2 do not work in Emacs 20.3.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9075
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9076 ** Buffer positions are now measured in characters, as they were
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9077 in Emacs 19 and before. This means that (forward-char 1)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9078 always increases point by 1.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9079
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9080 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
9081 considered obsolete. The function char-boundary-p has been deleted.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9082
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9083 See below for additional changes relating to multibyte characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9084
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9085 ** defcustom, defface and defgroup now accept the keyword `:version'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9086 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
9087 default value changed. For example,
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 (defcustom foo-max 34 "*Maximum number of foo's allowed."
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9090 :type 'integer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9091 :group 'foo
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9092 :version "20.3")
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 (defgroup foo-group nil "The foo group."
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9095 :version "20.3")
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9096
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9097 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
9098 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
9099 is recommended that new packages added to the distribution contain a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9100 `:version' in the top level group.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9101
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9102 This information is used to control the customize-changed-options command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9103
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9104 ** 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
9105 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
9106
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9107 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
9108 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
9109 support previous Emacs versions by explicitly setting these variables
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9110 to themselves.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9111
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9112 If you set the variable keyword-symbols-constant-flag to nil,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9113 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
9114 values whatever.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9115
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9116 ** There is a new debugger command, R.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9117 It evaluates an expression like e, but saves the result
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9118 in the buffer *Debugger-record*.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9119
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9120 ** Frame-local variables.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9121
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9122 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
9123 the function make-variable-frame-local; this enables frames to have
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9124 local bindings for that variable.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9125
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9126 These frame-local bindings are actually frame parameters: you create a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9127 frame-local binding in a specific frame by calling
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9128 modify-frame-parameters and specifying the variable name as the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9129 parameter name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9130
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9131 Buffer-local bindings take precedence over frame-local bindings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9132 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
9133 active; otherwise, if the selected frame has a frame-local binding,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9134 that binding is active; otherwise, the default binding is active.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9135
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9136 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
9137 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
9138 very transitory fashion, so that trying to produce any specific effect
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9139 through a window-local binding would not be very robust.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9140
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9141 ** `sregexq' and `sregex' are two new functions for constructing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9142 "symbolic regular expressions." These are Lisp expressions that, when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9143 evaluated, yield conventional string-based regexps. The symbolic form
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9144 makes it easier to construct, read, and maintain complex patterns.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9145 See the documentation in sregex.el.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9146
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9147 ** parse-partial-sexp's return value has an additional element which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9148 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
9149 parse-partial-sexp, starting its scan where the first call ended.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9150 The contents of this field are not yet finalized.
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 ** eval-region now accepts a fourth optional argument READ-FUNCTION.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9153 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
9154
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9155 ** unload-feature by default removes the feature's functions from
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9156 known hooks to avoid trouble, but a package providing FEATURE can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9157 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
9158
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9159 ** read-from-minibuffer no longer returns the argument DEFAULT-VALUE
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9160 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
9161 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
9162 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
9163
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9164 The other, more specialized minibuffer-reading functions continue to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9165 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
9166 empty input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9167
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9168 ** The new variable read-buffer-function controls which routine to use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9169 for selecting buffers. For example, if you set this variable to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9170 `iswitchb-read-buffer', iswitchb will be used to read buffer names.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9171 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
9172 `read-buffer' and return the selected buffer name as a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9173
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9174 ** The new function read-passwd reads a password from the terminal,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9175 echoing a period for each character typed. It takes three arguments:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9176 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
9177 default password to use if the user enters nothing.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9178
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9179 ** The variable fill-nobreak-predicate gives major modes a way to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9180 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
9181 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
9182 place where a break is being considered. If the function returns
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9183 non-nil, then the line won't be broken there.
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 ** window-end now takes an optional second argument, UPDATE.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9186 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
9187 up-to-date value for the buffer position corresponding to the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9188 end of the window, even if this requires computation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9189
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9190 ** other-buffer now takes an optional argument FRAME
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9191 which specifies which frame's buffer list to use.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9192 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
9193
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9194 ** The new variable buffer-display-time, always local in every buffer,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9195 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
9196 was directed to display this buffer.
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 ** It is now meaningful to compare two window-configuration objects
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9199 with `equal'. Two window-configuration objects are equal if they
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9200 describe equivalent arrangements of windows, in the same frame--in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9201 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
9202 set-window-configuration.
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 ** compare-window-configurations is a new function that compares two
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9205 window configurations loosely. It ignores differences in saved buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9206 positions and scrolling, and considers only the structure and sizes of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9207 windows and the choice of buffers to display.
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 minor-mode-overriding-map-alist allows major modes to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9210 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
9211 look like the elements of minor-mode-map-alist: (VARIABLE . KEYMAP).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9212
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9213 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
9214 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
9215 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
9216
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9217 minor-mode-overriding-map-alist is automatically local in all buffers,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9218 and it is meant to be set by major modes.
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 ** The function match-string-no-properties is like match-string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9221 except that it discards all text properties from the result.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9222
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9223 ** The function load-average now accepts an optional argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9224 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
9225 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
9226
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9227 ** The new variable temporary-file-directory specifies the directory
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9228 to use for creating temporary files. The default value is determined
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9229 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
9230 it is based on the TMP and TMPDIR environment variables.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9231
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9232 ** Menu changes
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 *** 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
9235 keywords :visible and :filter. The existing keyword :keys is now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9236 better supported.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9237
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9238 The variable `easy-menu-precalculate-equivalent-keybindings' controls
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9239 a new feature which calculates keyboard equivalents for the menu when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9240 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
9241 can set the variable to nil to disable this precalculation feature;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9242 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
9243
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9244 *** A new format for menu items is supported.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9245
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9246 In a keymap, a key binding that has the format
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9247 (STRING . REAL-BINDING) or (STRING HELP-STRING . REAL-BINDING)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9248 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
9249 starts with the symbol `menu-item'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9250
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9251 The format is:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9252 (menu-item ITEM-NAME) or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9253 (menu-item ITEM-NAME REAL-BINDING . ITEM-PROPERTY-LIST)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9254 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
9255 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
9256 The supported properties include
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9257
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9258 :enable FORM Evaluate FORM to determine whether the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9259 item is enabled.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9260 :visible FORM Evaluate FORM to determine whether the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9261 item should appear in the menu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9262 :filter FILTER-FN
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9263 FILTER-FN is a function of one argument,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9264 which will be REAL-BINDING.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9265 It should return a binding to use instead.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9266 :keys DESCRIPTION
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9267 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
9268 binding for REAL-BINDING. DESCRIPTION is expanded with
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9269 `substitute-command-keys' before it is used.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9270 :key-sequence KEY-SEQUENCE
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9271 KEY-SEQUENCE is a key-sequence for an equivalent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9272 keyboard binding.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9273 :key-sequence nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9274 This means that the command normally has no
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9275 keyboard equivalent.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9276 :help HELP HELP is the extra help string (not currently used).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9277 :button (TYPE . SELECTED)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9278 TYPE is :toggle or :radio.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9279 SELECTED is a form, to be evaluated, and its
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9280 value says whether this button is currently selected.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9281
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9282 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
9283 Eventually ordinary X-buttons may be supported.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9284
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9285 (menu-item ITEM-NAME) defines unselectable item.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9286
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9287 ** New event types
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9288
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9289 *** 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
9290 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
9291 corresponds to the amount and direction that the wheel is rotated,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9292 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
9293
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9294 (mouse-wheel POSITION DELTA)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9295
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9296 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
9297 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
9298 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
9299 negative DELTA indicates that the wheel was rotated backwards, towards
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9300 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
9301 forward, away from the user.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9302
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9303 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
9304
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9305 *** 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
9306 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
9307 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
9308 filenames that were dragged and dropped, which are then typically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9309 loaded into Emacs. The format is:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9310
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9311 (drag-n-drop POSITION FILES)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9312
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9313 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
9314 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
9315 that were dragged and dropped.
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 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
9318
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9319 ** Changes relating to multibyte characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9320
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9321 *** The variable enable-multibyte-characters is now read-only;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9322 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
9323 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
9324
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9325 *** In a string constant, `\ ' now stands for "nothing at all". You
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9326 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
9327 that could otherwise be read as part of the hex escape.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9328
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9329 *** String indices are now measured in characters, as they were
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9330 in Emacs 19 and before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9331
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9332 The function chars-in-string has been deleted.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9333 The function concat-chars has been renamed to `string'.
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 function set-buffer-multibyte sets the flag in the current
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9336 buffer that says whether the buffer uses multibyte representation or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9337 unibyte representation. If the argument is nil, it selects unibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9338 representation. Otherwise it selects multibyte representation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9339
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9340 This function does not change the contents of the buffer, viewed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9341 as a sequence of bytes. However, it does change the contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9342 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
9343 one character when the buffer uses multibyte representation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9344 will count as two characters using unibyte representation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9345
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9346 This function sets enable-multibyte-characters to record which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9347 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
9348 (including its markers, overlays and text properties) so that they are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9349 consistent with the new representation.
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 *** string-make-multibyte takes a string and converts it to multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9352 representation. Most of the time, you don't need to care
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9353 about the representation, because Emacs converts when necessary;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9354 however, it makes a difference when you compare strings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9355
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9356 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
9357 nonascii-insert-offset to each character, or by translating them
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9358 using the table nonascii-translation-table.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9359
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9360 *** string-make-unibyte takes a string and converts it to unibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9361 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
9362 representation, but it makes a difference when you compare strings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9363
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9364 The conversion from multibyte to unibyte representation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9365 loses information; the only time Emacs performs it automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9366 is when inserting a multibyte string into a unibyte buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9367
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9368 *** string-as-multibyte takes a string, and returns another string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9369 which contains the same bytes, but treats them as multibyte.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9370
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9371 *** string-as-unibyte takes a string, and returns another string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9372 which contains the same bytes, but treats them as unibyte.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9373
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9374 *** The new function compare-strings lets you compare
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9375 portions of two strings. Unibyte strings are converted to multibyte,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9376 so that a unibyte string can match a multibyte string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9377 You can specify whether to ignore case or not.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9378
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9379 *** assoc-ignore-case now uses compare-strings so that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9380 it can treat unibyte and multibyte strings as equal.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9381
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9382 *** Regular expression operations and buffer string searches now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9383 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
9384 buffer or string being searched.
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 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
9387 [...] to match all non-ASCII characters. This does still work when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9388 searching or matching a unibyte buffer or string, but not when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9389 searching or matching a multibyte string. Unfortunately, there is no
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9390 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
9391 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
9392 expression [^\0-\177] works for it.
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 *** Structure of coding system changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9395
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9396 All coding systems (including aliases and subsidiaries) are named
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9397 by symbols; the symbol's `coding-system' property is a vector
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9398 which defines the coding system. Aliases share the same vector
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9399 as the principal name, so that altering the contents of this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9400 vector affects the principal name and its aliases. You can define
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9401 your own alias name of a coding system by the function
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9402 define-coding-system-alias.
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 coding system definition includes a property list of its own. Use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9405 the new functions `coding-system-get' and `coding-system-put' to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9406 access such coding system properties as post-read-conversion,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9407 pre-write-conversion, character-translation-table-for-decode,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9408 character-translation-table-for-encode, mime-charset, and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9409 safe-charsets. For instance, (coding-system-get 'iso-latin-1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9410 'mime-charset) gives the corresponding MIME-charset parameter
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9411 `iso-8859-1'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9412
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9413 Among the coding system properties listed above, safe-charsets is new.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9414 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
9415 coding system can correctly encode and decode. For instance:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9416 (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
9417
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9418 Here, "correctly encode" means that the encoded character sets can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9419 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
9420 are capable of that coding system. Though, Emacs itself can encode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9421 the other character sets and read it back correctly.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9422
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9423 *** 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
9424 proper coding system for encoding the specified region or string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9425 This function requires a user interaction.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9426
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9427 *** The new functions find-coding-systems-region and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9428 find-coding-systems-string are helper functions used by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9429 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
9430 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
9431 a user interaction, use one of these functions instead of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9432 select-safe-coding-system.
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 explicit encoding and decoding functions, such as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9435 decode-coding-region and encode-coding-string, now set
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9436 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
9437 was done.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9438
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9439 *** The new function detect-coding-with-language-environment can be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9440 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
9441 coding systems used by some specific language environment.
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 *** The functions detect-coding-region and detect-coding-string always
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9444 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
9445 characters are found, they now return a list of single element
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9446 `undecided' or its subsidiaries.
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 *** The new functions coding-system-change-eol-conversion and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9449 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
9450 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
9451 converted.
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 set-selection-coding-system can be used to set a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9454 coding system for communicating with other X clients.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9455
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9456 *** The function `map-char-table' now passes as argument only valid
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9457 character codes, plus generic characters that stand for entire
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9458 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
9459 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
9460 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
9461 range of characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9462
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9463 *** 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
9464 Lisp object is a valid character code or not.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9465
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9466 *** The new function `charset-after' returns a charset of a character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9467 in the current buffer at position POS.
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 *** Input methods are now implemented using the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9470 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
9471 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
9472 character with no modifier bits, it calls that function, passing the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9473 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
9474 binding input-method-function to nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9475
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9476 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
9477 method processing. These events will be processed sequentially as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9478 input, before resorting to unread-command-events. Events returned by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9479 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
9480 not even if they are printing characters with no modifier bits.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9481
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9482 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
9483 subsequent events of a key sequence.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9484
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9485 *** You can customize any language environment by using
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9486 set-language-environment-hook and exit-language-environment-hook.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9487
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9488 The hook `exit-language-environment-hook' should be used to undo
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9489 customizations that you made with set-language-environment-hook. For
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9490 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
9491 environment by set-language-environment-hook, you should set up
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9492 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
9493
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9494 * Changes in Emacs 20.1
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 ** Emacs has a new facility for customization of its many user
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9497 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
9498 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
9499 tree structure.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9500
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9501 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
9502 user option and ensures that you don't use invalid values.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9503
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9504 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
9505 session or permanently. (Permanent settings are stored automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9506 in your .emacs file.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9507
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9508 ** Scroll bars are now on the left side of the window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9509 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
9510
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9511 ** The mode line no longer includes the string `Emacs'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9512 This makes more space in the mode line for other information.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9513
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9514 ** When you select a region with the mouse, it is highlighted
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9515 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
9516 kills the region.
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 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
9519 delete the character before point, as usual.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9520
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9521 ** In an incremental search the whole current match is highlighted
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9522 on terminals which support this. (You can disable this feature
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9523 by setting search-highlight to nil.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9524
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9525 ** 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
9526 insert the default value into the minibuffer as text. In effect,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9527 the default value (if the minibuffer routines know it) is tacked
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9528 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
9529 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
9530 past.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9531
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9532 ** In Text mode, now only blank lines separate paragraphs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9533 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
9534 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
9535 TAB in Text mode now runs the command indent-relative; this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9536 makes a practical difference only when you use indented paragraphs.
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 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
9539 and is an alias for it.
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 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
9542 use the new mode, Paragraph Indent Text mode.
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 ** Scrolling changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9545
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9546 *** Scroll commands to scroll a whole screen now preserve the screen
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9547 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
9548
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9549 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
9550 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
9551 where it started.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9552
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9553 *** 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
9554 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
9555 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
9556 does not exceed `scroll-conservatively' lines.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9557
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9558 *** 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
9559 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
9560 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
9561 recenters the window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9562
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9563 ** International character set support (MULE)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9564
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9565 Emacs now supports a wide variety of international character sets,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9566 including European variants of the Latin alphabet, as well as Chinese,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9567 Devanagari (Hindi and Marathi), Ethiopian, Greek, IPA, Japanese,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9568 Korean, Lao, Russian, Thai, Tibetan, and Vietnamese scripts. These
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9569 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
9570 MULE (for "MULti-lingual Enhancement to GNU Emacs")
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9571
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9572 Users of these scripts have established many more-or-less standard
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9573 coding systems for storing files. Emacs uses a single multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9574 character encoding within Emacs buffers; it can translate from a wide
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9575 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
9576 into any of these coding systems when saving a file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9577
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9578 Keyboards, even in the countries where these character sets are used,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9579 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
9580 supports various "input methods", typically one for each script or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9581 language, to make it possible to type them.
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 The Emacs internal multibyte encoding represents a non-ASCII
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9584 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
9585
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9586 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
9587 to multibyte characters, coding systems, and input methods.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9588
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9589 You can disable multibyte character support as follows:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9590
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9591 (setq-default enable-multibyte-characters nil)
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 Calling the function standard-display-european turns off multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9594 characters, unless you specify a non-nil value for the second
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9595 argument, AUTO. This provides compatibility for people who are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9596 already using standard-display-european to continue using unibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9597 characters for their work until they want to change.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9598
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9599 *** Input methods
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9600
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9601 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
9602 specifically for interactive input. In Emacs, typically each language
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9603 has its own input method (though sometimes several languages which use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9604 the same characters can share one input method). Some languages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9605 support several input methods.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9606
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9607 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
9608 another alphabet. This is how the Greek and Russian input methods
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9609 work.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9610
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9611 A more powerful technique is composition: converting sequences of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9612 characters into one letter. Many European input methods use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9613 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
9614 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
9615 sequence of two characters that might be converted into a single
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9616 letter.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9617
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9618 The input methods for syllabic scripts typically use mapping followed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9619 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
9620 First, letters are mapped into symbols for particular sounds or tone
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9621 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
9622 mapped into one syllable sign--most often a "composite character".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9623
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9624 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
9625 they are handled specially. First you input a whole word using
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9626 phonetic spelling; then, after the word is in the buffer, Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9627 converts it into one or more characters using a large dictionary.
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 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
9630 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
9631 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
9632 the first guess is wrong.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9633
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9634 *** The command C-x RET m (toggle-enable-multibyte-characters)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9635 turns multibyte character support on or off for the current buffer.
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 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
9638 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
9639 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
9640 the European characters, ISO Latin-1 and ISO Latin-2.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9641
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9642 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
9643 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
9644 includes all the characters in these character sets, and Emacs can
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9645 translate automatically to and from either one.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9646
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9647 *** Visiting a file in unibyte mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9648
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9649 Turning off multibyte character support in the buffer after visiting a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9650 file with multibyte code conversion will display the multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9651 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
9652 what you want.
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 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
9655 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
9656 system when reading the file. This coding system also turns off
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9657 multibyte characters in that buffer.
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 If you turn off multibyte character support entirely, this turns off
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9660 character conversion as well.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9661
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9662 *** Displaying international characters on X Windows.
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 A font for X typically displays just one alphabet or script.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9665 Therefore, displaying the entire range of characters Emacs supports
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9666 requires using many fonts.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9667
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9668 Therefore, Emacs now supports "fontsets". Each fontset is a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9669 collection of fonts, each assigned to a range of character codes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9670
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9671 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
9672 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
9673 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
9674 you would use a font.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9675
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9676 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
9677 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
9678 display that character. It will display an empty box instead.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9679
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9680 The fontset height and width are determined by the ASCII characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9681 (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
9682 characters).
30922
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 *** Defining fontsets.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9685
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9686 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
9687 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
9688 with the `-fn' option or the `Font' X resource.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9689
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9690 Emacs creates a standard fontset automatically according to the value
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9691 of standard-fontset-spec. This fontset's short name is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9692 `fontset-standard'. Bold, italic, and bold-italic variants of the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9693 standard fontset are created automatically.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9694
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9695 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
9696 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
9697 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
9698 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
9699 name is `fontset-startup'.
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 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
9702 The resource value should have this form:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9703 FONTSET-NAME, [CHARSET-NAME:FONT-NAME]...
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9704 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
9705 * most fields should be just the wild card "*".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9706 * the CHARSET_REGISTRY field should be "fontset"
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9707 * the CHARSET_ENCODING field can be any nickname of the fontset.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9708 The construct CHARSET-NAME:FONT-NAME can be repeated any number
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9709 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
9710 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
9711 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
9712
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9713 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
9714 last two font name fields, CHARSET_REGISTRY and CHARSET_ENCODING.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9715 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
9716
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9717 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
9718 font by substituting into FONTSET-NAME. For instance, with the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9719 following resource,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9720 Emacs*Fontset-0: -*-fixed-medium-r-normal-*-24-*-*-*-*-*-fontset-24
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9721 the font for ASCII is generated as below:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9722 -*-fixed-medium-r-normal-*-24-*-ISO8859-1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9723 Here is the substitution rule:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9724 Change CHARSET_REGISTRY and CHARSET_ENCODING to that of the charset
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9725 defined in the variable x-charset-registries. For instance, ASCII has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9726 the entry (ascii . "ISO8859-1") in this variable. Then, reduce
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9727 sequences of wild cards -*-...-*- with a single wildcard -*-.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9728 (This is to prevent use of auto-scaled fonts.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9729
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9730 The function which processes the fontset resource value to create the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9731 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
9732 that function explicitly to create a fontset.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9733
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9734 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
9735 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
9736 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
9737 fontset for other purposes including menus, and they cannot handle
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9738 fontsets.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9739
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9740 *** The command M-x set-language-environment sets certain global Emacs
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9741 defaults for a particular choice of language.
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 Selecting a language environment typically specifies a default input
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9744 method and which coding systems to recognize automatically when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9745 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
9746 already visited; the text in those buffers is not affected. The
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9747 language environment may also specify a default choice of coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9748 system for new files that you create.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9749
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9750 It makes no difference which buffer is current when you use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9751 set-language-environment, because these defaults apply globally to the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9752 whole Emacs session.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9753
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9754 For example, M-x set-language-environment RET Latin-1 RET
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9755 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
9756 with (set-language-environment "Latin-1").
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9757
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9758 *** The command C-x RET f (set-buffer-file-coding-system)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9759 specifies the file coding system for the current buffer. This
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9760 specifies what sort of character code translation to do when saving
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9761 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
9762 coding systems that Emacs supports.
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 *** The command C-x RET c (universal-coding-system-argument)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9765 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
9766 This command uses the minibuffer to read a coding system name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9767 After you exit the minibuffer, the specified coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9768 is used for *the immediately following command*.
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 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
9771 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
9772
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9773 If the immediately following command does not use the coding system,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9774 then C-x RET c ultimately has no effect.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9775
47283
0f65e6f1d100 Fix spacing.
Juanma Barranquero <lekktu@gmail.com>
parents: 47201
diff changeset
9776 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
9777 visits the file `temp' treating it as ISO Latin-1.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9778
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9779 *** You can specify the coding system for a file using the -*-
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9780 construct. Include `coding: CODINGSYSTEM;' inside the -*-...-*-
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9781 to specify use of coding system CODINGSYSTEM. You can also
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9782 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
9783 of the file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9784
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9785 *** The command C-x RET t (set-terminal-coding-system) specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9786 the coding system for terminal output. If you specify a character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9787 code for terminal output, all characters output to the terminal are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9788 translated into that character code.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9789
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9790 This feature is useful for certain character-only terminals built in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9791 various countries to support the languages of those countries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9792
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9793 By default, output to the terminal is not translated at all.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9794
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9795 *** The command C-x RET k (set-keyboard-coding-system) specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9796 the coding system for keyboard input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9797
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9798 Character code translation of keyboard input is useful for terminals
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9799 with keys that send non-ASCII graphic characters--for example,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9800 some terminals designed for ISO Latin-1 or subsets of it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9801
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9802 By default, keyboard input is not translated at all.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9803
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9804 Character code translation of keyboard input is similar to using an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9805 input method, in that both define sequences of keyboard input that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9806 translate into single characters. However, input methods are designed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9807 to be convenient for interactive use, while the code translations are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9808 designed to work with terminals.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9809
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9810 *** The command C-x RET p (set-buffer-process-coding-system)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9811 specifies the coding system for input and output to a subprocess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9812 This command applies to the current buffer; normally, each subprocess
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9813 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
9814 translation to and from a particular subprocess by giving the command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9815 in the corresponding buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9816
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9817 By default, process input and output are not translated at all.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9818
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9819 *** The variable file-name-coding-system specifies the coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9820 to use for encoding file names before operating on them.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9821 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
9822
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9823 *** The command C-\ (toggle-input-method) activates or deactivates
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9824 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
9825 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
9826 want to use.
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 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
9829 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
9830
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9831 *** Some input methods remap the keyboard to emulate various keyboard
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9832 layouts commonly used for particular scripts. How to do this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9833 remapping properly depends on your actual keyboard layout. To specify
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9834 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
9835
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9836 *** The command C-h C (describe-coding-system) displays
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9837 the coding systems currently selected for various purposes, plus
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9838 related information.
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-h h (view-hello-file) displays a file called
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9841 HELLO, which has examples of text in many languages, using various
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9842 scripts.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9843
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9844 *** The command C-h L (describe-language-support) displays
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9845 information about the support for a particular language.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9846 You specify the language as an argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9847
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9848 *** The mode line now contains a letter or character that identifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9849 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
9850 first dash.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9851
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9852 A dash indicates the default state of affairs: no code conversion
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9853 (except CRLF => newline if appropriate). `=' means no conversion
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9854 whatsoever. The ISO 8859 coding systems are represented by digits
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9855 1 through 9. Other coding systems are represented by letters:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9856
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9857 A alternativnyj (Russian)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9858 B big5 (Chinese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9859 C cn-gb-2312 (Chinese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9860 C iso-2022-cn (Chinese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9861 D in-is13194-devanagari (Indian languages)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9862 E euc-japan (Japanese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9863 I iso-2022-cjk or iso-2022-ss2 (Chinese, Japanese, Korean)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9864 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
9865 K euc-korea (Korean)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9866 R koi8 (Russian)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9867 Q tibetan
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9868 S shift_jis (Japanese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9869 T lao
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9870 T tis620 (Thai)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9871 V viscii or vscii (Vietnamese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9872 i iso-2022-lock (Chinese, Japanese, Korean)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9873 k iso-2022-kr (Korean)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9874 v viqr (Vietnamese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9875 z hz (Chinese)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9876
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9877 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
9878 two additional characters appear in between the dash and the file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9879 coding system. These two characters describe the coding system for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9880 keyboard input, and the coding system for terminal output.
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 *** The new variable rmail-file-coding-system specifies the code
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9883 conversion to use for RMAIL files. The default value is nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9884
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9885 When you read mail with Rmail, each message is decoded automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9886 into Emacs' internal format. This has nothing to do with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9887 rmail-file-coding-system. That variable controls reading and writing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9888 Rmail files themselves.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9889
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9890 *** The new variable sendmail-coding-system specifies the code
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9891 conversion for outgoing mail. The default value is nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9892
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9893 Actually, there are three different ways of specifying the coding system
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9894 for sending mail:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9895
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9896 - 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
9897 - 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
9898 - Otherwise, the default coding system for new files is used,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9899 if that is non-nil. That comes from your language environment.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9900 - Otherwise, Latin-1 is used.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9901
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9902 *** 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
9903 to specify the language for the tutorial file. Currently, English,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9904 Japanese, Korean and Thai are supported. We welcome additional
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9905 translations.
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 ** 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
9908 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
9909 insert-file-literally which inserts a file into the current buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9910 without any conversion.
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 ** C-q's handling of octal character codes is changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9913 You can now specify any number of octal digits.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9914 RET terminates the digits and is discarded;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9915 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
9916
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9917 ** There are new commands for looking up Info documentation for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9918 functions, variables and file names used in your programs.
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 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
9921 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
9922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9923 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
9924 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
9925
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9926 ** M-TAB in most programming language modes now runs the command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9927 complete-symbol. This command performs completion on the symbol name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9928 in the buffer before point.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9929
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9930 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
9931 symbols documented in the Info files for the programming language that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9932 you are using.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9933
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9934 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
9935 just like the old binding of M-TAB (complete-tag).
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 ** File locking works with NFS now.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9938
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9939 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
9940 in the same directory as FILENAME.
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 This means that collision detection between two different machines now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9943 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
9944 can become a bottleneck.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9945
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9946 The new method does have drawbacks. It means that collision detection
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9947 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
9948 create new files. Collision detection also doesn't operate when the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9949 file server does not support symbolic links. But these conditions are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9950 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
9951 so useful that the change is worth while.
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 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
9954 are stale. So you may occasionally get warnings about spurious
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9955 collisions. When you determine that the collision is spurious, just
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9956 tell Emacs to go ahead anyway.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9957
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9958 ** 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
9959 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
9960 show-paren-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9961
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9962 ** 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
9963 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
9964 delsel.el. Instead you must call the function delete-selection-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9965
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9966 ** 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
9967 within symbols or filenames, it is no longer sufficient to load
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9968 complete.el. Instead you must call the function partial-completion-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9969
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9970 ** If you wish to use uniquify to rename buffers for you,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9971 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
9972 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
9973
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9974 ** Changes in View mode.
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 *** Several new commands are available in View mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9977 Do H in view mode for a list of commands.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9978
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9979 *** There are two new commands for entering View mode:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9980 view-file-other-frame and view-buffer-other-frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9981
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9982 *** 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
9983 previous state.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9984
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9985 *** New customization variable view-scroll-auto-exit. If non-nil,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9986 scrolling past end of buffer makes view mode exit.
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 *** New customization variable view-exits-all-viewing-windows. If
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9989 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
9990 not just the selected window.
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 *** New customization variable view-read-only. If non-nil, visiting a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9993 read-only file automatically enters View mode, and toggle-read-only
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9994 turns View mode on or off.
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 *** New customization variable view-remove-frame-by-deleting controls
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
9997 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
9998 delete the frame, if nil make an icon of it.
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 ** 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
10001 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
10002
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10003 ** 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
10004 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
10005 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
10006 which version to compare with.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10007
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10008 ** When using hideshow.el, incremental search can temporarily show hidden
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10009 blocks if a match is inside the block.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10010
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10011 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
10012 is outside the block. By customizing the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10013 isearch-hide-immediately you can choose to hide all the temporarily
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10014 shown blocks only when exiting from incremental search.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10015
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10016 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
10017 of blocks to temporarily show during isearch: comment blocks, code
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10018 blocks, all of them or none.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10019
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10020 ** 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
10021 current buffer and deletes the selected window. It asks for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10022 confirmation first.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10023
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10024 ** 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
10025 now changes the major mode according to that file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10026 However, the mode will not be changed if
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10027 (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
10028 (2) the current major mode is a "special" mode,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10029 not suitable for ordinary files, or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10030 (3) the new file name does not particularly specify any mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10031
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10032 This applies to M-x set-visited-file-name as well.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10033
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10034 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
10035 these commands do not change the major mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10036
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10037 ** M-x occur changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10038
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10039 *** If the argument to M-x occur contains upper case letters,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10040 it performs a case-sensitive search.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10041
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10042 *** In the *Occur* buffer made by M-x occur,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10043 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
10044 using the same regular expression and the same buffer as before.
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 ** 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
10047 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
10048 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
10049 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
10050 buffer--then the highlighting moves to that window.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10051
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10052 ** 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
10053 after the command finishes. The message suggesting key bindings
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10054 appears temporarily in the echo area. The previous echo area contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10055 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
10056
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10057 ** Each frame now independently records the order for recently
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10058 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
10059 buffers recently selected in the selected frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10060
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10061 ** Outline mode changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10062
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10063 *** Outline mode now uses overlays (this is the former noutline.el).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10064
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10065 *** Incremental searches skip over invisible text in Outline 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 ** 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
10068 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
10069 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
10070 was already active.
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 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
10073 unknowingly move away from minibuffers, leaving them active, and then
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10074 get confused by it.
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 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
10077 set enable-recursive-minibuffers to non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10078
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10079 ** Changes in dynamic abbrevs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10080
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10081 *** Expanding dynamic abbrevs with M-/ is now smarter about case
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10082 conversion. If the expansion has mixed case not counting the first
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10083 character, and the abbreviation matches the beginning of the expansion
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10084 including case, then the expansion is copied verbatim.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10085
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10086 The expansion is also copied verbatim if the abbreviation itself has
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10087 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
10088 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
10089
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10090 *** The values of `dabbrev-case-replace' and `dabbrev-case-fold-search'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10091 are no longer Lisp expressions. They have simply three possible
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10092 values.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10093
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10094 `dabbrev-case-replace' has these three values: nil (don't preserve
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10095 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
10096 `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
10097 case), t (do), or `case-fold-search' (do like search).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10098
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10099 ** Minibuffer history lists are truncated automatically now to a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10100 certain length. The variable history-length specifies how long they
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10101 can be. The default value is 30.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10102
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10103 ** Changes in Mail mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10104
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10105 *** 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
10106 Instead, it runs the command `compose-mail', which invokes the mail
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10107 composition mechanism you have selected with the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10108 `mail-user-agent'. The default choice of user agent is
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10109 `sendmail-user-agent', which gives behavior compatible with the old
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10110 behavior.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10111
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10112 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
10113 compose-mail-other-frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10114
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10115 *** 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
10116 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
10117 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
10118 buffer that shows the original message.
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 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
10121 with separator lines around the contents.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10122
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10123 *** The command M-x expand-mail-aliases expands all mail aliases
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10124 in suitable mail headers. Emacs automatically extracts mail alias
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10125 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
10126 need to expand mail aliases yourself before sending mail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10127
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10128 *** New features in the mail-complete command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10129
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10130 **** The mail-complete command now inserts the user's full name,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10131 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
10132 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
10133 Its values are like those of mail-from-style.
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 variable mail-passwd-command lets you specify a shell command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10136 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
10137 /etc/passwd.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10138
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10139 **** 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
10140 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
10141 /etc/passwd.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10142
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10143 ** You can "quote" a file name to inhibit special significance of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10144 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
10145 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
10146 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
10147
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10148 Emacs uses this new construct automatically when necessary, such as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10149 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
10150 be taken to be magic.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10151
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10152 ** 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
10153 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
10154 available in a Compile mode buffer, as with M-x grep.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10155
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10156 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
10157 (-e prevents problems if the search pattern starts with a dash.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10158
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10159 ** 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
10160 suggest they are probably not needed in the long run.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10161
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10162 In Dired, * is now a prefix key for mark-related commands.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10163
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10164 new key dired.el binding old key
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10165 ------- ---------------- -------
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10166 * c dired-change-marks c
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10167 * m dired-mark m
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10168 * * dired-mark-executables * (binding deleted)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10169 * / dired-mark-directories / (binding deleted)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10170 * @ dired-mark-symlinks @ (binding deleted)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10171 * u dired-unmark u
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10172 * DEL dired-unmark-backward DEL
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
10173 * ? dired-unmark-all-files C-M-?
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10174 * ! dired-unmark-all-marks
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10175 * % dired-mark-files-regexp % m
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10176 * C-n dired-next-marked-file M-}
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10177 * C-p dired-prev-marked-file M-{
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10178
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10179 ** Rmail changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10180
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10181 *** When Rmail cannot convert your incoming mail into Babyl format, it
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10182 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
10183 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
10184 each time you run it.
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 *** In Rmail, the variable rmail-summary-line-count-flag now controls
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10187 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
10188
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10189 *** 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
10190 messages) now take repeat counts as arguments. A negative argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10191 means to move in the opposite direction.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10192
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10193 *** 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
10194 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
10195
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10196 *** 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
10197 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
10198 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
10199 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
10200 for output.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10201
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10202 ** Gnus changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10203
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10204 *** nntp.el has been totally rewritten in an asynchronous fashion.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10205
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10206 *** Article prefetching functionality has been moved up into
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10207 Gnus.
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 *** Scoring can now be performed with logical operators like
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10210 `and', `or', `not', and parent redirection.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10211
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10212 *** Article washing status can be displayed in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10213 article mode line.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10214
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10215 *** gnus.el has been split into many smaller files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10216
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10217 *** Suppression of duplicate articles based on Message-ID.
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 (setq gnus-suppress-duplicates t)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10220
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10221 *** New variables for specifying what score and adapt files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10222 are to be considered home score and adapt files. See
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10223 `gnus-home-score-file' and `gnus-home-adapt-files'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10224
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10225 *** Groups can inherit group parameters from parent topics.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10226
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10227 *** Article editing has been revamped and is now usable.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10228
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10229 *** Signatures can be recognized in more intelligent fashions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10230 See `gnus-signature-separator' and `gnus-signature-limit'.
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 *** Summary pick mode has been made to look more nn-like.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10233 Line numbers are displayed and the `.' command can be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10234 used to pick articles.
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 *** Commands for moving the .newsrc.eld from one server to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10237 another have been added.
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 `M-x gnus-change-server'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10240
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10241 *** A way to specify that "uninteresting" fields be suppressed when
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10242 generating lines in buffers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10243
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10244 *** 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
10245 `C-M-_'.
30922
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 *** 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
10248
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10249 *** 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
10250
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10251 (setq gnus-use-adaptive-scoring '(word))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10252
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10253 *** Scores can be decayed.
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 (setq gnus-decay-scores t)
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 *** 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
10258 Date is normalized to compact ISO 8601 format first.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10259
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10260 *** 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
10261 the native server.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10262
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10263 `M-x gnus-group-clear-data-on-native-groups'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10264
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10265 *** A new command for reading collections of documents
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
10266 (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
10267
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10268 *** Process mark sets can be pushed and popped.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10269
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10270 *** A new mail-to-news backend makes it possible to post
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10271 even when the NNTP server doesn't allow posting.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10272
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10273 *** A new backend for reading searches from Web search engines
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10274 (DejaNews, Alta Vista, InReference) has been added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10275
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10276 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
10277 a group.
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 *** Groups inside topics can now be sorted using the standard
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10280 sorting functions, and each topic can be sorted independently.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10281
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10282 See the commands under the `T S' submap.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10283
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10284 *** Subsets of the groups can be sorted independently.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10285
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10286 See the commands under the `G P' submap.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10287
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10288 *** Cached articles can be pulled into the groups.
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 Use the `Y c' command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10291
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10292 *** Score files are now applied in a more reliable order.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10293
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10294 *** Reports on where mail messages end up can be generated.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10295
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10296 `M-x nnmail-split-history'
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 *** More hooks and functions have been added to remove junk
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10299 from incoming mail before saving the mail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10300
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10301 See `nnmail-prepare-incoming-header-hook'.
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 *** The nnml mail backend now understands compressed article files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10304
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10305 *** 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
10306 the following code, for instance, in your .emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10307
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10308 (add-hook 'gnus-startup-hook 'gnus-mule-initialize)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10309
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10310 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
10311 and show appropriate characters. (Note: if you are using gnus-mime
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10312 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
10313 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
10314 this issue.)
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 Since it is impossible to distinguish all coding systems
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10317 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
10318 particular news group. This can be done by:
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 (gnus-mule-add-group NEWSGROUP 'CODING-SYSTEM)
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 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
10323 of newsgroups. If NEWSGROUP is "XXX.YYY", all news groups under
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10324 "XXX.YYY" (including "XXX.YYY.ZZZ") will use the specified coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10325 system. CODING-SYSTEM specifies which coding system to use (for both
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10326 for reading and posting).
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 CODING-SYSTEM can also be a cons cell of the form
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10329 (READ-CODING-SYSTEM . POST-CODING-SYSTEM)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10330 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
10331 newsgroups, while POST-CODING-SYSTEM is used when you post messages
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10332 there.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10333
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10334 Emacs knows the right coding systems for certain newsgroups by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10335 default. Here are some of these default settings:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10336
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10337 (gnus-mule-add-group "fj" 'iso-2022-7)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10338 (gnus-mule-add-group "alt.chinese.text" 'hz-gb-2312)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10339 (gnus-mule-add-group "alt.hk" 'hz-gb-2312)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10340 (gnus-mule-add-group "alt.chinese.text.big5" 'cn-big5)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10341 (gnus-mule-add-group "soc.culture.vietnamese" '(nil . viqr))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10342
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10343 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
10344 the mail is encoded according to sendmail-coding-system, as usual.
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 ** CC mode changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10347
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10348 *** 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
10349 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
10350 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
10351 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
10352 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
10353 loaded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10354
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10355 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
10356 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
10357 style variables have buffer local values. By default, all buffers
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10358 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
10359 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
10360 must do this *before* CC Mode is loaded.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10361
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10362 *** The new variable c-indentation-style holds the C style name
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10363 of the current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10364
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10365 *** The variable c-block-comments-indent-p has been deleted, because
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10366 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
10367 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
10368
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10369 *** There is a new indentation style "python", which specifies the C
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10370 style that the Python developers like.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10371
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10372 *** There is a new c-cleanup-list option: brace-elseif-brace.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10373 This says to put ...} else if (...) {... on one line,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10374 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
10375
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10376 ** VC Changes [new]
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10377
36908
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10378 *** 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
10379 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
10380 directory and its subdirectories (aside from files already locked).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10381
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10382 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
10383 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
10384 developers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10385
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10386 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
10387 RET in a buffer visiting that file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10388
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10389 *** 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
10390 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
10391 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
10392 calls "cvs edit", which notifies the other developers of it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10393
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10394 *** 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
10395 version numbers, based on the current state of the file.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10396
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10397 ** Calendar changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10398
36908
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10399 *** 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
10400 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
10401 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
10402 following/previous years.
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10403
365eecf7e7d7 Added a note about new support for the Baha'i calendar.
John Wiegley <johnw@newartisans.com>
parents: 36885
diff changeset
10404 *** 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
10405 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
10406 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
10407 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
10408 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
10409 supposed attribute of God.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10410
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10411 ** ps-print changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10412
37289
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10413 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
10414 layout.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10415
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10416 *** Headers & Footers (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10417
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10418 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
10419 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
10420 printer system has this behavior, set variable
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10421 `ps-banner-page-when-duplexing' to t.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10422
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10423 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
10424 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
10425 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
10426
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10427 The variable `ps-spool-config' specifies who is responsible for
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10428 setting duplex mode and page size. Valid values are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10429
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10430 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
10431 Don't forget to set `ps-lpr-switches' to select duplex
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10432 printing for your printer.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10433
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10434 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
10435 setpagedevice PostScript operator.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10436
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10437 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
10438 the setpagedevice PostScript operator.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10439
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10440 The variable `ps-spool-tumble' specifies how the page images on
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10441 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
10442 `ps-spool-tumble' is nil, ps-print produces output suitable for
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10443 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
10444 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
10445 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
10446 The default value is nil.
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 The variable `ps-header-frame-alist' specifies a header frame
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10449 properties alist. Valid frame properties are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10450
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10451 fore-color Specify the foreground frame color.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10452 Value should be a float number between 0.0 (black
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10453 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
10454 color name, or a list of 3 float numbers which
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10455 correspond to the Red Green Blue color scale, each
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10456 float number between 0.0 (dark color) and 1.0 (bright
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10457 color). The default is 0 ("black").
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10458
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10459 back-color Specify the background frame color (similar to fore-color).
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10460 The default is 0.9 ("gray90").
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10461
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10462 shadow-color Specify the shadow color (similar to fore-color).
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10463 The default is 0 ("black").
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10464
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10465 border-color Specify the border color (similar to fore-color).
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10466 The default is 0 ("black").
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10467
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10468 border-width Specify the border width.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10469 The default is 0.4.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10470
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10471 Any other property is ignored.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10472
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10473 Don't change this alist directly; instead use Custom, or the
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10474 `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
10475 documentation).
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10476
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10477 Ps-print can also print footers. The footer variables are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10478 `ps-print-footer', `ps-footer-offset', `ps-print-footer-frame',
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10479 `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
10480 `ps-footer-lines', `ps-left-footer', `ps-right-footer' and
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10481 `ps-footer-frame-alist'. These variables are similar to those
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10482 controlling headers.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10483
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10484 *** Color management (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10485
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10486 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
10487 color.
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 *** Face Management (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10490
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10491 If you need to print without worrying about face background colors,
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10492 set the variable `ps-use-face-background' which specifies if face
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10493 background should be used. Valid values are:
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 t always use face background color.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10496 nil never use face background color.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10497 (face...) list of faces whose background color will be used.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10498
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10499 *** N-up printing (subgroup)
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 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
10502 sheet of paper.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10503
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10504 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
10505 between the sheet border and the n-up printing.
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 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
10508 each page.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10509
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10510 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
10511 on each sheet of paper. Following are the valid values for
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10512 `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
10513
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10514 `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
10515 5 6 7 8 5 6 7 8
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10516 9 10 11 12 1 2 3 4
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10517
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10518 `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
10519 8 7 6 5 8 7 6 5
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10520 12 11 10 9 4 3 2 1
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10521
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10522 `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
10523 2 5 8 11 2 5 8 11
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10524 3 6 9 12 1 4 7 10
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10525
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10526 `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
10527 11 8 5 2 11 8 5 2
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10528 12 9 6 3 10 7 4 1
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10529
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10530 Any other value is treated as `left-top'.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10531
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10532 *** Zebra stripes (subgroup)
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-zebra-color' controls the zebra stripes grayscale or
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10535 RGB color.
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 The variable `ps-zebra-stripe-follow' specifies how zebra stripes
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10538 continue on next page. Visually, valid values are (the character `+'
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10539 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
10540
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10541 `nil' `follow' `full' `full-follow'
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10542 Current Page -------- ----------- --------- ----------------
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10543 1 XXXXX + 1 XXXXXXXX + 1 XXXXXX + 1 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10544 2 XXXXX + 2 XXXXXXXX + 2 XXXXXX + 2 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10545 3 XXXXX + 3 XXXXXXXX + 3 XXXXXX + 3 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10546 4 + 4 + 4 + 4 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10547 5 + 5 + 5 + 5 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10548 6 + 6 + 6 + 6 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10549 7 XXXXX + 7 XXXXXXXX + 7 XXXXXX + 7 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10550 8 XXXXX + 8 XXXXXXXX + 8 XXXXXX + 8 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10551 9 XXXXX + 9 XXXXXXXX + 9 XXXXXX + 9 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10552 10 + 10 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10553 11 + 11 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10554 -------- ----------- --------- ----------------
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10555 Next Page -------- ----------- --------- ----------------
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10556 12 XXXXX + 12 + 10 XXXXXX + 10 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10557 13 XXXXX + 13 XXXXXXXX + 11 XXXXXX + 11 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10558 14 XXXXX + 14 XXXXXXXX + 12 XXXXXX + 12 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10559 15 + 15 XXXXXXXX + 13 + 13 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10560 16 + 16 + 14 + 14 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10561 17 + 17 + 15 + 15 XXXXXXXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10562 18 XXXXX + 18 + 16 XXXXXX + 16 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10563 19 XXXXX + 19 XXXXXXXX + 17 XXXXXX + 17 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10564 20 XXXXX + 20 XXXXXXXX + 18 XXXXXX + 18 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10565 21 + 21 XXXXXXXX +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10566 22 + 22 +
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10567 -------- ----------- --------- ----------------
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10568
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10569 Any other value is treated as `nil'.
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
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10572 *** Printer management (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10573
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10574 The variable `ps-printer-name-option' determines the option used by
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10575 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
10576 `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
10577 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
10578 to "-P".
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10579
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10580 The variable `ps-manual-feed' indicates if the printer requires manual
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10581 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
10582 non-nil, manual feeding takes place.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10583
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10584 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
10585 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
10586 do so.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10587
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10588 *** Page settings (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10589
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10590 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
10591 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
10592 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
10593 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
10594 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
10595 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
10596 `setpagedevice'.
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 The variable `ps-print-upside-down' determines the orientation for
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10599 printing pages: nil means `normal' printing, non-nil means
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10600 `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
10601
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10602 The variable `ps-selected-pages' specifies which pages to print. If
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10603 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
10604 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
10605 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
10606 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
10607 its TO, are ignored.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10608
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10609 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
10610 pages. Valid values are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10611
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10612 nil print all pages.
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 `even-page' print only even pages.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10615
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10616 `odd-page' print only odd pages.
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 `even-sheet' print only even sheets.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10619 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
10620 `even-page', but for values greater than 1, it'll
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10621 print only the even sheet of paper.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10622
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10623 `odd-sheet' print only odd sheets.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10624 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
10625 `odd-page'; but for values greater than 1, it'll print
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10626 only the odd sheet of paper.
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 Any other value is treated as nil.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10629
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10630 If you set `ps-selected-pages' (see there for documentation), pages
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10631 are filtered by `ps-selected-pages', and then by
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10632 `ps-even-or-odd-pages'. For example, if we have:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10633
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10634 (setq ps-selected-pages '(1 4 (6 . 10) (12 . 16) 20))
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10635
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10636 and we combine this with `ps-even-or-odd-pages' and
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10637 `ps-n-up-printing', we get:
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 `ps-n-up-printing' = 1:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10640 `ps-even-or-odd-pages' PAGES PRINTED
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10641 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
10642 even-page 4, 6, 8, 10, 12, 14, 16, 20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10643 odd-page 1, 7, 9, 13, 15
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10644 even-sheet 4, 6, 8, 10, 12, 14, 16, 20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10645 odd-sheet 1, 7, 9, 13, 15
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10646
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10647 `ps-n-up-printing' = 2:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10648 `ps-even-or-odd-pages' PAGES PRINTED
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10649 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
10650 even-page 4/6, 8/10, 12/14, 16/20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10651 odd-page 1/7, 9/13, 15
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10652 even-sheet 6/7, 10/12, 15/16
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10653 odd-sheet 1/4, 8/9, 13/14, 20
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10654
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10655 *** Miscellany (subgroup)
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10656
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10657 The variable `ps-error-handler-message' specifies where error handler
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10658 messages should be sent.
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 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
10661 front of all generated prologue code by setting the variable
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10662 `ps-user-defined-prologue'.
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 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
10665
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10666 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
10667 points for line numbers.
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 The variable `ps-line-number-color' specifies the color for line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10670 numbers. See `ps-zebra-color' for documentation.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10671
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10672 The variable `ps-line-number-step' specifies the interval in which
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10673 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
10674 to 2, the printing will look like:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10675
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10676 1 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10677 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10678 3 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10679 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10680 5 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10681 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10682 ...
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10683
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10684 Valid values are:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10685
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10686 integer an integer specifying the interval in which line numbers are
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10687 printed. If it's smaller than or equal to zero, 1
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10688 is used.
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 `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
10691 zebra stripe is to be printed.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10692
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10693 Any other value is treated as `zebra'.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10694
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10695 The variable `ps-line-number-start' specifies the starting point in
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10696 the interval given by `ps-line-number-step'. For example, if
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10697 `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
10698 3, the output will look like:
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10699
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10700 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10701 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10702 3 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10703 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10704 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10705 6 one line
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10706 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 9 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 ...
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10711
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10712 The variable `ps-postscript-code-directory' specifies the directory
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10713 where the PostScript prologue file used by ps-print is found.
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10714
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10715 The variable `ps-line-spacing' determines the line spacing in points,
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10716 for ordinary text, when generating PostScript (similar to
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10717 `ps-font-size').
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10718
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10719 The variable `ps-paragraph-spacing' determines the paragraph spacing,
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10720 in points, for ordinary text, when generating PostScript (similar to
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10721 `ps-font-size').
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 The variable `ps-paragraph-regexp' specifies the paragraph delimiter.
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-begin-cut-regexp' and `ps-end-cut-regexp' specify the
a1af2574e64b Ps-print news.
Gerd Moellmann <gerd@gnu.org>
parents: 37230
diff changeset
10726 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
10727
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10728 ** hideshow changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10729
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10730 *** now supports hiding of blocks of single line comments (like // for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10731 C++, ; for lisp).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10732
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10733 *** Support for java-mode added.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10734
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10735 *** 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
10736 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
10737
35862
9604ca6b3728 More typos from Juanma Barranquero <lektu@uol.com.br>.
Eli Zaretskii <eliz@gnu.org>
parents: 35847
diff changeset
10738 *** 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
10739 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
10740 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
10741
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10742 *** Now uses overlays instead of `selective-display', so is more
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10743 robust and a lot faster.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10744
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10745 *** A block beginning can span multiple lines.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10746
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10747 *** 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
10748 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
10749 documentation for more details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10750
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10751 ** Changes in Enriched mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10752
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10753 *** 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
10754 filled to the current fill-column. This behavior is now independent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10755 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
10756 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
10757 the next time unless the fill-column is different.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10758
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10759 *** 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
10760 distinguishes between hard and soft newlines, and treats hard newlines
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10761 as paragraph boundaries. Otherwise all newlines inserted are marked
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10762 as soft, and paragraph boundaries are determined solely from the text.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10763
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10764 ** Font Lock mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10765
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10766 *** Custom support
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10767
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10768 The variables font-lock-face-attributes, font-lock-display-type and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10769 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
10770 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
10771 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
10772 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
10773 consider converting from setting that variable to using M-x customize.
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 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
10776
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10777 *** Maximum decoration
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10778
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10779 Fontification now uses the maximum level of decoration supported by
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10780 default. Previously, fontification used a mode-specific default level
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10781 of decoration, which is typically the minimum level of decoration
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10782 supported. You can set font-lock-maximum-decoration to nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10783 to get the old behavior.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10784
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10785 *** New support
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10786
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10787 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
10788
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10789 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
10790 support Font Lock mode, via the command global-font-lock-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10791
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10792 *** Configurable support
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 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
10795 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
10796 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
10797 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
10798 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
10799 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
10800 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
10801
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10802 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
10803 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
10804 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
10805
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10806 *** Adding highlighting patterns to existing support
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10807
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10808 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
10809 highlighting patterns, such as for project-local or user-specific constructs,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10810 for any mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10811
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10812 For example, to highlight `FIXME:' words in C comments, put:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10813
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10814 (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
10815
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10816 in your ~/.emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10817
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10818 *** New faces
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10819
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10820 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
10821 font-lock-warning-face. These are intended to highlight builtin keywords,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10822 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
10823 to user attention, respectively. Various modes now use these new faces.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10824
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10825 *** Changes to fast-lock support mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10826
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10827 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
10828 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
10829 same way as font-lock-verbose, to control this feature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10830
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10831 *** Changes to lazy-lock support mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10832
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10833 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
10834 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
10835 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
10836 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
10837 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
10838 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
10839 Lock mode behavior and the behavior of Font Lock mode.
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10840
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10841 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
10842 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
10843 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
10844 refontified to reflect their new syntactic context. Previously, only the line
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10845 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
10846 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
10847
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10848 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
10849
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10850 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
10851 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
10852 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
10853 new variable `lazy-lock-defer-on-the-fly'.
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 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
10856 settings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10857
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10858 ** Ada mode changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10859
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10860 *** 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
10861 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
10862 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
10863 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
10864 stubs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10865
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10866 *** There are two new commands:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10867 - `ada-make-local' : invokes gnatmake on the current buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10868 - `ada-check-syntax' : check syntax of current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10869
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10870 The user options `ada-compiler-make', `ada-make-options',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10871 `ada-language-version', `ada-compiler-syntax-check', and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10872 `ada-compile-options' are used within these commands.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10873
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10874 *** 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
10875 is calculated from the indenting, not from syntactic constructs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10876 Outlining does not work if your code is not correctly indented.
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 *** 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
10879 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
10880 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
10881 space between a comma and the beginning of a word.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10882
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10883 ** Scheme mode changes.
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 *** Scheme mode indentation now uses many of the facilities of Lisp
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10886 mode; therefore, the variables to customize it are the variables used
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10887 for Lisp mode which have names starting with `lisp-'. The variables
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10888 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
10889 have any effect.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10890
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10891 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
10892 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
10893 scheme-mode-hook, which could work by setting the `lisp-' indentation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10894 variables as buffer-local variables.
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 *** 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
10897 Use M-x dsssl-mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10898
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10899 ** Changes to the emacsclient program
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10900
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10901 *** 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
10902 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
10903 associated with the name. That is an emacsclient running as root
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10904 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
10905
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10906 *** The emacsclient program now accepts an option --no-wait which tells
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10907 it to return immediately without waiting for you to "finish" the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10908 buffer in Emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10909
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10910 *** The new option --alternate-editor allows to specify an editor to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10911 use if Emacs is not running. The environment variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10912 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
10913 option takes precedence.
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 ** 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
10916 constantly shows the parameter list for function being called at point
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10917 (in Emacs Lisp and Lisp Interaction modes only).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10918
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10919 ** 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
10920 which narrows the accessible parts of the buffer to just
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10921 the current defun.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10923 ** Emacs now handles the `--' argument in the standard way; all
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10924 following arguments are treated as ordinary file names.
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 ** 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
10927 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
10928 necessary).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10929
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10930 ** When you kill a buffer that visits a file,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10931 if there are any registers that save positions in the file,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10932 these register values no longer become completely useless.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10933 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
10934 asked whether to visit the file again. If you say yes,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10935 it visits the file and then goes to the same position.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10936
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10937 ** When you visit a file that changes frequently outside Emacs--for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10938 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
10939 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
10940 you visit the file afresh with C-x C-f.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10941
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10942 You can request this behavior for certain files by setting the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10943 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
10944 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
10945 revert-buffer revert the buffer without asking for permission--but
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10946 only if you have not edited the buffer text yourself.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10947
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10948 ** set-default-font has been renamed to set-frame-font
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10949 since it applies only to the current frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10950
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10951 ** 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
10952 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
10953 and tex-file runs TeX on the current visited file.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10954
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10955 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
10956 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
10957 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
10958 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
10959 instead of just the file you are editing.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10960
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10961 ** RefTeX mode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10962
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10963 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
10964 and \cite macros in LaTeX documents. RefTeX distinguishes labels of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10965 different environments (equation, figure, ...) and has full support for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10966 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
10967 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
10968
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10969 C-c ( reftex-label
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10970 Creates a label semi-automatically. RefTeX is context sensitive and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10971 knows which kind of label is needed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10972
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10973 C-c ) reftex-reference
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10974 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
10975 label definition. The selected label is referenced as \ref{LABEL}.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10976
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10977 C-c [ reftex-citation
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10978 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
10979 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
10980
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10981 C-c & reftex-view-crossref
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10982 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
10983
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10984 C-c = reftex-toc
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10985 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
10986 can quickly jump to every section.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10987
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10988 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
10989 commands. Press `?' to get help when a prompt mentions this feature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10990 Full documentation and customization examples are in the file
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10991 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
10992 C-h p --> tex --> reftex.el
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10993
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10994 ** Changes in BibTeX mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10995
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10996 *** Info documentation is now available.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10997
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10998 *** Don't allow parentheses in string constants anymore. This confused
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
10999 both the BibTeX program and Emacs BibTeX mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11000
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11001 *** Renamed variable bibtex-mode-user-optional-fields to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11002 bibtex-user-optional-fields.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11003
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11004 *** Removed variable bibtex-include-OPTannote
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11005 (use bibtex-user-optional-fields instead).
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 *** New interactive functions to copy and kill fields and complete
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11008 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
11009 appropriate functions.
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 *** New interactive functions for repositioning and marking of
40526
b466f4f946a7 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 40493
diff changeset
11012 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
11013
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11014 *** 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
11015 been cleaned.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11016
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11017 *** New variable bibtex-field-delimiters, which replaces variables
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11018 bibtex-field-{left|right}-delimiter.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11019
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11020 *** New variable bibtex-entry-delimiters to determine how entries
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11021 shall be delimited.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11022
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11023 *** Allow preinitialization of fields. See documentation of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11024 bibtex-user-optional-fields, bibtex-entry-field-alist, and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11025 bibtex-include-OPTkey for details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11026
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11027 *** Book and InBook entries require either an author or an editor
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11028 field. This is now supported by bibtex.el. Alternative fields are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11029 prefixed with `ALT'.
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 *** New variable bibtex-entry-format, which replaces variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11032 bibtex-clean-entry-zap-empty-opts and allows specification of many
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11033 formatting options performed on cleaning an entry (see variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11034 documentation).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11035
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11036 *** Even more control on how automatic keys are generated. See
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11037 documentation of bibtex-generate-autokey for details. Transcriptions
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11038 for foreign languages other than German are now handled, too.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11039
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11040 *** 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
11041 comma should be inserted at end of last field.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11042
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11043 *** 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
11044 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
11045 signs. New user options to control entry layout (e.g. indentation).
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 function bibtex-fill-entry to realign entries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11048
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11049 *** New function bibtex-reformat to reformat region or buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11050
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11051 *** New function bibtex-convert-alien to convert a BibTeX database
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11052 from alien sources.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11053
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11054 *** New function bibtex-complete-key (similar to bibtex-complete-string)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11055 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
11056 crossref entries.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11057
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11058 *** New function bibtex-count-entries to count entries in buffer or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11059 region.
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 *** Added support for imenu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11062
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11063 *** The function `bibtex-validate' now checks current region instead
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11064 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
11065 `compilation mode' buffer. You can use the normal commands (e.g.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11066 `next-error') for compilation modes to jump to errors.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11067
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11068 *** New variable `bibtex-string-file-path' to determine where the files
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11069 from `bibtex-string-files' are searched.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11070
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11071 ** Iso Accents mode now supports Latin-3 as an alternative.
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 ** The command next-error now opens blocks hidden by hideshow.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11074
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11075 ** The function using-unix-filesystems has been replaced by the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11076 functions add-untranslated-filesystem and remove-untranslated-filesystem.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11077 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
11078 as an argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11079
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11080 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
11081 and written in binary mode (no cr/lf translation is performed).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11082
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11083 ** browse-url changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11084
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11085 *** New methods for: Grail (browse-url-generic), MMM (browse-url-mmm),
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11086 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
11087 (browse-url-lynx-emacs), remote W3 (browse-url-w3-gnudoit), generic
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11088 non-remote-controlled browsers (browse-url-generic) and associated
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11089 customization variables.
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 *** New commands `browse-url-of-region' and `browse-url'.
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 *** URLs marked up with <URL:...> (RFC1738) work if broken across
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11094 lines. Browsing methods can be associated with URL regexps
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11095 (e.g. mailto: URLs) via `browse-url-browser-function'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11096
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11097 ** Changes in Ediff
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11098
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11099 *** 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
11100 pops up the Info file for this command.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11101
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11102 *** There is now a variable, ediff-autostore-merges, which controls whether
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11103 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
11104 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
11105 directories).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11106
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11107 *** 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
11108 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
11109 files in the same directory.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11110
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11111 *** Since Emacs 19.31, Ediff can apply multi-file patches interactively.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11112 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
11113 related to the GNU format has now been fixed.)
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 ** Changes in Viper
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11116
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11117 *** The startup file is now .viper instead of .vip
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11118 *** All variable/function names have been changed to start with viper-
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11119 instead of vip-.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11120 *** C-\ now simulates the meta-key in all Viper states.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11121 *** 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
11122 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
11123 *** 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
11124 *** _ is no longer the meta-key in Vi state.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11125 *** 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
11126 color when Viper is in insert state.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11127 *** 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
11128 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
11129 viper-adjust-window-after-search controls this behavior.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11130
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11131 ** Etags changes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11132
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11133 *** 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
11134 default. The resulting tags files are inflated by 30% on average.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11135 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
11136 variables which are members of structure-like constructs, but it does
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11137 not by default. Use --members to turn this feature on.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11138
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11139 *** C++ member functions are now recognized as tags.
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 *** Java is tagged like C++. In addition, "extends" and "implements"
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11142 constructs are tagged. Files are recognised by the extension .java.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11143
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11144 *** Etags can now handle programs written in Postscript. Files are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11145 recognised by the extensions .ps and .pdb (Postscript with C syntax).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11146 In Postscript, tags are lines that start with a slash.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11147
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11148 *** 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
11149 C++ tags are recognized in these languages; in addition, etags
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11150 recognizes special Objective C syntax for classes, class categories,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11151 methods and protocols.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11152
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11153 *** Etags also handles Cobol. Files are recognised by the extension
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11154 .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
11155 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
11156 paragraph name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11157
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11158 *** 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
11159 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
11160 at least M times and as many as N times.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11161
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11162 ** 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
11163 in files has changed slightly.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11164
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11165 With the new enhancements to the functionality of format-time-string,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11166 time-stamp-format will change to be eventually compatible with it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11167 This conversion is being done in two steps to maintain compatibility
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11168 with old time-stamp-format values.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11169
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11170 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
11171 (`#') modifier, rather than changing the case of the format character.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11172 This feature is as yet incompletely implemented for compatibility
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11173 reasons.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11174
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11175 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
11176 natural width. (With format-time-string, each format has a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11177 fixed-width default.) In this version, you can specify the colon
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11178 (`:') modifier to a numeric conversion to mean "give me the historical
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11179 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
11180 specifying an explicit width, as in "%02d".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11181
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11182 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
11183 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
11184 truncation probably wasn't being used for anything else anyway.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11185
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11186 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
11187 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
11188 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
11189 recommended now will continue to work then.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11190
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11191 See the documentation string for the variable time-stamp-format for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11192 details.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11193
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11194 ** There are some additional major modes:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11195
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11196 dcl-mode, for editing VMS DCL files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11197 m4-mode, for editing files of m4 input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11198 meta-mode, for editing MetaFont and MetaPost source files.
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 Shell mode, the command shell-copy-environment-variable lets you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11201 copy the value of a specified environment variable from the subshell
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11202 into Emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11203
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11204 ** New Lisp packages include:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11205
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11206 *** battery.el displays battery status for laptops.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11207
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11208 *** 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
11209 be used for adding some indecent words to your email.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11210
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11211 *** M-x crisp-mode enables an emulation for the CRiSP editor.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11212
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11213 *** M-x dirtrack arranges for better tracking of directory changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11214 in shell buffers.
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 library elint.el provides for linting of Emacs Lisp code.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11217 See the documentation for `elint-initialize', `elint-current-buffer'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11218 and `elint-defun'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11219
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11220 *** 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
11221 meant for programming constructs. These abbrevs expand like ordinary
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11222 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
11223 strings or comments.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11224
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11225 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
11226 abbrev for insertion of additional text. Once you expand the abbrev,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11227 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
11228 insertion points. Thus you can conveniently insert additional text
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11229 at these points.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11230
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11231 *** filecache.el remembers the location of files so that you
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11232 can visit them by short forms of their names.
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 *** 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
11235 Emacs Lisp function at point.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11236
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11237 *** M-x handwrite converts text to a "handwritten" picture.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11238
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11239 *** 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
11240 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
11241
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11242 *** M-x landmark implements a neural network for landmark learning.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11243
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11244 *** M-x locate provides a convenient interface to the `locate' program.
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 *** 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
11247
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11248 *** mantemp.el creates C++ manual template instantiations
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11249 from the GCC error messages which indicate which instantiations are needed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11250
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11251 *** mouse-copy.el provides a one-click copy and move feature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11252 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
11253 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
11254 original place after inserting the copy.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11255
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11256 *** mouse-drag.el lets you do scrolling by dragging Mouse-2
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11257 on the buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11258
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11259 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
11260 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
11261 (with mouse-drag-drag). Horizontal scrolling is enabled when needed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11262
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11263 Enable mouse-drag with:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11264 (global-set-key [down-mouse-2] 'mouse-drag-throw)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11265 -or-
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11266 (global-set-key [down-mouse-2] 'mouse-drag-drag)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11267
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11268 *** mspools.el is useful for determining which mail folders have
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11269 mail waiting to be read in them. It works with procmail.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11270
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11271 *** 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
11272 It comes with a facility for communicating with an Octave subprocess.
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 *** ogonek
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 The ogonek package provides functions for changing the coding of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11277 Polish diacritic characters in buffers. Codings known from various
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11278 platforms are supported such as ISO8859-2, Mazovia, IBM Latin2, and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11279 TeX. For example, you can change the coding from Mazovia to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11280 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
11281 prefix notation (in which `/a' stands for the aogonek character, for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11282 instance) and vice versa.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11283
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11284 To use this package load it using
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11285 M-x load-library [enter] ogonek
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11286 Then, you may get an explanation by calling one of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11287 M-x ogonek-jak -- in Polish
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11288 M-x ogonek-how -- in English
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11289 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
11290 ways of customization in `.emacs'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11291
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11292 *** Interface to ph.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11293
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11294 Emacs provides a client interface to CCSO Nameservers (ph/qi)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11295
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11296 The CCSO nameserver is used in many universities to provide directory
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11297 services about people. ph.el provides a convenient Emacs interface to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11298 these servers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11299
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11300 *** uce.el is useful for replying to unsolicited commercial email.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11301
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11302 *** vcursor.el implements a "virtual cursor" feature.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11303 You can move the virtual cursor with special commands
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11304 while the real cursor does not move.
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 *** 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
11307 for visiting your favorite web sites.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11308
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11309 *** 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
11310 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
11311
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11312 ** movemail change
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 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
11315 mail retrieval to function properly. This is because it no longer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11316 supports the RPOP (reserved-port POP) protocol; instead, it uses the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11317 user's POP password to authenticate to the mail server.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11318
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11319 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
11320
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11321 * Emacs 20.1 changes for MS-DOS and MS-Windows.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11322
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11323 ** Changes in handling MS-DOS/MS-Windows text files.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11324
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11325 Emacs handles three different conventions for representing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11326 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
11327 Macintosh). Emacs determines which convention is used in a specific
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11328 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
11329 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
11330
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11331 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
11332 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
11333 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
11334 specified coding system will take effect. For example, to save with
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11335 LF, specify undecided-unix (or some other ...-unix coding system); to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11336 save with CRLF, specify undecided-dos.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
11337
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11338 * Lisp Changes in Emacs 20.1
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11339
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11340 ** 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
11341 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
11342 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
11343 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
11344
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11345 ** Windows-specific functions and variables have been renamed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11346 to start with w32- instead of win32-.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11347
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11348 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
11349 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
11350 "win".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11351
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11352 ** Basic Lisp changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11353
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11354 *** A symbol whose name starts with a colon now automatically
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11355 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
11356
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11357 *** The defined purpose of `defconst' has been changed. It should now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11358 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
11359 or by the user.
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 The actual behavior of defconst has not been changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11362
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11363 *** There are new macros `when' and `unless'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11364
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11365 (when CONDITION BODY...) is short for (if CONDITION (progn BODY...))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11366 (unless CONDITION BODY...) is short for (if CONDITION nil BODY...)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11367
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11368 *** Emacs now defines functions caar, cadr, cdar and cddr with their
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11369 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
11370 its argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11371
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11372 *** equal, when comparing strings, now ignores their text properties.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11373
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11374 *** The new function `functionp' tests whether an object is a function.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11375
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11376 *** arrayp now returns t for char-tables and bool-vectors.
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 *** Certain primitives which use characters (as integers) now get an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11379 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
11380 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
11381 `format' function.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11382
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11383 *** The `require' function now insists on adding a suffix, either .el
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11384 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
11385 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
11386
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11387 *** The `autoload' function, when the file name does not contain
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11388 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
11389 adding one of these suffixes.
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 *** string-to-number now takes an optional second argument BASE
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11392 which specifies the base to use when converting an integer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11393 If BASE is omitted, base 10 is used.
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 We have not implemented other radices for floating point numbers,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11396 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
11397
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11398 *** substring now handles vectors as well as strings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11399
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11400 *** The Common Lisp function eql is no longer defined normally.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11401 You must load the `cl' library to define it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11402
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11403 *** The new macro `with-current-buffer' lets you evaluate an expression
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11404 conveniently with a different current buffer. It looks like this:
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 (with-current-buffer BUFFER BODY-FORMS...)
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 BUFFER is the expression that says which buffer to use.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11409 BODY-FORMS say what to do in that buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11410
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11411 *** The new primitive `save-current-buffer' saves and restores the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11412 choice of current buffer, like `save-excursion', but without saving or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11413 restoring the value of point or the mark. `with-current-buffer'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11414 works using `save-current-buffer'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11415
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11416 *** 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
11417 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
11418 of the last form.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11419
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11420 *** 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
11421 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
11422 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
11423 as the last form.
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 *** 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
11426 characters, and returns a list of the substrings in between the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11427 matches.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11428
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11429 For example, (split-string "foo bar lose" " +") returns ("foo" "bar" "lose").
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11430
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11431 *** The new macro with-output-to-string executes some Lisp expressions
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11432 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
11433 Then it returns that string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11434
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11435 For example, if the current buffer name is `foo',
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11436
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11437 (with-output-to-string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11438 (princ "The buffer is ")
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11439 (princ (buffer-name)))
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 returns "The buffer is foo".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11442
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11443 ** Non-ASCII characters are now supported, if enable-multibyte-characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11444 is non-nil.
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 These characters have character codes above 256. When inserted in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11447 buffer or stored in a string, they are represented as multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11448 characters that occupy several buffer positions each.
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 *** When enable-multibyte-characters is non-nil, a single character in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11451 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
11452
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11453 Buffers and strings are still made up of unibyte elements;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11454 character positions and string indices are always measured in bytes.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11455 Therefore, moving forward one character can increase the buffer
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11456 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
11457 characters, and therefore is no longer equivalent to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11458 (lambda (n) (goto-char (+ (point) n))).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11459
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11460 ASCII characters (codes 0 through 127) are still single bytes, always.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11461 Sequences of byte values 128 through 255 are used to represent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11462 non-ASCII characters. These sequences are called "multibyte
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11463 characters".
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 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
11466 through 159 (octal 0200 through 0237). These values are called
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11467 "leading codes". The second and subsequent bytes are always in the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11468 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
11469 leading code, determines how many bytes long the sequence is.
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 *** The function forward-char moves over characters, and therefore
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11472 (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
11473 multibyte character. Likewise, delete-char always deletes a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11474 character, which may be more than one buffer position.
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 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
11477 always one buffer position, need to be changed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11478
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11479 However, all ASCII characters are always one buffer position.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11480
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11481 *** The regexp [\200-\377] no longer matches all non-ASCII characters,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11482 because when enable-multibyte-characters is non-nil, these characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11483 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
11484 the regexp [^\000-\177] does match all non-ASCII characters,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11485 guaranteed.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11486
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11487 *** 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
11488 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
11489 character).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11490
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11491 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
11492
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11493 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
11494 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
11495 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
11496 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
11497 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
11498
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11499 *** 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
11500
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11501 *** Strings can contain multibyte characters. The function
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11502 `length' returns the string length counting bytes, which may be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11503 more than the number of characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11504
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11505 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
11506 it literally. You can also represent it with a hex escape,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11507 \xNNNNNNN..., using as many digits as necessary. Any character which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11508 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
11509 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
11510 newline in between; that will terminate the hex escape.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11511
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11512 *** The function concat-chars takes arguments which are characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11513 and returns a string containing those characters.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11514
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11515 *** The function sref access a multibyte character in a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11516 (sref STRING INDX) returns the character in STRING at INDEX. INDEX
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11517 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
11518 character, sref signals an error.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11519
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11520 *** The function chars-in-string returns the number of characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11521 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
11522 string contains multibyte characters (the length counts bytes).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11523
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11524 *** The function chars-in-region returns the number of characters
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11525 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
11526 region contains multibyte characters (the length counts bytes).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11527
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11528 *** 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
11529 the characters in it. string-to-vector converts a string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11530 to a vector of the characters in it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11531
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11532 *** The function store-substring alters part of the contents
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11533 of a string. You call it as follows:
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 (store-substring STRING IDX OBJ)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11536
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11537 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
11538 STRING. OBJ may be either a character or a (smaller) string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11539 This function really does alter the contents of STRING.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11540 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
11541 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
11542
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11543 *** char-width returns the width (in columns) of the character CHAR,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11544 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
11545
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11546 *** 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
11547 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
11548
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11549 *** truncate-string-to-width shortens a string, if necessary,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11550 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
11551 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
11552 which contains all or just part of the existing string.)
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 (truncate-string-to-width STR END-COLUMN &optional START-COLUMN PADDING)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11555
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11556 This returns the part of STR up to column END-COLUMN.
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 optional argument START-COLUMN specifies the starting column.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11559 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
11560 are not included in the resulting value.
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 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
11563 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
11564 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
11565 is narrower than WIDTH, the value is equal to STRING.
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 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
11568 place in STRING that corresponds to START-COLUMN (because one
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11569 character extends across that column), then the padding character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11570 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
11571 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
11572 column START-COLUMN.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11573
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11574 *** When the functions in the list after-change-functions are called,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11575 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
11576 necessarily the number of characters. It is, in effect, the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11577 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
11578 changed text, before the change.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11579
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11580 *** The characters Emacs uses are classified in various character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11581 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
11582 one character set for each script, not for each language.
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 **** 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
11585
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11586 **** The variable charset-list holds a list of character set names.
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 **** 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
11589 set that the character belongs to. (The value is a symbol.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11590
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11591 **** split-char, given a character code, returns a list containing the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11592 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
11593 which identify the character within that character set.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11594
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11595 **** 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
11596 byte-values, constructs a character code. This is roughly the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11597 opposite of split-char.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11598
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11599 **** find-charset-region returns a list of the character sets
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11600 of all the characters between BEG and END.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11601
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11602 **** find-charset-string returns a list of the character sets
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11603 of all the characters in a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11604
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11605 *** Here are the Lisp facilities for working with coding systems
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11606 and specifying coding systems.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11607
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11608 **** The function coding-system-list returns a list of all coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11609 system names (symbols). With optional argument t, it returns a list
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11610 of all distinct base coding systems, not including variants.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11611 (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
11612 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
11613 as what to do about code conversion.)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11614
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11615 **** 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
11616 name. It returns t if so, nil if not.
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 **** file-coding-system-alist specifies which coding systems to use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11619 for certain file names. It works like network-coding-system-alist,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11620 except that the PATTERN is matched against the file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11621
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11622 Each element has the format (PATTERN . VAL), where PATTERN determines
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11623 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
11624 to match against a file name.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11625
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11626 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
11627 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
11628 decoding what received from the network stream and encoding what sent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11629 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
11630 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
11631 specifies the coding system for encoding.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11632
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11633 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
11634 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
11635
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11636 **** The variable network-coding-system-alist specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11637 the coding system to use for network sockets.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11638
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11639 Each element has the format (PATTERN . VAL), where PATTERN determines
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11640 which network sockets the element applies to. PATTERN should be
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11641 either a port number or a regular expression matching some network
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11642 service names.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11643
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11644 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
11645 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
11646 decoding what received from the network stream and encoding what sent
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11647 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
11648 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
11649 specifies the coding system for encoding.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11650
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11651 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
11652 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
11653
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11654 **** process-coding-system-alist specifies which coding systems to use
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11655 for certain subprocess. It works like network-coding-system-alist,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11656 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
11657 start the subprocess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11658
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11659 **** The variable default-process-coding-system specifies the coding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11660 systems to use for subprocess (and net connection) input and output,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11661 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
11662 (OUTPUT-CODING . INPUT-CODING). OUTPUT-CODING applies to output
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11663 to the subprocess, and INPUT-CODING applies to input from it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11664
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11665 **** The variable coding-system-for-write, if non-nil, specifies the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11666 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
11667 subprocess.
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 It also applies to any asynchronous subprocess or network connection,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11670 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
11671 start the subprocess or connection affects that subprocess or
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11672 connection permanently or until overridden.
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 The variable coding-system-for-write takes precedence over
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11675 file-coding-system-alist, process-coding-system-alist and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11676 network-coding-system-alist, and all other methods of specifying a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11677 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
11678 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
11679 system for one operation at a time.
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 **** coding-system-for-read applies similarly to input from
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11682 files, subprocesses or network connections.
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 **** The function process-coding-system tells you what
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11685 coding systems(s) an existing subprocess is using.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11686 The value is a cons cell,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11687 (DECODING-CODING-SYSTEM . ENCODING-CODING-SYSTEM)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11688 where DECODING-CODING-SYSTEM is used for decoding output from
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11689 the subprocess, and ENCODING-CODING-SYSTEM is used for encoding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11690 input to the subprocess.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11691
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11692 **** The function set-process-coding-system can be used to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11693 change the coding systems in use for an existing subprocess.
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 ** Emacs has a new facility to help users manage the many
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11696 customization options. To make a Lisp program work with this facility,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11697 you need to use the new macros defgroup and defcustom.
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 You use defcustom instead of defvar, for defining a user option
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11700 variable. The difference is that you specify two additional pieces of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11701 information (usually): the "type" which says what values are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11702 legitimate, and the "group" which specifies the hierarchy for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11703 customization.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11704
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11705 Thus, instead of writing
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11706
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11707 (defvar foo-blurgoze nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11708 "*Non-nil means that foo will act very blurgozely.")
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11709
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11710 you would now write this:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11711
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11712 (defcustom foo-blurgoze nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11713 "*Non-nil means that foo will act very blurgozely."
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11714 :type 'boolean
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11715 :group foo)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11716
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11717 The type `boolean' means that this variable has only
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11718 two meaningful states: nil and non-nil. Other type values
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11719 describe other possibilities; see the manual for Custom
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11720 for a description of them.
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 "group" argument is used to specify a group which the option
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11723 should belong to. You define a new group like this:
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 (defgroup ispell nil
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11726 "Spell checking using Ispell."
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11727 :group 'processes)
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 The "group" argument in defgroup specifies the parent group. The root
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11730 group is called `emacs'; it should not contain any variables itself,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11731 but only other groups. The immediate subgroups of `emacs' correspond
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11732 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
11733 second-level subgroups that belong to individual packages.
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 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
11736 package should have just one group; a more complex package should
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11737 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
11738 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
11739 first-level subgroups.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11740
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11741 ** New `widget' library for inserting UI components in buffers.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11742
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11743 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
11744 separate manual that accompanies Emacs.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11745
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11746 ** easy-mmode
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11747
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11748 The easy-mmode package provides macros and functions that make
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11749 developing minor modes easier. Roughly, the programmer has to code
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11750 only the functionality of the minor mode. All the rest--toggles,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11751 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
11752 `easy-mmode-define-minor-mode' (see the documentation). See also
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11753 `easy-mmode-define-keymap'.
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 ** Text property changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11756
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11757 *** 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
11758 text property.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11759
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11760 *** The new functions next-char-property-change and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11761 previous-char-property-change scan through the buffer looking for a
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11762 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
11763 functions take two arguments, POSITION and LIMIT. POSITION is the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11764 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
11765
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11766 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
11767 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
11768 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
11769 position of the beginning or end of the buffer.
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 *** In the `local-map' text property or overlay property, the property
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11772 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
11773 is an alternative to using the keymap itself.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11774
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11775 ** Changes in invisibility features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11776
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11777 *** Isearch can now temporarily show parts of the buffer which are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11778 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
11779 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
11780 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
11781 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
11782 make the overlay visible.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11783
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11784 During incremental search the overlays are shown by modifying the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11785 invisible and intangible properties, if beside this more actions are
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11786 needed the overlay should have a isearch-open-invisible-temporary
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11787 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
11788 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
11789 t when it should hide it.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11790
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11791 *** add-to-invisibility-spec, remove-from-invisibility-spec
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11792
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11793 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
11794 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
11795 and modify the `buffer-invisibility-spec' to include that symbol.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11796 Use `add-to-invisibility-spec' and `remove-from-invisibility-spec' to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11797 manipulate the `buffer-invisibility-spec'.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11798 Here is an example of how to do this:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11799
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11800 ;; If we want to display an ellipsis:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11801 (add-to-invisibility-spec '(my-symbol . t))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11802 ;; If you don't want ellipsis:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11803 (add-to-invisibility-spec 'my-symbol)
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 ...
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11806 (overlay-put (make-overlay beginning end) 'invisible 'my-symbol)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11807
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11808 ...
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11809 ;; When done with the overlays:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11810 (remove-from-invisibility-spec '(my-symbol . t))
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11811 ;; Or respectively:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11812 (remove-from-invisibility-spec 'my-symbol)
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 ** Changes in syntax parsing.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11815
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11816 *** The syntax-directed buffer-scan functions (such as
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11817 `parse-partial-sexp', `forward-word' and similar functions) can now
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11818 obey syntax information specified by text properties, if the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11819 `parse-sexp-lookup-properties' is non-nil.
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 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
11822 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
11823 used to determine the syntax of the character at the position.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11824
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11825 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
11826 character in the buffer is calculated thus:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11827
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11828 a) if the `syntax-table' text-property of that character
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11829 is a cons, this cons becomes the syntax-type;
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11830
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11831 Valid values of `syntax-table' text-property are: nil, a valid
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11832 syntax-table, and a valid syntax-table element, i.e.,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11833 a cons cell of the form (SYNTAX-CODE . MATCHING-CHAR).
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 b) if the character's `syntax-table' text-property
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11836 is a syntax table, this syntax table is used
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11837 (instead of the syntax-table of the current buffer) to
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11838 determine the syntax type of the character.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11839
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11840 c) otherwise the syntax-type is determined by the syntax-table
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11841 of the current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11842
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11843 *** 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
11844 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
11845 for the syntax-directed buffer-scan functions.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11846
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11847 *** There are two new syntax-codes, `!' and `|' (numeric values 14
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11848 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
11849 only by another character with the same code (unless quoted). A
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11850 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
11851 another character with the same code (unless quoted).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11852
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11853 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
11854 text property.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11855
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11856 *** The function `parse-partial-sexp' has new semantics for the sixth
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11857 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
11858 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
11859
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11860 *** The state-list which the return value from `parse-partial-sexp'
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11861 (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
11862 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
11863 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
11864 string/comment is started by a "!" or "|" syntax-code.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11865
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11866 *** Since new features of `parse-partial-sexp' allow a complete
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11867 syntactic parsing, `font-lock' no longer supports
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11868 `font-lock-comment-start-regexp'.
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 ** Changes in face features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11871
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11872 *** The face functions are now unconditionally defined in Emacs, even
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11873 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
11874
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11875 *** The function face-documentation returns the documentation string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11876 of a face (or nil if it doesn't have one).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11877
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11878 *** 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
11879 set-face-bold-p sets that flag.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11880
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11881 *** 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
11882 set-face-italic-p sets that flag.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11883
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11884 *** You can now specify foreground and background colors for text
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11885 by adding elements of the form (foreground-color . COLOR-NAME)
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11886 and (background-color . COLOR-NAME) to the list of faces in
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11887 the `face' property (either the character's text property or an
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11888 overlay property).
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 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
11891 arbitrary colors in a Lisp package.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11892
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11893 ** Changes in file-handling functions
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11894
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11895 *** File-access primitive functions no longer discard an extra redundant
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11896 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
11897 they no longer do anything special with // or /~. That conversion
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11898 is now done only in substitute-in-file-name.
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 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
11901 begins with ~.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11902
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11903 *** 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
11904 it now signals an error with the condition file-date-error.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11905
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11906 *** 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
11907 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
11908
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11909 *** insert-file-contents can now read from a special file,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11910 as long as the arguments VISIT and REPLACE are nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11911
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11912 *** 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
11913 character code conversion as well as other things.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11914
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11915 Meanwhile, this feature does work with remote file names
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11916 (formerly it did not).
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11917
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11918 *** Lisp packages which create temporary files should use the TMPDIR
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11919 environment variable to decide which directory to put them in.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11920
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11921 *** interpreter-mode-alist elements now specify regexps
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11922 instead of constant strings.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11923
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11924 *** expand-file-name no longer treats `//' or `/~' specially. It used
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11925 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
11926 any `//' or `/~' sequence. Now it passes them straight through.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11927
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11928 substitute-in-file-name continues to treat those sequences specially,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11929 in the same way as before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11930
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11931 *** The variable `format-alist' is more general now.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11932 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
11933 which specify shell commands to use as filters to perform conversion.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11934
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11935 *** 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
11936 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
11937 else, and returns nil.
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 *** The function insert-directory now signals an error if the specified
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11940 directory cannot be listed.
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 ** Changes in minibuffer input
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11943
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11944 *** The functions read-buffer, read-variable, read-command, read-string
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11945 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
11946 additional argument which specifies the default value. If this
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11947 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
11948 ways:
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11949
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11950 It is returned if the user enters empty input.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11951 It is available through the history command M-n.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11952
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11953 *** The functions read-string, read-from-minibuffer,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11954 read-no-blanks-input and completing-read now take an additional
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11955 argument INHERIT-INPUT-METHOD. If this is non-nil, then the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11956 minibuffer inherits the current input method and the setting of
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11957 enable-multibyte-characters from the previously current buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11958
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11959 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
11960 argument in this way.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11961
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11962 *** All minibuffer input functions discard text properties
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11963 from the text you enter in the minibuffer, unless the variable
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11964 minibuffer-allow-text-properties is non-nil.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11965
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11966 ** Echo area features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11967
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11968 *** Clearing the echo area now runs the normal hook
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11969 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
11970 minibuffer is active; in that case, the minibuffer is still active
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11971 after the echo area is cleared.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11972
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11973 *** The function current-message returns the message currently displayed
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11974 in the echo area, or nil if there is none.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11975
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11976 ** Keyboard input features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11977
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11978 *** 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
11979 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
11980
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11981 *** num-nonmacro-input-events is the total number of input events
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11982 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
11983 by keyboard macros.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11984
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11985 ** Frame-related changes
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11986
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11987 *** 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
11988 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
11989 hook after-make-frame-functions with the new frame as arg.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11990
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11991 *** 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
11992 the window configuration has changed. The frame whose configuration
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11993 has changed is the selected frame when the hook is run.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11994
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11995 *** Each frame now independently records the order for recently
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11996 selected buffers, in its buffer-list frame parameter, so that the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11997 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
11998 in the selected frame.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
11999
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12000 *** The value of the frame parameter vertical-scroll-bars
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12001 is now `left', `right' or nil. A non-nil value specifies
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12002 which side of the window to put the scroll bars on.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12003
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12004 ** X Windows features
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 *** You can examine X resources for other applications by binding
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12007 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
12008 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
12009
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12010 *** In menus, checkboxes and radio buttons now actually work.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12011 The menu displays the current status of the box or button.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12012
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12013 *** The function x-list-fonts now takes an optional fourth argument
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12014 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
12015 A smaller value of MAXIMUM makes the function faster.
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 If the only question is whether *any* font matches the pattern,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12018 it is good to supply 1 for this argument.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12019
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12020 ** Subprocess features
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12021
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12022 *** A reminder: it is no longer necessary for subprocess filter
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12023 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
12024 automatically.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12025
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12026 *** The new function shell-command-to-string executes a shell command
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12027 and returns the output from the command as a string.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12028
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12029 *** The new function process-contact returns t for a child process,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12030 and (HOSTNAME SERVICE) for a net connection.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12031
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12032 ** An error in running pre-command-hook or post-command-hook
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12033 does clear the variable to nil. The documentation was wrong before.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12034
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12035 ** 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
12036 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
12037 goes after the other menu items.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12038
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12039 ** 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
12040 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
12041 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
12042 are in use.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12043
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12044 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
12045 series of several changes--if that seems safe.
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 Don't alter the variables after-change-functions and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12048 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
12049 form.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12050
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12051 ** If you define an abbrev (with define-abbrev) whose EXPANSION
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12052 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
12053 but its hook is still run.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12054
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12055 ** 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
12056 for errors that are handled by condition-case.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12057
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12058 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
12059 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
12060 useful for debugging problems that happen inside of a condition-case.
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 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
12063 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
12064 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
12065 warned.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12066
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12067 ** The new variable ring-bell-function lets you specify your own
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12068 way for Emacs to "ring the bell".
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12069
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12070 ** 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
12071 integral multiples of REPEAT from the epoch; this is useful for
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12072 functions like display-time.
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 ** 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
12075 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
12076
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12077 ** Commands for entering view mode have new optional arguments that
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12078 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
12079 is done by functions view-mode-enter and view-mode-exit.
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 ** 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
12082 if there is an error in compilation.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12083
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12084 ** pop-to-buffer, switch-to-buffer-other-window and
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12085 switch-to-buffer-other-frame now accept an additional optional
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12086 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
12087 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
12088
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12089 ** If your .emacs file leaves the *scratch* buffer non-empty,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12090 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
12091 the *scratch* buffer.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12092
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12093 ** 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
12094 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
12095 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
12096 e.g., in Font Lock mode.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12097
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12098 ** The variable buffer-display-count is local to each buffer,
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12099 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
12100 It starts at 0 when the buffer is created.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12101
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12102 ** The new function compose-mail starts composing a mail message
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12103 using the user's chosen mail composition agent (specified with the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12104 variable mail-user-agent). It has variants compose-mail-other-window
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12105 and compose-mail-other-frame.
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 ** The `user-full-name' function now takes an optional parameter which
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12108 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
12109 full name of the specified user will be returned.
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 ** Lisp packages that load files of customizations, or any other sort
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12112 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
12113 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
12114 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
12115 option was used, then Lisp packages should not load the customization
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12116 files at all.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12117
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12118 ** format-time-string now allows you to specify the field width
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12119 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
12120 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
12121 the field width with 0, it means to pad with zeros.
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 For example, %S normally specifies the number of seconds since the
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12124 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
12125 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
12126 is how %S normally pads to two positions.
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 ** thing-at-point now supports a new kind of "thing": url.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12129
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12130 ** imenu.el changes.
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 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
12133 item from menu created by imenu.
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12134
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12135 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
12136 #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
12137 select one of those items.
35577
db5649648a65 Replace formfeeds removed on 2001/01/22.
Dave Love <fx@gnu.org>
parents: 35567
diff changeset
12138
30922
6c3081f54e62 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents: 30871
diff changeset
12139 * For older news, see the file ONEWS
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
12140
Dave Love <fx@gnu.org>
parents:
diff changeset
12141 ----------------------------------------------------------------------
Dave Love <fx@gnu.org>
parents:
diff changeset
12142 Copyright information:
Dave Love <fx@gnu.org>
parents:
diff changeset
12143
49407
c47a7a3493da *** empty log message ***
Dave Love <fx@gnu.org>
parents: 49395
diff changeset
12144 Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
12145
Dave Love <fx@gnu.org>
parents:
diff changeset
12146 Permission is granted to anyone to make or distribute verbatim copies
Dave Love <fx@gnu.org>
parents:
diff changeset
12147 of this document as received, in any medium, provided that the
Dave Love <fx@gnu.org>
parents:
diff changeset
12148 copyright notice and this permission notice are preserved,
Dave Love <fx@gnu.org>
parents:
diff changeset
12149 thus giving the recipient permission to redistribute in turn.
Dave Love <fx@gnu.org>
parents:
diff changeset
12150
Dave Love <fx@gnu.org>
parents:
diff changeset
12151 Permission is granted to distribute modified versions
Dave Love <fx@gnu.org>
parents:
diff changeset
12152 of this document, or of portions of it,
Dave Love <fx@gnu.org>
parents:
diff changeset
12153 under the above conditions, provided also that they
Dave Love <fx@gnu.org>
parents:
diff changeset
12154 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
12155
25853
Dave Love <fx@gnu.org>
parents:
diff changeset
12156 Local variables:
Dave Love <fx@gnu.org>
parents:
diff changeset
12157 mode: outline
Dave Love <fx@gnu.org>
parents:
diff changeset
12158 paragraph-separate: "[ ]*$"
Dave Love <fx@gnu.org>
parents:
diff changeset
12159 end:
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 52233
diff changeset
12160
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 52233
diff changeset
12161 arch-tag: 1aca9dfa-2ac4-4d14-bebf-0007cee12793