diff options
Diffstat (limited to 'doc/emacs')
-rw-r--r-- | doc/emacs/buffers.texi | 12 | ||||
-rw-r--r-- | doc/emacs/building.texi | 8 | ||||
-rw-r--r-- | doc/emacs/cal-xtra.texi | 5 | ||||
-rw-r--r-- | doc/emacs/cmdargs.texi | 15 | ||||
-rw-r--r-- | doc/emacs/custom.texi | 19 | ||||
-rw-r--r-- | doc/emacs/dired.texi | 20 | ||||
-rw-r--r-- | doc/emacs/display.texi | 15 | ||||
-rw-r--r-- | doc/emacs/entering.texi | 5 | ||||
-rw-r--r-- | doc/emacs/files.texi | 12 | ||||
-rw-r--r-- | doc/emacs/frames.texi | 16 | ||||
-rw-r--r-- | doc/emacs/glossary.texi | 4 | ||||
-rw-r--r-- | doc/emacs/m-x.texi | 6 | ||||
-rw-r--r-- | doc/emacs/maintaining.texi | 15 | ||||
-rw-r--r-- | doc/emacs/misc.texi | 58 | ||||
-rw-r--r-- | doc/emacs/msdos.texi | 81 | ||||
-rw-r--r-- | doc/emacs/text.texi | 14 | ||||
-rw-r--r-- | doc/emacs/trouble.texi | 9 |
17 files changed, 245 insertions, 69 deletions
diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi index 2eb837f1510..c70e583b9ed 100644 --- a/doc/emacs/buffers.texi +++ b/doc/emacs/buffers.texi @@ -411,6 +411,18 @@ Remove all flags from the current line, and move down @kindex DEL @r{(Buffer Menu)} Move to the previous line and remove all flags on that line (@code{Buffer-menu-backup-unmark}). + +@item M-@key{DEL} +@findex Buffer-menu-unmark-all-buffers +@kindex M-DEL @r{(Buffer Menu)} +Remove a particular flag from all lines +(@code{Buffer-menu-unmark-all-buffers}). + +@item U +@findex Buffer-menu-unmark-all +@kindex U @r{(Buffer Menu)} +Remove all flags from all the lines +(@code{Buffer-menu-unmark-all}). @end table @noindent diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi index df0764ee6b7..a416734d40e 100644 --- a/doc/emacs/building.texi +++ b/doc/emacs/building.texi @@ -382,6 +382,14 @@ use of this feature by setting @code{grep-highlight-matches} to @code{t}. When displaying a match in the source buffer, the exact match will be highlighted, instead of the entire source line. + The @command{grep} commands will offer to save buffers before +running. This is controlled by the @code{grep-save-buffers} variable. +The possible values are either @code{nil} (don't save), @code{ask} +(ask before saving), a function which will be used as a predicate (and +is called with the file name as the parameter and should return +non-nil if the buffer is to be saved), and any other non-@code{nil} +value means that all buffers should be saved without asking. + @findex grep-find @findex find-grep The command @kbd{M-x grep-find} (also available as @kbd{M-x diff --git a/doc/emacs/cal-xtra.texi b/doc/emacs/cal-xtra.texi index 2dff8c9b869..842c0792eda 100644 --- a/doc/emacs/cal-xtra.texi +++ b/doc/emacs/cal-xtra.texi @@ -62,11 +62,6 @@ uses @code{calendar-today-marker} to mark today's date. By default, the calendar uses faces named @code{holiday}, @code{diary}, and @code{calendar-today} for these purposes. -@vindex calendar-load-hook - The variable @code{calendar-load-hook} is a normal hook run when the -calendar package is first loaded (before actually starting to display -the calendar). - @vindex calendar-initial-window-hook Starting the calendar runs the normal hook @code{calendar-initial-window-hook}. Recomputation of the calendar diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi index 8db2ea12c89..524cd8dd268 100644 --- a/doc/emacs/cmdargs.texi +++ b/doc/emacs/cmdargs.texi @@ -283,6 +283,13 @@ which will invoke Emacs with @samp{--script} and supply the name of the script file as @var{file}. Emacs Lisp then treats the @samp{#!} on this first line as a comment delimiter. +@item --no-build-details +@opindex --no-build-details +@cindex build details +@cindex deterministic build +Omit details like system name and build time from the Emacs executable, +so that builds are more deterministic. + @item -q @opindex -q @itemx --no-init-file @@ -329,12 +336,16 @@ setting @code{inhibit-x-resources} to @code{t} (@pxref{Resources}). @opindex -daemon @itemx --daemon[=@var{name}] @opindex --daemon +@itemx --old-daemon[=@var{name}] +@itemx --new-daemon[=@var{name}] Start Emacs as a daemon---after Emacs starts up, it starts the Emacs -server and disconnects from the terminal without opening any frames. +server without opening any frames. (Optionally, you can specify an explicit @var{name} for the server.) You can then use the @command{emacsclient} command to connect to Emacs for editing. @xref{Emacs Server}, for information about using Emacs -as a daemon. +as a daemon. An ``old-style'' daemon disconnects from the terminal +and runs in the background (@samp{--daemon} is an alias for +@samp{--old-daemon}). @item --no-desktop @opindex --no-desktop diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi index 771633623f5..01637ae98ad 100644 --- a/doc/emacs/custom.texi +++ b/doc/emacs/custom.texi @@ -1037,9 +1037,10 @@ explicitly. For example, here's how to obtain the default value of @cindex file local variables A file can specify local variable values to use when editing the -file with Emacs. Visiting the file checks for local variable -specifications; it automatically makes these variables local to the -buffer, and sets them to the values specified in the file. +file with Emacs. Visiting the file or setting a major mode checks for +local variable specifications; it automatically makes these variables +local to the buffer, and sets them to the values specified in the +file. @menu * Specifying File Variables:: Specifying file local variables. @@ -1298,7 +1299,11 @@ accomplished with @dfn{directory-local variables}. named @file{.dir-locals.el}@footnote{ On MS-DOS, the name of this file should be @file{_dir-locals.el}, due to limitations of the DOS filesystems. If the filesystem is limited to 8+3 file names, the name -of the file will be truncated by the OS to @file{_dir-loc.el}. } in a +of the file will be truncated by the OS to @file{_dir-loc.el}. +}@footnote{ You can also use @file{.dir-locals-2.el}, which +is loaded in addition. This is useful when @file{.dir-locals.el} is +under version control in a shared repository and can't be used for +personal customizations. } in a directory. Whenever Emacs visits any file in that directory or any of its subdirectories, it will apply the directory-local variables specified in @file{.dir-locals.el}, as though they had been defined as @@ -1340,6 +1345,12 @@ be applied in the current directory, not in any subdirectories. Finally, it specifies a different @file{ChangeLog} file name for any file in the @file{src/imported} subdirectory. +You can specify the variables @code{mode}, @code{eval}, and +@code{unibyte} in your @file{.dir-locals.el}, and they have the same +meanings as they would have in file local variables. @code{coding} +cannot be specified as a directory local variable. @xref{File +Variables}. + @findex add-dir-local-variable @findex delete-dir-local-variable @findex copy-file-locals-to-dir-locals diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi index 1b10ebc8758..2cda51a82fa 100644 --- a/doc/emacs/dired.texi +++ b/doc/emacs/dired.texi @@ -550,13 +550,16 @@ Mark (with @samp{*}) all files whose @emph{contents} contain a match for the regular expression @var{regexp} (@code{dired-mark-files-containing-regexp}). This command is like @kbd{% m}, except that it searches the file contents instead of the file -name. Note that if a file is visited in an Emacs buffer, this command -will look in the buffer without revisiting the file, so the results +name. Note that if a file is visited in an Emacs buffer, +and @code{dired-always-read-filesystem} is @code{nil} (the default), this +command will look in the buffer without revisiting the file, so the results might be inconsistent with the file on disk if its contents has changed since it was last visited. If you don't want this, you may wish reverting the files you have visited in your buffers, or turning on the @code{auto-revert} mode in those buffers, before invoking this -command. @xref{Reverting}. +command. @xref{Reverting}. If you prefer that this command always revisit +the file, without having to revert the file or enable @code{auto-revert} +mode, you might want to set @code{dired-always-read-filesystem} to non-@code{nil}. @item C-/ @itemx C-x u @@ -1314,6 +1317,10 @@ relative). To mark a file for deletion, delete the entire file name. To change the target of a symbolic link, edit the link target name which appears next to the link name. + If you edit the file names to create a new subdirectory, Wdired will +automatically create these new directories. To inhibit this behavior, +set @code{wdired-create-parent-directories} to @code{nil}. + The rest of the text in the buffer, such as the file sizes and modification dates, is marked read-only, so you can't edit it. However, if you set @code{wdired-allow-to-change-permissions} to @@ -1438,6 +1445,13 @@ names into arguments for other Emacs commands. It also displays what it added to the kill ring, so you can use it to display the list of currently marked files in the echo area. +@kindex W @r{(Dired)} +@findex browse-url-of-dired-file + If you have an HTML file in the file listing, it can be useful to +view that file with a browser. The @kbd{W} +(@code{browse-url-of-dired-file}) command will use the standard +configured browser to view that file. + @kindex ( @r{(Dired)} @findex dired-hide-details-mode @vindex dired-hide-details-hide-symlink-targets diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi index 391e1a0ed58..492dfc6afd5 100644 --- a/doc/emacs/display.texi +++ b/doc/emacs/display.texi @@ -657,9 +657,16 @@ Whitespace}). @item escape-glyph The face for displaying control characters and escape sequences (@pxref{Text Display}). +@item homoglyph +The face for displaying lookalike characters, i.e., characters that +look like but are not the characters being represented +(@pxref{Text Display}). @item nobreak-space The face for displaying no-break space characters (@pxref{Text Display}). +@item nobreak-hyphen +The face for displaying no-break hyphen characters (@pxref{Text +Display}). @end table The following faces control the appearance of parts of the Emacs @@ -1490,7 +1497,7 @@ characters. To deal with this problem, Emacs displays such characters specially: it displays @code{U+00A0} (no-break space) with the @code{nobreak-space} face, and it displays @code{U+00AD} (soft hyphen), @code{U+2010} (hyphen), and @code{U+2011} (non-breaking -hyphen) with the @code{escape-glyph} face. To disable this, change +hyphen) with the @code{nobreak-hyphen} face. To disable this, change the variable @code{nobreak-char-display} to @code{nil}. If you give this variable a non-@code{nil} and non-@code{t} value, Emacs instead displays such characters as a highlighted backslash followed by a @@ -1517,12 +1524,12 @@ for details. @cindex curly quotes @cindex curved quotes -@cindex escape-glyph face +@cindex homoglyph face If the curved quotes @samp{‘}, @samp{’}, @samp{“}, and @samp{”} are known to look just like @acronym{ASCII} characters, they are shown -with the @code{escape-glyph} face. Curved quotes that cannot be +with the @code{homoglyph} face. Curved quotes that cannot be displayed are shown as their @acronym{ASCII} approximations @samp{`}, -@samp{'}, and @samp{"} with the @code{escape-glyph} face. +@samp{'}, and @samp{"} with the @code{homoglyph} face. @node Cursor Display @section Displaying the Cursor diff --git a/doc/emacs/entering.texi b/doc/emacs/entering.texi index d6cb3cb8b09..7f186cfafe5 100644 --- a/doc/emacs/entering.texi +++ b/doc/emacs/entering.texi @@ -133,6 +133,11 @@ run. One convenient function to use as the value of @code{confirm-kill-emacs} is the function @code{yes-or-no-p}. The default value of @code{confirm-kill-emacs} is @code{nil}. +@vindex confirm-kill-processes + If the value of the variable @code{confirm-kill-processes} is +@code{nil}, @kbd{C-x C-c} does not ask for confirmation before killing +subprocesses started by Emacs. The value is @code{t} by default. + To further customize what happens when Emacs is exiting, see @ref{Killing Emacs,,, elisp, The GNU Emacs Lisp Reference Manual}. diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi index 264154be66f..eca41af7a18 100644 --- a/doc/emacs/files.texi +++ b/doc/emacs/files.texi @@ -1560,8 +1560,8 @@ delete-file}. @xref{VC Delete/Rename}. @findex copy-file @cindex copying files - @kbd{M-x copy-file} reads the file @var{old} and writes a new file -named @var{new} with the same contents. + @kbd{M-x copy-file} copies the contents of the file @var{old} to the +file @var{new}. @findex copy-directory @kbd{M-x copy-directory} copies directories, similar to the @@ -1876,6 +1876,11 @@ prevent it from being treated as a remote file name. Thus, if you have a directory named @file{/foo:} and a file named @file{bar} in it, you can refer to that file in Emacs as @samp{/:/foo:/bar}. + If you want to quote only special characters in the local part of a +remote file name, you can quote just the local part. +@samp{/baz:/:/foo:/bar} refers to the file @file{bar} of directory +@file{/foo:} on the host @file{baz}. + @samp{/:} can also prevent @samp{~} from being treated as a special character for a user's home directory. For example, @file{/:/tmp/~hack} refers to a file whose name is @file{~hack} in directory @file{/tmp}. @@ -1974,6 +1979,9 @@ point. Partial Completion mode offers other features extending major mode, you can type @kbd{C-c C-c} (@code{image-toggle-display}) to toggle between displaying the file as an image in the Emacs buffer, and displaying its underlying text (or raw byte) representation. +Additionally you can type @kbd{C-c C-x} (@code{image-toggle-hex-display}) +to toggle between displaying the file as an image in the Emacs buffer, +and displaying it in hex representation. Displaying the file as an image works only if Emacs is compiled with support for displaying such images. If the displayed image is wider or taller than the frame, the usual point motion keys (@kbd{C-f}, diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi index 99926dc47be..082de3796c1 100644 --- a/doc/emacs/frames.texi +++ b/doc/emacs/frames.texi @@ -97,7 +97,8 @@ ring; on a second click, kill it (@code{mouse-save-then-kill}). invoked by clicking with the left mouse button, @kbd{mouse-1}, in the text area of a window. This moves point to the position where you clicked. If that window was not the selected window, it becomes the -selected window. +selected window. You can also activate a region by double-clicking +mouse-1 (@pxref{Word and Line Mouse}). @vindex x-mouse-click-focus-ignore-position Normally, if the frame you clicked in was not the selected frame, it @@ -215,7 +216,7 @@ also copied to the kill ring. @table @kbd @item Double-mouse-1 -Select the text around the word which you click on. +Select the text around the word or character which you click on. Double-clicking on a character with symbol syntax (such as underscore, in C mode) selects the symbol surrounding that character. @@ -226,6 +227,17 @@ ends. Double-clicking on a character with string-delimiter syntax constant (Emacs uses heuristics to figure out whether that character is the beginning or the end of it). +Double-clicking on the beginning of a parenthetical grouping or +beginning string-delimiter moves point to the end of the region, +scrolling the buffer display forward if necessary to show the new +location of point. Double-clicking on the end of a parenthetical +grouping or end string-delimiter keeps point at the end of the region +by default, so the beginning of the region will not be visible if it +is above the top of the window; setting the user option +@code{mouse-select-region-move-to-beginning} to non-nil changes this +to move point to the beginning of the region, scrolling the display +backward if necessary. + @item Double-Drag-mouse-1 Select the text you drag across, in the form of whole words. diff --git a/doc/emacs/glossary.texi b/doc/emacs/glossary.texi index bce97dacee2..d6489390ea5 100644 --- a/doc/emacs/glossary.texi +++ b/doc/emacs/glossary.texi @@ -338,8 +338,8 @@ or by rebinding key sequences (@pxref{Keymaps}). @item Daemon A daemon is a standard term for a system-level process that runs in the background. Daemons are often started when the system first starts up. -When Emacs runs in daemon-mode, it runs in the background and does not -open a display. You can then connect to it with the +When Emacs runs in daemon-mode, it does not +open a display. You connect to it with the @command{emacsclient} program. @xref{Emacs Server}. @item Default Argument diff --git a/doc/emacs/m-x.texi b/doc/emacs/m-x.texi index 9e5f50b5e91..4b1165a1130 100644 --- a/doc/emacs/m-x.texi +++ b/doc/emacs/m-x.texi @@ -69,11 +69,13 @@ number, in which case Emacs will show the binding for that many seconds before removing it from display. The default behavior is to display the binding for 2 seconds. +@vindex extended-command-suggest-shorter Commands that don't have key bindings, can still be invoked after typing less than their full name at the @samp{M-x} prompt. Emacs mentions such shorthands in the echo area if they are significantly -shorter than the full command name. The setting of -@code{suggest-key-bindings} affects these hints as well. +shorter than the full command name, and +@code{extended-command-suggest-shorter} is non-@code{nil}. The +setting of @code{suggest-key-bindings} affects these hints as well. In this manual, when we speak of running a command by name, we often omit the @key{RET} that terminates the name. Thus we might say diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi index acb6b8c8039..66781ad2bea 100644 --- a/doc/emacs/maintaining.texi +++ b/doc/emacs/maintaining.texi @@ -1590,6 +1590,13 @@ also creates a new item for the current file. For many languages, it can even guess the name of the function or other object that was changed. +@c Not worth it. +@c @vindex change-log-directory-files +To find the change log file, Emacs searches up the directory tree from +the file you are editing. By default, it stops if it finds a +directory that seems to be the root of a version-control repository. +To change this, customize @code{change-log-directory-files}. + @vindex add-log-keep-changes-together When the variable @code{add-log-keep-changes-together} is non-@code{nil}, @kbd{C-x 4 a} adds to any existing item for the file @@ -2545,10 +2552,10 @@ directory as the default. @vindex tags-file-name Emacs does not actually read in the tags table contents until you try to use them; all @code{visit-tags-table} does is store the file -name in the variable @code{tags-file-name}, and setting the variable -yourself is just as good. The variable's initial value is @code{nil}; -that value tells all the commands for working with tags tables that -they must ask for a tags table file name to use. +name in the variable @code{tags-file-name}, and not much more. The +variable's initial value is @code{nil}; that value tells all the +commands for working with tags tables that they must ask for a tags +table file name to use. Using @code{visit-tags-table} when a tags table is already loaded gives you a choice: you can add the new tags table to the current list diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi index a1f611cfb23..2290dec31e2 100644 --- a/doc/emacs/misc.texi +++ b/doc/emacs/misc.texi @@ -771,6 +771,14 @@ the output buffer. But if you change the value of the variable @code{shell-command-default-error-buffer} to a string, error output is inserted into a buffer of that name. +@vindex shell-command-dont-erase-buffer + By default, the output buffer is erased between shell commands. +If you change the value of the variable +@code{shell-command-dont-erase-buffer} to a non-@code{nil} value, +the output buffer is not erased. This variable also controls where to +set the point in the output buffer after the command completes; see the +documentation of the variable for details. + @node Interactive Shell @subsection Interactive Subshell @@ -1562,7 +1570,7 @@ process. You can solve this problem by setting up Emacs as an @dfn{edit server}, so that it ``listens'' for external edit requests and acts -accordingly. There are two ways to start an Emacs server: +accordingly. There are various ways to start an Emacs server: @itemize @findex server-start @@ -1575,15 +1583,51 @@ dies with the Emacs process. @cindex daemon, Emacs @item -Run Emacs as a @dfn{daemon}, using the @samp{--daemon} command-line -option. @xref{Initial Options}. When Emacs is started this way, it -calls @code{server-start} after initialization, and returns control to -the calling terminal instead of opening an initial frame; it then -waits in the background, listening for edit requests. +Run Emacs as a @dfn{daemon}, using one of the @samp{--daemon} command-line +options. @xref{Initial Options}. When Emacs is started this way, it +calls @code{server-start} after initialization and does not open an +initial frame. It then waits for edit requests from clients. + +@cindex systemd unit file +@item +If your operating system uses @command{systemd} to manage startup, +you can automatically start Emacs in daemon mode when you login +using the supplied @dfn{systemd unit file}. To activate this: +@example +systemctl --user enable emacs +@end example +(If your Emacs was installed into a non-standard location, you may +need to copy the @file{emacs.service} file to a standard directory +such as @file{~/.config/systemd/user/}.) + +@cindex socket activation, systemd, Emacs +@item +An external process can invoke the Emacs server when a connection +event occurs upon a specified socket and pass the socket to the new +Emacs server process. An instance of this is the socket functionality +of @command{systemd}: the @command{systemd} service creates a socket and +listens for connections on it; when @command{emacsclient} connects to +it for the first time, @command{systemd} can launch the Emacs server +and hand over the socket to it for servicing @command{emacsclient} +connections. A setup to use this functionality could be: + +@file{~/.config/systemd/user/emacs.socket}: +@example +[Socket] +ListenStream=/path/to/.emacs.socket + +[Install] +WantedBy=sockets.target +@end example + +(The @file{emacs.service} file described above must also be installed.) + +The @code{ListenStream} path will be the path that Emacs listens for +connections from @command{emacsclient}; this is a file of your choice. @end itemize @cindex @env{TEXEDIT} environment variable - Either way, once an Emacs server is started, you can use a shell + Once an Emacs server is started, you can use a shell command called @command{emacsclient} to connect to the Emacs process and tell it to visit a file. You can then set the @env{EDITOR} environment variable to @samp{emacsclient}, so that external programs diff --git a/doc/emacs/msdos.texi b/doc/emacs/msdos.texi index d0e9ab45c25..eb0fb17ddd1 100644 --- a/doc/emacs/msdos.texi +++ b/doc/emacs/msdos.texi @@ -507,32 +507,64 @@ the variable @code{w32-alt-is-meta} to a @code{nil} value. @findex w32-register-hot-key @findex w32-unregister-hot-key MS-Windows reserves certain key combinations, such as -@kbd{@key{Alt}-@key{TAB}}, for its own use. These key combinations are -intercepted by the system before Emacs can see them. You can use the -@code{w32-register-hot-key} function to allow a key sequence to be -seen by Emacs instead of being grabbed by Windows. This function -registers a key sequence as a @dfn{hot key}, overriding the special -meaning of that key sequence for Windows. (MS-Windows is told that -the key sequence is a hot key only when one of the Emacs windows has -focus, so that the special keys still have their usual meaning for -other Windows applications.) - - The argument to @code{w32-register-hot-key} must be a single key, -with or without modifiers, in vector form that would be acceptable to -@code{define-key}. The meta modifier is interpreted as the @key{Alt} -key if @code{w32-alt-is-meta} is @code{t} (the default), and the hyper -modifier is always interpreted as the Windows key (usually labeled -with @key{start} and the Windows logo). If the function succeeds in -registering the key sequence, it returns the hotkey ID, a number; -otherwise it returns @code{nil}. +@kbd{@key{Alt}-@key{TAB}} and a number of Windows key combinations, +for its own use. These key combinations are intercepted by the system +before Emacs can see them. Also, on Windows 10, all Windows key +combinations are reserved by the system in such a way that they are +never propagated to applications, even if the system does not +currently define a hotkey on the specific combination. You can use +the @code{w32-register-hot-key} function to allow a key sequence to be +seen by Emacs instead of being grabbed by Windows. When registered as +a hot key, the key combination is pulled out of the system's input +queue before it is handled by Windows, effectively overriding the +special meaning of that key sequence for Windows. The override is +only effective when Emacs is active; with other applications on the +foreground the keys behave normally. + + The argument to @code{w32-register-hot-key} must be a single key with a +single modifier, in vector form that would be acceptable to +@code{define-key}. The control and shift modifiers have no effect on the +argument. The meta modifier is interpreted as the @key{Alt} key if +@code{w32-alt-is-meta} is @code{t} (the default), and the super and hyper +modifiers are interpreted according to the bindings of +@code{w32-lwindow-modifier} and @code{w32-rwindow-modifier}. Additionally, a +modifier with the trailing dash but with no key indicates that all +Windows defined hotkeys for that modifier are to be overridden in the +favor of Emacs. @kindex M-TAB@r{, (MS-Windows)} @cindex @kbd{M-@key{TAB}} vs @kbd{@key{Alt}-@key{TAB}} (MS-Windows) @cindex @kbd{@key{Alt}-@key{TAB}} vs @kbd{M-@key{TAB}} (MS-Windows) For example, @code{(w32-register-hot-key [M-tab])} lets you use -@kbd{M-@key{TAB}} normally in Emacs; for instance, to complete the word or -symbol at point at top level, or to complete the current search string -against previously sought strings during incremental search. +@kbd{M-@key{TAB}} normally in Emacs; for instance, to complete the +word or symbol at point at top level, or to complete the current +search string against previously sought strings during incremental +search. @code{(w32-register-hot-key [s-])} with +@code{w32-lwindow-modifier} bound to @code{super} disables all the +Windows' own Windows key based shortcuts.@footnote{There is one known +exception: The combination @kbd{@key{Windows}-@key{L}} that locks the +workstation is handled by the system on a lower level. For this +reason, @code{w32-register-hot-key} cannot override this key +combination - it always locks the computer.} + + Note that @code{w32-register-hot-key} checks the +@code{w32-[lr]window-modifier} values at the time of the function +call. Thus, you can set @code{w32-lwindow-modifier} as @code{super}, +then call @code{(w32-register-hot-key [s-r])}, and finally set +@code{w32-rwindow-modifier} as @code{super} as well. The result is +that the left Windows key together with @key{R} invokes whichever +function you have bound for the combination in Emacs, and the right +Windows key and @key{R} opens the Windows @code{Run} dialog. + + The hotkey registrations always also include all the shift and +control modifier combinations for the given hotkey; that is, +registering @kbd{s-@key{a}} as a hotkey gives you @kbd{S-s-@key{a}}, +@kbd{C-s-@key{a}} and @kbd{C-S-s-@key{a}} as well. + + On Windows 98 and ME, the hotkey registration is more restricted. +The desired hotkey must always be fully specified, and +@code{w32-phantom-key-code} can be customized to achieve desired +results. The function @code{w32-unregister-hot-key} reverses the effect of @code{w32-register-hot-key} for its argument key sequence. @@ -611,12 +643,7 @@ keys are passed to Windows or swallowed by Emacs. If the value is otherwise it is passed to Windows. The default is @code{t} for both of these variables. Passing each of these keys to Windows produces its normal effect: for example, @kbd{@key{Lwindow}} opens the -@code{Start} menu, etc.@footnote{ -Some combinations of the ``Windows'' keys with other keys are caught -by Windows at a low level in a way that Emacs currently cannot prevent. -For example, @kbd{@key{Lwindow} r} always pops up the Windows -@samp{Run} dialog. Customizing the value of -@code{w32-phantom-key-code} might help in some cases, though.} +@code{Start} menu, etc. @vindex w32-recognize-altgr @kindex AltGr @r{(MS-Windows)} diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi index f28488e4545..6c513c9a607 100644 --- a/doc/emacs/text.texi +++ b/doc/emacs/text.texi @@ -412,6 +412,7 @@ beginning of a line. @cindex mode, Electric Quote @cindex curly quotes @cindex curved quotes +@cindex guillemets @findex electric-quote-mode One common way to quote is the typewriter convention, which quotes using straight apostrophes @t{'like this'} or double-quotes @t{"like @@ -420,9 +421,15 @@ left and right single or double quotation marks @t{‘like this’} or @t{“like this”}. In text files, typewriter quotes are simple and portable; curved quotes are less ambiguous and typically look nicer. +@vindex electric-quote-chars Electric Quote mode makes it easier to type curved quotes. As you type characters it optionally converts @t{`} to @t{‘}, @t{'} to @t{’}, -@t{``} to @t{“}, and @t{''} to @t{”}. +@t{``} to @t{“}, and @t{''} to @t{”}. It's possible to change the +default quotes listed above, by customizing the variable +@code{electric-quote-chars}, a list of four characters, where the +items correspond to the left single quote, the right single quote, the +left double quote and the right double quote, respectively, whose +default value is @code{'(?‘ ?’ ?“ ?”)}. @vindex electric-quote-paragraph @vindex electric-quote-comment @@ -443,7 +450,10 @@ type @kbd{C-q `} or @kbd{C-q '} instead of @kbd{`} or @kbd{'}. To insert a curved quote even when Electric Quote is disabled or inactive, you can type @kbd{C-x 8 [} for @t{‘}, @kbd{C-x 8 ]} for @t{’}, @kbd{C-x 8 @{} for @t{“}, and @kbd{C-x 8 @}} for @t{”}. -@xref{Inserting Text}. +@xref{Inserting Text}. Note that the value of +@code{electric-quote-chars} does not affect these keybindings, they +are not keybindings of @code{electric-quote-mode} but bound in +@code{global-map}. @node Filling @section Filling Text diff --git a/doc/emacs/trouble.texi b/doc/emacs/trouble.texi index 7a5defabf09..fbd13c8a58a 100644 --- a/doc/emacs/trouble.texi +++ b/doc/emacs/trouble.texi @@ -417,19 +417,22 @@ first @kbd{C-g} properly, then the second one will get you back to the shell. When you resume Emacs after a suspension caused by emergency escape, -it asks two questions before going back to what it had been doing: +it reports the resumption and asks a question or two before going back +to what it had been doing: @example +Emacs is resuming after an emergency escape. Auto-save? (y or n) Abort (and dump core)? (y or n) @end example @noindent -Answer each one with @kbd{y} or @kbd{n} followed by @key{RET}. +Answer each question with @kbd{y} or @kbd{n} followed by @key{RET}. Saying @kbd{y} to @samp{Auto-save?} causes immediate auto-saving of all modified buffers in which auto-saving is enabled. Saying @kbd{n} -skips this. +skips this. This question is omitted if Emacs is in a state where +auto-saving cannot be done safely. Saying @kbd{y} to @samp{Abort (and dump core)?} causes Emacs to crash, dumping core. This is to enable a wizard to figure out why |