diff options
| author | Tom Tromey | 2018-08-09 17:56:53 -0600 |
|---|---|---|
| committer | Tom Tromey | 2018-08-09 17:56:53 -0600 |
| commit | accb7b7ecc19f85c2750ded1046a464bc73c6a52 (patch) | |
| tree | 1aa94af022d6700a93a8ff2b73f5b210046ac010 /doc | |
| parent | f822a2516d88eeb2118fbbc8554f155e86dfd74e (diff) | |
| parent | 53483df0de0085dbc9ef0b15a0f629ab808b0147 (diff) | |
| download | emacs-accb7b7ecc19f85c2750ded1046a464bc73c6a52.tar.gz emacs-accb7b7ecc19f85c2750ded1046a464bc73c6a52.zip | |
Merge remote-tracking branch 'origin/master' into feature/bignum
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/emacs/dired.texi | 5 | ||||
| -rw-r--r-- | doc/emacs/files.texi | 2 | ||||
| -rw-r--r-- | doc/emacs/fixit.texi | 14 | ||||
| -rw-r--r-- | doc/emacs/indent.texi | 21 | ||||
| -rw-r--r-- | doc/emacs/maintaining.texi | 16 | ||||
| -rw-r--r-- | doc/emacs/misc.texi | 4 | ||||
| -rw-r--r-- | doc/emacs/mule.texi | 19 | ||||
| -rw-r--r-- | doc/emacs/regs.texi | 4 | ||||
| -rw-r--r-- | doc/lispref/debugging.texi | 115 | ||||
| -rw-r--r-- | doc/lispref/edebug.texi | 12 | ||||
| -rw-r--r-- | doc/lispref/eval.texi | 3 | ||||
| -rw-r--r-- | doc/lispref/files.texi | 8 | ||||
| -rw-r--r-- | doc/lispref/frames.texi | 10 | ||||
| -rw-r--r-- | doc/lispref/lists.texi | 23 | ||||
| -rw-r--r-- | doc/lispref/minibuf.texi | 2 | ||||
| -rw-r--r-- | doc/lispref/numbers.texi | 36 | ||||
| -rw-r--r-- | doc/lispref/sequences.texi | 8 | ||||
| -rw-r--r-- | doc/lispref/strings.texi | 27 | ||||
| -rw-r--r-- | doc/lispref/threads.texi | 23 | ||||
| -rw-r--r-- | doc/misc/efaq.texi | 4 | ||||
| -rw-r--r-- | doc/misc/ert.texi | 8 | ||||
| -rw-r--r-- | doc/misc/flymake.texi | 2 | ||||
| -rw-r--r-- | doc/misc/tramp.texi | 76 |
23 files changed, 302 insertions, 140 deletions
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi index 007a943714a..1b03a3967aa 100644 --- a/doc/emacs/dired.texi +++ b/doc/emacs/dired.texi | |||
| @@ -1468,6 +1468,11 @@ rotation is lossless, and uses an external utility called | |||
| 1468 | directory's name, and creates that directory. It signals an error if | 1468 | directory's name, and creates that directory. It signals an error if |
| 1469 | the directory already exists. | 1469 | the directory already exists. |
| 1470 | 1470 | ||
| 1471 | @findex dired-create-empty-file | ||
| 1472 | The command (@code{dired-create-empty-file}) reads a | ||
| 1473 | file name, and creates that file. It signals an error if | ||
| 1474 | the file already exists. | ||
| 1475 | |||
| 1471 | @cindex searching multiple files via Dired | 1476 | @cindex searching multiple files via Dired |
| 1472 | @kindex M-s a C-s @r{(Dired)} | 1477 | @kindex M-s a C-s @r{(Dired)} |
| 1473 | @kindex M-s a M-C-s @r{(Dired)} | 1478 | @kindex M-s a M-C-s @r{(Dired)} |
diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi index f0a11fde555..a7cc57e4e94 100644 --- a/doc/emacs/files.texi +++ b/doc/emacs/files.texi | |||
| @@ -881,6 +881,8 @@ You can answer ``no'' to bypass copying of this file, this time. If | |||
| 881 | you want to cancel the shadowing permanently for a certain file, use | 881 | you want to cancel the shadowing permanently for a certain file, use |
| 882 | @w{@kbd{M-x shadow-cancel}} to eliminate or change the shadow file group. | 882 | @w{@kbd{M-x shadow-cancel}} to eliminate or change the shadow file group. |
| 883 | 883 | ||
| 884 | File Shadowing is not available on MS Windows. | ||
| 885 | |||
| 884 | @node Time Stamps | 886 | @node Time Stamps |
| 885 | @subsection Updating Time Stamps Automatically | 887 | @subsection Updating Time Stamps Automatically |
| 886 | @cindex time stamps | 888 | @cindex time stamps |
diff --git a/doc/emacs/fixit.texi b/doc/emacs/fixit.texi index ec26a35d682..8277278f521 100644 --- a/doc/emacs/fixit.texi +++ b/doc/emacs/fixit.texi | |||
| @@ -427,11 +427,15 @@ dictionary. | |||
| 427 | @cindex mode, Flyspell | 427 | @cindex mode, Flyspell |
| 428 | @findex flyspell-mode | 428 | @findex flyspell-mode |
| 429 | Flyspell mode is a minor mode that performs automatic spell-checking | 429 | Flyspell mode is a minor mode that performs automatic spell-checking |
| 430 | as you type. When it finds a word that it does not recognize, it | 430 | of the text you type as you type it. When it finds a word that it |
| 431 | highlights that word. Type @kbd{M-x flyspell-mode} to toggle Flyspell | 431 | does not recognize, it highlights that word. Type @kbd{M-x |
| 432 | mode in the current buffer. To enable Flyspell mode in all text mode | 432 | flyspell-mode} to toggle Flyspell mode in the current buffer. To |
| 433 | buffers, add @code{flyspell-mode} to @code{text-mode-hook}. | 433 | enable Flyspell mode in all text mode buffers, add |
| 434 | @xref{Hooks}. | 434 | @code{flyspell-mode} to @code{text-mode-hook}. @xref{Hooks}. Note |
| 435 | that, as Flyspell mode needs to check each word across which you move, | ||
| 436 | it will slow down cursor motion and scrolling commands. It also | ||
| 437 | doesn't automatically check the text you didn't type or move across; | ||
| 438 | use @code{flyspell-region} or @code{flyspell-buffer} for that. | ||
| 435 | 439 | ||
| 436 | @findex flyspell-correct-word | 440 | @findex flyspell-correct-word |
| 437 | @findex flyspell-auto-correct-word | 441 | @findex flyspell-auto-correct-word |
diff --git a/doc/emacs/indent.texi b/doc/emacs/indent.texi index b38e85819ce..bf43909edf3 100644 --- a/doc/emacs/indent.texi +++ b/doc/emacs/indent.texi | |||
| @@ -60,9 +60,9 @@ repositioned to the first non-whitespace character on the line. | |||
| 60 | @node Indentation Commands | 60 | @node Indentation Commands |
| 61 | @section Indentation Commands | 61 | @section Indentation Commands |
| 62 | 62 | ||
| 63 | Apart from the @key{TAB} (@code{indent-for-tab-command}) command, | 63 | Apart from the @kbd{@key{TAB}} (@code{indent-for-tab-command}) |
| 64 | Emacs provides a variety of commands to perform indentation in other | 64 | command, Emacs provides a variety of commands to perform indentation |
| 65 | ways. | 65 | in other ways. |
| 66 | 66 | ||
| 67 | @table @kbd | 67 | @table @kbd |
| 68 | @item C-M-o | 68 | @item C-M-o |
| @@ -113,8 +113,8 @@ appears after the newline that is deleted. @xref{Fill Prefix}. | |||
| 113 | @item C-M-\ | 113 | @item C-M-\ |
| 114 | @kindex C-M-\ | 114 | @kindex C-M-\ |
| 115 | @findex indent-region | 115 | @findex indent-region |
| 116 | Indent all the lines in the region, as though you had typed @key{TAB} | 116 | Indent all the lines in the region, as though you had typed |
| 117 | at the beginning of each line (@code{indent-region}). | 117 | @kbd{@key{TAB}} at the beginning of each line (@code{indent-region}). |
| 118 | 118 | ||
| 119 | If a numeric argument is supplied, indent every line in the region to | 119 | If a numeric argument is supplied, indent every line in the region to |
| 120 | that column number. | 120 | that column number. |
| @@ -128,11 +128,12 @@ in the region, moving the affected lines as a rigid unit. | |||
| 128 | 128 | ||
| 129 | If called with no argument, the command activates a transient mode for | 129 | If called with no argument, the command activates a transient mode for |
| 130 | adjusting the indentation of the affected lines interactively. While | 130 | adjusting the indentation of the affected lines interactively. While |
| 131 | this transient mode is active, typing @key{LEFT} or @key{RIGHT} | 131 | this transient mode is active, typing @kbd{@key{LEFT}} or |
| 132 | indents leftward and rightward, respectively, by one space. You can | 132 | @kbd{@key{RIGHT}} indents leftward and rightward, respectively, by one |
| 133 | also type @kbd{S-@key{LEFT}} or @kbd{S-@key{RIGHT}} to indent leftward | 133 | space. You can also type @kbd{S-@key{LEFT}} or @kbd{S-@key{RIGHT}} to |
| 134 | or rightward to the next tab stop (@pxref{Tab Stops}). Typing any | 134 | indent leftward or rightward to the next tab stop (@pxref{Tab Stops}). |
| 135 | other key disables the transient mode, and resumes normal editing. | 135 | Typing any other key disables the transient mode, and resumes normal |
| 136 | editing. | ||
| 136 | 137 | ||
| 137 | If called with a prefix argument @var{n}, this command indents the | 138 | If called with a prefix argument @var{n}, this command indents the |
| 138 | lines forward by @var{n} spaces (without enabling the transient mode). | 139 | lines forward by @var{n} spaces (without enabling the transient mode). |
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi index 024fd9728c5..b31cacf998a 100644 --- a/doc/emacs/maintaining.texi +++ b/doc/emacs/maintaining.texi | |||
| @@ -1655,10 +1655,20 @@ not just to the next change log entry. You can also use | |||
| 1655 | log files into a buffer in Change Log Mode, preserving the date | 1655 | log files into a buffer in Change Log Mode, preserving the date |
| 1656 | ordering of entries. | 1656 | ordering of entries. |
| 1657 | 1657 | ||
| 1658 | @vindex add-log-dont-create-changelog-file | ||
| 1658 | Version control systems are another way to keep track of changes in | 1659 | Version control systems are another way to keep track of changes in |
| 1659 | your program and keep a change log. In the VC log buffer, typing | 1660 | your program and keep a change log. Many projects that use a VCS don't |
| 1660 | @kbd{C-c C-a} (@code{log-edit-insert-changelog}) inserts the relevant | 1661 | keep a separate versioned change log file nowadays, so you may wish to |
| 1661 | change log entry, if one exists. @xref{Log Buffer}. | 1662 | avoid having such a file in the repository. If the value of |
| 1663 | @code{add-log-dont-create-changelog-file} is non-@code{nil}, commands | ||
| 1664 | like @kbd{C-x 4 a} (@code{add-change-log-entry-other-window}) will | ||
| 1665 | record changes in a suitably named temporary buffer instead of a file, | ||
| 1666 | if such a file does not already exist. | ||
| 1667 | |||
| 1668 | Whether you have a change log file or use a temporary buffer for | ||
| 1669 | change logs, you can type @kbd{C-c C-a} | ||
| 1670 | (@code{log-edit-insert-changelog}) in the VC Log buffer to insert the | ||
| 1671 | relevant change log entries, if they exist. @xref{Log Buffer}. | ||
| 1662 | 1672 | ||
| 1663 | @node Format of ChangeLog | 1673 | @node Format of ChangeLog |
| 1664 | @subsection Format of ChangeLog | 1674 | @subsection Format of ChangeLog |
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi index 3d3441401dd..236cb07785c 100644 --- a/doc/emacs/misc.texi +++ b/doc/emacs/misc.texi | |||
| @@ -1026,8 +1026,8 @@ Move backward across one shell command, but not beyond the current line | |||
| 1026 | Ask the shell for its working directory, and update the Shell buffer's | 1026 | Ask the shell for its working directory, and update the Shell buffer's |
| 1027 | default directory. @xref{Directory Tracking}. | 1027 | default directory. @xref{Directory Tracking}. |
| 1028 | 1028 | ||
| 1029 | @item M-x send-invisible @key{RET} @var{text} @key{RET} | 1029 | @item M-x comint-send-invisible @key{RET} @var{text} @key{RET} |
| 1030 | @findex send-invisible | 1030 | @findex comint-send-invisible |
| 1031 | Send @var{text} as input to the shell, after reading it without | 1031 | Send @var{text} as input to the shell, after reading it without |
| 1032 | echoing. This is useful when a shell command runs a program that asks | 1032 | echoing. This is useful when a shell command runs a program that asks |
| 1033 | for a password. | 1033 | for a password. |
diff --git a/doc/emacs/mule.texi b/doc/emacs/mule.texi index 401c83dd49a..6c0c5b23989 100644 --- a/doc/emacs/mule.texi +++ b/doc/emacs/mule.texi | |||
| @@ -156,12 +156,19 @@ system encodes the character safely and with a single byte | |||
| 156 | (@pxref{Coding Systems}). If the character's encoding is longer than | 156 | (@pxref{Coding Systems}). If the character's encoding is longer than |
| 157 | one byte, Emacs shows @samp{file ...}. | 157 | one byte, Emacs shows @samp{file ...}. |
| 158 | 158 | ||
| 159 | As a special case, if the character lies in the range 128 (0200 | 159 | @cindex eight-bit character set |
| 160 | octal) through 159 (0237 octal), it stands for a raw byte that | 160 | @cindex raw bytes |
| 161 | does not correspond to any specific displayable character. Such a | 161 | On rare occasions, Emacs encounters @dfn{raw bytes}: single bytes |
| 162 | character lies within the @code{eight-bit-control} character set, | 162 | whose values are in the range 128 (0200 octal) through 255 (0377 |
| 163 | and is displayed as an escaped octal character code. In this case, | 163 | octal), which Emacs cannot interpret as part of a known encoding of |
| 164 | @kbd{C-x =} shows @samp{part of display ...} instead of @samp{file}. | 164 | some non-ASCII character. Such raw bytes are treated as if they |
| 165 | belonged to a special character set @code{eight-bit}; Emacs displays | ||
| 166 | them as escaped octal codes (this can be customized; @pxref{Display | ||
| 167 | Custom}). In this case, @kbd{C-x =} shows @samp{raw-byte} instead of | ||
| 168 | @samp{file}. In addition, @kbd{C-x =} shows the character codes of | ||
| 169 | raw bytes as if they were in the range @code{#x3FFF80..#x3FFFFF}, | ||
| 170 | which is where Emacs maps them to distinguish them from Unicode | ||
| 171 | characters in the range @code{#x0080..#x00FF}. | ||
| 165 | 172 | ||
| 166 | @cindex character set of character at point | 173 | @cindex character set of character at point |
| 167 | @cindex font of character at point | 174 | @cindex font of character at point |
diff --git a/doc/emacs/regs.texi b/doc/emacs/regs.texi index 7d16d539128..98eed064536 100644 --- a/doc/emacs/regs.texi +++ b/doc/emacs/regs.texi | |||
| @@ -80,7 +80,9 @@ information until you store something else in it. | |||
| 80 | @kindex C-x r j | 80 | @kindex C-x r j |
| 81 | @findex jump-to-register | 81 | @findex jump-to-register |
| 82 | The command @kbd{C-x r j @var{r}} switches to the buffer recorded in | 82 | The command @kbd{C-x r j @var{r}} switches to the buffer recorded in |
| 83 | register @var{r}, and moves point to the recorded position. The | 83 | register @var{r}, pushes a mark, and moves point to the recorded |
| 84 | position. (The mark is not pushed if point was already at the | ||
| 85 | recorded position, or in successive calls to the command.) The | ||
| 84 | contents of the register are not changed, so you can jump to the saved | 86 | contents of the register are not changed, so you can jump to the saved |
| 85 | position any number of times. | 87 | position any number of times. |
| 86 | 88 | ||
diff --git a/doc/lispref/debugging.texi b/doc/lispref/debugging.texi index 1b1f87465db..9b3ba6cf7ee 100644 --- a/doc/lispref/debugging.texi +++ b/doc/lispref/debugging.texi | |||
| @@ -81,7 +81,8 @@ debugger recursively. @xref{Recursive Editing}. | |||
| 81 | * Function Debugging:: Entering it when a certain function is called. | 81 | * Function Debugging:: Entering it when a certain function is called. |
| 82 | * Variable Debugging:: Entering it when a variable is modified. | 82 | * Variable Debugging:: Entering it when a variable is modified. |
| 83 | * Explicit Debug:: Entering it at a certain point in the program. | 83 | * Explicit Debug:: Entering it at a certain point in the program. |
| 84 | * Using Debugger:: What the debugger does; what you see while in it. | 84 | * Using Debugger:: What the debugger does. |
| 85 | * Backtraces:: What you see while in the debugger. | ||
| 85 | * Debugger Commands:: Commands used while in the debugger. | 86 | * Debugger Commands:: Commands used while in the debugger. |
| 86 | * Invoking the Debugger:: How to call the function @code{debug}. | 87 | * Invoking the Debugger:: How to call the function @code{debug}. |
| 87 | * Internals of Debugger:: Subroutines of the debugger, and global variables. | 88 | * Internals of Debugger:: Subroutines of the debugger, and global variables. |
| @@ -392,32 +393,82 @@ this is not what you want, you can either set | |||
| 392 | @code{eval-expression-debug-on-error} to @code{nil}, or set | 393 | @code{eval-expression-debug-on-error} to @code{nil}, or set |
| 393 | @code{debug-on-error} to @code{nil} in @code{debugger-mode-hook}. | 394 | @code{debug-on-error} to @code{nil} in @code{debugger-mode-hook}. |
| 394 | 395 | ||
| 396 | The debugger itself must be run byte-compiled, since it makes | ||
| 397 | assumptions about the state of the Lisp interpreter. These | ||
| 398 | assumptions are false if the debugger is running interpreted. | ||
| 399 | |||
| 400 | @node Backtraces | ||
| 401 | @subsection Backtraces | ||
| 402 | @cindex backtrace buffer | ||
| 403 | |||
| 404 | Debugger mode is derived from Backtrace mode, which is also used to | ||
| 405 | show backtraces by Edebug and ERT. (@pxref{Edebug}, and @ref{Top,the | ||
| 406 | ERT manual,, ert, ERT: Emacs Lisp Regression Testing}.) | ||
| 407 | |||
| 408 | @cindex stack frame | ||
| 409 | The backtrace buffer shows you the functions that are executing and | ||
| 410 | their argument values. When a backtrace buffer is created, it shows | ||
| 411 | each stack frame on one, possibly very long, line. (A stack frame is | ||
| 412 | the place where the Lisp interpreter records information about a | ||
| 413 | particular invocation of a function.) The most recently called | ||
| 414 | function will be at the top. | ||
| 415 | |||
| 395 | @cindex current stack frame | 416 | @cindex current stack frame |
| 396 | The backtrace buffer shows you the functions that are executing and | 417 | In a backtrace you can specify a stack frame by moving point to a line |
| 397 | their argument values. It also allows you to specify a stack frame by | 418 | describing that frame. The frame whose line point is on is considered |
| 398 | moving point to the line describing that frame. (A stack frame is the | 419 | the @dfn{current frame}. |
| 399 | place where the Lisp interpreter records information about a particular | 420 | |
| 400 | invocation of a function.) The frame whose line point is on is | 421 | If a function name is underlined, that means Emacs knows where its |
| 401 | considered the @dfn{current frame}. Some of the debugger commands | 422 | source code is located. You can click with the mouse on that name, or |
| 402 | operate on the current frame. If a line starts with a star, that means | 423 | move to it and type @key{RET}, to visit the source code. You can also |
| 403 | that exiting that frame will call the debugger again. This is useful | 424 | type @key{RET} while point is on any name of a function or variable |
| 404 | for examining the return value of a function. | 425 | which is not underlined, to see help information for that symbol in a |
| 405 | 426 | help buffer, if any exists. The @code{xref-find-definitions} command, | |
| 406 | If a function name is underlined, that means the debugger knows | 427 | bound to @key{M-.}, can also be used on any identifier in a backtrace |
| 407 | where its source code is located. You can click with the mouse on | 428 | (@pxref{Looking Up Identifiers,,,emacs, The GNU Emacs Manual}). |
| 408 | that name, or move to it and type @key{RET}, to visit the source code. | 429 | |
| 430 | In backtraces, the tails of long lists and the ends of long strings, | ||
| 431 | vectors or structures, as well as objects which are deeply nested, | ||
| 432 | will be printed as underlined ``...''. You can click with the mouse | ||
| 433 | on a ``...'', or type @key{RET} while point is on it, to show the part | ||
| 434 | of the object that was hidden. To control how much abbreviation is | ||
| 435 | done, customize @code{backtrace-line-length}. | ||
| 436 | |||
| 437 | Here is a list of commands for navigating and viewing backtraces: | ||
| 409 | 438 | ||
| 410 | The debugger itself must be run byte-compiled, since it makes | 439 | @table @kbd |
| 411 | assumptions about how many stack frames are used for the debugger | 440 | @item v |
| 412 | itself. These assumptions are false if the debugger is running | 441 | Toggle the display of local variables of the current stack frame. |
| 413 | interpreted. | 442 | |
| 443 | @item p | ||
| 444 | Move to the beginning of the frame, or to the beginning | ||
| 445 | of the previous frame. | ||
| 446 | |||
| 447 | @item n | ||
| 448 | Move to the beginning of the next frame. | ||
| 449 | |||
| 450 | @item + | ||
| 451 | Add line breaks and indentation to the top-level Lisp form at point to | ||
| 452 | make it more readable. | ||
| 453 | |||
| 454 | @item - | ||
| 455 | Collapse the top-level Lisp form at point back to a single line. | ||
| 456 | |||
| 457 | @item # | ||
| 458 | Toggle @code{print-circle} for the frame at point. | ||
| 459 | |||
| 460 | @item . | ||
| 461 | Expand all the forms abbreviated with ``...'' in the frame at point. | ||
| 462 | |||
| 463 | @end table | ||
| 414 | 464 | ||
| 415 | @node Debugger Commands | 465 | @node Debugger Commands |
| 416 | @subsection Debugger Commands | 466 | @subsection Debugger Commands |
| 417 | @cindex debugger command list | 467 | @cindex debugger command list |
| 418 | 468 | ||
| 419 | The debugger buffer (in Debugger mode) provides special commands in | 469 | The debugger buffer (in Debugger mode) provides special commands in |
| 420 | addition to the usual Emacs commands. The most important use of | 470 | addition to the usual Emacs commands and to the Backtrace mode commands |
| 471 | described in the previous section. The most important use of | ||
| 421 | debugger commands is for stepping through code, so that you can see | 472 | debugger commands is for stepping through code, so that you can see |
| 422 | how control flows. The debugger can step through the control | 473 | how control flows. The debugger can step through the control |
| 423 | structures of an interpreted function, but cannot do so in a | 474 | structures of an interpreted function, but cannot do so in a |
| @@ -427,6 +478,11 @@ the same function. (To do this, visit the source for the function and | |||
| 427 | type @kbd{C-M-x} on its definition.) You cannot use the Lisp debugger | 478 | type @kbd{C-M-x} on its definition.) You cannot use the Lisp debugger |
| 428 | to step through a primitive function. | 479 | to step through a primitive function. |
| 429 | 480 | ||
| 481 | Some of the debugger commands operate on the current frame. If a | ||
| 482 | frame starts with a star, that means that exiting that frame will call the | ||
| 483 | debugger again. This is useful for examining the return value of a | ||
| 484 | function. | ||
| 485 | |||
| 430 | @c FIXME: Add @findex for the following commands? --xfq | 486 | @c FIXME: Add @findex for the following commands? --xfq |
| 431 | Here is a list of Debugger mode commands: | 487 | Here is a list of Debugger mode commands: |
| 432 | 488 | ||
| @@ -502,8 +558,6 @@ Display a list of functions that will invoke the debugger when called. | |||
| 502 | This is a list of functions that are set to break on entry by means of | 558 | This is a list of functions that are set to break on entry by means of |
| 503 | @code{debug-on-entry}. | 559 | @code{debug-on-entry}. |
| 504 | 560 | ||
| 505 | @item v | ||
| 506 | Toggle the display of local variables of the current stack frame. | ||
| 507 | @end table | 561 | @end table |
| 508 | 562 | ||
| 509 | @node Invoking the Debugger | 563 | @node Invoking the Debugger |
| @@ -624,20 +678,19 @@ of @code{debug} (@pxref{Invoking the Debugger}). | |||
| 624 | @cindex run time stack | 678 | @cindex run time stack |
| 625 | @cindex call stack | 679 | @cindex call stack |
| 626 | This function prints a trace of Lisp function calls currently active. | 680 | This function prints a trace of Lisp function calls currently active. |
| 627 | This is the function used by @code{debug} to fill up the | 681 | The trace is identical to the one that @code{debug} would show in the |
| 628 | @file{*Backtrace*} buffer. It is written in C, since it must have access | 682 | @file{*Backtrace*} buffer. The return value is always nil. |
| 629 | to the stack to determine which function calls are active. The return | ||
| 630 | value is always @code{nil}. | ||
| 631 | 683 | ||
| 632 | In the following example, a Lisp expression calls @code{backtrace} | 684 | In the following example, a Lisp expression calls @code{backtrace} |
| 633 | explicitly. This prints the backtrace to the stream | 685 | explicitly. This prints the backtrace to the stream |
| 634 | @code{standard-output}, which, in this case, is the buffer | 686 | @code{standard-output}, which, in this case, is the buffer |
| 635 | @samp{backtrace-output}. | 687 | @samp{backtrace-output}. |
| 636 | 688 | ||
| 637 | Each line of the backtrace represents one function call. The line shows | 689 | Each line of the backtrace represents one function call. The line |
| 638 | the values of the function's arguments if they are all known; if they | 690 | shows the function followed by a list of the values of the function's |
| 639 | are still being computed, the line says so. The arguments of special | 691 | arguments if they are all known; if they are still being computed, the |
| 640 | forms are elided. | 692 | line consists of a list containing the function and its unevaluated |
| 693 | arguments. Long lists or deeply nested structures may be elided. | ||
| 641 | 694 | ||
| 642 | @smallexample | 695 | @smallexample |
| 643 | @group | 696 | @group |
| @@ -654,7 +707,7 @@ forms are elided. | |||
| 654 | @group | 707 | @group |
| 655 | ----------- Buffer: backtrace-output ------------ | 708 | ----------- Buffer: backtrace-output ------------ |
| 656 | backtrace() | 709 | backtrace() |
| 657 | (list ...computing arguments...) | 710 | (list 'testing (backtrace)) |
| 658 | @end group | 711 | @end group |
| 659 | (progn ...) | 712 | (progn ...) |
| 660 | eval((progn (1+ var) (list 'testing (backtrace)))) | 713 | eval((progn (1+ var) (list 'testing (backtrace)))) |
| @@ -685,7 +738,7 @@ example would look as follows: | |||
| 685 | @group | 738 | @group |
| 686 | ----------- Buffer: backtrace-output ------------ | 739 | ----------- Buffer: backtrace-output ------------ |
| 687 | (backtrace) | 740 | (backtrace) |
| 688 | (list ...computing arguments...) | 741 | (list 'testing (backtrace)) |
| 689 | @end group | 742 | @end group |
| 690 | (progn ...) | 743 | (progn ...) |
| 691 | (eval (progn (1+ var) (list 'testing (backtrace)))) | 744 | (eval (progn (1+ var) (list 'testing (backtrace)))) |
diff --git a/doc/lispref/edebug.texi b/doc/lispref/edebug.texi index b9cc1d5afc2..54200b99903 100644 --- a/doc/lispref/edebug.texi +++ b/doc/lispref/edebug.texi | |||
| @@ -442,8 +442,16 @@ Redisplay the most recently known expression result in the echo area | |||
| 442 | Display a backtrace, excluding Edebug's own functions for clarity | 442 | Display a backtrace, excluding Edebug's own functions for clarity |
| 443 | (@code{edebug-backtrace}). | 443 | (@code{edebug-backtrace}). |
| 444 | 444 | ||
| 445 | You cannot use debugger commands in the backtrace buffer in Edebug as | 445 | @xref{Backtraces}, for a description of backtraces |
| 446 | you would in the standard debugger. | 446 | and the commands which work on them. |
| 447 | |||
| 448 | If you would like to see Edebug's functions in the backtrace, | ||
| 449 | use @kbd{M-x edebug-backtrace-show-instrumentation}. To hide them | ||
| 450 | again use @kbd{M-x edebug-backtrace-hide-instrumentation}. | ||
| 451 | |||
| 452 | If a backtrace frame starts with @samp{>} that means that Edebug knows | ||
| 453 | where the source code for the frame is located. Use @kbd{s} to jump | ||
| 454 | to the source code for the current frame. | ||
| 447 | 455 | ||
| 448 | The backtrace buffer is killed automatically when you continue | 456 | The backtrace buffer is killed automatically when you continue |
| 449 | execution. | 457 | execution. |
diff --git a/doc/lispref/eval.texi b/doc/lispref/eval.texi index 4e8b0df7b58..c9401be2535 100644 --- a/doc/lispref/eval.texi +++ b/doc/lispref/eval.texi | |||
| @@ -507,9 +507,6 @@ Emacs Lisp with a reference to where each is described. | |||
| 507 | @item setq-default | 507 | @item setq-default |
| 508 | @pxref{Creating Buffer-Local} | 508 | @pxref{Creating Buffer-Local} |
| 509 | 509 | ||
| 510 | @item track-mouse | ||
| 511 | @pxref{Mouse Tracking} | ||
| 512 | |||
| 513 | @item unwind-protect | 510 | @item unwind-protect |
| 514 | @pxref{Nonlocal Exits} | 511 | @pxref{Nonlocal Exits} |
| 515 | 512 | ||
diff --git a/doc/lispref/files.texi b/doc/lispref/files.texi index 068cf054437..25fabe1ea5b 100644 --- a/doc/lispref/files.texi +++ b/doc/lispref/files.texi | |||
| @@ -3005,10 +3005,16 @@ This command creates a directory named @var{dirname}. If | |||
| 3005 | @var{parents} is non-@code{nil}, as is always the case in an | 3005 | @var{parents} is non-@code{nil}, as is always the case in an |
| 3006 | interactive call, that means to create the parent directories first, | 3006 | interactive call, that means to create the parent directories first, |
| 3007 | if they don't already exist. | 3007 | if they don't already exist. |
| 3008 | |||
| 3009 | @code{mkdir} is an alias for this. | 3008 | @code{mkdir} is an alias for this. |
| 3010 | @end deffn | 3009 | @end deffn |
| 3011 | 3010 | ||
| 3011 | @deffn Command make-empty-file filename &optional parents | ||
| 3012 | This command creates an empty file named @var{filename}. | ||
| 3013 | As @code{make-directory}, this command creates parent directories | ||
| 3014 | if @var{parents} is non-@code{nil}. | ||
| 3015 | If @var{filename} already exists, this command signals an error. | ||
| 3016 | @end deffn | ||
| 3017 | |||
| 3012 | @deffn Command copy-directory dirname newname &optional keep-time parents copy-contents | 3018 | @deffn Command copy-directory dirname newname &optional keep-time parents copy-contents |
| 3013 | This command copies the directory named @var{dirname} to | 3019 | This command copies the directory named @var{dirname} to |
| 3014 | @var{newname}. If @var{newname} is a directory name, | 3020 | @var{newname}. If @var{newname} is a directory name, |
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi index 6678644bec7..ba4b9313731 100644 --- a/doc/lispref/frames.texi +++ b/doc/lispref/frames.texi | |||
| @@ -3373,10 +3373,10 @@ occur. That is useful, because normally you don't want to track the | |||
| 3373 | mouse forever---only until some other event, such as the release of a | 3373 | mouse forever---only until some other event, such as the release of a |
| 3374 | button. | 3374 | button. |
| 3375 | 3375 | ||
| 3376 | @defspec track-mouse body@dots{} | 3376 | @defmac track-mouse body@dots{} |
| 3377 | This special form executes @var{body}, with generation of mouse motion | 3377 | This macro executes @var{body}, with generation of mouse motion events |
| 3378 | events enabled. Typically, @var{body} would use @code{read-event} to | 3378 | enabled. Typically, @var{body} would use @code{read-event} to read |
| 3379 | read the motion events and modify the display accordingly. @xref{Motion | 3379 | the motion events and modify the display accordingly. @xref{Motion |
| 3380 | Events}, for the format of mouse motion events. | 3380 | Events}, for the format of mouse motion events. |
| 3381 | 3381 | ||
| 3382 | The value of @code{track-mouse} is that of the last form in @var{body}. | 3382 | The value of @code{track-mouse} is that of the last form in @var{body}. |
| @@ -3396,7 +3396,7 @@ on (@pxref{Pointer Shape}). Therefore, Lisp programs that need the | |||
| 3396 | mouse pointer to retain its original shape during dragging should bind | 3396 | mouse pointer to retain its original shape during dragging should bind |
| 3397 | @code{track-mouse} to the value @code{dragging} at the beginning of | 3397 | @code{track-mouse} to the value @code{dragging} at the beginning of |
| 3398 | their @var{body}. | 3398 | their @var{body}. |
| 3399 | @end defspec | 3399 | @end defmac |
| 3400 | 3400 | ||
| 3401 | The usual purpose of tracking mouse motion is to indicate on the screen | 3401 | The usual purpose of tracking mouse motion is to indicate on the screen |
| 3402 | the consequences of pushing or releasing a button at the current | 3402 | the consequences of pushing or releasing a button at the current |
diff --git a/doc/lispref/lists.texi b/doc/lispref/lists.texi index 57cefeac962..b7bb3cf6be1 100644 --- a/doc/lispref/lists.texi +++ b/doc/lispref/lists.texi | |||
| @@ -50,16 +50,19 @@ convention; at the level of cons cells, the @sc{car} and @sc{cdr} | |||
| 50 | slots have similar properties). Hence, the @sc{cdr} slot of each cons | 50 | slots have similar properties). Hence, the @sc{cdr} slot of each cons |
| 51 | cell in a list refers to the following cons cell. | 51 | cell in a list refers to the following cons cell. |
| 52 | 52 | ||
| 53 | @cindex proper list | ||
| 53 | @cindex true list | 54 | @cindex true list |
| 54 | Also by convention, the @sc{cdr} of the last cons cell in a list is | 55 | Also by convention, the @sc{cdr} of the last cons cell in a list is |
| 55 | @code{nil}. We call such a @code{nil}-terminated structure a | 56 | @code{nil}. We call such a @code{nil}-terminated structure a |
| 56 | @dfn{true list}. In Emacs Lisp, the symbol @code{nil} is both a | 57 | @dfn{proper list}@footnote{It is sometimes also referred to as a |
| 57 | symbol and a list with no elements. For convenience, the symbol | 58 | @dfn{true list}, but we generally do not use this terminology in this |
| 58 | @code{nil} is considered to have @code{nil} as its @sc{cdr} (and also | 59 | manual.}. In Emacs Lisp, the symbol @code{nil} is both a symbol and a |
| 59 | as its @sc{car}). | 60 | list with no elements. For convenience, the symbol @code{nil} is |
| 60 | 61 | considered to have @code{nil} as its @sc{cdr} (and also as its | |
| 61 | Hence, the @sc{cdr} of a true list is always a true list. The | 62 | @sc{car}). |
| 62 | @sc{cdr} of a nonempty true list is a true list containing all the | 63 | |
| 64 | Hence, the @sc{cdr} of a proper list is always a proper list. The | ||
| 65 | @sc{cdr} of a nonempty proper list is a proper list containing all the | ||
| 63 | elements except the first. | 66 | elements except the first. |
| 64 | 67 | ||
| 65 | @cindex dotted list | 68 | @cindex dotted list |
| @@ -71,10 +74,10 @@ Pair Notation}). There is one other possibility: some cons cell's | |||
| 71 | @sc{cdr} could point to one of the previous cons cells in the list. | 74 | @sc{cdr} could point to one of the previous cons cells in the list. |
| 72 | We call that structure a @dfn{circular list}. | 75 | We call that structure a @dfn{circular list}. |
| 73 | 76 | ||
| 74 | For some purposes, it does not matter whether a list is true, | 77 | For some purposes, it does not matter whether a list is proper, |
| 75 | circular or dotted. If a program doesn't look far enough down the | 78 | circular or dotted. If a program doesn't look far enough down the |
| 76 | list to see the @sc{cdr} of the final cons cell, it won't care. | 79 | list to see the @sc{cdr} of the final cons cell, it won't care. |
| 77 | However, some functions that operate on lists demand true lists and | 80 | However, some functions that operate on lists demand proper lists and |
| 78 | signal errors if given a dotted list. Most functions that try to find | 81 | signal errors if given a dotted list. Most functions that try to find |
| 79 | the end of a list enter infinite loops if given a circular list. | 82 | the end of a list enter infinite loops if given a circular list. |
| 80 | 83 | ||
| @@ -538,7 +541,7 @@ object. The final argument is not copied or converted; it becomes the | |||
| 538 | is itself a list, then its elements become in effect elements of the | 541 | is itself a list, then its elements become in effect elements of the |
| 539 | result list. If the final element is not a list, the result is a | 542 | result list. If the final element is not a list, the result is a |
| 540 | dotted list since its final @sc{cdr} is not @code{nil} as required | 543 | dotted list since its final @sc{cdr} is not @code{nil} as required |
| 541 | in a true list. | 544 | in a proper list (@pxref{Cons Cells}). |
| 542 | @end defun | 545 | @end defun |
| 543 | 546 | ||
| 544 | Here is an example of using @code{append}: | 547 | Here is an example of using @code{append}: |
diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi index 889b64af8ae..d091787a680 100644 --- a/doc/lispref/minibuf.texi +++ b/doc/lispref/minibuf.texi | |||
| @@ -2199,7 +2199,7 @@ function @code{read-passwd}. | |||
| 2199 | @defun read-passwd prompt &optional confirm default | 2199 | @defun read-passwd prompt &optional confirm default |
| 2200 | This function reads a password, prompting with @var{prompt}. It does | 2200 | This function reads a password, prompting with @var{prompt}. It does |
| 2201 | not echo the password as the user types it; instead, it echoes | 2201 | not echo the password as the user types it; instead, it echoes |
| 2202 | @samp{.} for each character in the password. If you want to apply | 2202 | @samp{*} for each character in the password. If you want to apply |
| 2203 | another character to hide the password, let-bind the variable | 2203 | another character to hide the password, let-bind the variable |
| 2204 | @code{read-hide-char} with that character. | 2204 | @code{read-hide-char} with that character. |
| 2205 | 2205 | ||
diff --git a/doc/lispref/numbers.texi b/doc/lispref/numbers.texi index d9fb43258ea..89205f9df39 100644 --- a/doc/lispref/numbers.texi +++ b/doc/lispref/numbers.texi | |||
| @@ -213,7 +213,7 @@ least one digit after any decimal point in a floating-point number; | |||
| 213 | @samp{1500.} is an integer, not a floating-point number. | 213 | @samp{1500.} is an integer, not a floating-point number. |
| 214 | 214 | ||
| 215 | Emacs Lisp treats @code{-0.0} as numerically equal to ordinary zero | 215 | Emacs Lisp treats @code{-0.0} as numerically equal to ordinary zero |
| 216 | with respect to @code{equal} and @code{=}. This follows the | 216 | with respect to numeric comparisons like @code{=}. This follows the |
| 217 | @acronym{IEEE} floating-point standard, which says @code{-0.0} and | 217 | @acronym{IEEE} floating-point standard, which says @code{-0.0} and |
| 218 | @code{0.0} are numerically equal even though other operations can | 218 | @code{0.0} are numerically equal even though other operations can |
| 219 | distinguish them. | 219 | distinguish them. |
| @@ -227,8 +227,20 @@ infinity and negative infinity as floating-point values. It also | |||
| 227 | provides for a class of values called NaN, or ``not a number''; | 227 | provides for a class of values called NaN, or ``not a number''; |
| 228 | numerical functions return such values in cases where there is no | 228 | numerical functions return such values in cases where there is no |
| 229 | correct answer. For example, @code{(/ 0.0 0.0)} returns a NaN@. | 229 | correct answer. For example, @code{(/ 0.0 0.0)} returns a NaN@. |
| 230 | Although NaN values carry a sign, for practical purposes there is no other | 230 | A NaN is never numerically equal to any value, not even to itself. |
| 231 | significant difference between different NaN values in Emacs Lisp. | 231 | NaNs carry a sign and a significand, and non-numeric functions treat |
| 232 | two NaNs as equal when their | ||
| 233 | signs and significands agree. Significands of NaNs are | ||
| 234 | machine-dependent, as are the digits in their string representation. | ||
| 235 | |||
| 236 | When NaNs and signed zeros are involved, non-numeric functions like | ||
| 237 | @code{eql}, @code{equal}, @code{sxhash-eql}, @code{sxhash-equal} and | ||
| 238 | @code{gethash} determine whether values are indistinguishable, not | ||
| 239 | whether they are numerically equal. For example, when @var{x} and | ||
| 240 | @var{y} are the same NaN, @code{(equal x y)} returns @code{t} whereas | ||
| 241 | @code{(= x y)} uses numeric comparison and returns @code{nil}; | ||
| 242 | conversely, @code{(equal 0.0 -0.0)} returns @code{nil} whereas | ||
| 243 | @code{(= 0.0 -0.0)} returns @code{t}. | ||
| 232 | 244 | ||
| 233 | Here are read syntaxes for these special floating-point values: | 245 | Here are read syntaxes for these special floating-point values: |
| 234 | 246 | ||
| @@ -358,11 +370,15 @@ if so, @code{nil} otherwise. The argument must be a number. | |||
| 358 | @cindex comparing numbers | 370 | @cindex comparing numbers |
| 359 | 371 | ||
| 360 | To test numbers for numerical equality, you should normally use | 372 | To test numbers for numerical equality, you should normally use |
| 361 | @code{=}, not @code{eq}. There can be many distinct floating-point | 373 | @code{=} instead of non-numeric comparison predicates like @code{eq}, |
| 362 | and large integer objects with the same numeric value. If you use | 374 | @code{eql} and @code{equal}. Distinct floating-point and large |
| 363 | @code{eq} to compare them, then you test whether two values are the | 375 | integer objects can be numerically equal. If you use @code{eq} to |
| 364 | same @emph{object}. By contrast, @code{=} compares only the numeric | 376 | compare them, you test whether they are the same @emph{object}; if you |
| 365 | values of the objects. | 377 | use @code{eql} or @code{equal}, you test whether their values are |
| 378 | @emph{indistinguishable}. In contrast, @code{=} uses numeric | ||
| 379 | comparison, and sometimes returns @code{t} when a non-numeric | ||
| 380 | comparison would return @code{nil} and vice versa. @xref{Float | ||
| 381 | Basics}. | ||
| 366 | 382 | ||
| 367 | In Emacs Lisp, each small integer is a unique Lisp object. | 383 | In Emacs Lisp, each small integer is a unique Lisp object. |
| 368 | Therefore, @code{eq} is equivalent to @code{=} where small integers are | 384 | Therefore, @code{eq} is equivalent to @code{=} where small integers are |
| @@ -829,7 +845,7 @@ reproducing the same pattern moved over. | |||
| 829 | bits in @var{integer1} to the left @var{count} places, or to the right | 845 | bits in @var{integer1} to the left @var{count} places, or to the right |
| 830 | if @var{count} is negative, bringing zeros into the vacated bits. If | 846 | if @var{count} is negative, bringing zeros into the vacated bits. If |
| 831 | @var{count} is negative, @code{lsh} shifts zeros into the leftmost | 847 | @var{count} is negative, @code{lsh} shifts zeros into the leftmost |
| 832 | (most-significant) bit, producing a positive result even if | 848 | (most-significant) bit, producing a nonnegative result even if |
| 833 | @var{integer1} is negative. Contrast this with @code{ash}, below. | 849 | @var{integer1} is negative. Contrast this with @code{ash}, below. |
| 834 | 850 | ||
| 835 | Here are two examples of @code{lsh}, shifting a pattern of bits one | 851 | Here are two examples of @code{lsh}, shifting a pattern of bits one |
| @@ -1167,7 +1183,7 @@ returns a NaN. | |||
| 1167 | 1183 | ||
| 1168 | @defun expt x y | 1184 | @defun expt x y |
| 1169 | This function returns @var{x} raised to power @var{y}. If both | 1185 | This function returns @var{x} raised to power @var{y}. If both |
| 1170 | arguments are integers and @var{y} is positive, the result is an | 1186 | arguments are integers and @var{y} is nonnegative, the result is an |
| 1171 | integer; in this case, overflow causes truncation, so watch out. | 1187 | integer; in this case, overflow causes truncation, so watch out. |
| 1172 | If @var{x} is a finite negative number and @var{y} is a finite | 1188 | If @var{x} is a finite negative number and @var{y} is a finite |
| 1173 | non-integer, @code{expt} returns a NaN. | 1189 | non-integer, @code{expt} returns a NaN. |
diff --git a/doc/lispref/sequences.texi b/doc/lispref/sequences.texi index b98889eb099..6a6f4d5c82e 100644 --- a/doc/lispref/sequences.texi +++ b/doc/lispref/sequences.texi | |||
| @@ -63,7 +63,8 @@ But it is possible to add elements to the list, or remove elements. | |||
| 63 | 63 | ||
| 64 | @defun sequencep object | 64 | @defun sequencep object |
| 65 | This function returns @code{t} if @var{object} is a list, vector, | 65 | This function returns @code{t} if @var{object} is a list, vector, |
| 66 | string, bool-vector, or char-table, @code{nil} otherwise. | 66 | string, bool-vector, or char-table, @code{nil} otherwise. See also |
| 67 | @code{seqp} below. | ||
| 67 | @end defun | 68 | @end defun |
| 68 | 69 | ||
| 69 | @defun length sequence | 70 | @defun length sequence |
| @@ -479,7 +480,8 @@ built-in sequence types, @code{seq-length} behaves like @code{length}. | |||
| 479 | @defun seqp object | 480 | @defun seqp object |
| 480 | This function returns non-@code{nil} if @var{object} is a sequence | 481 | This function returns non-@code{nil} if @var{object} is a sequence |
| 481 | (a list or array), or any additional type of sequence defined via | 482 | (a list or array), or any additional type of sequence defined via |
| 482 | @file{seq.el} generic functions. | 483 | @file{seq.el} generic functions. This is an extensible variant of |
| 484 | @code{sequencep}. | ||
| 483 | 485 | ||
| 484 | @example | 486 | @example |
| 485 | @group | 487 | @group |
| @@ -1355,7 +1357,7 @@ each initialized to @var{object}. | |||
| 1355 | @defun vconcat &rest sequences | 1357 | @defun vconcat &rest sequences |
| 1356 | @cindex copying vectors | 1358 | @cindex copying vectors |
| 1357 | This function returns a new vector containing all the elements of | 1359 | This function returns a new vector containing all the elements of |
| 1358 | @var{sequences}. The arguments @var{sequences} may be true lists, | 1360 | @var{sequences}. The arguments @var{sequences} may be proper lists, |
| 1359 | vectors, strings or bool-vectors. If no @var{sequences} are given, | 1361 | vectors, strings or bool-vectors. If no @var{sequences} are given, |
| 1360 | the empty vector is returned. | 1362 | the empty vector is returned. |
| 1361 | 1363 | ||
diff --git a/doc/lispref/strings.texi b/doc/lispref/strings.texi index 026ba749cbd..3558f17301d 100644 --- a/doc/lispref/strings.texi +++ b/doc/lispref/strings.texi | |||
| @@ -922,7 +922,8 @@ Functions}). Thus, strings are enclosed in @samp{"} characters, and | |||
| 922 | @item %o | 922 | @item %o |
| 923 | @cindex integer to octal | 923 | @cindex integer to octal |
| 924 | Replace the specification with the base-eight representation of an | 924 | Replace the specification with the base-eight representation of an |
| 925 | unsigned integer. The object can also be a nonnegative floating-point | 925 | integer. Negative integers are formatted in a platform-dependent |
| 926 | way. The object can also be a nonnegative floating-point | ||
| 926 | number that is formatted as an integer, dropping any fraction, if the | 927 | number that is formatted as an integer, dropping any fraction, if the |
| 927 | integer does not exceed machine limits. | 928 | integer does not exceed machine limits. |
| 928 | 929 | ||
| @@ -935,7 +936,8 @@ formatted as an integer, dropping any fraction. | |||
| 935 | @itemx %X | 936 | @itemx %X |
| 936 | @cindex integer to hexadecimal | 937 | @cindex integer to hexadecimal |
| 937 | Replace the specification with the base-sixteen representation of an | 938 | Replace the specification with the base-sixteen representation of an |
| 938 | unsigned integer. @samp{%x} uses lower case and @samp{%X} uses upper | 939 | integer. Negative integers are formatted in a platform-dependent |
| 940 | way. @samp{%x} uses lower case and @samp{%X} uses upper | ||
| 939 | case. The object can also be a nonnegative floating-point number that | 941 | case. The object can also be a nonnegative floating-point number that |
| 940 | is formatted as an integer, dropping any fraction, if the integer does | 942 | is formatted as an integer, dropping any fraction, if the integer does |
| 941 | not exceed machine limits. | 943 | not exceed machine limits. |
| @@ -1015,17 +1017,17 @@ numbered or unnumbered format specifications but not both, except that | |||
| 1015 | After the @samp{%} and any field number, you can put certain | 1017 | After the @samp{%} and any field number, you can put certain |
| 1016 | @dfn{flag characters}. | 1018 | @dfn{flag characters}. |
| 1017 | 1019 | ||
| 1018 | The flag @samp{+} inserts a plus sign before a positive number, so | 1020 | The flag @samp{+} inserts a plus sign before a nonnegative number, so |
| 1019 | that it always has a sign. A space character as flag inserts a space | 1021 | that it always has a sign. A space character as flag inserts a space |
| 1020 | before a positive number. (Otherwise, positive numbers start with the | 1022 | before a nonnegative number. (Otherwise, nonnegative numbers start with the |
| 1021 | first digit.) These flags are useful for ensuring that positive | 1023 | first digit.) These flags are useful for ensuring that nonnegative |
| 1022 | numbers and negative numbers use the same number of columns. They are | 1024 | and negative numbers use the same number of columns. They are |
| 1023 | ignored except for @samp{%d}, @samp{%e}, @samp{%f}, @samp{%g}, and if | 1025 | ignored except for @samp{%d}, @samp{%e}, @samp{%f}, @samp{%g}, and if |
| 1024 | both flags are used, @samp{+} takes precedence. | 1026 | both flags are used, @samp{+} takes precedence. |
| 1025 | 1027 | ||
| 1026 | The flag @samp{#} specifies an alternate form which depends on | 1028 | The flag @samp{#} specifies an alternate form which depends on |
| 1027 | the format in use. For @samp{%o}, it ensures that the result begins | 1029 | the format in use. For @samp{%o}, it ensures that the result begins |
| 1028 | with a @samp{0}. For @samp{%x} and @samp{%X}, it prefixes the result | 1030 | with a @samp{0}. For @samp{%x} and @samp{%X}, it prefixes nonzero results |
| 1029 | with @samp{0x} or @samp{0X}. For @samp{%e} and @samp{%f}, the | 1031 | with @samp{0x} or @samp{0X}. For @samp{%e} and @samp{%f}, the |
| 1030 | @samp{#} flag means include a decimal point even if the precision is | 1032 | @samp{#} flag means include a decimal point even if the precision is |
| 1031 | zero. For @samp{%g}, it always includes a decimal point, and also | 1033 | zero. For @samp{%g}, it always includes a decimal point, and also |
| @@ -1108,6 +1110,17 @@ shows only the first three characters of the representation for | |||
| 1108 | precision is what the local library functions of the @code{printf} | 1110 | precision is what the local library functions of the @code{printf} |
| 1109 | family produce. | 1111 | family produce. |
| 1110 | 1112 | ||
| 1113 | @cindex formatting numbers for rereading later | ||
| 1114 | If you plan to use @code{read} later on the formatted string to | ||
| 1115 | retrieve a copy of the formatted value, use a specification that lets | ||
| 1116 | @code{read} reconstruct the value. To format numbers in this | ||
| 1117 | reversible way you can use @samp{%s} and @samp{%S}, to format just | ||
| 1118 | integers you can also use @samp{%d}, and to format just nonnegative | ||
| 1119 | integers you can also use @samp{#x%x} and @samp{#o%o}. Other formats | ||
| 1120 | may be problematic; for example, @samp{%d} and @samp{%g} can mishandle | ||
| 1121 | NaNs and can lose precision and type, and @samp{#x%x} and @samp{#o%o} | ||
| 1122 | can mishandle negative integers. @xref{Input Functions}. | ||
| 1123 | |||
| 1111 | @node Case Conversion | 1124 | @node Case Conversion |
| 1112 | @section Case Conversion in Lisp | 1125 | @section Case Conversion in Lisp |
| 1113 | @cindex upper case | 1126 | @cindex upper case |
diff --git a/doc/lispref/threads.texi b/doc/lispref/threads.texi index f05af496188..58a3a918efd 100644 --- a/doc/lispref/threads.texi +++ b/doc/lispref/threads.texi | |||
| @@ -75,8 +75,8 @@ thread, @code{nil} otherwise. | |||
| 75 | 75 | ||
| 76 | @defun thread-join thread | 76 | @defun thread-join thread |
| 77 | Block until @var{thread} exits, or until the current thread is | 77 | Block until @var{thread} exits, or until the current thread is |
| 78 | signaled. If @var{thread} has already exited, this returns | 78 | signaled. It returns the result of the @var{thread} function. If |
| 79 | immediately. | 79 | @var{thread} has already exited, this returns immediately. |
| 80 | @end defun | 80 | @end defun |
| 81 | 81 | ||
| 82 | @defun thread-signal thread error-symbol data | 82 | @defun thread-signal thread error-symbol data |
| @@ -87,6 +87,15 @@ thread, then this just calls @code{signal} immediately. Otherwise, | |||
| 87 | If @var{thread} was blocked by a call to @code{mutex-lock}, | 87 | If @var{thread} was blocked by a call to @code{mutex-lock}, |
| 88 | @code{condition-wait}, or @code{thread-join}; @code{thread-signal} | 88 | @code{condition-wait}, or @code{thread-join}; @code{thread-signal} |
| 89 | will unblock it. | 89 | will unblock it. |
| 90 | |||
| 91 | Since signal handlers in Emacs are located in the main thread, a | ||
| 92 | signal must be propagated there in order to become visible. The | ||
| 93 | second @code{signal} call let the thread die: | ||
| 94 | |||
| 95 | @example | ||
| 96 | (thread-signal main-thread 'error data) | ||
| 97 | (signal 'error data) | ||
| 98 | @end example | ||
| 90 | @end defun | 99 | @end defun |
| 91 | 100 | ||
| 92 | @defun thread-yield | 101 | @defun thread-yield |
| @@ -127,15 +136,21 @@ Return a list of all the live thread objects. A new list is returned | |||
| 127 | by each invocation. | 136 | by each invocation. |
| 128 | @end defun | 137 | @end defun |
| 129 | 138 | ||
| 139 | @defvar main-thread | ||
| 140 | This variable keeps the main thread Emacs is running, or @code{nil} if | ||
| 141 | Emacs is compiled without thread support. | ||
| 142 | @end defvar | ||
| 143 | |||
| 130 | When code run by a thread signals an error that is unhandled, the | 144 | When code run by a thread signals an error that is unhandled, the |
| 131 | thread exits. Other threads can access the error form which caused | 145 | thread exits. Other threads can access the error form which caused |
| 132 | the thread to exit using the following function. | 146 | the thread to exit using the following function. |
| 133 | 147 | ||
| 134 | @defun thread-last-error | 148 | @defun thread-last-error &optional cleanup |
| 135 | This function returns the last error form recorded when a thread | 149 | This function returns the last error form recorded when a thread |
| 136 | exited due to an error. Each thread that exits abnormally overwrites | 150 | exited due to an error. Each thread that exits abnormally overwrites |
| 137 | the form stored by the previous thread's error with a new value, so | 151 | the form stored by the previous thread's error with a new value, so |
| 138 | only the last one can be accessed. | 152 | only the last one can be accessed. If @var{cleanup} is |
| 153 | non-@code{nil}, the stored form is reset to @code{nil}. | ||
| 139 | @end defun | 154 | @end defun |
| 140 | 155 | ||
| 141 | @node Mutexes | 156 | @node Mutexes |
diff --git a/doc/misc/efaq.texi b/doc/misc/efaq.texi index 903c56cef90..5b432d5b2fb 100644 --- a/doc/misc/efaq.texi +++ b/doc/misc/efaq.texi | |||
| @@ -2988,7 +2988,7 @@ Emacs compiled on a 64-bit machine can handle much larger buffers. | |||
| 2988 | @cindex Shell buffer, echoed commands and @samp{^M} in | 2988 | @cindex Shell buffer, echoed commands and @samp{^M} in |
| 2989 | @cindex Echoed commands in @code{shell-mode} | 2989 | @cindex Echoed commands in @code{shell-mode} |
| 2990 | 2990 | ||
| 2991 | Try typing @kbd{M-x shell-strip-ctrl-m @key{RET}} while in @code{shell-mode} to | 2991 | Try typing @kbd{M-x comint-strip-ctrl-m @key{RET}} while in @code{shell-mode} to |
| 2992 | make them go away. If that doesn't work, you have several options: | 2992 | make them go away. If that doesn't work, you have several options: |
| 2993 | 2993 | ||
| 2994 | For @code{tcsh}, put this in your @file{.cshrc} (or @file{.tcshrc}) | 2994 | For @code{tcsh}, put this in your @file{.cshrc} (or @file{.tcshrc}) |
| @@ -3041,7 +3041,7 @@ characters from the buffer by adding this to your @file{.emacs} init | |||
| 3041 | file: | 3041 | file: |
| 3042 | 3042 | ||
| 3043 | @smalllisp | 3043 | @smalllisp |
| 3044 | (add-hook 'comint-output-filter-functions 'shell-strip-ctrl-m) | 3044 | (add-hook 'comint-output-filter-functions #'comint-strip-ctrl-m) |
| 3045 | @end smalllisp | 3045 | @end smalllisp |
| 3046 | 3046 | ||
| 3047 | On a related note: if your shell is echoing your input line in the shell | 3047 | On a related note: if your shell is echoing your input line in the shell |
diff --git a/doc/misc/ert.texi b/doc/misc/ert.texi index 82e0e27ed1c..6a34f5c5722 100644 --- a/doc/misc/ert.texi +++ b/doc/misc/ert.texi | |||
| @@ -273,9 +273,11 @@ moving point to it and typing @kbd{@key{RET}} jumps to its definition. | |||
| 273 | @cindex backtrace of a failed test | 273 | @cindex backtrace of a failed test |
| 274 | Pressing @kbd{r} re-runs the test near point on its own. Pressing | 274 | Pressing @kbd{r} re-runs the test near point on its own. Pressing |
| 275 | @kbd{d} re-runs it with the debugger enabled. @kbd{.} jumps to the | 275 | @kbd{d} re-runs it with the debugger enabled. @kbd{.} jumps to the |
| 276 | definition of the test near point (@kbd{@key{RET}} has the same effect if | 276 | definition of the test near point (@kbd{@key{RET}} has the same effect |
| 277 | point is on the name of the test). On a failed test, @kbd{b} shows | 277 | if point is on the name of the test). On a failed test, @kbd{b} shows |
| 278 | the backtrace of the failure. | 278 | the backtrace of the failure. @xref{Debugging,, Backtraces, elisp, |
| 279 | GNU Emacs Lisp Reference Manual}, for more information about | ||
| 280 | backtraces. | ||
| 279 | 281 | ||
| 280 | @kindex l@r{, in ert results buffer} | 282 | @kindex l@r{, in ert results buffer} |
| 281 | @kbd{l} shows the list of @code{should} forms executed in the test. | 283 | @kbd{l} shows the list of @code{should} forms executed in the test. |
diff --git a/doc/misc/flymake.texi b/doc/misc/flymake.texi index bdefd40d778..bda7e1428b5 100644 --- a/doc/misc/flymake.texi +++ b/doc/misc/flymake.texi | |||
| @@ -4,7 +4,7 @@ | |||
| 4 | @set VERSION 1.0 | 4 | @set VERSION 1.0 |
| 5 | @set UPDATED June 2018 | 5 | @set UPDATED June 2018 |
| 6 | @settitle GNU Flymake @value{VERSION} | 6 | @settitle GNU Flymake @value{VERSION} |
| 7 | @include ../emacs/docstyle.texi | 7 | @include docstyle.texi |
| 8 | @syncodeindex pg cp | 8 | @syncodeindex pg cp |
| 9 | @syncodeindex vr cp | 9 | @syncodeindex vr cp |
| 10 | @syncodeindex fn cp | 10 | @syncodeindex fn cp |
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi index d8f4b41e2f2..55c21b7efc4 100644 --- a/doc/misc/tramp.texi +++ b/doc/misc/tramp.texi | |||
| @@ -544,9 +544,9 @@ file system), @file{@trampfn{dav,user@@host,/path/to/file}} and | |||
| 544 | @cindex method @option{gdrive} | 544 | @cindex method @option{gdrive} |
| 545 | @cindex @option{gdrive} method | 545 | @cindex @option{gdrive} method |
| 546 | @cindex google drive | 546 | @cindex google drive |
| 547 | @cindex method @option{owncloud} | 547 | @cindex method @option{nextcloud} |
| 548 | @cindex @option{owncloud} method | 548 | @cindex @option{nextcloud} method |
| 549 | @cindex nextcloud | 549 | @cindex owncloud |
| 550 | 550 | ||
| 551 | GVFS-based methods include also @acronym{GNOME} Online Accounts, which | 551 | GVFS-based methods include also @acronym{GNOME} Online Accounts, which |
| 552 | support the @option{Files} service. These are the Google Drive file | 552 | support the @option{Files} service. These are the Google Drive file |
| @@ -554,7 +554,7 @@ system, and the OwnCloud/NextCloud file system. The file name syntax | |||
| 554 | is here always | 554 | is here always |
| 555 | @file{@trampfn{gdrive,john.doe@@gmail.com,/path/to/file}} | 555 | @file{@trampfn{gdrive,john.doe@@gmail.com,/path/to/file}} |
| 556 | (@samp{john.doe@@gmail.com} stands here for your Google Drive | 556 | (@samp{john.doe@@gmail.com} stands here for your Google Drive |
| 557 | account), or @file{@trampfn{owncloud,user@@host#8081,/path/to/file}} | 557 | account), or @file{@trampfn{nextcloud,user@@host#8081,/path/to/file}} |
| 558 | (@samp{8081} stands for the port number) for OwnCloud/NextCloud files. | 558 | (@samp{8081} stands for the port number) for OwnCloud/NextCloud files. |
| 559 | 559 | ||
| 560 | 560 | ||
| @@ -1094,6 +1094,10 @@ syntax requires a leading volume (share) name, for example: | |||
| 1094 | based on standard protocols, such as HTTP@. @option{davs} does the same | 1094 | based on standard protocols, such as HTTP@. @option{davs} does the same |
| 1095 | but with SSL encryption. Both methods support the port numbers. | 1095 | but with SSL encryption. Both methods support the port numbers. |
| 1096 | 1096 | ||
| 1097 | Paths being part of the WebDAV volume to be mounted by GVFS, as it is | ||
| 1098 | common for OwnCloud or NextCloud file names, are not supported by | ||
| 1099 | these methods. See method @option{nextcloud} for handling them. | ||
| 1100 | |||
| 1097 | @item @option{gdrive} | 1101 | @item @option{gdrive} |
| 1098 | @cindex method @option{gdrive} | 1102 | @cindex method @option{gdrive} |
| 1099 | @cindex @option{gdrive} method | 1103 | @cindex @option{gdrive} method |
| @@ -1110,13 +1114,13 @@ Since Google Drive uses cryptic blob file names internally, | |||
| 1110 | could produce unexpected behavior in case two files in the same | 1114 | could produce unexpected behavior in case two files in the same |
| 1111 | directory have the same @code{display-name}, such a situation must be avoided. | 1115 | directory have the same @code{display-name}, such a situation must be avoided. |
| 1112 | 1116 | ||
| 1113 | @item @option{owncloud} | 1117 | @item @option{nextcloud} |
| 1114 | @cindex @acronym{GNOME} Online Accounts | 1118 | @cindex @acronym{GNOME} Online Accounts |
| 1115 | @cindex method @option{owncloud} | 1119 | @cindex method @option{nextcloud} |
| 1116 | @cindex @option{owncloud} method | 1120 | @cindex @option{nextcloud} method |
| 1117 | @cindex nextcloud | 1121 | @cindex owncloud |
| 1118 | 1122 | ||
| 1119 | As the name indicates, the method @option{owncloud} allows you to | 1123 | As the name indicates, the method @option{nextcloud} allows you to |
| 1120 | access OwnCloud or NextCloud hosted files and directories. Like the | 1124 | access OwnCloud or NextCloud hosted files and directories. Like the |
| 1121 | @option{gdrive} method, your credentials must be populated in your | 1125 | @option{gdrive} method, your credentials must be populated in your |
| 1122 | @command{Online Accounts} application outside Emacs. The method | 1126 | @command{Online Accounts} application outside Emacs. The method |
| @@ -1135,7 +1139,7 @@ that for security reasons refuse @command{ssh} connections. | |||
| 1135 | @defopt tramp-gvfs-methods | 1139 | @defopt tramp-gvfs-methods |
| 1136 | This user option is a list of external methods for GVFS@. By default, | 1140 | This user option is a list of external methods for GVFS@. By default, |
| 1137 | this list includes @option{afp}, @option{dav}, @option{davs}, | 1141 | this list includes @option{afp}, @option{dav}, @option{davs}, |
| 1138 | @option{gdrive}, @option{owncloud} and @option{sftp}. Other methods | 1142 | @option{gdrive}, @option{nextcloud} and @option{sftp}. Other methods |
| 1139 | to include are @option{ftp}, @option{http}, @option{https} and | 1143 | to include are @option{ftp}, @option{http}, @option{https} and |
| 1140 | @option{smb}. These methods are not intended to be used directly as | 1144 | @option{smb}. These methods are not intended to be used directly as |
| 1141 | GVFS based method. Instead, they are added here for the benefit of | 1145 | GVFS based method. Instead, they are added here for the benefit of |
| @@ -1238,7 +1242,7 @@ improvement is not always true. | |||
| 1238 | @cindex default user | 1242 | @cindex default user |
| 1239 | 1243 | ||
| 1240 | @defopt tramp-default-user | 1244 | @defopt tramp-default-user |
| 1241 | @value{tramp} file name can omit the user name part since | 1245 | A @value{tramp} file name can omit the user name part since |
| 1242 | @value{tramp} substitutes the currently logged-in user name. However | 1246 | @value{tramp} substitutes the currently logged-in user name. However |
| 1243 | this substitution can be overridden with @code{tramp-default-user}. | 1247 | this substitution can be overridden with @code{tramp-default-user}. |
| 1244 | For example: | 1248 | For example: |
| @@ -1453,7 +1457,7 @@ support this command. | |||
| 1453 | 1457 | ||
| 1454 | @subsection Tunneling with ssh | 1458 | @subsection Tunneling with ssh |
| 1455 | 1459 | ||
| 1456 | With ssh, you could use the @code{ProxyCommand} entry in the | 1460 | With ssh, you could use the @code{ProxyCommand} entry in |
| 1457 | @file{~/.ssh/config}: | 1461 | @file{~/.ssh/config}: |
| 1458 | 1462 | ||
| 1459 | @example | 1463 | @example |
| @@ -1589,12 +1593,12 @@ A function dedicated to @file{/etc/hosts} for host names. | |||
| 1589 | @item @code{tramp-parse-passwd} | 1593 | @item @code{tramp-parse-passwd} |
| 1590 | @findex tramp-parse-passwd | 1594 | @findex tramp-parse-passwd |
| 1591 | 1595 | ||
| 1592 | A function which parses @file{/etc/passwd} files for user names. | 1596 | A function which parses @file{/etc/passwd} for user names. |
| 1593 | 1597 | ||
| 1594 | @item @code{tramp-parse-etc-group} | 1598 | @item @code{tramp-parse-etc-group} |
| 1595 | @findex tramp-parse-etc-group | 1599 | @findex tramp-parse-etc-group |
| 1596 | 1600 | ||
| 1597 | A function which parses @file{/etc/group} files for group names. | 1601 | A function which parses @file{/etc/group} for group names. |
| 1598 | 1602 | ||
| 1599 | @item @code{tramp-parse-netrc} | 1603 | @item @code{tramp-parse-netrc} |
| 1600 | @findex tramp-parse-netrc | 1604 | @findex tramp-parse-netrc |
| @@ -2194,7 +2198,7 @@ of the secretfile is now owned by the user logged in from | |||
| 2194 | When @code{backup-directory-alist} is @code{nil} (the default), such | 2198 | When @code{backup-directory-alist} is @code{nil} (the default), such |
| 2195 | problems do not occur. | 2199 | problems do not occur. |
| 2196 | 2200 | ||
| 2197 | To ``turn off'' the backup feature for @value{tramp} files and stop | 2201 | To ``turn off'' the backup feature for remote files and stop |
| 2198 | @value{tramp} from saving to the backup directory, use this: | 2202 | @value{tramp} from saving to the backup directory, use this: |
| 2199 | 2203 | ||
| 2200 | @lisp | 2204 | @lisp |
| @@ -2256,12 +2260,11 @@ The backup file name of | |||
| 2256 | 2260 | ||
| 2257 | @vindex auto-save-file-name-transforms | 2261 | @vindex auto-save-file-name-transforms |
| 2258 | Just as for backup files, similar issues of file naming affect | 2262 | Just as for backup files, similar issues of file naming affect |
| 2259 | auto-saving @value{tramp} files. Auto-saved files are saved in the | 2263 | auto-saving remote files. Auto-saved files are saved in the directory |
| 2260 | directory specified by the user option | 2264 | specified by the user option @code{auto-save-file-name-transforms}. |
| 2261 | @code{auto-save-file-name-transforms}. By default this is set to | 2265 | By default this is set to the local temporary directory. But in some |
| 2262 | the local temporary directory. But in some versions of Debian | 2266 | versions of Debian GNU/Linux, this points to the source directory |
| 2263 | GNU/Linux, this points to the source directory where the Emacs was | 2267 | where the Emacs was compiled. Reset such values to a valid directory. |
| 2264 | compiled. Reset such values to a valid directory. | ||
| 2265 | 2268 | ||
| 2266 | Set @code{auto-save-file-name-transforms} to @code{nil} to save | 2269 | Set @code{auto-save-file-name-transforms} to @code{nil} to save |
| 2267 | auto-saved files to the same directory as the original file. | 2270 | auto-saved files to the same directory as the original file. |
| @@ -2765,8 +2768,8 @@ hard-coded, fixed name. Note that using @code{:0} for X11 display name | |||
| 2765 | here will not work as expected. | 2768 | here will not work as expected. |
| 2766 | 2769 | ||
| 2767 | An alternate approach is specify @code{ForwardX11 yes} or | 2770 | An alternate approach is specify @code{ForwardX11 yes} or |
| 2768 | @code{ForwardX11Trusted yes} in the file @file{~/.ssh/config} on the | 2771 | @code{ForwardX11Trusted yes} in @file{~/.ssh/config} on the local |
| 2769 | local host. | 2772 | host. |
| 2770 | 2773 | ||
| 2771 | 2774 | ||
| 2772 | @subsection Running @code{shell} on a remote host | 2775 | @subsection Running @code{shell} on a remote host |
| @@ -3446,6 +3449,19 @@ source "$@{HOME@}/.iterm2_shell_integration.bash" | |||
| 3446 | @end group | 3449 | @end group |
| 3447 | @end example | 3450 | @end example |
| 3448 | 3451 | ||
| 3452 | And finally, bash's readline should not use key bindings like | ||
| 3453 | @samp{C-j} to commands. Disable this in your @file{~/.inputrc}: | ||
| 3454 | |||
| 3455 | @example | ||
| 3456 | @group | ||
| 3457 | $if term=dumb | ||
| 3458 | # Don't bind Control-J or it messes up @value{tramp}. | ||
| 3459 | $else | ||
| 3460 | "\C-j": next-history | ||
| 3461 | $endif | ||
| 3462 | @end group | ||
| 3463 | @end example | ||
| 3464 | |||
| 3449 | @item | 3465 | @item |
| 3450 | Echoed characters after login | 3466 | Echoed characters after login |
| 3451 | 3467 | ||
| @@ -3582,13 +3598,13 @@ When testing, ensure the remote shell is the same shell | |||
| 3582 | How to get notified after @value{tramp} completes file transfers? | 3598 | How to get notified after @value{tramp} completes file transfers? |
| 3583 | 3599 | ||
| 3584 | Make Emacs beep after reading from or writing to the remote host with | 3600 | Make Emacs beep after reading from or writing to the remote host with |
| 3585 | the following code in @file{~/.emacs} file. | 3601 | the following code in @file{~/.emacs}. |
| 3586 | 3602 | ||
| 3587 | @lisp | 3603 | @lisp |
| 3588 | @group | 3604 | @group |
| 3589 | (defadvice tramp-handle-write-region | 3605 | (defadvice tramp-handle-write-region |
| 3590 | (after tramp-write-beep-advice activate) | 3606 | (after tramp-write-beep-advice activate) |
| 3591 | "Make tramp beep after writing a file." | 3607 | "Make @value{tramp} beep after writing a file." |
| 3592 | (interactive) | 3608 | (interactive) |
| 3593 | (beep)) | 3609 | (beep)) |
| 3594 | @end group | 3610 | @end group |
| @@ -3596,7 +3612,7 @@ the following code in @file{~/.emacs} file. | |||
| 3596 | @group | 3612 | @group |
| 3597 | (defadvice tramp-handle-do-copy-or-rename-file | 3613 | (defadvice tramp-handle-do-copy-or-rename-file |
| 3598 | (after tramp-copy-beep-advice activate) | 3614 | (after tramp-copy-beep-advice activate) |
| 3599 | "Make tramp beep after copying a file." | 3615 | "Make @value{tramp} beep after copying a file." |
| 3600 | (interactive) | 3616 | (interactive) |
| 3601 | (beep)) | 3617 | (beep)) |
| 3602 | @end group | 3618 | @end group |
| @@ -3604,7 +3620,7 @@ the following code in @file{~/.emacs} file. | |||
| 3604 | @group | 3620 | @group |
| 3605 | (defadvice tramp-handle-insert-file-contents | 3621 | (defadvice tramp-handle-insert-file-contents |
| 3606 | (after tramp-insert-beep-advice activate) | 3622 | (after tramp-insert-beep-advice activate) |
| 3607 | "Make tramp beep after inserting a file." | 3623 | "Make @value{tramp} beep after inserting a file." |
| 3608 | (interactive) | 3624 | (interactive) |
| 3609 | (beep)) | 3625 | (beep)) |
| 3610 | @end group | 3626 | @end group |
| @@ -3642,7 +3658,7 @@ then set them with a hook as follows: | |||
| 3642 | 3658 | ||
| 3643 | 3659 | ||
| 3644 | @item | 3660 | @item |
| 3645 | Why is @file{~/.sh_history} file on the remote host growing? | 3661 | Why is @file{~/.sh_history} on the remote host growing? |
| 3646 | 3662 | ||
| 3647 | @vindex tramp-histfile-override | 3663 | @vindex tramp-histfile-override |
| 3648 | @vindex HISTFILE@r{, environment variable} | 3664 | @vindex HISTFILE@r{, environment variable} |
| @@ -3663,7 +3679,7 @@ undesired results when using @command{bash} as remote shell. | |||
| 3663 | Another approach is to disable @value{tramp}'s handling of the | 3679 | Another approach is to disable @value{tramp}'s handling of the |
| 3664 | @env{HISTFILE} at all by setting @code{tramp-histfile-override} to | 3680 | @env{HISTFILE} at all by setting @code{tramp-histfile-override} to |
| 3665 | @code{nil}. In this case, saving history could be turned off by | 3681 | @code{nil}. In this case, saving history could be turned off by |
| 3666 | putting this shell code in the @file{.bashrc} or @file{.kshrc} file: | 3682 | putting this shell code in @file{.bashrc} or @file{.kshrc}: |
| 3667 | 3683 | ||
| 3668 | @example | 3684 | @example |
| 3669 | @group | 3685 | @group |
| @@ -3680,7 +3696,7 @@ fi | |||
| 3680 | @end example | 3696 | @end example |
| 3681 | 3697 | ||
| 3682 | For @option{ssh}-based method, add the following line to your | 3698 | For @option{ssh}-based method, add the following line to your |
| 3683 | @file{~/.ssh/environment} file: | 3699 | @file{~/.ssh/environment}: |
| 3684 | 3700 | ||
| 3685 | @example | 3701 | @example |
| 3686 | HISTFILE=/dev/null | 3702 | HISTFILE=/dev/null |