diff options
| author | Chong Yidong | 2012-04-27 11:10:38 +0800 |
|---|---|---|
| committer | Chong Yidong | 2012-04-27 11:10:38 +0800 |
| commit | a8e7d6d783219972c08fd49a3a2afaf26eb139c2 (patch) | |
| tree | 5e86d23d9285389791dc8321d8a8a2ece2247bea /doc | |
| parent | b360839071ef6c7a9e917fe57a4aaeb39138e8c0 (diff) | |
| parent | c5bb756916baa63cc663d68d4c24e5ad33a764e8 (diff) | |
| download | emacs-a8e7d6d783219972c08fd49a3a2afaf26eb139c2.tar.gz emacs-a8e7d6d783219972c08fd49a3a2afaf26eb139c2.zip | |
Merge changes from emacs-24 branch
Diffstat (limited to 'doc')
61 files changed, 569 insertions, 511 deletions
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog index 63ccb880d40..50c3d868eb3 100644 --- a/doc/emacs/ChangeLog +++ b/doc/emacs/ChangeLog | |||
| @@ -1,3 +1,24 @@ | |||
| 1 | 2012-04-27 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * emacs.texi: Some fixes for detailed menu. | ||
| 4 | |||
| 5 | 2012-04-26 Glenn Morris <rgm@gnu.org> | ||
| 6 | |||
| 7 | * emacs.texi: Add "et al." to authors. | ||
| 8 | |||
| 9 | * ack.texi, basic.texi, buffers.texi, building.texi: | ||
| 10 | * calendar.texi, cmdargs.texi, commands.texi, custom.texi: | ||
| 11 | * dired.texi, display.texi, emerge-xtra.texi, files.texi: | ||
| 12 | * fortran-xtra.texi, help.texi, kmacro.texi, mini.texi, misc.texi: | ||
| 13 | * msdog-xtra.texi, picture-xtra.texi, programs.texi, rmail.texi: | ||
| 14 | * search.texi, trouble.texi, windows.texi: | ||
| 15 | Use Texinfo recommended convention for quotes+punctuation. | ||
| 16 | |||
| 17 | 2012-04-25 Eli Zaretskii <eliz@gnu.org> | ||
| 18 | |||
| 19 | * mule.texi (Bidirectional Editing): Improve indexing. Minor | ||
| 20 | wording tweaks. | ||
| 21 | |||
| 1 | 2012-04-15 Chong Yidong <cyd@gnu.org> | 22 | 2012-04-15 Chong Yidong <cyd@gnu.org> |
| 2 | 23 | ||
| 3 | * misc.texi (emacsclient Options): More clarifications. | 24 | * misc.texi (emacsclient Options): More clarifications. |
diff --git a/doc/emacs/ack.texi b/doc/emacs/ack.texi index 51f6d70bd90..eafd38155f2 100644 --- a/doc/emacs/ack.texi +++ b/doc/emacs/ack.texi | |||
| @@ -240,7 +240,7 @@ for compiled Emacs Lisp code. | |||
| 240 | 240 | ||
| 241 | @item | 241 | @item |
| 242 | Mathias Dahl wrote @file{image-dired.el}, a package for viewing image | 242 | Mathias Dahl wrote @file{image-dired.el}, a package for viewing image |
| 243 | files as ``thumbnails.'' | 243 | files as ``thumbnails''. |
| 244 | 244 | ||
| 245 | @item | 245 | @item |
| 246 | Julien Danjou wrote an implementation of ``Desktop Notifications'' | 246 | Julien Danjou wrote an implementation of ``Desktop Notifications'' |
| @@ -1027,7 +1027,7 @@ Together with Dmitry Dzhus, he wrote @file{gdb-mi.el}, the successor to | |||
| 1027 | 1027 | ||
| 1028 | @item | 1028 | @item |
| 1029 | Danny Roozendaal implemented @file{handwrite.el}, which converts text | 1029 | Danny Roozendaal implemented @file{handwrite.el}, which converts text |
| 1030 | into ``handwriting.'' | 1030 | into ``handwriting''. |
| 1031 | 1031 | ||
| 1032 | @item | 1032 | @item |
| 1033 | Markus Rost wrote @file{cus-test.el}, a testing framework for customize. | 1033 | Markus Rost wrote @file{cus-test.el}, a testing framework for customize. |
| @@ -1224,7 +1224,7 @@ the keyboard. | |||
| 1224 | 1224 | ||
| 1225 | @item | 1225 | @item |
| 1226 | Jean-Philippe Theberge wrote @file{thumbs.el}, a package for viewing | 1226 | Jean-Philippe Theberge wrote @file{thumbs.el}, a package for viewing |
| 1227 | image files as ``thumbnails.'' | 1227 | image files as ``thumbnails''. |
| 1228 | 1228 | ||
| 1229 | @item | 1229 | @item |
| 1230 | Spencer Thomas wrote the original @file{dabbrev.el}, providing a command | 1230 | Spencer Thomas wrote the original @file{dabbrev.el}, providing a command |
diff --git a/doc/emacs/basic.texi b/doc/emacs/basic.texi index 5ad48eb48ef..2650b55811f 100644 --- a/doc/emacs/basic.texi +++ b/doc/emacs/basic.texi | |||
| @@ -668,7 +668,7 @@ those two positions are the accessible ones. @xref{Narrowing}. | |||
| 668 | @cindex arguments to commands | 668 | @cindex arguments to commands |
| 669 | 669 | ||
| 670 | In the terminology of mathematics and computing, @dfn{argument} | 670 | In the terminology of mathematics and computing, @dfn{argument} |
| 671 | means ``data provided to a function or operation.'' You can give any | 671 | means ``data provided to a function or operation''. You can give any |
| 672 | Emacs command a @dfn{numeric argument} (also called a @dfn{prefix | 672 | Emacs command a @dfn{numeric argument} (also called a @dfn{prefix |
| 673 | argument}). Some commands interpret the argument as a repetition | 673 | argument}). Some commands interpret the argument as a repetition |
| 674 | count. For example, giving @kbd{C-f} an argument of ten causes it to | 674 | count. For example, giving @kbd{C-f} an argument of ten causes it to |
| @@ -762,7 +762,7 @@ described when they come up; they exist to make an individual command | |||
| 762 | more convenient, and they are documented in that command's | 762 | more convenient, and they are documented in that command's |
| 763 | documentation string. | 763 | documentation string. |
| 764 | 764 | ||
| 765 | We use the term ``prefix argument'' as well as ``numeric argument,'' | 765 | We use the term ``prefix argument'' as well as ``numeric argument'', |
| 766 | to emphasize that you type these argument before the command, and to | 766 | to emphasize that you type these argument before the command, and to |
| 767 | distinguish them from minibuffer arguments that come after the | 767 | distinguish them from minibuffer arguments that come after the |
| 768 | command. | 768 | command. |
diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi index d2783bcb0ba..90d5084e3d9 100644 --- a/doc/emacs/buffers.texi +++ b/doc/emacs/buffers.texi | |||
| @@ -180,7 +180,7 @@ buffers that were current most recently come first. | |||
| 180 | 180 | ||
| 181 | @samp{.} in the first field of a line indicates that the buffer is | 181 | @samp{.} in the first field of a line indicates that the buffer is |
| 182 | current. @samp{%} indicates a read-only buffer. @samp{*} indicates | 182 | current. @samp{%} indicates a read-only buffer. @samp{*} indicates |
| 183 | that the buffer is ``modified.'' If several buffers are modified, it | 183 | that the buffer is ``modified''. If several buffers are modified, it |
| 184 | may be time to save some with @kbd{C-x s} (@pxref{Save Commands}). | 184 | may be time to save some with @kbd{C-x s} (@pxref{Save Commands}). |
| 185 | Here is an example of a buffer list: | 185 | Here is an example of a buffer list: |
| 186 | 186 | ||
| @@ -392,7 +392,7 @@ line: | |||
| 392 | 392 | ||
| 393 | @table @kbd | 393 | @table @kbd |
| 394 | @item ~ | 394 | @item ~ |
| 395 | Mark the buffer ``unmodified.'' The command @kbd{~} does this | 395 | Mark the buffer ``unmodified''. The command @kbd{~} does this |
| 396 | immediately when you type it. | 396 | immediately when you type it. |
| 397 | @item % | 397 | @item % |
| 398 | Toggle the buffer's read-only flag. The command @kbd{%} does | 398 | Toggle the buffer's read-only flag. The command @kbd{%} does |
| @@ -590,7 +590,7 @@ rule or another is easier for you to remember and apply quickly. | |||
| 590 | Iswitchb global minor mode provides convenient switching between | 590 | Iswitchb global minor mode provides convenient switching between |
| 591 | buffers using substrings of their names. It replaces the normal | 591 | buffers using substrings of their names. It replaces the normal |
| 592 | definitions of @kbd{C-x b}, @kbd{C-x 4 b}, @kbd{C-x 5 b}, and @kbd{C-x | 592 | definitions of @kbd{C-x b}, @kbd{C-x 4 b}, @kbd{C-x 5 b}, and @kbd{C-x |
| 593 | 4 C-o} with alternative commands that are somewhat ``smarter.'' | 593 | 4 C-o} with alternative commands that are somewhat ``smarter''. |
| 594 | 594 | ||
| 595 | When one of these commands prompts you for a buffer name, you can | 595 | When one of these commands prompts you for a buffer name, you can |
| 596 | type in just a substring of the name you want to choose. As you enter | 596 | type in just a substring of the name you want to choose. As you enter |
diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi index fef7d2b2828..4b92376b8a9 100644 --- a/doc/emacs/building.texi +++ b/doc/emacs/building.texi | |||
| @@ -331,7 +331,7 @@ you can do anything else in Emacs). @xref{MS-DOS}. | |||
| 331 | Just as you can run a compiler from Emacs and then visit the lines | 331 | Just as you can run a compiler from Emacs and then visit the lines |
| 332 | with compilation errors, you can also run @command{grep} and then | 332 | with compilation errors, you can also run @command{grep} and then |
| 333 | visit the lines on which matches were found. This works by treating | 333 | visit the lines on which matches were found. This works by treating |
| 334 | the matches reported by @command{grep} as if they were ``errors.'' | 334 | the matches reported by @command{grep} as if they were ``errors''. |
| 335 | The output buffer uses Grep mode, which is a variant of Compilation | 335 | The output buffer uses Grep mode, which is a variant of Compilation |
| 336 | mode (@pxref{Compilation Mode}). | 336 | mode (@pxref{Compilation Mode}). |
| 337 | 337 | ||
diff --git a/doc/emacs/calendar.texi b/doc/emacs/calendar.texi index c2851d4abd3..a1e98bfcb92 100644 --- a/doc/emacs/calendar.texi +++ b/doc/emacs/calendar.texi | |||
| @@ -624,7 +624,7 @@ for all users in a @file{default.el} file. @xref{Init File}. | |||
| 624 | These calendar commands display the dates and times of the phases of | 624 | These calendar commands display the dates and times of the phases of |
| 625 | the moon (new moon, first quarter, full moon, last quarter). This | 625 | the moon (new moon, first quarter, full moon, last quarter). This |
| 626 | feature is useful for debugging problems that ``depend on the phase of | 626 | feature is useful for debugging problems that ``depend on the phase of |
| 627 | the moon.'' | 627 | the moon''. |
| 628 | 628 | ||
| 629 | @table @kbd | 629 | @table @kbd |
| 630 | @item M | 630 | @item M |
| @@ -822,7 +822,7 @@ Display Mayan date for selected day (@code{calendar-mayan-print-date}). | |||
| 822 | 822 | ||
| 823 | Otherwise, move point to the date you want to convert, then type the | 823 | Otherwise, move point to the date you want to convert, then type the |
| 824 | appropriate command starting with @kbd{p} from the table above. The | 824 | appropriate command starting with @kbd{p} from the table above. The |
| 825 | prefix @kbd{p} is a mnemonic for ``print,'' since Emacs ``prints'' the | 825 | prefix @kbd{p} is a mnemonic for ``print'', since Emacs ``prints'' the |
| 826 | equivalent date in the echo area. @kbd{p o} displays the | 826 | equivalent date in the echo area. @kbd{p o} displays the |
| 827 | date in all forms known to Emacs. You can also use @kbd{Mouse-3} and | 827 | date in all forms known to Emacs. You can also use @kbd{Mouse-3} and |
| 828 | then choose @kbd{Other calendars} from the menu that appears. This | 828 | then choose @kbd{Other calendars} from the menu that appears. This |
| @@ -901,7 +901,7 @@ Islamic, or French names. | |||
| 901 | @findex calendar-hebrew-list-yahrzeits | 901 | @findex calendar-hebrew-list-yahrzeits |
| 902 | @cindex yahrzeits | 902 | @cindex yahrzeits |
| 903 | One common issue concerning the Hebrew calendar is the computation | 903 | One common issue concerning the Hebrew calendar is the computation |
| 904 | of the anniversary of a date of death, called a ``yahrzeit.'' The Emacs | 904 | of the anniversary of a date of death, called a ``yahrzeit''. The Emacs |
| 905 | calendar includes a facility for such calculations. If you are in the | 905 | calendar includes a facility for such calculations. If you are in the |
| 906 | calendar, the command @kbd{M-x calendar-hebrew-list-yahrzeits} asks you for | 906 | calendar, the command @kbd{M-x calendar-hebrew-list-yahrzeits} asks you for |
| 907 | a range of years and then displays a list of the yahrzeit dates for those | 907 | a range of years and then displays a list of the yahrzeit dates for those |
| @@ -1426,8 +1426,8 @@ that applies to the fourth Thursday in November: | |||
| 1426 | @noindent | 1426 | @noindent |
| 1427 | The 11 specifies November (the eleventh month), the 4 specifies Thursday | 1427 | The 11 specifies November (the eleventh month), the 4 specifies Thursday |
| 1428 | (the fourth day of the week, where Sunday is numbered zero), and the | 1428 | (the fourth day of the week, where Sunday is numbered zero), and the |
| 1429 | second 4 specifies the fourth Thursday (1 would mean ``first,'' 2 would | 1429 | second 4 specifies the fourth Thursday (1 would mean ``first'', 2 would |
| 1430 | mean ``second,'' @minus{}2 would mean ``second-to-last,'' and so on). | 1430 | mean ``second'', @minus{}2 would mean ``second-to-last'', and so on). |
| 1431 | The month can be a single month or a list of months. Thus you could change | 1431 | The month can be a single month or a list of months. Thus you could change |
| 1432 | the 11 above to @samp{'(1 2 3)} and have the entry apply to the last | 1432 | the 11 above to @samp{'(1 2 3)} and have the entry apply to the last |
| 1433 | Thursday of January, February, and March. If the month is @code{t}, the | 1433 | Thursday of January, February, and March. If the month is @code{t}, the |
| @@ -1681,7 +1681,7 @@ timeclock-change}. | |||
| 1681 | Once you've collected data from a number of time intervals, you can use | 1681 | Once you've collected data from a number of time intervals, you can use |
| 1682 | @kbd{M-x timeclock-workday-remaining} to see how much time is left to | 1682 | @kbd{M-x timeclock-workday-remaining} to see how much time is left to |
| 1683 | work today (assuming a typical average of 8 hours a day), and @kbd{M-x | 1683 | work today (assuming a typical average of 8 hours a day), and @kbd{M-x |
| 1684 | timeclock-when-to-leave} which will calculate when you're ``done.'' | 1684 | timeclock-when-to-leave} which will calculate when you're ``done''. |
| 1685 | 1685 | ||
| 1686 | @vindex timeclock-modeline-display | 1686 | @vindex timeclock-modeline-display |
| 1687 | @findex timeclock-modeline-display | 1687 | @findex timeclock-modeline-display |
diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi index 4c6d6ef7bad..222aa0f8434 100644 --- a/doc/emacs/cmdargs.texi +++ b/doc/emacs/cmdargs.texi | |||
| @@ -442,7 +442,7 @@ Directory for the documentation string file, which is used to | |||
| 442 | initialize the Lisp variable @code{doc-directory}. | 442 | initialize the Lisp variable @code{doc-directory}. |
| 443 | @item EMACSLOADPATH | 443 | @item EMACSLOADPATH |
| 444 | A colon-separated list of directories@footnote{ Here and below, | 444 | A colon-separated list of directories@footnote{ Here and below, |
| 445 | whenever we say ``colon-separated list of directories,'' it pertains | 445 | whenever we say ``colon-separated list of directories'', it pertains |
| 446 | to Unix and GNU/Linux systems. On MS-DOS and MS-Windows, the | 446 | to Unix and GNU/Linux systems. On MS-DOS and MS-Windows, the |
| 447 | directories are separated by semi-colons instead, since DOS/Windows | 447 | directories are separated by semi-colons instead, since DOS/Windows |
| 448 | file names might include a colon after a drive letter.} to search for | 448 | file names might include a colon after a drive letter.} to search for |
diff --git a/doc/emacs/commands.texi b/doc/emacs/commands.texi index 3285b65e57b..9678adfe87f 100644 --- a/doc/emacs/commands.texi +++ b/doc/emacs/commands.texi | |||
| @@ -166,7 +166,7 @@ commands, even though strictly speaking the key is bound to a command. | |||
| 166 | Usually we state the name of the command which really does the work in | 166 | Usually we state the name of the command which really does the work in |
| 167 | parentheses after mentioning the key that runs it. For example, we | 167 | parentheses after mentioning the key that runs it. For example, we |
| 168 | will say that ``The command @kbd{C-n} (@code{next-line}) moves point | 168 | will say that ``The command @kbd{C-n} (@code{next-line}) moves point |
| 169 | vertically down,'' meaning that the command @code{next-line} moves | 169 | vertically down'', meaning that the command @code{next-line} moves |
| 170 | vertically down, and the key @kbd{C-n} is normally bound to it. | 170 | vertically down, and the key @kbd{C-n} is normally bound to it. |
| 171 | 171 | ||
| 172 | Since we are discussing customization, we should tell you about | 172 | Since we are discussing customization, we should tell you about |
diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi index 72b4961e209..cfd45de6aca 100644 --- a/doc/emacs/custom.texi +++ b/doc/emacs/custom.texi | |||
| @@ -1922,7 +1922,7 @@ single click definition has run when the first click was received. | |||
| 1922 | This constrains what you can do with double clicks, but user interface | 1922 | This constrains what you can do with double clicks, but user interface |
| 1923 | designers say that this constraint ought to be followed in any case. A | 1923 | designers say that this constraint ought to be followed in any case. A |
| 1924 | double click should do something similar to the single click, only | 1924 | double click should do something similar to the single click, only |
| 1925 | ``more so.'' The command for the double-click event should perform the | 1925 | ``more so''. The command for the double-click event should perform the |
| 1926 | extra work for the double click. | 1926 | extra work for the double click. |
| 1927 | 1927 | ||
| 1928 | If a double-click event has no binding, it changes to the | 1928 | If a double-click event has no binding, it changes to the |
| @@ -1970,7 +1970,7 @@ or @samp{triple-}, which always precede @samp{drag-} or @samp{down-}. | |||
| 1970 | A frame includes areas that don't show text from the buffer, such as | 1970 | A frame includes areas that don't show text from the buffer, such as |
| 1971 | the mode line and the scroll bar. You can tell whether a mouse button | 1971 | the mode line and the scroll bar. You can tell whether a mouse button |
| 1972 | comes from a special area of the screen by means of dummy ``prefix | 1972 | comes from a special area of the screen by means of dummy ``prefix |
| 1973 | keys.'' For example, if you click the mouse in the mode line, you get | 1973 | keys''. For example, if you click the mouse in the mode line, you get |
| 1974 | the prefix key @code{mode-line} before the ordinary mouse-button symbol. | 1974 | the prefix key @code{mode-line} before the ordinary mouse-button symbol. |
| 1975 | Thus, here is how to define the command for clicking the first button in | 1975 | Thus, here is how to define the command for clicking the first button in |
| 1976 | a mode line to run @code{scroll-up-command}: | 1976 | a mode line to run @code{scroll-up-command}: |
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi index 301f8a76477..f3a1ae2fc99 100644 --- a/doc/emacs/dired.texi +++ b/doc/emacs/dired.texi | |||
| @@ -14,7 +14,7 @@ optionally some of its subdirectories as well. You can use the normal | |||
| 14 | Emacs commands to move around in this buffer, and special Dired | 14 | Emacs commands to move around in this buffer, and special Dired |
| 15 | commands to operate on the listed files. | 15 | commands to operate on the listed files. |
| 16 | 16 | ||
| 17 | The Dired buffer is ``read-only,'' and inserting text in it is not | 17 | The Dired buffer is ``read-only'', and inserting text in it is not |
| 18 | allowed. Ordinary printing characters such as @kbd{d} and @kbd{x} are | 18 | allowed. Ordinary printing characters such as @kbd{d} and @kbd{x} are |
| 19 | redefined for special Dired commands. Some Dired commands @dfn{mark} | 19 | redefined for special Dired commands. Some Dired commands @dfn{mark} |
| 20 | or @dfn{flag} the @dfn{current file} (that is, the file on the current | 20 | or @dfn{flag} the @dfn{current file} (that is, the file on the current |
| @@ -1252,7 +1252,7 @@ and erases all flags and marks. | |||
| 1252 | @findex wdired-change-to-wdired-mode | 1252 | @findex wdired-change-to-wdired-mode |
| 1253 | Wdired is a special mode that allows you to perform file operations | 1253 | Wdired is a special mode that allows you to perform file operations |
| 1254 | by editing the Dired buffer directly (the ``W'' in ``Wdired'' stands | 1254 | by editing the Dired buffer directly (the ``W'' in ``Wdired'' stands |
| 1255 | for ``writable.'') To enter Wdired mode, type @kbd{C-x C-q} | 1255 | for ``writable''.) To enter Wdired mode, type @kbd{C-x C-q} |
| 1256 | (@code{dired-toggle-read-only}) while in a Dired buffer. | 1256 | (@code{dired-toggle-read-only}) while in a Dired buffer. |
| 1257 | Alternatively, use the @samp{Immediate / Edit File Names} menu item. | 1257 | Alternatively, use the @samp{Immediate / Edit File Names} menu item. |
| 1258 | 1258 | ||
| @@ -1297,7 +1297,7 @@ buffer containing image-dired, corresponding to the marked files. | |||
| 1297 | You can also enter Image-Dired directly by typing @kbd{M-x | 1297 | You can also enter Image-Dired directly by typing @kbd{M-x |
| 1298 | image-dired}. This prompts for a directory; specify one that has | 1298 | image-dired}. This prompts for a directory; specify one that has |
| 1299 | image files. This creates thumbnails for all the images in that | 1299 | image files. This creates thumbnails for all the images in that |
| 1300 | directory, and displays them all in the ``thumbnail buffer.'' This | 1300 | directory, and displays them all in the ``thumbnail buffer''. This |
| 1301 | takes a long time if the directory contains many image files, and it | 1301 | takes a long time if the directory contains many image files, and it |
| 1302 | asks for confirmation if the number of image files exceeds | 1302 | asks for confirmation if the number of image files exceeds |
| 1303 | @code{image-dired-show-all-from-dir-max-files}. | 1303 | @code{image-dired-show-all-from-dir-max-files}. |
| @@ -1408,7 +1408,7 @@ the current buffer. | |||
| 1408 | 1408 | ||
| 1409 | The default comparison method (used if you type @key{RET} at the | 1409 | The default comparison method (used if you type @key{RET} at the |
| 1410 | prompt) is to compare just the file names---each file name that does | 1410 | prompt) is to compare just the file names---each file name that does |
| 1411 | not appear in the other directory is ``different.'' You can specify | 1411 | not appear in the other directory is ``different''. You can specify |
| 1412 | more stringent comparisons by entering a Lisp expression, which can | 1412 | more stringent comparisons by entering a Lisp expression, which can |
| 1413 | refer to the variables @code{size1} and @code{size2}, the respective | 1413 | refer to the variables @code{size1} and @code{size2}, the respective |
| 1414 | file sizes; @code{mtime1} and @code{mtime2}, the last modification | 1414 | file sizes; @code{mtime1} and @code{mtime2}, the last modification |
| @@ -1416,7 +1416,7 @@ times in seconds, as floating point numbers; and @code{fa1} and | |||
| 1416 | @code{fa2}, the respective file attribute lists (as returned by the | 1416 | @code{fa2}, the respective file attribute lists (as returned by the |
| 1417 | function @code{file-attributes}). This expression is evaluated for | 1417 | function @code{file-attributes}). This expression is evaluated for |
| 1418 | each pair of like-named files, and if the expression's value is | 1418 | each pair of like-named files, and if the expression's value is |
| 1419 | non-@code{nil}, those files are considered ``different.'' | 1419 | non-@code{nil}, those files are considered ``different''. |
| 1420 | 1420 | ||
| 1421 | For instance, the sequence @code{M-x dired-compare-directories | 1421 | For instance, the sequence @code{M-x dired-compare-directories |
| 1422 | @key{RET} (> mtime1 mtime2) @key{RET}} marks files newer in this | 1422 | @key{RET} (> mtime1 mtime2) @key{RET}} marks files newer in this |
diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi index da33d352698..84e81f565cc 100644 --- a/doc/emacs/display.texi +++ b/doc/emacs/display.texi | |||
| @@ -448,7 +448,7 @@ and visits it with View mode enabled. | |||
| 448 | @cindex synchronizing windows | 448 | @cindex synchronizing windows |
| 449 | 449 | ||
| 450 | @dfn{Follow mode} is a minor mode that makes two windows, both | 450 | @dfn{Follow mode} is a minor mode that makes two windows, both |
| 451 | showing the same buffer, scroll as a single tall ``virtual window.'' | 451 | showing the same buffer, scroll as a single tall ``virtual window''. |
| 452 | To use Follow mode, go to a frame with just one window, split it into | 452 | To use Follow mode, go to a frame with just one window, split it into |
| 453 | two side-by-side windows using @kbd{C-x 3}, and then type @kbd{M-x | 453 | two side-by-side windows using @kbd{C-x 3}, and then type @kbd{M-x |
| 454 | follow-mode}. From then on, you can edit the buffer in either of the | 454 | follow-mode}. From then on, you can edit the buffer in either of the |
| @@ -982,15 +982,15 @@ fringes on the selected frame only, use @kbd{M-x set-fringe-style}. | |||
| 982 | line (@pxref{Continuation Lines}). When one line of text is split | 982 | line (@pxref{Continuation Lines}). When one line of text is split |
| 983 | into multiple screen lines, the left fringe shows a curving arrow for | 983 | into multiple screen lines, the left fringe shows a curving arrow for |
| 984 | each screen line except the first, indicating that ``this is not the | 984 | each screen line except the first, indicating that ``this is not the |
| 985 | real beginning.'' The right fringe shows a curving arrow for each | 985 | real beginning''. The right fringe shows a curving arrow for each |
| 986 | screen line except the last, indicating that ``this is not the real | 986 | screen line except the last, indicating that ``this is not the real |
| 987 | end.'' If the line's direction is right-to-left (@pxref{Bidirectional | 987 | end''. If the line's direction is right-to-left (@pxref{Bidirectional |
| 988 | Editing}), the meanings of the curving arrows in the fringes are | 988 | Editing}), the meanings of the curving arrows in the fringes are |
| 989 | swapped. | 989 | swapped. |
| 990 | 990 | ||
| 991 | The fringes indicate line truncation with short horizontal arrows | 991 | The fringes indicate line truncation with short horizontal arrows |
| 992 | meaning ``there's more text on this line which is scrolled | 992 | meaning ``there's more text on this line which is scrolled |
| 993 | horizontally out of view.'' Clicking the mouse on one of the arrows | 993 | horizontally out of view''. Clicking the mouse on one of the arrows |
| 994 | scrolls the display horizontally in the direction of the arrow. | 994 | scrolls the display horizontally in the direction of the arrow. |
| 995 | 995 | ||
| 996 | The fringes can also indicate other things, such as buffer | 996 | The fringes can also indicate other things, such as buffer |
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi index 25e5bb2af0d..13f60e8cfdf 100644 --- a/doc/emacs/emacs.texi +++ b/doc/emacs/emacs.texi | |||
| @@ -72,7 +72,7 @@ developing GNU and promoting software freedom.'' | |||
| 72 | @sp 4 | 72 | @sp 4 |
| 73 | @center @value{EDITION} Edition, Updated for Emacs Version @value{EMACSVER}. | 73 | @center @value{EDITION} Edition, Updated for Emacs Version @value{EMACSVER}. |
| 74 | @sp 5 | 74 | @sp 5 |
| 75 | @center Richard Stallman | 75 | @center Richard Stallman et al. |
| 76 | @page | 76 | @page |
| 77 | @vskip 0pt plus 1filll | 77 | @vskip 0pt plus 1filll |
| 78 | @insertcopying | 78 | @insertcopying |
| @@ -288,11 +288,11 @@ The Mark and the Region | |||
| 288 | Killing and Moving Text | 288 | Killing and Moving Text |
| 289 | 289 | ||
| 290 | * Deletion and Killing:: Commands that remove text. | 290 | * Deletion and Killing:: Commands that remove text. |
| 291 | * Yanking:: Recovering killed text. Moving text. (Pasting.) | 291 | * Yanking:: Commands that insert text. |
| 292 | * Cut and Paste:: Clipboard and selections on graphical displays. | 292 | * Cut and Paste:: Clipboard and selections on graphical displays. |
| 293 | * Accumulating Text:: Other ways of copying text. | 293 | * Accumulating Text:: Other methods to add text to the buffer. |
| 294 | * Rectangles:: Operating on text in rectangular areas. | 294 | * Rectangles:: Operating on text in rectangular areas. |
| 295 | * CUA Bindings:: Using @kbd{C-x}, @kbd{C-c}, @kbd{C-v} to kill and yank. | 295 | * CUA Bindings:: Using @kbd{C-x}/@kbd{C-c}/@kbd{C-v} to kill and yank. |
| 296 | 296 | ||
| 297 | Deletion and Killing | 297 | Deletion and Killing |
| 298 | 298 | ||
| @@ -309,9 +309,9 @@ Yanking | |||
| 309 | * Earlier Kills:: Yanking something killed some time ago. | 309 | * Earlier Kills:: Yanking something killed some time ago. |
| 310 | * Appending Kills:: Several kills in a row all yank together. | 310 | * Appending Kills:: Several kills in a row all yank together. |
| 311 | 311 | ||
| 312 | Killing and Yanking on Graphical Displays | 312 | "Cut and Paste" Operations on Graphical Displays |
| 313 | 313 | ||
| 314 | * Clipboard:: How Emacs interacts with the system clipboard. | 314 | * Clipboard:: How Emacs uses the system clipboard. |
| 315 | * Primary Selection:: The temporarily selected text selection. | 315 | * Primary Selection:: The temporarily selected text selection. |
| 316 | * Secondary Selection:: Cutting without altering point and mark. | 316 | * Secondary Selection:: Cutting without altering point and mark. |
| 317 | 317 | ||
| @@ -328,7 +328,7 @@ Registers | |||
| 328 | Controlling the Display | 328 | Controlling the Display |
| 329 | 329 | ||
| 330 | * Scrolling:: Commands to move text up and down in a window. | 330 | * Scrolling:: Commands to move text up and down in a window. |
| 331 | * Recentering:: A scrolling command that centers the current line. | 331 | * Recentering:: A scroll command that centers the current line. |
| 332 | * Auto Scrolling:: Redisplay scrolls text automatically when needed. | 332 | * Auto Scrolling:: Redisplay scrolls text automatically when needed. |
| 333 | * Horizontal Scrolling:: Moving text left and right in a window. | 333 | * Horizontal Scrolling:: Moving text left and right in a window. |
| 334 | * Narrowing:: Restricting display and editing to a portion | 334 | * Narrowing:: Restricting display and editing to a portion |
| @@ -486,7 +486,7 @@ Multiple Windows | |||
| 486 | * Displaying Buffers:: How Emacs picks a window for displaying a buffer. | 486 | * Displaying Buffers:: How Emacs picks a window for displaying a buffer. |
| 487 | * Window Convenience:: Convenience functions for window handling. | 487 | * Window Convenience:: Convenience functions for window handling. |
| 488 | 488 | ||
| 489 | Displaying Buffers | 489 | Displaying a Buffer in a Window |
| 490 | 490 | ||
| 491 | * Window Choice:: How @code{display-buffer} works. | 491 | * Window Choice:: How @code{display-buffer} works. |
| 492 | 492 | ||
| @@ -509,7 +509,7 @@ Frames and Graphical Displays | |||
| 509 | * Tool Bars:: Enabling and disabling the tool bar. | 509 | * Tool Bars:: Enabling and disabling the tool bar. |
| 510 | * Dialog Boxes:: Controlling use of dialog boxes. | 510 | * Dialog Boxes:: Controlling use of dialog boxes. |
| 511 | * Tooltips:: Displaying information at the current mouse position. | 511 | * Tooltips:: Displaying information at the current mouse position. |
| 512 | * Mouse Avoidance:: Moving the mouse pointer out of the way. | 512 | * Mouse Avoidance:: Preventing the mouse pointer from obscuring text. |
| 513 | * Non-Window Terminals:: Multiple frames on terminals that show only one. | 513 | * Non-Window Terminals:: Multiple frames on terminals that show only one. |
| 514 | * Text-Only Mouse:: Using the mouse in text terminals. | 514 | * Text-Only Mouse:: Using the mouse in text terminals. |
| 515 | 515 | ||
| @@ -540,7 +540,7 @@ International Character Set Support | |||
| 540 | * Charsets:: How Emacs groups its internal character codes. | 540 | * Charsets:: How Emacs groups its internal character codes. |
| 541 | * Bidirectional Editing:: Support for right-to-left scripts. | 541 | * Bidirectional Editing:: Support for right-to-left scripts. |
| 542 | 542 | ||
| 543 | Modes | 543 | Major and Minor Modes |
| 544 | 544 | ||
| 545 | * Major Modes:: Text mode vs. Lisp mode vs. C mode... | 545 | * Major Modes:: Text mode vs. Lisp mode vs. C mode... |
| 546 | * Minor Modes:: Each minor mode is a feature you can turn on | 546 | * Minor Modes:: Each minor mode is a feature you can turn on |
| @@ -600,7 +600,7 @@ Org Mode | |||
| 600 | * TeX Print:: Commands for printing part of a file with TeX. | 600 | * TeX Print:: Commands for printing part of a file with TeX. |
| 601 | * TeX Misc:: Customization of TeX mode, and related features. | 601 | * TeX Misc:: Customization of TeX mode, and related features. |
| 602 | 602 | ||
| 603 | Editing Enriched Text | 603 | Enriched Text |
| 604 | 604 | ||
| 605 | * Enriched Mode:: Entering and exiting Enriched mode. | 605 | * Enriched Mode:: Entering and exiting Enriched mode. |
| 606 | * Hard and Soft Newlines:: There are two different kinds of newlines. | 606 | * Hard and Soft Newlines:: There are two different kinds of newlines. |
| @@ -783,7 +783,7 @@ Introduction to Version Control | |||
| 783 | * Version Control Systems:: Supported version control back-end systems. | 783 | * Version Control Systems:: Supported version control back-end systems. |
| 784 | * VCS Concepts:: Words and concepts related to version control. | 784 | * VCS Concepts:: Words and concepts related to version control. |
| 785 | * VCS Merging:: How file conflicts are handled. | 785 | * VCS Merging:: How file conflicts are handled. |
| 786 | * VCS Changesets:: Changesets in version control. | 786 | * VCS Changesets:: How changes are grouped. |
| 787 | * VCS Repositories:: Where version control repositories are stored. | 787 | * VCS Repositories:: Where version control repositories are stored. |
| 788 | * Types of Log File:: The VCS log in contrast to the ChangeLog. | 788 | * Types of Log File:: The VCS log in contrast to the ChangeLog. |
| 789 | 789 | ||
| @@ -798,10 +798,10 @@ VC Directory Mode | |||
| 798 | * VC Directory Buffer:: What the buffer looks like and means. | 798 | * VC Directory Buffer:: What the buffer looks like and means. |
| 799 | * VC Directory Commands:: Commands to use in a VC directory buffer. | 799 | * VC Directory Commands:: Commands to use in a VC directory buffer. |
| 800 | 800 | ||
| 801 | Multiple Branches of a File | 801 | Version Control Branches |
| 802 | 802 | ||
| 803 | * Switching Branches:: How to get to another existing branch. | 803 | * Switching Branches:: How to get to another existing branch. |
| 804 | * VC Pull:: Updating a branch from another branch. | 804 | * VC Pull:: Updating the contents of a branch. |
| 805 | * Merging:: Transferring changes between branches. | 805 | * Merging:: Transferring changes between branches. |
| 806 | * Creating Branches:: How to start a new branch. | 806 | * Creating Branches:: How to start a new branch. |
| 807 | 807 | ||
| @@ -828,12 +828,12 @@ Change Logs | |||
| 828 | Tags Tables | 828 | Tags Tables |
| 829 | 829 | ||
| 830 | * Tag Syntax:: Tag syntax for various types of code and text files. | 830 | * Tag Syntax:: Tag syntax for various types of code and text files. |
| 831 | * Create Tags Table:: Creating a tags table with @code{etags}. | 831 | * Create Tags Table:: Creating a tags table with @command{etags}. |
| 832 | * Etags Regexps:: Create arbitrary tags using regular expressions. | 832 | * Etags Regexps:: Create arbitrary tags using regular expressions. |
| 833 | * Select Tags Table:: How to visit a tags table. | 833 | * Select Tags Table:: How to visit a tags table. |
| 834 | * Find Tag:: Commands to find the definition of a specific tag. | 834 | * Find Tag:: Commands to find the definition of a specific tag. |
| 835 | * Tags Search:: Using a tags table for searching and replacing. | 835 | * Tags Search:: Using a tags table for searching and replacing. |
| 836 | * List Tags:: Listing and finding tags defined in a file. | 836 | * List Tags:: Using tags for completion, and listing them. |
| 837 | 837 | ||
| 838 | @ifnottex | 838 | @ifnottex |
| 839 | Merging Files with Emerge | 839 | Merging Files with Emerge |
| @@ -952,16 +952,9 @@ Customizing the Calendar and Diary | |||
| 952 | * Sexp Diary Entries:: More flexible diary entries. | 952 | * Sexp Diary Entries:: More flexible diary entries. |
| 953 | @end ifnottex | 953 | @end ifnottex |
| 954 | 954 | ||
| 955 | Document Viewing | ||
| 956 | |||
| 957 | * DocView Navigation:: Navigating DocView buffers. | ||
| 958 | * DocView Searching:: Searching inside documents. | ||
| 959 | * DocView Slicing:: Specifying which part of a page is displayed. | ||
| 960 | * DocView Conversion:: Influencing and triggering conversion. | ||
| 961 | |||
| 962 | Sending Mail | 955 | Sending Mail |
| 963 | 956 | ||
| 964 | * Mail Format:: Format of the mail being composed. | 957 | * Mail Format:: Format of a mail message. |
| 965 | * Mail Headers:: Details of some standard mail header fields. | 958 | * Mail Headers:: Details of some standard mail header fields. |
| 966 | * Mail Aliases:: Abbreviating and grouping mail addresses. | 959 | * Mail Aliases:: Abbreviating and grouping mail addresses. |
| 967 | * Mail Commands:: Special commands for editing mail being composed. | 960 | * Mail Commands:: Special commands for editing mail being composed. |
| @@ -1012,6 +1005,13 @@ Gnus | |||
| 1012 | * Gnus Group Buffer:: A short description of Gnus group commands. | 1005 | * Gnus Group Buffer:: A short description of Gnus group commands. |
| 1013 | * Gnus Summary Buffer:: A short description of Gnus summary commands. | 1006 | * Gnus Summary Buffer:: A short description of Gnus summary commands. |
| 1014 | 1007 | ||
| 1008 | Document Viewing | ||
| 1009 | |||
| 1010 | * DocView Navigation:: Navigating DocView buffers. | ||
| 1011 | * DocView Searching:: Searching inside documents. | ||
| 1012 | * DocView Slicing:: Specifying which part of a page is displayed. | ||
| 1013 | * DocView Conversion:: Influencing and triggering conversion. | ||
| 1014 | |||
| 1015 | Running Shell Commands from Emacs | 1015 | Running Shell Commands from Emacs |
| 1016 | 1016 | ||
| 1017 | * Single Shell:: How to run one shell command and return. | 1017 | * Single Shell:: How to run one shell command and return. |
| @@ -1061,10 +1061,10 @@ Customization | |||
| 1061 | * Variables:: Many Emacs commands examine Emacs variables | 1061 | * Variables:: Many Emacs commands examine Emacs variables |
| 1062 | to decide what to do; by setting variables, | 1062 | to decide what to do; by setting variables, |
| 1063 | you can control their functioning. | 1063 | you can control their functioning. |
| 1064 | * Key Bindings:: Keymaps say what command each key runs. | 1064 | * Key Bindings:: The keymaps say what command each key runs. |
| 1065 | By changing them, you can "redefine" keys. | 1065 | By changing them, you can "redefine" keys. |
| 1066 | * Init File:: How to write common customizations in the | 1066 | * Init File:: How to write common customizations in the |
| 1067 | @file{.emacs} file. | 1067 | initialization file. |
| 1068 | 1068 | ||
| 1069 | Easy Customization Interface | 1069 | Easy Customization Interface |
| 1070 | 1070 | ||
| @@ -1098,7 +1098,7 @@ Customizing Key Bindings | |||
| 1098 | * Local Keymaps:: Major and minor modes have their own keymaps. | 1098 | * Local Keymaps:: Major and minor modes have their own keymaps. |
| 1099 | * Minibuffer Maps:: The minibuffer uses its own local keymaps. | 1099 | * Minibuffer Maps:: The minibuffer uses its own local keymaps. |
| 1100 | * Rebinding:: How to redefine one key's meaning conveniently. | 1100 | * Rebinding:: How to redefine one key's meaning conveniently. |
| 1101 | * Init Rebinding:: Rebinding keys with your init file, @file{.emacs}. | 1101 | * Init Rebinding:: Rebinding keys with your initialization file. |
| 1102 | * Modifier Keys:: Using modifier keys in key bindings. | 1102 | * Modifier Keys:: Using modifier keys in key bindings. |
| 1103 | * Function Keys:: Rebinding terminal function keys. | 1103 | * Function Keys:: Rebinding terminal function keys. |
| 1104 | * Named ASCII Chars:: Distinguishing @key{TAB} from @kbd{C-i}, and so on. | 1104 | * Named ASCII Chars:: Distinguishing @key{TAB} from @kbd{C-i}, and so on. |
| @@ -1107,7 +1107,7 @@ Customizing Key Bindings | |||
| 1107 | before it can be executed. This is done to protect | 1107 | before it can be executed. This is done to protect |
| 1108 | beginners from surprises. | 1108 | beginners from surprises. |
| 1109 | 1109 | ||
| 1110 | The Init File, @file{~/.emacs} | 1110 | The Emacs Initialization File |
| 1111 | 1111 | ||
| 1112 | * Init Syntax:: Syntax of constants in Emacs Lisp. | 1112 | * Init Syntax:: Syntax of constants in Emacs Lisp. |
| 1113 | * Init Examples:: How to do some things with an init file. | 1113 | * Init Examples:: How to do some things with an init file. |
| @@ -1167,7 +1167,7 @@ GTK resources | |||
| 1167 | 1167 | ||
| 1168 | * GTK Resource Basics:: Basic usage of GTK+ resources. | 1168 | * GTK Resource Basics:: Basic usage of GTK+ resources. |
| 1169 | * GTK Widget Names:: How GTK+ widgets are named. | 1169 | * GTK Widget Names:: How GTK+ widgets are named. |
| 1170 | * GTK Names in Emacs:: GTK+ widgets used by Emacs. | 1170 | * GTK Names in Emacs:: GTK widgets used by Emacs. |
| 1171 | * GTK styles:: What can be customized in a GTK widget. | 1171 | * GTK styles:: What can be customized in a GTK widget. |
| 1172 | 1172 | ||
| 1173 | Emacs and Mac OS / GNUstep | 1173 | Emacs and Mac OS / GNUstep |
| @@ -1183,7 +1183,8 @@ Emacs and Microsoft Windows/MS-DOS | |||
| 1183 | * Text and Binary:: Text files use CRLF to terminate lines. | 1183 | * Text and Binary:: Text files use CRLF to terminate lines. |
| 1184 | * Windows Files:: File-name conventions on Windows. | 1184 | * Windows Files:: File-name conventions on Windows. |
| 1185 | * ls in Lisp:: Emulation of @code{ls} for Dired. | 1185 | * ls in Lisp:: Emulation of @code{ls} for Dired. |
| 1186 | * Windows HOME:: Where Emacs looks for your @file{.emacs}. | 1186 | * Windows HOME:: Where Emacs looks for your @file{.emacs} and |
| 1187 | where it starts up. | ||
| 1187 | * Windows Keyboard:: Windows-specific keyboard features. | 1188 | * Windows Keyboard:: Windows-specific keyboard features. |
| 1188 | * Windows Mouse:: Windows-specific mouse features. | 1189 | * Windows Mouse:: Windows-specific mouse features. |
| 1189 | * Windows Processes:: Running subprocesses on Windows. | 1190 | * Windows Processes:: Running subprocesses on Windows. |
diff --git a/doc/emacs/emerge-xtra.texi b/doc/emacs/emerge-xtra.texi index 72e0b36b704..552580ef851 100644 --- a/doc/emacs/emerge-xtra.texi +++ b/doc/emacs/emerge-xtra.texi | |||
| @@ -151,7 +151,7 @@ input. The mode line indicates Auto Advance mode with @samp{A}. | |||
| 151 | If Skip Prefers mode is in effect, the @kbd{n} and @kbd{p} commands | 151 | If Skip Prefers mode is in effect, the @kbd{n} and @kbd{p} commands |
| 152 | skip over differences in states ``prefer-A'' and ``prefer-B'' | 152 | skip over differences in states ``prefer-A'' and ``prefer-B'' |
| 153 | (@pxref{State of Difference}). Thus you see only differences for | 153 | (@pxref{State of Difference}). Thus you see only differences for |
| 154 | which neither version is presumed ``correct.'' The mode line | 154 | which neither version is presumed ``correct''. The mode line |
| 155 | indicates Skip Prefers mode with @samp{S}. This mode is only relevant | 155 | indicates Skip Prefers mode with @samp{S}. This mode is only relevant |
| 156 | when there is an ancestor. | 156 | when there is an ancestor. |
| 157 | 157 | ||
diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi index 10ba9ed1fa6..31883a1f5cc 100644 --- a/doc/emacs/files.texi +++ b/doc/emacs/files.texi | |||
| @@ -97,7 +97,7 @@ minibuffer, with a directory omitted, specifies the file | |||
| 97 | 97 | ||
| 98 | When typing a file name into the minibuffer, you can make use of a | 98 | When typing a file name into the minibuffer, you can make use of a |
| 99 | couple of shortcuts: a double slash is interpreted as ``ignore | 99 | couple of shortcuts: a double slash is interpreted as ``ignore |
| 100 | everything before the second slash in the pair,'' and @samp{~/} is | 100 | everything before the second slash in the pair'', and @samp{~/} is |
| 101 | interpreted as your home directory. @xref{Minibuffer File}. | 101 | interpreted as your home directory. @xref{Minibuffer File}. |
| 102 | 102 | ||
| 103 | @cindex environment variables in file names | 103 | @cindex environment variables in file names |
| @@ -1340,7 +1340,7 @@ correct the line numbers in the hunk headers, to ensure that the diff | |||
| 1340 | remains ``correct''. To disable automatic line number correction, | 1340 | remains ``correct''. To disable automatic line number correction, |
| 1341 | change the variable @code{diff-update-on-the-fly} to @code{nil}. | 1341 | change the variable @code{diff-update-on-the-fly} to @code{nil}. |
| 1342 | 1342 | ||
| 1343 | Diff mode treats each hunk as an ``error message,'' similar to | 1343 | Diff mode treats each hunk as an ``error message'', similar to |
| 1344 | Compilation mode. Thus, you can use commands such as @kbd{C-x '} to | 1344 | Compilation mode. Thus, you can use commands such as @kbd{C-x '} to |
| 1345 | visit the corresponding source locations. @xref{Compilation Mode}. | 1345 | visit the corresponding source locations. @xref{Compilation Mode}. |
| 1346 | 1346 | ||
diff --git a/doc/emacs/fortran-xtra.texi b/doc/emacs/fortran-xtra.texi index 0dc99034ae6..43e2e63863e 100644 --- a/doc/emacs/fortran-xtra.texi +++ b/doc/emacs/fortran-xtra.texi | |||
| @@ -207,7 +207,7 @@ the Fortran standard counts from 1.) The variable | |||
| 207 | @code{fortran-continuation-string} specifies what character to put in | 207 | @code{fortran-continuation-string} specifies what character to put in |
| 208 | column 5. A line that starts with a tab character followed by any digit | 208 | column 5. A line that starts with a tab character followed by any digit |
| 209 | except @samp{0} is also a continuation line. We call this style of | 209 | except @samp{0} is also a continuation line. We call this style of |
| 210 | continuation @dfn{tab format}. (Fortran 90 introduced ``free form,'' | 210 | continuation @dfn{tab format}. (Fortran 90 introduced ``free form'', |
| 211 | with another style of continuation lines). | 211 | with another style of continuation lines). |
| 212 | 212 | ||
| 213 | @vindex indent-tabs-mode @r{(Fortran mode)} | 213 | @vindex indent-tabs-mode @r{(Fortran mode)} |
diff --git a/doc/emacs/help.texi b/doc/emacs/help.texi index eef38136583..e8c5614ff58 100644 --- a/doc/emacs/help.texi +++ b/doc/emacs/help.texi | |||
| @@ -96,7 +96,7 @@ of the major mode, then global bindings (@code{describe-bindings}). | |||
| 96 | @item C-h c @var{key} | 96 | @item C-h c @var{key} |
| 97 | Show the name of the command that the key sequence @var{key} is bound | 97 | Show the name of the command that the key sequence @var{key} is bound |
| 98 | to (@code{describe-key-briefly}). Here @kbd{c} stands for | 98 | to (@code{describe-key-briefly}). Here @kbd{c} stands for |
| 99 | ``character.'' For more extensive information on @var{key}, use | 99 | ``character''. For more extensive information on @var{key}, use |
| 100 | @kbd{C-h k}. | 100 | @kbd{C-h k}. |
| 101 | @item C-h d @var{topics} @key{RET} | 101 | @item C-h d @var{topics} @key{RET} |
| 102 | Display the commands and variables whose documentation matches | 102 | Display the commands and variables whose documentation matches |
diff --git a/doc/emacs/kmacro.texi b/doc/emacs/kmacro.texi index 766470e514b..e7522a9db43 100644 --- a/doc/emacs/kmacro.texi +++ b/doc/emacs/kmacro.texi | |||
| @@ -225,7 +225,7 @@ desired macro is at the head of the ring. To execute the new macro | |||
| 225 | ring head immediately, just type @kbd{C-k}. | 225 | ring head immediately, just type @kbd{C-k}. |
| 226 | 226 | ||
| 227 | Note that Emacs treats the head of the macro ring as the ``last | 227 | Note that Emacs treats the head of the macro ring as the ``last |
| 228 | defined keyboard macro.'' For instance, @key{F4} will execute that | 228 | defined keyboard macro''. For instance, @key{F4} will execute that |
| 229 | macro, and @kbd{C-x C-k n} will give it a name. | 229 | macro, and @kbd{C-x C-k n} will give it a name. |
| 230 | 230 | ||
| 231 | @vindex kmacro-ring-max | 231 | @vindex kmacro-ring-max |
diff --git a/doc/emacs/mini.texi b/doc/emacs/mini.texi index e498516ae7f..f50e3085f2d 100644 --- a/doc/emacs/mini.texi +++ b/doc/emacs/mini.texi | |||
| @@ -88,7 +88,7 @@ Find file: /u2/emacs/src//etc/termcap | |||
| 88 | @cindex slashes repeated in file name | 88 | @cindex slashes repeated in file name |
| 89 | @findex file-name-shadow-mode | 89 | @findex file-name-shadow-mode |
| 90 | Emacs interprets a double slash as ``ignore everything before the | 90 | Emacs interprets a double slash as ``ignore everything before the |
| 91 | second slash in the pair.'' In the example above, | 91 | second slash in the pair''. In the example above, |
| 92 | @file{/u2/emacs/src/} is ignored, so the argument you supplied is | 92 | @file{/u2/emacs/src/} is ignored, so the argument you supplied is |
| 93 | @file{/etc/termcap}. The ignored part of the file name is dimmed if | 93 | @file{/etc/termcap}. The ignored part of the file name is dimmed if |
| 94 | the terminal allows it. (To disable this dimming, turn off File Name | 94 | the terminal allows it. (To disable this dimming, turn off File Name |
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi index 50b68767991..b91763116b8 100644 --- a/doc/emacs/misc.texi +++ b/doc/emacs/misc.texi | |||
| @@ -1191,7 +1191,7 @@ that buffer. | |||
| 1191 | line mode, Term basically acts like Shell mode (@pxref{Shell Mode}). | 1191 | line mode, Term basically acts like Shell mode (@pxref{Shell Mode}). |
| 1192 | 1192 | ||
| 1193 | In char mode, each character is sent directly to the subshell, as | 1193 | In char mode, each character is sent directly to the subshell, as |
| 1194 | ``terminal input.'' Any ``echoing'' of your input is the | 1194 | ``terminal input''. Any ``echoing'' of your input is the |
| 1195 | responsibility of the subshell. The sole exception is the terminal | 1195 | responsibility of the subshell. The sole exception is the terminal |
| 1196 | escape character, which by default is @kbd{C-c} (@pxref{Term Mode}). | 1196 | escape character, which by default is @kbd{C-c} (@pxref{Term Mode}). |
| 1197 | Any ``terminal output'' from the subshell goes into the buffer, | 1197 | Any ``terminal output'' from the subshell goes into the buffer, |
| @@ -2076,10 +2076,10 @@ Insert a byte with a code typed in octal. | |||
| 2076 | Insert a byte with a code typed in hex. | 2076 | Insert a byte with a code typed in hex. |
| 2077 | 2077 | ||
| 2078 | @item C-x [ | 2078 | @item C-x [ |
| 2079 | Move to the beginning of a 1k-byte ``page.'' | 2079 | Move to the beginning of a 1k-byte ``page''. |
| 2080 | 2080 | ||
| 2081 | @item C-x ] | 2081 | @item C-x ] |
| 2082 | Move to the end of a 1k-byte ``page.'' | 2082 | Move to the end of a 1k-byte ``page''. |
| 2083 | 2083 | ||
| 2084 | @item M-g | 2084 | @item M-g |
| 2085 | Move to an address specified in hex. | 2085 | Move to an address specified in hex. |
| @@ -2149,7 +2149,7 @@ usually turned on. | |||
| 2149 | However, this may be slow if there are a lot of buffers in the | 2149 | However, this may be slow if there are a lot of buffers in the |
| 2150 | desktop. You can specify the maximum number of buffers to restore | 2150 | desktop. You can specify the maximum number of buffers to restore |
| 2151 | immediately with the variable @code{desktop-restore-eager}; the | 2151 | immediately with the variable @code{desktop-restore-eager}; the |
| 2152 | remaining buffers are restored ``lazily,'' when Emacs is idle. | 2152 | remaining buffers are restored ``lazily'', when Emacs is idle. |
| 2153 | 2153 | ||
| 2154 | @findex desktop-clear | 2154 | @findex desktop-clear |
| 2155 | @vindex desktop-globals-to-clear | 2155 | @vindex desktop-globals-to-clear |
diff --git a/doc/emacs/msdog-xtra.texi b/doc/emacs/msdog-xtra.texi index af8882a1fd4..0d05c8ac9c6 100644 --- a/doc/emacs/msdog-xtra.texi +++ b/doc/emacs/msdog-xtra.texi | |||
| @@ -548,7 +548,7 @@ when invoked with the @samp{-nw} option. | |||
| 548 | @cindex inferior processes under MS-DOS | 548 | @cindex inferior processes under MS-DOS |
| 549 | @findex compile @r{(MS-DOS)} | 549 | @findex compile @r{(MS-DOS)} |
| 550 | @findex grep @r{(MS-DOS)} | 550 | @findex grep @r{(MS-DOS)} |
| 551 | Because MS-DOS is a single-process ``operating system,'' | 551 | Because MS-DOS is a single-process ``operating system'', |
| 552 | asynchronous subprocesses are not available. In particular, Shell | 552 | asynchronous subprocesses are not available. In particular, Shell |
| 553 | mode and its variants do not work. Most Emacs features that use | 553 | mode and its variants do not work. Most Emacs features that use |
| 554 | asynchronous subprocesses also don't work on MS-DOS, including | 554 | asynchronous subprocesses also don't work on MS-DOS, including |
diff --git a/doc/emacs/mule.texi b/doc/emacs/mule.texi index df2d687114b..9c1d908f882 100644 --- a/doc/emacs/mule.texi +++ b/doc/emacs/mule.texi | |||
| @@ -1337,6 +1337,7 @@ fontset}, the @dfn{startup fontset} and the @dfn{default fontset}. | |||
| 1337 | @c FIXME? The doc of *standard*-fontset-spec says: | 1337 | @c FIXME? The doc of *standard*-fontset-spec says: |
| 1338 | @c "You have the biggest chance to display international characters | 1338 | @c "You have the biggest chance to display international characters |
| 1339 | @c with correct glyphs by using the *standard* fontset." (my emphasis) | 1339 | @c with correct glyphs by using the *standard* fontset." (my emphasis) |
| 1340 | @c See http://lists.gnu.org/archive/html/emacs-devel/2012-04/msg00430.html | ||
| 1340 | The default fontset is most likely to have fonts for a wide variety of | 1341 | The default fontset is most likely to have fonts for a wide variety of |
| 1341 | non-@acronym{ASCII} characters, and is the default fallback for the | 1342 | non-@acronym{ASCII} characters, and is the default fallback for the |
| 1342 | other two fontsets, and if you set a default font rather than fontset. | 1343 | other two fontsets, and if you set a default font rather than fontset. |
| @@ -1762,15 +1763,17 @@ non-@code{nil}, Emacs reorders characters that have right-to-left | |||
| 1762 | directionality when they are displayed. The default value is | 1763 | directionality when they are displayed. The default value is |
| 1763 | @code{t}. | 1764 | @code{t}. |
| 1764 | 1765 | ||
| 1766 | @cindex base direction of paragraphs | ||
| 1767 | @cindex paragraph, base direction | ||
| 1765 | Each paragraph of bidirectional text can have its own @dfn{base | 1768 | Each paragraph of bidirectional text can have its own @dfn{base |
| 1766 | direction}, either right-to-left or left-to-right. (Paragraph | 1769 | direction}, either right-to-left or left-to-right. (Paragraph |
| 1767 | @c paragraph-separate etc have no influence on this? | 1770 | @c paragraph-separate etc have no influence on this? |
| 1768 | boundaries are empty lines, i.e.@: lines consisting entirely of | 1771 | boundaries are empty lines, i.e.@: lines consisting entirely of |
| 1769 | whitespace characters.) Text in left-to-right paragraphs begins at | 1772 | whitespace characters.) Text in left-to-right paragraphs begins on |
| 1770 | the left margin of the window and is truncated or continued when it | 1773 | the screen at the left margin of the window and is truncated or |
| 1771 | reaches the right margin. By contrast, text in right-to-left | 1774 | continued when it reaches the right margin. By contrast, text in |
| 1772 | paragraphs begins at the right margin and is continued or truncated at | 1775 | right-to-left paragraphs is displayed starting at the right margin and |
| 1773 | the left margin. | 1776 | is continued or truncated at the left margin. |
| 1774 | 1777 | ||
| 1775 | @vindex bidi-paragraph-direction | 1778 | @vindex bidi-paragraph-direction |
| 1776 | Emacs determines the base direction of each paragraph dynamically, | 1779 | Emacs determines the base direction of each paragraph dynamically, |
diff --git a/doc/emacs/picture-xtra.texi b/doc/emacs/picture-xtra.texi index 5a10bf2c31c..edf75f078d5 100644 --- a/doc/emacs/picture-xtra.texi +++ b/doc/emacs/picture-xtra.texi | |||
| @@ -199,7 +199,7 @@ C-b} (@code{picture-motion-reverse}) moves in the opposite direction. | |||
| 199 | With no argument, it moves to a point underneath the next | 199 | With no argument, it moves to a point underneath the next |
| 200 | ``interesting'' character that follows whitespace in the previous | 200 | ``interesting'' character that follows whitespace in the previous |
| 201 | nonblank line. ``Next'' here means ``appearing at a horizontal position | 201 | nonblank line. ``Next'' here means ``appearing at a horizontal position |
| 202 | greater than the one point starts out at.'' With an argument, as in | 202 | greater than the one point starts out at''. With an argument, as in |
| 203 | @kbd{C-u M-@key{TAB}}, this command moves to the next such interesting | 203 | @kbd{C-u M-@key{TAB}}, this command moves to the next such interesting |
| 204 | character in the current line. @kbd{M-@key{TAB}} does not change the | 204 | character in the current line. @kbd{M-@key{TAB}} does not change the |
| 205 | text; it only moves point. ``Interesting'' characters are defined by | 205 | text; it only moves point. ``Interesting'' characters are defined by |
diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi index 5f7abcf3881..23f808b93ea 100644 --- a/doc/emacs/programs.texi +++ b/doc/emacs/programs.texi | |||
| @@ -1109,7 +1109,7 @@ You can also use @kbd{M-x info-lookup-file} to look for documentation | |||
| 1109 | for a file name. | 1109 | for a file name. |
| 1110 | 1110 | ||
| 1111 | If you use @kbd{C-h S} in a major mode that does not support it, | 1111 | If you use @kbd{C-h S} in a major mode that does not support it, |
| 1112 | it asks you to specify the ``symbol help mode.'' You should enter | 1112 | it asks you to specify the ``symbol help mode''. You should enter |
| 1113 | a command such as @code{c-mode} that would select a major | 1113 | a command such as @code{c-mode} that would select a major |
| 1114 | mode which @kbd{C-h S} does support. | 1114 | mode which @kbd{C-h S} does support. |
| 1115 | 1115 | ||
| @@ -1451,7 +1451,7 @@ with the Foldout package (@pxref{Foldout}). | |||
| 1451 | 1451 | ||
| 1452 | This section gives a brief description of the special features | 1452 | This section gives a brief description of the special features |
| 1453 | available in C, C++, Objective-C, Java, CORBA IDL, Pike and AWK modes. | 1453 | available in C, C++, Objective-C, Java, CORBA IDL, Pike and AWK modes. |
| 1454 | (These are called ``C mode and related modes.'') | 1454 | (These are called ``C mode and related modes''.) |
| 1455 | @ifinfo | 1455 | @ifinfo |
| 1456 | @xref{Top,, CC Mode, ccmode, CC Mode}, for more details. | 1456 | @xref{Top,, CC Mode, ccmode, CC Mode}, for more details. |
| 1457 | @end ifinfo | 1457 | @end ifinfo |
diff --git a/doc/emacs/rmail.texi b/doc/emacs/rmail.texi index 3b3605f800c..6221bbac1a8 100644 --- a/doc/emacs/rmail.texi +++ b/doc/emacs/rmail.texi | |||
| @@ -1355,7 +1355,7 @@ your Rmail file (@pxref{Rmail Inbox}). When loaded for the first time, | |||
| 1355 | Rmail attempts to locate the @code{movemail} program and determine its | 1355 | Rmail attempts to locate the @code{movemail} program and determine its |
| 1356 | version. There are two versions of the @code{movemail} program: the | 1356 | version. There are two versions of the @code{movemail} program: the |
| 1357 | native one, shipped with GNU Emacs (the ``emacs version'') and the one | 1357 | native one, shipped with GNU Emacs (the ``emacs version'') and the one |
| 1358 | included in GNU mailutils (the ``mailutils version,'' | 1358 | included in GNU mailutils (the ``mailutils version'', |
| 1359 | @pxref{movemail,,,mailutils,GNU mailutils}). They support the same | 1359 | @pxref{movemail,,,mailutils,GNU mailutils}). They support the same |
| 1360 | command line syntax and the same basic subset of options. However, the | 1360 | command line syntax and the same basic subset of options. However, the |
| 1361 | Mailutils version offers additional features. | 1361 | Mailutils version offers additional features. |
diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi index 38f00f03532..9d30c6f4caf 100644 --- a/doc/emacs/search.texi +++ b/doc/emacs/search.texi | |||
| @@ -146,7 +146,7 @@ you don't like this feature, you can disable it by setting | |||
| 146 | After exiting a search, you can search for the same string again by | 146 | After exiting a search, you can search for the same string again by |
| 147 | typing just @kbd{C-s C-s}. The first @kbd{C-s} is the key that | 147 | typing just @kbd{C-s C-s}. The first @kbd{C-s} is the key that |
| 148 | invokes incremental search, and the second @kbd{C-s} means ``search | 148 | invokes incremental search, and the second @kbd{C-s} means ``search |
| 149 | again.'' Similarly, @kbd{C-r C-r} searches backward for the last | 149 | again''. Similarly, @kbd{C-r C-r} searches backward for the last |
| 150 | search string. In determining the last search string, it doesn't | 150 | search string. In determining the last search string, it doesn't |
| 151 | matter whether the string was searched for with @kbd{C-s} or | 151 | matter whether the string was searched for with @kbd{C-s} or |
| 152 | @kbd{C-r}. | 152 | @kbd{C-r}. |
| @@ -552,7 +552,7 @@ therefore @samp{f} is a regular expression that matches the string | |||
| 552 | @samp{ff}.) Likewise, @samp{o} is a regular expression that matches | 552 | @samp{ff}.) Likewise, @samp{o} is a regular expression that matches |
| 553 | only @samp{o}. (When case distinctions are being ignored, these regexps | 553 | only @samp{o}. (When case distinctions are being ignored, these regexps |
| 554 | also match @samp{F} and @samp{O}, but we consider this a generalization | 554 | also match @samp{F} and @samp{O}, but we consider this a generalization |
| 555 | of ``the same string,'' rather than an exception.) | 555 | of ``the same string'', rather than an exception.) |
| 556 | 556 | ||
| 557 | Any two regular expressions @var{a} and @var{b} can be concatenated. | 557 | Any two regular expressions @var{a} and @var{b} can be concatenated. |
| 558 | The result is a regular expression which matches a string if @var{a} | 558 | The result is a regular expression which matches a string if @var{a} |
| @@ -801,7 +801,7 @@ After the end of a @samp{\( @dots{} \)} construct, the matcher remembers | |||
| 801 | the beginning and end of the text matched by that construct. Then, | 801 | the beginning and end of the text matched by that construct. Then, |
| 802 | later on in the regular expression, you can use @samp{\} followed by the | 802 | later on in the regular expression, you can use @samp{\} followed by the |
| 803 | digit @var{d} to mean ``match the same text matched the @var{d}th time | 803 | digit @var{d} to mean ``match the same text matched the @var{d}th time |
| 804 | by the @samp{\( @dots{} \)} construct.'' | 804 | by the @samp{\( @dots{} \)} construct''. |
| 805 | 805 | ||
| 806 | The strings matching the first nine @samp{\( @dots{} \)} constructs | 806 | The strings matching the first nine @samp{\( @dots{} \)} constructs |
| 807 | appearing in a regular expression are assigned numbers 1 through 9 in | 807 | appearing in a regular expression are assigned numbers 1 through 9 in |
| @@ -1030,7 +1030,7 @@ it can refer to all or part of what is matched by the @var{regexp}. | |||
| 1030 | @samp{\&} in @var{newstring} stands for the entire match being | 1030 | @samp{\&} in @var{newstring} stands for the entire match being |
| 1031 | replaced. @samp{\@var{d}} in @var{newstring}, where @var{d} is a | 1031 | replaced. @samp{\@var{d}} in @var{newstring}, where @var{d} is a |
| 1032 | digit, stands for whatever matched the @var{d}th parenthesized | 1032 | digit, stands for whatever matched the @var{d}th parenthesized |
| 1033 | grouping in @var{regexp}. (This is called a ``back reference.'') | 1033 | grouping in @var{regexp}. (This is called a ``back reference''.) |
| 1034 | @samp{\#} refers to the count of replacements already made in this | 1034 | @samp{\#} refers to the count of replacements already made in this |
| 1035 | command, as a decimal number. In the first replacement, @samp{\#} | 1035 | command, as a decimal number. In the first replacement, @samp{\#} |
| 1036 | stands for @samp{0}; in the second, for @samp{1}; and so on. For | 1036 | stands for @samp{0}; in the second, for @samp{1}; and so on. For |
diff --git a/doc/emacs/trouble.texi b/doc/emacs/trouble.texi index b118295ab1a..3bbdecc0176 100644 --- a/doc/emacs/trouble.texi +++ b/doc/emacs/trouble.texi | |||
| @@ -534,16 +534,16 @@ large, and Emacs displays @samp{I feel pretty today}. The bug report | |||
| 534 | would need to provide all that information. You should not assume | 534 | would need to provide all that information. You should not assume |
| 535 | that the problem is due to the size of the file and say, ``I visited a | 535 | that the problem is due to the size of the file and say, ``I visited a |
| 536 | large file, and Emacs displayed @samp{I feel pretty today}.'' This is | 536 | large file, and Emacs displayed @samp{I feel pretty today}.'' This is |
| 537 | what we mean by ``guessing explanations.'' The problem might be due | 537 | what we mean by ``guessing explanations''. The problem might be due |
| 538 | to the fact that there is a @samp{z} in the file name. If this is so, | 538 | to the fact that there is a @samp{z} in the file name. If this is so, |
| 539 | then when we got your report, we would try out the problem with some | 539 | then when we got your report, we would try out the problem with some |
| 540 | ``large file,'' probably with no @samp{z} in its name, and not see any | 540 | ``large file'', probably with no @samp{z} in its name, and not see any |
| 541 | problem. There is no way we could guess that we should try visiting a | 541 | problem. There is no way we could guess that we should try visiting a |
| 542 | file with a @samp{z} in its name. | 542 | file with a @samp{z} in its name. |
| 543 | 543 | ||
| 544 | You should not even say ``visit a file'' instead of @kbd{C-x C-f}. | 544 | You should not even say ``visit a file'' instead of @kbd{C-x C-f}. |
| 545 | Similarly, rather than saying ``if I have three characters on the | 545 | Similarly, rather than saying ``if I have three characters on the |
| 546 | line,'' say ``after I type @kbd{@key{RET} A B C @key{RET} C-p},'' if | 546 | line'', say ``after I type @kbd{@key{RET} A B C @key{RET} C-p}'', if |
| 547 | that is the way you entered the text. | 547 | that is the way you entered the text. |
| 548 | 548 | ||
| 549 | If possible, try quickly to reproduce the bug by invoking Emacs with | 549 | If possible, try quickly to reproduce the bug by invoking Emacs with |
| @@ -731,7 +731,7 @@ you can copy its output from the @file{*Messages*} buffer. | |||
| 731 | 731 | ||
| 732 | @item | 732 | @item |
| 733 | A description of what behavior you observe that you believe is | 733 | A description of what behavior you observe that you believe is |
| 734 | incorrect. For example, ``The Emacs process gets a fatal signal,'' or, | 734 | incorrect. For example, ``The Emacs process gets a fatal signal'', or, |
| 735 | ``The resulting text is as follows, which I think is wrong.'' | 735 | ``The resulting text is as follows, which I think is wrong.'' |
| 736 | 736 | ||
| 737 | Of course, if the bug is that Emacs gets a fatal signal, then one can't | 737 | Of course, if the bug is that Emacs gets a fatal signal, then one can't |
| @@ -872,7 +872,7 @@ More detailed advice and other useful techniques for debugging Emacs | |||
| 872 | are available in the file @file{etc/DEBUG} in the Emacs distribution. | 872 | are available in the file @file{etc/DEBUG} in the Emacs distribution. |
| 873 | That file also includes instructions for investigating problems | 873 | That file also includes instructions for investigating problems |
| 874 | whereby Emacs stops responding (many people assume that Emacs is | 874 | whereby Emacs stops responding (many people assume that Emacs is |
| 875 | ``hung,'' whereas in fact it might be in an infinite loop). | 875 | ``hung'', whereas in fact it might be in an infinite loop). |
| 876 | 876 | ||
| 877 | To find the file @file{etc/DEBUG} in your Emacs installation, use the | 877 | To find the file @file{etc/DEBUG} in your Emacs installation, use the |
| 878 | directory name stored in the variable @code{data-directory}. | 878 | directory name stored in the variable @code{data-directory}. |
diff --git a/doc/emacs/windows.texi b/doc/emacs/windows.texi index ee0f0027454..72e01a368a1 100644 --- a/doc/emacs/windows.texi +++ b/doc/emacs/windows.texi | |||
| @@ -151,7 +151,7 @@ selects the window without moving point in it. | |||
| 151 | @kindex C-x o | 151 | @kindex C-x o |
| 152 | @findex other-window | 152 | @findex other-window |
| 153 | With the keyboard, you can switch windows by typing @kbd{C-x o} | 153 | With the keyboard, you can switch windows by typing @kbd{C-x o} |
| 154 | (@code{other-window}). That is an @kbd{o}, for ``other,'' not a zero. | 154 | (@code{other-window}). That is an @kbd{o}, for ``other'', not a zero. |
| 155 | When there are more than two windows, this command moves through all the | 155 | When there are more than two windows, this command moves through all the |
| 156 | windows in a cyclic order, generally top to bottom and left to right. | 156 | windows in a cyclic order, generally top to bottom and left to right. |
| 157 | After the rightmost and bottommost window, it goes back to the one at | 157 | After the rightmost and bottommost window, it goes back to the one at |
| @@ -452,7 +452,7 @@ buffer. @xref{Follow Mode}. | |||
| 452 | The Windmove package defines commands for moving directionally | 452 | The Windmove package defines commands for moving directionally |
| 453 | between neighboring windows in a frame. @kbd{M-x windmove-right} | 453 | between neighboring windows in a frame. @kbd{M-x windmove-right} |
| 454 | selects the window immediately to the right of the currently selected | 454 | selects the window immediately to the right of the currently selected |
| 455 | one, and similarly for the ``left,'' ``up,'' and ``down'' | 455 | one, and similarly for the ``left'', ``up'', and ``down'' |
| 456 | counterparts. @kbd{M-x windmove-default-keybindings} binds these | 456 | counterparts. @kbd{M-x windmove-default-keybindings} binds these |
| 457 | commands to @kbd{S-right} etc.; doing so disables shift selection for | 457 | commands to @kbd{S-right} etc.; doing so disables shift selection for |
| 458 | those keys (@pxref{Shift Selection}). | 458 | those keys (@pxref{Shift Selection}). |
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 5333e3af3df..9c323d7937f 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog | |||
| @@ -1,3 +1,54 @@ | |||
| 1 | 2012-04-27 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * elisp.texi, vol1.texi, vol2.texi: Some fixes for detailed menu. | ||
| 4 | * modes.texi (Major Modes, Auto-Indentation): | ||
| 5 | * buffers.texi (Buffers): Some fixes for menu descriptions. | ||
| 6 | |||
| 7 | 2012-04-27 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 8 | * functions.texi (Simple Lambda, Argument List): | ||
| 9 | * eval.texi (Function Indirection): Avoid deprecated form. | ||
| 10 | |||
| 11 | 2012-04-27 Glenn Morris <rgm@gnu.org> | ||
| 12 | |||
| 13 | * book-spine.texi, elisp.texi, vol1.texi, vol2.texi: | ||
| 14 | Add "et al." to authors. | ||
| 15 | |||
| 16 | * buffers.texi, commands.texi, compile.texi, control.texi: | ||
| 17 | * customize.texi, display.texi, eval.texi, files.texi, frames.texi: | ||
| 18 | * hash.texi, help.texi, intro.texi, keymaps.texi, lists.texi: | ||
| 19 | * modes.texi, numbers.texi, objects.texi, streams.texi: | ||
| 20 | * symbols.texi, syntax.texi, text.texi, tips.texi, variables.texi: | ||
| 21 | Use Texinfo recommended convention for quotes+punctuation. | ||
| 22 | |||
| 23 | 2012-04-27 Chong Yidong <cyd@gnu.org> | ||
| 24 | |||
| 25 | * keymaps.texi (Scanning Keymaps): Fix description of NO-REMAP arg | ||
| 26 | to where-is-internal (Bug#10872). | ||
| 27 | |||
| 28 | 2012-04-27 Glenn Morris <rgm@gnu.org> | ||
| 29 | |||
| 30 | * macros.texi (Indenting Macros): Fix typo. | ||
| 31 | |||
| 32 | * windows.texi (Basic Windows, Windows and Frames, Window Sizes) | ||
| 33 | (Resizing Windows, Deleting Windows, Selecting Windows) | ||
| 34 | (Choosing Window Options, Horizontal Scrolling) | ||
| 35 | (Cyclic Window Ordering, Window History, Dedicated Windows) | ||
| 36 | (Quitting Windows, Window Configurations, Textual Scrolling): | ||
| 37 | (Coordinates and Windows, Window Configurations) | ||
| 38 | (Window Parameters, Window Hooks): Copyedits. | ||
| 39 | (Splitting Windows, Deleting Windows): | ||
| 40 | Fix ignore-window-parameters logic. | ||
| 41 | (Selecting Windows, Choosing Window Options): Markup fixes. | ||
| 42 | (Window Start and End): Remove pointless example. | ||
| 43 | Remove cross-reference to deleted count-lines content. | ||
| 44 | (Textual Scrolling): Mention recenter-redisplay, recenter-top-bottom, | ||
| 45 | and recenter-positions. Remove recenter example. | ||
| 46 | |||
| 47 | * elisp.texi, vol1.texi, vol2.texi: Bump VERSION and DATE. | ||
| 48 | |||
| 49 | * minibuf.texi (Intro to Minibuffers): | ||
| 50 | Tweak discussion of resizing minibuffer window. | ||
| 51 | |||
| 1 | 2012-04-26 Glenn Morris <rgm@gnu.org> | 52 | 2012-04-26 Glenn Morris <rgm@gnu.org> |
| 2 | 53 | ||
| 3 | * elisp-covers.texi, front-cover-1.texi: Remove files. | 54 | * elisp-covers.texi, front-cover-1.texi: Remove files. |
diff --git a/doc/lispref/book-spine.texi b/doc/lispref/book-spine.texi index 270def6d8b3..721416316d2 100644 --- a/doc/lispref/book-spine.texi +++ b/doc/lispref/book-spine.texi | |||
| @@ -20,8 +20,8 @@ | |||
| 20 | @center by | 20 | @center by |
| 21 | @center Bil Lewis, | 21 | @center Bil Lewis, |
| 22 | @center Dan LaLiberte, | 22 | @center Dan LaLiberte, |
| 23 | @center and the | 23 | @center the GNU Manual Group, |
| 24 | @center GNU Manual Group | 24 | @center et al. |
| 25 | @sp 5 | 25 | @sp 5 |
| 26 | @center Free Software Foundation | 26 | @center Free Software Foundation |
| 27 | @bye | 27 | @bye |
diff --git a/doc/lispref/buffers.texi b/doc/lispref/buffers.texi index 844b6423a52..165faf32b09 100644 --- a/doc/lispref/buffers.texi +++ b/doc/lispref/buffers.texi | |||
| @@ -23,7 +23,7 @@ not be displayed in any windows. | |||
| 23 | * Buffer File Name:: The buffer file name indicates which file is visited. | 23 | * Buffer File Name:: The buffer file name indicates which file is visited. |
| 24 | * Buffer Modification:: A buffer is @dfn{modified} if it needs to be saved. | 24 | * Buffer Modification:: A buffer is @dfn{modified} if it needs to be saved. |
| 25 | * Modification Time:: Determining whether the visited file was changed | 25 | * Modification Time:: Determining whether the visited file was changed |
| 26 | ``behind Emacs's back''. | 26 | "behind Emacs's back". |
| 27 | * Read Only Buffers:: Modifying text is not allowed in a read-only buffer. | 27 | * Read Only Buffers:: Modifying text is not allowed in a read-only buffer. |
| 28 | * The Buffer List:: How to look at all the existing buffers. | 28 | * The Buffer List:: How to look at all the existing buffers. |
| 29 | * Creating Buffers:: Functions that create buffers. | 29 | * Creating Buffers:: Functions that create buffers. |
| @@ -481,7 +481,7 @@ correspond to the new file name, unless the new name is already in | |||
| 481 | use. | 481 | use. |
| 482 | 482 | ||
| 483 | If @var{filename} is @code{nil} or the empty string, that stands for | 483 | If @var{filename} is @code{nil} or the empty string, that stands for |
| 484 | ``no visited file.'' In this case, @code{set-visited-file-name} marks | 484 | ``no visited file''. In this case, @code{set-visited-file-name} marks |
| 485 | the buffer as having no visited file, without changing the buffer's | 485 | the buffer as having no visited file, without changing the buffer's |
| 486 | modified flag. | 486 | modified flag. |
| 487 | 487 | ||
diff --git a/doc/lispref/commands.texi b/doc/lispref/commands.texi index bf26d83b7bf..dea838462bb 100644 --- a/doc/lispref/commands.texi +++ b/doc/lispref/commands.texi | |||
| @@ -718,7 +718,7 @@ We use @code{"p"} because the numeric prefix argument is never | |||
| 718 | message when called from a keyboard macro. | 718 | message when called from a keyboard macro. |
| 719 | 719 | ||
| 720 | The above method with the additional argument is usually best, | 720 | The above method with the additional argument is usually best, |
| 721 | because it allows callers to say ``treat this call as interactive.'' | 721 | because it allows callers to say ``treat this call as interactive''. |
| 722 | But you can also do the job by testing @code{called-interactively-p}. | 722 | But you can also do the job by testing @code{called-interactively-p}. |
| 723 | 723 | ||
| 724 | @defun called-interactively-p kind | 724 | @defun called-interactively-p kind |
| @@ -2325,7 +2325,7 @@ same symbol that would normally represent that combination of mouse | |||
| 2325 | button and modifier keys. The information about the window part is kept | 2325 | button and modifier keys. The information about the window part is kept |
| 2326 | elsewhere in the event---in the coordinates. But | 2326 | elsewhere in the event---in the coordinates. But |
| 2327 | @code{read-key-sequence} translates this information into imaginary | 2327 | @code{read-key-sequence} translates this information into imaginary |
| 2328 | ``prefix keys,'' all of which are symbols: @code{header-line}, | 2328 | ``prefix keys'', all of which are symbols: @code{header-line}, |
| 2329 | @code{horizontal-scroll-bar}, @code{menu-bar}, @code{mode-line}, | 2329 | @code{horizontal-scroll-bar}, @code{menu-bar}, @code{mode-line}, |
| 2330 | @code{vertical-line}, and @code{vertical-scroll-bar}. You can define | 2330 | @code{vertical-line}, and @code{vertical-scroll-bar}. You can define |
| 2331 | meanings for mouse clicks in special window parts by defining key | 2331 | meanings for mouse clicks in special window parts by defining key |
| @@ -2705,7 +2705,7 @@ individual events, which you can put in @code{unread-command-events}. | |||
| 2705 | 2705 | ||
| 2706 | @defvar unread-command-char | 2706 | @defvar unread-command-char |
| 2707 | This variable holds a character to be read as command input. | 2707 | This variable holds a character to be read as command input. |
| 2708 | A value of -1 means ``empty.'' | 2708 | A value of -1 means ``empty''. |
| 2709 | 2709 | ||
| 2710 | This variable is mostly obsolete now that you can use | 2710 | This variable is mostly obsolete now that you can use |
| 2711 | @code{unread-command-events} instead; it exists only to support programs | 2711 | @code{unread-command-events} instead; it exists only to support programs |
| @@ -3195,7 +3195,7 @@ using the minibuffer. Usually it is more convenient for the user if you | |||
| 3195 | change the major mode of the current buffer temporarily to a special | 3195 | change the major mode of the current buffer temporarily to a special |
| 3196 | major mode, which should have a command to go back to the previous mode. | 3196 | major mode, which should have a command to go back to the previous mode. |
| 3197 | (The @kbd{e} command in Rmail uses this technique.) Or, if you wish to | 3197 | (The @kbd{e} command in Rmail uses this technique.) Or, if you wish to |
| 3198 | give the user different text to edit ``recursively,'' create and select | 3198 | give the user different text to edit ``recursively'', create and select |
| 3199 | a new buffer in a special mode. In this mode, define a command to | 3199 | a new buffer in a special mode. In this mode, define a command to |
| 3200 | complete the processing and go back to the previous buffer. (The | 3200 | complete the processing and go back to the previous buffer. (The |
| 3201 | @kbd{m} command in Rmail does this.) | 3201 | @kbd{m} command in Rmail does this.) |
diff --git a/doc/lispref/compile.texi b/doc/lispref/compile.texi index ead75942b24..8cebd9fade6 100644 --- a/doc/lispref/compile.texi +++ b/doc/lispref/compile.texi | |||
| @@ -274,7 +274,7 @@ reloading each file after recompiling it. | |||
| 274 | use a special Lisp reader construct, @samp{#@@@var{count}}. This | 274 | use a special Lisp reader construct, @samp{#@@@var{count}}. This |
| 275 | construct skips the next @var{count} characters. It also uses the | 275 | construct skips the next @var{count} characters. It also uses the |
| 276 | @samp{#$} construct, which stands for ``the name of this file, as a | 276 | @samp{#$} construct, which stands for ``the name of this file, as a |
| 277 | string.'' It is usually best not to use these constructs in Lisp source | 277 | string''. It is usually best not to use these constructs in Lisp source |
| 278 | files, since they are not designed to be clear to humans reading the | 278 | files, since they are not designed to be clear to humans reading the |
| 279 | file. | 279 | file. |
| 280 | 280 | ||
diff --git a/doc/lispref/control.texi b/doc/lispref/control.texi index aa24291d892..d6dee7ecf91 100644 --- a/doc/lispref/control.texi +++ b/doc/lispref/control.texi | |||
| @@ -220,7 +220,7 @@ non-@code{nil}, the clause ``succeeds''; then @code{cond} evaluates its | |||
| 220 | @var{body-forms}, and the value of the last of @var{body-forms} becomes | 220 | @var{body-forms}, and the value of the last of @var{body-forms} becomes |
| 221 | the value of the @code{cond}. The remaining clauses are ignored. | 221 | the value of the @code{cond}. The remaining clauses are ignored. |
| 222 | 222 | ||
| 223 | If the value of @var{condition} is @code{nil}, the clause ``fails,'' so | 223 | If the value of @var{condition} is @code{nil}, the clause ``fails'', so |
| 224 | the @code{cond} moves on to the following clause, trying its | 224 | the @code{cond} moves on to the following clause, trying its |
| 225 | @var{condition}. | 225 | @var{condition}. |
| 226 | 226 | ||
| @@ -622,7 +622,7 @@ error is signaled with data @code{(@var{tag} @var{value})}. | |||
| 622 | @subsection Examples of @code{catch} and @code{throw} | 622 | @subsection Examples of @code{catch} and @code{throw} |
| 623 | 623 | ||
| 624 | One way to use @code{catch} and @code{throw} is to exit from a doubly | 624 | One way to use @code{catch} and @code{throw} is to exit from a doubly |
| 625 | nested loop. (In most languages, this would be done with a ``goto.'') | 625 | nested loop. (In most languages, this would be done with a ``goto''.) |
| 626 | Here we compute @code{(foo @var{i} @var{j})} for @var{i} and @var{j} | 626 | Here we compute @code{(foo @var{i} @var{j})} for @var{i} and @var{j} |
| 627 | varying from 0 to 9: | 627 | varying from 0 to 9: |
| 628 | 628 | ||
diff --git a/doc/lispref/customize.texi b/doc/lispref/customize.texi index 04b3cdd11f0..c8e60fd84f4 100644 --- a/doc/lispref/customize.texi +++ b/doc/lispref/customize.texi | |||
| @@ -817,7 +817,7 @@ For example, | |||
| 817 | 817 | ||
| 818 | @noindent | 818 | @noindent |
| 819 | describes a variable for which @code{t} means yes, @code{nil} means no, | 819 | describes a variable for which @code{t} means yes, @code{nil} means no, |
| 820 | and @code{foo} means ``ask.'' | 820 | and @code{foo} means ``ask''. |
| 821 | 821 | ||
| 822 | @item (other @var{value}) | 822 | @item (other @var{value}) |
| 823 | This alternative can match any Lisp value, but if the user chooses this | 823 | This alternative can match any Lisp value, but if the user chooses this |
| @@ -834,7 +834,7 @@ For example, | |||
| 834 | 834 | ||
| 835 | @noindent | 835 | @noindent |
| 836 | describes a variable for which @code{t} means yes, @code{nil} means no, | 836 | describes a variable for which @code{t} means yes, @code{nil} means no, |
| 837 | and anything else means ``ask.'' If the user chooses @samp{Ask} from | 837 | and anything else means ``ask''. If the user chooses @samp{Ask} from |
| 838 | the menu of alternatives, that specifies the value @code{foo}; but any | 838 | the menu of alternatives, that specifies the value @code{foo}; but any |
| 839 | other value (not @code{t}, @code{nil} or @code{foo}) displays as | 839 | other value (not @code{t}, @code{nil} or @code{foo}) displays as |
| 840 | @samp{Ask}, just like @code{foo}. | 840 | @samp{Ask}, just like @code{foo}. |
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi index 0113ae86358..4ec3b8bf08a 100644 --- a/doc/lispref/display.texi +++ b/doc/lispref/display.texi | |||
| @@ -155,7 +155,7 @@ boundary. @xref{Filling}. | |||
| 155 | indicate truncated and continued lines (@pxref{Fringes}). On a text | 155 | indicate truncated and continued lines (@pxref{Fringes}). On a text |
| 156 | terminal, a @samp{$} in the rightmost column of the window indicates | 156 | terminal, a @samp{$} in the rightmost column of the window indicates |
| 157 | truncation; a @samp{\} on the rightmost column indicates a line that | 157 | truncation; a @samp{\} on the rightmost column indicates a line that |
| 158 | ``wraps.'' (The display table can specify alternate characters to use | 158 | ``wraps''. (The display table can specify alternate characters to use |
| 159 | for this; @pxref{Display Tables}). | 159 | for this; @pxref{Display Tables}). |
| 160 | 160 | ||
| 161 | @defopt truncate-lines | 161 | @defopt truncate-lines |
| @@ -451,7 +451,7 @@ prints the message of @var{reporter} followed by word ``done'' in the | |||
| 451 | echo area. | 451 | echo area. |
| 452 | 452 | ||
| 453 | You should always call this function and not hope for | 453 | You should always call this function and not hope for |
| 454 | @code{progress-reporter-update} to print ``100%.'' Firstly, it may | 454 | @code{progress-reporter-update} to print ``100%''. Firstly, it may |
| 455 | never print it, there are many good reasons for this not to happen. | 455 | never print it, there are many good reasons for this not to happen. |
| 456 | Secondly, ``done'' is more explicit. | 456 | Secondly, ``done'' is more explicit. |
| 457 | @end defun | 457 | @end defun |
| @@ -1308,7 +1308,7 @@ The return value is @var{overlay}. | |||
| 1308 | This is the only valid way to change the endpoints of an overlay. Do | 1308 | This is the only valid way to change the endpoints of an overlay. Do |
| 1309 | not try modifying the markers in the overlay by hand, as that fails to | 1309 | not try modifying the markers in the overlay by hand, as that fails to |
| 1310 | update other vital data structures and can cause some overlays to be | 1310 | update other vital data structures and can cause some overlays to be |
| 1311 | ``lost.'' | 1311 | ``lost''. |
| 1312 | @end defun | 1312 | @end defun |
| 1313 | 1313 | ||
| 1314 | @defun remove-overlays &optional start end name value | 1314 | @defun remove-overlays &optional start end name value |
| @@ -1385,7 +1385,7 @@ foo | |||
| 1385 | @end example | 1385 | @end example |
| 1386 | 1386 | ||
| 1387 | Emacs stores the overlays of each buffer in two lists, divided | 1387 | Emacs stores the overlays of each buffer in two lists, divided |
| 1388 | around an arbitrary ``center position.'' One list extends backwards | 1388 | around an arbitrary ``center position''. One list extends backwards |
| 1389 | through the buffer from that center position, and the other extends | 1389 | through the buffer from that center position, and the other extends |
| 1390 | forwards from that center position. The center position can be anywhere | 1390 | forwards from that center position. The center position can be anywhere |
| 1391 | in the buffer. | 1391 | in the buffer. |
| @@ -4359,7 +4359,7 @@ $$\pmatrix{ 2 & -1 & 0 \cr | |||
| 4359 | @end ifnottex | 4359 | @end ifnottex |
| 4360 | 4360 | ||
| 4361 | @item disabled | 4361 | @item disabled |
| 4362 | Specifies transforming the image so that it looks ``disabled.'' | 4362 | Specifies transforming the image so that it looks ``disabled''. |
| 4363 | @end table | 4363 | @end table |
| 4364 | 4364 | ||
| 4365 | @item :mask @var{mask} | 4365 | @item :mask @var{mask} |
| @@ -5531,7 +5531,7 @@ Any @var{args} are passed to @var{map-function}. | |||
| 5531 | @subsection Abstract Display Example | 5531 | @subsection Abstract Display Example |
| 5532 | 5532 | ||
| 5533 | Here is a simple example using functions of the ewoc package to | 5533 | Here is a simple example using functions of the ewoc package to |
| 5534 | implement a ``color components display,'' an area in a buffer that | 5534 | implement a ``color components display'', an area in a buffer that |
| 5535 | represents a vector of three integers (itself representing a 24-bit RGB | 5535 | represents a vector of three integers (itself representing a 24-bit RGB |
| 5536 | value) in various ways. | 5536 | value) in various ways. |
| 5537 | 5537 | ||
| @@ -5842,7 +5842,7 @@ display the character @var{c} as those glyphs; @pxref{Glyphs}). | |||
| 5842 | 5842 | ||
| 5843 | @strong{Warning:} if you use the display table to change the display | 5843 | @strong{Warning:} if you use the display table to change the display |
| 5844 | of newline characters, the whole buffer will be displayed as one long | 5844 | of newline characters, the whole buffer will be displayed as one long |
| 5845 | ``line.'' | 5845 | ``line''. |
| 5846 | 5846 | ||
| 5847 | The display table also has six ``extra slots'' which serve special | 5847 | The display table also has six ``extra slots'' which serve special |
| 5848 | purposes. Here is a table of their meanings; @code{nil} in any slot | 5848 | purposes. Here is a table of their meanings; @code{nil} in any slot |
| @@ -6153,7 +6153,7 @@ capability (@samp{vb}). | |||
| 6153 | 6153 | ||
| 6154 | @defvar ring-bell-function | 6154 | @defvar ring-bell-function |
| 6155 | If this is non-@code{nil}, it specifies how Emacs should ``ring the | 6155 | If this is non-@code{nil}, it specifies how Emacs should ``ring the |
| 6156 | bell.'' Its value should be a function of no arguments. If this is | 6156 | bell''. Its value should be a function of no arguments. If this is |
| 6157 | non-@code{nil}, it takes precedence over the @code{visible-bell} | 6157 | non-@code{nil}, it takes precedence over the @code{visible-bell} |
| 6158 | variable. | 6158 | variable. |
| 6159 | @end defvar | 6159 | @end defvar |
| @@ -6162,7 +6162,7 @@ variable. | |||
| 6162 | @section Window Systems | 6162 | @section Window Systems |
| 6163 | 6163 | ||
| 6164 | Emacs works with several window systems, most notably the X Window | 6164 | Emacs works with several window systems, most notably the X Window |
| 6165 | System. Both Emacs and X use the term ``window,'' but use it | 6165 | System. Both Emacs and X use the term ``window'', but use it |
| 6166 | differently. An Emacs frame is a single window as far as X is | 6166 | differently. An Emacs frame is a single window as far as X is |
| 6167 | concerned; the individual Emacs windows are not known to X at all. | 6167 | concerned; the individual Emacs windows are not known to X at all. |
| 6168 | 6168 | ||
diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi index 4319d5eddda..9c5ae73f718 100644 --- a/doc/lispref/elisp.texi +++ b/doc/lispref/elisp.texi | |||
| @@ -5,11 +5,10 @@ | |||
| 5 | @c %**end of header | 5 | @c %**end of header |
| 6 | 6 | ||
| 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 these in vol1.texi and vol2.texi as well. |
| 9 | @c And also the copies in vol1.texi and vol2.texi. | 9 | @set VERSION 3.1 |
| 10 | @set VERSION 3.0 | ||
| 11 | @include emacsver.texi | 10 | @include emacsver.texi |
| 12 | @set DATE July 2009 | 11 | @set DATE July 2012 |
| 13 | 12 | ||
| 14 | @c in general, keep the following line commented out, unless doing a | 13 | @c in general, keep the following line commented out, unless doing a |
| 15 | @c copy of this manual that will be published. The manual should go | 14 | @c copy of this manual that will be published. The manual should go |
| @@ -73,8 +72,8 @@ developing GNU and promoting software freedom.'' | |||
| 73 | @subtitle For Emacs Version @value{EMACSVER} | 72 | @subtitle For Emacs Version @value{EMACSVER} |
| 74 | @subtitle Revision @value{VERSION}, @value{DATE} | 73 | @subtitle Revision @value{VERSION}, @value{DATE} |
| 75 | 74 | ||
| 76 | @author by Bil Lewis, Dan LaLiberte, Richard Stallman | 75 | @author by Bil Lewis, Dan LaLiberte, Richard Stallman, |
| 77 | @author and the GNU Manual Group | 76 | @author the GNU Manual Group, et al. |
| 78 | @page | 77 | @page |
| 79 | @vskip 0pt plus 1filll | 78 | @vskip 0pt plus 1filll |
| 80 | @insertcopying | 79 | @insertcopying |
| @@ -460,7 +459,7 @@ Functions | |||
| 460 | * Closures:: Functions that enclose a lexical environment. | 459 | * Closures:: Functions that enclose a lexical environment. |
| 461 | * Obsolete Functions:: Declaring functions obsolete. | 460 | * Obsolete Functions:: Declaring functions obsolete. |
| 462 | * Inline Functions:: Defining functions that the compiler | 461 | * Inline Functions:: Defining functions that the compiler |
| 463 | will open code. | 462 | will expand inline. |
| 464 | * Declaring Functions:: Telling the compiler that a function is defined. | 463 | * Declaring Functions:: Telling the compiler that a function is defined. |
| 465 | * Function Safety:: Determining whether a function is safe to call. | 464 | * Function Safety:: Determining whether a function is safe to call. |
| 466 | * Related Topics:: Cross-references to specific Lisp primitives | 465 | * Related Topics:: Cross-references to specific Lisp primitives |
| @@ -493,7 +492,7 @@ Common Problems Using Macros | |||
| 493 | * Eval During Expansion:: Don't evaluate them; put them in the expansion. | 492 | * Eval During Expansion:: Don't evaluate them; put them in the expansion. |
| 494 | * Repeated Expansion:: Avoid depending on how many times expansion is done. | 493 | * Repeated Expansion:: Avoid depending on how many times expansion is done. |
| 495 | 494 | ||
| 496 | Writing Customization Definitions | 495 | Customization Settings |
| 497 | 496 | ||
| 498 | * Common Keywords:: Common keyword arguments for all kinds of | 497 | * Common Keywords:: Common keyword arguments for all kinds of |
| 499 | customization declarations. | 498 | customization declarations. |
| @@ -754,6 +753,7 @@ Defining Menus | |||
| 754 | various features. | 753 | various features. |
| 755 | * Menu Separators:: Drawing a horizontal line through a menu. | 754 | * Menu Separators:: Drawing a horizontal line through a menu. |
| 756 | * Alias Menu Items:: Using command aliases in menu items. | 755 | * Alias Menu Items:: Using command aliases in menu items. |
| 756 | * Toolkit Differences:: Not all toolkits provide the same features. | ||
| 757 | 757 | ||
| 758 | Major and Minor Modes | 758 | Major and Minor Modes |
| 759 | 759 | ||
| @@ -824,6 +824,21 @@ Multiline Font Lock Constructs | |||
| 824 | * Region to Refontify:: Controlling which region gets refontified | 824 | * Region to Refontify:: Controlling which region gets refontified |
| 825 | after a buffer change. | 825 | after a buffer change. |
| 826 | 826 | ||
| 827 | Automatic Indentation of code | ||
| 828 | |||
| 829 | * SMIE:: A simple minded indentation engine. | ||
| 830 | |||
| 831 | Simple Minded Indentation Engine | ||
| 832 | |||
| 833 | * SMIE setup:: SMIE setup and features. | ||
| 834 | * Operator Precedence Grammars:: A very simple parsing technique. | ||
| 835 | * SMIE Grammar:: Defining the grammar of a language. | ||
| 836 | * SMIE Lexer:: Defining tokens. | ||
| 837 | * SMIE Tricks:: Working around the parser's limitations. | ||
| 838 | * SMIE Indentation:: Specifying indentation rules. | ||
| 839 | * SMIE Indentation Helpers:: Helper functions for indentation rules. | ||
| 840 | * SMIE Indentation Example:: Sample indentation rules. | ||
| 841 | |||
| 827 | Documentation | 842 | Documentation |
| 828 | 843 | ||
| 829 | * Documentation Basics:: Where doc strings are defined and stored. | 844 | * Documentation Basics:: Where doc strings are defined and stored. |
| @@ -1220,8 +1235,7 @@ Processes | |||
| 1220 | * Datagrams:: UDP network connections. | 1235 | * Datagrams:: UDP network connections. |
| 1221 | * Low-Level Network:: Lower-level but more general function | 1236 | * Low-Level Network:: Lower-level but more general function |
| 1222 | to create connections and servers. | 1237 | to create connections and servers. |
| 1223 | * Misc Network:: Additional relevant functions for | 1238 | * Misc Network:: Additional relevant functions for net connections. |
| 1224 | network connections. | ||
| 1225 | * Serial Ports:: Communicating with serial ports. | 1239 | * Serial Ports:: Communicating with serial ports. |
| 1226 | * Byte Packing:: Using bindat to pack and unpack binary data. | 1240 | * Byte Packing:: Using bindat to pack and unpack binary data. |
| 1227 | 1241 | ||
| @@ -1341,6 +1355,7 @@ Images | |||
| 1341 | * GIF Images:: Special features for GIF format. | 1355 | * GIF Images:: Special features for GIF format. |
| 1342 | * TIFF Images:: Special features for TIFF format. | 1356 | * TIFF Images:: Special features for TIFF format. |
| 1343 | * PostScript Images:: Special features for PostScript format. | 1357 | * PostScript Images:: Special features for PostScript format. |
| 1358 | * ImageMagick Images:: Special features available through ImageMagick. | ||
| 1344 | * Other Image Types:: Various other formats are supported. | 1359 | * Other Image Types:: Various other formats are supported. |
| 1345 | * Defining Images:: Convenient ways to define an image for later use. | 1360 | * Defining Images:: Convenient ways to define an image for later use. |
| 1346 | * Showing Images:: Convenient ways to display an image once | 1361 | * Showing Images:: Convenient ways to display an image once |
| @@ -1396,13 +1411,6 @@ Operating System Interface | |||
| 1396 | * Notifications:: Desktop notifications. | 1411 | * Notifications:: Desktop notifications. |
| 1397 | * Dynamic Libraries:: On-demand loading of support libraries. | 1412 | * Dynamic Libraries:: On-demand loading of support libraries. |
| 1398 | 1413 | ||
| 1399 | Preparing Lisp code for distribution | ||
| 1400 | |||
| 1401 | * Packaging Basics:: The basic concepts of Emacs Lisp packages. | ||
| 1402 | * Simple Packages:: How to package a single .el file. | ||
| 1403 | * Multi-file Packages:: How to package multiple files. | ||
| 1404 | * Package Archives:: Maintaining package archives. | ||
| 1405 | |||
| 1406 | Starting Up Emacs | 1414 | Starting Up Emacs |
| 1407 | 1415 | ||
| 1408 | * Startup Summary:: Sequence of actions Emacs performs at startup. | 1416 | * Startup Summary:: Sequence of actions Emacs performs at startup. |
| @@ -1421,6 +1429,13 @@ Terminal Input | |||
| 1421 | * Input Modes:: Options for how input is processed. | 1429 | * Input Modes:: Options for how input is processed. |
| 1422 | * Recording Input:: Saving histories of recent or all input events. | 1430 | * Recording Input:: Saving histories of recent or all input events. |
| 1423 | 1431 | ||
| 1432 | Preparing Lisp code for distribution | ||
| 1433 | |||
| 1434 | * Packaging Basics:: The basic concepts of Emacs Lisp packages. | ||
| 1435 | * Simple Packages:: How to package a single .el file. | ||
| 1436 | * Multi-file Packages:: How to package multiple files. | ||
| 1437 | * Package Archives:: Maintaining package archives. | ||
| 1438 | |||
| 1424 | Tips and Conventions | 1439 | Tips and Conventions |
| 1425 | 1440 | ||
| 1426 | * Coding Conventions:: Conventions for clean and robust programs. | 1441 | * Coding Conventions:: Conventions for clean and robust programs. |
diff --git a/doc/lispref/eval.texi b/doc/lispref/eval.texi index 4c1150d1a51..76059079ca1 100644 --- a/doc/lispref/eval.texi +++ b/doc/lispref/eval.texi | |||
| @@ -103,7 +103,7 @@ interpretation. @xref{Command Loop}. | |||
| 103 | @dfn{form} (or an @dfn{expression}). How Emacs evaluates a form | 103 | @dfn{form} (or an @dfn{expression}). How Emacs evaluates a form |
| 104 | depends on its data type. Emacs has three different kinds of form | 104 | depends on its data type. Emacs has three different kinds of form |
| 105 | that are evaluated differently: symbols, lists, and ``all other | 105 | that are evaluated differently: symbols, lists, and ``all other |
| 106 | types.'' This section describes all three kinds, one by one, starting | 106 | types''. This section describes all three kinds, one by one, starting |
| 107 | with the ``all other types'' which are self-evaluating forms. | 107 | with the ``all other types'' which are self-evaluating forms. |
| 108 | 108 | ||
| 109 | @menu | 109 | @menu |
| @@ -304,6 +304,22 @@ function, not a symbol. | |||
| 304 | Executing the function itself evaluates its body; this does involve | 304 | Executing the function itself evaluates its body; this does involve |
| 305 | symbol function indirection when calling @code{erste}. | 305 | symbol function indirection when calling @code{erste}. |
| 306 | 306 | ||
| 307 | This form is rarely used and is now deprecated. Instead, you should write it | ||
| 308 | as: | ||
| 309 | |||
| 310 | @smallexample | ||
| 311 | @group | ||
| 312 | (funcall (lambda (arg) (erste arg)) | ||
| 313 | '(1 2 3)) | ||
| 314 | @end group | ||
| 315 | @end smallexample | ||
| 316 | or just | ||
| 317 | @smallexample | ||
| 318 | @group | ||
| 319 | (let ((arg '(1 2 3))) (erste arg)) | ||
| 320 | @end group | ||
| 321 | @end smallexample | ||
| 322 | |||
| 307 | The built-in function @code{indirect-function} provides an easy way to | 323 | The built-in function @code{indirect-function} provides an easy way to |
| 308 | perform symbol function indirection explicitly. | 324 | perform symbol function indirection explicitly. |
| 309 | 325 | ||
diff --git a/doc/lispref/files.texi b/doc/lispref/files.texi index 3597d9f80c4..1af904aff41 100644 --- a/doc/lispref/files.texi +++ b/doc/lispref/files.texi | |||
| @@ -71,8 +71,8 @@ back into the file. | |||
| 71 | 71 | ||
| 72 | In spite of the distinction between files and buffers, people often | 72 | In spite of the distinction between files and buffers, people often |
| 73 | refer to a file when they mean a buffer and vice-versa. Indeed, we say, | 73 | refer to a file when they mean a buffer and vice-versa. Indeed, we say, |
| 74 | ``I am editing a file,'' rather than, ``I am editing a buffer that I | 74 | ``I am editing a file'', rather than, ``I am editing a buffer that I |
| 75 | will soon save as a file of the same name.'' Humans do not usually need | 75 | will soon save as a file of the same name''. Humans do not usually need |
| 76 | to make the distinction explicit. When dealing with a computer program, | 76 | to make the distinction explicit. When dealing with a computer program, |
| 77 | however, it is good to keep the distinction in mind. | 77 | however, it is good to keep the distinction in mind. |
| 78 | 78 | ||
| @@ -688,7 +688,7 @@ The file lock is really a file, a symbolic link with a special name, | |||
| 688 | stored in the same directory as the file you are editing. | 688 | stored in the same directory as the file you are editing. |
| 689 | 689 | ||
| 690 | When you access files using NFS, there may be a small probability that | 690 | When you access files using NFS, there may be a small probability that |
| 691 | you and another user will both lock the same file ``simultaneously.'' | 691 | you and another user will both lock the same file ``simultaneously''. |
| 692 | If this happens, it is possible for the two users to make changes | 692 | If this happens, it is possible for the two users to make changes |
| 693 | simultaneously, but Emacs will still warn the user who saves second. | 693 | simultaneously, but Emacs will still warn the user who saves second. |
| 694 | Also, the detection of modification of a buffer visiting a file changed | 694 | Also, the detection of modification of a buffer visiting a file changed |
| @@ -1806,7 +1806,7 @@ return value, but backup version numbers are kept. | |||
| 1806 | @end defun | 1806 | @end defun |
| 1807 | 1807 | ||
| 1808 | @defun file-name-extension filename &optional period | 1808 | @defun file-name-extension filename &optional period |
| 1809 | This function returns @var{filename}'s final ``extension,'' if any, | 1809 | This function returns @var{filename}'s final ``extension'', if any, |
| 1810 | after applying @code{file-name-sans-versions} to remove any | 1810 | after applying @code{file-name-sans-versions} to remove any |
| 1811 | version/backup part. The extension, in a file name, is the part that | 1811 | version/backup part. The extension, in a file name, is the part that |
| 1812 | follows the last @samp{.} in the last name component (minus any | 1812 | follows the last @samp{.} in the last name component (minus any |
| @@ -2798,7 +2798,7 @@ unlocking the buffer if it is locked. | |||
| 2798 | possibly others to be added in the future. It need not implement all | 2798 | possibly others to be added in the future. It need not implement all |
| 2799 | these operations itself---when it has nothing special to do for a | 2799 | these operations itself---when it has nothing special to do for a |
| 2800 | certain operation, it can reinvoke the primitive, to handle the | 2800 | certain operation, it can reinvoke the primitive, to handle the |
| 2801 | operation ``in the usual way.'' It should always reinvoke the primitive | 2801 | operation ``in the usual way''. It should always reinvoke the primitive |
| 2802 | for an operation it does not recognize. Here's one way to do this: | 2802 | for an operation it does not recognize. Here's one way to do this: |
| 2803 | 2803 | ||
| 2804 | @smallexample | 2804 | @smallexample |
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi index d824f51e47e..869f03e2273 100644 --- a/doc/lispref/frames.texi +++ b/doc/lispref/frames.texi | |||
| @@ -882,7 +882,7 @@ This variable specifies how to blink the cursor. Each element has the | |||
| 882 | form @code{(@var{on-state} . @var{off-state})}. Whenever the cursor | 882 | form @code{(@var{on-state} . @var{off-state})}. Whenever the cursor |
| 883 | type equals @var{on-state} (comparing using @code{equal}), the | 883 | type equals @var{on-state} (comparing using @code{equal}), the |
| 884 | corresponding @var{off-state} specifies what the cursor looks like | 884 | corresponding @var{off-state} specifies what the cursor looks like |
| 885 | when it blinks ``off.'' Both @var{on-state} and @var{off-state} | 885 | when it blinks ``off''. Both @var{on-state} and @var{off-state} |
| 886 | should be suitable values for the @code{cursor-type} frame parameter. | 886 | should be suitable values for the @code{cursor-type} frame parameter. |
| 887 | 887 | ||
| 888 | There are various defaults for how to blink each type of cursor, if | 888 | There are various defaults for how to blink each type of cursor, if |
| @@ -1069,7 +1069,7 @@ characters rather than pixels. | |||
| 1069 | These values include the internal borders, and windows' scroll bars | 1069 | These values include the internal borders, and windows' scroll bars |
| 1070 | and fringes (which belong to individual windows, not to the frame | 1070 | and fringes (which belong to individual windows, not to the frame |
| 1071 | itself). The exact value of the heights depends on the window-system | 1071 | itself). The exact value of the heights depends on the window-system |
| 1072 | and toolkit in use. With Gtk+, the height does not include any tool | 1072 | and toolkit in use. With GTK+, the height does not include any tool |
| 1073 | bar or menu bar. With the Motif or Lucid toolkits, it includes the | 1073 | bar or menu bar. With the Motif or Lucid toolkits, it includes the |
| 1074 | tool bar but not the menu bar. In a graphical version with no | 1074 | tool bar but not the menu bar. In a graphical version with no |
| 1075 | toolkit, it includes both the tool bar and menu bar. For a text | 1075 | toolkit, it includes both the tool bar and menu bar. For a text |
| @@ -1532,7 +1532,7 @@ track of such changes. @xref{Misc Events}. | |||
| 1532 | Most window systems use a desktop metaphor. Part of this metaphor is | 1532 | Most window systems use a desktop metaphor. Part of this metaphor is |
| 1533 | the idea that windows are stacked in a notional third dimension | 1533 | the idea that windows are stacked in a notional third dimension |
| 1534 | perpendicular to the screen surface, and thus ordered from ``highest'' | 1534 | perpendicular to the screen surface, and thus ordered from ``highest'' |
| 1535 | to ``lowest.'' Where two windows overlap, the one higher up covers | 1535 | to ``lowest''. Where two windows overlap, the one higher up covers |
| 1536 | the one underneath. Even a window at the bottom of the stack can be | 1536 | the one underneath. Even a window at the bottom of the stack can be |
| 1537 | seen if no other window overlaps it. | 1537 | seen if no other window overlaps it. |
| 1538 | 1538 | ||
| @@ -1540,7 +1540,7 @@ seen if no other window overlaps it. | |||
| 1540 | @cindex lowering a frame | 1540 | @cindex lowering a frame |
| 1541 | A window's place in this ordering is not fixed; in fact, users tend | 1541 | A window's place in this ordering is not fixed; in fact, users tend |
| 1542 | to change the order frequently. @dfn{Raising} a window means moving | 1542 | to change the order frequently. @dfn{Raising} a window means moving |
| 1543 | it ``up,'' to the top of the stack. @dfn{Lowering} a window means | 1543 | it ``up'', to the top of the stack. @dfn{Lowering} a window means |
| 1544 | moving it to the bottom of the stack. This motion is in the notional | 1544 | moving it to the bottom of the stack. This motion is in the notional |
| 1545 | third dimension only, and does not change the position of the window | 1545 | third dimension only, and does not change the position of the window |
| 1546 | on the screen. | 1546 | on the screen. |
| @@ -1814,7 +1814,7 @@ the menu keymap as necessary. | |||
| 1814 | A dialog box is a variant of a pop-up menu---it looks a little | 1814 | A dialog box is a variant of a pop-up menu---it looks a little |
| 1815 | different, it always appears in the center of a frame, and it has just | 1815 | different, it always appears in the center of a frame, and it has just |
| 1816 | one level and one or more buttons. The main use of dialog boxes is | 1816 | one level and one or more buttons. The main use of dialog boxes is |
| 1817 | for asking questions that the user can answer with ``yes,'' ``no,'' | 1817 | for asking questions that the user can answer with ``yes'', ``no'', |
| 1818 | and a few other alternatives. With a single button, they can also | 1818 | and a few other alternatives. With a single button, they can also |
| 1819 | force the user to acknowledge important information. The functions | 1819 | force the user to acknowledge important information. The functions |
| 1820 | @code{y-or-n-p} and @code{yes-or-no-p} use dialog boxes instead of the | 1820 | @code{y-or-n-p} and @code{yes-or-no-p} use dialog boxes instead of the |
| @@ -2028,7 +2028,7 @@ colors.) | |||
| 2028 | These functions provide a way to determine which color names are | 2028 | These functions provide a way to determine which color names are |
| 2029 | valid, and what they look like. In some cases, the value depends on the | 2029 | valid, and what they look like. In some cases, the value depends on the |
| 2030 | @dfn{selected frame}, as described below; see @ref{Input Focus}, for the | 2030 | @dfn{selected frame}, as described below; see @ref{Input Focus}, for the |
| 2031 | meaning of the term ``selected frame.'' | 2031 | meaning of the term ``selected frame''. |
| 2032 | 2032 | ||
| 2033 | To read user input of color names with completion, use | 2033 | To read user input of color names with completion, use |
| 2034 | @code{read-color} (@pxref{High-Level Completion, read-color}). | 2034 | @code{read-color} (@pxref{High-Level Completion, read-color}). |
| @@ -2425,7 +2425,7 @@ software (as a string). Really this means whoever distributes the X | |||
| 2425 | server. | 2425 | server. |
| 2426 | 2426 | ||
| 2427 | When the developers of X labeled software distributors as | 2427 | When the developers of X labeled software distributors as |
| 2428 | ``vendors,'' they showed their false assumption that no system could | 2428 | ``vendors'', they showed their false assumption that no system could |
| 2429 | ever be developed and distributed noncommercially. | 2429 | ever be developed and distributed noncommercially. |
| 2430 | @end defun | 2430 | @end defun |
| 2431 | 2431 | ||
diff --git a/doc/lispref/functions.texi b/doc/lispref/functions.texi index 73bdefe19fc..b5cf38ed6f2 100644 --- a/doc/lispref/functions.texi +++ b/doc/lispref/functions.texi | |||
| @@ -266,13 +266,12 @@ function is the value returned by the last element of the body. | |||
| 266 | @end example | 266 | @end example |
| 267 | 267 | ||
| 268 | @noindent | 268 | @noindent |
| 269 | We can call this function by writing it as the @sc{car} of an | 269 | We can call this function by passing it to @code{funcall}, like this: |
| 270 | expression, like this: | ||
| 271 | 270 | ||
| 272 | @example | 271 | @example |
| 273 | @group | 272 | @group |
| 274 | ((lambda (a b c) (+ a b c)) | 273 | (funcall (lambda (a b c) (+ a b c)) |
| 275 | 1 2 3) | 274 | 1 2 3) |
| 276 | @end group | 275 | @end group |
| 277 | @end example | 276 | @end example |
| 278 | 277 | ||
| @@ -287,8 +286,8 @@ this example: | |||
| 287 | 286 | ||
| 288 | @example | 287 | @example |
| 289 | @group | 288 | @group |
| 290 | ((lambda (a b c) (+ a b c)) | 289 | (funcall (lambda (a b c) (+ a b c)) |
| 291 | 1 (* 2 3) (- 5 4)) | 290 | 1 (* 2 3) (- 5 4)) |
| 292 | @end group | 291 | @end group |
| 293 | @end example | 292 | @end example |
| 294 | 293 | ||
| @@ -399,16 +398,16 @@ after a @code{&rest} argument. | |||
| 399 | Here are some examples of argument lists and proper calls: | 398 | Here are some examples of argument lists and proper calls: |
| 400 | 399 | ||
| 401 | @smallexample | 400 | @smallexample |
| 402 | ((lambda (n) (1+ n)) ; @r{One required:} | 401 | (funcall (lambda (n) (1+ n)) ; @r{One required:} |
| 403 | 1) ; @r{requires exactly one argument.} | 402 | 1) ; @r{requires exactly one argument.} |
| 404 | @result{} 2 | 403 | @result{} 2 |
| 405 | ((lambda (n &optional n1) ; @r{One required and one optional:} | 404 | (funcall (lambda (n &optional n1) ; @r{One required and one optional:} |
| 406 | (if n1 (+ n n1) (1+ n))) ; @r{1 or 2 arguments.} | 405 | (if n1 (+ n n1) (1+ n))) ; @r{1 or 2 arguments.} |
| 407 | 1 2) | 406 | 1 2) |
| 408 | @result{} 3 | 407 | @result{} 3 |
| 409 | ((lambda (n &rest ns) ; @r{One required and one rest:} | 408 | (funcall (lambda (n &rest ns) ; @r{One required and one rest:} |
| 410 | (+ n (apply '+ ns))) ; @r{1 or more arguments.} | 409 | (+ n (apply '+ ns))) ; @r{1 or more arguments.} |
| 411 | 1 2 3 4 5) | 410 | 1 2 3 4 5) |
| 412 | @result{} 15 | 411 | @result{} 15 |
| 413 | @end smallexample | 412 | @end smallexample |
| 414 | 413 | ||
diff --git a/doc/lispref/hash.texi b/doc/lispref/hash.texi index 0ca4c915a65..1aa6004b3a6 100644 --- a/doc/lispref/hash.texi +++ b/doc/lispref/hash.texi | |||
| @@ -74,13 +74,13 @@ alternatives: | |||
| 74 | Keys which are numbers are ``the same'' if they are @code{equal}, that | 74 | Keys which are numbers are ``the same'' if they are @code{equal}, that |
| 75 | is, if they are equal in value and either both are integers or both | 75 | is, if they are equal in value and either both are integers or both |
| 76 | are floating point numbers; otherwise, two distinct objects are never | 76 | are floating point numbers; otherwise, two distinct objects are never |
| 77 | ``the same.'' | 77 | ``the same''. |
| 78 | 78 | ||
| 79 | @item eq | 79 | @item eq |
| 80 | Any two distinct Lisp objects are ``different'' as keys. | 80 | Any two distinct Lisp objects are ``different'' as keys. |
| 81 | 81 | ||
| 82 | @item equal | 82 | @item equal |
| 83 | Two Lisp objects are ``the same,'' as keys, if they are equal | 83 | Two Lisp objects are ``the same'', as keys, if they are equal |
| 84 | according to @code{equal}. | 84 | according to @code{equal}. |
| 85 | @end table | 85 | @end table |
| 86 | 86 | ||
| @@ -128,7 +128,7 @@ doing that takes some extra time. | |||
| 128 | The default size is 65. | 128 | The default size is 65. |
| 129 | 129 | ||
| 130 | @item :rehash-size @var{rehash-size} | 130 | @item :rehash-size @var{rehash-size} |
| 131 | When you add an association to a hash table and the table is ``full,'' | 131 | When you add an association to a hash table and the table is ``full'', |
| 132 | it grows automatically. This value specifies how to make the hash table | 132 | it grows automatically. This value specifies how to make the hash table |
| 133 | larger, at that time. | 133 | larger, at that time. |
| 134 | 134 | ||
| @@ -262,7 +262,7 @@ will use @var{test-fn} to compare key values, and @var{hash-fn} to compute | |||
| 262 | a ``hash code'' from a key value. | 262 | a ``hash code'' from a key value. |
| 263 | 263 | ||
| 264 | The function @var{test-fn} should accept two arguments, two keys, and | 264 | The function @var{test-fn} should accept two arguments, two keys, and |
| 265 | return non-@code{nil} if they are considered ``the same.'' | 265 | return non-@code{nil} if they are considered ``the same''. |
| 266 | 266 | ||
| 267 | The function @var{hash-fn} should accept one argument, a key, and return | 267 | The function @var{hash-fn} should accept one argument, a key, and return |
| 268 | an integer that is the ``hash code'' of that key. For good results, the | 268 | an integer that is the ``hash code'' of that key. For good results, the |
diff --git a/doc/lispref/help.texi b/doc/lispref/help.texi index 5dfb2b05ff8..762b42113f2 100644 --- a/doc/lispref/help.texi +++ b/doc/lispref/help.texi | |||
| @@ -599,7 +599,7 @@ subcommands of the prefix key. | |||
| 599 | 599 | ||
| 600 | @defopt help-event-list | 600 | @defopt help-event-list |
| 601 | The value of this variable is a list of event types that serve as | 601 | The value of this variable is a list of event types that serve as |
| 602 | alternative ``help characters.'' These events are handled just like the | 602 | alternative ``help characters''. These events are handled just like the |
| 603 | event specified by @code{help-char}. | 603 | event specified by @code{help-char}. |
| 604 | @end defopt | 604 | @end defopt |
| 605 | 605 | ||
diff --git a/doc/lispref/intro.texi b/doc/lispref/intro.texi index d3a5b253162..37d2cc55a9e 100644 --- a/doc/lispref/intro.texi +++ b/doc/lispref/intro.texi | |||
| @@ -146,7 +146,7 @@ printer'' refer to those routines in Lisp that convert textual | |||
| 146 | representations of Lisp objects into actual Lisp objects, and vice | 146 | representations of Lisp objects into actual Lisp objects, and vice |
| 147 | versa. @xref{Printed Representation}, for more details. You, the | 147 | versa. @xref{Printed Representation}, for more details. You, the |
| 148 | person reading this manual, are thought of as ``the programmer'' and are | 148 | person reading this manual, are thought of as ``the programmer'' and are |
| 149 | addressed as ``you.'' ``The user'' is the person who uses Lisp | 149 | addressed as ``you''. ``The user'' is the person who uses Lisp |
| 150 | programs, including those you write. | 150 | programs, including those you write. |
| 151 | 151 | ||
| 152 | @cindex typographic conventions | 152 | @cindex typographic conventions |
| @@ -219,7 +219,7 @@ the examples in this manual, this is indicated with @samp{@result{}}: | |||
| 219 | @end example | 219 | @end example |
| 220 | 220 | ||
| 221 | @noindent | 221 | @noindent |
| 222 | You can read this as ``@code{(car '(1 2))} evaluates to 1.'' | 222 | You can read this as ``@code{(car '(1 2))} evaluates to 1''. |
| 223 | 223 | ||
| 224 | When a form is a macro call, it expands into a new form for Lisp to | 224 | When a form is a macro call, it expands into a new form for Lisp to |
| 225 | evaluate. We show the result of the expansion with | 225 | evaluate. We show the result of the expansion with |
diff --git a/doc/lispref/keymaps.texi b/doc/lispref/keymaps.texi index b12752fdeea..337364cb2ce 100644 --- a/doc/lispref/keymaps.texi +++ b/doc/lispref/keymaps.texi | |||
| @@ -1032,7 +1032,7 @@ binding of @var{othertype} in @var{othermap} and uses that. | |||
| 1032 | This feature permits you to define one key as an alias for another key. | 1032 | This feature permits you to define one key as an alias for another key. |
| 1033 | For example, an entry whose @sc{car} is the keymap called @code{esc-map} | 1033 | For example, an entry whose @sc{car} is the keymap called @code{esc-map} |
| 1034 | and whose @sc{cdr} is 32 (the code for @key{SPC}) means, ``Use the global | 1034 | and whose @sc{cdr} is 32 (the code for @key{SPC}) means, ``Use the global |
| 1035 | binding of @kbd{Meta-@key{SPC}}, whatever that may be.'' | 1035 | binding of @kbd{Meta-@key{SPC}}, whatever that may be''. |
| 1036 | @end itemize | 1036 | @end itemize |
| 1037 | 1037 | ||
| 1038 | @item @var{symbol} | 1038 | @item @var{symbol} |
| @@ -1887,9 +1887,9 @@ maps searched are @var{keymap} and the global keymap. If @var{keymap} | |||
| 1887 | is a list of keymaps, only those keymaps are searched. | 1887 | is a list of keymaps, only those keymaps are searched. |
| 1888 | 1888 | ||
| 1889 | Usually it's best to use @code{overriding-local-map} as the expression | 1889 | Usually it's best to use @code{overriding-local-map} as the expression |
| 1890 | for @var{keymap}. Then @code{where-is-internal} searches precisely the | 1890 | for @var{keymap}. Then @code{where-is-internal} searches precisely |
| 1891 | keymaps that are active. To search only the global map, pass | 1891 | the keymaps that are active. To search only the global map, pass the |
| 1892 | @code{(keymap)} (an empty keymap) as @var{keymap}. | 1892 | value @code{(keymap)} (an empty keymap) as @var{keymap}. |
| 1893 | 1893 | ||
| 1894 | If @var{firstonly} is @code{non-ascii}, then the value is a single | 1894 | If @var{firstonly} is @code{non-ascii}, then the value is a single |
| 1895 | vector representing the first key sequence found, rather than a list of | 1895 | vector representing the first key sequence found, rather than a list of |
| @@ -1903,20 +1903,24 @@ If @var{noindirect} is non-@code{nil}, @code{where-is-internal} doesn't | |||
| 1903 | follow indirect keymap bindings. This makes it possible to search for | 1903 | follow indirect keymap bindings. This makes it possible to search for |
| 1904 | an indirect definition itself. | 1904 | an indirect definition itself. |
| 1905 | 1905 | ||
| 1906 | When command remapping is in effect (@pxref{Remapping Commands}), | 1906 | The fifth argument, @var{no-remap}, determines how this function |
| 1907 | @code{where-is-internal} figures out when a command will be run due to | 1907 | treats command remappings (@pxref{Remapping Commands}). There are two |
| 1908 | remapping and reports keys accordingly. It also returns @code{nil} if | 1908 | cases of interest: |
| 1909 | @var{command} won't really be run because it has been remapped to some | ||
| 1910 | other command. However, if @var{no-remap} is non-@code{nil}. | ||
| 1911 | @code{where-is-internal} ignores remappings. | ||
| 1912 | 1909 | ||
| 1913 | @smallexample | 1910 | @table @asis |
| 1914 | @group | 1911 | @item If a command @var{other-command} is remapped to @var{command}: |
| 1915 | (where-is-internal 'describe-function) | 1912 | If @var{no-remap} is @code{nil}, find the bindings for |
| 1916 | @result{} ([8 102] [f1 102] [help 102] | 1913 | @var{other-command} and treat them as though they are also bindings |
| 1917 | [menu-bar help-menu describe describe-function]) | 1914 | for @var{command}. If @var{no-remap} is non-@code{nil}, include the |
| 1918 | @end group | 1915 | vector @code{[remap @var{other-command}]} in the list of possible key |
| 1919 | @end smallexample | 1916 | sequences, instead of finding those bindings. |
| 1917 | |||
| 1918 | @item If @var{command} is remapped to @var{other-command}: | ||
| 1919 | If @var{no-remap} is @code{nil}, return the bindings for | ||
| 1920 | @var{other-command} rather than @var{command}. If @var{no-remap} is | ||
| 1921 | non-@code{nil}, return the bindings for @var{command}, ignoring the | ||
| 1922 | fact that it is remapped. | ||
| 1923 | @end table | ||
| 1920 | @end defun | 1924 | @end defun |
| 1921 | 1925 | ||
| 1922 | @deffn Command describe-bindings &optional prefix buffer-or-name | 1926 | @deffn Command describe-bindings &optional prefix buffer-or-name |
| @@ -2147,7 +2151,7 @@ This works because @code{toggle-debug-on-error} is defined as a command | |||
| 2147 | which toggles the variable @code{debug-on-error}. | 2151 | which toggles the variable @code{debug-on-error}. |
| 2148 | 2152 | ||
| 2149 | @dfn{Radio buttons} are a group of menu items, in which at any time one | 2153 | @dfn{Radio buttons} are a group of menu items, in which at any time one |
| 2150 | and only one is ``selected.'' There should be a variable whose value | 2154 | and only one is ``selected''. There should be a variable whose value |
| 2151 | says which one is selected at any time. The @var{selected} form for | 2155 | says which one is selected at any time. The @var{selected} form for |
| 2152 | each radio button in the group should check whether the variable has the | 2156 | each radio button in the group should check whether the variable has the |
| 2153 | right value for selecting that button. Clicking on the button should | 2157 | right value for selecting that button. Clicking on the button should |
| @@ -2424,7 +2428,7 @@ Next we define the menu items: | |||
| 2424 | Note the symbols which the bindings are ``made for''; these appear | 2428 | Note the symbols which the bindings are ``made for''; these appear |
| 2425 | inside square brackets, in the key sequence being defined. In some | 2429 | inside square brackets, in the key sequence being defined. In some |
| 2426 | cases, this symbol is the same as the command name; sometimes it is | 2430 | cases, this symbol is the same as the command name; sometimes it is |
| 2427 | different. These symbols are treated as ``function keys,'' but they are | 2431 | different. These symbols are treated as ``function keys'', but they are |
| 2428 | not real function keys on the keyboard. They do not affect the | 2432 | not real function keys on the keyboard. They do not affect the |
| 2429 | functioning of the menu itself, but they are ``echoed'' in the echo area | 2433 | functioning of the menu itself, but they are ``echoed'' in the echo area |
| 2430 | when the user selects from the menu, and they appear in the output of | 2434 | when the user selects from the menu, and they appear in the output of |
diff --git a/doc/lispref/lists.texi b/doc/lispref/lists.texi index 2325915d76a..423bc7b6d8a 100644 --- a/doc/lispref/lists.texi +++ b/doc/lispref/lists.texi | |||
| @@ -34,12 +34,12 @@ object that represents an ordered pair. That is, it has two slots, | |||
| 34 | and each slot @dfn{holds}, or @dfn{refers to}, some Lisp object. One | 34 | and each slot @dfn{holds}, or @dfn{refers to}, some Lisp object. One |
| 35 | slot is known as the @sc{car}, and the other is known as the @sc{cdr}. | 35 | slot is known as the @sc{car}, and the other is known as the @sc{cdr}. |
| 36 | (These names are traditional; see @ref{Cons Cell Type}.) @sc{cdr} is | 36 | (These names are traditional; see @ref{Cons Cell Type}.) @sc{cdr} is |
| 37 | pronounced ``could-er.'' | 37 | pronounced ``could-er''. |
| 38 | 38 | ||
| 39 | We say that ``the @sc{car} of this cons cell is'' whatever object | 39 | We say that ``the @sc{car} of this cons cell is'' whatever object |
| 40 | its @sc{car} slot currently holds, and likewise for the @sc{cdr}. | 40 | its @sc{car} slot currently holds, and likewise for the @sc{cdr}. |
| 41 | 41 | ||
| 42 | A list is a series of cons cells ``chained together,'' so that each | 42 | A list is a series of cons cells ``chained together'', so that each |
| 43 | cell refers to the next one. There is one cons cell for each element | 43 | cell refers to the next one. There is one cons cell for each element |
| 44 | of the list. By convention, the @sc{car}s of the cons cells hold the | 44 | of the list. By convention, the @sc{car}s of the cons cells hold the |
| 45 | elements of the list, and the @sc{cdr}s are used to chain the list | 45 | elements of the list, and the @sc{cdr}s are used to chain the list |
| @@ -1632,7 +1632,7 @@ a @sc{cdr} @code{equal} to @var{value}. | |||
| 1632 | 1632 | ||
| 1633 | @code{rassoc} is like @code{assoc} except that it compares the @sc{cdr} of | 1633 | @code{rassoc} is like @code{assoc} except that it compares the @sc{cdr} of |
| 1634 | each @var{alist} association instead of the @sc{car}. You can think of | 1634 | each @var{alist} association instead of the @sc{car}. You can think of |
| 1635 | this as ``reverse @code{assoc},'' finding the key for a given value. | 1635 | this as ``reverse @code{assoc}'', finding the key for a given value. |
| 1636 | @end defun | 1636 | @end defun |
| 1637 | 1637 | ||
| 1638 | @defun assq key alist | 1638 | @defun assq key alist |
| @@ -1673,7 +1673,7 @@ a @sc{cdr} @code{eq} to @var{value}. | |||
| 1673 | 1673 | ||
| 1674 | @code{rassq} is like @code{assq} except that it compares the @sc{cdr} of | 1674 | @code{rassq} is like @code{assq} except that it compares the @sc{cdr} of |
| 1675 | each @var{alist} association instead of the @sc{car}. You can think of | 1675 | each @var{alist} association instead of the @sc{car}. You can think of |
| 1676 | this as ``reverse @code{assq},'' finding the key for a given value. | 1676 | this as ``reverse @code{assq}'', finding the key for a given value. |
| 1677 | 1677 | ||
| 1678 | For example: | 1678 | For example: |
| 1679 | 1679 | ||
diff --git a/doc/lispref/macros.texi b/doc/lispref/macros.texi index bc4cec3307d..3984e5c03aa 100644 --- a/doc/lispref/macros.texi +++ b/doc/lispref/macros.texi | |||
| @@ -604,7 +604,7 @@ either. | |||
| 604 | @section Indenting Macros | 604 | @section Indenting Macros |
| 605 | 605 | ||
| 606 | Within a macro definition, you can use the @code{declare} form | 606 | Within a macro definition, you can use the @code{declare} form |
| 607 | (@pxref{Defining Macros}) to specify how to @key{TAB} should indent | 607 | (@pxref{Defining Macros}) to specify how @key{TAB} should indent |
| 608 | calls to the macro. An indentation specification is written like this: | 608 | calls to the macro. An indentation specification is written like this: |
| 609 | 609 | ||
| 610 | @example | 610 | @example |
diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi index c840eb6ded0..8ce7e0d4686 100644 --- a/doc/lispref/minibuf.texi +++ b/doc/lispref/minibuf.texi | |||
| @@ -57,16 +57,17 @@ including @code{beginning-of-line}, @code{forward-word}, | |||
| 57 | @code{forward-sentence}, and @code{forward-paragraph}, stop at the | 57 | @code{forward-sentence}, and @code{forward-paragraph}, stop at the |
| 58 | boundary between the prompt and the actual text. | 58 | boundary between the prompt and the actual text. |
| 59 | 59 | ||
| 60 | @c See http://debbugs.gnu.org/11276 | ||
| 60 | The minibuffer's window is normally a single line; it grows | 61 | The minibuffer's window is normally a single line; it grows |
| 61 | automatically if the contents require more space. You can explicitly | 62 | automatically if the contents require more space. Whilst it is |
| 62 | @c FIXME? Works in 23.4, not 24.0.95. (Bug#11276) | 63 | active, you can explicitly resize it temporarily with the window |
| 63 | resize it temporarily with the window sizing commands; it reverts to | 64 | sizing commands; it reverts to its normal size when the minibuffer is |
| 64 | its normal size when the minibuffer is exited. You can resize it | 65 | exited. When the minibuffer is not active, you can resize it |
| 65 | @c FIXME? Doesn't work in any version of Emacs? | ||
| 66 | permanently by using the window sizing commands in the frame's other | 66 | permanently by using the window sizing commands in the frame's other |
| 67 | window, when the minibuffer is not active. If the frame contains just | 67 | window, or dragging the mode line with the mouse. (Due to details of |
| 68 | a minibuffer, you can change the minibuffer's size by changing the | 68 | the current implementation, for this to work @code{resize-mini-windows} |
| 69 | frame's size. | 69 | must be @code{nil}.) If the frame contains just a minibuffer, you can |
| 70 | change the minibuffer's size by changing the frame's size. | ||
| 70 | 71 | ||
| 71 | Use of the minibuffer reads input events, and that alters the values | 72 | Use of the minibuffer reads input events, and that alters the values |
| 72 | of variables such as @code{this-command} and @code{last-command} | 73 | of variables such as @code{this-command} and @code{last-command} |
diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi index aa089aec36b..00cd43d7b71 100644 --- a/doc/lispref/modes.texi +++ b/doc/lispref/modes.texi | |||
| @@ -283,7 +283,7 @@ buffer is put in Fundamental mode (@pxref{Major Mode Conventions}). | |||
| 283 | * Derived Modes:: Defining a new major mode based on another major | 283 | * Derived Modes:: Defining a new major mode based on another major |
| 284 | mode. | 284 | mode. |
| 285 | * Basic Major Modes:: Modes that other modes are often derived from. | 285 | * Basic Major Modes:: Modes that other modes are often derived from. |
| 286 | * Mode Hooks:: Hooks run at the end of major mode commands. | 286 | * Mode Hooks:: Hooks run at the end of major mode functions. |
| 287 | * Tabulated List Mode:: Parent mode for buffers containing tabulated data. | 287 | * Tabulated List Mode:: Parent mode for buffers containing tabulated data. |
| 288 | * Generic Modes:: Defining a simple major mode that supports | 288 | * Generic Modes:: Defining a simple major mode that supports |
| 289 | comment syntax and Font Lock mode. | 289 | comment syntax and Font Lock mode. |
| @@ -384,7 +384,7 @@ reserved for users. | |||
| 384 | 384 | ||
| 385 | A major mode can also rebind the keys @kbd{M-n}, @kbd{M-p} and | 385 | A major mode can also rebind the keys @kbd{M-n}, @kbd{M-p} and |
| 386 | @kbd{M-s}. The bindings for @kbd{M-n} and @kbd{M-p} should normally | 386 | @kbd{M-s}. The bindings for @kbd{M-n} and @kbd{M-p} should normally |
| 387 | be some kind of ``moving forward and backward,'' but this does not | 387 | be some kind of ``moving forward and backward'', but this does not |
| 388 | necessarily mean cursor motion. | 388 | necessarily mean cursor motion. |
| 389 | 389 | ||
| 390 | It is legitimate for a major mode to rebind a standard key sequence if | 390 | It is legitimate for a major mode to rebind a standard key sequence if |
| @@ -938,7 +938,7 @@ such a major mode, please correct it to follow these conventions. | |||
| 938 | 938 | ||
| 939 | When you defined a major mode using @code{define-derived-mode}, it | 939 | When you defined a major mode using @code{define-derived-mode}, it |
| 940 | automatically makes sure these conventions are followed. If you | 940 | automatically makes sure these conventions are followed. If you |
| 941 | define a major mode ``by hand,'' not using @code{define-derived-mode}, | 941 | define a major mode ``by hand'', not using @code{define-derived-mode}, |
| 942 | use the following functions to handle these conventions automatically. | 942 | use the following functions to handle these conventions automatically. |
| 943 | 943 | ||
| 944 | @defun run-mode-hooks &rest hookvars | 944 | @defun run-mode-hooks &rest hookvars |
| @@ -1122,8 +1122,8 @@ documentation for the mode command. If you do not supply it, | |||
| 1122 | The argument @var{comment-list} is a list in which each element is | 1122 | The argument @var{comment-list} is a list in which each element is |
| 1123 | either a character, a string of one or two characters, or a cons cell. | 1123 | either a character, a string of one or two characters, or a cons cell. |
| 1124 | A character or a string is set up in the mode's syntax table as a | 1124 | A character or a string is set up in the mode's syntax table as a |
| 1125 | ``comment starter.'' If the entry is a cons cell, the @sc{car} is set | 1125 | ``comment starter''. If the entry is a cons cell, the @sc{car} is set |
| 1126 | up as a ``comment starter'' and the @sc{cdr} as a ``comment ender.'' | 1126 | up as a ``comment starter'' and the @sc{cdr} as a ``comment ender''. |
| 1127 | (Use @code{nil} for the latter if you want comments to end at the end | 1127 | (Use @code{nil} for the latter if you want comments to end at the end |
| 1128 | of the line.) Note that the syntax table mechanism has limitations | 1128 | of the line.) Note that the syntax table mechanism has limitations |
| 1129 | about what comment starters and enders are actually possible. | 1129 | about what comment starters and enders are actually possible. |
| @@ -1648,7 +1648,7 @@ See the command \\[hungry-electric-delete]." | |||
| 1648 | @end smallexample | 1648 | @end smallexample |
| 1649 | 1649 | ||
| 1650 | @noindent | 1650 | @noindent |
| 1651 | This defines a minor mode named ``Hungry mode,'' a command named | 1651 | This defines a minor mode named ``Hungry mode'', a command named |
| 1652 | @code{hungry-mode} to toggle it, a variable named @code{hungry-mode} | 1652 | @code{hungry-mode} to toggle it, a variable named @code{hungry-mode} |
| 1653 | which indicates whether the mode is enabled, and a variable named | 1653 | which indicates whether the mode is enabled, and a variable named |
| 1654 | @code{hungry-mode-map} which holds the keymap that is active when the | 1654 | @code{hungry-mode-map} which holds the keymap that is active when the |
| @@ -3374,7 +3374,7 @@ Another one is SMIE which takes an approach in the spirit | |||
| 3374 | of Lisp sexps and adapts it to non-Lisp languages. | 3374 | of Lisp sexps and adapts it to non-Lisp languages. |
| 3375 | 3375 | ||
| 3376 | @menu | 3376 | @menu |
| 3377 | * SMIE:: A simple minded indentation engine | 3377 | * SMIE:: A simple minded indentation engine. |
| 3378 | @end menu | 3378 | @end menu |
| 3379 | 3379 | ||
| 3380 | @node SMIE | 3380 | @node SMIE |
| @@ -3400,14 +3400,14 @@ languages cannot be parsed correctly using SMIE, at least not without | |||
| 3400 | resorting to some special tricks (@pxref{SMIE Tricks}). | 3400 | resorting to some special tricks (@pxref{SMIE Tricks}). |
| 3401 | 3401 | ||
| 3402 | @menu | 3402 | @menu |
| 3403 | * SMIE setup:: SMIE setup and features | 3403 | * SMIE setup:: SMIE setup and features. |
| 3404 | * Operator Precedence Grammars:: A very simple parsing technique | 3404 | * Operator Precedence Grammars:: A very simple parsing technique. |
| 3405 | * SMIE Grammar:: Defining the grammar of a language | 3405 | * SMIE Grammar:: Defining the grammar of a language. |
| 3406 | * SMIE Lexer:: Defining tokens | 3406 | * SMIE Lexer:: Defining tokens. |
| 3407 | * SMIE Tricks:: Working around the parser's limitations | 3407 | * SMIE Tricks:: Working around the parser's limitations. |
| 3408 | * SMIE Indentation:: Specifying indentation rules | 3408 | * SMIE Indentation:: Specifying indentation rules. |
| 3409 | * SMIE Indentation Helpers:: Helper functions for indentation rules | 3409 | * SMIE Indentation Helpers:: Helper functions for indentation rules. |
| 3410 | * SMIE Indentation Example:: Sample indentation rules | 3410 | * SMIE Indentation Example:: Sample indentation rules. |
| 3411 | @end menu | 3411 | @end menu |
| 3412 | 3412 | ||
| 3413 | @node SMIE setup | 3413 | @node SMIE setup |
diff --git a/doc/lispref/numbers.texi b/doc/lispref/numbers.texi index 66f491b7780..02d306b3f75 100644 --- a/doc/lispref/numbers.texi +++ b/doc/lispref/numbers.texi | |||
| @@ -777,7 +777,7 @@ and returns that value as a floating point number. | |||
| 777 | sequence of @dfn{bits} (digits which are either zero or one). A bitwise | 777 | sequence of @dfn{bits} (digits which are either zero or one). A bitwise |
| 778 | operation acts on the individual bits of such a sequence. For example, | 778 | operation acts on the individual bits of such a sequence. For example, |
| 779 | @dfn{shifting} moves the whole sequence left or right one or more places, | 779 | @dfn{shifting} moves the whole sequence left or right one or more places, |
| 780 | reproducing the same pattern ``moved over.'' | 780 | reproducing the same pattern ``moved over''. |
| 781 | 781 | ||
| 782 | The bitwise operations in Emacs Lisp apply only to integers. | 782 | The bitwise operations in Emacs Lisp apply only to integers. |
| 783 | 783 | ||
diff --git a/doc/lispref/objects.texi b/doc/lispref/objects.texi index 58ceeb02b76..b49d2bc05fe 100644 --- a/doc/lispref/objects.texi +++ b/doc/lispref/objects.texi | |||
| @@ -675,7 +675,7 @@ not distinguish between a cons cell slot ``holding'' a value versus | |||
| 675 | 675 | ||
| 676 | @cindex atoms | 676 | @cindex atoms |
| 677 | Because cons cells are so central to Lisp, we also have a word for | 677 | Because cons cells are so central to Lisp, we also have a word for |
| 678 | ``an object which is not a cons cell.'' These objects are called | 678 | ``an object which is not a cons cell''. These objects are called |
| 679 | @dfn{atoms}. | 679 | @dfn{atoms}. |
| 680 | 680 | ||
| 681 | @cindex parenthesis | 681 | @cindex parenthesis |
| @@ -1289,7 +1289,7 @@ without qualification, we mean a Lisp macro, not a keyboard macro. | |||
| 1289 | A @dfn{primitive function} is a function callable from Lisp but | 1289 | A @dfn{primitive function} is a function callable from Lisp but |
| 1290 | written in the C programming language. Primitive functions are also | 1290 | written in the C programming language. Primitive functions are also |
| 1291 | called @dfn{subrs} or @dfn{built-in functions}. (The word ``subr'' is | 1291 | called @dfn{subrs} or @dfn{built-in functions}. (The word ``subr'' is |
| 1292 | derived from ``subroutine.'') Most primitive functions evaluate all | 1292 | derived from ``subroutine''.) Most primitive functions evaluate all |
| 1293 | their arguments when they are called. A primitive function that does | 1293 | their arguments when they are called. A primitive function that does |
| 1294 | not evaluate all its arguments is called a @dfn{special form} | 1294 | not evaluate all its arguments is called a @dfn{special form} |
| 1295 | (@pxref{Special Forms}).@refill | 1295 | (@pxref{Special Forms}).@refill |
diff --git a/doc/lispref/streams.texi b/doc/lispref/streams.texi index 7028b6e4e3f..66df1f34eda 100644 --- a/doc/lispref/streams.texi +++ b/doc/lispref/streams.texi | |||
| @@ -114,7 +114,7 @@ When it is called with one argument (always a character), @var{function} | |||
| 114 | should save the argument and arrange to return it on the next call. | 114 | should save the argument and arrange to return it on the next call. |
| 115 | This is called @dfn{unreading} the character; it happens when the Lisp | 115 | This is called @dfn{unreading} the character; it happens when the Lisp |
| 116 | reader reads one character too many and wants to ``put it back where it | 116 | reader reads one character too many and wants to ``put it back where it |
| 117 | came from.'' In this case, it makes no difference what value | 117 | came from''. In this case, it makes no difference what value |
| 118 | @var{function} returns. | 118 | @var{function} returns. |
| 119 | @end itemize | 119 | @end itemize |
| 120 | 120 | ||
| @@ -618,7 +618,7 @@ spacing between calls. | |||
| 618 | @defun terpri &optional stream | 618 | @defun terpri &optional stream |
| 619 | @cindex newline in print | 619 | @cindex newline in print |
| 620 | This function outputs a newline to @var{stream}. The name stands | 620 | This function outputs a newline to @var{stream}. The name stands |
| 621 | for ``terminate print.'' | 621 | for ``terminate print''. |
| 622 | @end defun | 622 | @end defun |
| 623 | 623 | ||
| 624 | @defun write-char character &optional stream | 624 | @defun write-char character &optional stream |
diff --git a/doc/lispref/symbols.texi b/doc/lispref/symbols.texi index ac2cea02040..1e749b8c3bb 100644 --- a/doc/lispref/symbols.texi +++ b/doc/lispref/symbols.texi | |||
| @@ -140,7 +140,7 @@ act correctly if it is evaluated with lexical scoping enabled | |||
| 140 | @code{defun} defines a symbol as a function, creating a lambda | 140 | @code{defun} defines a symbol as a function, creating a lambda |
| 141 | expression and storing it in the function cell of the symbol. This | 141 | expression and storing it in the function cell of the symbol. This |
| 142 | lambda expression thus becomes the function definition of the symbol. | 142 | lambda expression thus becomes the function definition of the symbol. |
| 143 | (The term ``function definition,'' meaning the contents of the function | 143 | (The term ``function definition'', meaning the contents of the function |
| 144 | cell, is derived from the idea that @code{defun} gives the symbol its | 144 | cell, is derived from the idea that @code{defun} gives the symbol its |
| 145 | definition as a function.) @code{defsubst} and @code{defalias} are two | 145 | definition as a function.) @code{defsubst} and @code{defalias} are two |
| 146 | other ways of defining a function. @xref{Functions}. | 146 | other ways of defining a function. @xref{Functions}. |
diff --git a/doc/lispref/syntax.texi b/doc/lispref/syntax.texi index 830ceeedefd..4a860657444 100644 --- a/doc/lispref/syntax.texi +++ b/doc/lispref/syntax.texi | |||
| @@ -56,7 +56,7 @@ Modes}, for an example of how to set up a syntax table. | |||
| 56 | A syntax table can inherit the data for some characters from the | 56 | A syntax table can inherit the data for some characters from the |
| 57 | standard syntax table, while specifying other characters itself. The | 57 | standard syntax table, while specifying other characters itself. The |
| 58 | ``inherit'' syntax class means ``inherit this character's syntax from | 58 | ``inherit'' syntax class means ``inherit this character's syntax from |
| 59 | the standard syntax table.'' Just changing the standard syntax for a | 59 | the standard syntax table''. Just changing the standard syntax for a |
| 60 | character affects all syntax tables that inherit from it. | 60 | character affects all syntax tables that inherit from it. |
| 61 | 61 | ||
| 62 | @defun syntax-table-p object | 62 | @defun syntax-table-p object |
| @@ -617,7 +617,7 @@ higher-level functions for moving over balanced expressions. | |||
| 617 | A character's syntax controls how it changes the state of the | 617 | A character's syntax controls how it changes the state of the |
| 618 | parser, rather than describing the state itself. For example, a | 618 | parser, rather than describing the state itself. For example, a |
| 619 | string delimiter character toggles the parser state between | 619 | string delimiter character toggles the parser state between |
| 620 | ``in-string'' and ``in-code,'' but the syntax of characters does not | 620 | ``in-string'' and ``in-code'', but the syntax of characters does not |
| 621 | directly say whether they are inside a string. For example (note that | 621 | directly say whether they are inside a string. For example (note that |
| 622 | 15 is the syntax code for generic string delimiters), | 622 | 15 is the syntax code for generic string delimiters), |
| 623 | 623 | ||
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi index a9c51fead1b..d794ddc385b 100644 --- a/doc/lispref/text.texi +++ b/doc/lispref/text.texi | |||
| @@ -555,7 +555,7 @@ error; if some of the text in it is read-only, it signals a | |||
| 555 | asking for any confirmation. It returns @code{nil}. | 555 | asking for any confirmation. It returns @code{nil}. |
| 556 | 556 | ||
| 557 | Normally, deleting a large amount of text from a buffer inhibits further | 557 | Normally, deleting a large amount of text from a buffer inhibits further |
| 558 | auto-saving of that buffer ``because it has shrunk.'' However, | 558 | auto-saving of that buffer ``because it has shrunk''. However, |
| 559 | @code{erase-buffer} does not do this, the idea being that the future | 559 | @code{erase-buffer} does not do this, the idea being that the future |
| 560 | text is not really related to the former text, and its size should not | 560 | text is not really related to the former text, and its size should not |
| 561 | be compared with that of the former text. | 561 | be compared with that of the former text. |
| @@ -806,7 +806,7 @@ that treat it as a ring. | |||
| 806 | 806 | ||
| 807 | Some people think this use of the word ``kill'' is unfortunate, since | 807 | Some people think this use of the word ``kill'' is unfortunate, since |
| 808 | it refers to operations that specifically @emph{do not} destroy the | 808 | it refers to operations that specifically @emph{do not} destroy the |
| 809 | entities ``killed.'' This is in sharp contrast to ordinary life, in | 809 | entities ``killed''. This is in sharp contrast to ordinary life, in |
| 810 | which death is permanent and ``killed'' entities do not come back to | 810 | which death is permanent and ``killed'' entities do not come back to |
| 811 | life. Therefore, other metaphors have been proposed. For example, the | 811 | life. Therefore, other metaphors have been proposed. For example, the |
| 812 | term ``cut ring'' makes sense to people who, in pre-computer days, used | 812 | term ``cut ring'' makes sense to people who, in pre-computer days, used |
| @@ -845,7 +845,7 @@ the entry made by the first one. | |||
| 845 | 845 | ||
| 846 | For yanking, one entry in the kill ring is designated the ``front'' of | 846 | For yanking, one entry in the kill ring is designated the ``front'' of |
| 847 | the ring. Some yank commands ``rotate'' the ring by designating a | 847 | the ring. Some yank commands ``rotate'' the ring by designating a |
| 848 | different element as the ``front.'' But this virtual rotation doesn't | 848 | different element as the ``front''. But this virtual rotation doesn't |
| 849 | change the list itself---the most recent entry always comes first in the | 849 | change the list itself---the most recent entry always comes first in the |
| 850 | list. | 850 | list. |
| 851 | 851 | ||
| @@ -1093,8 +1093,8 @@ programs, when you are using a window system. Its value should be | |||
| 1093 | @code{nil} or a function of no arguments. | 1093 | @code{nil} or a function of no arguments. |
| 1094 | 1094 | ||
| 1095 | If the value is a function, @code{current-kill} calls it to get the | 1095 | If the value is a function, @code{current-kill} calls it to get the |
| 1096 | ``most recent kill.'' If the function returns a non-@code{nil} value, | 1096 | ``most recent kill''. If the function returns a non-@code{nil} value, |
| 1097 | then that value is used as the ``most recent kill.'' If it returns | 1097 | then that value is used as the ``most recent kill''. If it returns |
| 1098 | @code{nil}, then the front of the kill ring is used. | 1098 | @code{nil}, then the front of the kill ring is used. |
| 1099 | 1099 | ||
| 1100 | To facilitate support for window systems that support multiple | 1100 | To facilitate support for window systems that support multiple |
| @@ -3504,7 +3504,7 @@ once for the same part of the buffer, you can use the variable | |||
| 3504 | If this variable's value is non-@code{nil}, it is a symbol which is used | 3504 | If this variable's value is non-@code{nil}, it is a symbol which is used |
| 3505 | as a text property name. A non-@code{nil} value for that text property | 3505 | as a text property name. A non-@code{nil} value for that text property |
| 3506 | means, ``the other text properties for this character have already been | 3506 | means, ``the other text properties for this character have already been |
| 3507 | computed.'' | 3507 | computed''. |
| 3508 | 3508 | ||
| 3509 | If all the characters in the range specified for @code{buffer-substring} | 3509 | If all the characters in the range specified for @code{buffer-substring} |
| 3510 | have a non-@code{nil} value for this property, @code{buffer-substring} | 3510 | have a non-@code{nil} value for this property, @code{buffer-substring} |
| @@ -3808,7 +3808,7 @@ after @var{old-pos}.) If @var{escape-from-edge} is non-@code{nil}, | |||
| 3808 | @var{new-pos} can be anywhere in the two adjacent fields. | 3808 | @var{new-pos} can be anywhere in the two adjacent fields. |
| 3809 | Additionally, if two fields are separated by another field with the | 3809 | Additionally, if two fields are separated by another field with the |
| 3810 | special value @code{boundary}, then any point within this special | 3810 | special value @code{boundary}, then any point within this special |
| 3811 | field is also considered to be ``on the boundary.'' | 3811 | field is also considered to be ``on the boundary''. |
| 3812 | 3812 | ||
| 3813 | Commands like @kbd{C-a} with no argument, that normally move backward | 3813 | Commands like @kbd{C-a} with no argument, that normally move backward |
| 3814 | to a specific kind of location and stay there once there, probably | 3814 | to a specific kind of location and stay there once there, probably |
diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi index 4ba7dd9dfe9..0e58373119f 100644 --- a/doc/lispref/tips.texi +++ b/doc/lispref/tips.texi | |||
| @@ -640,7 +640,7 @@ have the form (KEY . VALUE). Here, KEY is ... | |||
| 640 | 640 | ||
| 641 | @item | 641 | @item |
| 642 | Never change the case of a Lisp symbol when you mention it in a doc | 642 | Never change the case of a Lisp symbol when you mention it in a doc |
| 643 | string. If the symbol's name is @code{foo}, write ``foo,'' not | 643 | string. If the symbol's name is @code{foo}, write ``foo'', not |
| 644 | ``Foo'' (which is a different symbol). | 644 | ``Foo'' (which is a different symbol). |
| 645 | 645 | ||
| 646 | This might appear to contradict the policy of writing function | 646 | This might appear to contradict the policy of writing function |
| @@ -772,9 +772,9 @@ is indicative and has a proper subject. | |||
| 772 | 772 | ||
| 773 | @item | 773 | @item |
| 774 | The documentation string for a function that is a yes-or-no predicate | 774 | The documentation string for a function that is a yes-or-no predicate |
| 775 | should start with words such as ``Return t if,'' to indicate | 775 | should start with words such as ``Return t if'', to indicate |
| 776 | explicitly what constitutes ``truth.'' The word ``return'' avoids | 776 | explicitly what constitutes ``truth''. The word ``return'' avoids |
| 777 | starting the sentence with lower-case ``t,'' which could be somewhat | 777 | starting the sentence with lower-case ``t'', which could be somewhat |
| 778 | distracting. | 778 | distracting. |
| 779 | 779 | ||
| 780 | @item | 780 | @item |
| @@ -797,8 +797,8 @@ returned.'' | |||
| 797 | 797 | ||
| 798 | @item | 798 | @item |
| 799 | Avoid using the word ``cause'' (or its equivalents) unnecessarily. | 799 | Avoid using the word ``cause'' (or its equivalents) unnecessarily. |
| 800 | Instead of, ``Cause Emacs to display text in boldface,'' write just | 800 | Instead of, ``Cause Emacs to display text in boldface'', write just |
| 801 | ``Display text in boldface.'' | 801 | ``Display text in boldface''. |
| 802 | 802 | ||
| 803 | @item | 803 | @item |
| 804 | Avoid using ``iff'' (a mathematics term meaning ``if and only if''), | 804 | Avoid using ``iff'' (a mathematics term meaning ``if and only if''), |
| @@ -821,7 +821,7 @@ to set, use @code{defcustom}. @xref{Defining Variables}. | |||
| 821 | 821 | ||
| 822 | @item | 822 | @item |
| 823 | The documentation string for a variable that is a yes-or-no flag should | 823 | The documentation string for a variable that is a yes-or-no flag should |
| 824 | start with words such as ``Non-nil means,'' to make it clear that | 824 | start with words such as ``Non-nil means'', to make it clear that |
| 825 | all non-@code{nil} values are equivalent and indicate explicitly what | 825 | all non-@code{nil} values are equivalent and indicate explicitly what |
| 826 | @code{nil} and non-@code{nil} mean. | 826 | @code{nil} and non-@code{nil} mean. |
| 827 | @end itemize | 827 | @end itemize |
diff --git a/doc/lispref/variables.texi b/doc/lispref/variables.texi index e0e629ec9d3..4e622231645 100644 --- a/doc/lispref/variables.texi +++ b/doc/lispref/variables.texi | |||
| @@ -670,7 +670,7 @@ symbol is changed. | |||
| 670 | 670 | ||
| 671 | @code{setq} does not evaluate @var{symbol}; it sets the symbol that you | 671 | @code{setq} does not evaluate @var{symbol}; it sets the symbol that you |
| 672 | write. We say that this argument is @dfn{automatically quoted}. The | 672 | write. We say that this argument is @dfn{automatically quoted}. The |
| 673 | @samp{q} in @code{setq} stands for ``quoted.'' | 673 | @samp{q} in @code{setq} stands for ``quoted''. |
| 674 | 674 | ||
| 675 | The value of the @code{setq} form is the value of the last @var{form}. | 675 | The value of the @code{setq} form is the value of the last @var{form}. |
| 676 | 676 | ||
diff --git a/doc/lispref/vol1.texi b/doc/lispref/vol1.texi index 25ea8577467..2687cd57d5a 100644 --- a/doc/lispref/vol1.texi +++ b/doc/lispref/vol1.texi | |||
| @@ -24,10 +24,9 @@ | |||
| 24 | @end tex | 24 | @end tex |
| 25 | 25 | ||
| 26 | @c Version of the manual and of Emacs. | 26 | @c Version of the manual and of Emacs. |
| 27 | @c Please remember to update the edition number in README as well. | 27 | @set VERSION 3.1 |
| 28 | @set VERSION 3.0 | ||
| 29 | @include emacsver.texi | 28 | @include emacsver.texi |
| 30 | @set DATE July 2009 | 29 | @set DATE May 2012 |
| 31 | 30 | ||
| 32 | @dircategory Emacs | 31 | @dircategory Emacs |
| 33 | @direntry | 32 | @direntry |
| @@ -90,8 +89,8 @@ developing GNU and promoting software freedom.'' | |||
| 90 | @subtitle For Emacs Version @value{EMACSVER} | 89 | @subtitle For Emacs Version @value{EMACSVER} |
| 91 | @subtitle Revision @value{VERSION}, @value{DATE} | 90 | @subtitle Revision @value{VERSION}, @value{DATE} |
| 92 | 91 | ||
| 93 | @author by Bil Lewis, Dan LaLiberte, Richard Stallman | 92 | @author by Bil Lewis, Dan LaLiberte, Richard Stallman, |
| 94 | @author and the GNU Manual Group | 93 | @author the GNU Manual Group, et al. |
| 95 | @page | 94 | @page |
| 96 | @vskip 0pt plus 1filll | 95 | @vskip 0pt plus 1filll |
| 97 | @insertcopying | 96 | @insertcopying |
| @@ -480,7 +479,7 @@ Functions | |||
| 480 | * Closures:: Functions that enclose a lexical environment. | 479 | * Closures:: Functions that enclose a lexical environment. |
| 481 | * Obsolete Functions:: Declaring functions obsolete. | 480 | * Obsolete Functions:: Declaring functions obsolete. |
| 482 | * Inline Functions:: Defining functions that the compiler | 481 | * Inline Functions:: Defining functions that the compiler |
| 483 | will open code. | 482 | will expand inline. |
| 484 | * Declaring Functions:: Telling the compiler that a function is defined. | 483 | * Declaring Functions:: Telling the compiler that a function is defined. |
| 485 | * Function Safety:: Determining whether a function is safe to call. | 484 | * Function Safety:: Determining whether a function is safe to call. |
| 486 | * Related Topics:: Cross-references to specific Lisp primitives | 485 | * Related Topics:: Cross-references to specific Lisp primitives |
| @@ -513,7 +512,7 @@ Common Problems Using Macros | |||
| 513 | * Eval During Expansion:: Don't evaluate them; put them in the expansion. | 512 | * Eval During Expansion:: Don't evaluate them; put them in the expansion. |
| 514 | * Repeated Expansion:: Avoid depending on how many times expansion is done. | 513 | * Repeated Expansion:: Avoid depending on how many times expansion is done. |
| 515 | 514 | ||
| 516 | Writing Customization Definitions | 515 | Customization Settings |
| 517 | 516 | ||
| 518 | * Common Keywords:: Common keyword arguments for all kinds of | 517 | * Common Keywords:: Common keyword arguments for all kinds of |
| 519 | customization declarations. | 518 | customization declarations. |
| @@ -776,6 +775,7 @@ Defining Menus | |||
| 776 | various features. | 775 | various features. |
| 777 | * Menu Separators:: Drawing a horizontal line through a menu. | 776 | * Menu Separators:: Drawing a horizontal line through a menu. |
| 778 | * Alias Menu Items:: Using command aliases in menu items. | 777 | * Alias Menu Items:: Using command aliases in menu items. |
| 778 | * Toolkit Differences:: Not all toolkits provide the same features. | ||
| 779 | 779 | ||
| 780 | Major and Minor Modes | 780 | Major and Minor Modes |
| 781 | 781 | ||
| @@ -802,7 +802,7 @@ Major Modes | |||
| 802 | * Derived Modes:: Defining a new major mode based on another major | 802 | * Derived Modes:: Defining a new major mode based on another major |
| 803 | mode. | 803 | mode. |
| 804 | * Basic Major Modes:: Modes that other modes are often derived from. | 804 | * Basic Major Modes:: Modes that other modes are often derived from. |
| 805 | * Mode Hooks:: Hooks run at the end of major mode commands. | 805 | * Mode Hooks:: Hooks run at the end of major mode functions. |
| 806 | * Tabulated List Mode:: Parent mode for buffers containing tabulated data. | 806 | * Tabulated List Mode:: Parent mode for buffers containing tabulated data. |
| 807 | * Generic Modes:: Defining a simple major mode that supports | 807 | * Generic Modes:: Defining a simple major mode that supports |
| 808 | comment syntax and Font Lock mode. | 808 | comment syntax and Font Lock mode. |
| @@ -846,6 +846,21 @@ Multiline Font Lock Constructs | |||
| 846 | * Region to Refontify:: Controlling which region gets refontified | 846 | * Region to Refontify:: Controlling which region gets refontified |
| 847 | after a buffer change. | 847 | after a buffer change. |
| 848 | 848 | ||
| 849 | Automatic Indentation of code | ||
| 850 | |||
| 851 | * SMIE:: A simple minded indentation engine. | ||
| 852 | |||
| 853 | Simple Minded Indentation Engine | ||
| 854 | |||
| 855 | * SMIE setup:: SMIE setup and features. | ||
| 856 | * Operator Precedence Grammars:: A very simple parsing technique. | ||
| 857 | * SMIE Grammar:: Defining the grammar of a language. | ||
| 858 | * SMIE Lexer:: Defining tokens. | ||
| 859 | * SMIE Tricks:: Working around the parser's limitations. | ||
| 860 | * SMIE Indentation:: Specifying indentation rules. | ||
| 861 | * SMIE Indentation Helpers:: Helper functions for indentation rules. | ||
| 862 | * SMIE Indentation Example:: Sample indentation rules. | ||
| 863 | |||
| 849 | Documentation | 864 | Documentation |
| 850 | 865 | ||
| 851 | * Documentation Basics:: Where doc strings are defined and stored. | 866 | * Documentation Basics:: Where doc strings are defined and stored. |
| @@ -1242,8 +1257,7 @@ Processes | |||
| 1242 | * Datagrams:: UDP network connections. | 1257 | * Datagrams:: UDP network connections. |
| 1243 | * Low-Level Network:: Lower-level but more general function | 1258 | * Low-Level Network:: Lower-level but more general function |
| 1244 | to create connections and servers. | 1259 | to create connections and servers. |
| 1245 | * Misc Network:: Additional relevant functions for | 1260 | * Misc Network:: Additional relevant functions for net connections. |
| 1246 | network connections. | ||
| 1247 | * Serial Ports:: Communicating with serial ports. | 1261 | * Serial Ports:: Communicating with serial ports. |
| 1248 | * Byte Packing:: Using bindat to pack and unpack binary data. | 1262 | * Byte Packing:: Using bindat to pack and unpack binary data. |
| 1249 | 1263 | ||
| @@ -1363,6 +1377,7 @@ Images | |||
| 1363 | * GIF Images:: Special features for GIF format. | 1377 | * GIF Images:: Special features for GIF format. |
| 1364 | * TIFF Images:: Special features for TIFF format. | 1378 | * TIFF Images:: Special features for TIFF format. |
| 1365 | * PostScript Images:: Special features for PostScript format. | 1379 | * PostScript Images:: Special features for PostScript format. |
| 1380 | * ImageMagick Images:: Special features available through ImageMagick. | ||
| 1366 | * Other Image Types:: Various other formats are supported. | 1381 | * Other Image Types:: Various other formats are supported. |
| 1367 | * Defining Images:: Convenient ways to define an image for later use. | 1382 | * Defining Images:: Convenient ways to define an image for later use. |
| 1368 | * Showing Images:: Convenient ways to display an image once | 1383 | * Showing Images:: Convenient ways to display an image once |
| @@ -1418,12 +1433,6 @@ Operating System Interface | |||
| 1418 | * Notifications:: Desktop notifications. | 1433 | * Notifications:: Desktop notifications. |
| 1419 | * Dynamic Libraries:: On-demand loading of support libraries. | 1434 | * Dynamic Libraries:: On-demand loading of support libraries. |
| 1420 | 1435 | ||
| 1421 | Preparing Lisp code for distribution | ||
| 1422 | |||
| 1423 | * Packaging Basics:: The basic concepts of Emacs Lisp packages. | ||
| 1424 | * Simple Packages:: How to package a single .el file. | ||
| 1425 | * Multi-file Packages:: How to package multiple files. | ||
| 1426 | |||
| 1427 | Starting Up Emacs | 1436 | Starting Up Emacs |
| 1428 | 1437 | ||
| 1429 | * Startup Summary:: Sequence of actions Emacs performs at startup. | 1438 | * Startup Summary:: Sequence of actions Emacs performs at startup. |
| @@ -1442,6 +1451,13 @@ Terminal Input | |||
| 1442 | * Input Modes:: Options for how input is processed. | 1451 | * Input Modes:: Options for how input is processed. |
| 1443 | * Recording Input:: Saving histories of recent or all input events. | 1452 | * Recording Input:: Saving histories of recent or all input events. |
| 1444 | 1453 | ||
| 1454 | Preparing Lisp code for distribution | ||
| 1455 | |||
| 1456 | * Packaging Basics:: The basic concepts of Emacs Lisp packages. | ||
| 1457 | * Simple Packages:: How to package a single .el file. | ||
| 1458 | * Multi-file Packages:: How to package multiple files. | ||
| 1459 | * Package Archives:: Maintaining package archives. | ||
| 1460 | |||
| 1445 | Tips and Conventions | 1461 | Tips and Conventions |
| 1446 | 1462 | ||
| 1447 | * Coding Conventions:: Conventions for clean and robust programs. | 1463 | * Coding Conventions:: Conventions for clean and robust programs. |
diff --git a/doc/lispref/vol2.texi b/doc/lispref/vol2.texi index 2fd2a8d8224..c74e7c438b4 100644 --- a/doc/lispref/vol2.texi +++ b/doc/lispref/vol2.texi | |||
| @@ -24,10 +24,9 @@ | |||
| 24 | @end tex | 24 | @end tex |
| 25 | 25 | ||
| 26 | @c Version of the manual and of Emacs. | 26 | @c Version of the manual and of Emacs. |
| 27 | @c Please remember to update the edition number in README as well. | 27 | @set VERSION 3.1 |
| 28 | @set VERSION 3.0 | ||
| 29 | @include emacsver.texi | 28 | @include emacsver.texi |
| 30 | @set DATE July 2009 | 29 | @set DATE May 2012 |
| 31 | 30 | ||
| 32 | @dircategory Emacs | 31 | @dircategory Emacs |
| 33 | @direntry | 32 | @direntry |
| @@ -90,8 +89,8 @@ developing GNU and promoting software freedom.'' | |||
| 90 | @subtitle For Emacs Version @value{EMACSVER} | 89 | @subtitle For Emacs Version @value{EMACSVER} |
| 91 | @subtitle Revision @value{VERSION}, @value{DATE} | 90 | @subtitle Revision @value{VERSION}, @value{DATE} |
| 92 | 91 | ||
| 93 | @author by Bil Lewis, Dan LaLiberte, Richard Stallman | 92 | @author by Bil Lewis, Dan LaLiberte, Richard Stallman, |
| 94 | @author and the GNU Manual Group | 93 | @author the GNU Manual Group, et al. |
| 95 | @page | 94 | @page |
| 96 | @vskip 0pt plus 1filll | 95 | @vskip 0pt plus 1filll |
| 97 | @insertcopying | 96 | @insertcopying |
| @@ -479,7 +478,7 @@ Functions | |||
| 479 | * Closures:: Functions that enclose a lexical environment. | 478 | * Closures:: Functions that enclose a lexical environment. |
| 480 | * Obsolete Functions:: Declaring functions obsolete. | 479 | * Obsolete Functions:: Declaring functions obsolete. |
| 481 | * Inline Functions:: Defining functions that the compiler | 480 | * Inline Functions:: Defining functions that the compiler |
| 482 | will open code. | 481 | will expand inline. |
| 483 | * Declaring Functions:: Telling the compiler that a function is defined. | 482 | * Declaring Functions:: Telling the compiler that a function is defined. |
| 484 | * Function Safety:: Determining whether a function is safe to call. | 483 | * Function Safety:: Determining whether a function is safe to call. |
| 485 | * Related Topics:: Cross-references to specific Lisp primitives | 484 | * Related Topics:: Cross-references to specific Lisp primitives |
| @@ -512,7 +511,7 @@ Common Problems Using Macros | |||
| 512 | * Eval During Expansion:: Don't evaluate them; put them in the expansion. | 511 | * Eval During Expansion:: Don't evaluate them; put them in the expansion. |
| 513 | * Repeated Expansion:: Avoid depending on how many times expansion is done. | 512 | * Repeated Expansion:: Avoid depending on how many times expansion is done. |
| 514 | 513 | ||
| 515 | Writing Customization Definitions | 514 | Customization Settings |
| 516 | 515 | ||
| 517 | * Common Keywords:: Common keyword arguments for all kinds of | 516 | * Common Keywords:: Common keyword arguments for all kinds of |
| 518 | customization declarations. | 517 | customization declarations. |
| @@ -775,6 +774,7 @@ Defining Menus | |||
| 775 | various features. | 774 | various features. |
| 776 | * Menu Separators:: Drawing a horizontal line through a menu. | 775 | * Menu Separators:: Drawing a horizontal line through a menu. |
| 777 | * Alias Menu Items:: Using command aliases in menu items. | 776 | * Alias Menu Items:: Using command aliases in menu items. |
| 777 | * Toolkit Differences:: Not all toolkits provide the same features. | ||
| 778 | 778 | ||
| 779 | Major and Minor Modes | 779 | Major and Minor Modes |
| 780 | 780 | ||
| @@ -801,7 +801,7 @@ Major Modes | |||
| 801 | * Derived Modes:: Defining a new major mode based on another major | 801 | * Derived Modes:: Defining a new major mode based on another major |
| 802 | mode. | 802 | mode. |
| 803 | * Basic Major Modes:: Modes that other modes are often derived from. | 803 | * Basic Major Modes:: Modes that other modes are often derived from. |
| 804 | * Mode Hooks:: Hooks run at the end of major mode commands. | 804 | * Mode Hooks:: Hooks run at the end of major mode functions. |
| 805 | * Tabulated List Mode:: Parent mode for buffers containing tabulated data. | 805 | * Tabulated List Mode:: Parent mode for buffers containing tabulated data. |
| 806 | * Generic Modes:: Defining a simple major mode that supports | 806 | * Generic Modes:: Defining a simple major mode that supports |
| 807 | comment syntax and Font Lock mode. | 807 | comment syntax and Font Lock mode. |
| @@ -845,6 +845,21 @@ Multiline Font Lock Constructs | |||
| 845 | * Region to Refontify:: Controlling which region gets refontified | 845 | * Region to Refontify:: Controlling which region gets refontified |
| 846 | after a buffer change. | 846 | after a buffer change. |
| 847 | 847 | ||
| 848 | Automatic Indentation of code | ||
| 849 | |||
| 850 | * SMIE:: A simple minded indentation engine. | ||
| 851 | |||
| 852 | Simple Minded Indentation Engine | ||
| 853 | |||
| 854 | * SMIE setup:: SMIE setup and features. | ||
| 855 | * Operator Precedence Grammars:: A very simple parsing technique. | ||
| 856 | * SMIE Grammar:: Defining the grammar of a language. | ||
| 857 | * SMIE Lexer:: Defining tokens. | ||
| 858 | * SMIE Tricks:: Working around the parser's limitations. | ||
| 859 | * SMIE Indentation:: Specifying indentation rules. | ||
| 860 | * SMIE Indentation Helpers:: Helper functions for indentation rules. | ||
| 861 | * SMIE Indentation Example:: Sample indentation rules. | ||
| 862 | |||
| 848 | Documentation | 863 | Documentation |
| 849 | 864 | ||
| 850 | * Documentation Basics:: Where doc strings are defined and stored. | 865 | * Documentation Basics:: Where doc strings are defined and stored. |
| @@ -1362,6 +1377,7 @@ Images | |||
| 1362 | * GIF Images:: Special features for GIF format. | 1377 | * GIF Images:: Special features for GIF format. |
| 1363 | * TIFF Images:: Special features for TIFF format. | 1378 | * TIFF Images:: Special features for TIFF format. |
| 1364 | * PostScript Images:: Special features for PostScript format. | 1379 | * PostScript Images:: Special features for PostScript format. |
| 1380 | * ImageMagick Images:: Special features available through ImageMagick. | ||
| 1365 | * Other Image Types:: Various other formats are supported. | 1381 | * Other Image Types:: Various other formats are supported. |
| 1366 | * Defining Images:: Convenient ways to define an image for later use. | 1382 | * Defining Images:: Convenient ways to define an image for later use. |
| 1367 | * Showing Images:: Convenient ways to display an image once | 1383 | * Showing Images:: Convenient ways to display an image once |
| @@ -1417,12 +1433,6 @@ Operating System Interface | |||
| 1417 | * Notifications:: Desktop notifications. | 1433 | * Notifications:: Desktop notifications. |
| 1418 | * Dynamic Libraries:: On-demand loading of support libraries. | 1434 | * Dynamic Libraries:: On-demand loading of support libraries. |
| 1419 | 1435 | ||
| 1420 | Preparing Lisp code for distribution | ||
| 1421 | |||
| 1422 | * Packaging Basics:: The basic concepts of Emacs Lisp packages. | ||
| 1423 | * Simple Packages:: How to package a single .el file. | ||
| 1424 | * Multi-file Packages:: How to package multiple files. | ||
| 1425 | |||
| 1426 | Starting Up Emacs | 1436 | Starting Up Emacs |
| 1427 | 1437 | ||
| 1428 | * Startup Summary:: Sequence of actions Emacs performs at startup. | 1438 | * Startup Summary:: Sequence of actions Emacs performs at startup. |
| @@ -1441,6 +1451,12 @@ Terminal Input | |||
| 1441 | * Input Modes:: Options for how input is processed. | 1451 | * Input Modes:: Options for how input is processed. |
| 1442 | * Recording Input:: Saving histories of recent or all input events. | 1452 | * Recording Input:: Saving histories of recent or all input events. |
| 1443 | 1453 | ||
| 1454 | Preparing Lisp code for distribution | ||
| 1455 | |||
| 1456 | * Packaging Basics:: The basic concepts of Emacs Lisp packages. | ||
| 1457 | * Simple Packages:: How to package a single .el file. | ||
| 1458 | * Multi-file Packages:: How to package multiple files. | ||
| 1459 | |||
| 1444 | Tips and Conventions | 1460 | Tips and Conventions |
| 1445 | 1461 | ||
| 1446 | * Coding Conventions:: Conventions for clean and robust programs. | 1462 | * Coding Conventions:: Conventions for clean and robust programs. |
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi index a9a25d8e867..094729033b1 100644 --- a/doc/lispref/windows.texi +++ b/doc/lispref/windows.texi | |||
| @@ -49,7 +49,7 @@ is displayed in windows. | |||
| 49 | @section Basic Concepts of Emacs Windows | 49 | @section Basic Concepts of Emacs Windows |
| 50 | @cindex window | 50 | @cindex window |
| 51 | 51 | ||
| 52 | A @dfn{window} is a area of the screen which is used to display a | 52 | A @dfn{window} is a area of the screen that is used to display a |
| 53 | buffer (@pxref{Buffers}). In Emacs Lisp, windows are represented by a | 53 | buffer (@pxref{Buffers}). In Emacs Lisp, windows are represented by a |
| 54 | special Lisp object type. | 54 | special Lisp object type. |
| 55 | 55 | ||
| @@ -297,8 +297,8 @@ child of its parent. | |||
| 297 | 297 | ||
| 298 | The functions @code{window-next-sibling} and | 298 | The functions @code{window-next-sibling} and |
| 299 | @code{window-prev-sibling} should not be confused with the functions | 299 | @code{window-prev-sibling} should not be confused with the functions |
| 300 | @code{next-window} and @code{previous-window} which respectively | 300 | @code{next-window} and @code{previous-window}, which return the next |
| 301 | return the next and previous window in the cyclic ordering of windows | 301 | and previous window, respectively, in the cyclic ordering of windows |
| 302 | (@pxref{Cyclic Window Ordering}). | 302 | (@pxref{Cyclic Window Ordering}). |
| 303 | 303 | ||
| 304 | You can use the following functions to find the first live window on | 304 | You can use the following functions to find the first live window on |
| @@ -376,7 +376,7 @@ line (@pxref{Mode Line Format}). | |||
| 376 | 376 | ||
| 377 | Emacs provides several functions for finding the height and width of | 377 | Emacs provides several functions for finding the height and width of |
| 378 | a window. Except where noted, Emacs reports window heights and widths | 378 | a window. Except where noted, Emacs reports window heights and widths |
| 379 | as integer numbers of lines and columns respectively. On a graphical | 379 | as integer numbers of lines and columns, respectively. On a graphical |
| 380 | display, each ``line'' and ``column'' actually corresponds to the | 380 | display, each ``line'' and ``column'' actually corresponds to the |
| 381 | height and width of a ``default'' character specified by the frame's | 381 | height and width of a ``default'' character specified by the frame's |
| 382 | default font. Thus, if a window is displaying text with a different | 382 | default font. Thus, if a window is displaying text with a different |
| @@ -619,7 +619,7 @@ window. | |||
| 619 | 619 | ||
| 620 | The optional argument @var{max-height}, if non-@code{nil}, specifies | 620 | The optional argument @var{max-height}, if non-@code{nil}, specifies |
| 621 | the maximum total height that this function can give @var{window}. | 621 | the maximum total height that this function can give @var{window}. |
| 622 | The optional argument @var{min-height}, if no-@code{nil}, specifies | 622 | The optional argument @var{min-height}, if non-@code{nil}, specifies |
| 623 | the minimum total height that it can give, which overrides the | 623 | the minimum total height that it can give, which overrides the |
| 624 | variable @code{window-min-height}. | 624 | variable @code{window-min-height}. |
| 625 | 625 | ||
| @@ -723,7 +723,7 @@ properties of the window selected within @var{window}'s frame. | |||
| 723 | 723 | ||
| 724 | The behavior of this function may be altered by the window parameters | 724 | The behavior of this function may be altered by the window parameters |
| 725 | of @var{window}, so long as the variable | 725 | of @var{window}, so long as the variable |
| 726 | @code{ignore-window-parameters} is non-@code{nil}. If the value of | 726 | @code{ignore-window-parameters} is @code{nil}. If the value of |
| 727 | the @code{split-window} window parameter is @code{t}, this function | 727 | the @code{split-window} window parameter is @code{t}, this function |
| 728 | ignores all other window parameters. Otherwise, if the value of the | 728 | ignores all other window parameters. Otherwise, if the value of the |
| 729 | @code{split-window} window parameter is a function, that function is | 729 | @code{split-window} window parameter is a function, that function is |
| @@ -1062,7 +1062,7 @@ combination. @xref{Splitting Windows}. | |||
| 1062 | 1062 | ||
| 1063 | The behavior of this function may be altered by the window parameters | 1063 | The behavior of this function may be altered by the window parameters |
| 1064 | of @var{window}, so long as the variable | 1064 | of @var{window}, so long as the variable |
| 1065 | @code{ignore-window-parameters} is non-@code{nil}. If the value of | 1065 | @code{ignore-window-parameters} is @code{nil}. If the value of |
| 1066 | the @code{delete-window} window parameter is @code{t}, this function | 1066 | the @code{delete-window} window parameter is @code{t}, this function |
| 1067 | ignores all other window parameters. Otherwise, if the value of the | 1067 | ignores all other window parameters. Otherwise, if the value of the |
| 1068 | @code{delete-window} window parameter is a function, that function is | 1068 | @code{delete-window} window parameter is a function, that function is |
| @@ -1079,7 +1079,7 @@ defaults to the selected window. The return value is @code{nil}. | |||
| 1079 | 1079 | ||
| 1080 | The behavior of this function may be altered by the window parameters | 1080 | The behavior of this function may be altered by the window parameters |
| 1081 | of @var{window}, so long as the variable | 1081 | of @var{window}, so long as the variable |
| 1082 | @code{ignore-window-parameters} is non-@code{nil}. If the value of | 1082 | @code{ignore-window-parameters} is @code{nil}. If the value of |
| 1083 | the @code{delete-other-windows} window parameter is @code{t}, this | 1083 | the @code{delete-other-windows} window parameter is @code{t}, this |
| 1084 | function ignores all other window parameters. Otherwise, if the value | 1084 | function ignores all other window parameters. Otherwise, if the value |
| 1085 | of the @code{delete-other-windows} window parameter is a function, | 1085 | of the @code{delete-other-windows} window parameter is a function, |
| @@ -1119,8 +1119,8 @@ means operate on that frame. | |||
| 1119 | 1119 | ||
| 1120 | Note that this argument does not have the same meaning as in other | 1120 | Note that this argument does not have the same meaning as in other |
| 1121 | functions which scan all live windows (@pxref{Cyclic Window | 1121 | functions which scan all live windows (@pxref{Cyclic Window |
| 1122 | Ordering}). Specifically, the values @code{t} and @code{nil} have the | 1122 | Ordering}). Specifically, the meanings of @code{t} and @code{nil} here |
| 1123 | opposite of their meanings in those other functions. | 1123 | are the opposite of what they are in those other functions. |
| 1124 | @end deffn | 1124 | @end deffn |
| 1125 | 1125 | ||
| 1126 | @node Selecting Windows | 1126 | @node Selecting Windows |
| @@ -1171,11 +1171,11 @@ the buffer list. | |||
| 1171 | This macro selects @var{window}, executes @var{forms} in sequence, then | 1171 | This macro selects @var{window}, executes @var{forms} in sequence, then |
| 1172 | restores the previously selected window and current buffer. The ordering | 1172 | restores the previously selected window and current buffer. The ordering |
| 1173 | of recently selected windows and the buffer list remain unchanged unless | 1173 | of recently selected windows and the buffer list remain unchanged unless |
| 1174 | you deliberately change them within @var{forms}, for example, by calling | 1174 | you deliberately change them within @var{forms}; for example, by calling |
| 1175 | @code{select-window} with argument @var{norecord} @code{nil}. | 1175 | @code{select-window} with argument @var{norecord} @code{nil}. |
| 1176 | 1176 | ||
| 1177 | The order of recently selected windows and the buffer list are not | 1177 | This macro does not change the order of recently selected windows or |
| 1178 | changed by this macro. | 1178 | the buffer list. |
| 1179 | @end defmac | 1179 | @end defmac |
| 1180 | 1180 | ||
| 1181 | @defun frame-selected-window &optional frame | 1181 | @defun frame-selected-window &optional frame |
| @@ -1185,7 +1185,7 @@ within that frame. @var{frame} should be a live frame; if omitted or | |||
| 1185 | @end defun | 1185 | @end defun |
| 1186 | 1186 | ||
| 1187 | @defun set-frame-selected-window frame window &optional norecord | 1187 | @defun set-frame-selected-window frame window &optional norecord |
| 1188 | This function makes @code{window} the window selected within the frame | 1188 | This function makes @var{window} the window selected within the frame |
| 1189 | @var{frame}. @var{frame} should be a live frame; if omitted or | 1189 | @var{frame}. @var{frame} should be a live frame; if omitted or |
| 1190 | @code{nil}, it defaults to the selected frame. @var{window} should be | 1190 | @code{nil}, it defaults to the selected frame. @var{window} should be |
| 1191 | a live window; if omitted or @code{nil}, it defaults to the selected | 1191 | a live window; if omitted or @code{nil}, it defaults to the selected |
| @@ -1223,7 +1223,7 @@ the cyclic ordering of windows. @var{window} should be a live window; | |||
| 1223 | if omitted or @code{nil}, it defaults to the selected window. | 1223 | if omitted or @code{nil}, it defaults to the selected window. |
| 1224 | 1224 | ||
| 1225 | The optional argument @var{minibuf} specifies whether minibuffer windows | 1225 | The optional argument @var{minibuf} specifies whether minibuffer windows |
| 1226 | shall be included in the cyclic ordering. Normally, when @var{minibuf} | 1226 | should be included in the cyclic ordering. Normally, when @var{minibuf} |
| 1227 | is @code{nil}, a minibuffer window is included only if it is currently | 1227 | is @code{nil}, a minibuffer window is included only if it is currently |
| 1228 | ``active''; this matches the behavior of @kbd{C-x o}. (Note that a | 1228 | ``active''; this matches the behavior of @kbd{C-x o}. (Note that a |
| 1229 | minibuffer window is active as long as its minibuffer is in use; see | 1229 | minibuffer window is active as long as its minibuffer is in use; see |
| @@ -1805,14 +1805,14 @@ desired buffer) or @code{nil} (which means the splitting failed). | |||
| 1805 | @end defopt | 1805 | @end defopt |
| 1806 | 1806 | ||
| 1807 | @defun split-window-sensibly window | 1807 | @defun split-window-sensibly window |
| 1808 | This function tries to split @code{window}, and return the newly | 1808 | This function tries to split @var{window}, and return the newly |
| 1809 | created window. If @code{window} cannot be split, it returns | 1809 | created window. If @var{window} cannot be split, it returns |
| 1810 | @code{nil}. | 1810 | @code{nil}. |
| 1811 | 1811 | ||
| 1812 | This function obeys the usual rules that determine when a window may | 1812 | This function obeys the usual rules that determine when a window may |
| 1813 | be split (@pxref{Splitting Windows}). It first tries to split by | 1813 | be split (@pxref{Splitting Windows}). It first tries to split by |
| 1814 | placing the new window below, subject to the restriction imposed by | 1814 | placing the new window below, subject to the restriction imposed by |
| 1815 | @code{split-height-threshold} (see below) in addition to any other | 1815 | @code{split-height-threshold} (see below), in addition to any other |
| 1816 | restrictions. If that fails, it tries to split by placing the new | 1816 | restrictions. If that fails, it tries to split by placing the new |
| 1817 | window to the right, subject to @code{split-width-threshold} (see | 1817 | window to the right, subject to @code{split-width-threshold} (see |
| 1818 | below). If that fails, and the window is the only window on its | 1818 | below). If that fails, and the window is the only window on its |
| @@ -1944,7 +1944,7 @@ to display @var{buffer}. | |||
| 1944 | 1944 | ||
| 1945 | If @var{args} is an alist, it specifies frame parameters for the new | 1945 | If @var{args} is an alist, it specifies frame parameters for the new |
| 1946 | frame. If @var{args} is a list whose @sc{car} is a symbol, then | 1946 | frame. If @var{args} is a list whose @sc{car} is a symbol, then |
| 1947 | @code{(car @var{args})} is called as a function to actually create and | 1947 | @code{(car @var{args})} is a function to actually create and |
| 1948 | set up the frame; it is called with @var{buffer} as first argument, and | 1948 | set up the frame; it is called with @var{buffer} as first argument, and |
| 1949 | @code{(cdr @var{args})} as additional arguments. | 1949 | @code{(cdr @var{args})} as additional arguments. |
| 1950 | 1950 | ||
| @@ -1962,7 +1962,7 @@ This variable holds frame parameters for | |||
| 1962 | 1962 | ||
| 1963 | @defopt same-window-buffer-names | 1963 | @defopt same-window-buffer-names |
| 1964 | A list of buffer names for buffers that should be displayed in the | 1964 | A list of buffer names for buffers that should be displayed in the |
| 1965 | selected window. If the buffer's name is in this list, | 1965 | selected window. If a buffer's name is in this list, |
| 1966 | @code{display-buffer} handles the buffer by switching to it in the | 1966 | @code{display-buffer} handles the buffer by switching to it in the |
| 1967 | selected window. | 1967 | selected window. |
| 1968 | @end defopt | 1968 | @end defopt |
| @@ -1997,8 +1997,8 @@ above. | |||
| 1997 | @section Window History | 1997 | @section Window History |
| 1998 | @cindex window history | 1998 | @cindex window history |
| 1999 | 1999 | ||
| 2000 | Each window remembers the buffers it has displayed earlier and the order | 2000 | Each window remembers the buffers it has previously displayed, and the order |
| 2001 | in which these buffers have been removed from it. This history is used, | 2001 | in which these buffers were removed from it. This history is used, |
| 2002 | for example, by @code{replace-buffer-in-windows} (@pxref{Buffers and | 2002 | for example, by @code{replace-buffer-in-windows} (@pxref{Buffers and |
| 2003 | Windows}). This list is automatically maintained by Emacs, but you can | 2003 | Windows}). This list is automatically maintained by Emacs, but you can |
| 2004 | use the following functions to explicitly inspect or alter it: | 2004 | use the following functions to explicitly inspect or alter it: |
| @@ -2061,41 +2061,41 @@ This command displays the previous buffer in @var{window}. The | |||
| 2061 | argument @var{window} should be a live window or @code{nil} (meaning | 2061 | argument @var{window} should be a live window or @code{nil} (meaning |
| 2062 | the selected window). If the optional argument @var{bury-or-kill} is | 2062 | the selected window). If the optional argument @var{bury-or-kill} is |
| 2063 | non-@code{nil}, this means that the buffer currently shown in | 2063 | non-@code{nil}, this means that the buffer currently shown in |
| 2064 | @var{window} is about to be buried or killed and consequently shall | 2064 | @var{window} is about to be buried or killed and consequently should |
| 2065 | not be switched to in future invocations of this command. | 2065 | not be switched to in future invocations of this command. |
| 2066 | 2066 | ||
| 2067 | The previous buffer is usually the buffer shown before the buffer | 2067 | The previous buffer is usually the buffer shown before the buffer |
| 2068 | currently shown in @var{window}. However, a buffer that has been buried | 2068 | currently shown in @var{window}. However, a buffer that has been buried |
| 2069 | or killed or has been already shown by a recent invocation of | 2069 | or killed, or has been already shown by a recent invocation of |
| 2070 | @code{switch-to-prev-buffer} does not qualify as previous buffer. | 2070 | @code{switch-to-prev-buffer}, does not qualify as previous buffer. |
| 2071 | 2071 | ||
| 2072 | If repeated invocations of this command have already shown all buffers | 2072 | If repeated invocations of this command have already shown all buffers |
| 2073 | previously shown in @var{window}, further invocations will show buffers | 2073 | previously shown in @var{window}, further invocations will show buffers |
| 2074 | from the buffer list of the frame @var{window} appears on (@pxref{The | 2074 | from the buffer list of the frame @var{window} appears on (@pxref{The |
| 2075 | Buffer List}) trying to skip buffers that are already shown in another | 2075 | Buffer List}), trying to skip buffers that are already shown in another |
| 2076 | window on that frame. | 2076 | window on that frame. |
| 2077 | @end deffn | 2077 | @end deffn |
| 2078 | 2078 | ||
| 2079 | @deffn Command switch-to-next-buffer &optional window | 2079 | @deffn Command switch-to-next-buffer &optional window |
| 2080 | This command switches to the next buffer in @var{window} thus undoing | 2080 | This command switches to the next buffer in @var{window}, thus undoing |
| 2081 | the effect of the last @code{switch-to-prev-buffer} command in | 2081 | the effect of the last @code{switch-to-prev-buffer} command in |
| 2082 | @var{window}. The argument @var{window} must be a live window and | 2082 | @var{window}. The argument @var{window} must be a live window and |
| 2083 | defaults to the selected one. | 2083 | defaults to the selected one. |
| 2084 | 2084 | ||
| 2085 | If there is no recent invocation of a @code{switch-to-prev-buffer} that | 2085 | If there is no recent invocation of @code{switch-to-prev-buffer} that |
| 2086 | can be undone, this function tries to show a buffer from the buffer list | 2086 | can be undone, this function tries to show a buffer from the buffer list |
| 2087 | of the frame @var{window} appears on (@pxref{The Buffer List}). | 2087 | of the frame @var{window} appears on (@pxref{The Buffer List}). |
| 2088 | @end deffn | 2088 | @end deffn |
| 2089 | 2089 | ||
| 2090 | By default @code{switch-to-prev-buffer} and @code{switch-to-next-buffer} | 2090 | By default @code{switch-to-prev-buffer} and @code{switch-to-next-buffer} |
| 2091 | can switch to a buffer that is already shown in another window on the | 2091 | can switch to a buffer that is already shown in another window on the |
| 2092 | same frame. The following option can be used to override that behavior. | 2092 | same frame. The following option can be used to override this behavior. |
| 2093 | 2093 | ||
| 2094 | @defopt switch-to-visible-buffer | 2094 | @defopt switch-to-visible-buffer |
| 2095 | If this variable is non-@code{nil}, @code{switch-to-prev-buffer} and | 2095 | If this variable is non-@code{nil}, @code{switch-to-prev-buffer} and |
| 2096 | @code{switch-to-next-buffer} may switch to a buffer that is already | 2096 | @code{switch-to-next-buffer} may switch to a buffer that is already |
| 2097 | visible on the same frame, provided the buffer was shown in the argument | 2097 | visible on the same frame, provided the buffer was shown in the relevant |
| 2098 | window before. If it's @code{nil}, @code{switch-to-prev-buffer} and | 2098 | window before. If it is @code{nil}, @code{switch-to-prev-buffer} and |
| 2099 | @code{switch-to-next-buffer} always try to avoid switching to a buffer | 2099 | @code{switch-to-next-buffer} always try to avoid switching to a buffer |
| 2100 | that is already visible in another window on the same frame. | 2100 | that is already visible in another window on the same frame. |
| 2101 | @end defopt | 2101 | @end defopt |
| @@ -2137,7 +2137,7 @@ another buffer in it and iconifies the frame. | |||
| 2137 | This function returns non-@code{nil} if @var{window} is dedicated to its | 2137 | This function returns non-@code{nil} if @var{window} is dedicated to its |
| 2138 | buffer and @code{nil} otherwise. More precisely, the return value is | 2138 | buffer and @code{nil} otherwise. More precisely, the return value is |
| 2139 | the value assigned by the last call of @code{set-window-dedicated-p} for | 2139 | the value assigned by the last call of @code{set-window-dedicated-p} for |
| 2140 | @var{window} or @code{nil} if that function was never called with | 2140 | @var{window}, or @code{nil} if that function was never called with |
| 2141 | @var{window} as its argument. The default for @var{window} is the | 2141 | @var{window} as its argument. The default for @var{window} is the |
| 2142 | selected window. | 2142 | selected window. |
| 2143 | @end defun | 2143 | @end defun |
| @@ -2158,20 +2158,20 @@ non-@code{nil} value. | |||
| 2158 | @node Quitting Windows | 2158 | @node Quitting Windows |
| 2159 | @section Quitting Windows | 2159 | @section Quitting Windows |
| 2160 | 2160 | ||
| 2161 | When you want to get rid of a window used for displaying a buffer you | 2161 | When you want to get rid of a window used for displaying a buffer, you |
| 2162 | can call @code{delete-window} or @code{delete-windows-on} | 2162 | can call @code{delete-window} or @code{delete-windows-on} |
| 2163 | (@pxref{Deleting Windows}) to remove that window from its frame. If the | 2163 | (@pxref{Deleting Windows}) to remove that window from its frame. If the |
| 2164 | buffer is shown on a separate frame, you might want to call | 2164 | buffer is shown on a separate frame, you might want to call |
| 2165 | @code{delete-frame} (@pxref{Deleting Frames}) instead. If, on the other | 2165 | @code{delete-frame} (@pxref{Deleting Frames}) instead. If, on the other |
| 2166 | hand, a window has been reused for displaying the buffer, you might | 2166 | hand, a window has been reused for displaying the buffer, you might |
| 2167 | prefer showing the buffer previously shown in that window by calling the | 2167 | prefer showing the buffer previously shown in that window, by calling the |
| 2168 | function @code{switch-to-prev-buffer} (@pxref{Window History}). | 2168 | function @code{switch-to-prev-buffer} (@pxref{Window History}). |
| 2169 | Finally, you might want to either bury (@pxref{The Buffer List}) or kill | 2169 | Finally, you might want to either bury (@pxref{The Buffer List}) or kill |
| 2170 | (@pxref{Killing Buffers}) the window's buffer. | 2170 | (@pxref{Killing Buffers}) the window's buffer. |
| 2171 | 2171 | ||
| 2172 | The following function uses information on how the window for | 2172 | The following function uses information on how the window for |
| 2173 | displaying the buffer was obtained in the first place thus attempting to | 2173 | displaying the buffer was obtained in the first place, thus attempting to |
| 2174 | automatize the above decisions for you. | 2174 | automate the above decisions for you. |
| 2175 | 2175 | ||
| 2176 | @deffn Command quit-window &optional kill window | 2176 | @deffn Command quit-window &optional kill window |
| 2177 | This command quits @var{window} and buries its buffer. The argument | 2177 | This command quits @var{window} and buries its buffer. The argument |
| @@ -2199,39 +2199,39 @@ restore the original height of @var{window}. | |||
| 2199 | The three cases described so far require that the buffer shown in | 2199 | The three cases described so far require that the buffer shown in |
| 2200 | @var{window} is still the buffer displayed by the last buffer display | 2200 | @var{window} is still the buffer displayed by the last buffer display |
| 2201 | function for this window. If another buffer has been shown in the | 2201 | function for this window. If another buffer has been shown in the |
| 2202 | meantime or the buffer previously shown no longer exists, this command | 2202 | meantime, or the buffer previously shown no longer exists, this command |
| 2203 | calls @code{switch-to-prev-buffer} (@pxref{Window History}) to show some | 2203 | calls @code{switch-to-prev-buffer} (@pxref{Window History}) to show some |
| 2204 | other buffer instead. | 2204 | other buffer instead. |
| 2205 | @end deffn | 2205 | @end deffn |
| 2206 | 2206 | ||
| 2207 | The function @code{quit-window} bases its decisions on information | 2207 | The function @code{quit-window} bases its decisions on information |
| 2208 | stored in @var{window}'s @code{quit-restore} window parameter | 2208 | stored in @var{window}'s @code{quit-restore} window parameter |
| 2209 | (@pxref{Window Parameters}) and resets that parameter to @code{nil} | 2209 | (@pxref{Window Parameters}), and resets that parameter to @code{nil} |
| 2210 | after it's done. | 2210 | after it's done. |
| 2211 | 2211 | ||
| 2212 | The following option specifies how to deal with a frame containing just | 2212 | The following option specifies how to deal with a frame containing just |
| 2213 | one window that shall be either quit or whose buffer shall be buried. | 2213 | one window that should be either quit, or whose buffer should be buried. |
| 2214 | 2214 | ||
| 2215 | @defopt frame-auto-hide-function | 2215 | @defopt frame-auto-hide-function |
| 2216 | The function specified by this option is called to automatically hide | 2216 | The function specified by this option is called to automatically hide |
| 2217 | frames. This function is called with one argument - a frame. | 2217 | frames. This function is called with one argument---a frame. |
| 2218 | 2218 | ||
| 2219 | The function specified here is called by @code{bury-buffer} (@pxref{The | 2219 | The function specified here is called by @code{bury-buffer} (@pxref{The |
| 2220 | Buffer List}) when the selected window is dedicated and shows the buffer | 2220 | Buffer List}) when the selected window is dedicated and shows the buffer |
| 2221 | that shall be buried. It is also called by @code{quit-window} (see | 2221 | that should be buried. It is also called by @code{quit-window} (see |
| 2222 | above) when the frame of the window that shall be quit has been | 2222 | above) when the frame of the window that should be quit has been |
| 2223 | specially created for displaying that window's buffer and the buffer | 2223 | specially created for displaying that window's buffer and the buffer |
| 2224 | shall be buried. | 2224 | should be buried. |
| 2225 | 2225 | ||
| 2226 | The default is to call @code{iconify-frame} (@pxref{Visibility of | 2226 | The default is to call @code{iconify-frame} (@pxref{Visibility of |
| 2227 | Frames}). Alternatively, you may either specify @code{delete-frame} | 2227 | Frames}). Alternatively, you may specify either @code{delete-frame} |
| 2228 | (@pxref{Deleting Frames}) to remove the frame from its display, | 2228 | (@pxref{Deleting Frames}) to remove the frame from its display, |
| 2229 | @code{ignore} to leave the frame unchanged, or any other function that | 2229 | @code{ignore} to leave the frame unchanged, or any other function that |
| 2230 | can take a frame as its sole argument. | 2230 | can take a frame as its sole argument. |
| 2231 | 2231 | ||
| 2232 | Note that the function specified by this option is called if and only if | 2232 | Note that the function specified by this option is called if and only if |
| 2233 | there's at least one other frame on the terminal of the frame it's | 2233 | there is at least one other frame on the terminal of the frame it's |
| 2234 | supposed to handle and that frame contains only one live window. | 2234 | supposed to handle, and that frame contains only one live window. |
| 2235 | @end defopt | 2235 | @end defopt |
| 2236 | 2236 | ||
| 2237 | 2237 | ||
| @@ -2321,14 +2321,7 @@ command to a key. | |||
| 2321 | @cindex window top line | 2321 | @cindex window top line |
| 2322 | This function returns the display-start position of window | 2322 | This function returns the display-start position of window |
| 2323 | @var{window}. If @var{window} is @code{nil}, the selected window is | 2323 | @var{window}. If @var{window} is @code{nil}, the selected window is |
| 2324 | used. For example, | 2324 | used. |
| 2325 | |||
| 2326 | @example | ||
| 2327 | @group | ||
| 2328 | (window-start) | ||
| 2329 | @result{} 7058 | ||
| 2330 | @end group | ||
| 2331 | @end example | ||
| 2332 | 2325 | ||
| 2333 | When you create a window, or display a different buffer in it, the | 2326 | When you create a window, or display a different buffer in it, the |
| 2334 | display-start position is set to a display-start position recently used | 2327 | display-start position is set to a display-start position recently used |
| @@ -2340,9 +2333,6 @@ it explicitly since the previous redisplay)---to make sure point appears | |||
| 2340 | on the screen. Nothing except redisplay automatically changes the | 2333 | on the screen. Nothing except redisplay automatically changes the |
| 2341 | window-start position; if you move point, do not expect the window-start | 2334 | window-start position; if you move point, do not expect the window-start |
| 2342 | position to change in response until after the next redisplay. | 2335 | position to change in response until after the next redisplay. |
| 2343 | |||
| 2344 | For a realistic example of using @code{window-start}, see the | ||
| 2345 | description of @code{count-lines}. @xref{Definition of count-lines}. | ||
| 2346 | @end defun | 2336 | @end defun |
| 2347 | 2337 | ||
| 2348 | @cindex window end position | 2338 | @cindex window end position |
| @@ -2516,12 +2506,16 @@ commands move the paper up and down. Thus, if you are looking at the | |||
| 2516 | middle of a buffer and repeatedly call @code{scroll-down}, you will | 2506 | middle of a buffer and repeatedly call @code{scroll-down}, you will |
| 2517 | eventually see the beginning of the buffer. | 2507 | eventually see the beginning of the buffer. |
| 2518 | 2508 | ||
| 2519 | Some people have urged that the opposite convention be used: they | 2509 | Unfortunately, this sometimes causes confusion, because some people |
| 2510 | tend to think in terms of the opposite convention: they | ||
| 2520 | imagine the window moving over text that remains in place, so that | 2511 | imagine the window moving over text that remains in place, so that |
| 2521 | ``down'' commands take you to the end of the buffer. This convention | 2512 | ``down'' commands take you to the end of the buffer. This convention |
| 2522 | is consistent with fact that such a command is bound to a key named | 2513 | is consistent with fact that such a command is bound to a key named |
| 2523 | @key{PageDown} on modern keyboards. We have not switched to this | 2514 | @key{PageDown} on modern keyboards. |
| 2524 | convention as that is likely to break existing Emacs Lisp code. | 2515 | @ignore |
| 2516 | We have not switched to this convention as that is likely to break | ||
| 2517 | existing Emacs Lisp code. | ||
| 2518 | @end ignore | ||
| 2525 | 2519 | ||
| 2526 | Textual scrolling functions (aside from @code{scroll-other-window}) | 2520 | Textual scrolling functions (aside from @code{scroll-other-window}) |
| 2527 | have unpredictable results if the current buffer is not the one | 2521 | have unpredictable results if the current buffer is not the one |
| @@ -2551,13 +2545,8 @@ signals an error. Otherwise, it returns @code{nil}. | |||
| 2551 | This function scrolls backward by @var{count} lines in the selected | 2545 | This function scrolls backward by @var{count} lines in the selected |
| 2552 | window. | 2546 | window. |
| 2553 | 2547 | ||
| 2554 | If @var{count} is negative, it scrolls forward instead. If | 2548 | If @var{count} is negative, it scrolls forward instead. In other |
| 2555 | @var{count} is omitted or @code{nil}, the distance scrolled is | 2549 | respects, it behaves the same way as @code{scroll-up} does. |
| 2556 | @code{next-screen-context-lines} lines less than the height of the | ||
| 2557 | window's text area. | ||
| 2558 | |||
| 2559 | If the selected window cannot be scrolled any further, this function | ||
| 2560 | signals an error. Otherwise, it returns @code{nil}. | ||
| 2561 | @end deffn | 2550 | @end deffn |
| 2562 | 2551 | ||
| 2563 | @deffn Command scroll-up-command &optional count | 2552 | @deffn Command scroll-up-command &optional count |
| @@ -2587,8 +2576,8 @@ already displayed, @code{scroll-other-window} displays it in some | |||
| 2587 | window. | 2576 | window. |
| 2588 | 2577 | ||
| 2589 | When the selected window is the minibuffer, the next window is normally | 2578 | When the selected window is the minibuffer, the next window is normally |
| 2590 | the one at the top left corner. You can specify a different window to | 2579 | the leftmost one immediately above it. You can specify a different |
| 2591 | scroll, when the minibuffer is selected, by setting the variable | 2580 | window to scroll, when the minibuffer is selected, by setting the variable |
| 2592 | @code{minibuffer-scroll-window}. This variable has no effect when any | 2581 | @code{minibuffer-scroll-window}. This variable has no effect when any |
| 2593 | other window is selected. When it is non-@code{nil} and the | 2582 | other window is selected. When it is non-@code{nil} and the |
| 2594 | minibuffer is selected, it takes precedence over | 2583 | minibuffer is selected, it takes precedence over |
| @@ -2600,7 +2589,7 @@ window is the one at the bottom right corner. In this case, | |||
| 2600 | @code{scroll-other-window} attempts to scroll the minibuffer. If the | 2589 | @code{scroll-other-window} attempts to scroll the minibuffer. If the |
| 2601 | minibuffer contains just one line, it has nowhere to scroll to, so the | 2590 | minibuffer contains just one line, it has nowhere to scroll to, so the |
| 2602 | line reappears after the echo area momentarily displays the message | 2591 | line reappears after the echo area momentarily displays the message |
| 2603 | @samp{Beginning of buffer}. | 2592 | @samp{End of buffer}. |
| 2604 | @end deffn | 2593 | @end deffn |
| 2605 | 2594 | ||
| 2606 | @defvar other-window-scroll-buffer | 2595 | @defvar other-window-scroll-buffer |
| @@ -2699,12 +2688,12 @@ If @var{count} is a non-negative number, that puts the line containing | |||
| 2699 | point @var{count} lines down from the top of the window. If | 2688 | point @var{count} lines down from the top of the window. If |
| 2700 | @var{count} is a negative number, then it counts upward from the | 2689 | @var{count} is a negative number, then it counts upward from the |
| 2701 | bottom of the window, so that @minus{}1 stands for the last usable | 2690 | bottom of the window, so that @minus{}1 stands for the last usable |
| 2702 | line in the window. If @var{count} is a non-@code{nil} list, then it | 2691 | line in the window. |
| 2703 | stands for the line in the middle of the window. | ||
| 2704 | 2692 | ||
| 2705 | If @var{count} is @code{nil}, @code{recenter} puts the line containing | 2693 | If @var{count} is @code{nil} (or a non-@code{nil} list), |
| 2706 | point in the middle of the window, then clears and redisplays the entire | 2694 | @code{recenter} puts the line containing point in the middle of the |
| 2707 | selected frame. | 2695 | window. If @var{count} is @code{nil}, this function may redraw the |
| 2696 | frame, according to the value of @code{recenter-redisplay}. | ||
| 2708 | 2697 | ||
| 2709 | When @code{recenter} is called interactively, @var{count} is the raw | 2698 | When @code{recenter} is called interactively, @var{count} is the raw |
| 2710 | prefix argument. Thus, typing @kbd{C-u} as the prefix sets the | 2699 | prefix argument. Thus, typing @kbd{C-u} as the prefix sets the |
| @@ -2713,22 +2702,32 @@ prefix argument. Thus, typing @kbd{C-u} as the prefix sets the | |||
| 2713 | top. | 2702 | top. |
| 2714 | 2703 | ||
| 2715 | With an argument of zero, @code{recenter} positions the current line at | 2704 | With an argument of zero, @code{recenter} positions the current line at |
| 2716 | the top of the window. This action is so handy that some people make a | 2705 | the top of the window. The command @code{recenter-top-bottom} offers |
| 2717 | separate key binding to do this. For example, | 2706 | a more convenient way to achieve this. |
| 2707 | @end deffn | ||
| 2718 | 2708 | ||
| 2719 | @example | 2709 | @defopt recenter-redisplay |
| 2720 | @group | 2710 | If this variable is non-@code{nil}, calling @code{recenter} with a |
| 2721 | (defun line-to-top-of-window () | 2711 | @code{nil} argument redraws the frame. The default value is |
| 2722 | "Scroll current line to top of window. | 2712 | @code{tty}, which means only redraw the frame if it is a tty frame. |
| 2723 | Replaces three keystroke sequence C-u 0 C-l." | 2713 | @end defopt |
| 2724 | (interactive) | ||
| 2725 | (recenter 0)) | ||
| 2726 | 2714 | ||
| 2727 | (global-set-key [kp-multiply] 'line-to-top-of-window) | 2715 | @deffn Command recenter-top-bottom &optional count |
| 2728 | @end group | 2716 | This command, which is the default binding for @kbd{C-l}, acts like |
| 2729 | @end example | 2717 | @code{recenter}, except if called with no argument. In that case, |
| 2718 | successive calls place point according to the cycling order defined | ||
| 2719 | by the variable @code{recenter-positions}. | ||
| 2730 | @end deffn | 2720 | @end deffn |
| 2731 | 2721 | ||
| 2722 | @defopt recenter-positions | ||
| 2723 | This variable controls how @code{recenter-top-bottom} behaves when | ||
| 2724 | called with no argument. The default value is @code{(middle top | ||
| 2725 | bottom)}, which means that successive calls of | ||
| 2726 | @code{recenter-top-bottom} with no argument cycle between placing | ||
| 2727 | point at the middle, top, and bottom of the window. | ||
| 2728 | @end defopt | ||
| 2729 | |||
| 2730 | |||
| 2732 | @node Vertical Scrolling | 2731 | @node Vertical Scrolling |
| 2733 | @section Vertical Fractional Scrolling | 2732 | @section Vertical Fractional Scrolling |
| 2734 | @cindex vertical fractional scrolling | 2733 | @cindex vertical fractional scrolling |
| @@ -2817,8 +2816,8 @@ times the normal character width. How many characters actually | |||
| 2817 | disappear off to the left depends on their width, and could vary from | 2816 | disappear off to the left depends on their width, and could vary from |
| 2818 | line to line. | 2817 | line to line. |
| 2819 | 2818 | ||
| 2820 | Because we read from side to side in the ``inner loop,'' and from top | 2819 | Because we read from side to side in the ``inner loop'', and from top |
| 2821 | to bottom in the ``outer loop,'' the effect of horizontal scrolling is | 2820 | to bottom in the ``outer loop'', the effect of horizontal scrolling is |
| 2822 | not like that of textual or vertical scrolling. Textual scrolling | 2821 | not like that of textual or vertical scrolling. Textual scrolling |
| 2823 | involves selection of a portion of text to display, and vertical | 2822 | involves selection of a portion of text to display, and vertical |
| 2824 | scrolling moves the window contents contiguously; but horizontal | 2823 | scrolling moves the window contents contiguously; but horizontal |
| @@ -3014,7 +3013,7 @@ frame. | |||
| 3014 | 3013 | ||
| 3015 | @defun coordinates-in-window-p coordinates window | 3014 | @defun coordinates-in-window-p coordinates window |
| 3016 | This function checks whether a window @var{window} occupies the | 3015 | This function checks whether a window @var{window} occupies the |
| 3017 | frame-relative coordinates @var{coordinates}, and if so which part of | 3016 | frame-relative coordinates @var{coordinates}, and if so, which part of |
| 3018 | the window that is. @var{window} should be a live window. | 3017 | the window that is. @var{window} should be a live window. |
| 3019 | @var{coordinates} should be a cons cell of the form @code{(@var{x} | 3018 | @var{coordinates} should be a cons cell of the form @code{(@var{x} |
| 3020 | . @var{y})}, where @var{x} and @var{y} are frame-relative coordinates. | 3019 | . @var{y})}, where @var{x} and @var{y} are frame-relative coordinates. |
| @@ -3112,14 +3111,14 @@ for the current buffer. | |||
| 3112 | You can bring back an entire frame layout by restoring a previously | 3111 | You can bring back an entire frame layout by restoring a previously |
| 3113 | saved window configuration. If you want to record the layout of all | 3112 | saved window configuration. If you want to record the layout of all |
| 3114 | frames instead of just one, use a frame configuration instead of a | 3113 | frames instead of just one, use a frame configuration instead of a |
| 3115 | window configuration; see @ref{Frame Configurations}. | 3114 | window configuration. @xref{Frame Configurations}. |
| 3116 | 3115 | ||
| 3117 | @defun current-window-configuration &optional frame | 3116 | @defun current-window-configuration &optional frame |
| 3118 | This function returns a new object representing @var{frame}'s current | 3117 | This function returns a new object representing @var{frame}'s current |
| 3119 | window configuration. The default for @var{frame} is the selected | 3118 | window configuration. The default for @var{frame} is the selected |
| 3120 | frame. The variable @code{window-persistent-parameters} specifies | 3119 | frame. The variable @code{window-persistent-parameters} specifies |
| 3121 | whether and which window parameters are saved by this function, see | 3120 | which window parameters (if any) are saved by this function. |
| 3122 | @ref{Window Parameters} for details. | 3121 | @xref{Window Parameters}. |
| 3123 | @end defun | 3122 | @end defun |
| 3124 | 3123 | ||
| 3125 | @defun set-window-configuration configuration | 3124 | @defun set-window-configuration configuration |
| @@ -3136,9 +3135,9 @@ change and triggers execution of the @code{window-size-change-functions} | |||
| 3136 | know how to tell whether the new configuration actually differs from the | 3135 | know how to tell whether the new configuration actually differs from the |
| 3137 | old one. | 3136 | old one. |
| 3138 | 3137 | ||
| 3139 | If the frame which @var{configuration} was saved from is dead, all this | 3138 | If the frame from which @var{configuration} was saved is dead, all this |
| 3140 | function does is restore the three variables @code{window-min-height}, | 3139 | function does is restore the three variables @code{window-min-height}, |
| 3141 | @code{window-min-width} and @code{minibuffer-scroll-window}. In this | 3140 | @code{window-min-width} and @code{minibuffer-scroll-window}. In this |
| 3142 | case, the function returns @code{nil}. Otherwise, it returns @code{t}. | 3141 | case, the function returns @code{nil}. Otherwise, it returns @code{t}. |
| 3143 | 3142 | ||
| 3144 | Here is a way of using this function to get the same effect | 3143 | Here is a way of using this function to get the same effect |
| @@ -3221,8 +3220,8 @@ configurations. | |||
| 3221 | 3220 | ||
| 3222 | The objects returned by @code{current-window-configuration} die | 3221 | The objects returned by @code{current-window-configuration} die |
| 3223 | together with the Emacs process. In order to store a window | 3222 | together with the Emacs process. In order to store a window |
| 3224 | configuration on disk and read it back in another Emacs session, the | 3223 | configuration on disk and read it back in another Emacs session, you |
| 3225 | functions described next can be used. These functions are also useful | 3224 | can use the functions described next. These functions are also useful |
| 3226 | to clone the state of a frame into an arbitrary live window | 3225 | to clone the state of a frame into an arbitrary live window |
| 3227 | (@code{set-window-configuration} effectively clones the windows of a | 3226 | (@code{set-window-configuration} effectively clones the windows of a |
| 3228 | frame into the root window of that very frame only). | 3227 | frame into the root window of that very frame only). |
| @@ -3235,17 +3234,17 @@ of the selected frame. | |||
| 3235 | If the optional argument @var{writable} is non-@code{nil}, this means to | 3234 | If the optional argument @var{writable} is non-@code{nil}, this means to |
| 3236 | not use markers for sampling positions like @code{window-point} or | 3235 | not use markers for sampling positions like @code{window-point} or |
| 3237 | @code{window-start}. This argument should be non-@code{nil} when the | 3236 | @code{window-start}. This argument should be non-@code{nil} when the |
| 3238 | state shall be written to disk and read back in another session. | 3237 | state will be written to disk and read back in another session. |
| 3239 | 3238 | ||
| 3240 | Together, the argument @var{writable} and the variable | 3239 | Together, the argument @var{writable} and the variable |
| 3241 | @code{window-persistent-parameters} specify which window parameters are | 3240 | @code{window-persistent-parameters} specify which window parameters are |
| 3242 | saved by this function, see @ref{Window Parameters} for details. | 3241 | saved by this function. @xref{Window Parameters}. |
| 3243 | @end defun | 3242 | @end defun |
| 3244 | 3243 | ||
| 3245 | The value returned by @code{window-state-get} can be used in the same | 3244 | The value returned by @code{window-state-get} can be used in the same |
| 3246 | session to make a clone of a window in another window. It can be also | 3245 | session to make a clone of a window in another window. It can be also |
| 3247 | written to disk and read back in another session. In either case, use | 3246 | written to disk and read back in another session. In either case, use |
| 3248 | the function described next to restore the state of the window. | 3247 | the following function to restore the state of the window. |
| 3249 | 3248 | ||
| 3250 | @defun window-state-put state &optional window ignore | 3249 | @defun window-state-put state &optional window ignore |
| 3251 | This function puts the window state @var{state} into @var{window}. The | 3250 | This function puts the window state @var{state} into @var{window}. The |
| @@ -3254,9 +3253,9 @@ earlier invocation of @code{window-state-get}, see above. The optional | |||
| 3254 | argument @var{window} must specify a live window and defaults to the | 3253 | argument @var{window} must specify a live window and defaults to the |
| 3255 | selected one. | 3254 | selected one. |
| 3256 | 3255 | ||
| 3257 | The optional argument @var{ignore} non-@code{nil} means to ignore | 3256 | If the optional argument @var{ignore} is non-@code{nil}, it means to ignore |
| 3258 | minimum window sizes and fixed size restrictions. If @var{ignore} | 3257 | minimum window sizes and fixed-size restrictions. If @var{ignore} |
| 3259 | equals @code{safe}, this means windows can get as small as one line | 3258 | is @code{safe}, this means windows can get as small as one line |
| 3260 | and/or two columns. | 3259 | and/or two columns. |
| 3261 | @end defun | 3260 | @end defun |
| 3262 | 3261 | ||
| @@ -3276,8 +3275,8 @@ setting for @var{parameter}, this function returns @code{nil}. | |||
| 3276 | 3275 | ||
| 3277 | @defun window-parameters &optional window | 3276 | @defun window-parameters &optional window |
| 3278 | This function returns all parameters of @var{window} and their values. | 3277 | This function returns all parameters of @var{window} and their values. |
| 3279 | The default for @var{window} is the selected window. The return value, | 3278 | The default for @var{window} is the selected window. The return value |
| 3280 | if non-@code{nil} is an association list whose elements have the form | 3279 | is either @code{nil}, or an association list whose elements have the form |
| 3281 | @code{(@var{parameter} . @var{value})}. | 3280 | @code{(@var{parameter} . @var{value})}. |
| 3282 | @end defun | 3281 | @end defun |
| 3283 | 3282 | ||
| @@ -3287,34 +3286,34 @@ This function sets @var{window}'s value of @var{parameter} to | |||
| 3287 | is the selected window. | 3286 | is the selected window. |
| 3288 | @end defun | 3287 | @end defun |
| 3289 | 3288 | ||
| 3290 | By default, functions saving and restoring window configurations or the | 3289 | By default, the functions that save and restore window configurations or the |
| 3291 | states of windows (@pxref{Window Configurations}) do not care about | 3290 | states of windows (@pxref{Window Configurations}) do not care about |
| 3292 | window parameters. This means, that when you change the value of a | 3291 | window parameters. This means that when you change the value of a |
| 3293 | parameter within the body of a @code{save-window-excursion}, the | 3292 | parameter within the body of a @code{save-window-excursion}, the |
| 3294 | previous value is not restored upon exit of that macro. It also means | 3293 | previous value is not restored when that macro exits. It also means |
| 3295 | that when you restore via @code{window-state-put} a window state saved | 3294 | that when you restore via @code{window-state-put} a window state saved |
| 3296 | earlier by @code{window-state-get}, all cloned windows have their | 3295 | earlier by @code{window-state-get}, all cloned windows have their |
| 3297 | parameters reset to @code{nil}. The following variable allows to | 3296 | parameters reset to @code{nil}. The following variable allows you to |
| 3298 | override the standard behavior. | 3297 | override the standard behavior: |
| 3299 | 3298 | ||
| 3300 | @defvar window-persistent-parameters | 3299 | @defvar window-persistent-parameters |
| 3301 | This variable is an alist specifying which parameters get saved by | 3300 | This variable is an alist specifying which parameters get saved by |
| 3302 | @code{current-window-configuration} and @code{window-state-get} and | 3301 | @code{current-window-configuration} and @code{window-state-get}, and |
| 3303 | subsequently restored by @code{set-window-configuration} and | 3302 | subsequently restored by @code{set-window-configuration} and |
| 3304 | @code{window-state-put}, see @ref{Window Configurations}. | 3303 | @code{window-state-put}. @xref{Window Configurations}. |
| 3305 | 3304 | ||
| 3306 | The @sc{car} of each entry of this alist is the symbol specifying the | 3305 | The @sc{car} of each entry of this alist is a symbol specifying the |
| 3307 | parameter. The @sc{cdr} should be one of the following: | 3306 | parameter. The @sc{cdr} should be one of the following: |
| 3308 | 3307 | ||
| 3309 | @table @asis | 3308 | @table @asis |
| 3310 | @item @code{nil} | 3309 | @item @code{nil} |
| 3311 | This value means the parameter is neither saved by | 3310 | This value means the parameter is saved neither by |
| 3312 | @code{window-state-get} nor by @code{current-window-configuration}. | 3311 | @code{window-state-get} nor by @code{current-window-configuration}. |
| 3313 | 3312 | ||
| 3314 | @item @code{t} | 3313 | @item @code{t} |
| 3315 | This value specifies that the parameter is saved by | 3314 | This value specifies that the parameter is saved by |
| 3316 | @code{current-window-configuration} and, provided its @var{writable} | 3315 | @code{current-window-configuration} and (provided its @var{writable} |
| 3317 | argument is @code{nil}, by @code{window-state-get}. | 3316 | argument is @code{nil}) by @code{window-state-get}. |
| 3318 | 3317 | ||
| 3319 | @item @code{writable} | 3318 | @item @code{writable} |
| 3320 | This means that the parameter is saved unconditionally by both | 3319 | This means that the parameter is saved unconditionally by both |
| @@ -3325,8 +3324,8 @@ may fail with an @code{invalid-read-syntax} error. | |||
| 3325 | @end table | 3324 | @end table |
| 3326 | @end defvar | 3325 | @end defvar |
| 3327 | 3326 | ||
| 3328 | Some functions, notably @code{delete-window}, | 3327 | Some functions (notably @code{delete-window}, |
| 3329 | @code{delete-other-windows} and @code{split-window} may behave specially | 3328 | @code{delete-other-windows} and @code{split-window}), may behave specially |
| 3330 | when their @var{window} argument has a parameter set. You can override | 3329 | when their @var{window} argument has a parameter set. You can override |
| 3331 | such special behavior by binding the following variable to a | 3330 | such special behavior by binding the following variable to a |
| 3332 | non-@code{nil} value: | 3331 | non-@code{nil} value: |
| @@ -3334,7 +3333,7 @@ non-@code{nil} value: | |||
| 3334 | @defvar ignore-window-parameters | 3333 | @defvar ignore-window-parameters |
| 3335 | If this variable is non-@code{nil}, some standard functions do not | 3334 | If this variable is non-@code{nil}, some standard functions do not |
| 3336 | process window parameters. The functions currently affected by this are | 3335 | process window parameters. The functions currently affected by this are |
| 3337 | @code{split-window}, @code{delete-window}, @code{delete-other-windows} | 3336 | @code{split-window}, @code{delete-window}, @code{delete-other-windows}, |
| 3338 | and @code{other-window}. | 3337 | and @code{other-window}. |
| 3339 | 3338 | ||
| 3340 | An application can bind this variable to a non-@code{nil} value around | 3339 | An application can bind this variable to a non-@code{nil} value around |
| @@ -3368,18 +3367,19 @@ This parameter marks the window as not selectable by @code{other-window} | |||
| 3368 | (@pxref{Cyclic Window Ordering}). | 3367 | (@pxref{Cyclic Window Ordering}). |
| 3369 | 3368 | ||
| 3370 | @item @code{clone-of} | 3369 | @item @code{clone-of} |
| 3371 | This parameter specifies the window this one has been cloned from and is | 3370 | This parameter specifies the window that this one has been cloned |
| 3372 | installed by @code{window-state-get}, see @ref{Window Configurations}. | 3371 | from. It is installed by @code{window-state-get} (@pxref{Window |
| 3372 | Configurations}). | ||
| 3373 | 3373 | ||
| 3374 | @item @code{quit-restore} | 3374 | @item @code{quit-restore} |
| 3375 | This parameter tells how to proceed with a window when the buffer it | 3375 | This parameter specifies what to do with a window when the buffer it |
| 3376 | shows is no more needed. It is installed by the buffer display | 3376 | shows is not needed any more. It is installed by the buffer display |
| 3377 | functions (@pxref{Choosing Window}) and consulted by the function | 3377 | functions (@pxref{Choosing Window}), and consulted by the function |
| 3378 | @code{quit-window} (@pxref{Quitting Windows}). | 3378 | @code{quit-window} (@pxref{Quitting Windows}). |
| 3379 | @end table | 3379 | @end table |
| 3380 | 3380 | ||
| 3381 | In addition, the parameters @code{window-atom} and @code{window-side} | 3381 | There are additional parameters @code{window-atom} and @code{window-side}; |
| 3382 | are reserved and should not be used by applications. | 3382 | these are reserved and should not be used by applications. |
| 3383 | 3383 | ||
| 3384 | 3384 | ||
| 3385 | @node Window Hooks | 3385 | @node Window Hooks |
| @@ -3401,7 +3401,7 @@ the window also runs these functions. | |||
| 3401 | This variable is not a normal hook, because each function is called with | 3401 | This variable is not a normal hook, because each function is called with |
| 3402 | two arguments: the window, and its new display-start position. | 3402 | two arguments: the window, and its new display-start position. |
| 3403 | 3403 | ||
| 3404 | These functions must be careful in using @code{window-end} | 3404 | These functions must take care when using @code{window-end} |
| 3405 | (@pxref{Window Start and End}); if you need an up-to-date value, you | 3405 | (@pxref{Window Start and End}); if you need an up-to-date value, you |
| 3406 | must use the @var{update} argument to ensure you get it. | 3406 | must use the @var{update} argument to ensure you get it. |
| 3407 | 3407 | ||
| @@ -3439,7 +3439,7 @@ of an existing frame. This includes splitting or deleting windows, | |||
| 3439 | changing the sizes of windows, or displaying a different buffer in a | 3439 | changing the sizes of windows, or displaying a different buffer in a |
| 3440 | window. | 3440 | window. |
| 3441 | 3441 | ||
| 3442 | The buffer-local part of this hook is run once per each window on the | 3442 | The buffer-local part of this hook is run once for each window on the |
| 3443 | affected frame, with the relevant window selected and its buffer | 3443 | affected frame, with the relevant window selected and its buffer |
| 3444 | current. The global part is run once for the modified frame, with that | 3444 | current. The global part is run once for the modified frame, with that |
| 3445 | frame selected. | 3445 | frame selected. |
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index 834a8f2c47f..3d0900db9e4 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog | |||
| @@ -1,3 +1,13 @@ | |||
| 1 | 2012-04-27 Ippei Furuhashi <top.tuna+orgmode@gmail.com> (tiny change) | ||
| 2 | |||
| 3 | * org.texi (Agenda commands): Fix two typos: give corresponding | ||
| 4 | function names, according to `org-agenda-view-mode-dispatch'. | ||
| 5 | |||
| 6 | 2012-04-27 Glenn Morris <rgm@gnu.org> | ||
| 7 | |||
| 8 | * faq.texi (Major packages and programs): Remove section. | ||
| 9 | There is no point listing 6 packages (cf etc/MORE.STUFF). | ||
| 10 | (Finding Emacs and related packages): Move "Spell-checkers" here. | ||
| 1 | 2012-04-22 Michael Albinus <michael.albinus@gmx.de> | 11 | 2012-04-22 Michael Albinus <michael.albinus@gmx.de> |
| 2 | 12 | ||
| 3 | * dbus.texi (Version): New node. | 13 | * dbus.texi (Version): New node. |
diff --git a/doc/misc/faq.texi b/doc/misc/faq.texi index 0f20c41c8eb..34005bcb9a0 100644 --- a/doc/misc/faq.texi +++ b/doc/misc/faq.texi | |||
| @@ -91,7 +91,6 @@ Emacs, the Emacs manual is often the best starting point. | |||
| 91 | * Bugs and problems:: | 91 | * Bugs and problems:: |
| 92 | * Compiling and installing Emacs:: | 92 | * Compiling and installing Emacs:: |
| 93 | * Finding Emacs and related packages:: | 93 | * Finding Emacs and related packages:: |
| 94 | * Major packages and programs:: | ||
| 95 | * Key bindings:: | 94 | * Key bindings:: |
| 96 | * Alternate character sets:: | 95 | * Alternate character sets:: |
| 97 | * Mail and news:: | 96 | * Mail and news:: |
| @@ -1050,7 +1049,7 @@ A new command @kbd{customize-themes} allows you to easily change the | |||
| 1050 | appearance of your Emacs. | 1049 | appearance of your Emacs. |
| 1051 | 1050 | ||
| 1052 | @item | 1051 | @item |
| 1053 | Emacs can be compiled with the Gtk+ 3 toolkit. | 1052 | Emacs can be compiled with the GTK+ 3 toolkit. |
| 1054 | 1053 | ||
| 1055 | @item | 1054 | @item |
| 1056 | Support for several new external libraries can be included at compile | 1055 | Support for several new external libraries can be included at compile |
| @@ -3242,6 +3241,7 @@ problem (@pxref{Reporting bugs}). | |||
| 3242 | * Finding Emacs on the Internet:: | 3241 | * Finding Emacs on the Internet:: |
| 3243 | * Finding a package with particular functionality:: | 3242 | * Finding a package with particular functionality:: |
| 3244 | * Packages that do not come with Emacs:: | 3243 | * Packages that do not come with Emacs:: |
| 3244 | * Spell-checkers:: | ||
| 3245 | * Current GNU distributions:: | 3245 | * Current GNU distributions:: |
| 3246 | * Difference between Emacs and XEmacs:: | 3246 | * Difference between Emacs and XEmacs:: |
| 3247 | * Emacs for minimalists:: | 3247 | * Emacs for minimalists:: |
| @@ -3323,6 +3323,29 @@ Several packages are stored in | |||
| 3323 | Read the file @file{etc/MORE.STUFF} for more information about | 3323 | Read the file @file{etc/MORE.STUFF} for more information about |
| 3324 | external packages. | 3324 | external packages. |
| 3325 | 3325 | ||
| 3326 | @node Spell-checkers | ||
| 3327 | @section Spell-checkers | ||
| 3328 | @cindex Spell-checker | ||
| 3329 | @cindex Checking spelling | ||
| 3330 | @cindex Ispell | ||
| 3331 | @cindex Aspell | ||
| 3332 | @cindex Hunspell | ||
| 3333 | |||
| 3334 | Various spell-checkers are compatible with Emacs, including: | ||
| 3335 | |||
| 3336 | @table @b | ||
| 3337 | |||
| 3338 | @item GNU Aspell | ||
| 3339 | @uref{http://aspell.net/} | ||
| 3340 | |||
| 3341 | @item Ispell | ||
| 3342 | @uref{http://fmg-www.cs.ucla.edu/geoff/ispell.html} | ||
| 3343 | |||
| 3344 | @item Hunspell | ||
| 3345 | @uref{http://hunspell.sourceforge.net/} | ||
| 3346 | |||
| 3347 | @end table | ||
| 3348 | |||
| 3326 | @node Current GNU distributions | 3349 | @node Current GNU distributions |
| 3327 | @section Where can I get other up-to-date GNU stuff? | 3350 | @section Where can I get other up-to-date GNU stuff? |
| 3328 | @cindex Current GNU distributions | 3351 | @cindex Current GNU distributions |
| @@ -3443,124 +3466,6 @@ Beginning with version 22.1, Emacs supports Mac OS X natively. | |||
| 3443 | See the file @file{nextstep/INSTALL} in the distribution. | 3466 | See the file @file{nextstep/INSTALL} in the distribution. |
| 3444 | 3467 | ||
| 3445 | @c ------------------------------------------------------------ | 3468 | @c ------------------------------------------------------------ |
| 3446 | @node Major packages and programs | ||
| 3447 | @chapter Major packages and programs | ||
| 3448 | @cindex Major packages and programs | ||
| 3449 | |||
| 3450 | @menu | ||
| 3451 | * VM:: | ||
| 3452 | * AUCTeX:: | ||
| 3453 | * BBDB:: | ||
| 3454 | * Spell-checkers:: | ||
| 3455 | * Emacs/W3:: | ||
| 3456 | * EDB:: | ||
| 3457 | * JDEE:: | ||
| 3458 | @end menu | ||
| 3459 | |||
| 3460 | @node VM | ||
| 3461 | @section VM (View Mail) --- another mail reader within Emacs, with MIME support | ||
| 3462 | @cindex VM | ||
| 3463 | @cindex Alternative mail software | ||
| 3464 | @cindex View Mail | ||
| 3465 | @cindex E-mail reader, VM | ||
| 3466 | |||
| 3467 | @table @b | ||
| 3468 | |||
| 3469 | @item Web site | ||
| 3470 | @uref{http://launchpad.net/vm} | ||
| 3471 | (was @uref{http://www.nongnu.org/viewmail/}) | ||
| 3472 | |||
| 3473 | @item Informational newsgroup | ||
| 3474 | @uref{news:gnu.emacs.vm.info}@* | ||
| 3475 | |||
| 3476 | @item Bug reports newsgroup | ||
| 3477 | @uref{news:gnu.emacs.vm.bug}@* | ||
| 3478 | @end table | ||
| 3479 | |||
| 3480 | VM was originally written by @uref{http://www.wonderworks.com/vm/,Kyle Jones}. | ||
| 3481 | @uref{ftp://ftp.wonderworks.com/pub/vm/,Older versions} of VM remain | ||
| 3482 | available. | ||
| 3483 | |||
| 3484 | |||
| 3485 | @node AUCTeX | ||
| 3486 | @section AUC@TeX{} --- enhanced @TeX{} modes with debugging facilities | ||
| 3487 | @cindex Mode for @TeX{} | ||
| 3488 | @cindex @TeX{} mode | ||
| 3489 | @cindex AUC@TeX{} mode for editing @TeX{} | ||
| 3490 | @cindex Writing and debugging @TeX{} | ||
| 3491 | |||
| 3492 | AUC@TeX{} is a set of sophisticated major modes for @TeX{}, LaTeX, | ||
| 3493 | ConTeXt, and Texinfo offering context-sensitive syntax highlighting, | ||
| 3494 | indentation, formatting and folding, macro completion, @TeX{} shell | ||
| 3495 | functionality, and debugging. Be also sure to check out | ||
| 3496 | @ref{Introduction, RefTeX, Introduction, reftex, Ref@TeX{} User Manual}. | ||
| 3497 | Current versions of AUC@TeX{} include the | ||
| 3498 | @uref{http://www.gnu.org/software/auctex/preview-latex.html,preview-latex} | ||
| 3499 | package for WYSIWYG previews of various LaTeX constructs in the Emacs | ||
| 3500 | source buffer. | ||
| 3501 | |||
| 3502 | @uref{http://www.gnu.org/software/auctex/, AUCTeX} | ||
| 3503 | |||
| 3504 | @node BBDB | ||
| 3505 | @section BBDB --- personal Info Rolodex integrated with mail/news readers | ||
| 3506 | @cindex BBDB | ||
| 3507 | @cindex Rolodex-like functionality | ||
| 3508 | @cindex Integrated contact database | ||
| 3509 | @cindex Contact database | ||
| 3510 | @cindex Big Brother Database | ||
| 3511 | @cindex Address book | ||
| 3512 | |||
| 3513 | @uref{http://bbdb.sourceforge.net/, The Insidious Big Brother Database} | ||
| 3514 | |||
| 3515 | @node Spell-checkers | ||
| 3516 | @section Spell-checkers | ||
| 3517 | @cindex Spell-checker | ||
| 3518 | @cindex Checking spelling | ||
| 3519 | @cindex Ispell | ||
| 3520 | @cindex Aspell | ||
| 3521 | @cindex Hunspell | ||
| 3522 | |||
| 3523 | Various spell-checkers are compatible with Emacs, including: | ||
| 3524 | |||
| 3525 | @table @b | ||
| 3526 | |||
| 3527 | @item GNU Aspell | ||
| 3528 | @uref{http://aspell.net/} | ||
| 3529 | |||
| 3530 | @item Ispell | ||
| 3531 | @uref{http://fmg-www.cs.ucla.edu/geoff/ispell.html} | ||
| 3532 | |||
| 3533 | @item Hunspell | ||
| 3534 | @uref{http://hunspell.sourceforge.net/} | ||
| 3535 | |||
| 3536 | @end table | ||
| 3537 | |||
| 3538 | @node Emacs/W3 | ||
| 3539 | @section Emacs/W3 --- A World Wide Web browser inside of Emacs | ||
| 3540 | @cindex WWW browser | ||
| 3541 | @cindex Web browser | ||
| 3542 | @cindex HTML browser in Emacs | ||
| 3543 | @cindex @code{w3-mode} | ||
| 3544 | |||
| 3545 | @uref{http://www.gnu.org/software/w3/, Emacs/W3} | ||
| 3546 | |||
| 3547 | @node EDB | ||
| 3548 | @section EDB --- Database program for Emacs; replaces forms editing modes | ||
| 3549 | @cindex EDB | ||
| 3550 | @cindex Database | ||
| 3551 | @cindex Forms mode | ||
| 3552 | |||
| 3553 | @uref{http://gnuvola.org/software/edb/, The Emacs Database} | ||
| 3554 | |||
| 3555 | @node JDEE | ||
| 3556 | @section JDEE --- Integrated development environment for Java | ||
| 3557 | @cindex Java development environment | ||
| 3558 | @cindex Integrated Java development environment | ||
| 3559 | @cindex JDEE | ||
| 3560 | |||
| 3561 | @uref{http://jdee.sourceforge.net/, A Java Development Environment for Emacs} | ||
| 3562 | |||
| 3563 | @c ------------------------------------------------------------ | ||
| 3564 | @node Key bindings | 3469 | @node Key bindings |
| 3565 | @chapter Key bindings | 3470 | @chapter Key bindings |
| 3566 | @cindex Key bindings | 3471 | @cindex Key bindings |