diff options
| author | Karoly Lorentey | 2007-04-22 12:42:47 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2007-04-22 12:42:47 +0000 |
| commit | 9d0799072a0d09bc14a99eaf372b262d1ba61399 (patch) | |
| tree | 76acd4ae0559776a5ec27fbd5c25598285ec71d1 /lispref | |
| parent | e18c709364b095ea0be8ecabe458ac9a642a252f (diff) | |
| parent | a20becf321f023c6dc1831595712576d64e2ef4b (diff) | |
| download | emacs-9d0799072a0d09bc14a99eaf372b262d1ba61399.tar.gz emacs-9d0799072a0d09bc14a99eaf372b262d1ba61399.zip | |
Merged from emacs@sv.gnu.org
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-674
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-675
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-676
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-677
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-678
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-679
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-680
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-681
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-682
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-683
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-684
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-685
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-686
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-687
Release ERC 5.2.
* emacs@sv.gnu.org/emacs--devo--0--patch-688
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-689
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-690
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-691
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-692
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-693
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-694
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-695
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-696
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-697
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-698
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-699
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-700
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-701
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-209
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-210
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-211
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-212
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-213
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-214
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-215
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-601
Diffstat (limited to 'lispref')
47 files changed, 713 insertions, 313 deletions
diff --git a/lispref/ChangeLog b/lispref/ChangeLog index 1510ec19e05..87aae706fc6 100644 --- a/lispref/ChangeLog +++ b/lispref/ChangeLog | |||
| @@ -1,3 +1,282 @@ | |||
| 1 | 2007-04-15 Chong Yidong <cyd@stupidchicken.com> | ||
| 2 | |||
| 3 | * frames.texi (Multiple Displays): Add note about "multi-monitor" | ||
| 4 | setups. | ||
| 5 | (Display Feature Testing): Note that display refers to all | ||
| 6 | physical monitors for multi-monitor setups. | ||
| 7 | |||
| 8 | 2007-04-14 Richard Stallman <rms@gnu.org> | ||
| 9 | |||
| 10 | * lists.texi (Sets And Lists): Clarify `delete' examples. | ||
| 11 | Remove spurious xref to same node. | ||
| 12 | Clarify xref for add-to-list. | ||
| 13 | |||
| 14 | 2007-04-12 Nick Roberts <nickrob@snap.net.nz> | ||
| 15 | |||
| 16 | * keymaps.texi (Format of Keymaps): Remove spurious ")" from | ||
| 17 | value of lisp-mode-map. | ||
| 18 | |||
| 19 | 2007-04-11 Karl Berry <karl@gnu.org> | ||
| 20 | |||
| 21 | * anti.texi (Antinews), | ||
| 22 | * display.texi (Overlay Properties) and (Defining Images), | ||
| 23 | * processes.texi (Synchronous Processes) and (Sentinels), | ||
| 24 | * syntax.texi (Syntax Table Internals), | ||
| 25 | * searching.texi (Regexp Special), | ||
| 26 | * nonascii.texi (Default Coding Systems), | ||
| 27 | * text.texi (Special Properties), | ||
| 28 | * minibuf.texi (Basic Completion): Wording to improve breaks in | ||
| 29 | 8.5x11 format. | ||
| 30 | * elisp.texi (smallbook): new @set to more easily switch between | ||
| 31 | smallbook and 8.5x11. | ||
| 32 | |||
| 33 | 2007-04-11 Richard Stallman <rms@gnu.org> | ||
| 34 | |||
| 35 | * text.texi (Lazy Properties): Minor fix. | ||
| 36 | |||
| 37 | 2007-04-08 Karl Berry <karl@gnu.org> | ||
| 38 | |||
| 39 | * symbols.texi (Plists and Alists): Period after "vs" in index entries. | ||
| 40 | * macros.texi (Backquote): Downcase Backquote in index entries for | ||
| 41 | consistency. | ||
| 42 | |||
| 43 | 2007-04-08 Richard Stallman <rms@gnu.org> | ||
| 44 | |||
| 45 | * text.texi (Adaptive Fill): Just describe default, | ||
| 46 | don't show it (since it contains non-ASCII chars). | ||
| 47 | |||
| 48 | 2007-04-07 Karl Berry <karl@gnu.org> | ||
| 49 | |||
| 50 | * text.texi (Adaptive Fill) [@iftex]: Omit binary characters in | ||
| 51 | adaptive-fill-regexp's value, since they are not in the standard | ||
| 52 | TeX fonts. | ||
| 53 | |||
| 54 | 2007-04-07 Herbert Euler <herberteuler@hotmail.com> | ||
| 55 | |||
| 56 | * display.texi (Defining Faces): Fix example. | ||
| 57 | |||
| 58 | 2007-04-07 Karl Berry <karl@gnu.org> | ||
| 59 | |||
| 60 | * display.texi (Button Buffer Commands): Improve page break. | ||
| 61 | |||
| 62 | 2007-04-07 Richard Stallman <rms@gnu.org> | ||
| 63 | |||
| 64 | * advice.texi (Activation of Advice): Remove redundant index entry. | ||
| 65 | |||
| 66 | * backups.texi: Improve index entries. Remove redundant ones. | ||
| 67 | |||
| 68 | * compile.texi (Byte Compilation): Improve index entry. | ||
| 69 | |||
| 70 | * hash.texi (Creating Hash): Improve index entry. | ||
| 71 | |||
| 72 | * symbols.texi (Definitions): Improve index entry. | ||
| 73 | |||
| 74 | * edebug.texi: Improve index entries. Remove redundant/useless ones. | ||
| 75 | |||
| 76 | * maps.texi (Standard Keymaps): Remove useless index entry. | ||
| 77 | |||
| 78 | * help.texi (Documentation Basics): Remove redundant index entries. | ||
| 79 | |||
| 80 | * customize.texi: Improve index entries. | ||
| 81 | Remove redundant/useless ones. | ||
| 82 | |||
| 83 | * locals.texi (Standard Buffer-Local Variables): Clarify intro text. | ||
| 84 | |||
| 85 | * streams.texi (Output Variables): Improve index entry. | ||
| 86 | |||
| 87 | * abbrevs.texi (Abbrevs): Remove useless index entry. | ||
| 88 | |||
| 89 | * macros.texi (Expansion): Remove useless index entry. | ||
| 90 | |||
| 91 | * text.texi: Improve index entries. Remove redundant/useless ones. | ||
| 92 | (Text Properties, Examining Properties) | ||
| 93 | (Special Properties): Use "property category" instead of "category" | ||
| 94 | to refer to the `category' property. | ||
| 95 | |||
| 96 | * positions.texi: Improve index entries. Remove useless one. | ||
| 97 | |||
| 98 | * lists.texi: Improve index entries. Remove redundant/useless ones. | ||
| 99 | |||
| 100 | * os.texi: Improve index entries. | ||
| 101 | (Timers): Fix previous change. | ||
| 102 | |||
| 103 | * buffers.texi: Improve index entries. | ||
| 104 | (Modification Time): Get rid of term "obsolete buffer". | ||
| 105 | |||
| 106 | * debugging.texi: Improve index entries. | ||
| 107 | (Test Coverage): Add xref to other test coverage ftr. | ||
| 108 | |||
| 109 | * eval.texi: Improve index entry. Remove redundant ones. | ||
| 110 | |||
| 111 | * numbers.texi: Improve index entries. Remove redundant/useless ones. | ||
| 112 | |||
| 113 | * files.texi: Improve index entries. Remove redundant/useless ones. | ||
| 114 | |||
| 115 | * objects.texi: Improve index entries. | ||
| 116 | |||
| 117 | * processes.texi: Improve index entries. | ||
| 118 | |||
| 119 | * modes.texi: Improve index entry. Remove redundant one. | ||
| 120 | |||
| 121 | * nonascii.texi: Improve index entries. | ||
| 122 | |||
| 123 | * internals.texi: Improve index entries. | ||
| 124 | |||
| 125 | * syntax.texi: Improve index entries. | ||
| 126 | |||
| 127 | * keymaps.texi (Active Keymaps): Improve index entries. | ||
| 128 | |||
| 129 | * commands.texi: Improve index entries. Remove redundant/useless ones. | ||
| 130 | |||
| 131 | * frames.texi: Improve index entries. Remove redundant/useless ones. | ||
| 132 | |||
| 133 | * markers.texi: Improve index entries. Remove redundant ones. | ||
| 134 | |||
| 135 | * tips.texi: Improve index entries. | ||
| 136 | |||
| 137 | * loading.texi (Unloading): Improve index entry. | ||
| 138 | |||
| 139 | * variables.texi: Improve index entries. Remove redundant one. | ||
| 140 | |||
| 141 | * sequences.texi: Improve index entry. | ||
| 142 | |||
| 143 | * display.texi: Improve index entries. Remove redundant ones. | ||
| 144 | |||
| 145 | * windows.texi: Improve index entries. | ||
| 146 | |||
| 147 | * searching.texi: Improve index entries. Remove redundant one. | ||
| 148 | |||
| 149 | * strings.texi (Case Tables): Improve last change. | ||
| 150 | |||
| 151 | 2007-04-04 Chong Yidong <cyd@stupidchicken.com> | ||
| 152 | |||
| 153 | * strings.texi (Case Tables): Document with-case-table and | ||
| 154 | ascii-case-table. | ||
| 155 | |||
| 156 | 2007-04-03 Karl Berry <karl@gnu.org> | ||
| 157 | |||
| 158 | * processes.texi (Network): Reword to improve page break. | ||
| 159 | |||
| 160 | 2007-04-03 Eli Zaretskii <eliz@gnu.org> | ||
| 161 | |||
| 162 | * functions.texi (Inline Functions): Describe more disadvantages | ||
| 163 | of defsubst, and make advice against it stronger. | ||
| 164 | |||
| 165 | 2007-04-02 Karl Berry <karl@gnu.org> | ||
| 166 | |||
| 167 | * backups.texi (Backup Names): Avoid widow words. | ||
| 168 | * modes.texi (Example Major Modes): Align last comment. | ||
| 169 | |||
| 170 | 2007-04-01 Chong Yidong <cyd@stupidchicken.com> | ||
| 171 | |||
| 172 | * keymaps.texi (Remapping Commands): Document new arg to | ||
| 173 | command-remapping. | ||
| 174 | |||
| 175 | 2007-04-01 Karl Berry <karl@gnu.org> | ||
| 176 | |||
| 177 | * processes.texi (Low-Level Network): typo. | ||
| 178 | * loading.texi (Hooks for Loading): avoid double "the". | ||
| 179 | * keymaps.texi (Key Sequences): no double "and". | ||
| 180 | (Changing Key Bindings): shorten to improve line break. | ||
| 181 | |||
| 182 | 2007-03-31 Glenn Morris <rgm@gnu.org> | ||
| 183 | |||
| 184 | * os.texi (Timers): Fix description of run-at-time TIME formats. | ||
| 185 | |||
| 186 | 2007-03-31 Richard Stallman <rms@gnu.org> | ||
| 187 | |||
| 188 | * display.texi (Invisible Text): Correct buffer-invisibility-spec | ||
| 189 | regarding ellipsis. | ||
| 190 | |||
| 191 | 2007-03-31 Eli Zaretskii <eliz@gnu.org> | ||
| 192 | |||
| 193 | * intro.texi (nil and t): | ||
| 194 | * symbols.texi (Plists and Alists): | ||
| 195 | * variables.texi (Variable Aliases, Constant Variables): | ||
| 196 | * functions.texi (Defining Functions): | ||
| 197 | * advice.texi (Advising Primitives): | ||
| 198 | * debugging.texi (Syntax Errors, Compilation Errors): | ||
| 199 | * minibuf.texi (Minibuffer Windows): | ||
| 200 | * commands.texi (Adjusting Point): | ||
| 201 | * modes.texi (Syntactic Font Lock, Faces for Font Lock) | ||
| 202 | (Auto Major Mode, Major Mode Conventions): | ||
| 203 | * help.texi (Describing Characters): | ||
| 204 | * files.texi (Create/Delete Dirs, Information about Files) | ||
| 205 | (File Locks, Writing to Files, Reading from Files) | ||
| 206 | (Saving Buffers): | ||
| 207 | * windows.texi (Resizing Windows, Cyclic Window Ordering): | ||
| 208 | * frames.texi (Finding All Frames): | ||
| 209 | * positions.texi (Buffer End, Motion): | ||
| 210 | * markers.texi (The Region): | ||
| 211 | * text.texi (Deletion, Near Point): | ||
| 212 | * display.texi (Displaying Messages, Truncation): | ||
| 213 | * os.texi (Processor Run Time): | ||
| 214 | * tips.texi (Key Binding Conventions, Programming Tips) | ||
| 215 | (Warning Tips, Documentation Tips, Comment Tips): | ||
| 216 | * internals.texi (Memory Usage): Improve indexing. | ||
| 217 | |||
| 218 | * variables.texi (Frame-Local Variables): | ||
| 219 | * functions.texi (Argument List): | ||
| 220 | * loading.texi (Library Search): | ||
| 221 | * streams.texi (Output Variables): | ||
| 222 | * keymaps.texi (Translation Keymaps, Searching Keymaps): | ||
| 223 | * searching.texi (Replacing Match, Search and Replace): | ||
| 224 | * processes.texi (Byte Packing, Decoding Output) | ||
| 225 | (Accepting Output, Network Servers, Shell Arguments): | ||
| 226 | * display.texi (Abstract Display, Image Cache, Scroll Bars): | ||
| 227 | * windows.texi (Window Point, Window Start): | ||
| 228 | * frames.texi (Management Parameters, Frame Parameters, Frame Titles): | ||
| 229 | * commands.texi (Reading Input, Keyboard Events): | ||
| 230 | * minibuf.texi (Reading File Names, Minibuffer Completion) | ||
| 231 | (Recursive Mini): | ||
| 232 | * positions.texi (List Motion): | ||
| 233 | * hash.texi (Hash Tables, Creating Hash, Defining Hash): | ||
| 234 | * numbers.texi (Arithmetic Operations, Math Functions) | ||
| 235 | (Predicates on Numbers, Comparison of Numbers): | ||
| 236 | (Numeric Conversions): | ||
| 237 | * locals.texi (Standard Buffer-Local Variables): | ||
| 238 | * maps.texi (Standard Keymaps): | ||
| 239 | * os.texi (User Identification, System Environment, Recording Input) | ||
| 240 | (X11 Keysyms): | ||
| 241 | * nonascii.texi (Non-ASCII Characters, Splitting Characters): | ||
| 242 | * backups.texi (Backups and Auto-Saving): | ||
| 243 | * customize.texi (Customization, Group Definitions) | ||
| 244 | (Variable Definitions): | ||
| 245 | * compile.texi (Byte Compilation): Improve index entries. | ||
| 246 | |||
| 247 | 2007-03-31 Karl Berry <karl@gnu.org> | ||
| 248 | |||
| 249 | * macros.texi (Defining Macros): Avoid widow syllable. | ||
| 250 | |||
| 251 | 2007-03-31 Eli Zaretskii <eliz@gnu.org> | ||
| 252 | |||
| 253 | * elisp.texi (Top): Postscript -> PostScript. | ||
| 254 | |||
| 255 | * display.texi (Images, Postscript Images): Postscript -> PostScript. | ||
| 256 | |||
| 257 | 2007-03-31 Markus Triska <markus.triska@gmx.at> | ||
| 258 | |||
| 259 | * internals.texi (Writing Emacs Primitives): Untabify `For'. | ||
| 260 | |||
| 261 | 2007-03-30 Karl Berry <karl@gnu.org> | ||
| 262 | |||
| 263 | * lists.texi (List-related Predicates): Remove spurious @need. | ||
| 264 | (Setcdr): Use @smallexample to improve page break. | ||
| 265 | (Association Lists) <assoc>: Reword to improve page break. | ||
| 266 | |||
| 267 | * strings.texi (String Conversion): Insert blank line to improve | ||
| 268 | page break. | ||
| 269 | |||
| 270 | * numbers.texi (Random Numbers): Use @minus{}. | ||
| 271 | (Math Functions): Use @minus{}. | ||
| 272 | |||
| 273 | * intro.texi (Acknowledgements): Avoid line breaks before middle | ||
| 274 | initials. | ||
| 275 | |||
| 276 | 2007-03-24 Eli Zaretskii <eliz@gnu.org> | ||
| 277 | |||
| 278 | * errors.texi (Standard Errors): Add an index entry. | ||
| 279 | |||
| 1 | 2007-03-19 Richard Stallman <rms@gnu.org> | 280 | 2007-03-19 Richard Stallman <rms@gnu.org> |
| 2 | 281 | ||
| 3 | * os.texi (Recording Input): recent-keys now gives 300 keys. | 282 | * os.texi (Recording Input): recent-keys now gives 300 keys. |
diff --git a/lispref/abbrevs.texi b/lispref/abbrevs.texi index 53f6f194ee1..46e7c3739c4 100644 --- a/lispref/abbrevs.texi +++ b/lispref/abbrevs.texi | |||
| @@ -7,7 +7,7 @@ | |||
| 7 | @node Abbrevs, Processes, Syntax Tables, Top | 7 | @node Abbrevs, Processes, Syntax Tables, Top |
| 8 | @chapter Abbrevs and Abbrev Expansion | 8 | @chapter Abbrevs and Abbrev Expansion |
| 9 | @cindex abbrev | 9 | @cindex abbrev |
| 10 | @cindex abbrev table | 10 | @c @cindex abbrev table Redundant with "abbrev". |
| 11 | 11 | ||
| 12 | An abbreviation or @dfn{abbrev} is a string of characters that may be | 12 | An abbreviation or @dfn{abbrev} is a string of characters that may be |
| 13 | expanded to a longer string. The user can insert the abbrev string and | 13 | expanded to a longer string. The user can insert the abbrev string and |
diff --git a/lispref/advice.texi b/lispref/advice.texi index 003e12ad833..4d580f9846d 100644 --- a/lispref/advice.texi +++ b/lispref/advice.texi | |||
| @@ -384,7 +384,7 @@ activated advice for @var{function}, it activates the new advice. | |||
| 384 | @deffn Command ad-deactivate function | 384 | @deffn Command ad-deactivate function |
| 385 | This command deactivates the advice for @var{function}. | 385 | This command deactivates the advice for @var{function}. |
| 386 | @cindex deactivating advice | 386 | @cindex deactivating advice |
| 387 | @cindex advice, deactivating | 387 | @c @cindex advice, deactivating "advice, activating" is just above |
| 388 | @end deffn | 388 | @end deffn |
| 389 | 389 | ||
| 390 | @deffn Command ad-update function &optional compile | 390 | @deffn Command ad-update function &optional compile |
| @@ -673,6 +673,7 @@ Instead they are implemented specially by the advice mechanism. | |||
| 673 | 673 | ||
| 674 | @node Advising Primitives | 674 | @node Advising Primitives |
| 675 | @section Advising Primitives | 675 | @section Advising Primitives |
| 676 | @cindex advising primitives | ||
| 676 | 677 | ||
| 677 | Advising a primitive function (also called a ``subr'') is risky. | 678 | Advising a primitive function (also called a ``subr'') is risky. |
| 678 | Some primitive functions are used by the advice mechanism; advising | 679 | Some primitive functions are used by the advice mechanism; advising |
diff --git a/lispref/anti.texi b/lispref/anti.texi index de07936d2f4..b258e959a46 100644 --- a/lispref/anti.texi +++ b/lispref/anti.texi | |||
| @@ -433,11 +433,10 @@ The @code{table} argument to @code{translate-region} can no longer be | |||
| 433 | a char-table; it has to be a string. | 433 | a char-table; it has to be a string. |
| 434 | 434 | ||
| 435 | @item | 435 | @item |
| 436 | The two functions @code{merge-coding-systems} and | 436 | The variable @code{auto-coding-functions} and the two functions |
| 437 | @code{decode-coding-inserted-region}, and the variable | 437 | @code{merge-coding-systems} and @code{decode-coding-inserted-region} |
| 438 | @code{auto-coding-functions}, have been deleted. The | 438 | have been deleted. The coding system property |
| 439 | @code{mime-text-unsuitable} coding system property no longer has any | 439 | @code{mime-text-unsuitable} no longer has any special meaning. |
| 440 | special meaning. | ||
| 441 | 440 | ||
| 442 | @item | 441 | @item |
| 443 | If pure storage overflows while dumping, Emacs won't tell you how much | 442 | If pure storage overflows while dumping, Emacs won't tell you how much |
diff --git a/lispref/backups.texi b/lispref/backups.texi index 893f6df4205..44795557f15 100644 --- a/lispref/backups.texi +++ b/lispref/backups.texi | |||
| @@ -6,6 +6,7 @@ | |||
| 6 | @setfilename ../info/backups | 6 | @setfilename ../info/backups |
| 7 | @node Backups and Auto-Saving, Buffers, Files, Top | 7 | @node Backups and Auto-Saving, Buffers, Files, Top |
| 8 | @chapter Backups and Auto-Saving | 8 | @chapter Backups and Auto-Saving |
| 9 | @cindex backups and auto-saving | ||
| 9 | 10 | ||
| 10 | Backup files and auto-save files are two methods by which Emacs tries | 11 | Backup files and auto-save files are two methods by which Emacs tries |
| 11 | to protect the user from the consequences of crashes or of the user's | 12 | to protect the user from the consequences of crashes or of the user's |
| @@ -25,10 +26,10 @@ current session. | |||
| 25 | 26 | ||
| 26 | A @dfn{backup file} is a copy of the old contents of a file you are | 27 | A @dfn{backup file} is a copy of the old contents of a file you are |
| 27 | editing. Emacs makes a backup file the first time you save a buffer | 28 | editing. Emacs makes a backup file the first time you save a buffer |
| 28 | into its visited file. Normally, this means that the backup file | 29 | into its visited file. Thus, normally, the backup file contains the |
| 29 | contains the contents of the file as it was before the current editing | 30 | contents of the file as it was before the current editing session. |
| 30 | session. The contents of the backup file normally remain unchanged once | 31 | The contents of the backup file normally remain unchanged once it |
| 31 | it exists. | 32 | exists. |
| 32 | 33 | ||
| 33 | Backups are usually made by renaming the visited file to a new name. | 34 | Backups are usually made by renaming the visited file to a new name. |
| 34 | Optionally, you can specify that backup files should be made by copying | 35 | Optionally, you can specify that backup files should be made by copying |
| @@ -66,11 +67,11 @@ function returns @code{nil}. | |||
| 66 | @end defun | 67 | @end defun |
| 67 | 68 | ||
| 68 | @defvar buffer-backed-up | 69 | @defvar buffer-backed-up |
| 69 | This buffer-local variable indicates whether this buffer's file has | 70 | This buffer-local variable says whether this buffer's file has |
| 70 | been backed up on account of this buffer. If it is non-@code{nil}, then | 71 | been backed up on account of this buffer. If it is non-@code{nil}, |
| 71 | the backup file has been written. Otherwise, the file should be backed | 72 | the backup file has been written. Otherwise, the file should be backed |
| 72 | up when it is next saved (if backups are enabled). This is a | 73 | up when it is next saved (if backups are enabled). This is a |
| 73 | permanent local; @code{kill-all-local-variables} does not alter it. | 74 | permanent local; @code{kill-all-local-variables} does not alter@tie{}it. |
| 74 | @end defvar | 75 | @end defvar |
| 75 | 76 | ||
| 76 | @defopt make-backup-files | 77 | @defopt make-backup-files |
| @@ -162,7 +163,7 @@ files. If you define it, you may need to change | |||
| 162 | 163 | ||
| 163 | @node Rename or Copy | 164 | @node Rename or Copy |
| 164 | @subsection Backup by Renaming or by Copying? | 165 | @subsection Backup by Renaming or by Copying? |
| 165 | @cindex backup files, how to make them | 166 | @cindex backup files, rename or copy |
| 166 | 167 | ||
| 167 | There are two ways that Emacs can make a backup file: | 168 | There are two ways that Emacs can make a backup file: |
| 168 | 169 | ||
| @@ -268,12 +269,12 @@ automatically or it can ask the user whether to delete them. | |||
| 268 | @defopt kept-new-versions | 269 | @defopt kept-new-versions |
| 269 | The value of this variable is the number of newest versions to keep | 270 | The value of this variable is the number of newest versions to keep |
| 270 | when a new numbered backup is made. The newly made backup is included | 271 | when a new numbered backup is made. The newly made backup is included |
| 271 | in the count. The default value is 2. | 272 | in the count. The default value is@tie{}2. |
| 272 | @end defopt | 273 | @end defopt |
| 273 | 274 | ||
| 274 | @defopt kept-old-versions | 275 | @defopt kept-old-versions |
| 275 | The value of this variable is the number of oldest versions to keep | 276 | The value of this variable is the number of oldest versions to keep |
| 276 | when a new numbered backup is made. The default value is 2. | 277 | when a new numbered backup is made. The default value is@tie{}2. |
| 277 | @end defopt | 278 | @end defopt |
| 278 | 279 | ||
| 279 | If there are backups numbered 1, 2, 3, 5, and 7, and both of these | 280 | If there are backups numbered 1, 2, 3, 5, and 7, and both of these |
| @@ -294,7 +295,7 @@ Otherwise, they are not deleted at all. | |||
| 294 | This variable specifies how many of the newest backup versions to keep | 295 | This variable specifies how many of the newest backup versions to keep |
| 295 | in the Dired command @kbd{.} (@code{dired-clean-directory}). That's the | 296 | in the Dired command @kbd{.} (@code{dired-clean-directory}). That's the |
| 296 | same thing @code{kept-new-versions} specifies when you make a new backup | 297 | same thing @code{kept-new-versions} specifies when you make a new backup |
| 297 | file. The default value is 2. | 298 | file. The default is@tie{}2. |
| 298 | @end defopt | 299 | @end defopt |
| 299 | 300 | ||
| 300 | @node Backup Names | 301 | @node Backup Names |
| @@ -306,8 +307,8 @@ If you change one, you probably need to change the rest. | |||
| 306 | 307 | ||
| 307 | @defun backup-file-name-p filename | 308 | @defun backup-file-name-p filename |
| 308 | This function returns a non-@code{nil} value if @var{filename} is a | 309 | This function returns a non-@code{nil} value if @var{filename} is a |
| 309 | possible name for a backup file. A file with the name @var{filename} | 310 | possible name for a backup file. It just checks the name, not whether |
| 310 | need not exist; the function just checks the name. | 311 | a file with the name @var{filename} exists. |
| 311 | 312 | ||
| 312 | @smallexample | 313 | @smallexample |
| 313 | @group | 314 | @group |
| @@ -417,7 +418,7 @@ automatically compare a file with its most recent backup. | |||
| 417 | 418 | ||
| 418 | @node Auto-Saving | 419 | @node Auto-Saving |
| 419 | @section Auto-Saving | 420 | @section Auto-Saving |
| 420 | @cindex auto-saving | 421 | @c @cindex auto-saving Lots of symbols starting with auto-save here. |
| 421 | 422 | ||
| 422 | Emacs periodically saves all files that you are visiting; this is | 423 | Emacs periodically saves all files that you are visiting; this is |
| 423 | called @dfn{auto-saving}. Auto-saving prevents you from losing more | 424 | called @dfn{auto-saving}. Auto-saving prevents you from losing more |
diff --git a/lispref/buffers.texi b/lispref/buffers.texi index a0c2d1aa566..e9cafb69fb5 100644 --- a/lispref/buffers.texi +++ b/lispref/buffers.texi | |||
| @@ -593,16 +593,17 @@ current buffer is used. | |||
| 593 | 593 | ||
| 594 | @node Modification Time | 594 | @node Modification Time |
| 595 | @comment node-name, next, previous, up | 595 | @comment node-name, next, previous, up |
| 596 | @section Comparison of Modification Time | 596 | @section Buffer Modification Time |
| 597 | @cindex comparison of modification time | 597 | @cindex comparing file modification time |
| 598 | @cindex modification time, comparison of | 598 | @cindex modification time of buffer |
| 599 | 599 | ||
| 600 | Suppose that you visit a file and make changes in its buffer, and | 600 | Suppose that you visit a file and make changes in its buffer, and |
| 601 | meanwhile the file itself is changed on disk. At this point, saving the | 601 | meanwhile the file itself is changed on disk. At this point, saving the |
| 602 | buffer would overwrite the changes in the file. Occasionally this may | 602 | buffer would overwrite the changes in the file. Occasionally this may |
| 603 | be what you want, but usually it would lose valuable information. Emacs | 603 | be what you want, but usually it would lose valuable information. Emacs |
| 604 | therefore checks the file's modification time using the functions | 604 | therefore checks the file's modification time using the functions |
| 605 | described below before saving the file. | 605 | described below before saving the file. (@xref{File Attributes}, |
| 606 | for how to examine a file's modification time.) | ||
| 606 | 607 | ||
| 607 | @defun verify-visited-file-modtime buffer | 608 | @defun verify-visited-file-modtime buffer |
| 608 | This function compares what @var{buffer} has recorded for the | 609 | This function compares what @var{buffer} has recorded for the |
| @@ -679,12 +680,11 @@ reason. | |||
| 679 | @end defun | 680 | @end defun |
| 680 | 681 | ||
| 681 | @defun ask-user-about-supersession-threat filename | 682 | @defun ask-user-about-supersession-threat filename |
| 682 | @cindex obsolete buffer | ||
| 683 | This function is used to ask a user how to proceed after an attempt to | 683 | This function is used to ask a user how to proceed after an attempt to |
| 684 | modify an obsolete buffer visiting file @var{filename}. An | 684 | modify an buffer visiting file @var{filename} when the file is newer |
| 685 | @dfn{obsolete buffer} is an unmodified buffer for which the associated | 685 | than the buffer text. Emacs detects this because the modification |
| 686 | file on disk is newer than the last save-time of the buffer. This means | 686 | time of the file on disk is newer than the last save-time of the |
| 687 | some other program has probably altered the file. | 687 | buffer. This means some other program has probably altered the file. |
| 688 | 688 | ||
| 689 | @kindex file-supersession | 689 | @kindex file-supersession |
| 690 | Depending on the user's answer, the function may return normally, in | 690 | Depending on the user's answer, the function may return normally, in |
diff --git a/lispref/commands.texi b/lispref/commands.texi index 6cbf6e70099..8354346c35e 100644 --- a/lispref/commands.texi +++ b/lispref/commands.texi | |||
| @@ -116,13 +116,13 @@ controls the reading of arguments for an interactive call. | |||
| 116 | 116 | ||
| 117 | @node Using Interactive | 117 | @node Using Interactive |
| 118 | @subsection Using @code{interactive} | 118 | @subsection Using @code{interactive} |
| 119 | @cindex arguments, interactive entry | ||
| 119 | 120 | ||
| 120 | This section describes how to write the @code{interactive} form that | 121 | This section describes how to write the @code{interactive} form that |
| 121 | makes a Lisp function an interactively-callable command, and how to | 122 | makes a Lisp function an interactively-callable command, and how to |
| 122 | examine a command's @code{interactive} form. | 123 | examine a command's @code{interactive} form. |
| 123 | 124 | ||
| 124 | @defspec interactive arg-descriptor | 125 | @defspec interactive arg-descriptor |
| 125 | @cindex argument descriptors | ||
| 126 | This special form declares that the function in which it appears is a | 126 | This special form declares that the function in which it appears is a |
| 127 | command, and that it may therefore be called interactively (via | 127 | command, and that it may therefore be called interactively (via |
| 128 | @kbd{M-x} or by entering a key sequence bound to it). The argument | 128 | @kbd{M-x} or by entering a key sequence bound to it). The argument |
| @@ -151,7 +151,6 @@ arguments. This leads quickly to an error if the command requires one | |||
| 151 | or more arguments. | 151 | or more arguments. |
| 152 | 152 | ||
| 153 | @item | 153 | @item |
| 154 | @cindex argument prompt | ||
| 155 | It may be a string; then its contents should consist of a code character | 154 | It may be a string; then its contents should consist of a code character |
| 156 | followed by a prompt (which some code characters use and some ignore). | 155 | followed by a prompt (which some code characters use and some ignore). |
| 157 | The prompt ends either with the end of the string or with a newline. | 156 | The prompt ends either with the end of the string or with a newline. |
| @@ -207,7 +206,6 @@ form that is evaluated to get a list of arguments to pass to the | |||
| 207 | command. Usually this form will call various functions to read input | 206 | command. Usually this form will call various functions to read input |
| 208 | from the user, most often through the minibuffer (@pxref{Minibuffers}) | 207 | from the user, most often through the minibuffer (@pxref{Minibuffers}) |
| 209 | or directly from the keyboard (@pxref{Reading Input}). | 208 | or directly from the keyboard (@pxref{Reading Input}). |
| 210 | @cindex argument evaluation form | ||
| 211 | 209 | ||
| 212 | Providing point or the mark as an argument value is also common, but | 210 | Providing point or the mark as an argument value is also common, but |
| 213 | if you do this @emph{and} read input (whether using the minibuffer or | 211 | if you do this @emph{and} read input (whether using the minibuffer or |
| @@ -865,6 +863,10 @@ If the last event came from a keyboard macro, the value is @code{macro}. | |||
| 865 | 863 | ||
| 866 | @node Adjusting Point | 864 | @node Adjusting Point |
| 867 | @section Adjusting Point After Commands | 865 | @section Adjusting Point After Commands |
| 866 | @cindex adjusting point | ||
| 867 | @cindex invisible/intangible text, and point | ||
| 868 | @cindex @code{display} property, and point display | ||
| 869 | @cindex @code{composition} property, and point display | ||
| 868 | 870 | ||
| 869 | It is not easy to display a value of point in the middle of a | 871 | It is not easy to display a value of point in the middle of a |
| 870 | sequence of text that has the @code{display}, @code{composition} or | 872 | sequence of text that has the @code{display}, @code{composition} or |
| @@ -933,6 +935,7 @@ the current Emacs session. If a symbol has not yet been so used, | |||
| 933 | 935 | ||
| 934 | @node Keyboard Events | 936 | @node Keyboard Events |
| 935 | @subsection Keyboard Events | 937 | @subsection Keyboard Events |
| 938 | @cindex keyboard events | ||
| 936 | 939 | ||
| 937 | There are two kinds of input you can get from the keyboard: ordinary | 940 | There are two kinds of input you can get from the keyboard: ordinary |
| 938 | keys, and function keys. Ordinary keys correspond to characters; the | 941 | keys, and function keys. Ordinary keys correspond to characters; the |
| @@ -1600,19 +1603,19 @@ command in the @code{special-event-map} (@pxref{Active Keymaps}). | |||
| 1600 | The command is called with no arguments, and the specific signal event is | 1603 | The command is called with no arguments, and the specific signal event is |
| 1601 | available in @code{last-input-event}. For example: | 1604 | available in @code{last-input-event}. For example: |
| 1602 | 1605 | ||
| 1603 | @example | 1606 | @smallexample |
| 1604 | (defun sigusr-handler () | 1607 | (defun sigusr-handler () |
| 1605 | (interactive) | 1608 | (interactive) |
| 1606 | (message "Caught signal %S" last-input-event)) | 1609 | (message "Caught signal %S" last-input-event)) |
| 1607 | 1610 | ||
| 1608 | (define-key special-event-map [sigusr1] 'sigusr-handler) | 1611 | (define-key special-event-map [sigusr1] 'sigusr-handler) |
| 1609 | @end example | 1612 | @end smallexample |
| 1610 | 1613 | ||
| 1611 | To test the signal handler, you can make Emacs send a signal to itself: | 1614 | To test the signal handler, you can make Emacs send a signal to itself: |
| 1612 | 1615 | ||
| 1613 | @example | 1616 | @smallexample |
| 1614 | (signal-process (emacs-pid) 'sigusr1) | 1617 | (signal-process (emacs-pid) 'sigusr1) |
| 1615 | @end example | 1618 | @end smallexample |
| 1616 | @end table | 1619 | @end table |
| 1617 | 1620 | ||
| 1618 | If one of these events arrives in the middle of a key sequence---that | 1621 | If one of these events arrives in the middle of a key sequence---that |
| @@ -1776,8 +1779,7 @@ must be the last element of the list. For example, | |||
| 1776 | 1779 | ||
| 1777 | @node Accessing Events | 1780 | @node Accessing Events |
| 1778 | @subsection Accessing Events | 1781 | @subsection Accessing Events |
| 1779 | @cindex mouse events, accessing the data | 1782 | @cindex mouse events, data in |
| 1780 | @cindex accessing data of mouse events | ||
| 1781 | 1783 | ||
| 1782 | This section describes convenient functions for accessing the data in | 1784 | This section describes convenient functions for accessing the data in |
| 1783 | a mouse button or motion event. | 1785 | a mouse button or motion event. |
| @@ -1892,7 +1894,6 @@ cons cell @code{(@var{width} . @var{height})}. If the @var{position} | |||
| 1892 | is a buffer position, return the size of the character at that position. | 1894 | is a buffer position, return the size of the character at that position. |
| 1893 | @end defun | 1895 | @end defun |
| 1894 | 1896 | ||
| 1895 | @cindex mouse event, timestamp | ||
| 1896 | @cindex timestamp of a mouse event | 1897 | @cindex timestamp of a mouse event |
| 1897 | @defun posn-timestamp position | 1898 | @defun posn-timestamp position |
| 1898 | Return the timestamp in @var{position}. This is the time at which the | 1899 | Return the timestamp in @var{position}. This is the time at which the |
| @@ -2077,6 +2078,8 @@ following the recommendations at the beginning of this section. | |||
| 2077 | 2078 | ||
| 2078 | @node Reading Input | 2079 | @node Reading Input |
| 2079 | @section Reading Input | 2080 | @section Reading Input |
| 2081 | @cindex read input | ||
| 2082 | @cindex keyboard input | ||
| 2080 | 2083 | ||
| 2081 | The editor command loop reads key sequences using the function | 2084 | The editor command loop reads key sequences using the function |
| 2082 | @code{read-key-sequence}, which uses @code{read-event}. These and other | 2085 | @code{read-key-sequence}, which uses @code{read-event}. These and other |
| @@ -2106,7 +2109,6 @@ debugging terminal input. | |||
| 2106 | for example, @code{describe-key} uses it to read the key to describe. | 2109 | for example, @code{describe-key} uses it to read the key to describe. |
| 2107 | 2110 | ||
| 2108 | @defun read-key-sequence prompt &optional continue-echo dont-downcase-last switch-frame-ok command-loop | 2111 | @defun read-key-sequence prompt &optional continue-echo dont-downcase-last switch-frame-ok command-loop |
| 2109 | @cindex key sequence | ||
| 2110 | This function reads a key sequence and returns it as a string or | 2112 | This function reads a key sequence and returns it as a string or |
| 2111 | vector. It keeps reading events until it has accumulated a complete key | 2113 | vector. It keeps reading events until it has accumulated a complete key |
| 2112 | sequence; that is, enough to specify a non-prefix command using the | 2114 | sequence; that is, enough to specify a non-prefix command using the |
| @@ -2539,7 +2541,6 @@ command's key sequence (as returned by e.g. @code{this-command-keys}), | |||
| 2539 | as the events will already have been added once as they were read for | 2541 | as the events will already have been added once as they were read for |
| 2540 | the first time. An element of the form @code{(@code{t} . @var{event})} | 2542 | the first time. An element of the form @code{(@code{t} . @var{event})} |
| 2541 | forces @var{event} to be added to the current command's key sequence. | 2543 | forces @var{event} to be added to the current command's key sequence. |
| 2542 | |||
| 2543 | @end defvar | 2544 | @end defvar |
| 2544 | 2545 | ||
| 2545 | @defun listify-key-sequence key | 2546 | @defun listify-key-sequence key |
| @@ -2613,9 +2614,9 @@ like this: | |||
| 2613 | @end defmac | 2614 | @end defmac |
| 2614 | 2615 | ||
| 2615 | @defun discard-input | 2616 | @defun discard-input |
| 2616 | @cindex flush input | 2617 | @cindex flushing input |
| 2617 | @cindex discard input | 2618 | @cindex discarding input |
| 2618 | @cindex terminate keyboard macro | 2619 | @cindex keyboard macro, terminating |
| 2619 | This function discards the contents of the terminal input buffer and | 2620 | This function discards the contents of the terminal input buffer and |
| 2620 | cancels any keyboard macro that might be in the process of definition. | 2621 | cancels any keyboard macro that might be in the process of definition. |
| 2621 | It returns @code{nil}. | 2622 | It returns @code{nil}. |
| @@ -2661,7 +2662,6 @@ in the variable @code{special-event-map} (@pxref{Active Keymaps}). | |||
| 2661 | 2662 | ||
| 2662 | @node Waiting | 2663 | @node Waiting |
| 2663 | @section Waiting for Elapsed Time or Input | 2664 | @section Waiting for Elapsed Time or Input |
| 2664 | @cindex pausing | ||
| 2665 | @cindex waiting | 2665 | @cindex waiting |
| 2666 | 2666 | ||
| 2667 | The wait functions are designed to wait for a certain amount of time | 2667 | The wait functions are designed to wait for a certain amount of time |
| @@ -2768,7 +2768,7 @@ about the special behavior of @kbd{C-g} in the command loop. In the | |||
| 2768 | case of @code{read-quoted-char}, this is so that @kbd{C-q} can be used | 2768 | case of @code{read-quoted-char}, this is so that @kbd{C-q} can be used |
| 2769 | to quote a @kbd{C-g}. | 2769 | to quote a @kbd{C-g}. |
| 2770 | 2770 | ||
| 2771 | @cindex prevent quitting | 2771 | @cindex preventing quitting |
| 2772 | You can prevent quitting for a portion of a Lisp function by binding | 2772 | You can prevent quitting for a portion of a Lisp function by binding |
| 2773 | the variable @code{inhibit-quit} to a non-@code{nil} value. Then, | 2773 | the variable @code{inhibit-quit} to a non-@code{nil} value. Then, |
| 2774 | although @kbd{C-g} still sets @code{quit-flag} to @code{t} as usual, the | 2774 | although @kbd{C-g} still sets @code{quit-flag} to @code{t} as usual, the |
diff --git a/lispref/compile.texi b/lispref/compile.texi index 4ed0eb8c1bf..8f5c047fd6b 100644 --- a/lispref/compile.texi +++ b/lispref/compile.texi | |||
| @@ -6,8 +6,9 @@ | |||
| 6 | @setfilename ../info/compile | 6 | @setfilename ../info/compile |
| 7 | @node Byte Compilation, Advising Functions, Loading, Top | 7 | @node Byte Compilation, Advising Functions, Loading, Top |
| 8 | @chapter Byte Compilation | 8 | @chapter Byte Compilation |
| 9 | @cindex byte compilation | ||
| 9 | @cindex byte-code | 10 | @cindex byte-code |
| 10 | @cindex compilation | 11 | @cindex compilation (Emacs Lisp) |
| 11 | 12 | ||
| 12 | Emacs Lisp has a @dfn{compiler} that translates functions written | 13 | Emacs Lisp has a @dfn{compiler} that translates functions written |
| 13 | in Lisp into a special representation called @dfn{byte-code} that can be | 14 | in Lisp into a special representation called @dfn{byte-code} that can be |
diff --git a/lispref/customize.texi b/lispref/customize.texi index 3d7e9b00172..8b1b1a9b91f 100644 --- a/lispref/customize.texi +++ b/lispref/customize.texi | |||
| @@ -186,9 +186,10 @@ choice is the official name of the package, such as MH-E or Gnus. | |||
| 186 | @end defvar | 186 | @end defvar |
| 187 | 187 | ||
| 188 | @node Group Definitions | 188 | @node Group Definitions |
| 189 | @section Defining Custom Groups | 189 | @section Defining Customization Groups |
| 190 | @cindex define customization group | ||
| 191 | @cindex customization groups, defining | ||
| 190 | 192 | ||
| 191 | @cindex custom groups, how to define | ||
| 192 | Each Emacs Lisp package should have one main customization group which | 193 | Each Emacs Lisp package should have one main customization group which |
| 193 | contains all the options, faces and other groups in the package. If the | 194 | contains all the options, faces and other groups in the package. If the |
| 194 | package has a small number of options and faces, use just one group and | 195 | package has a small number of options and faces, use just one group and |
| @@ -259,10 +260,10 @@ turn this feature back on, if someone would like to do the work. | |||
| 259 | 260 | ||
| 260 | @node Variable Definitions | 261 | @node Variable Definitions |
| 261 | @section Defining Customization Variables | 262 | @section Defining Customization Variables |
| 262 | 263 | @cindex define customization options | |
| 263 | @cindex customization variables, how to define | 264 | @cindex customization variables, how to define |
| 264 | @cindex declare user-editable variables | 265 | |
| 265 | Use @code{defcustom} to declare user-editable variables. | 266 | Use @code{defcustom} to declare user-customizable variables. |
| 266 | 267 | ||
| 267 | @defmac defcustom option standard doc [keyword value]@dots{} | 268 | @defmac defcustom option standard doc [keyword value]@dots{} |
| 268 | This construct declares @var{option} as a customizable user option | 269 | This construct declares @var{option} as a customizable user option |
| @@ -701,7 +702,7 @@ The value must be a valid color name, and you can do completion with | |||
| 701 | 702 | ||
| 702 | @node Composite Types | 703 | @node Composite Types |
| 703 | @subsection Composite Types | 704 | @subsection Composite Types |
| 704 | @cindex arguments (of composite type) | 705 | @cindex Composite Types (customization) |
| 705 | 706 | ||
| 706 | When none of the simple types is appropriate, you can use composite | 707 | When none of the simple types is appropriate, you can use composite |
| 707 | types, which build new types from other types or from specified data. | 708 | types, which build new types from other types or from specified data. |
diff --git a/lispref/debugging.texi b/lispref/debugging.texi index cce112a0aa0..a427e746b27 100644 --- a/lispref/debugging.texi +++ b/lispref/debugging.texi | |||
| @@ -44,7 +44,7 @@ Afterward, you can examine the file to find out what input was used. | |||
| 44 | 44 | ||
| 45 | @node Debugger | 45 | @node Debugger |
| 46 | @section The Lisp Debugger | 46 | @section The Lisp Debugger |
| 47 | @cindex debugger | 47 | @cindex debugger for Emacs Lisp |
| 48 | @cindex Lisp debugger | 48 | @cindex Lisp debugger |
| 49 | @cindex break | 49 | @cindex break |
| 50 | 50 | ||
| @@ -675,6 +675,7 @@ If @var{frame-number} is out of range, @code{backtrace-frame} returns | |||
| 675 | 675 | ||
| 676 | @node Syntax Errors | 676 | @node Syntax Errors |
| 677 | @section Debugging Invalid Lisp Syntax | 677 | @section Debugging Invalid Lisp Syntax |
| 678 | @cindex debugging invalid Lisp syntax | ||
| 678 | 679 | ||
| 679 | The Lisp reader reports invalid syntax, but cannot say where the real | 680 | The Lisp reader reports invalid syntax, but cannot say where the real |
| 680 | problem is. For example, the error ``End of file during parsing'' in | 681 | problem is. For example, the error ``End of file during parsing'' in |
| @@ -690,6 +691,8 @@ technique is to try @kbd{C-M-e} at the beginning of each defun, and see | |||
| 690 | if it goes to the place where that defun appears to end. If it does | 691 | if it goes to the place where that defun appears to end. If it does |
| 691 | not, there is a problem in that defun. | 692 | not, there is a problem in that defun. |
| 692 | 693 | ||
| 694 | @cindex unbalanced parentheses | ||
| 695 | @cindex parenthesis mismatch, debugging | ||
| 693 | However, unmatched parentheses are the most common syntax errors in | 696 | However, unmatched parentheses are the most common syntax errors in |
| 694 | Lisp, and we can give further advice for those cases. (In addition, | 697 | Lisp, and we can give further advice for those cases. (In addition, |
| 695 | just moving point through the code with Show Paren mode enabled might | 698 | just moving point through the code with Show Paren mode enabled might |
| @@ -796,8 +799,13 @@ Evaluate @var{form}, informing coverage testing that @var{form} should | |||
| 796 | never return. If it ever does return, you get a run-time error. | 799 | never return. If it ever does return, you get a run-time error. |
| 797 | @end defmac | 800 | @end defmac |
| 798 | 801 | ||
| 802 | Edebug also has a coverage testing feature (@pxref{Coverage | ||
| 803 | Testing}). These features partly duplicate each other, and it would | ||
| 804 | be cleaner to combine them. | ||
| 805 | |||
| 799 | @node Compilation Errors | 806 | @node Compilation Errors |
| 800 | @section Debugging Problems in Compilation | 807 | @section Debugging Problems in Compilation |
| 808 | @cindex debugging byte compilation problems | ||
| 801 | 809 | ||
| 802 | When an error happens during byte compilation, it is normally due to | 810 | When an error happens during byte compilation, it is normally due to |
| 803 | invalid syntax in the program you are compiling. The compiler prints a | 811 | invalid syntax in the program you are compiling. The compiler prints a |
diff --git a/lispref/display.texi b/lispref/display.texi index f485829725a..0d2a8da8753 100644 --- a/lispref/display.texi +++ b/lispref/display.texi | |||
| @@ -126,6 +126,7 @@ Returns @code{t} if redisplay was performed, or @code{nil} otherwise. | |||
| 126 | @node Truncation | 126 | @node Truncation |
| 127 | @section Truncation | 127 | @section Truncation |
| 128 | @cindex line wrapping | 128 | @cindex line wrapping |
| 129 | @cindex line truncation | ||
| 129 | @cindex continuation lines | 130 | @cindex continuation lines |
| 130 | @cindex @samp{$} in display | 131 | @cindex @samp{$} in display |
| 131 | @cindex @samp{\} in display | 132 | @cindex @samp{\} in display |
| @@ -216,6 +217,7 @@ explicitly. | |||
| 216 | 217 | ||
| 217 | @node Displaying Messages | 218 | @node Displaying Messages |
| 218 | @subsection Displaying Messages in the Echo Area | 219 | @subsection Displaying Messages in the Echo Area |
| 220 | @cindex display message in echo area | ||
| 219 | 221 | ||
| 220 | This section describes the functions for explicitly producing echo | 222 | This section describes the functions for explicitly producing echo |
| 221 | area messages. Many other Emacs features display messages there, too. | 223 | area messages. Many other Emacs features display messages there, too. |
| @@ -760,10 +762,9 @@ A character is invisible if its @code{invisible} property value | |||
| 760 | is @var{atom} or if it is a list with @var{atom} as a member. | 762 | is @var{atom} or if it is a list with @var{atom} as a member. |
| 761 | 763 | ||
| 762 | @item (@var{atom} . t) | 764 | @item (@var{atom} . t) |
| 763 | A character is invisible if its @code{invisible} property value | 765 | A character is invisible if its @code{invisible} property value is |
| 764 | is @var{atom} or if it is a list with @var{atom} as a member. | 766 | @var{atom} or if it is a list with @var{atom} as a member. Moreover, |
| 765 | Moreover, if this character is at the end of a line and is followed | 767 | a sequence of such characters displays as an ellipsis. |
| 766 | by a visible newline, it displays an ellipsis. | ||
| 767 | @end table | 768 | @end table |
| 768 | @end table | 769 | @end table |
| 769 | @end defvar | 770 | @end defvar |
| @@ -839,7 +840,7 @@ make it invisible again. | |||
| 839 | 840 | ||
| 840 | @node Selective Display | 841 | @node Selective Display |
| 841 | @section Selective Display | 842 | @section Selective Display |
| 842 | @cindex selective display | 843 | @c @cindex selective display Duplicates selective-display |
| 843 | 844 | ||
| 844 | @dfn{Selective display} refers to a pair of related features for | 845 | @dfn{Selective display} refers to a pair of related features for |
| 845 | hiding certain lines on the screen. | 846 | hiding certain lines on the screen. |
| @@ -1364,7 +1365,7 @@ specify a particular attribute for certain text. @xref{Face | |||
| 1364 | Attributes}. | 1365 | Attributes}. |
| 1365 | 1366 | ||
| 1366 | @item | 1367 | @item |
| 1367 | A cons cell of the form @code{(foreground-color . @var{color-name})} or | 1368 | A cons cell, either of the form @code{(foreground-color . @var{color-name})} or |
| 1368 | @code{(background-color . @var{color-name})}. These elements specify | 1369 | @code{(background-color . @var{color-name})}. These elements specify |
| 1369 | just the foreground color or just the background color. | 1370 | just the foreground color or just the background color. |
| 1370 | 1371 | ||
| @@ -1832,6 +1833,7 @@ frame must match one of the @var{value}s specified for it in | |||
| 1832 | 1833 | ||
| 1833 | @example | 1834 | @example |
| 1834 | @group | 1835 | @group |
| 1836 | (defface region | ||
| 1835 | '((((class color) (min-colors 88) (background dark)) | 1837 | '((((class color) (min-colors 88) (background dark)) |
| 1836 | :background "blue3") | 1838 | :background "blue3") |
| 1837 | @end group | 1839 | @end group |
| @@ -2501,7 +2503,6 @@ makes @code{modeline} an alias for the @code{mode-line} face. | |||
| 2501 | @cindex automatic face assignment | 2503 | @cindex automatic face assignment |
| 2502 | @cindex faces, automatic choice | 2504 | @cindex faces, automatic choice |
| 2503 | 2505 | ||
| 2504 | @cindex Font-Lock mode | ||
| 2505 | This hook is used for automatically assigning faces to text in the | 2506 | This hook is used for automatically assigning faces to text in the |
| 2506 | buffer. It is part of the implementation of Font-Lock mode. | 2507 | buffer. It is part of the implementation of Font-Lock mode. |
| 2507 | 2508 | ||
| @@ -2743,7 +2744,7 @@ does that, this function's value may not be accurate. | |||
| 2743 | 2744 | ||
| 2744 | @node Fringes | 2745 | @node Fringes |
| 2745 | @section Fringes | 2746 | @section Fringes |
| 2746 | @cindex Fringes | 2747 | @cindex fringes |
| 2747 | 2748 | ||
| 2748 | The @dfn{fringes} of a window are thin vertical strips down the | 2749 | The @dfn{fringes} of a window are thin vertical strips down the |
| 2749 | sides that are used for displaying bitmaps that indicate truncation, | 2750 | sides that are used for displaying bitmaps that indicate truncation, |
| @@ -3073,7 +3074,7 @@ bitmap's face controls the color to draw it in. | |||
| 3073 | 3074 | ||
| 3074 | @node Overlay Arrow | 3075 | @node Overlay Arrow |
| 3075 | @subsection The Overlay Arrow | 3076 | @subsection The Overlay Arrow |
| 3076 | @cindex overlay arrow | 3077 | @c @cindex overlay arrow Duplicates variable names |
| 3077 | 3078 | ||
| 3078 | The @dfn{overlay arrow} is useful for directing the user's attention | 3079 | The @dfn{overlay arrow} is useful for directing the user's attention |
| 3079 | to a particular line in a buffer. For example, in the modes used for | 3080 | to a particular line in a buffer. For example, in the modes used for |
| @@ -3131,6 +3132,7 @@ is used. | |||
| 3131 | 3132 | ||
| 3132 | @node Scroll Bars | 3133 | @node Scroll Bars |
| 3133 | @section Scroll Bars | 3134 | @section Scroll Bars |
| 3135 | @cindex scroll bars | ||
| 3134 | 3136 | ||
| 3135 | Normally the frame parameter @code{vertical-scroll-bars} controls | 3137 | Normally the frame parameter @code{vertical-scroll-bars} controls |
| 3136 | whether the windows in the frame have vertical scroll bars, and | 3138 | whether the windows in the frame have vertical scroll bars, and |
| @@ -3290,7 +3292,6 @@ display specifications and what they mean. | |||
| 3290 | @node Specified Space | 3292 | @node Specified Space |
| 3291 | @subsection Specified Spaces | 3293 | @subsection Specified Spaces |
| 3292 | @cindex spaces, specified height or width | 3294 | @cindex spaces, specified height or width |
| 3293 | @cindex specified spaces | ||
| 3294 | @cindex variable-width spaces | 3295 | @cindex variable-width spaces |
| 3295 | 3296 | ||
| 3296 | To display a space of specified width and/or height, use a display | 3297 | To display a space of specified width and/or height, use a display |
| @@ -3603,7 +3604,7 @@ libraries (though it is not possible to add new image formats). | |||
| 3603 | 3604 | ||
| 3604 | The supported image formats include XBM, XPM (this requires the | 3605 | The supported image formats include XBM, XPM (this requires the |
| 3605 | libraries @code{libXpm} version 3.4k and @code{libz}), GIF (requiring | 3606 | libraries @code{libXpm} version 3.4k and @code{libz}), GIF (requiring |
| 3606 | @code{libungif} 4.1.0), Postscript, PBM, JPEG (requiring the | 3607 | @code{libungif} 4.1.0), PostScript, PBM, JPEG (requiring the |
| 3607 | @code{libjpeg} library version v6a), TIFF (requiring @code{libtiff} | 3608 | @code{libjpeg} library version v6a), TIFF (requiring @code{libtiff} |
| 3608 | v3.4), and PNG (requiring @code{libpng} 1.0.2). | 3609 | v3.4), and PNG (requiring @code{libpng} 1.0.2). |
| 3609 | 3610 | ||
| @@ -3658,7 +3659,7 @@ function always returns @code{t}; for other image types, it returns | |||
| 3658 | * XBM Images:: Special features for XBM format. | 3659 | * XBM Images:: Special features for XBM format. |
| 3659 | * XPM Images:: Special features for XPM format. | 3660 | * XPM Images:: Special features for XPM format. |
| 3660 | * GIF Images:: Special features for GIF format. | 3661 | * GIF Images:: Special features for GIF format. |
| 3661 | * Postscript Images:: Special features for Postscript format. | 3662 | * PostScript Images:: Special features for PostScript format. |
| 3662 | * Other Image Types:: Various other formats are supported. | 3663 | * Other Image Types:: Various other formats are supported. |
| 3663 | * Defining Images:: Convenient ways to define an image for later use. | 3664 | * Defining Images:: Convenient ways to define an image for later use. |
| 3664 | * Showing Images:: Convenient ways to display an image once it is defined. | 3665 | * Showing Images:: Convenient ways to display an image once it is defined. |
| @@ -3980,11 +3981,11 @@ every 0.1 seconds. | |||
| 3980 | (run-with-timer 0.1 nil 'display-anim buffer file (1+ idx) max nil))) | 3981 | (run-with-timer 0.1 nil 'display-anim buffer file (1+ idx) max nil))) |
| 3981 | @end ignore | 3982 | @end ignore |
| 3982 | 3983 | ||
| 3983 | @node Postscript Images | 3984 | @node PostScript Images |
| 3984 | @subsection Postscript Images | 3985 | @subsection PostScript Images |
| 3985 | @cindex Postscript images | 3986 | @cindex postscript images |
| 3986 | 3987 | ||
| 3987 | To use Postscript for an image, specify image type @code{postscript}. | 3988 | To use PostScript for an image, specify image type @code{postscript}. |
| 3988 | This works only if you have Ghostscript installed. You must always use | 3989 | This works only if you have Ghostscript installed. You must always use |
| 3989 | these three properties: | 3990 | these three properties: |
| 3990 | 3991 | ||
| @@ -3999,15 +4000,15 @@ The value, @var{height}, specifies the height of the image in points | |||
| 3999 | 4000 | ||
| 4000 | @item :bounding-box @var{box} | 4001 | @item :bounding-box @var{box} |
| 4001 | The value, @var{box}, must be a list or vector of four integers, which | 4002 | The value, @var{box}, must be a list or vector of four integers, which |
| 4002 | specifying the bounding box of the Postscript image, analogous to the | 4003 | specifying the bounding box of the PostScript image, analogous to the |
| 4003 | @samp{BoundingBox} comment found in Postscript files. | 4004 | @samp{BoundingBox} comment found in PostScript files. |
| 4004 | 4005 | ||
| 4005 | @example | 4006 | @example |
| 4006 | %%BoundingBox: 22 171 567 738 | 4007 | %%BoundingBox: 22 171 567 738 |
| 4007 | @end example | 4008 | @end example |
| 4008 | @end table | 4009 | @end table |
| 4009 | 4010 | ||
| 4010 | Displaying Postscript images from Lisp data is not currently | 4011 | Displaying PostScript images from Lisp data is not currently |
| 4011 | implemented, but it may be implemented by the time you read this. | 4012 | implemented, but it may be implemented by the time you read this. |
| 4012 | See the @file{etc/NEWS} file to make sure. | 4013 | See the @file{etc/NEWS} file to make sure. |
| 4013 | 4014 | ||
| @@ -4137,8 +4138,8 @@ should specify the image as follows: | |||
| 4137 | This function returns a suitable search path for images used by the | 4138 | This function returns a suitable search path for images used by the |
| 4138 | Lisp package @var{library}. | 4139 | Lisp package @var{library}. |
| 4139 | 4140 | ||
| 4140 | The function searches for @var{image} first in @code{image-load-path} | 4141 | The function searches for @var{image} first using @code{image-load-path}, |
| 4141 | (excluding @file{@code{data-directory}/images}) and then in | 4142 | excluding @file{@code{data-directory}/images}, and then in |
| 4142 | @code{load-path}, followed by a path suitable for @var{library}, which | 4143 | @code{load-path}, followed by a path suitable for @var{library}, which |
| 4143 | includes @file{../../etc/images} and @file{../etc/images} relative to | 4144 | includes @file{../../etc/images} and @file{../etc/images} relative to |
| 4144 | the library file itself, and finally in | 4145 | the library file itself, and finally in |
| @@ -4270,6 +4271,7 @@ cache, it can always be displayed, even if the value of | |||
| 4270 | 4271 | ||
| 4271 | @node Image Cache | 4272 | @node Image Cache |
| 4272 | @subsection Image Cache | 4273 | @subsection Image Cache |
| 4274 | @cindex image cache | ||
| 4273 | 4275 | ||
| 4274 | Emacs stores images in an image cache when it displays them, so it can | 4276 | Emacs stores images in an image cache when it displays them, so it can |
| 4275 | display them again more efficiently. It removes an image from the cache | 4277 | display them again more efficiently. It removes an image from the cache |
| @@ -4297,7 +4299,6 @@ are cleared. | |||
| 4297 | 4299 | ||
| 4298 | @node Buttons | 4300 | @node Buttons |
| 4299 | @section Buttons | 4301 | @section Buttons |
| 4300 | @cindex buttons | ||
| 4301 | @cindex buttons in buffers | 4302 | @cindex buttons in buffers |
| 4302 | @cindex clickable buttons in buffers | 4303 | @cindex clickable buttons in buffers |
| 4303 | 4304 | ||
| @@ -4607,15 +4608,11 @@ is skipped over. Returns the button found. | |||
| 4607 | @end deffn | 4608 | @end deffn |
| 4608 | 4609 | ||
| 4609 | @defun next-button pos &optional count-current | 4610 | @defun next-button pos &optional count-current |
| 4610 | Return the next button after position @var{pos} in the current buffer. | 4611 | @defunx previous-button pos &optional count-current |
| 4611 | If @var{count-current} is non-@code{nil}, count any button at | 4612 | Return the next button after (for @code{next-button} or before (for |
| 4612 | @var{pos} in the search, instead of starting at the next button. | 4613 | @code{previous-button}) position @var{pos} in the current buffer. If |
| 4613 | @end defun | 4614 | @var{count-current} is non-@code{nil}, count any button at @var{pos} |
| 4614 | 4615 | in the search, instead of starting at the next button. | |
| 4615 | @defun previous-button pos &optional count-current | ||
| 4616 | Return the @var{n}th button before position @var{pos} in the current | ||
| 4617 | buffer. If @var{count-current} is non-@code{nil}, count any button at | ||
| 4618 | @var{pos} in the search, instead of starting at the next button. | ||
| 4619 | @end defun | 4616 | @end defun |
| 4620 | 4617 | ||
| 4621 | @node Abstract Display | 4618 | @node Abstract Display |
| @@ -4954,9 +4951,8 @@ ewoc is created to be either @code{nil} or an index into the vector | |||
| 4954 | @node Blinking | 4951 | @node Blinking |
| 4955 | @section Blinking Parentheses | 4952 | @section Blinking Parentheses |
| 4956 | @cindex parenthesis matching | 4953 | @cindex parenthesis matching |
| 4957 | @cindex blinking | 4954 | @cindex blinking parentheses |
| 4958 | @cindex balancing parentheses | 4955 | @cindex balancing parentheses |
| 4959 | @cindex close parenthesis | ||
| 4960 | 4956 | ||
| 4961 | This section describes the mechanism by which Emacs shows a matching | 4957 | This section describes the mechanism by which Emacs shows a matching |
| 4962 | open parenthesis when the user inserts a close parenthesis. | 4958 | open parenthesis when the user inserts a close parenthesis. |
| @@ -5328,7 +5324,7 @@ display by sending @var{string} to the terminal. | |||
| 5328 | 5324 | ||
| 5329 | @node Beeping | 5325 | @node Beeping |
| 5330 | @section Beeping | 5326 | @section Beeping |
| 5331 | @cindex beeping | 5327 | @c @cindex beeping "beep" is adjacent |
| 5332 | @cindex bell | 5328 | @cindex bell |
| 5333 | 5329 | ||
| 5334 | This section describes how to make Emacs ring the bell (or blink the | 5330 | This section describes how to make Emacs ring the bell (or blink the |
diff --git a/lispref/edebug.texi b/lispref/edebug.texi index 4082fdfe5c2..4be030896c5 100644 --- a/lispref/edebug.texi +++ b/lispref/edebug.texi | |||
| @@ -12,9 +12,8 @@ | |||
| 12 | 12 | ||
| 13 | @node Edebug, Syntax Errors, Debugger, Debugging | 13 | @node Edebug, Syntax Errors, Debugger, Debugging |
| 14 | @section Edebug | 14 | @section Edebug |
| 15 | @cindex Edebug mode | 15 | @cindex Edebug debugging facility |
| 16 | 16 | ||
| 17 | @cindex Edebug | ||
| 18 | Edebug is a source-level debugger for Emacs Lisp programs with which | 17 | Edebug is a source-level debugger for Emacs Lisp programs with which |
| 19 | you can: | 18 | you can: |
| 20 | 19 | ||
| @@ -195,12 +194,6 @@ evaluates, even if not instrumenting it. See also the @kbd{i} command | |||
| 195 | (@pxref{Jumping}), which steps into the call after instrumenting the | 194 | (@pxref{Jumping}), which steps into the call after instrumenting the |
| 196 | function. | 195 | function. |
| 197 | 196 | ||
| 198 | @cindex special forms (Edebug) | ||
| 199 | @cindex interactive commands (Edebug) | ||
| 200 | @cindex anonymous lambda expressions (Edebug) | ||
| 201 | @cindex Common Lisp (Edebug) | ||
| 202 | @pindex cl.el @r{(Edebug)} | ||
| 203 | @pindex cl-specs.el | ||
| 204 | Edebug knows how to instrument all the standard special forms, | 197 | Edebug knows how to instrument all the standard special forms, |
| 205 | @code{interactive} forms with an expression argument, anonymous lambda | 198 | @code{interactive} forms with an expression argument, anonymous lambda |
| 206 | expressions, and other defining forms. However, Edebug cannot determine | 199 | expressions, and other defining forms. However, Edebug cannot determine |
| @@ -441,9 +434,9 @@ breakpoints, the global break condition, and source breakpoints. | |||
| 441 | @end menu | 434 | @end menu |
| 442 | 435 | ||
| 443 | @node Breakpoints | 436 | @node Breakpoints |
| 444 | @subsubsection Breakpoints | 437 | @subsubsection Edebug Breakpoints |
| 445 | 438 | ||
| 446 | @cindex breakpoints | 439 | @cindex breakpoints (Edebug) |
| 447 | While using Edebug, you can specify @dfn{breakpoints} in the program you | 440 | While using Edebug, you can specify @dfn{breakpoints} in the program you |
| 448 | are testing: these are places where execution should stop. You can set a | 441 | are testing: these are places where execution should stop. You can set a |
| 449 | breakpoint at any stop point, as defined in @ref{Using Edebug}. For | 442 | breakpoint at any stop point, as defined in @ref{Using Edebug}. For |
| @@ -867,10 +860,10 @@ lines inserted. | |||
| 867 | @node Coverage Testing | 860 | @node Coverage Testing |
| 868 | @subsection Coverage Testing | 861 | @subsection Coverage Testing |
| 869 | 862 | ||
| 870 | @cindex coverage testing | 863 | @cindex coverage testing (Edebug) |
| 871 | @cindex frequency counts | 864 | @cindex frequency counts |
| 872 | @cindex performance analysis | 865 | @cindex performance analysis |
| 873 | Edebug provides rudimentary coverage testing and display of execution | 866 | Edebug provides rudimentary coverage testing and display of execution |
| 874 | frequency. | 867 | frequency. |
| 875 | 868 | ||
| 876 | Coverage testing works by comparing the result of each expression with | 869 | Coverage testing works by comparing the result of each expression with |
diff --git a/lispref/elisp.texi b/lispref/elisp.texi index fa9f93208e1..546f1ca4f97 100644 --- a/lispref/elisp.texi +++ b/lispref/elisp.texi | |||
| @@ -7,24 +7,29 @@ | |||
| 7 | @c Version of the manual and of Emacs. | 7 | @c Version of the manual and of Emacs. |
| 8 | @c Please remember to update the edition number in README as well. | 8 | @c Please remember to update the edition number in README as well. |
| 9 | @set VERSION 2.9 | 9 | @set VERSION 2.9 |
| 10 | @set EMACSVER 22.0.96 | 10 | @set EMACSVER 22.0.98 |
| 11 | 11 | ||
| 12 | @dircategory Emacs | 12 | @dircategory Emacs |
| 13 | @direntry | 13 | @direntry |
| 14 | * Elisp: (elisp). The Emacs Lisp Reference Manual. | 14 | * Elisp: (elisp). The Emacs Lisp Reference Manual. |
| 15 | @end direntry | 15 | @end direntry |
| 16 | 16 | ||
| 17 | @c So that anyone making the printed manual gets the version we have | 17 | @c for full 8.5x11, comment this out. |
| 18 | @c tuned to avoid bad line breaks, etc. | 18 | @set smallbook |
| 19 | |||
| 20 | @ifset smallbook | ||
| 19 | @smallbook | 21 | @smallbook |
| 22 | @end ifset | ||
| 20 | 23 | ||
| 21 | @c per rms and peterb, use 10pt fonts for the main text, mostly to | 24 | @c per rms and peterb, use 10pt fonts for the main text, mostly to |
| 22 | @c save on paper cost. Also, do not declare @setchapternewpage odd, | 25 | @c save on paper cost. Also, do not declare @setchapternewpage odd, |
| 23 | @c for the same reason. Do this inside @tex for now, so the | 26 | @c for the same reason. Do this inside @tex for now, so the |
| 24 | @c last-released makeinfo does not complain. | 27 | @c last-released makeinfo does not complain. |
| 25 | @tex | 28 | @tex |
| 29 | @ifset smallbook | ||
| 26 | @fonttextsize 10 | 30 | @fonttextsize 10 |
| 27 | \global\hbadness=6000 % don't worry about not-too-underfull boxes | 31 | @end ifset |
| 32 | \global\hbadness=6666 % don't worry about not-too-underfull boxes | ||
| 28 | @end tex | 33 | @end tex |
| 29 | 34 | ||
| 30 | @c Combine indices. | 35 | @c Combine indices. |
| @@ -61,7 +66,7 @@ Software Foundation raise funds for GNU development.'' | |||
| 61 | @titlepage | 66 | @titlepage |
| 62 | @title GNU Emacs Lisp Reference Manual | 67 | @title GNU Emacs Lisp Reference Manual |
| 63 | @subtitle For Emacs Version @value{EMACSVER} | 68 | @subtitle For Emacs Version @value{EMACSVER} |
| 64 | @subtitle Revision @value{VERSION}, January 2002 | 69 | @subtitle Revision @value{VERSION}, April 2007 |
| 65 | 70 | ||
| 66 | @author by Bil Lewis, Dan LaLiberte, Richard Stallman | 71 | @author by Bil Lewis, Dan LaLiberte, Richard Stallman |
| 67 | @author and the GNU Manual Group | 72 | @author and the GNU Manual Group |
| @@ -1297,7 +1302,7 @@ Images | |||
| 1297 | * XBM Images:: Special features for XBM format. | 1302 | * XBM Images:: Special features for XBM format. |
| 1298 | * XPM Images:: Special features for XPM format. | 1303 | * XPM Images:: Special features for XPM format. |
| 1299 | * GIF Images:: Special features for GIF format. | 1304 | * GIF Images:: Special features for GIF format. |
| 1300 | * Postscript Images:: Special features for Postscript format. | 1305 | * PostScript Images:: Special features for PostScript format. |
| 1301 | * Other Image Types:: Various other formats are supported. | 1306 | * Other Image Types:: Various other formats are supported. |
| 1302 | * Defining Images:: Convenient ways to define an image for later use. | 1307 | * Defining Images:: Convenient ways to define an image for later use. |
| 1303 | * Showing Images:: Convenient ways to display an image once | 1308 | * Showing Images:: Convenient ways to display an image once |
diff --git a/lispref/errors.texi b/lispref/errors.texi index 98c30fcd4a1..af2df791c39 100644 --- a/lispref/errors.texi +++ b/lispref/errors.texi | |||
| @@ -6,6 +6,7 @@ | |||
| 6 | @setfilename ../info/errors | 6 | @setfilename ../info/errors |
| 7 | @node Standard Errors, Standard Buffer-Local Variables, GNU Emacs Internals, Top | 7 | @node Standard Errors, Standard Buffer-Local Variables, GNU Emacs Internals, Top |
| 8 | @appendix Standard Errors | 8 | @appendix Standard Errors |
| 9 | @cindex standard errors | ||
| 9 | 10 | ||
| 10 | Here is the complete list of the error symbols in standard Emacs, | 11 | Here is the complete list of the error symbols in standard Emacs, |
| 11 | grouped by concept. The list includes each symbol's message (on the | 12 | grouped by concept. The list includes each symbol's message (on the |
diff --git a/lispref/eval.texi b/lispref/eval.texi index d085491d2d2..772f502553c 100644 --- a/lispref/eval.texi +++ b/lispref/eval.texi | |||
| @@ -233,7 +233,7 @@ Scheme. | |||
| 233 | @node Function Indirection | 233 | @node Function Indirection |
| 234 | @subsection Symbol Function Indirection | 234 | @subsection Symbol Function Indirection |
| 235 | @cindex symbol function indirection | 235 | @cindex symbol function indirection |
| 236 | @cindex indirection | 236 | @cindex indirection for functions |
| 237 | @cindex void function | 237 | @cindex void function |
| 238 | 238 | ||
| 239 | If the first element of the list is a symbol then evaluation examines | 239 | If the first element of the list is a symbol then evaluation examines |
| @@ -252,7 +252,6 @@ neither of these things happens, we eventually obtain a non-symbol, | |||
| 252 | which ought to be a function or other suitable object. | 252 | which ought to be a function or other suitable object. |
| 253 | 253 | ||
| 254 | @kindex invalid-function | 254 | @kindex invalid-function |
| 255 | @cindex invalid function | ||
| 256 | More precisely, we should now have a Lisp function (a lambda | 255 | More precisely, we should now have a Lisp function (a lambda |
| 257 | expression), a byte-code function, a primitive function, a Lisp macro, a | 256 | expression), a byte-code function, a primitive function, a Lisp macro, a |
| 258 | special form, or an autoload object. Each of these types is a case | 257 | special form, or an autoload object. Each of these types is a case |
| @@ -530,7 +529,6 @@ definition loaded from that file. @xref{Autoload}. | |||
| 530 | 529 | ||
| 531 | @node Quoting | 530 | @node Quoting |
| 532 | @section Quoting | 531 | @section Quoting |
| 533 | @cindex quoting | ||
| 534 | 532 | ||
| 535 | The special form @code{quote} returns its single argument, as written, | 533 | The special form @code{quote} returns its single argument, as written, |
| 536 | without evaluating it. This provides a way to include constant symbols | 534 | without evaluating it. This provides a way to include constant symbols |
diff --git a/lispref/files.texi b/lispref/files.texi index f13888197c7..f357b1f3814 100644 --- a/lispref/files.texi +++ b/lispref/files.texi | |||
| @@ -296,6 +296,7 @@ in the list @code{find-file-hook}. | |||
| 296 | 296 | ||
| 297 | @node Saving Buffers | 297 | @node Saving Buffers |
| 298 | @section Saving Buffers | 298 | @section Saving Buffers |
| 299 | @cindex saving buffers | ||
| 299 | 300 | ||
| 300 | When you edit a file in Emacs, you are actually working on a buffer | 301 | When you edit a file in Emacs, you are actually working on a buffer |
| 301 | that is visiting that file---that is, the contents of the file are | 302 | that is visiting that file---that is, the contents of the file are |
| @@ -481,6 +482,7 @@ Name}). | |||
| 481 | @node Reading from Files | 482 | @node Reading from Files |
| 482 | @comment node-name, next, previous, up | 483 | @comment node-name, next, previous, up |
| 483 | @section Reading from Files | 484 | @section Reading from Files |
| 485 | @cindex reading from files | ||
| 484 | 486 | ||
| 485 | You can copy a file from the disk and insert it into a buffer | 487 | You can copy a file from the disk and insert it into a buffer |
| 486 | using the @code{insert-file-contents} function. Don't use the user-level | 488 | using the @code{insert-file-contents} function. Don't use the user-level |
| @@ -544,6 +546,7 @@ program can read the file, use the function @code{file-local-copy}; see | |||
| 544 | @node Writing to Files | 546 | @node Writing to Files |
| 545 | @comment node-name, next, previous, up | 547 | @comment node-name, next, previous, up |
| 546 | @section Writing to Files | 548 | @section Writing to Files |
| 549 | @cindex writing to files | ||
| 547 | 550 | ||
| 548 | You can write the contents of a buffer, or part of a buffer, directly | 551 | You can write the contents of a buffer, or part of a buffer, directly |
| 549 | to a file on disk using the @code{append-to-file} and | 552 | to a file on disk using the @code{append-to-file} and |
| @@ -647,6 +650,7 @@ with-temp-buffer,, The Current Buffer}. | |||
| 647 | @node File Locks | 650 | @node File Locks |
| 648 | @section File Locks | 651 | @section File Locks |
| 649 | @cindex file locks | 652 | @cindex file locks |
| 653 | @cindex lock file | ||
| 650 | 654 | ||
| 651 | When two users edit the same file at the same time, they are likely | 655 | When two users edit the same file at the same time, they are likely |
| 652 | to interfere with each other. Emacs tries to prevent this situation | 656 | to interfere with each other. Emacs tries to prevent this situation |
| @@ -736,6 +740,7 @@ for its usual definition is in @file{userlock.el}. | |||
| 736 | 740 | ||
| 737 | @node Information about Files | 741 | @node Information about Files |
| 738 | @section Information about Files | 742 | @section Information about Files |
| 743 | @cindex file, information about | ||
| 739 | 744 | ||
| 740 | The functions described in this section all operate on strings that | 745 | The functions described in this section all operate on strings that |
| 741 | designate file names. With a few exceptions, all the functions have | 746 | designate file names. With a few exceptions, all the functions have |
| @@ -1172,6 +1177,7 @@ value of @code{current-time}; see @ref{Time of Day}.) | |||
| 1172 | 1177 | ||
| 1173 | @item | 1178 | @item |
| 1174 | The time of last modification as a list of two integers (as above). | 1179 | The time of last modification as a list of two integers (as above). |
| 1180 | @cindex modification time of file | ||
| 1175 | 1181 | ||
| 1176 | @item | 1182 | @item |
| 1177 | The time of last status change as a list of two integers (as above). | 1183 | The time of last status change as a list of two integers (as above). |
| @@ -1262,13 +1268,13 @@ is on file system number -32252. | |||
| 1262 | 1268 | ||
| 1263 | @node Locating Files | 1269 | @node Locating Files |
| 1264 | @subsection How to Locate Files in Standard Places | 1270 | @subsection How to Locate Files in Standard Places |
| 1265 | @cindex locate files | 1271 | @cindex locate file in path |
| 1266 | @cindex find files | 1272 | @cindex find file in path |
| 1267 | 1273 | ||
| 1268 | This section explains how to search for a file in a list of | 1274 | This section explains how to search for a file in a list of |
| 1269 | directories. One example is when you need to look for a program's | 1275 | directories (a @dfn{path}). One example is when you need to look for |
| 1270 | executable file, e.g., to find out whether a given program is | 1276 | a program's executable file, e.g., to find out whether a given program |
| 1271 | installed on the user's system. Another example is the search for | 1277 | is installed on the user's system. Another example is the search for |
| 1272 | Lisp libraries (@pxref{Library Search}). Such searches generally need | 1278 | Lisp libraries (@pxref{Library Search}). Such searches generally need |
| 1273 | to try various possible file name extensions, in addition to various | 1279 | to try various possible file name extensions, in addition to various |
| 1274 | possible directories. Emacs provides a function for such a | 1280 | possible directories. Emacs provides a function for such a |
| @@ -1311,7 +1317,6 @@ For compatibility, @var{predicate} can also be one of the symbols | |||
| 1311 | a list of one or more of these symbols. | 1317 | a list of one or more of these symbols. |
| 1312 | @end defun | 1318 | @end defun |
| 1313 | 1319 | ||
| 1314 | @cindex find executable program | ||
| 1315 | @defun executable-find program | 1320 | @defun executable-find program |
| 1316 | This function searches for the executable file of the named | 1321 | This function searches for the executable file of the named |
| 1317 | @var{program} and returns the full absolute name of the executable, | 1322 | @var{program} and returns the full absolute name of the executable, |
| @@ -1323,7 +1328,7 @@ in @code{exec-path} and tries all the file-name extensions in | |||
| 1323 | 1328 | ||
| 1324 | @node Changing Files | 1329 | @node Changing Files |
| 1325 | @section Changing File Names and Attributes | 1330 | @section Changing File Names and Attributes |
| 1326 | @cindex renaming files | 1331 | @c @cindex renaming files Duplicates rename-file |
| 1327 | @cindex copying files | 1332 | @cindex copying files |
| 1328 | @cindex deleting files | 1333 | @cindex deleting files |
| 1329 | @cindex linking files | 1334 | @cindex linking files |
| @@ -2459,6 +2464,7 @@ which generate the listing with Lisp code. | |||
| 2459 | 2464 | ||
| 2460 | @node Create/Delete Dirs | 2465 | @node Create/Delete Dirs |
| 2461 | @section Creating and Deleting Directories | 2466 | @section Creating and Deleting Directories |
| 2467 | @cindex creating and deleting directories | ||
| 2462 | @c Emacs 19 features | 2468 | @c Emacs 19 features |
| 2463 | 2469 | ||
| 2464 | Most Emacs Lisp file-manipulation functions get errors when used on | 2470 | Most Emacs Lisp file-manipulation functions get errors when used on |
diff --git a/lispref/frames.texi b/lispref/frames.texi index 32f9e071f09..527f27385f3 100644 --- a/lispref/frames.texi +++ b/lispref/frames.texi | |||
| @@ -150,6 +150,13 @@ screens belonging to one server, Emacs knows by the similarity in their | |||
| 150 | names that they share a single keyboard, and it treats them as a single | 150 | names that they share a single keyboard, and it treats them as a single |
| 151 | terminal. | 151 | terminal. |
| 152 | 152 | ||
| 153 | Note that some graphical terminals can output to more than a one | ||
| 154 | monitor (or other output device) at the same time. On these | ||
| 155 | ``multi-monitor'' setups, a single @var{display} value controls the | ||
| 156 | output to all the physical monitors. In this situation, there is | ||
| 157 | currently no platform-independent way for Emacs to distinguish between | ||
| 158 | the different physical monitors. | ||
| 159 | |||
| 153 | @deffn Command make-frame-on-display display &optional parameters | 160 | @deffn Command make-frame-on-display display &optional parameters |
| 154 | This creates and returns a new frame on display @var{display}, taking | 161 | This creates and returns a new frame on display @var{display}, taking |
| 155 | the other frame parameters from @var{parameters}. Aside from the | 162 | the other frame parameters from @var{parameters}. Aside from the |
| @@ -193,6 +200,7 @@ that display (@pxref{Deleting Frames}). | |||
| 193 | 200 | ||
| 194 | @node Frame Parameters | 201 | @node Frame Parameters |
| 195 | @section Frame Parameters | 202 | @section Frame Parameters |
| 203 | @cindex frame parameters | ||
| 196 | 204 | ||
| 197 | A frame has many parameters that control its appearance and behavior. | 205 | A frame has many parameters that control its appearance and behavior. |
| 198 | Just what parameters a frame has depends on what display mechanism it | 206 | Just what parameters a frame has depends on what display mechanism it |
| @@ -555,6 +563,7 @@ If non-@code{nil}, this frame's window is never split automatically. | |||
| 555 | 563 | ||
| 556 | @node Management Parameters | 564 | @node Management Parameters |
| 557 | @subsubsection Window Management Parameters | 565 | @subsubsection Window Management Parameters |
| 566 | @cindex window manager, and frame parameters | ||
| 558 | 567 | ||
| 559 | These frame parameters, meaningful only on window system displays, | 568 | These frame parameters, meaningful only on window system displays, |
| 560 | interact with the window manager. | 569 | interact with the window manager. |
| @@ -885,6 +894,7 @@ Here is an example: | |||
| 885 | 894 | ||
| 886 | @node Frame Titles | 895 | @node Frame Titles |
| 887 | @section Frame Titles | 896 | @section Frame Titles |
| 897 | @cindex frame title | ||
| 888 | 898 | ||
| 889 | Every frame has a @code{name} parameter; this serves as the default | 899 | Every frame has a @code{name} parameter; this serves as the default |
| 890 | for the frame title which window systems typically display at the top of | 900 | for the frame title which window systems typically display at the top of |
| @@ -924,7 +934,7 @@ while processing @code{frame-title-format} or | |||
| 924 | 934 | ||
| 925 | @node Deleting Frames | 935 | @node Deleting Frames |
| 926 | @section Deleting Frames | 936 | @section Deleting Frames |
| 927 | @cindex deletion of frames | 937 | @cindex deleting frames |
| 928 | 938 | ||
| 929 | Frames remain potentially visible until you explicitly @dfn{delete} | 939 | Frames remain potentially visible until you explicitly @dfn{delete} |
| 930 | them. A deleted frame cannot appear on the screen, but continues to | 940 | them. A deleted frame cannot appear on the screen, but continues to |
| @@ -956,6 +966,7 @@ calls the function @code{delete-frame}. @xref{Misc Events}. | |||
| 956 | 966 | ||
| 957 | @node Finding All Frames | 967 | @node Finding All Frames |
| 958 | @section Finding All Frames | 968 | @section Finding All Frames |
| 969 | @cindex frames, scanning all | ||
| 959 | 970 | ||
| 960 | @defun frame-list | 971 | @defun frame-list |
| 961 | The function @code{frame-list} returns a list of all the frames that | 972 | The function @code{frame-list} returns a list of all the frames that |
| @@ -1077,7 +1088,7 @@ Displays}. | |||
| 1077 | @node Input Focus | 1088 | @node Input Focus |
| 1078 | @section Input Focus | 1089 | @section Input Focus |
| 1079 | @cindex input focus | 1090 | @cindex input focus |
| 1080 | @cindex selected frame | 1091 | @c @cindex selected frame Duplicates selected-frame |
| 1081 | 1092 | ||
| 1082 | At any time, one frame in Emacs is the @dfn{selected frame}. The selected | 1093 | At any time, one frame in Emacs is the @dfn{selected frame}. The selected |
| 1083 | window always resides on the selected frame. | 1094 | window always resides on the selected frame. |
| @@ -1260,7 +1271,7 @@ to ``lowest.'' Where two windows overlap, the one higher up covers | |||
| 1260 | the one underneath. Even a window at the bottom of the stack can be | 1271 | the one underneath. Even a window at the bottom of the stack can be |
| 1261 | seen if no other window overlaps it. | 1272 | seen if no other window overlaps it. |
| 1262 | 1273 | ||
| 1263 | @cindex raising a frame | 1274 | @c @cindex raising a frame redundant with raise-frame |
| 1264 | @cindex lowering a frame | 1275 | @cindex lowering a frame |
| 1265 | A window's place in this ordering is not fixed; in fact, users tend | 1276 | A window's place in this ordering is not fixed; in fact, users tend |
| 1266 | to change the order frequently. @dfn{Raising} a window means moving | 1277 | to change the order frequently. @dfn{Raising} a window means moving |
| @@ -1315,14 +1326,14 @@ unwanted frames are iconified instead. | |||
| 1315 | @node Mouse Tracking | 1326 | @node Mouse Tracking |
| 1316 | @section Mouse Tracking | 1327 | @section Mouse Tracking |
| 1317 | @cindex mouse tracking | 1328 | @cindex mouse tracking |
| 1318 | @cindex tracking the mouse | 1329 | @c @cindex tracking the mouse Duplicates track-mouse |
| 1319 | 1330 | ||
| 1320 | Sometimes it is useful to @dfn{track} the mouse, which means to display | 1331 | Sometimes it is useful to @dfn{track} the mouse, which means to display |
| 1321 | something to indicate where the mouse is and move the indicator as the | 1332 | something to indicate where the mouse is and move the indicator as the |
| 1322 | mouse moves. For efficient mouse tracking, you need a way to wait until | 1333 | mouse moves. For efficient mouse tracking, you need a way to wait until |
| 1323 | the mouse actually moves. | 1334 | the mouse actually moves. |
| 1324 | 1335 | ||
| 1325 | The convenient way to track the mouse is to ask for events to represent | 1336 | The convenient way to track the mouse is to ask for events to represent |
| 1326 | mouse motion. Then you can wait for motion by waiting for an event. In | 1337 | mouse motion. Then you can wait for motion by waiting for an event. In |
| 1327 | addition, you can easily handle any other sorts of events that may | 1338 | addition, you can easily handle any other sorts of events that may |
| 1328 | occur. That is useful, because normally you don't want to track the | 1339 | occur. That is useful, because normally you don't want to track the |
| @@ -2015,8 +2026,6 @@ a mouse. | |||
| 2015 | @end defun | 2026 | @end defun |
| 2016 | 2027 | ||
| 2017 | @defun display-graphic-p &optional display | 2028 | @defun display-graphic-p &optional display |
| 2018 | @cindex frames, more than one on display | ||
| 2019 | @cindex fonts, more than one on display | ||
| 2020 | This function returns @code{t} if @var{display} is a graphic display | 2029 | This function returns @code{t} if @var{display} is a graphic display |
| 2021 | capable of displaying several frames and several different fonts at | 2030 | capable of displaying several frames and several different fonts at |
| 2022 | once. This is true for displays that use a window system such as X, and | 2031 | once. This is true for displays that use a window system such as X, and |
| @@ -2087,11 +2096,19 @@ This function returns the number of screens associated with the display. | |||
| 2087 | @defun display-pixel-height &optional display | 2096 | @defun display-pixel-height &optional display |
| 2088 | This function returns the height of the screen in pixels. | 2097 | This function returns the height of the screen in pixels. |
| 2089 | On a character terminal, it gives the height in characters. | 2098 | On a character terminal, it gives the height in characters. |
| 2099 | |||
| 2100 | For graphical terminals, note that on ``multi-monitor'' setups this | ||
| 2101 | refers to the pixel width for all physical monitors associated with | ||
| 2102 | @var{display}. @xref{Multiple Displays}. | ||
| 2090 | @end defun | 2103 | @end defun |
| 2091 | 2104 | ||
| 2092 | @defun display-pixel-width &optional display | 2105 | @defun display-pixel-width &optional display |
| 2093 | This function returns the width of the screen in pixels. | 2106 | This function returns the width of the screen in pixels. |
| 2094 | On a character terminal, it gives the width in characters. | 2107 | On a character terminal, it gives the width in characters. |
| 2108 | |||
| 2109 | For graphical terminals, note that on ``multi-monitor'' setups this | ||
| 2110 | refers to the pixel width for all physical monitors associated with | ||
| 2111 | @var{display}. @xref{Multiple Displays}. | ||
| 2095 | @end defun | 2112 | @end defun |
| 2096 | 2113 | ||
| 2097 | @defun display-mm-height &optional display | 2114 | @defun display-mm-height &optional display |
diff --git a/lispref/functions.texi b/lispref/functions.texi index 084f2a57d50..eedfa8c124f 100644 --- a/lispref/functions.texi +++ b/lispref/functions.texi | |||
| @@ -293,6 +293,7 @@ variables. | |||
| 293 | @kindex wrong-number-of-arguments | 293 | @kindex wrong-number-of-arguments |
| 294 | @cindex argument binding | 294 | @cindex argument binding |
| 295 | @cindex binding arguments | 295 | @cindex binding arguments |
| 296 | @cindex argument lists, features | ||
| 296 | 297 | ||
| 297 | Our simple sample function, @code{(lambda (a b c) (+ a b c))}, | 298 | Our simple sample function, @code{(lambda (a b c) (+ a b c))}, |
| 298 | specifies three argument variables, so it must be called with three | 299 | specifies three argument variables, so it must be called with three |
| @@ -583,6 +584,7 @@ defined is often done deliberately, and there is no way to distinguish | |||
| 583 | deliberate redefinition from unintentional redefinition. | 584 | deliberate redefinition from unintentional redefinition. |
| 584 | @end defspec | 585 | @end defspec |
| 585 | 586 | ||
| 587 | @cindex function aliases | ||
| 586 | @defun defalias name definition &optional docstring | 588 | @defun defalias name definition &optional docstring |
| 587 | @anchor{Definition of defalias} | 589 | @anchor{Definition of defalias} |
| 588 | This special form defines the symbol @var{name} as a function, with | 590 | This special form defines the symbol @var{name} as a function, with |
| @@ -1191,17 +1193,22 @@ function except for one thing: when you compile a call to the function, | |||
| 1191 | the function's definition is open-coded into the caller. | 1193 | the function's definition is open-coded into the caller. |
| 1192 | 1194 | ||
| 1193 | Making a function inline makes explicit calls run faster. But it also | 1195 | Making a function inline makes explicit calls run faster. But it also |
| 1194 | has disadvantages. For one thing, it reduces flexibility; if you change | 1196 | has disadvantages. For one thing, it reduces flexibility; if you |
| 1195 | the definition of the function, calls already inlined still use the old | 1197 | change the definition of the function, calls already inlined still use |
| 1196 | definition until you recompile them. Since the flexibility of | 1198 | the old definition until you recompile them. |
| 1197 | redefining functions is an important feature of Emacs, you should not | ||
| 1198 | make a function inline unless its speed is really crucial. | ||
| 1199 | 1199 | ||
| 1200 | Another disadvantage is that making a large function inline can increase | 1200 | Another disadvantage is that making a large function inline can increase |
| 1201 | the size of compiled code both in files and in memory. Since the speed | 1201 | the size of compiled code both in files and in memory. Since the speed |
| 1202 | advantage of inline functions is greatest for small functions, you | 1202 | advantage of inline functions is greatest for small functions, you |
| 1203 | generally should not make large functions inline. | 1203 | generally should not make large functions inline. |
| 1204 | 1204 | ||
| 1205 | Also, inline functions do not behave well with respect to debugging, | ||
| 1206 | tracing, and advising (@pxref{Advising Functions}). Since ease of | ||
| 1207 | debugging and the flexibility of redefining functions are important | ||
| 1208 | features of Emacs, you should not make a function inline, even if it's | ||
| 1209 | small, unless its speed is really crucial, and you've timed the code | ||
| 1210 | to verify that using @code{defun} actually has performance problems. | ||
| 1211 | |||
| 1205 | It's possible to define a macro to expand into the same code that an | 1212 | It's possible to define a macro to expand into the same code that an |
| 1206 | inline function would execute. (@xref{Macros}.) But the macro would be | 1213 | inline function would execute. (@xref{Macros}.) But the macro would be |
| 1207 | limited to direct use in expressions---a macro cannot be called with | 1214 | limited to direct use in expressions---a macro cannot be called with |
diff --git a/lispref/hash.texi b/lispref/hash.texi index 6a7fd26ae8b..c5b68e26d91 100644 --- a/lispref/hash.texi +++ b/lispref/hash.texi | |||
| @@ -7,10 +7,11 @@ | |||
| 7 | @node Hash Tables, Symbols, Sequences Arrays Vectors, Top | 7 | @node Hash Tables, Symbols, Sequences Arrays Vectors, Top |
| 8 | @chapter Hash Tables | 8 | @chapter Hash Tables |
| 9 | @cindex hash tables | 9 | @cindex hash tables |
| 10 | @cindex lookup tables | ||
| 10 | 11 | ||
| 11 | A hash table is a very fast kind of lookup table, somewhat like | 12 | A hash table is a very fast kind of lookup table, somewhat like an |
| 12 | an alist in that it maps keys to corresponding values. It differs | 13 | alist (@pxref{Association Lists}) in that it maps keys to |
| 13 | from an alist in these ways: | 14 | corresponding values. It differs from an alist in these ways: |
| 14 | 15 | ||
| 15 | @itemize @bullet | 16 | @itemize @bullet |
| 16 | @item | 17 | @item |
| @@ -55,6 +56,7 @@ of object and are used only for recording interned symbols | |||
| 55 | 56 | ||
| 56 | @node Creating Hash | 57 | @node Creating Hash |
| 57 | @section Creating Hash Tables | 58 | @section Creating Hash Tables |
| 59 | @cindex creating hash tables | ||
| 58 | 60 | ||
| 59 | The principal function for creating a hash table is | 61 | The principal function for creating a hash table is |
| 60 | @code{make-hash-table}. | 62 | @code{make-hash-table}. |
| @@ -212,6 +214,7 @@ arguments---a @var{key} listed in @var{table}, and its associated | |||
| 212 | @node Defining Hash | 214 | @node Defining Hash |
| 213 | @section Defining Hash Comparisons | 215 | @section Defining Hash Comparisons |
| 214 | @cindex hash code | 216 | @cindex hash code |
| 217 | @cindex define hash comparisons | ||
| 215 | 218 | ||
| 216 | You can define new methods of key lookup by means of | 219 | You can define new methods of key lookup by means of |
| 217 | @code{define-hash-table-test}. In order to use this feature, you need | 220 | @code{define-hash-table-test}. In order to use this feature, you need |
diff --git a/lispref/help.texi b/lispref/help.texi index 0939d384a4e..70c7a48c9c4 100644 --- a/lispref/help.texi +++ b/lispref/help.texi | |||
| @@ -91,9 +91,7 @@ list under the property name @code{variable-documentation}. The | |||
| 91 | function @code{documentation-property} knows how to retrieve it. | 91 | function @code{documentation-property} knows how to retrieve it. |
| 92 | @end itemize | 92 | @end itemize |
| 93 | 93 | ||
| 94 | @cindex @file{DOC} (documentation) file | 94 | @cindex @file{DOC-@var{version}} (documentation) file |
| 95 | @cindex @file{emacs/etc/DOC-@var{version}} | ||
| 96 | @cindex @file{etc/DOC-@var{version}} | ||
| 97 | To save space, the documentation for preloaded functions and variables | 95 | To save space, the documentation for preloaded functions and variables |
| 98 | (including primitive functions and autoloaded functions) is stored in | 96 | (including primitive functions and autoloaded functions) is stored in |
| 99 | the file @file{emacs/etc/DOC-@var{version}}---not inside Emacs. The | 97 | the file @file{emacs/etc/DOC-@var{version}}---not inside Emacs. The |
| @@ -388,6 +386,7 @@ C-g abort-recursive-edit | |||
| 388 | 386 | ||
| 389 | @node Describing Characters | 387 | @node Describing Characters |
| 390 | @section Describing Characters for Help Messages | 388 | @section Describing Characters for Help Messages |
| 389 | @cindex describe characters and events | ||
| 391 | 390 | ||
| 392 | These functions convert events, key sequences, or characters to | 391 | These functions convert events, key sequences, or characters to |
| 393 | textual descriptions. These descriptions are useful for including | 392 | textual descriptions. These descriptions are useful for including |
diff --git a/lispref/internals.texi b/lispref/internals.texi index 60ea9769150..3cd42ed69ff 100644 --- a/lispref/internals.texi +++ b/lispref/internals.texi | |||
| @@ -204,7 +204,7 @@ You should not change this flag in a running Emacs. | |||
| 204 | 204 | ||
| 205 | @node Garbage Collection | 205 | @node Garbage Collection |
| 206 | @appendixsec Garbage Collection | 206 | @appendixsec Garbage Collection |
| 207 | @cindex garbage collector | 207 | @cindex garbage collection |
| 208 | 208 | ||
| 209 | @cindex memory allocation | 209 | @cindex memory allocation |
| 210 | When a program creates a list or the user defines a new function (such | 210 | When a program creates a list or the user defines a new function (such |
| @@ -441,6 +441,7 @@ point number. | |||
| 441 | 441 | ||
| 442 | @node Memory Usage | 442 | @node Memory Usage |
| 443 | @section Memory Usage | 443 | @section Memory Usage |
| 444 | @cindex memory usage | ||
| 444 | 445 | ||
| 445 | These functions and variables give information about the total amount | 446 | These functions and variables give information about the total amount |
| 446 | of memory allocation that Emacs has done, broken down by data type. | 447 | of memory allocation that Emacs has done, broken down by data type. |
| @@ -530,7 +531,7 @@ usage: (or CONDITIONS ...) */) | |||
| 530 | @{ | 531 | @{ |
| 531 | val = Feval (XCAR (args)); | 532 | val = Feval (XCAR (args)); |
| 532 | if (!NILP (val)) | 533 | if (!NILP (val)) |
| 533 | break; | 534 | break; |
| 534 | args = XCDR (args); | 535 | args = XCDR (args); |
| 535 | @} | 536 | @} |
| 536 | @end group | 537 | @end group |
| @@ -715,7 +716,7 @@ with a value that is either @code{t} or @code{nil}. Note that variables | |||
| 715 | defined with @code{DEFVAR_BOOL} are automatically added to the list | 716 | defined with @code{DEFVAR_BOOL} are automatically added to the list |
| 716 | @code{byte-boolean-vars} used by the byte compiler. | 717 | @code{byte-boolean-vars} used by the byte compiler. |
| 717 | 718 | ||
| 718 | @cindex @code{staticpro}, protect file-scope variables from GC | 719 | @cindex @code{staticpro}, protection from GC |
| 719 | If you define a file-scope C variable of type @code{Lisp_Object}, | 720 | If you define a file-scope C variable of type @code{Lisp_Object}, |
| 720 | you must protect it from garbage-collection by calling @code{staticpro} | 721 | you must protect it from garbage-collection by calling @code{staticpro} |
| 721 | in @code{syms_of_@var{filename}}, like this: | 722 | in @code{syms_of_@var{filename}}, like this: |
diff --git a/lispref/intro.texi b/lispref/intro.texi index c919a46610d..35566603b7c 100644 --- a/lispref/intro.texi +++ b/lispref/intro.texi | |||
| @@ -170,11 +170,11 @@ being described, are formatted like this: @var{first-number}. | |||
| 170 | 170 | ||
| 171 | @node nil and t | 171 | @node nil and t |
| 172 | @subsection @code{nil} and @code{t} | 172 | @subsection @code{nil} and @code{t} |
| 173 | @cindex @code{nil}, uses of | ||
| 174 | @cindex truth value | 173 | @cindex truth value |
| 175 | @cindex boolean | 174 | @cindex boolean |
| 176 | @cindex false | ||
| 177 | 175 | ||
| 176 | @cindex @code{nil} | ||
| 177 | @cindex false | ||
| 178 | In Lisp, the symbol @code{nil} has three separate meanings: it | 178 | In Lisp, the symbol @code{nil} has three separate meanings: it |
| 179 | is a symbol with the name @samp{nil}; it is the logical truth value | 179 | is a symbol with the name @samp{nil}; it is the logical truth value |
| 180 | @var{false}; and it is the empty list---the list of zero elements. | 180 | @var{false}; and it is the empty list---the list of zero elements. |
| @@ -197,7 +197,7 @@ in Lisp programs also. | |||
| 197 | (setq foo-flag nil) ; @r{Emphasize the truth value @var{false}} | 197 | (setq foo-flag nil) ; @r{Emphasize the truth value @var{false}} |
| 198 | @end example | 198 | @end example |
| 199 | 199 | ||
| 200 | @cindex @code{t}, uses of | 200 | @cindex @code{t} |
| 201 | @cindex true | 201 | @cindex true |
| 202 | In contexts where a truth value is expected, any non-@code{nil} value | 202 | In contexts where a truth value is expected, any non-@code{nil} value |
| 203 | is considered to be @var{true}. However, @code{t} is the preferred way | 203 | is considered to be @var{true}. However, @code{t} is the preferred way |
| @@ -535,11 +535,12 @@ The minor version number of Emacs, as an integer. For Emacs version | |||
| 535 | @section Acknowledgements | 535 | @section Acknowledgements |
| 536 | 536 | ||
| 537 | This manual was written by Robert Krawitz, Bil Lewis, Dan LaLiberte, | 537 | This manual was written by Robert Krawitz, Bil Lewis, Dan LaLiberte, |
| 538 | Richard M. Stallman and Chris Welty, the volunteers of the GNU manual | 538 | Richard@tie{}M. Stallman and Chris Welty, the volunteers of the GNU |
| 539 | group, in an effort extending over several years. Robert J. Chassell | 539 | manual group, in an effort extending over several years. |
| 540 | helped to review and edit the manual, with the support of the Defense | 540 | Robert@tie{}J. Chassell helped to review and edit the manual, with the |
| 541 | Advanced Research Projects Agency, ARPA Order 6082, arranged by Warren | 541 | support of the Defense Advanced Research Projects Agency, ARPA Order |
| 542 | A. Hunt, Jr.@: of Computational Logic, Inc. | 542 | 6082, arranged by Warren@tie{}A. Hunt, Jr.@: of Computational Logic, |
| 543 | Inc. | ||
| 543 | 544 | ||
| 544 | Corrections were supplied by Karl Berry, Jim Blandy, Bard Bloom, | 545 | Corrections were supplied by Karl Berry, Jim Blandy, Bard Bloom, |
| 545 | Stephane Boucher, David Boyes, Alan Carroll, Richard Davis, Lawrence | 546 | Stephane Boucher, David Boyes, Alan Carroll, Richard Davis, Lawrence |
diff --git a/lispref/keymaps.texi b/lispref/keymaps.texi index 0cd653984e9..cd0ae7ec979 100644 --- a/lispref/keymaps.texi +++ b/lispref/keymaps.texi | |||
| @@ -53,7 +53,7 @@ vector. Unless otherwise stated, any Emacs Lisp function that accepts | |||
| 53 | a key sequence as an argument can handle both representations. | 53 | a key sequence as an argument can handle both representations. |
| 54 | 54 | ||
| 55 | In the string representation, alphanumeric characters ordinarily | 55 | In the string representation, alphanumeric characters ordinarily |
| 56 | stand for themselves; for example, @code{"a"} represents @kbd{a} and | 56 | stand for themselves; for example, @code{"a"} represents @kbd{a} |
| 57 | and @code{"2"} represents @kbd{2}. Control character events are | 57 | and @code{"2"} represents @kbd{2}. Control character events are |
| 58 | prefixed by the substring @code{"\C-"}, and meta characters by | 58 | prefixed by the substring @code{"\C-"}, and meta characters by |
| 59 | @code{"\M-"}; for example, @code{"\C-x"} represents the key @kbd{C-x}. | 59 | @code{"\M-"}; for example, @code{"\C-x"} represents the key @kbd{C-x}. |
| @@ -255,7 +255,7 @@ lisp-mode-map | |||
| 255 | (24 . lisp-send-defun) | 255 | (24 . lisp-send-defun) |
| 256 | keymap | 256 | keymap |
| 257 | ;; @r{@kbd{M-C-q}, treated as @kbd{@key{ESC} C-q}} | 257 | ;; @r{@kbd{M-C-q}, treated as @kbd{@key{ESC} C-q}} |
| 258 | (17 . indent-sexp))) | 258 | (17 . indent-sexp)) |
| 259 | @end group | 259 | @end group |
| 260 | @group | 260 | @group |
| 261 | ;; @r{This part is inherited from @code{lisp-mode-shared-map}.} | 261 | ;; @r{This part is inherited from @code{lisp-mode-shared-map}.} |
| @@ -697,6 +697,7 @@ An error is signaled if @var{key} is not a string or a vector. | |||
| 697 | 697 | ||
| 698 | @node Searching Keymaps | 698 | @node Searching Keymaps |
| 699 | @section Searching the Active Keymaps | 699 | @section Searching the Active Keymaps |
| 700 | @cindex searching active keymaps for keys | ||
| 700 | 701 | ||
| 701 | After translation of event subsequences (@pxref{Translation | 702 | After translation of event subsequences (@pxref{Translation |
| 702 | Keymaps}) Emacs looks for them in the active keymaps. Here is a | 703 | Keymaps}) Emacs looks for them in the active keymaps. Here is a |
| @@ -1277,7 +1278,7 @@ bindings in a keymap makes no difference for keyboard input, but it | |||
| 1277 | does matter for menu keymaps (@pxref{Menu Keymaps}). | 1278 | does matter for menu keymaps (@pxref{Menu Keymaps}). |
| 1278 | @end defun | 1279 | @end defun |
| 1279 | 1280 | ||
| 1280 | Here is an example that creates a sparse keymap and makes a number of | 1281 | This example creates a sparse keymap and makes a number of |
| 1281 | bindings in it: | 1282 | bindings in it: |
| 1282 | 1283 | ||
| 1283 | @smallexample | 1284 | @smallexample |
| @@ -1488,17 +1489,22 @@ does not have the effect of remapping @code{kill-line} into | |||
| 1488 | if an ordinary binding specifies @code{my-kill-line}, this keymap will | 1489 | if an ordinary binding specifies @code{my-kill-line}, this keymap will |
| 1489 | remap it to @code{my-other-kill-line}. | 1490 | remap it to @code{my-other-kill-line}. |
| 1490 | 1491 | ||
| 1491 | @defun command-remapping command &optional position | 1492 | @defun command-remapping command &optional position keymaps |
| 1492 | This function returns the remapping for @var{command} (a symbol), | 1493 | This function returns the remapping for @var{command} (a symbol), |
| 1493 | given the current active keymaps. If @var{command} is not remapped | 1494 | given the current active keymaps. If @var{command} is not remapped |
| 1494 | (which is the usual situation), or not a symbol, the function returns | 1495 | (which is the usual situation), or not a symbol, the function returns |
| 1495 | @code{nil}. @code{position} can optionally specify a buffer position | 1496 | @code{nil}. @code{position} can optionally specify a buffer position |
| 1496 | or an event position to determine the keymaps to use, as in | 1497 | or an event position to determine the keymaps to use, as in |
| 1497 | @code{key-binding}. | 1498 | @code{key-binding}. |
| 1499 | |||
| 1500 | If the optional argument @code{keymaps} is non-@code{nil}, it | ||
| 1501 | specifies a list of keymaps to search in. This argument is ignored if | ||
| 1502 | @code{position} is non-@code{nil}. | ||
| 1498 | @end defun | 1503 | @end defun |
| 1499 | 1504 | ||
| 1500 | @node Translation Keymaps | 1505 | @node Translation Keymaps |
| 1501 | @section Keymaps for Translating Sequences of Events | 1506 | @section Keymaps for Translating Sequences of Events |
| 1507 | @cindex keymaps for translating events | ||
| 1502 | 1508 | ||
| 1503 | This section describes keymaps that are used during reading a key | 1509 | This section describes keymaps that are used during reading a key |
| 1504 | sequence, to translate certain event sequences into others. | 1510 | sequence, to translate certain event sequences into others. |
diff --git a/lispref/lists.texi b/lispref/lists.texi index 24214bbc357..ffe4df2413d 100644 --- a/lispref/lists.texi +++ b/lispref/lists.texi | |||
| @@ -6,7 +6,7 @@ | |||
| 6 | @setfilename ../info/lists | 6 | @setfilename ../info/lists |
| 7 | @node Lists, Sequences Arrays Vectors, Strings and Characters, Top | 7 | @node Lists, Sequences Arrays Vectors, Strings and Characters, Top |
| 8 | @chapter Lists | 8 | @chapter Lists |
| 9 | @cindex list | 9 | @cindex lists |
| 10 | @cindex element (of list) | 10 | @cindex element (of list) |
| 11 | 11 | ||
| 12 | A @dfn{list} represents a sequence of zero or more elements (which may | 12 | A @dfn{list} represents a sequence of zero or more elements (which may |
| @@ -30,7 +30,6 @@ the whole list. | |||
| 30 | @node Cons Cells | 30 | @node Cons Cells |
| 31 | @section Lists and Cons Cells | 31 | @section Lists and Cons Cells |
| 32 | @cindex lists and cons cells | 32 | @cindex lists and cons cells |
| 33 | @cindex @code{nil} and lists | ||
| 34 | 33 | ||
| 35 | Lists in Lisp are not a primitive data type; they are built up from | 34 | Lists in Lisp are not a primitive data type; they are built up from |
| 36 | @dfn{cons cells}. A cons cell is a data object that represents an | 35 | @dfn{cons cells}. A cons cell is a data object that represents an |
| @@ -104,7 +103,6 @@ otherwise. @code{nil} is not a cons cell, although it @emph{is} a list. | |||
| 104 | @end defun | 103 | @end defun |
| 105 | 104 | ||
| 106 | @defun atom object | 105 | @defun atom object |
| 107 | @cindex atoms | ||
| 108 | This function returns @code{t} if @var{object} is an atom, @code{nil} | 106 | This function returns @code{t} if @var{object} is an atom, @code{nil} |
| 109 | otherwise. All objects except cons cells are atoms. The symbol | 107 | otherwise. All objects except cons cells are atoms. The symbol |
| 110 | @code{nil} is an atom and is also a list; it is the only Lisp object | 108 | @code{nil} is an atom and is also a list; it is the only Lisp object |
| @@ -159,7 +157,6 @@ considered a list and @code{not} when it is considered a truth value | |||
| 159 | @end example | 157 | @end example |
| 160 | @end defun | 158 | @end defun |
| 161 | 159 | ||
| 162 | @need 2000 | ||
| 163 | 160 | ||
| 164 | @node List Elements | 161 | @node List Elements |
| 165 | @section Accessing Elements of Lists | 162 | @section Accessing Elements of Lists |
| @@ -991,10 +988,9 @@ x1 | |||
| 991 | @end group | 988 | @end group |
| 992 | @end example | 989 | @end example |
| 993 | 990 | ||
| 994 | @need 4000 | ||
| 995 | Here is the result in box notation: | 991 | Here is the result in box notation: |
| 996 | 992 | ||
| 997 | @example | 993 | @smallexample |
| 998 | @group | 994 | @group |
| 999 | -------------------- | 995 | -------------------- |
| 1000 | | | | 996 | | | |
| @@ -1004,7 +1000,7 @@ x1 | |||
| 1004 | | | | | | | | | | | 1000 | | | | | | | | | | |
| 1005 | -------------- -------------- -------------- | 1001 | -------------- -------------- -------------- |
| 1006 | @end group | 1002 | @end group |
| 1007 | @end example | 1003 | @end smallexample |
| 1008 | 1004 | ||
| 1009 | @noindent | 1005 | @noindent |
| 1010 | The second cons cell, which previously held the element @code{b}, still | 1006 | The second cons cell, which previously held the element @code{b}, still |
| @@ -1307,7 +1303,7 @@ compare @var{object} against the elements of the list. For example: | |||
| 1307 | @end defun | 1303 | @end defun |
| 1308 | 1304 | ||
| 1309 | @defun delq object list | 1305 | @defun delq object list |
| 1310 | @cindex deletion of elements | 1306 | @cindex deleting list elements |
| 1311 | This function destructively removes all elements @code{eq} to | 1307 | This function destructively removes all elements @code{eq} to |
| 1312 | @var{object} from @var{list}. The letter @samp{q} in @code{delq} says | 1308 | @var{object} from @var{list}. The letter @samp{q} in @code{delq} says |
| 1313 | that it uses @code{eq} to compare @var{object} against the elements of | 1309 | that it uses @code{eq} to compare @var{object} against the elements of |
| @@ -1370,6 +1366,9 @@ and the @code{(4)} in the @code{sample-list} are not @code{eq}: | |||
| 1370 | (delq '(4) sample-list) | 1366 | (delq '(4) sample-list) |
| 1371 | @result{} (a c (4)) | 1367 | @result{} (a c (4)) |
| 1372 | @end group | 1368 | @end group |
| 1369 | |||
| 1370 | If you want to delete elements that are @code{equal} to a given value, | ||
| 1371 | use @code{delete} (see below). | ||
| 1373 | @end example | 1372 | @end example |
| 1374 | 1373 | ||
| 1375 | @defun remq object list | 1374 | @defun remq object list |
| @@ -1392,9 +1391,6 @@ sample-list | |||
| 1392 | @result{} (a b c a b c) | 1391 | @result{} (a b c a b c) |
| 1393 | @end group | 1392 | @end group |
| 1394 | @end example | 1393 | @end example |
| 1395 | @noindent | ||
| 1396 | The function @code{delq} offers a way to perform this operation | ||
| 1397 | destructively. See @ref{Sets And Lists}. | ||
| 1398 | @end defun | 1394 | @end defun |
| 1399 | 1395 | ||
| 1400 | @defun memql object list | 1396 | @defun memql object list |
| @@ -1452,8 +1448,8 @@ If @code{sequence} is a list, this function destructively removes all | |||
| 1452 | elements @code{equal} to @var{object} from @var{sequence}. For lists, | 1448 | elements @code{equal} to @var{object} from @var{sequence}. For lists, |
| 1453 | @code{delete} is to @code{delq} as @code{member} is to @code{memq}: it | 1449 | @code{delete} is to @code{delq} as @code{member} is to @code{memq}: it |
| 1454 | uses @code{equal} to compare elements with @var{object}, like | 1450 | uses @code{equal} to compare elements with @var{object}, like |
| 1455 | @code{member}; when it finds an element that matches, it removes the | 1451 | @code{member}; when it finds an element that matches, it cuts the |
| 1456 | element just as @code{delq} would. | 1452 | element out just as @code{delq} would. |
| 1457 | 1453 | ||
| 1458 | If @code{sequence} is a vector or string, @code{delete} returns a copy | 1454 | If @code{sequence} is a vector or string, @code{delete} returns a copy |
| 1459 | of @code{sequence} with all elements @code{equal} to @code{object} | 1455 | of @code{sequence} with all elements @code{equal} to @code{object} |
| @@ -1463,8 +1459,22 @@ For example: | |||
| 1463 | 1459 | ||
| 1464 | @example | 1460 | @example |
| 1465 | @group | 1461 | @group |
| 1466 | (delete '(2) '((2) (1) (2))) | 1462 | (setq l '((2) (1) (2))) |
| 1463 | (delete '(2) l) | ||
| 1467 | @result{} ((1)) | 1464 | @result{} ((1)) |
| 1465 | l | ||
| 1466 | @result{} ((2) (1)) | ||
| 1467 | ;; @r{If you want to change @code{l} reliably,} | ||
| 1468 | ;; @r{write @code{(setq l (delete elt l))}.} | ||
| 1469 | @end group | ||
| 1470 | @group | ||
| 1471 | (setq l '((2) (1) (2))) | ||
| 1472 | (delete '(1) l) | ||
| 1473 | @result{} ((2) (2)) | ||
| 1474 | l | ||
| 1475 | @result{} ((2) (2)) | ||
| 1476 | ;; @r{In this case, it makes no difference whether you set @code{l},} | ||
| 1477 | ;; @r{but you should do so for the sake of the other case.} | ||
| 1468 | @end group | 1478 | @end group |
| 1469 | @group | 1479 | @group |
| 1470 | (delete '(2) [(2) (1) (2)]) | 1480 | (delete '(2) [(2) (1) (2)]) |
| @@ -1474,7 +1484,7 @@ For example: | |||
| 1474 | @end defun | 1484 | @end defun |
| 1475 | 1485 | ||
| 1476 | @defun remove object sequence | 1486 | @defun remove object sequence |
| 1477 | This function is the non-destructive counterpart of @code{delete}. If | 1487 | This function is the non-destructive counterpart of @code{delete}. It |
| 1478 | returns a copy of @code{sequence}, a list, vector, or string, with | 1488 | returns a copy of @code{sequence}, a list, vector, or string, with |
| 1479 | elements @code{equal} to @code{object} removed. For example: | 1489 | elements @code{equal} to @code{object} removed. For example: |
| 1480 | 1490 | ||
| @@ -1513,7 +1523,8 @@ several @code{equal} occurrences of an element in @var{list}, | |||
| 1513 | @end defun | 1523 | @end defun |
| 1514 | 1524 | ||
| 1515 | See also the function @code{add-to-list}, in @ref{List Variables}, | 1525 | See also the function @code{add-to-list}, in @ref{List Variables}, |
| 1516 | for another way to add an element to a list stored in a variable. | 1526 | for a way to add an element to a list stored in a variable and used as a |
| 1527 | set. | ||
| 1517 | 1528 | ||
| 1518 | @node Association Lists | 1529 | @node Association Lists |
| 1519 | @section Association Lists | 1530 | @section Association Lists |
| @@ -1589,7 +1600,7 @@ of property lists and association lists. | |||
| 1589 | 1600 | ||
| 1590 | @defun assoc key alist | 1601 | @defun assoc key alist |
| 1591 | This function returns the first association for @var{key} in | 1602 | This function returns the first association for @var{key} in |
| 1592 | @var{alist}. It compares @var{key} against the alist elements using | 1603 | @var{alist}, comparing @var{key} against the alist elements using |
| 1593 | @code{equal} (@pxref{Equality Predicates}). It returns @code{nil} if no | 1604 | @code{equal} (@pxref{Equality Predicates}). It returns @code{nil} if no |
| 1594 | association in @var{alist} has a @sc{car} @code{equal} to @var{key}. | 1605 | association in @var{alist} has a @sc{car} @code{equal} to @var{key}. |
| 1595 | For example: | 1606 | For example: |
diff --git a/lispref/loading.texi b/lispref/loading.texi index 092befff85a..058ed9c8984 100644 --- a/lispref/loading.texi +++ b/lispref/loading.texi | |||
| @@ -64,22 +64,23 @@ forms in it, and closes the file. | |||
| 64 | 64 | ||
| 65 | To find the file, @code{load} first looks for a file named | 65 | To find the file, @code{load} first looks for a file named |
| 66 | @file{@var{filename}.elc}, that is, for a file whose name is | 66 | @file{@var{filename}.elc}, that is, for a file whose name is |
| 67 | @var{filename} with @samp{.elc} appended. If such a file exists, it is | 67 | @var{filename} with the extension @samp{.elc} appended. If such a |
| 68 | loaded. If there is no file by that name, then @code{load} looks for a | 68 | file exists, it is loaded. If there is no file by that name, then |
| 69 | file named @file{@var{filename}.el}. If that file exists, it is loaded. | 69 | @code{load} looks for a file named @file{@var{filename}.el}. If that |
| 70 | Finally, if neither of those names is found, @code{load} looks for a | 70 | file exists, it is loaded. Finally, if neither of those names is |
| 71 | file named @var{filename} with nothing appended, and loads it if it | 71 | found, @code{load} looks for a file named @var{filename} with nothing |
| 72 | exists. (The @code{load} function is not clever about looking at | 72 | appended, and loads it if it exists. (The @code{load} function is not |
| 73 | @var{filename}. In the perverse case of a file named @file{foo.el.el}, | 73 | clever about looking at @var{filename}. In the perverse case of a |
| 74 | evaluation of @code{(load "foo.el")} will indeed find it.) | 74 | file named @file{foo.el.el}, evaluation of @code{(load "foo.el")} will |
| 75 | 75 | indeed find it.) | |
| 76 | If Auto Compression mode is enabled, as it is by default, then | 76 | |
| 77 | if @code{load} can not find a file, it searches for a compressed | 77 | If Auto Compression mode is enabled, as it is by default, then if |
| 78 | version of the file before trying other file names. It decompresses | 78 | @code{load} can not find a file, it searches for a compressed version |
| 79 | and loads it if it exists. It looks for compressed versions by | 79 | of the file before trying other file names. It decompresses and loads |
| 80 | appending the suffixes in @code{jka-compr-load-suffixes} to the file | 80 | it if it exists. It looks for compressed versions by appending each |
| 81 | name. The value of this variable must be a list of strings. Its | 81 | of the suffixes in @code{jka-compr-load-suffixes} to the file name. |
| 82 | standard value is @code{(".gz")}. | 82 | The value of this variable must be a list of strings. Its standard |
| 83 | value is @code{(".gz")}. | ||
| 83 | 84 | ||
| 84 | If the optional argument @var{nosuffix} is non-@code{nil}, then | 85 | If the optional argument @var{nosuffix} is non-@code{nil}, then |
| 85 | @code{load} does not try the suffixes @samp{.elc} and @samp{.el}. In | 86 | @code{load} does not try the suffixes @samp{.elc} and @samp{.el}. In |
| @@ -220,6 +221,8 @@ it skips the latter group. | |||
| 220 | 221 | ||
| 221 | @node Library Search | 222 | @node Library Search |
| 222 | @section Library Search | 223 | @section Library Search |
| 224 | @cindex library search | ||
| 225 | @cindex find library | ||
| 223 | 226 | ||
| 224 | When Emacs loads a Lisp library, it searches for the library | 227 | When Emacs loads a Lisp library, it searches for the library |
| 225 | in a list of directories specified by the variable @code{load-path}. | 228 | in a list of directories specified by the variable @code{load-path}. |
| @@ -844,7 +847,7 @@ rather than replacing that element. @xref{Eval}. | |||
| 844 | 847 | ||
| 845 | @node Unloading | 848 | @node Unloading |
| 846 | @section Unloading | 849 | @section Unloading |
| 847 | @cindex unloading | 850 | @cindex unloading packages |
| 848 | 851 | ||
| 849 | @c Emacs 19 feature | 852 | @c Emacs 19 feature |
| 850 | You can discard the functions and variables loaded by a library to | 853 | You can discard the functions and variables loaded by a library to |
| @@ -956,7 +959,7 @@ element looks like this: | |||
| 956 | 959 | ||
| 957 | The key @var{regexp-or-feature} is either a regular expression or a | 960 | The key @var{regexp-or-feature} is either a regular expression or a |
| 958 | symbol, and the value is a list of forms. The forms are evaluated when | 961 | symbol, and the value is a list of forms. The forms are evaluated when |
| 959 | the key matches the the absolute true name of the file being | 962 | the key matches the absolute true name of the file being |
| 960 | @code{load}ed or the symbol being @code{provide}d. | 963 | @code{load}ed or the symbol being @code{provide}d. |
| 961 | @end defvar | 964 | @end defvar |
| 962 | 965 | ||
diff --git a/lispref/locals.texi b/lispref/locals.texi index 712c8aa9701..4edbc2a815f 100644 --- a/lispref/locals.texi +++ b/lispref/locals.texi | |||
| @@ -9,6 +9,7 @@ | |||
| 9 | @c The title "Standard Buffer-Local Variables" is too long for | 9 | @c The title "Standard Buffer-Local Variables" is too long for |
| 10 | @c smallbook. --rjc 30mar92 | 10 | @c smallbook. --rjc 30mar92 |
| 11 | @cindex buffer-local variables, general-purpose | 11 | @cindex buffer-local variables, general-purpose |
| 12 | @cindex standard buffer-local variables | ||
| 12 | 13 | ||
| 13 | The table below lists the general-purpose Emacs variables that | 14 | The table below lists the general-purpose Emacs variables that |
| 14 | automatically become buffer-local in each buffer. Most become | 15 | automatically become buffer-local in each buffer. Most become |
| @@ -16,9 +17,9 @@ buffer-local only when set; a few of them are always local in every | |||
| 16 | buffer. Many Lisp packages define such variables for their internal | 17 | buffer. Many Lisp packages define such variables for their internal |
| 17 | use, but we don't try to list them all here. | 18 | use, but we don't try to list them all here. |
| 18 | 19 | ||
| 19 | Each minor modes defines a buffer-local variable named | 20 | Every buffer-specific minor mode defines a buffer-local variable |
| 20 | @samp{@var{modename}-mode}. @xref{Minor Mode Conventions}. Minor | 21 | named @samp{@var{modename}-mode}. @xref{Minor Mode Conventions}. |
| 21 | mode variables will not be listed here. | 22 | Minor mode variables will not be listed here. |
| 22 | 23 | ||
| 23 | @table @code | 24 | @table @code |
| 24 | @item auto-fill-function | 25 | @item auto-fill-function |
diff --git a/lispref/macros.texi b/lispref/macros.texi index 80d8e9c0786..6dea53ac983 100644 --- a/lispref/macros.texi +++ b/lispref/macros.texi | |||
| @@ -140,7 +140,6 @@ uses this feature. | |||
| 140 | 140 | ||
| 141 | 141 | ||
| 142 | @defun macroexpand-all form &optional environment | 142 | @defun macroexpand-all form &optional environment |
| 143 | @cindex macro expansion in entire form | ||
| 144 | @code{macroexpand-all} expands macros like @code{macroexpand}, but | 143 | @code{macroexpand-all} expands macros like @code{macroexpand}, but |
| 145 | will look for and expand all macros in @var{form}, not just at the | 144 | will look for and expand all macros in @var{form}, not just at the |
| 146 | top-level. If no macros are expanded, the return value is @code{eq} | 145 | top-level. If no macros are expanded, the return value is @code{eq} |
| @@ -239,7 +238,7 @@ currently supported: | |||
| 239 | @table @code | 238 | @table @code |
| 240 | @item (debug @var{edebug-form-spec}) | 239 | @item (debug @var{edebug-form-spec}) |
| 241 | Specify how to step through macro calls for Edebug. | 240 | Specify how to step through macro calls for Edebug. |
| 242 | @xref{Instrumenting Macro Calls}, for more details. | 241 | @xref{Instrumenting Macro Calls}. |
| 243 | 242 | ||
| 244 | @item (indent @var{indent-spec}) | 243 | @item (indent @var{indent-spec}) |
| 245 | Specify how to indent calls to this macro. @xref{Indenting Macros}, | 244 | Specify how to indent calls to this macro. @xref{Indenting Macros}, |
| @@ -287,7 +286,7 @@ two forms yield identical results: | |||
| 287 | @end group | 286 | @end group |
| 288 | @end example | 287 | @end example |
| 289 | 288 | ||
| 290 | @findex , @r{(with Backquote)} | 289 | @findex , @r{(with backquote)} |
| 291 | The special marker @samp{,} inside of the argument to backquote | 290 | The special marker @samp{,} inside of the argument to backquote |
| 292 | indicates a value that isn't constant. Backquote evaluates the | 291 | indicates a value that isn't constant. Backquote evaluates the |
| 293 | argument of @samp{,} and puts the value in the list structure: | 292 | argument of @samp{,} and puts the value in the list structure: |
| @@ -319,7 +318,7 @@ structure also. For example: | |||
| 319 | @end group | 318 | @end group |
| 320 | @end example | 319 | @end example |
| 321 | 320 | ||
| 322 | @findex ,@@ @r{(with Backquote)} | 321 | @findex ,@@ @r{(with backquote)} |
| 323 | @cindex splicing (with backquote) | 322 | @cindex splicing (with backquote) |
| 324 | You can also @dfn{splice} an evaluated value into the resulting list, | 323 | You can also @dfn{splice} an evaluated value into the resulting list, |
| 325 | using the special marker @samp{,@@}. The elements of the spliced list | 324 | using the special marker @samp{,@@}. The elements of the spliced list |
diff --git a/lispref/maps.texi b/lispref/maps.texi index c4d065c355a..724091970c3 100644 --- a/lispref/maps.texi +++ b/lispref/maps.texi | |||
| @@ -6,6 +6,7 @@ | |||
| 6 | @setfilename ../info/maps | 6 | @setfilename ../info/maps |
| 7 | @node Standard Keymaps, Standard Hooks, Standard Buffer-Local Variables, Top | 7 | @node Standard Keymaps, Standard Hooks, Standard Buffer-Local Variables, Top |
| 8 | @appendix Standard Keymaps | 8 | @appendix Standard Keymaps |
| 9 | @cindex standard keymaps | ||
| 9 | 10 | ||
| 10 | The following symbols are used as the names for various keymaps. | 11 | The following symbols are used as the names for various keymaps. |
| 11 | Some of these exist when Emacs is first started, others are | 12 | Some of these exist when Emacs is first started, others are |
| @@ -76,7 +77,6 @@ A full keymap used by Electric Command History mode. | |||
| 76 | A sparse keymap used by Emacs Lisp mode. | 77 | A sparse keymap used by Emacs Lisp mode. |
| 77 | 78 | ||
| 78 | @item esc-map | 79 | @item esc-map |
| 79 | @vindex esc-map | ||
| 80 | A full keymap for @kbd{ESC} (or @kbd{Meta}) commands. | 80 | A full keymap for @kbd{ESC} (or @kbd{Meta}) commands. |
| 81 | 81 | ||
| 82 | @item facemenu-menu | 82 | @item facemenu-menu |
diff --git a/lispref/markers.texi b/lispref/markers.texi index b955538fe03..519b8a1316a 100644 --- a/lispref/markers.texi +++ b/lispref/markers.texi | |||
| @@ -176,7 +176,6 @@ buffer unless narrowing is in effect. @xref{Narrowing}. | |||
| 176 | @end defun | 176 | @end defun |
| 177 | 177 | ||
| 178 | @defun point-max-marker | 178 | @defun point-max-marker |
| 179 | @cindex end of buffer marker | ||
| 180 | This function returns a new marker that points to the end of the | 179 | This function returns a new marker that points to the end of the |
| 181 | accessible portion of the buffer. This will be the end of the buffer | 180 | accessible portion of the buffer. This will be the end of the buffer |
| 182 | unless narrowing is in effect. @xref{Narrowing}. | 181 | unless narrowing is in effect. @xref{Narrowing}. |
| @@ -550,7 +549,7 @@ The return value is not meaningful. | |||
| 550 | @end defun | 549 | @end defun |
| 551 | 550 | ||
| 552 | @defopt transient-mark-mode | 551 | @defopt transient-mark-mode |
| 553 | @cindex Transient Mark mode | 552 | @c @cindex Transient Mark mode Redundant |
| 554 | This variable if non-@code{nil} enables Transient Mark mode, in which | 553 | This variable if non-@code{nil} enables Transient Mark mode, in which |
| 555 | every buffer-modifying primitive sets @code{deactivate-mark}. The | 554 | every buffer-modifying primitive sets @code{deactivate-mark}. The |
| 556 | consequence of this is that commands that modify the buffer normally | 555 | consequence of this is that commands that modify the buffer normally |
| @@ -629,7 +628,7 @@ more marks than this are pushed onto the @code{mark-ring}, | |||
| 629 | 628 | ||
| 630 | @node The Region | 629 | @node The Region |
| 631 | @section The Region | 630 | @section The Region |
| 632 | @cindex region, the | 631 | @cindex region (between point and mark) |
| 633 | 632 | ||
| 634 | The text between point and the mark is known as @dfn{the region}. | 633 | The text between point and the mark is known as @dfn{the region}. |
| 635 | Various functions operate on text delimited by point and the mark, but | 634 | Various functions operate on text delimited by point and the mark, but |
diff --git a/lispref/minibuf.texi b/lispref/minibuf.texi index 1abbb148b85..98901df87f8 100644 --- a/lispref/minibuf.texi +++ b/lispref/minibuf.texi | |||
| @@ -767,7 +767,7 @@ completion possibility specified by @var{collection} and | |||
| 767 | strings, this is true if @var{string} appears in the list and | 767 | strings, this is true if @var{string} appears in the list and |
| 768 | @var{predicate} is satisfied. | 768 | @var{predicate} is satisfied. |
| 769 | 769 | ||
| 770 | @code{test-completion} uses @code{completion-regexp-list} in the same | 770 | This function uses @code{completion-regexp-list} in the same |
| 771 | way that @code{try-completion} does. | 771 | way that @code{try-completion} does. |
| 772 | 772 | ||
| 773 | If @var{predicate} is non-@code{nil} and if @var{collection} contains | 773 | If @var{predicate} is non-@code{nil} and if @var{collection} contains |
| @@ -812,6 +812,8 @@ Here is an example of use: | |||
| 812 | 812 | ||
| 813 | @node Minibuffer Completion | 813 | @node Minibuffer Completion |
| 814 | @subsection Completion and the Minibuffer | 814 | @subsection Completion and the Minibuffer |
| 815 | @cindex minibuffer completion | ||
| 816 | @cindex reading from minibuffer with completion | ||
| 815 | 817 | ||
| 816 | This section describes the basic interface for reading from the | 818 | This section describes the basic interface for reading from the |
| 817 | minibuffer with completion. | 819 | minibuffer with completion. |
| @@ -1222,6 +1224,8 @@ and @code{read-input-method-name}, in @ref{Input Methods}. | |||
| 1222 | 1224 | ||
| 1223 | @node Reading File Names | 1225 | @node Reading File Names |
| 1224 | @subsection Reading File Names | 1226 | @subsection Reading File Names |
| 1227 | @cindex read file names | ||
| 1228 | @cindex prompt for file name | ||
| 1225 | 1229 | ||
| 1226 | Here is another high-level completion function, designed for reading a | 1230 | Here is another high-level completion function, designed for reading a |
| 1227 | file name. It provides special features including automatic insertion | 1231 | file name. It provides special features including automatic insertion |
| @@ -1782,6 +1786,7 @@ regular expression). | |||
| 1782 | 1786 | ||
| 1783 | @node Minibuffer Windows | 1787 | @node Minibuffer Windows |
| 1784 | @section Minibuffer Windows | 1788 | @section Minibuffer Windows |
| 1789 | @cindex minibuffer windows | ||
| 1785 | 1790 | ||
| 1786 | These functions access and select minibuffer windows | 1791 | These functions access and select minibuffer windows |
| 1787 | and test whether they are active. | 1792 | and test whether they are active. |
| @@ -1872,6 +1877,7 @@ it erases the entire current buffer. | |||
| 1872 | 1877 | ||
| 1873 | @node Recursive Mini | 1878 | @node Recursive Mini |
| 1874 | @section Recursive Minibuffers | 1879 | @section Recursive Minibuffers |
| 1880 | @cindex recursive minibuffers | ||
| 1875 | 1881 | ||
| 1876 | These functions and variables deal with recursive minibuffers | 1882 | These functions and variables deal with recursive minibuffers |
| 1877 | (@pxref{Recursive Editing}): | 1883 | (@pxref{Recursive Editing}): |
diff --git a/lispref/modes.texi b/lispref/modes.texi index 6eba02d5a0b..5d91b238fca 100644 --- a/lispref/modes.texi +++ b/lispref/modes.texi | |||
| @@ -252,6 +252,8 @@ Fundamental mode. Rmail mode is a complicated and specialized mode. | |||
| 252 | 252 | ||
| 253 | @node Major Mode Conventions | 253 | @node Major Mode Conventions |
| 254 | @subsection Major Mode Conventions | 254 | @subsection Major Mode Conventions |
| 255 | @cindex major mode conventions | ||
| 256 | @cindex conventions for writing major modes | ||
| 255 | 257 | ||
| 256 | The code for existing major modes follows various coding conventions, | 258 | The code for existing major modes follows various coding conventions, |
| 257 | including conventions for local keymap and syntax table initialization, | 259 | including conventions for local keymap and syntax table initialization, |
| @@ -495,6 +497,7 @@ Even if you never load the file more than once, someone else will. | |||
| 495 | 497 | ||
| 496 | @node Auto Major Mode | 498 | @node Auto Major Mode |
| 497 | @subsection How Emacs Chooses a Major Mode | 499 | @subsection How Emacs Chooses a Major Mode |
| 500 | @cindex major mode, automatic selection | ||
| 498 | 501 | ||
| 499 | Based on information in the file name or in the file itself, Emacs | 502 | Based on information in the file name or in the file itself, Emacs |
| 500 | automatically selects a major mode for the new buffer when a file is | 503 | automatically selects a major mode for the new buffer when a file is |
| @@ -1157,7 +1160,7 @@ if that value is non-nil." | |||
| 1157 | @group | 1160 | @group |
| 1158 | (setq imenu-case-fold-search t) | 1161 | (setq imenu-case-fold-search t) |
| 1159 | (set-syntax-table lisp-mode-syntax-table) | 1162 | (set-syntax-table lisp-mode-syntax-table) |
| 1160 | (run-mode-hooks 'lisp-mode-hook)) ; @r{This permits the user to use a} | 1163 | (run-mode-hooks 'lisp-mode-hook)) ; @r{This permits the user to use a} |
| 1161 | ; @r{hook to customize the mode.} | 1164 | ; @r{hook to customize the mode.} |
| 1162 | @end group | 1165 | @end group |
| 1163 | @end smallexample | 1166 | @end smallexample |
| @@ -1697,7 +1700,6 @@ the information in another fashion. This way, customizations made by | |||
| 1697 | the user or by Lisp programs (such as @code{display-time} and major | 1700 | the user or by Lisp programs (such as @code{display-time} and major |
| 1698 | modes) via changes to those variables remain effective. | 1701 | modes) via changes to those variables remain effective. |
| 1699 | 1702 | ||
| 1700 | @cindex Shell mode @code{mode-line-format} | ||
| 1701 | Here is an example of a @code{mode-line-format} that might be | 1703 | Here is an example of a @code{mode-line-format} that might be |
| 1702 | useful for @code{shell-mode}, since it contains the host name and default | 1704 | useful for @code{shell-mode}, since it contains the host name and default |
| 1703 | directory. | 1705 | directory. |
| @@ -2336,7 +2338,7 @@ Setting this variable makes it buffer-local in the current buffer. | |||
| 2336 | 2338 | ||
| 2337 | @node Font Lock Mode | 2339 | @node Font Lock Mode |
| 2338 | @section Font Lock Mode | 2340 | @section Font Lock Mode |
| 2339 | @cindex Font Lock Mode | 2341 | @cindex Font Lock mode |
| 2340 | 2342 | ||
| 2341 | @dfn{Font Lock mode} is a feature that automatically attaches | 2343 | @dfn{Font Lock mode} is a feature that automatically attaches |
| 2342 | @code{face} properties to certain parts of the buffer based on their | 2344 | @code{face} properties to certain parts of the buffer based on their |
| @@ -2855,6 +2857,8 @@ set the variable @code{font-lock-defaults}. | |||
| 2855 | 2857 | ||
| 2856 | @node Faces for Font Lock | 2858 | @node Faces for Font Lock |
| 2857 | @subsection Faces for Font Lock | 2859 | @subsection Faces for Font Lock |
| 2860 | @cindex faces for font lock | ||
| 2861 | @cindex font lock faces | ||
| 2858 | 2862 | ||
| 2859 | You can make Font Lock mode use any face, but several faces are | 2863 | You can make Font Lock mode use any face, but several faces are |
| 2860 | defined specifically for Font Lock mode. Each of these symbols is both | 2864 | defined specifically for Font Lock mode. Each of these symbols is both |
| @@ -2927,6 +2931,7 @@ directives in C. | |||
| 2927 | 2931 | ||
| 2928 | @node Syntactic Font Lock | 2932 | @node Syntactic Font Lock |
| 2929 | @subsection Syntactic Font Lock | 2933 | @subsection Syntactic Font Lock |
| 2934 | @cindex syntactic font lock | ||
| 2930 | 2935 | ||
| 2931 | Syntactic fontification uses the syntax table to find comments and | 2936 | Syntactic fontification uses the syntax table to find comments and |
| 2932 | string constants (@pxref{Syntax Tables}). It highlights them using | 2937 | string constants (@pxref{Syntax Tables}). It highlights them using |
diff --git a/lispref/nonascii.texi b/lispref/nonascii.texi index 3661079c56e..dd0f15c817e 100644 --- a/lispref/nonascii.texi +++ b/lispref/nonascii.texi | |||
| @@ -7,6 +7,7 @@ | |||
| 7 | @node Non-ASCII Characters, Searching and Matching, Text, Top | 7 | @node Non-ASCII Characters, Searching and Matching, Text, Top |
| 8 | @chapter Non-@acronym{ASCII} Characters | 8 | @chapter Non-@acronym{ASCII} Characters |
| 9 | @cindex multibyte characters | 9 | @cindex multibyte characters |
| 10 | @cindex characters, multi-byte | ||
| 10 | @cindex non-@acronym{ASCII} characters | 11 | @cindex non-@acronym{ASCII} characters |
| 11 | 12 | ||
| 12 | This chapter covers the special issues relating to non-@acronym{ASCII} | 13 | This chapter covers the special issues relating to non-@acronym{ASCII} |
| @@ -374,7 +375,7 @@ This command displays a list of characters in the character set | |||
| 374 | @section Characters and Bytes | 375 | @section Characters and Bytes |
| 375 | @cindex bytes and characters | 376 | @cindex bytes and characters |
| 376 | 377 | ||
| 377 | @cindex introduction sequence | 378 | @cindex introduction sequence (of character) |
| 378 | @cindex dimension (of character set) | 379 | @cindex dimension (of character set) |
| 379 | In multibyte representation, each character occupies one or more | 380 | In multibyte representation, each character occupies one or more |
| 380 | bytes. Each character set has an @dfn{introduction sequence}, which is | 381 | bytes. Each character set has an @dfn{introduction sequence}, which is |
| @@ -407,6 +408,7 @@ set's introduction sequence: | |||
| 407 | 408 | ||
| 408 | @node Splitting Characters | 409 | @node Splitting Characters |
| 409 | @section Splitting Characters | 410 | @section Splitting Characters |
| 411 | @cindex character as bytes | ||
| 410 | 412 | ||
| 411 | The functions in this section convert between characters and the byte | 413 | The functions in this section convert between characters and the byte |
| 412 | values used to represent them. For most purposes, there is no need to | 414 | values used to represent them. For most purposes, there is no need to |
| @@ -432,6 +434,7 @@ returns a list consisting of the symbol @code{unknown} and @var{character}. | |||
| 432 | @end example | 434 | @end example |
| 433 | @end defun | 435 | @end defun |
| 434 | 436 | ||
| 437 | @cindex generate characters in charsets | ||
| 435 | @defun make-char charset &optional code1 code2 | 438 | @defun make-char charset &optional code1 code2 |
| 436 | This function returns the character in character set @var{charset} whose | 439 | This function returns the character in character set @var{charset} whose |
| 437 | position codes are @var{code1} and @var{code2}. This is roughly the | 440 | position codes are @var{code1} and @var{code2}. This is roughly the |
| @@ -655,7 +658,9 @@ coding system, you'll get Unicode characters (of charset | |||
| 655 | @code{iso-latin-2} and decode the result with the same coding system, | 658 | @code{iso-latin-2} and decode the result with the same coding system, |
| 656 | you'll get Latin-2 characters. | 659 | you'll get Latin-2 characters. |
| 657 | 660 | ||
| 658 | @cindex end of line conversion | 661 | @cindex EOL conversion |
| 662 | @cindex end-of-line conversion | ||
| 663 | @cindex line end conversion | ||
| 659 | @dfn{End of line conversion} handles three different conventions used | 664 | @dfn{End of line conversion} handles three different conventions used |
| 660 | on various systems for representing end of line in files. The Unix | 665 | on various systems for representing end of line in files. The Unix |
| 661 | convention is to use the linefeed character (also called newline). The | 666 | convention is to use the linefeed character (also called newline). The |
| @@ -808,9 +813,6 @@ If that is valid, it returns @var{coding-system}. | |||
| 808 | Otherwise it signals an error with condition @code{coding-system-error}. | 813 | Otherwise it signals an error with condition @code{coding-system-error}. |
| 809 | @end defun | 814 | @end defun |
| 810 | 815 | ||
| 811 | @cindex EOL conversion | ||
| 812 | @cindex end-of-line conversion | ||
| 813 | @cindex line end conversion | ||
| 814 | @defun coding-system-eol-type coding-system | 816 | @defun coding-system-eol-type coding-system |
| 815 | This function returns the type of end-of-line (a.k.a.@: @dfn{eol}) | 817 | This function returns the type of end-of-line (a.k.a.@: @dfn{eol}) |
| 816 | conversion used by @var{coding-system}. If @var{coding-system} | 818 | conversion used by @var{coding-system}. If @var{coding-system} |
| @@ -1103,11 +1105,11 @@ for decoding (in case @var{operation} does decoding), and | |||
| 1103 | @var{encoding-system} is the coding system for encoding (in case | 1105 | @var{encoding-system} is the coding system for encoding (in case |
| 1104 | @var{operation} does encoding). | 1106 | @var{operation} does encoding). |
| 1105 | 1107 | ||
| 1106 | The argument @var{operation} should be a symbol, any one of | 1108 | The argument @var{operation} is a symbol, one of @code{write-region}, |
| 1107 | @code{insert-file-contents}, @code{write-region}, | ||
| 1108 | @code{start-process}, @code{call-process}, @code{call-process-region}, | 1109 | @code{start-process}, @code{call-process}, @code{call-process-region}, |
| 1109 | or @code{open-network-stream}. These are the names of the Emacs I/O | 1110 | @code{insert-file-contents}, or @code{open-network-stream}. These are |
| 1110 | primitives that can do character code and eol conversion. | 1111 | the names of the Emacs I/O primitives that can do character code and |
| 1112 | eol conversion. | ||
| 1111 | 1113 | ||
| 1112 | The remaining arguments should be the same arguments that might be given | 1114 | The remaining arguments should be the same arguments that might be given |
| 1113 | to the corresponding I/O primitive. Depending on the primitive, one | 1115 | to the corresponding I/O primitive. Depending on the primitive, one |
| @@ -1163,9 +1165,9 @@ of the right way to use the variable: | |||
| 1163 | (insert-file-contents filename)) | 1165 | (insert-file-contents filename)) |
| 1164 | @end example | 1166 | @end example |
| 1165 | 1167 | ||
| 1166 | When its value is non-@code{nil}, @code{coding-system-for-read} takes | 1168 | When its value is non-@code{nil}, this variable takes precedence over |
| 1167 | precedence over all other methods of specifying a coding system to use for | 1169 | all other methods of specifying a coding system to use for input, |
| 1168 | input, including @code{file-coding-system-alist}, | 1170 | including @code{file-coding-system-alist}, |
| 1169 | @code{process-coding-system-alist} and | 1171 | @code{process-coding-system-alist} and |
| 1170 | @code{network-coding-system-alist}. | 1172 | @code{network-coding-system-alist}. |
| 1171 | @end defvar | 1173 | @end defvar |
| @@ -1190,8 +1192,8 @@ decoding functions (@pxref{Explicit Encoding}). | |||
| 1190 | 1192 | ||
| 1191 | @node Explicit Encoding | 1193 | @node Explicit Encoding |
| 1192 | @subsection Explicit Encoding and Decoding | 1194 | @subsection Explicit Encoding and Decoding |
| 1193 | @cindex encoding text | 1195 | @cindex encoding in coding systems |
| 1194 | @cindex decoding text | 1196 | @cindex decoding in coding systems |
| 1195 | 1197 | ||
| 1196 | All the operations that transfer text in and out of Emacs have the | 1198 | All the operations that transfer text in and out of Emacs have the |
| 1197 | ability to use a coding system to encode or decode the text. | 1199 | ability to use a coding system to encode or decode the text. |
diff --git a/lispref/numbers.texi b/lispref/numbers.texi index 6e54af3319c..4d7f3e7578a 100644 --- a/lispref/numbers.texi +++ b/lispref/numbers.texi | |||
| @@ -222,6 +222,7 @@ down to an integer. | |||
| 222 | 222 | ||
| 223 | @node Predicates on Numbers | 223 | @node Predicates on Numbers |
| 224 | @section Type Predicates for Numbers | 224 | @section Type Predicates for Numbers |
| 225 | @cindex predicates for numbers | ||
| 225 | 226 | ||
| 226 | The functions in this section test for numbers, or for a specific | 227 | The functions in this section test for numbers, or for a specific |
| 227 | type of number. The functions @code{integerp} and @code{floatp} can | 228 | type of number. The functions @code{integerp} and @code{floatp} can |
| @@ -267,7 +268,8 @@ if so, @code{nil} otherwise. The argument must be a number. | |||
| 267 | 268 | ||
| 268 | @node Comparison of Numbers | 269 | @node Comparison of Numbers |
| 269 | @section Comparison of Numbers | 270 | @section Comparison of Numbers |
| 270 | @cindex number equality | 271 | @cindex number comparison |
| 272 | @cindex comparing numbers | ||
| 271 | 273 | ||
| 272 | To test numbers for numerical equality, you should normally use | 274 | To test numbers for numerical equality, you should normally use |
| 273 | @code{=}, not @code{eq}. There can be many distinct floating point | 275 | @code{=}, not @code{eq}. There can be many distinct floating point |
| @@ -388,6 +390,8 @@ This function returns the absolute value of @var{number}. | |||
| 388 | @node Numeric Conversions | 390 | @node Numeric Conversions |
| 389 | @section Numeric Conversions | 391 | @section Numeric Conversions |
| 390 | @cindex rounding in conversions | 392 | @cindex rounding in conversions |
| 393 | @cindex number conversions | ||
| 394 | @cindex converting numbers | ||
| 391 | 395 | ||
| 392 | To convert an integer to floating point, use the function @code{float}. | 396 | To convert an integer to floating point, use the function @code{float}. |
| 393 | 397 | ||
| @@ -480,6 +484,7 @@ depending on your machine. | |||
| 480 | 484 | ||
| 481 | @node Arithmetic Operations | 485 | @node Arithmetic Operations |
| 482 | @section Arithmetic Operations | 486 | @section Arithmetic Operations |
| 487 | @cindex arithmetic operations | ||
| 483 | 488 | ||
| 484 | Emacs Lisp provides the traditional four arithmetic operations: | 489 | Emacs Lisp provides the traditional four arithmetic operations: |
| 485 | addition, subtraction, multiplication, and division. Remainder and modulus | 490 | addition, subtraction, multiplication, and division. Remainder and modulus |
| @@ -732,6 +737,8 @@ and returns that value as a floating point number. | |||
| 732 | 737 | ||
| 733 | @node Bitwise Operations | 738 | @node Bitwise Operations |
| 734 | @section Bitwise Operations on Integers | 739 | @section Bitwise Operations on Integers |
| 740 | @cindex bitwise arithmetic | ||
| 741 | @cindex logical arithmetic | ||
| 735 | 742 | ||
| 736 | In a computer, an integer is represented as a binary number, a | 743 | In a computer, an integer is represented as a binary number, a |
| 737 | sequence of @dfn{bits} (digits which are either zero or one). A bitwise | 744 | sequence of @dfn{bits} (digits which are either zero or one). A bitwise |
| @@ -913,8 +920,6 @@ Here are other examples: | |||
| 913 | @end defun | 920 | @end defun |
| 914 | 921 | ||
| 915 | @defun logand &rest ints-or-markers | 922 | @defun logand &rest ints-or-markers |
| 916 | @cindex logical and | ||
| 917 | @cindex bitwise and | ||
| 918 | This function returns the ``logical and'' of the arguments: the | 923 | This function returns the ``logical and'' of the arguments: the |
| 919 | @var{n}th bit is set in the result if, and only if, the @var{n}th bit is | 924 | @var{n}th bit is set in the result if, and only if, the @var{n}th bit is |
| 920 | set in all the arguments. (``Set'' means that the value of the bit is 1 | 925 | set in all the arguments. (``Set'' means that the value of the bit is 1 |
| @@ -966,8 +971,6 @@ because its binary representation consists entirely of ones. If | |||
| 966 | @end defun | 971 | @end defun |
| 967 | 972 | ||
| 968 | @defun logior &rest ints-or-markers | 973 | @defun logior &rest ints-or-markers |
| 969 | @cindex logical inclusive or | ||
| 970 | @cindex bitwise or | ||
| 971 | This function returns the ``inclusive or'' of its arguments: the @var{n}th bit | 974 | This function returns the ``inclusive or'' of its arguments: the @var{n}th bit |
| 972 | is set in the result if, and only if, the @var{n}th bit is set in at least | 975 | is set in the result if, and only if, the @var{n}th bit is set in at least |
| 973 | one of the arguments. If there are no arguments, the result is zero, | 976 | one of the arguments. If there are no arguments, the result is zero, |
| @@ -993,8 +996,6 @@ passed just one argument, it returns that argument. | |||
| 993 | @end defun | 996 | @end defun |
| 994 | 997 | ||
| 995 | @defun logxor &rest ints-or-markers | 998 | @defun logxor &rest ints-or-markers |
| 996 | @cindex bitwise exclusive or | ||
| 997 | @cindex logical exclusive or | ||
| 998 | This function returns the ``exclusive or'' of its arguments: the | 999 | This function returns the ``exclusive or'' of its arguments: the |
| 999 | @var{n}th bit is set in the result if, and only if, the @var{n}th bit is | 1000 | @var{n}th bit is set in the result if, and only if, the @var{n}th bit is |
| 1000 | set in an odd number of the arguments. If there are no arguments, the | 1001 | set in an odd number of the arguments. If there are no arguments, the |
| @@ -1020,8 +1021,6 @@ result is 0, which is an identity element for this operation. If | |||
| 1020 | @end defun | 1021 | @end defun |
| 1021 | 1022 | ||
| 1022 | @defun lognot integer | 1023 | @defun lognot integer |
| 1023 | @cindex logical not | ||
| 1024 | @cindex bitwise not | ||
| 1025 | This function returns the logical complement of its argument: the @var{n}th | 1024 | This function returns the logical complement of its argument: the @var{n}th |
| 1026 | bit is one in the result if, and only if, the @var{n}th bit is zero in | 1025 | bit is one in the result if, and only if, the @var{n}th bit is zero in |
| 1027 | @var{integer}, and vice-versa. | 1026 | @var{integer}, and vice-versa. |
| @@ -1039,6 +1038,7 @@ bit is one in the result if, and only if, the @var{n}th bit is zero in | |||
| 1039 | @section Standard Mathematical Functions | 1038 | @section Standard Mathematical Functions |
| 1040 | @cindex transcendental functions | 1039 | @cindex transcendental functions |
| 1041 | @cindex mathematical functions | 1040 | @cindex mathematical functions |
| 1041 | @cindex floating-point functions | ||
| 1042 | 1042 | ||
| 1043 | These mathematical functions allow integers as well as floating point | 1043 | These mathematical functions allow integers as well as floating point |
| 1044 | numbers as arguments. | 1044 | numbers as arguments. |
| @@ -1066,7 +1066,7 @@ pi/2 | |||
| 1066 | @math{\pi/2} | 1066 | @math{\pi/2} |
| 1067 | @end tex | 1067 | @end tex |
| 1068 | (inclusive) whose sine is @var{arg}; if, however, @var{arg} is out of | 1068 | (inclusive) whose sine is @var{arg}; if, however, @var{arg} is out of |
| 1069 | range (outside [-1, 1]), it signals a @code{domain-error} error. | 1069 | range (outside [@minus{}1, 1]), it signals a @code{domain-error} error. |
| 1070 | @end defun | 1070 | @end defun |
| 1071 | 1071 | ||
| 1072 | @defun acos arg | 1072 | @defun acos arg |
| @@ -1078,7 +1078,7 @@ pi | |||
| 1078 | @math{\pi} | 1078 | @math{\pi} |
| 1079 | @end tex | 1079 | @end tex |
| 1080 | (inclusive) whose cosine is @var{arg}; if, however, @var{arg} is out | 1080 | (inclusive) whose cosine is @var{arg}; if, however, @var{arg} is out |
| 1081 | of range (outside [-1, 1]), it signals a @code{domain-error} error. | 1081 | of range (outside [@minus{}1, 1]), it signals a @code{domain-error} error. |
| 1082 | @end defun | 1082 | @end defun |
| 1083 | 1083 | ||
| 1084 | @defun atan y &optional x | 1084 | @defun atan y &optional x |
| @@ -1183,7 +1183,7 @@ generates the same sequence of numbers. Emacs always starts with the | |||
| 1183 | same seed value, so the sequence of values of @code{random} is actually | 1183 | same seed value, so the sequence of values of @code{random} is actually |
| 1184 | the same in each Emacs run! For example, in one operating system, the | 1184 | the same in each Emacs run! For example, in one operating system, the |
| 1185 | first call to @code{(random)} after you start Emacs always returns | 1185 | first call to @code{(random)} after you start Emacs always returns |
| 1186 | -1457731, and the second one always returns -7692030. This | 1186 | @minus{}1457731, and the second one always returns @minus{}7692030. This |
| 1187 | repeatability is helpful for debugging. | 1187 | repeatability is helpful for debugging. |
| 1188 | 1188 | ||
| 1189 | If you want random numbers that don't always come out the same, execute | 1189 | If you want random numbers that don't always come out the same, execute |
diff --git a/lispref/objects.texi b/lispref/objects.texi index 3fc11631111..e75cde70202 100644 --- a/lispref/objects.texi +++ b/lispref/objects.texi | |||
| @@ -288,7 +288,7 @@ you @emph{must} use a second @samp{\} to quote it: @samp{?\\}. | |||
| 288 | @cindex @samp{\a} | 288 | @cindex @samp{\a} |
| 289 | @cindex backspace | 289 | @cindex backspace |
| 290 | @cindex @samp{\b} | 290 | @cindex @samp{\b} |
| 291 | @cindex tab | 291 | @cindex tab (ASCII character) |
| 292 | @cindex @samp{\t} | 292 | @cindex @samp{\t} |
| 293 | @cindex vertical tab | 293 | @cindex vertical tab |
| 294 | @cindex @samp{\v} | 294 | @cindex @samp{\v} |
| @@ -296,11 +296,11 @@ you @emph{must} use a second @samp{\} to quote it: @samp{?\\}. | |||
| 296 | @cindex @samp{\f} | 296 | @cindex @samp{\f} |
| 297 | @cindex newline | 297 | @cindex newline |
| 298 | @cindex @samp{\n} | 298 | @cindex @samp{\n} |
| 299 | @cindex return | 299 | @cindex return (ASCII character) |
| 300 | @cindex @samp{\r} | 300 | @cindex @samp{\r} |
| 301 | @cindex escape | 301 | @cindex escape (ASCII character) |
| 302 | @cindex @samp{\e} | 302 | @cindex @samp{\e} |
| 303 | @cindex space | 303 | @cindex space (ASCII character) |
| 304 | @cindex @samp{\s} | 304 | @cindex @samp{\s} |
| 305 | You can express the characters control-g, backspace, tab, newline, | 305 | You can express the characters control-g, backspace, tab, newline, |
| 306 | vertical tab, formfeed, space, return, del, and escape as @samp{?\a}, | 306 | vertical tab, formfeed, space, return, del, and escape as @samp{?\a}, |
| @@ -661,7 +661,7 @@ empty list. The empty list is actually the symbol @code{nil}. | |||
| 661 | cells are used as part of lists, the phrase @dfn{list structure} has | 661 | cells are used as part of lists, the phrase @dfn{list structure} has |
| 662 | come to refer to any structure made out of cons cells. | 662 | come to refer to any structure made out of cons cells. |
| 663 | 663 | ||
| 664 | @cindex atom | 664 | @cindex atoms |
| 665 | Because cons cells are so central to Lisp, we also have a word for | 665 | Because cons cells are so central to Lisp, we also have a word for |
| 666 | ``an object which is not a cons cell.'' These objects are called | 666 | ``an object which is not a cons cell.'' These objects are called |
| 667 | @dfn{atoms}. | 667 | @dfn{atoms}. |
| @@ -753,7 +753,7 @@ buttercup)}, sketched in a different manner: | |||
| 753 | @end group | 753 | @end group |
| 754 | @end smallexample | 754 | @end smallexample |
| 755 | 755 | ||
| 756 | @cindex @code{nil} in lists | 756 | @cindex @code{nil} as a list |
| 757 | @cindex empty list | 757 | @cindex empty list |
| 758 | A list with no elements in it is the @dfn{empty list}; it is identical | 758 | A list with no elements in it is the @dfn{empty list}; it is identical |
| 759 | to the symbol @code{nil}. In other words, @code{nil} is both a symbol | 759 | to the symbol @code{nil}. In other words, @code{nil} is both a symbol |
| @@ -1493,7 +1493,7 @@ uniquely). | |||
| 1493 | 1493 | ||
| 1494 | @node Window Configuration Type | 1494 | @node Window Configuration Type |
| 1495 | @subsection Window Configuration Type | 1495 | @subsection Window Configuration Type |
| 1496 | @cindex screen layout | 1496 | @cindex window layout in a frame |
| 1497 | 1497 | ||
| 1498 | A @dfn{window configuration} stores information about the positions, | 1498 | A @dfn{window configuration} stores information about the positions, |
| 1499 | sizes, and contents of the windows in a frame, so you can recreate the | 1499 | sizes, and contents of the windows in a frame, so you can recreate the |
| @@ -1507,6 +1507,7 @@ window configurations. | |||
| 1507 | @node Frame Configuration Type | 1507 | @node Frame Configuration Type |
| 1508 | @subsection Frame Configuration Type | 1508 | @subsection Frame Configuration Type |
| 1509 | @cindex screen layout | 1509 | @cindex screen layout |
| 1510 | @cindex window layout, all frames | ||
| 1510 | 1511 | ||
| 1511 | A @dfn{frame configuration} stores information about the positions, | 1512 | A @dfn{frame configuration} stores information about the positions, |
| 1512 | sizes, and contents of the windows in all frames. It is actually | 1513 | sizes, and contents of the windows in all frames. It is actually |
| @@ -1998,7 +1999,6 @@ always true. | |||
| 1998 | @end group | 1999 | @end group |
| 1999 | @end example | 2000 | @end example |
| 2000 | 2001 | ||
| 2001 | @cindex equality of strings | ||
| 2002 | Comparison of strings is case-sensitive, but does not take account of | 2002 | Comparison of strings is case-sensitive, but does not take account of |
| 2003 | text properties---it compares only the characters in the strings. For | 2003 | text properties---it compares only the characters in the strings. For |
| 2004 | technical reasons, a unibyte string and a multibyte string are | 2004 | technical reasons, a unibyte string and a multibyte string are |
diff --git a/lispref/os.texi b/lispref/os.texi index 9fde03b650c..498cc857eab 100644 --- a/lispref/os.texi +++ b/lispref/os.texi | |||
| @@ -54,7 +54,7 @@ can customize these actions. | |||
| 54 | 54 | ||
| 55 | @node Startup Summary | 55 | @node Startup Summary |
| 56 | @subsection Summary: Sequence of Actions at Startup | 56 | @subsection Summary: Sequence of Actions at Startup |
| 57 | @cindex initialization | 57 | @cindex initialization of Emacs |
| 58 | @cindex startup of Emacs | 58 | @cindex startup of Emacs |
| 59 | @cindex @file{startup.el} | 59 | @cindex @file{startup.el} |
| 60 | 60 | ||
| @@ -622,6 +622,7 @@ convenient way to test parts of this string is with | |||
| 622 | @code{string-match}. | 622 | @code{string-match}. |
| 623 | @end defvar | 623 | @end defvar |
| 624 | 624 | ||
| 625 | @cindex system type and name | ||
| 625 | @defvar system-type | 626 | @defvar system-type |
| 626 | The value of this variable is a symbol indicating the type of operating | 627 | The value of this variable is a symbol indicating the type of operating |
| 627 | system Emacs is operating on. Here is a table of the possible values: | 628 | system Emacs is operating on. Here is a table of the possible values: |
| @@ -885,6 +886,7 @@ indicating whether the privilege is currently enabled. | |||
| 885 | 886 | ||
| 886 | @node User Identification | 887 | @node User Identification |
| 887 | @section User Identification | 888 | @section User Identification |
| 889 | @cindex user identification | ||
| 888 | 890 | ||
| 889 | @defvar init-file-user | 891 | @defvar init-file-user |
| 890 | This variable says which user's init files should be used by | 892 | This variable says which user's init files should be used by |
| @@ -1308,6 +1310,7 @@ the inverse conversion, use @code{float-time}. | |||
| 1308 | 1310 | ||
| 1309 | @node Processor Run Time | 1311 | @node Processor Run Time |
| 1310 | @section Processor Run time | 1312 | @section Processor Run time |
| 1313 | @cindex processor run time | ||
| 1311 | 1314 | ||
| 1312 | @defun get-internal-run-time | 1315 | @defun get-internal-run-time |
| 1313 | This function returns the processor run time used by Emacs as a list | 1316 | This function returns the processor run time used by Emacs as a list |
| @@ -1418,20 +1421,15 @@ the timer runs only once. | |||
| 1418 | 1421 | ||
| 1419 | @var{time} may specify an absolute or a relative time. | 1422 | @var{time} may specify an absolute or a relative time. |
| 1420 | 1423 | ||
| 1421 | Absolute times may be specified in a wide variety of formats; this | 1424 | Absolute times may be specified using a string with a limited variety |
| 1422 | function tries to accept all the commonly used date formats. The most | 1425 | of formats, and are taken to be times @emph{today}, even if already in |
| 1423 | convenient formats are strings. Valid such formats include these two, | 1426 | the past. The recognized forms are @samp{@var{xxxx}}, |
| 1424 | 1427 | @samp{@var{x}:@var{xx}}, or @samp{@var{xx}:@var{xx}} (military time), | |
| 1425 | @example | 1428 | and @samp{@var{xx}am}, @samp{@var{xx}AM}, @samp{@var{xx}pm}, |
| 1426 | @var{year}-@var{month}-@var{day} @var{hour}:@var{min}:@var{sec} @var{timezone} | 1429 | @samp{@var{xx}PM}, @samp{@var{xx}:@var{xx}am}, |
| 1427 | 1430 | @samp{@var{xx}:@var{xx}AM}, @samp{@var{xx}:@var{xx}pm}, or | |
| 1428 | @var{hour}:@var{min}:@var{sec} @var{timezone} @var{month}/@var{day}/@var{year} | 1431 | @samp{@var{xx}:@var{xx}PM}. A period can be used instead of a colon |
| 1429 | @end example | 1432 | to separate the hour and minute parts. |
| 1430 | |||
| 1431 | @noindent | ||
| 1432 | where in both examples all fields are numbers; the format that | ||
| 1433 | @code{current-time-string} returns is also allowed, and many others | ||
| 1434 | as well. | ||
| 1435 | 1433 | ||
| 1436 | To specify a relative time as a string, use numbers followed by units. | 1434 | To specify a relative time as a string, use numbers followed by units. |
| 1437 | For example: | 1435 | For example: |
| @@ -1449,8 +1447,9 @@ For relative time values, Emacs considers a month to be exactly thirty | |||
| 1449 | days, and a year to be exactly 365.25 days. | 1447 | days, and a year to be exactly 365.25 days. |
| 1450 | 1448 | ||
| 1451 | Not all convenient formats are strings. If @var{time} is a number | 1449 | Not all convenient formats are strings. If @var{time} is a number |
| 1452 | (integer or floating point), that specifies a relative time measured | 1450 | (integer or floating point), that specifies a relative time measured in |
| 1453 | in seconds. | 1451 | seconds. The result of @code{encode-time} can also be used to specify |
| 1452 | an absolute value for @var{time}. | ||
| 1454 | 1453 | ||
| 1455 | In most cases, @var{repeat} has no effect on when @emph{first} call | 1454 | In most cases, @var{repeat} has no effect on when @emph{first} call |
| 1456 | takes place---@var{time} alone specifies that. There is one exception: | 1455 | takes place---@var{time} alone specifies that. There is one exception: |
| @@ -1695,6 +1694,7 @@ is the character Emacs currently uses for quitting, usually @kbd{C-g}. | |||
| 1695 | 1694 | ||
| 1696 | @node Recording Input | 1695 | @node Recording Input |
| 1697 | @subsection Recording Input | 1696 | @subsection Recording Input |
| 1697 | @cindex recording input | ||
| 1698 | 1698 | ||
| 1699 | @defun recent-keys | 1699 | @defun recent-keys |
| 1700 | This function returns a vector containing the last 300 input events from | 1700 | This function returns a vector containing the last 300 input events from |
| @@ -1868,6 +1868,7 @@ is called with one argument, a property list that describes the sound. | |||
| 1868 | 1868 | ||
| 1869 | @node X11 Keysyms | 1869 | @node X11 Keysyms |
| 1870 | @section Operating on X11 Keysyms | 1870 | @section Operating on X11 Keysyms |
| 1871 | @cindex X11 keysyms | ||
| 1871 | 1872 | ||
| 1872 | To define system-specific X11 keysyms, set the variable | 1873 | To define system-specific X11 keysyms, set the variable |
| 1873 | @code{system-key-alist}. | 1874 | @code{system-key-alist}. |
| @@ -1921,7 +1922,6 @@ how to swap the Meta and Alt modifiers within Emacs: | |||
| 1921 | @node Batch Mode | 1922 | @node Batch Mode |
| 1922 | @section Batch Mode | 1923 | @section Batch Mode |
| 1923 | @cindex batch mode | 1924 | @cindex batch mode |
| 1924 | @cindex noninteractive use | ||
| 1925 | 1925 | ||
| 1926 | The command-line option @samp{-batch} causes Emacs to run | 1926 | The command-line option @samp{-batch} causes Emacs to run |
| 1927 | noninteractively. In this mode, Emacs does not read commands from the | 1927 | noninteractively. In this mode, Emacs does not read commands from the |
diff --git a/lispref/positions.texi b/lispref/positions.texi index 993bc31511f..939b3f75fc1 100644 --- a/lispref/positions.texi +++ b/lispref/positions.texi | |||
| @@ -123,6 +123,7 @@ size of @var{buffer}. | |||
| 123 | 123 | ||
| 124 | @node Motion | 124 | @node Motion |
| 125 | @section Motion | 125 | @section Motion |
| 126 | @cindex motion by chars, words, lines, lists | ||
| 126 | 127 | ||
| 127 | Motion functions change the value of point, either relative to the | 128 | Motion functions change the value of point, either relative to the |
| 128 | current value of point, relative to the beginning or end of the buffer, | 129 | current value of point, relative to the beginning or end of the buffer, |
| @@ -235,6 +236,7 @@ If this variable is non-@code{nil}, certain motion functions including | |||
| 235 | 236 | ||
| 236 | @node Buffer End Motion | 237 | @node Buffer End Motion |
| 237 | @subsection Motion to an End of the Buffer | 238 | @subsection Motion to an End of the Buffer |
| 239 | @cindex move to beginning or end of buffer | ||
| 238 | 240 | ||
| 239 | To move point to the beginning of the buffer, write: | 241 | To move point to the beginning of the buffer, write: |
| 240 | 242 | ||
| @@ -642,6 +644,7 @@ beginning of the first screen line. @xref{Minibuffer Contents}. | |||
| 642 | @cindex sexp motion | 644 | @cindex sexp motion |
| 643 | @cindex Lisp expression motion | 645 | @cindex Lisp expression motion |
| 644 | @cindex list motion | 646 | @cindex list motion |
| 647 | @cindex balanced parenthesis motion | ||
| 645 | 648 | ||
| 646 | Here are several functions concerned with balanced-parenthesis | 649 | Here are several functions concerned with balanced-parenthesis |
| 647 | expressions (also called @dfn{sexps} in connection with moving across | 650 | expressions (also called @dfn{sexps} in connection with moving across |
| @@ -827,7 +830,6 @@ Configurations}). | |||
| 827 | @defspec save-excursion body@dots{} | 830 | @defspec save-excursion body@dots{} |
| 828 | @cindex mark excursion | 831 | @cindex mark excursion |
| 829 | @cindex point excursion | 832 | @cindex point excursion |
| 830 | @cindex current buffer excursion | ||
| 831 | The @code{save-excursion} special form saves the identity of the current | 833 | The @code{save-excursion} special form saves the identity of the current |
| 832 | buffer and the values of point and the mark in it, evaluates | 834 | buffer and the values of point and the mark in it, evaluates |
| 833 | @var{body}, and finally restores the buffer and its saved values of | 835 | @var{body}, and finally restores the buffer and its saved values of |
diff --git a/lispref/processes.texi b/lispref/processes.texi index 2bf545bc9f1..fbc8b785c11 100644 --- a/lispref/processes.texi +++ b/lispref/processes.texi | |||
| @@ -146,6 +146,8 @@ file name. | |||
| 146 | 146 | ||
| 147 | @node Shell Arguments | 147 | @node Shell Arguments |
| 148 | @section Shell Arguments | 148 | @section Shell Arguments |
| 149 | @cindex arguments for shell commands | ||
| 150 | @cindex shell command arguments | ||
| 149 | 151 | ||
| 150 | Lisp programs sometimes need to run a shell and give it a command | 152 | Lisp programs sometimes need to run a shell and give it a command |
| 151 | that contains file names that were specified by the user. These | 153 | that contains file names that were specified by the user. These |
| @@ -347,7 +349,7 @@ handler could be different from the handler chosen for the | |||
| 347 | @var{infile} is on another remote host. Or @code{default-directory} | 349 | @var{infile} is on another remote host. Or @code{default-directory} |
| 348 | could be non-special, whereas @var{infile} is on a remote host.) | 350 | could be non-special, whereas @var{infile} is on a remote host.) |
| 349 | 351 | ||
| 350 | If @var{buffer} has the form @code{(@var{real-destination} | 352 | If @var{buffer} is a list of the form @code{(@var{real-destination} |
| 351 | @var{error-destination})}, and @var{error-destination} names a file, | 353 | @var{error-destination})}, and @var{error-destination} names a file, |
| 352 | then the same remarks as for @var{infile} apply. | 354 | then the same remarks as for @var{infile} apply. |
| 353 | 355 | ||
| @@ -1236,6 +1238,7 @@ there is no filter function: | |||
| 1236 | 1238 | ||
| 1237 | @node Decoding Output | 1239 | @node Decoding Output |
| 1238 | @subsection Decoding Process Output | 1240 | @subsection Decoding Process Output |
| 1241 | @cindex decode process output | ||
| 1239 | 1242 | ||
| 1240 | When Emacs writes process output directly into a multibyte buffer, | 1243 | When Emacs writes process output directly into a multibyte buffer, |
| 1241 | it decodes the output according to the process output coding system. | 1244 | it decodes the output according to the process output coding system. |
| @@ -1285,6 +1288,7 @@ This function returns the filter multibyte flag of @var{process}. | |||
| 1285 | 1288 | ||
| 1286 | @node Accepting Output | 1289 | @node Accepting Output |
| 1287 | @subsection Accepting Output from Processes | 1290 | @subsection Accepting Output from Processes |
| 1291 | @cindex accept input from processes | ||
| 1288 | 1292 | ||
| 1289 | Output from asynchronous subprocesses normally arrives only while | 1293 | Output from asynchronous subprocesses normally arrives only while |
| 1290 | Emacs is waiting for some sort of external event, such as elapsed time | 1294 | Emacs is waiting for some sort of external event, such as elapsed time |
| @@ -1328,7 +1332,7 @@ arrived. | |||
| 1328 | @node Sentinels | 1332 | @node Sentinels |
| 1329 | @section Sentinels: Detecting Process Status Changes | 1333 | @section Sentinels: Detecting Process Status Changes |
| 1330 | @cindex process sentinel | 1334 | @cindex process sentinel |
| 1331 | @cindex sentinel | 1335 | @cindex sentinel (of process) |
| 1332 | 1336 | ||
| 1333 | A @dfn{process sentinel} is a function that is called whenever the | 1337 | A @dfn{process sentinel} is a function that is called whenever the |
| 1334 | associated process changes status for any reason, including signals | 1338 | associated process changes status for any reason, including signals |
| @@ -1624,7 +1628,7 @@ The associated value is the process filter function. | |||
| 1624 | @item :sentinel | 1628 | @item :sentinel |
| 1625 | The associated value is the process sentinel function. | 1629 | The associated value is the process sentinel function. |
| 1626 | @item :remote | 1630 | @item :remote |
| 1627 | In a connection, this is the address in internal format of the remote peer. | 1631 | In a connection, the address in internal format of the remote peer. |
| 1628 | @item :local | 1632 | @item :local |
| 1629 | The local address, in internal format. | 1633 | The local address, in internal format. |
| 1630 | @item :service | 1634 | @item :service |
| @@ -1643,6 +1647,7 @@ For an ordinary child process, this function always returns @code{t}. | |||
| 1643 | 1647 | ||
| 1644 | @node Network Servers | 1648 | @node Network Servers |
| 1645 | @section Network Servers | 1649 | @section Network Servers |
| 1650 | @cindex network servers | ||
| 1646 | 1651 | ||
| 1647 | You create a server by calling @code{make-network-process} with | 1652 | You create a server by calling @code{make-network-process} with |
| 1648 | @code{:server t}. The server will listen for connection requests from | 1653 | @code{:server t}. The server will listen for connection requests from |
| @@ -1722,7 +1727,7 @@ sets its remote peer address to @var{address}. | |||
| 1722 | @section Low-Level Network Access | 1727 | @section Low-Level Network Access |
| 1723 | 1728 | ||
| 1724 | You can also create network connections by operating at a lower | 1729 | You can also create network connections by operating at a lower |
| 1725 | level that that of @code{open-network-stream}, using | 1730 | level than that of @code{open-network-stream}, using |
| 1726 | @code{make-network-process}. | 1731 | @code{make-network-process}. |
| 1727 | 1732 | ||
| 1728 | @menu | 1733 | @menu |
| @@ -2061,8 +2066,9 @@ number @var{p}. @code{format-network-address} converts that to the | |||
| 2061 | string @code{"@var{a}.@var{b}.@var{c}.@var{d}:@var{p}"}. | 2066 | string @code{"@var{a}.@var{b}.@var{c}.@var{d}:@var{p}"}. |
| 2062 | 2067 | ||
| 2063 | A nine-element vector @code{[@var{a} @var{b} @var{c} @var{d} @var{e} | 2068 | A nine-element vector @code{[@var{a} @var{b} @var{c} @var{d} @var{e} |
| 2064 | @var{f} @var{g} @var{h} @var{p}]} represents an IPv6 address and port | 2069 | @var{f} @var{g} @var{h} @var{p}]} represents an IPv6 address along |
| 2065 | number. @code{format-network-address} converts that to the string | 2070 | with a port number. @code{format-network-address} converts that to |
| 2071 | the string | ||
| 2066 | @code{"[@var{a}:@var{b}:@var{c}:@var{d}:@var{e}:@var{f}:@var{g}:@var{h}]:@var{p}"}. | 2072 | @code{"[@var{a}:@var{b}:@var{c}:@var{d}:@var{e}:@var{f}:@var{g}:@var{h}]:@var{p}"}. |
| 2067 | 2073 | ||
| 2068 | If the vector does not include the port number, @var{p}, or if | 2074 | If the vector does not include the port number, @var{p}, or if |
| @@ -2072,6 +2078,7 @@ If the vector does not include the port number, @var{p}, or if | |||
| 2072 | 2078 | ||
| 2073 | @node Byte Packing | 2079 | @node Byte Packing |
| 2074 | @section Packing and Unpacking Byte Arrays | 2080 | @section Packing and Unpacking Byte Arrays |
| 2081 | @cindex byte packing and unpacking | ||
| 2075 | 2082 | ||
| 2076 | This section describes how to pack and unpack arrays of bytes, | 2083 | This section describes how to pack and unpack arrays of bytes, |
| 2077 | usually for binary network protocols. These functions convert byte arrays | 2084 | usually for binary network protocols. These functions convert byte arrays |
diff --git a/lispref/searching.texi b/lispref/searching.texi index 7fdbdb73d46..10e8c672962 100644 --- a/lispref/searching.texi +++ b/lispref/searching.texi | |||
| @@ -106,7 +106,7 @@ leaves point at the beginning of the match. | |||
| 106 | @end deffn | 106 | @end deffn |
| 107 | 107 | ||
| 108 | @deffn Command word-search-forward string &optional limit noerror repeat | 108 | @deffn Command word-search-forward string &optional limit noerror repeat |
| 109 | @cindex word search | 109 | @c @cindex word search Redundant |
| 110 | This function searches forward from point for a ``word'' match for | 110 | This function searches forward from point for a ``word'' match for |
| 111 | @var{string}. If it finds a match, it sets point to the end of the | 111 | @var{string}. If it finds a match, it sets point to the end of the |
| 112 | match found, and returns the new value of point. | 112 | match found, and returns the new value of point. |
| @@ -220,7 +220,7 @@ a regexp is a very powerful operation. This section explains how to write | |||
| 220 | regexps; the following section says how to search for them. | 220 | regexps; the following section says how to search for them. |
| 221 | 221 | ||
| 222 | @findex re-builder | 222 | @findex re-builder |
| 223 | @cindex authoring regular expressions | 223 | @cindex regular expressions, developing |
| 224 | For convenient interactive development of regular expressions, you | 224 | For convenient interactive development of regular expressions, you |
| 225 | can use the @kbd{M-x re-builder} command. It provides a convenient | 225 | can use the @kbd{M-x re-builder} command. It provides a convenient |
| 226 | interface for creating regular expressions, by giving immediate visual | 226 | interface for creating regular expressions, by giving immediate visual |
| @@ -309,17 +309,16 @@ first tries to match all three @samp{a}s; but the rest of the pattern is | |||
| 309 | The next alternative is for @samp{a*} to match only two @samp{a}s. With | 309 | The next alternative is for @samp{a*} to match only two @samp{a}s. With |
| 310 | this choice, the rest of the regexp matches successfully. | 310 | this choice, the rest of the regexp matches successfully. |
| 311 | 311 | ||
| 312 | @strong{Warning:} Nested repetition operators take a long time, | 312 | @strong{Warning:} Nested repetition operators can run for an |
| 313 | or even forever, if they | 313 | indefinitely long time, if they lead to ambiguous matching. For |
| 314 | lead to ambiguous matching. For example, trying to match the regular | 314 | example, trying to match the regular expression @samp{\(x+y*\)*a} |
| 315 | expression @samp{\(x+y*\)*a} against the string | 315 | against the string @samp{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxz} could |
| 316 | @samp{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxz} could take hours before it | 316 | take hours before it ultimately fails. Emacs must try each way of |
| 317 | ultimately fails. Emacs must try each way of grouping the 35 | 317 | grouping the @samp{x}s before concluding that none of them can work. |
| 318 | @samp{x}s before concluding that none of them can work. Even worse, | 318 | Even worse, @samp{\(x*\)*} can match the null string in infinitely |
| 319 | @samp{\(x*\)*} can match the null string in infinitely many ways, so | 319 | many ways, so it causes an infinite loop. To avoid these problems, |
| 320 | it causes an infinite loop. To avoid these problems, check nested | 320 | check nested repetitions carefully, to make sure that they do not |
| 321 | repetitions carefully, to make sure that they do not cause combinatorial | 321 | cause combinatorial explosions in backtracking. |
| 322 | explosions in backtracking. | ||
| 323 | 322 | ||
| 324 | @item @samp{+} | 323 | @item @samp{+} |
| 325 | @cindex @samp{+} in regexp | 324 | @cindex @samp{+} in regexp |
| @@ -1186,6 +1185,7 @@ match data around it, to prevent it from being overwritten. | |||
| 1186 | 1185 | ||
| 1187 | @node Replacing Match | 1186 | @node Replacing Match |
| 1188 | @subsection Replacing the Text that Matched | 1187 | @subsection Replacing the Text that Matched |
| 1188 | @cindex replace matched text | ||
| 1189 | 1189 | ||
| 1190 | This function replaces all or part of the text matched by the last | 1190 | This function replaces all or part of the text matched by the last |
| 1191 | search. It works by means of the match data. | 1191 | search. It works by means of the match data. |
| @@ -1543,7 +1543,8 @@ associated with it still exists. | |||
| 1543 | 1543 | ||
| 1544 | @node Search and Replace | 1544 | @node Search and Replace |
| 1545 | @section Search and Replace | 1545 | @section Search and Replace |
| 1546 | @cindex replacement | 1546 | @cindex replacement after search |
| 1547 | @cindex searching and replacing | ||
| 1547 | 1548 | ||
| 1548 | If you want to find all matches for a regexp in part of the buffer, | 1549 | If you want to find all matches for a regexp in part of the buffer, |
| 1549 | and replace them, the best way is to write an explicit loop using | 1550 | and replace them, the best way is to write an explicit loop using |
diff --git a/lispref/sequences.texi b/lispref/sequences.texi index ac5a16e261f..7e66549412b 100644 --- a/lispref/sequences.texi +++ b/lispref/sequences.texi | |||
| @@ -388,7 +388,7 @@ are often useful for objects known to be arrays. @xref{Sequence Functions}. | |||
| 388 | 388 | ||
| 389 | @node Vectors | 389 | @node Vectors |
| 390 | @section Vectors | 390 | @section Vectors |
| 391 | @cindex vector | 391 | @cindex vector (type) |
| 392 | 392 | ||
| 393 | Arrays in Lisp, like arrays in most languages, are blocks of memory | 393 | Arrays in Lisp, like arrays in most languages, are blocks of memory |
| 394 | whose elements can be accessed in constant time. A @dfn{vector} is a | 394 | whose elements can be accessed in constant time. A @dfn{vector} is a |
diff --git a/lispref/streams.texi b/lispref/streams.texi index 9bb66378e5f..7356c119a1e 100644 --- a/lispref/streams.texi +++ b/lispref/streams.texi | |||
| @@ -681,6 +681,7 @@ returns @code{"The buffer is foo"}. | |||
| 681 | 681 | ||
| 682 | @node Output Variables | 682 | @node Output Variables |
| 683 | @section Variables Affecting Output | 683 | @section Variables Affecting Output |
| 684 | @cindex output-controlling variables | ||
| 684 | 685 | ||
| 685 | @defvar standard-output | 686 | @defvar standard-output |
| 686 | The value of this variable is the default output stream---the stream | 687 | The value of this variable is the default output stream---the stream |
diff --git a/lispref/strings.texi b/lispref/strings.texi index 23f679d5bb9..af5a2fa14d3 100644 --- a/lispref/strings.texi +++ b/lispref/strings.texi | |||
| @@ -586,6 +586,7 @@ first character of @var{string} is the null character, @acronym{ASCII} code | |||
| 586 | @example | 586 | @example |
| 587 | (string-to-char "ABC") | 587 | (string-to-char "ABC") |
| 588 | @result{} 65 | 588 | @result{} 65 |
| 589 | |||
| 589 | (string-to-char "xyz") | 590 | (string-to-char "xyz") |
| 590 | @result{} 120 | 591 | @result{} 120 |
| 591 | (string-to-char "") | 592 | (string-to-char "") |
| @@ -1107,6 +1108,30 @@ This function returns the current buffer's case table. | |||
| 1107 | This sets the current buffer's case table to @var{table}. | 1108 | This sets the current buffer's case table to @var{table}. |
| 1108 | @end defun | 1109 | @end defun |
| 1109 | 1110 | ||
| 1111 | @defmac with-case-table table body@dots{} | ||
| 1112 | The @code{with-case-table} macro saves the current case table, makes | ||
| 1113 | @var{table} the current case table, evaluates the @var{body} forms, | ||
| 1114 | and finally restores the case table. The return value is the value of | ||
| 1115 | the last form in @var{body}. The case table is restored even in case | ||
| 1116 | of an abnormal exit via @code{throw} or error (@pxref{Nonlocal | ||
| 1117 | Exits}). | ||
| 1118 | @end defmac | ||
| 1119 | |||
| 1120 | Some language environments may modify the case conversions of | ||
| 1121 | @acronym{ASCII} characters; for example, in the Turkish language | ||
| 1122 | environment, the @acronym{ASCII} character @samp{I} is downcased into | ||
| 1123 | a Turkish ``dotless i''. This can interfere with code that requires | ||
| 1124 | ordinary ASCII case conversion, such as implementations of | ||
| 1125 | @acronym{ASCII}-based network protocols. In that case, use the | ||
| 1126 | @code{with-case-table} macro with the variable @var{ascii-case-table}, | ||
| 1127 | which stores the unmodified case table for the @acronym{ASCII} | ||
| 1128 | character set. | ||
| 1129 | |||
| 1130 | @defvar ascii-case-table | ||
| 1131 | The case table for the @acronym{ASCII} character set. This should not be | ||
| 1132 | modified by any language environment settings. | ||
| 1133 | @end defvar | ||
| 1134 | |||
| 1110 | The following three functions are convenient subroutines for packages | 1135 | The following three functions are convenient subroutines for packages |
| 1111 | that define non-@acronym{ASCII} character sets. They modify the specified | 1136 | that define non-@acronym{ASCII} character sets. They modify the specified |
| 1112 | case table @var{case-table}; they also modify the standard syntax table. | 1137 | case table @var{case-table}; they also modify the standard syntax table. |
diff --git a/lispref/symbols.texi b/lispref/symbols.texi index 4cd4bd42594..7234a75bd59 100644 --- a/lispref/symbols.texi +++ b/lispref/symbols.texi | |||
| @@ -139,7 +139,7 @@ symbol naming a function written in Lisp would have a lambda expression | |||
| 139 | 139 | ||
| 140 | @node Definitions, Creating Symbols, Symbol Components, Symbols | 140 | @node Definitions, Creating Symbols, Symbol Components, Symbols |
| 141 | @section Defining Symbols | 141 | @section Defining Symbols |
| 142 | @cindex definition of a symbol | 142 | @cindex definitions of symbols |
| 143 | 143 | ||
| 144 | A @dfn{definition} in Lisp is a special form that announces your | 144 | A @dfn{definition} in Lisp is a special form that announces your |
| 145 | intention to use a certain symbol in a particular way. In Emacs Lisp, | 145 | intention to use a certain symbol in a particular way. In Emacs Lisp, |
| @@ -436,6 +436,8 @@ names, and the other two elements are the corresponding values. | |||
| 436 | 436 | ||
| 437 | @node Plists and Alists | 437 | @node Plists and Alists |
| 438 | @subsection Property Lists and Association Lists | 438 | @subsection Property Lists and Association Lists |
| 439 | @cindex plist vs. alist | ||
| 440 | @cindex alist vs. plist | ||
| 439 | 441 | ||
| 440 | @cindex property lists vs association lists | 442 | @cindex property lists vs association lists |
| 441 | Association lists (@pxref{Association Lists}) are very similar to | 443 | Association lists (@pxref{Association Lists}) are very similar to |
diff --git a/lispref/syntax.texi b/lispref/syntax.texi index 47f09944880..340f74632bd 100644 --- a/lispref/syntax.texi +++ b/lispref/syntax.texi | |||
| @@ -6,7 +6,7 @@ | |||
| 6 | @setfilename ../info/syntax | 6 | @setfilename ../info/syntax |
| 7 | @node Syntax Tables, Abbrevs, Searching and Matching, Top | 7 | @node Syntax Tables, Abbrevs, Searching and Matching, Top |
| 8 | @chapter Syntax Tables | 8 | @chapter Syntax Tables |
| 9 | @cindex parsing | 9 | @cindex parsing buffer text |
| 10 | @cindex syntax table | 10 | @cindex syntax table |
| 11 | @cindex text parsing | 11 | @cindex text parsing |
| 12 | 12 | ||
| @@ -80,7 +80,7 @@ This function returns @code{t} if @var{object} is a syntax table. | |||
| 80 | 80 | ||
| 81 | @node Syntax Descriptors | 81 | @node Syntax Descriptors |
| 82 | @section Syntax Descriptors | 82 | @section Syntax Descriptors |
| 83 | @cindex syntax classes | 83 | @cindex syntax class |
| 84 | 84 | ||
| 85 | This section describes the syntax classes and flags that denote the | 85 | This section describes the syntax classes and flags that denote the |
| 86 | syntax of a character, and how they are represented as a @dfn{syntax | 86 | syntax of a character, and how they are represented as a @dfn{syntax |
| @@ -203,7 +203,7 @@ we do not want them to turn off the usual syntactic properties of | |||
| 203 | other characters in the quotation. | 203 | other characters in the quotation. |
| 204 | @end deffn | 204 | @end deffn |
| 205 | 205 | ||
| 206 | @deffn {Syntax class} @w{escape} | 206 | @deffn {Syntax class} @w{escape-syntax character} |
| 207 | An @dfn{escape character} (designated by @samp{\}) starts an escape | 207 | An @dfn{escape character} (designated by @samp{\}) starts an escape |
| 208 | sequence such as is used in C string and character constants. The | 208 | sequence such as is used in C string and character constants. The |
| 209 | character @samp{\} belongs to this class in both C and Lisp. (In C, it | 209 | character @samp{\} belongs to this class in both C and Lisp. (In C, it |
| @@ -253,7 +253,7 @@ English text has no comment characters. In Lisp, the semicolon | |||
| 253 | (@samp{;}) starts a comment and a newline or formfeed ends one. | 253 | (@samp{;}) starts a comment and a newline or formfeed ends one. |
| 254 | @end deffn | 254 | @end deffn |
| 255 | 255 | ||
| 256 | @deffn {Syntax class} @w{inherit} | 256 | @deffn {Syntax class} @w{inherit standard syntax} |
| 257 | This syntax class does not specify a particular syntax. It says to look | 257 | This syntax class does not specify a particular syntax. It says to look |
| 258 | in the standard syntax table to find the syntax of this character. The | 258 | in the standard syntax table to find the syntax of this character. The |
| 259 | designator for this syntax class is @samp{@@}. | 259 | designator for this syntax class is @samp{@@}. |
| @@ -1011,8 +1011,9 @@ corresponds to each syntax flag. | |||
| 1011 | @end multitable | 1011 | @end multitable |
| 1012 | 1012 | ||
| 1013 | @defun string-to-syntax @var{desc} | 1013 | @defun string-to-syntax @var{desc} |
| 1014 | This function returns the internal form @code{(@var{syntax-code} . | 1014 | This function returns the internal form corresponding to the syntax |
| 1015 | @var{matching-char})} corresponding to the syntax descriptor @var{desc}. | 1015 | descriptor @var{desc}, a cons cell @code{(@var{syntax-code} |
| 1016 | . @var{matching-char})}. | ||
| 1016 | @end defun | 1017 | @end defun |
| 1017 | 1018 | ||
| 1018 | @defun syntax-after pos | 1019 | @defun syntax-after pos |
diff --git a/lispref/text.texi b/lispref/text.texi index 11cf3cf2184..148bf0025a2 100644 --- a/lispref/text.texi +++ b/lispref/text.texi | |||
| @@ -64,6 +64,7 @@ the character after point. | |||
| 64 | 64 | ||
| 65 | @node Near Point | 65 | @node Near Point |
| 66 | @section Examining Text Near Point | 66 | @section Examining Text Near Point |
| 67 | @cindex text near point | ||
| 67 | 68 | ||
| 68 | Many functions are provided to look at the characters around point. | 69 | Many functions are provided to look at the characters around point. |
| 69 | Several simple functions are described here. See also @code{looking-at} | 70 | Several simple functions are described here. See also @code{looking-at} |
| @@ -537,8 +538,9 @@ newlines and tabs like any other characters). | |||
| 537 | 538 | ||
| 538 | @node Deletion | 539 | @node Deletion |
| 539 | @section Deleting Text | 540 | @section Deleting Text |
| 541 | @cindex text deletion | ||
| 540 | 542 | ||
| 541 | @cindex deletion vs killing | 543 | @cindex deleting text vs killing |
| 542 | Deletion means removing part of the text in a buffer, without saving | 544 | Deletion means removing part of the text in a buffer, without saving |
| 543 | it in the kill ring (@pxref{The Kill Ring}). Deleted text can't be | 545 | it in the kill ring (@pxref{The Kill Ring}). Deleted text can't be |
| 544 | yanked, but can be reinserted using the undo mechanism (@pxref{Undo}). | 546 | yanked, but can be reinserted using the undo mechanism (@pxref{Undo}). |
| @@ -594,7 +596,7 @@ The value returned is always @code{nil}. | |||
| 594 | @end deffn | 596 | @end deffn |
| 595 | 597 | ||
| 596 | @deffn Command delete-backward-char count &optional killp | 598 | @deffn Command delete-backward-char count &optional killp |
| 597 | @cindex delete previous char | 599 | @cindex deleting previous char |
| 598 | This command deletes @var{count} characters directly before point, or | 600 | This command deletes @var{count} characters directly before point, or |
| 599 | after point if @var{count} is negative. If @var{killp} is | 601 | after point if @var{count} is negative. If @var{killp} is |
| 600 | non-@code{nil}, then it saves the deleted characters in the kill ring. | 602 | non-@code{nil}, then it saves the deleted characters in the kill ring. |
| @@ -1348,7 +1350,7 @@ You cannot specify any other buffer. | |||
| 1348 | @end deffn | 1350 | @end deffn |
| 1349 | 1351 | ||
| 1350 | @deffn Command buffer-disable-undo &optional buffer-or-name | 1352 | @deffn Command buffer-disable-undo &optional buffer-or-name |
| 1351 | @cindex disable undo | 1353 | @cindex disabling undo |
| 1352 | This function discards the undo list of @var{buffer-or-name}, and disables | 1354 | This function discards the undo list of @var{buffer-or-name}, and disables |
| 1353 | further recording of undo information. As a result, it is no longer | 1355 | further recording of undo information. As a result, it is no longer |
| 1354 | possible to undo either previous changes or any subsequent changes. If | 1356 | possible to undo either previous changes or any subsequent changes. If |
| @@ -1400,7 +1402,7 @@ leak memory if the user waits too long before answering the question. | |||
| 1400 | @node Filling | 1402 | @node Filling |
| 1401 | @comment node-name, next, previous, up | 1403 | @comment node-name, next, previous, up |
| 1402 | @section Filling | 1404 | @section Filling |
| 1403 | @cindex filling, explicit | 1405 | @cindex filling text |
| 1404 | 1406 | ||
| 1405 | @dfn{Filling} means adjusting the lengths of lines (by moving the line | 1407 | @dfn{Filling} means adjusting the lengths of lines (by moving the line |
| 1406 | breaks) so that they are nearly (but no greater than) a specified | 1408 | breaks) so that they are nearly (but no greater than) a specified |
| @@ -1431,7 +1433,6 @@ as @code{full}. | |||
| 1431 | argument implies the value @code{full} for @var{justify}. | 1433 | argument implies the value @code{full} for @var{justify}. |
| 1432 | 1434 | ||
| 1433 | @deffn Command fill-paragraph justify | 1435 | @deffn Command fill-paragraph justify |
| 1434 | @cindex filling a paragraph | ||
| 1435 | This command fills the paragraph at or after point. If | 1436 | This command fills the paragraph at or after point. If |
| 1436 | @var{justify} is non-@code{nil}, each line is justified as well. | 1437 | @var{justify} is non-@code{nil}, each line is justified as well. |
| 1437 | It uses the ordinary paragraph motion commands to find paragraph | 1438 | It uses the ordinary paragraph motion commands to find paragraph |
| @@ -1678,7 +1679,7 @@ non-@code{nil}, then the line won't be broken there. | |||
| 1678 | 1679 | ||
| 1679 | @node Adaptive Fill | 1680 | @node Adaptive Fill |
| 1680 | @section Adaptive Fill Mode | 1681 | @section Adaptive Fill Mode |
| 1681 | @cindex Adaptive Fill mode | 1682 | @c @cindex Adaptive Fill mode "adaptive-fill-mode" is adjacent. |
| 1682 | 1683 | ||
| 1683 | When @dfn{Adaptive Fill Mode} is enabled, Emacs determines the fill | 1684 | When @dfn{Adaptive Fill Mode} is enabled, Emacs determines the fill |
| 1684 | prefix automatically from the text in each paragraph being filled | 1685 | prefix automatically from the text in each paragraph being filled |
| @@ -1740,11 +1741,8 @@ Adaptive Fill mode matches this regular expression against the text | |||
| 1740 | starting after the left margin whitespace (if any) on a line; the | 1741 | starting after the left margin whitespace (if any) on a line; the |
| 1741 | characters it matches are that line's candidate for the fill prefix. | 1742 | characters it matches are that line's candidate for the fill prefix. |
| 1742 | 1743 | ||
| 1743 | @w{@code{"[ \t]*\\([-!|#%;>*·•‣⁃◦]+[ \t]*\\|(?[0-9]+[.)][ \t]*\\)*"}} is the | 1744 | The default value matches whitespace with certain punctuation |
| 1744 | default value. This matches a number enclosed in parentheses or | 1745 | characters intermingled. |
| 1745 | followed by a period, or certain punctuation characters, or any | ||
| 1746 | sequence of these intermingled with whitespace. In particular, it | ||
| 1747 | matches a sequence of whitespace, possibly empty. | ||
| 1748 | @end defopt | 1746 | @end defopt |
| 1749 | 1747 | ||
| 1750 | @defopt adaptive-fill-first-line-regexp | 1748 | @defopt adaptive-fill-first-line-regexp |
| @@ -2563,8 +2561,9 @@ property @code{face} specifies the faces for displaying the character | |||
| 2563 | list is to specify a name and ask what value corresponds to it. | 2561 | list is to specify a name and ask what value corresponds to it. |
| 2564 | 2562 | ||
| 2565 | If a character has a @code{category} property, we call it the | 2563 | If a character has a @code{category} property, we call it the |
| 2566 | @dfn{category} of the character. It should be a symbol. The properties | 2564 | @dfn{property category} of the character. It should be a symbol. The |
| 2567 | of the symbol serve as defaults for the properties of the character. | 2565 | properties of the symbol serve as defaults for the properties of the |
| 2566 | character. | ||
| 2568 | 2567 | ||
| 2569 | Copying text between strings and buffers preserves the properties | 2568 | Copying text between strings and buffers preserves the properties |
| 2570 | along with the characters; this includes such diverse functions as | 2569 | along with the characters; this includes such diverse functions as |
| @@ -2611,7 +2610,7 @@ string). The argument @var{object} is optional and defaults to the | |||
| 2611 | current buffer. | 2610 | current buffer. |
| 2612 | 2611 | ||
| 2613 | If there is no @var{prop} property strictly speaking, but the character | 2612 | If there is no @var{prop} property strictly speaking, but the character |
| 2614 | has a category that is a symbol, then @code{get-text-property} returns | 2613 | has a property category that is a symbol, then @code{get-text-property} returns |
| 2615 | the @var{prop} property of that symbol. | 2614 | the @var{prop} property of that symbol. |
| 2616 | @end defun | 2615 | @end defun |
| 2617 | 2616 | ||
| @@ -2958,12 +2957,13 @@ names that control filling and property inheritance. All other names | |||
| 2958 | have no standard meaning, and you can use them as you like. | 2957 | have no standard meaning, and you can use them as you like. |
| 2959 | 2958 | ||
| 2960 | @table @code | 2959 | @table @code |
| 2961 | @cindex category of text character | 2960 | @cindex property category of text character |
| 2962 | @kindex category @r{(text property)} | 2961 | @kindex category @r{(text property)} |
| 2963 | @item category | 2962 | @item category |
| 2964 | If a character has a @code{category} property, we call it the | 2963 | If a character has a @code{category} property, we call it the |
| 2965 | @dfn{category} of the character. It should be a symbol. The properties | 2964 | @dfn{property category} of the character. It should be a symbol. The |
| 2966 | of the symbol serve as defaults for the properties of the character. | 2965 | properties of this symbol serve as defaults for the properties of the |
| 2966 | character. | ||
| 2967 | 2967 | ||
| 2968 | @item face | 2968 | @item face |
| 2969 | @cindex face codes of text | 2969 | @cindex face codes of text |
| @@ -2987,13 +2987,13 @@ time you want to specify a particular attribute for certain text. | |||
| 2987 | @xref{Face Attributes}. | 2987 | @xref{Face Attributes}. |
| 2988 | 2988 | ||
| 2989 | @item | 2989 | @item |
| 2990 | A cons cell of the form @code{(foreground-color . @var{color-name})} or | 2990 | A cons cell with the form @code{(foreground-color . @var{color-name})} or |
| 2991 | @code{(background-color . @var{color-name})}. These elements specify | 2991 | @code{(background-color . @var{color-name})}. These elements specify |
| 2992 | just the foreground color or just the background color. @xref{Color | 2992 | just the foreground color or just the background color. @xref{Color |
| 2993 | Names}, for the supported forms of @var{color-name}. | 2993 | Names}, for the supported forms of @var{color-name}. |
| 2994 | 2994 | ||
| 2995 | @code{(foreground-color . @var{color-name})} is equivalent to | 2995 | A cons cell of @code{(foreground-color . @var{color-name})} is equivalent to |
| 2996 | specifying @code{(:foreground @var{color-name})}, and likewise for the | 2996 | specifying @code{(:foreground @var{color-name})}; likewise for the |
| 2997 | background. | 2997 | background. |
| 2998 | @end itemize | 2998 | @end itemize |
| 2999 | 2999 | ||
| @@ -3044,7 +3044,6 @@ The character's @code{face} property, or absence of one, is valid. | |||
| 3044 | @end table | 3044 | @end table |
| 3045 | 3045 | ||
| 3046 | @item display | 3046 | @item display |
| 3047 | @kindex display @r{(text property)} | ||
| 3048 | This property activates various features that change the | 3047 | This property activates various features that change the |
| 3049 | way text is displayed. For example, it can make text appear taller | 3048 | way text is displayed. For example, it can make text appear taller |
| 3050 | or shorter, higher or lower, wider or narrow, or replaced with an image. | 3049 | or shorter, higher or lower, wider or narrow, or replaced with an image. |
| @@ -3471,7 +3470,7 @@ once for the same part of the buffer, you can use the variable | |||
| 3471 | @code{buffer-access-fontified-property}. | 3470 | @code{buffer-access-fontified-property}. |
| 3472 | 3471 | ||
| 3473 | @defvar buffer-access-fontified-property | 3472 | @defvar buffer-access-fontified-property |
| 3474 | If this value's variable is non-@code{nil}, it is a symbol which is used | 3473 | If this variable's value is non-@code{nil}, it is a symbol which is used |
| 3475 | as a text property name. A non-@code{nil} value for that text property | 3474 | as a text property name. A non-@code{nil} value for that text property |
| 3476 | means, ``the other text properties for this character have already been | 3475 | means, ``the other text properties for this character have already been |
| 3477 | computed.'' | 3476 | computed.'' |
diff --git a/lispref/tips.texi b/lispref/tips.texi index 5f4479a5fd3..ee8caf4953b 100644 --- a/lispref/tips.texi +++ b/lispref/tips.texi | |||
| @@ -6,7 +6,7 @@ | |||
| 6 | @setfilename ../info/tips | 6 | @setfilename ../info/tips |
| 7 | @node Tips, GNU Emacs Internals, GPL, Top | 7 | @node Tips, GNU Emacs Internals, GPL, Top |
| 8 | @appendix Tips and Conventions | 8 | @appendix Tips and Conventions |
| 9 | @cindex tips | 9 | @cindex tips for writing Lisp |
| 10 | @cindex standards of coding style | 10 | @cindex standards of coding style |
| 11 | @cindex coding standards | 11 | @cindex coding standards |
| 12 | 12 | ||
| @@ -148,7 +148,7 @@ to store a list of functions (i.e., the variable is a hook), please | |||
| 148 | follow the naming conventions for hooks. @xref{Hooks}. | 148 | follow the naming conventions for hooks. @xref{Hooks}. |
| 149 | 149 | ||
| 150 | @item | 150 | @item |
| 151 | @cindex unloading packages | 151 | @cindex unloading packages, preparing for |
| 152 | If loading the file adds functions to hooks, define a function | 152 | If loading the file adds functions to hooks, define a function |
| 153 | @code{@var{feature}-unload-hook}, where @var{feature} is the name of | 153 | @code{@var{feature}-unload-hook}, where @var{feature} is the name of |
| 154 | the feature the package provides, and make it undo any such changes. | 154 | the feature the package provides, and make it undo any such changes. |
| @@ -295,6 +295,7 @@ Otherwise, use your name. See also @xref{Library Headers}. | |||
| 295 | 295 | ||
| 296 | @node Key Binding Conventions | 296 | @node Key Binding Conventions |
| 297 | @section Key Binding Conventions | 297 | @section Key Binding Conventions |
| 298 | @cindex key binding, conventions for | ||
| 298 | 299 | ||
| 299 | @itemize @bullet | 300 | @itemize @bullet |
| 300 | @item | 301 | @item |
| @@ -374,6 +375,7 @@ after @key{ESC}. In these states, you should define @kbd{@key{ESC} | |||
| 374 | 375 | ||
| 375 | @node Programming Tips | 376 | @node Programming Tips |
| 376 | @section Emacs Programming Tips | 377 | @section Emacs Programming Tips |
| 378 | @cindex programming conventions | ||
| 377 | 379 | ||
| 378 | Following these conventions will make your program fit better | 380 | Following these conventions will make your program fit better |
| 379 | into Emacs when it runs. | 381 | into Emacs when it runs. |
| @@ -559,6 +561,7 @@ the speed. @xref{Inline Functions}. | |||
| 559 | 561 | ||
| 560 | @node Warning Tips | 562 | @node Warning Tips |
| 561 | @section Tips for Avoiding Compiler Warnings | 563 | @section Tips for Avoiding Compiler Warnings |
| 564 | @cindex byte compiler warnings, how to avoid | ||
| 562 | 565 | ||
| 563 | @itemize @bullet | 566 | @itemize @bullet |
| 564 | @item | 567 | @item |
| @@ -599,6 +602,7 @@ is to put a call to @code{with-no-warnings} around it. | |||
| 599 | 602 | ||
| 600 | @node Documentation Tips | 603 | @node Documentation Tips |
| 601 | @section Tips for Documentation Strings | 604 | @section Tips for Documentation Strings |
| 605 | @cindex documentation strings, conventions and tips | ||
| 602 | 606 | ||
| 603 | @findex checkdoc-minor-mode | 607 | @findex checkdoc-minor-mode |
| 604 | Here are some tips and conventions for the writing of documentation | 608 | Here are some tips and conventions for the writing of documentation |
| @@ -863,6 +867,7 @@ describe the most important commands in your major mode, and then use | |||
| 863 | 867 | ||
| 864 | @node Comment Tips | 868 | @node Comment Tips |
| 865 | @section Tips on Writing Comments | 869 | @section Tips on Writing Comments |
| 870 | @cindex comments, Lisp convention for | ||
| 866 | 871 | ||
| 867 | We recommend these conventions for where to put comments and how to | 872 | We recommend these conventions for where to put comments and how to |
| 868 | indent them: | 873 | indent them: |
diff --git a/lispref/variables.texi b/lispref/variables.texi index 56732d22db6..9d9dc8260bb 100644 --- a/lispref/variables.texi +++ b/lispref/variables.texi | |||
| @@ -100,10 +100,12 @@ x | |||
| 100 | 100 | ||
| 101 | @node Constant Variables | 101 | @node Constant Variables |
| 102 | @section Variables that Never Change | 102 | @section Variables that Never Change |
| 103 | @vindex nil | ||
| 104 | @vindex t | ||
| 105 | @kindex setting-constant | 103 | @kindex setting-constant |
| 106 | @cindex keyword symbol | 104 | @cindex keyword symbol |
| 105 | @cindex variable with constant value | ||
| 106 | @cindex constant variables | ||
| 107 | @cindex symbol that evaluates to itself | ||
| 108 | @cindex symbol with constant value | ||
| 107 | 109 | ||
| 108 | In Emacs Lisp, certain symbols normally evaluate to themselves. These | 110 | In Emacs Lisp, certain symbols normally evaluate to themselves. These |
| 109 | include @code{nil} and @code{t}, as well as any symbol whose name starts | 111 | include @code{nil} and @code{t}, as well as any symbol whose name starts |
| @@ -1079,7 +1081,7 @@ use short names like @code{x}. | |||
| 1079 | 1081 | ||
| 1080 | @node Buffer-Local Variables | 1082 | @node Buffer-Local Variables |
| 1081 | @section Buffer-Local Variables | 1083 | @section Buffer-Local Variables |
| 1082 | @cindex variables, buffer-local | 1084 | @cindex variable, buffer-local |
| 1083 | @cindex buffer-local variables | 1085 | @cindex buffer-local variables |
| 1084 | 1086 | ||
| 1085 | Global and local variable bindings are found in most programming | 1087 | Global and local variable bindings are found in most programming |
| @@ -1520,6 +1522,7 @@ an ordinary evaluated argument. | |||
| 1520 | 1522 | ||
| 1521 | @node Frame-Local Variables | 1523 | @node Frame-Local Variables |
| 1522 | @section Frame-Local Variables | 1524 | @section Frame-Local Variables |
| 1525 | @cindex frame-local variables | ||
| 1523 | 1526 | ||
| 1524 | Just as variables can have buffer-local bindings, they can also have | 1527 | Just as variables can have buffer-local bindings, they can also have |
| 1525 | frame-local bindings. These bindings belong to one frame, and are in | 1528 | frame-local bindings. These bindings belong to one frame, and are in |
| @@ -1719,7 +1722,7 @@ This function returns non-@code{nil} if it is safe to give @var{sym} | |||
| 1719 | the value @var{val}, based on the above criteria. | 1722 | the value @var{val}, based on the above criteria. |
| 1720 | @end defun | 1723 | @end defun |
| 1721 | 1724 | ||
| 1722 | @cindex risky local variable | 1725 | @c @cindex risky local variable Duplicates risky-local-variable |
| 1723 | Some variables are considered @dfn{risky}. A variable whose name | 1726 | Some variables are considered @dfn{risky}. A variable whose name |
| 1724 | ends in any of @samp{-command}, @samp{-frame-alist}, @samp{-function}, | 1727 | ends in any of @samp{-command}, @samp{-frame-alist}, @samp{-function}, |
| 1725 | @samp{-functions}, @samp{-hook}, @samp{-hooks}, @samp{-form}, | 1728 | @samp{-functions}, @samp{-hook}, @samp{-hooks}, @samp{-form}, |
| @@ -1778,6 +1781,7 @@ properties from string values specified for file local variables. | |||
| 1778 | 1781 | ||
| 1779 | @node Variable Aliases | 1782 | @node Variable Aliases |
| 1780 | @section Variable Aliases | 1783 | @section Variable Aliases |
| 1784 | @cindex variable aliases | ||
| 1781 | 1785 | ||
| 1782 | It is sometimes useful to make two variables synonyms, so that both | 1786 | It is sometimes useful to make two variables synonyms, so that both |
| 1783 | variables always have the same value, and changing either one also | 1787 | variables always have the same value, and changing either one also |
diff --git a/lispref/windows.texi b/lispref/windows.texi index 5f21b1977bd..22bb43ecaa0 100644 --- a/lispref/windows.texi +++ b/lispref/windows.texi | |||
| @@ -430,7 +430,7 @@ This function always returns @code{nil}. | |||
| 430 | 430 | ||
| 431 | @node Selecting Windows | 431 | @node Selecting Windows |
| 432 | @section Selecting Windows | 432 | @section Selecting Windows |
| 433 | @cindex selecting windows | 433 | @cindex selecting a window |
| 434 | 434 | ||
| 435 | When a window is selected, the buffer in the window becomes the current | 435 | When a window is selected, the buffer in the window becomes the current |
| 436 | buffer, and the cursor will appear in it. | 436 | buffer, and the cursor will appear in it. |
| @@ -572,7 +572,7 @@ In general, within each set of siblings at any level in the window tree, | |||
| 572 | the order is left to right, or top to bottom. | 572 | the order is left to right, or top to bottom. |
| 573 | 573 | ||
| 574 | @defun next-window &optional window minibuf all-frames | 574 | @defun next-window &optional window minibuf all-frames |
| 575 | @cindex minibuffer window | 575 | @cindex minibuffer window, and @code{next-window} |
| 576 | This function returns the window following @var{window} in the cyclic | 576 | This function returns the window following @var{window} in the cyclic |
| 577 | ordering of windows. This is the window that @kbd{C-x o} would select | 577 | ordering of windows. This is the window that @kbd{C-x o} would select |
| 578 | if typed when @var{window} is selected. If @var{window} is the only | 578 | if typed when @var{window} is selected. If @var{window} is the only |
| @@ -1195,6 +1195,7 @@ point and the buffer's point always move together; they remain equal. | |||
| 1195 | @noindent | 1195 | @noindent |
| 1196 | @xref{Positions}, for more details on buffer positions. | 1196 | @xref{Positions}, for more details on buffer positions. |
| 1197 | 1197 | ||
| 1198 | @cindex cursor | ||
| 1198 | As far as the user is concerned, point is where the cursor is, and | 1199 | As far as the user is concerned, point is where the cursor is, and |
| 1199 | when the user switches to another buffer, the cursor jumps to the | 1200 | when the user switches to another buffer, the cursor jumps to the |
| 1200 | position of point in that buffer. | 1201 | position of point in that buffer. |
| @@ -1223,6 +1224,7 @@ this simply does @code{goto-char}. | |||
| 1223 | 1224 | ||
| 1224 | @node Window Start | 1225 | @node Window Start |
| 1225 | @section The Window Start Position | 1226 | @section The Window Start Position |
| 1227 | @cindex window start position | ||
| 1226 | 1228 | ||
| 1227 | Each window contains a marker used to keep track of a buffer position | 1229 | Each window contains a marker used to keep track of a buffer position |
| 1228 | that specifies where in the buffer display should start. This position | 1230 | that specifies where in the buffer display should start. This position |
| @@ -1621,7 +1623,7 @@ Replaces three keystroke sequence C-u 0 C-l." | |||
| 1621 | 1623 | ||
| 1622 | @node Vertical Scrolling | 1624 | @node Vertical Scrolling |
| 1623 | @section Vertical Fractional Scrolling | 1625 | @section Vertical Fractional Scrolling |
| 1624 | @cindex Vertical Fractional Scrolling | 1626 | @cindex vertical fractional scrolling |
| 1625 | 1627 | ||
| 1626 | @dfn{Vertical fractional scrolling} means shifting the image in the | 1628 | @dfn{Vertical fractional scrolling} means shifting the image in the |
| 1627 | window up or down by a specified multiple or fraction of a line. | 1629 | window up or down by a specified multiple or fraction of a line. |
| @@ -1985,6 +1987,7 @@ in character lines and columns. | |||
| 1985 | @node Resizing Windows | 1987 | @node Resizing Windows |
| 1986 | @section Changing the Size of a Window | 1988 | @section Changing the Size of a Window |
| 1987 | @cindex window resizing | 1989 | @cindex window resizing |
| 1990 | @cindex resize window | ||
| 1988 | @cindex changing window size | 1991 | @cindex changing window size |
| 1989 | @cindex window size, changing | 1992 | @cindex window size, changing |
| 1990 | 1993 | ||
| @@ -2355,6 +2358,7 @@ configurations. | |||
| 2355 | 2358 | ||
| 2356 | @node Window Hooks | 2359 | @node Window Hooks |
| 2357 | @section Hooks for Window Scrolling and Changes | 2360 | @section Hooks for Window Scrolling and Changes |
| 2361 | @cindex hooks for window operations | ||
| 2358 | 2362 | ||
| 2359 | This section describes how a Lisp program can take action whenever a | 2363 | This section describes how a Lisp program can take action whenever a |
| 2360 | window displays a different part of its buffer or a different buffer. | 2364 | window displays a different part of its buffer or a different buffer. |