Merge from origin/emacs-26
0276743
(origin/emacs-26) Doc string fix in latin-alt.elc9269af
Minor improvements in package.texi898a3e4
Minor improvement in Emacs user manual8f7d718
* doc/lispref/anti.texi (Antinews): Replace 25.2 with 25.3.989d0af
Improve documentation of mini-window resizing923e415
More changes in the Emacs manual565adf2
Clarify that text-quoting-style doesn't affect *Info* (Bug#24...2dd273b
Mention that shell quoting of % on w32 may fail (Bug#19350)19fa6d5
Fix --no-build-details for w32 and macOS979944c
* doc/lispref/anti.texi (Antinews): Add some more antinews.c2727e3
Fix crashes when run with --no-build-detailsdc08490
More changes for the manual04c5bd5
Doc fixes for process functions (Bug#30349)e209034
Fix shr and CSS 4 color maps5fe8192
Yet another round of improvements in the manual Conflicts: doc/emacs/files.texi test/lisp/subr-tests.el
This commit is contained in:
commit
875cb835f0
43 changed files with 484 additions and 328 deletions
|
@ -8,7 +8,7 @@
|
|||
@c Update the emacs.texi Antinews menu entry with the above version number.
|
||||
|
||||
For those users who live backwards in time, here is information
|
||||
about downgrading to Emacs version 25.2. We hope you will enjoy the
|
||||
about downgrading to Emacs version 25.3. We hope you will enjoy the
|
||||
greater simplicity that results from the absence of many @w{Emacs
|
||||
@value{EMACSVER}} features.
|
||||
|
||||
|
@ -47,7 +47,7 @@ development will make that unnecessary.
|
|||
|
||||
@item
|
||||
The @option{--fg-daemon} is gone, leaving only @option{--daemon}. No
|
||||
need to procrastinate on the dilemma whether you do or don't want the
|
||||
need to procrastinate on the dilemma whether you do or do not want the
|
||||
new shiny ``headless Emacs'' thingy. Hail, simplicity!
|
||||
|
||||
@item
|
||||
|
@ -59,7 +59,7 @@ should be monochrome, but you will have to keep downgrading to older
|
|||
Emacs versions to have that feature back.)
|
||||
|
||||
@item
|
||||
Emacs 25.2 no longer supports magic signatures of the form
|
||||
Emacs 25.3 no longer supports magic signatures of the form
|
||||
@samp{#!/usr/bin/env @var{interpreter}} in scripts. Moving back in
|
||||
time means you are getting closer to the ideal of the original Unix
|
||||
design where all the interpreters lived in a single directory
|
||||
|
@ -70,11 +70,11 @@ ballast.
|
|||
The double-buffering feature of Emacs display on X has been removed.
|
||||
We decided that its complexity and a few random surprising
|
||||
side-effects aren't justified by the gains, even though those gains
|
||||
were hailed in some quarters. Yes, Emacs 25.2 will flicker in some
|
||||
use cases, but we are sure Emacs users will be able to suck it, a they
|
||||
have been doing for years. Since this feature is gone, we've also
|
||||
removed the @code{inhibit-double-buffering} frame parameter, which is
|
||||
now unnecessary.
|
||||
were hailed in some quarters. Yes, Emacs 25.3 will flicker in some
|
||||
use cases, but we are sure Emacs users will be able to suck it, as
|
||||
they have been doing for years. Since this feature is gone, we've
|
||||
also removed the @code{inhibit-double-buffering} frame parameter,
|
||||
which is now unnecessary.
|
||||
|
||||
@item
|
||||
Non-breaking hyphens and ASCII characters displayed instead of
|
||||
|
@ -137,7 +137,7 @@ all those fancy options!
|
|||
|
||||
@item
|
||||
The complication known as ``single-line horizontal scrolling'' is no
|
||||
longer with you in Emacs 25.2. This feature was a bow to ``other
|
||||
longer with you in Emacs 25.3. This feature was a bow to ``other
|
||||
editors''; instead, let those other editors bow to Emacs by hscrolling
|
||||
the entire window at all times. Repeat after me: ``The Emacs way is
|
||||
the Only Way!''
|
||||
|
@ -166,5 +166,5 @@ removed. Examples include @code{replace-buffer-contents} and
|
|||
|
||||
@item
|
||||
To keep up with decreasing computer memory capacity and disk space, many
|
||||
other functions and files have been eliminated in Emacs 25.2.
|
||||
other functions and files have been eliminated in Emacs 25.3.
|
||||
@end itemize
|
||||
|
|
|
@ -40,7 +40,6 @@ explained in the corresponding sections.
|
|||
@menu
|
||||
* Auto Reverting the Buffer Menu:: Auto Revert of the Buffer Menu.
|
||||
* Auto Reverting Dired:: Auto Revert of Dired buffers.
|
||||
* Supporting additional buffers:: How to add more Auto Revert support.
|
||||
@end menu
|
||||
|
||||
@node Auto Reverting the Buffer Menu
|
||||
|
@ -68,13 +67,9 @@ automatically erasing the marks.
|
|||
@node Auto Reverting Dired
|
||||
@subsection Auto Reverting Dired buffers
|
||||
|
||||
Auto-reverting Dired buffers currently works on GNU or Unix style
|
||||
operating systems. It may not work satisfactorily on some other
|
||||
systems.
|
||||
|
||||
Dired buffers only auto-revert when the file list of the buffer's main
|
||||
directory changes (e.g., when a new file is added). They do not
|
||||
auto-revert when information about a particular file changes
|
||||
directory changes (e.g., when a new file is added or deleted). They
|
||||
do not auto-revert when information about a particular file changes
|
||||
(e.g., when the size changes) or when inserted subdirectories change.
|
||||
To be sure that @emph{all} listed information is up to date, you have
|
||||
to manually revert using @kbd{g}, @emph{even} if auto-reverting is
|
||||
|
@ -98,99 +93,10 @@ If you want auto-reverting to resume in the presence of marks and
|
|||
flags, mark the buffer non-modified using @kbd{M-~}. However, adding,
|
||||
deleting or changing marks or flags will mark it modified again.
|
||||
|
||||
Remote Dired buffers are not auto-reverted (because it may be slow).
|
||||
Neither are Dired buffers for which you used shell wildcards or file
|
||||
arguments to list only some of the files. @file{*Find*} and
|
||||
@file{*Locate*} buffers do not auto-revert either.
|
||||
Remote Dired buffers are currently not auto-reverted. Neither are
|
||||
Dired buffers for which you used shell wildcards or file arguments to
|
||||
list only some of the files. @file{*Find*} and @file{*Locate*}
|
||||
buffers do not auto-revert either.
|
||||
|
||||
@c FIXME? This should be in the elisp manual?
|
||||
@node Supporting additional buffers
|
||||
@subsection Adding Support for Auto-Reverting additional Buffers.
|
||||
|
||||
This section is intended for Elisp programmers who would like to add
|
||||
support for auto-reverting new types of buffers.
|
||||
|
||||
To support auto-reverting the buffer must first of all have a suitable
|
||||
@code{revert-buffer-function}. @xref{Definition of
|
||||
revert-buffer-function,, Reverting, elisp, the Emacs Lisp Reference Manual}.
|
||||
|
||||
In addition, it must have a suitable @code{buffer-stale-function}.
|
||||
|
||||
@c FIXME only defvar in all of doc/emacs!
|
||||
@defvar buffer-stale-function
|
||||
The value of this variable is a function to check whether a
|
||||
buffer needs reverting. This should be a function with one optional
|
||||
argument @var{noconfirm}. The function should return non-@code{nil}
|
||||
if the buffer should be reverted. The buffer is current when this
|
||||
function is called.
|
||||
|
||||
While this function is mainly intended for use in auto-reverting, it
|
||||
could be used for other purposes as well. For instance, if
|
||||
auto-reverting is not enabled, it could be used to warn the user that
|
||||
the buffer needs reverting. The idea behind the @var{noconfirm}
|
||||
argument is that it should be @code{t} if the buffer is going to be
|
||||
reverted without asking the user and @code{nil} if the function is
|
||||
just going to be used to warn the user that the buffer is out of date.
|
||||
In particular, for use in auto-reverting, @var{noconfirm} is @code{t}.
|
||||
If the function is only going to be used for auto-reverting, you can
|
||||
ignore the @var{noconfirm} argument.
|
||||
|
||||
If you just want to automatically auto-revert every
|
||||
@code{auto-revert-interval} seconds (like the Buffer Menu), use:
|
||||
|
||||
@example
|
||||
(setq-local buffer-stale-function
|
||||
#'(lambda (&optional noconfirm) 'fast))
|
||||
@end example
|
||||
|
||||
@noindent
|
||||
in the buffer's mode function.
|
||||
|
||||
The special return value @samp{fast} tells the caller that the need
|
||||
for reverting was not checked, but that reverting the buffer is fast.
|
||||
It also tells Auto Revert not to print any revert messages, even if
|
||||
@code{auto-revert-verbose} is non-@code{nil}. This is important, as
|
||||
getting revert messages every @code{auto-revert-interval} seconds can
|
||||
be very annoying. The information provided by this return value could
|
||||
also be useful if the function is consulted for purposes other than
|
||||
auto-reverting.
|
||||
@end defvar
|
||||
|
||||
Once the buffer has a suitable @code{revert-buffer-function} and
|
||||
@code{buffer-stale-function}, several problems usually remain.
|
||||
|
||||
The buffer will only auto-revert if it is marked unmodified. Hence,
|
||||
you will have to make sure that various functions mark the buffer
|
||||
modified if and only if either the buffer contains information that
|
||||
might be lost by reverting, or there is reason to believe that the user
|
||||
might be inconvenienced by auto-reverting, because he is actively
|
||||
working on the buffer. The user can always override this by manually
|
||||
adjusting the modified status of the buffer. To support this, calling
|
||||
the @code{revert-buffer-function} on a buffer that is marked
|
||||
unmodified should always keep the buffer marked unmodified.
|
||||
|
||||
It is important to assure that point does not continuously jump around
|
||||
as a consequence of auto-reverting. Of course, moving point might be
|
||||
inevitable if the buffer radically changes.
|
||||
|
||||
You should make sure that the @code{revert-buffer-function} does not
|
||||
print messages that unnecessarily duplicate Auto Revert's own messages,
|
||||
displayed if @code{auto-revert-verbose} is @code{t}, and effectively
|
||||
override a @code{nil} value for @code{auto-revert-verbose}. Hence,
|
||||
adapting a mode for auto-reverting often involves getting rid of such
|
||||
messages. This is especially important for buffers that automatically
|
||||
revert every @code{auto-revert-interval} seconds.
|
||||
|
||||
If the new auto-reverting is part of Emacs, you should mention it
|
||||
in the documentation string of @code{global-auto-revert-non-file-buffers}.
|
||||
|
||||
@ifinfo
|
||||
Similarly, you should add a node to this chapter's menu. This node
|
||||
@end ifinfo
|
||||
@ifnotinfo
|
||||
Similarly, you should add a section to this chapter. This section
|
||||
@end ifnotinfo
|
||||
should at the very least make clear whether enabling auto-reverting
|
||||
for the buffer reliably assures that all information in the buffer is
|
||||
completely up to date (or will be after @code{auto-revert-interval}
|
||||
seconds).
|
||||
Note that auto-reverting Dired buffers may not work satisfactorily on
|
||||
some systems.
|
||||
|
|
|
@ -189,8 +189,9 @@ Move forward one character (@code{forward-char}).
|
|||
This command (@code{right-char}) behaves like @kbd{C-f}, with one
|
||||
exception: when editing right-to-left scripts such as Arabic, it
|
||||
instead moves @emph{backward} if the current paragraph is a
|
||||
right-to-left paragraph. @xref{Bidirectional Editing}. If
|
||||
@code{visual-order-cursor-movement} is non-@code{nil}, this command
|
||||
right-to-left paragraph. @xref{Bidirectional Editing}.
|
||||
|
||||
If @code{visual-order-cursor-movement} is non-@code{nil}, this command
|
||||
moves to the character that is to the right of the current screen
|
||||
position, moving to the next or previous screen line as appropriate.
|
||||
Note that this might potentially move point many buffer positions
|
||||
|
@ -206,10 +207,10 @@ Move backward one character (@code{backward-char}).
|
|||
@findex left-char
|
||||
This command (@code{left-char}) behaves like @kbd{C-b}, except it
|
||||
moves @emph{forward} if the current paragraph is right-to-left.
|
||||
@xref{Bidirectional Editing}. If @code{visual-order-cursor-movement}
|
||||
is non-@code{nil}, this command moves to the character that is to the
|
||||
left of the current screen position, moving to the previous or next
|
||||
screen line as appropriate.
|
||||
@xref{Bidirectional Editing}.
|
||||
|
||||
The variable @code{visual-order-cursor-movement} affects this like
|
||||
@key{RIGHT}, but moving left instead of right on the screen.
|
||||
|
||||
@item C-n
|
||||
@itemx @key{DOWN}
|
||||
|
|
|
@ -384,6 +384,10 @@ grep -nH -e foo *.el | grep bar | grep toto
|
|||
can find the corresponding lines in the original files using @w{@kbd{C-x
|
||||
`}}, @key{RET}, and so forth, just like compilation errors.
|
||||
|
||||
As with compilation commands (@pxref{Compilation}), while the grep
|
||||
command runs, the mode line is updated to show the number of matches
|
||||
that have been seen so far.
|
||||
|
||||
Some grep programs accept a @samp{--color} option to output special
|
||||
markers around matches for the purpose of highlighting. You can make
|
||||
use of this feature by setting @code{grep-highlight-matches} to
|
||||
|
@ -607,15 +611,16 @@ to recompile and restart the program.
|
|||
@vindex gud-tooltip-echo-area
|
||||
GUD Tooltip mode is a global minor mode that adds tooltip support to
|
||||
GUD@. To toggle this mode, type @kbd{M-x gud-tooltip-mode}. It is
|
||||
disabled by default. If enabled, you can move the mouse cursor over a
|
||||
disabled by default. If enabled, you can move the mouse pointer over a
|
||||
variable, a function, or a macro (collectively called
|
||||
@dfn{identifiers}) to show their values in tooltips
|
||||
(@pxref{Tooltips}). Alternatively, mark an identifier or an
|
||||
expression by dragging the mouse over it, then leave the mouse in the
|
||||
marked area to have the value of the expression displayed in a
|
||||
tooltip. The GUD Tooltip mode takes effect in the GUD interaction
|
||||
buffer, and in all source buffers with major modes listed in the
|
||||
variable @code{gud-tooltip-modes}. If the variable
|
||||
(@pxref{Tooltips}). If just placing the mouse pointer over an
|
||||
expression doesn't show the value of the expression you had in mind,
|
||||
you can tell Emacs more explicitly what expression to evaluate by
|
||||
dragging the mouse over the expression, then leaving the mouse inside
|
||||
the marked area. The GUD Tooltip mode takes effect in the GUD
|
||||
interaction buffer, and in all source buffers with major modes listed
|
||||
in the variable @code{gud-tooltip-modes}. If the variable
|
||||
@code{gud-tooltip-echo-area} is non-@code{nil}, or if you turned off
|
||||
the tooltip mode, values are shown in the echo area instead of a
|
||||
tooltip.
|
||||
|
@ -1217,9 +1222,9 @@ edit its value.
|
|||
@vindex gdb-delete-out-of-scope
|
||||
If the variable @code{gdb-delete-out-of-scope} is non-@code{nil}
|
||||
(the default value), Emacs automatically deletes watch expressions
|
||||
which go out of scope. Sometimes, when re-entering the same function,
|
||||
it may be useful to set this value to @code{nil} so that you don't
|
||||
need to recreate the watch expression.
|
||||
which go out of scope. Sometimes, when your program re-enters the
|
||||
same function many times, it may be useful to set this value to
|
||||
@code{nil} so that you don't need to recreate the watch expression.
|
||||
|
||||
@vindex gdb-use-colon-colon-notation
|
||||
If the variable @code{gdb-use-colon-colon-notation} is
|
||||
|
@ -1284,7 +1289,7 @@ execution control commands.
|
|||
value), interruption and continuation commands apply to all threads,
|
||||
so you can halt or continue all your threads with one command using
|
||||
@code{gud-stop-subjob} and @code{gud-cont}, respectively. The
|
||||
@samp{Go} button is shown on the toolbar when at least one thread is
|
||||
@samp{Go} button is shown on the tool bar when at least one thread is
|
||||
stopped, whereas @samp{Stop} button is shown when at least one thread
|
||||
is running.
|
||||
|
||||
|
@ -1292,8 +1297,8 @@ is running.
|
|||
|
||||
When @code{gdb-gud-control-all-threads} is @code{nil}, only the
|
||||
current thread is stopped/continued. @samp{Go} and @samp{Stop}
|
||||
buttons on the GUD toolbar are shown depending on the state of current
|
||||
thread.
|
||||
buttons on the GUD tool bar are shown depending on the state of
|
||||
current thread.
|
||||
@end table
|
||||
|
||||
You can change the current value of @code{gdb-gud-control-all-threads}
|
||||
|
|
|
@ -12,7 +12,7 @@ planned or past events. It also has facilities for managing your
|
|||
appointments, and keeping track of how much time you spend working on
|
||||
certain projects.
|
||||
|
||||
To enter the calendar, type @kbd{M-x calendar}; this displays a
|
||||
To enter the calendar, type @kbd{M-x calendar}. This displays a
|
||||
three-month calendar centered on the current month, with point on the
|
||||
current date. With a numeric argument, as in @kbd{C-u M-x calendar}, it
|
||||
prompts you for the month and year to be the center of the three-month
|
||||
|
@ -126,10 +126,11 @@ whole year.
|
|||
|
||||
The easiest way to remember these commands is to consider months and
|
||||
years analogous to paragraphs and pages of text, respectively. But
|
||||
the commands themselves are not quite analogous. The ordinary Emacs
|
||||
paragraph commands move to the beginning or end of a paragraph,
|
||||
whereas these month and year commands move by an entire month or an
|
||||
entire year, keeping the same date within the month or year.
|
||||
the calendar movement commands themselves do not quite parallel those
|
||||
for movement through text: the ordinary Emacs paragraph commands move
|
||||
to the beginning or end of a paragraph, whereas these month and year
|
||||
commands move by an entire month or an entire year, keeping the same
|
||||
date within the month or year.
|
||||
|
||||
All these commands accept a numeric argument as a repeat count.
|
||||
For convenience, the digit keys and the minus sign specify numeric
|
||||
|
|
|
@ -41,10 +41,11 @@ corresponding long form.
|
|||
type. However, you don't have to spell out the whole option name; any
|
||||
unambiguous abbreviation is enough. When a long option takes an
|
||||
argument, you can use either a space or an equal sign to separate the
|
||||
option name and the argument. Thus, you can write either
|
||||
@samp{--display sugar-bombs:0.0} or @samp{--display=sugar-bombs:0.0}.
|
||||
We recommend an equal sign because it makes the relationship clearer,
|
||||
and the tables below always show an equal sign.
|
||||
option name and the argument. Thus, for the option @samp{--display},
|
||||
you can write either @samp{--display sugar-bombs:0.0} or
|
||||
@samp{--display=sugar-bombs:0.0}. We recommend an equal sign because
|
||||
it makes the relationship clearer, and the tables below always show an
|
||||
equal sign.
|
||||
|
||||
@cindex initial options (command line)
|
||||
@cindex action options (command line)
|
||||
|
@ -104,7 +105,7 @@ If the startup buffer is disabled (@pxref{Entering Emacs}), then
|
|||
starting Emacs with one file argument displays the buffer visiting
|
||||
@var{file} in a single window. With two file arguments, Emacs
|
||||
displays the files in two different windows. With more than two file
|
||||
argument, Emacs displays the last file specified in one window, plus
|
||||
arguments, Emacs displays the last file specified in one window, plus
|
||||
another window with a Buffer Menu showing all the other files
|
||||
(@pxref{Several Buffers}). To inhibit using the Buffer Menu for this,
|
||||
change the variable @code{inhibit-startup-buffer-menu} to @code{t}.
|
||||
|
@ -326,7 +327,7 @@ in your initialization file (@pxref{Entering Emacs}).
|
|||
@opindex -Q
|
||||
@itemx --quick
|
||||
@opindex --quick
|
||||
Start emacs with minimum customizations. This is similar to using @samp{-q},
|
||||
Start Emacs with minimum customizations. This is similar to using @samp{-q},
|
||||
@samp{--no-site-file}, @samp{--no-site-lisp}, and @samp{--no-splash}
|
||||
together. This also stops Emacs from processing X resources by
|
||||
setting @code{inhibit-x-resources} to @code{t} (@pxref{Resources}).
|
||||
|
@ -337,7 +338,7 @@ setting @code{inhibit-x-resources} to @code{t} (@pxref{Resources}).
|
|||
@opindex --daemon
|
||||
@itemx --bg-daemon[=@var{name}]
|
||||
@itemx --fg-daemon[=@var{name}]
|
||||
Start Emacs as a daemon---after Emacs starts up, it starts the Emacs
|
||||
Start Emacs as a daemon: after Emacs starts up, it starts the Emacs
|
||||
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
|
||||
|
@ -753,9 +754,10 @@ name under @file{/Software/GNU/Emacs}; first in the
|
|||
there, in the @file{HKEY_LOCAL_MACHINE} section. Finally, if Emacs
|
||||
still cannot determine the values, compiled-in defaults are used.
|
||||
|
||||
In addition to the environment variables above, you can also add many
|
||||
of the settings which on X belong in the @file{.Xdefaults} file
|
||||
(@pxref{X Resources}) to the @file{/Software/GNU/Emacs} registry key.
|
||||
In addition to the environment variables above, you can also add
|
||||
settings to the @file{/Software/GNU/Emacs} registry key to specify X
|
||||
resources (@pxref{X Resources}). Most of the settings you can specify
|
||||
in your @file{.Xdefaults} file can be set from that registry key.
|
||||
|
||||
@node Display X
|
||||
@appendixsec Specifying the Display Name
|
||||
|
@ -886,7 +888,7 @@ Specify the color for the mouse cursor when the mouse is in the Emacs window.
|
|||
@itemx --reverse-video
|
||||
@opindex --reverse-video
|
||||
@cindex reverse video, command-line argument
|
||||
Reverse video---swap the foreground and background colors.
|
||||
Reverse video: swap the foreground and background colors.
|
||||
@item --color=@var{mode}
|
||||
@opindex --color
|
||||
@cindex standard colors on a character terminal
|
||||
|
@ -1023,11 +1025,12 @@ width. If you start with an @samp{x} followed by an integer, Emacs
|
|||
interprets it as the height. Thus, @samp{81} specifies just the
|
||||
width; @samp{x45} specifies just the height.
|
||||
|
||||
If you start with @samp{+} or @samp{-}, that introduces an offset,
|
||||
which means both sizes are omitted. Thus, @samp{-3} specifies the
|
||||
@var{xoffset} only. (If you give just one offset, it is always
|
||||
@var{xoffset}.) @samp{+3-3} specifies both the @var{xoffset} and the
|
||||
@var{yoffset}, placing the frame near the bottom left of the screen.
|
||||
If you start the geometry with @samp{+} or @samp{-}, that introduces
|
||||
an offset, which means both sizes are omitted. Thus, @samp{-3}
|
||||
specifies the @var{xoffset} only. (If you give just one offset, it is
|
||||
always @var{xoffset}.) @samp{+3-3} specifies both the @var{xoffset}
|
||||
and the @var{yoffset}, placing the frame near the bottom left of the
|
||||
screen.
|
||||
|
||||
You can specify a default for any or all of the fields in your X
|
||||
resource file (@pxref{Resources}), and then override selected fields
|
||||
|
|
|
@ -1859,7 +1859,7 @@ key.
|
|||
Many keyboards have a numeric keypad on the right hand side.
|
||||
The numeric keys in the keypad double up as cursor motion keys,
|
||||
toggled by a key labeled @samp{Num Lock}. By default, Emacs
|
||||
translates these keys to the corresponding keys in the main keyboard.
|
||||
translates these keys to the corresponding keys on the main keyboard.
|
||||
For example, when @samp{Num Lock} is on, the key labeled @samp{8} on
|
||||
the numeric keypad produces @code{kp-8}, which is translated to
|
||||
@kbd{8}; when @samp{Num Lock} is off, the same key produces
|
||||
|
|
|
@ -991,16 +991,15 @@ expressions to highlight in different ways.
|
|||
@kindex M-s h u
|
||||
@kindex C-x w r
|
||||
@findex unhighlight-regexp
|
||||
Unhighlight @var{regexp} (@code{unhighlight-regexp}).
|
||||
|
||||
If you invoke this from the menu, you select the expression to
|
||||
unhighlight from a list. If you invoke this from the keyboard, you
|
||||
use the minibuffer. It will show the most recently added regular
|
||||
expression; use @kbd{M-n} to show the next older expression and
|
||||
@kbd{M-p} to select the next newer expression. (You can also type the
|
||||
expression by hand, with completion.) When the expression you want to
|
||||
unhighlight appears in the minibuffer, press @kbd{@key{RET}} to exit
|
||||
the minibuffer and unhighlight it.
|
||||
Unhighlight @var{regexp} (@code{unhighlight-regexp}). If you invoke
|
||||
this from the menu, you select the expression to unhighlight from a
|
||||
list. If you invoke this from the keyboard, you use the minibuffer.
|
||||
It will show the most recently added regular expression; use @kbd{M-n}
|
||||
to show the next older expression and @kbd{M-p} to select the next
|
||||
newer expression. (You can also type the expression by hand, with
|
||||
completion.) When the expression you want to unhighlight appears in
|
||||
the minibuffer, press @kbd{@key{RET}} to exit the minibuffer and
|
||||
unhighlight it.
|
||||
|
||||
@item M-s h l @var{regexp} @key{RET} @var{face} @key{RET}
|
||||
@itemx C-x w l @var{regexp} @key{RET} @var{face} @key{RET}
|
||||
|
@ -1393,13 +1392,13 @@ the option @code{display-time-mode}. The information added to the mode
|
|||
line looks like this:
|
||||
|
||||
@example
|
||||
@var{hh}:@var{mm}pm @var{l.ll}
|
||||
@var{hh}:@var{mm}PM @var{l.ll}
|
||||
@end example
|
||||
|
||||
@noindent
|
||||
@vindex display-time-24hr-format
|
||||
Here @var{hh} and @var{mm} are the hour and minute, followed always by
|
||||
@samp{am} or @samp{pm}. @var{l.ll} is the average number, collected
|
||||
@samp{AM} or @samp{PM}. @var{l.ll} is the average number, collected
|
||||
for the last few minutes, of processes in the whole system that were
|
||||
either running or ready to run (i.e., were waiting for an available
|
||||
processor). (Some fields may be missing if your operating system
|
||||
|
|
|
@ -482,7 +482,6 @@ Auto Reverting Non-File Buffers
|
|||
|
||||
* Auto Reverting the Buffer Menu:: Auto Revert of the Buffer Menu.
|
||||
* Auto Reverting Dired:: Auto Revert of Dired buffers.
|
||||
* Supporting additional buffers:: How to add more Auto Revert support.
|
||||
@end ifnottex
|
||||
|
||||
Auto-Saving: Protection Against Disasters
|
||||
|
|
|
@ -116,8 +116,8 @@ the @samp{$}; alternatively, it can be enclosed in braces after the
|
|||
@file{/u/$@{FOO@}/test.c} are abbreviations for
|
||||
@file{/u/rms/hacks/test.c}. If the environment variable is not
|
||||
defined, no substitution occurs, so that the character @samp{$} stands
|
||||
for itself. Note that environment variables affect Emacs only if they
|
||||
are applied before Emacs is started.
|
||||
for itself. Note that environment variables set outside Emacs affect
|
||||
Emacs only if they are applied before Emacs is started.
|
||||
|
||||
To access a file with @samp{$} in its name, if the @samp{$} causes
|
||||
expansion, type @samp{$$}. This pair is converted to a single
|
||||
|
@ -167,7 +167,9 @@ minibuffer, you can abort the command by typing @kbd{C-g}. @xref{File
|
|||
Names}, for details about entering file names into minibuffers.
|
||||
|
||||
If the specified file exists but the system does not allow you to
|
||||
read it, an error message is displayed in the echo area. Otherwise,
|
||||
read it, an error message is displayed in the echo area (on GNU and
|
||||
Unix systems you might be able to visit such a file using the
|
||||
@samp{su} or @samp{sudo} methods; @pxref{Remote Files}). Otherwise,
|
||||
you can tell that @kbd{C-x C-f} has completed successfully by the
|
||||
appearance of new text on the screen, and by the buffer name shown in
|
||||
the mode line (@pxref{Mode Line}). Emacs normally constructs the
|
||||
|
@ -291,7 +293,8 @@ see @ref{Drag and Drop}, and @ref{Misc Dired Features}.
|
|||
|
||||
On text-mode terminals and on graphical displays when Emacs was
|
||||
built without a GUI toolkit, you can visit files via the menu-bar
|
||||
@samp{File} menu, which has a @samp{Visit New File} item.
|
||||
@samp{File} menu, which has the @samp{Visit New File} and the
|
||||
@samp{Open File} items.
|
||||
|
||||
Each time you visit a file, Emacs automatically scans its contents
|
||||
to detect what character encoding and end-of-line convention it uses,
|
||||
|
@ -638,7 +641,7 @@ you whether it should delete the excess backup versions. If it has
|
|||
any other value, then Emacs never automatically deletes backups.
|
||||
|
||||
Dired's @kbd{.} (Period) command can also be used to delete old versions.
|
||||
@xref{Dired Deletion}.
|
||||
@xref{Flagging Many Files}.
|
||||
|
||||
@node Backup Copying
|
||||
@subsubsection Copying vs.@: Renaming
|
||||
|
@ -738,7 +741,7 @@ survive a crash even if @code{fsync} works properly.
|
|||
The @code{write-region-inhibit-fsync} variable controls whether
|
||||
Emacs invokes @code{fsync} after saving a file. The variable's
|
||||
default value is @code{nil} when Emacs is interactive, and @code{t}
|
||||
when Emacs runs in batch mode (@pxref{Initial Options, batch mode}).
|
||||
when Emacs runs in batch mode (@pxref{Initial Options, Batch Mode}).
|
||||
|
||||
Emacs never uses @code{fsync} when writing auto-save files, as these
|
||||
files might lose data anyway.
|
||||
|
@ -751,7 +754,7 @@ files might lose data anyway.
|
|||
Simultaneous editing occurs when two users visit the same file, both
|
||||
make changes, and then both save them. If nobody is informed that
|
||||
this is happening, whichever user saves first would later find that
|
||||
his changes were lost.
|
||||
their changes were lost.
|
||||
|
||||
On some systems, Emacs notices immediately when the second user starts
|
||||
to change the file, and issues an immediate warning. On all systems,
|
||||
|
@ -952,12 +955,25 @@ discard your changes.)
|
|||
You can also tell Emacs to revert buffers periodically. To do this
|
||||
for a specific buffer, enable the minor mode Auto-Revert mode by
|
||||
typing @kbd{M-x auto-revert-mode}. This automatically reverts the
|
||||
current buffer every five seconds; you can change the interval through
|
||||
the variable @code{auto-revert-interval}. To do the same for all file
|
||||
buffers, type @kbd{M-x global-auto-revert-mode} to enable Global
|
||||
Auto-Revert mode. These minor modes do not check or revert remote
|
||||
files, because that is usually too slow. This behavior can be changed
|
||||
by setting the variable @code{auto-revert-remote-files} to non-@code{nil}.
|
||||
current buffer when its visited file changes on disk. To do the same
|
||||
for all file buffers, type @kbd{M-x global-auto-revert-mode} to enable
|
||||
Global Auto-Revert mode. These minor modes do not check or revert
|
||||
remote files, because that is usually too slow. This behavior can be
|
||||
changed by setting the variable @code{auto-revert-remote-files} to
|
||||
non-@code{nil}.
|
||||
|
||||
@cindex file notifications
|
||||
@vindex auto-revert-use-notify
|
||||
By default, Auto-Revert mode works using @dfn{file notifications},
|
||||
whereby changes in the filesystem are reported to Emacs by the OS.
|
||||
You can disable use of file notifications by customizing the variable
|
||||
@code{auto-revert-use-notify} to a @code{nil} value, then Emacs will
|
||||
check for file changes by polling every five seconds. You can change
|
||||
the polling interval through the variable @code{auto-revert-interval}.
|
||||
|
||||
Not all systems support file notifications; where they are not
|
||||
supported, @code{auto-revert-use-notify} will be @code{nil} by
|
||||
default.
|
||||
|
||||
One use of Auto-Revert mode is to ``tail'' a file such as a system
|
||||
log, so that changes made to that file by other programs are
|
||||
|
@ -1159,7 +1175,7 @@ this---saving them---updates the files themselves.
|
|||
|
||||
@vindex auto-save-list-file-prefix
|
||||
Emacs records information about interrupted sessions in files named
|
||||
@file{.saves-@var{pid}-@var{hostname}} in the directory
|
||||
@file{.saves-@var{pid}-@var{hostname}~} in the directory
|
||||
@file{~/.emacs.d/auto-save-list/}. This directory is determined by
|
||||
the variable @code{auto-save-list-file-prefix}. If you set
|
||||
@code{auto-save-list-file-prefix} to @code{nil}, sessions are not
|
||||
|
@ -1233,8 +1249,9 @@ named @file{/fsf}:
|
|||
listing} is a list of all the files in a directory. Emacs provides
|
||||
commands to create and delete directories, and to make directory
|
||||
listings in brief format (file names only) and verbose format (sizes,
|
||||
dates, and authors included). Emacs also includes a directory browser
|
||||
feature called Dired; see @ref{Dired}.
|
||||
dates, and other attributes included). Emacs also includes a
|
||||
directory browser feature called Dired, which you can invoke with
|
||||
@kbd{C-x d}; see @ref{Dired}.
|
||||
|
||||
@table @kbd
|
||||
@item C-x C-d @var{dir-or-pattern} @key{RET}
|
||||
|
@ -1315,6 +1332,9 @@ information about the @command{diff} program.
|
|||
The output of the @code{diff} command is shown using a major mode
|
||||
called Diff mode. @xref{Diff Mode}.
|
||||
|
||||
A (much more sophisticated) alternative is @kbd{M-x ediff}
|
||||
(@pxref{Top, Ediff, Ediff, ediff, The Ediff Manual}).
|
||||
|
||||
@findex diff-backup
|
||||
The command @kbd{M-x diff-backup} compares a specified file with its
|
||||
most recent backup. If you specify the name of a backup file,
|
||||
|
@ -1331,10 +1351,10 @@ would make to the file if you save the buffer.
|
|||
current window with that in the window that was the selected window
|
||||
before you selected the current one. (For more information about
|
||||
windows in Emacs, @ref{Windows}.) Comparison starts at point in each
|
||||
window, after pushing each initial point value on the mark ring in its
|
||||
respective buffer. Then it moves point forward in each window, one
|
||||
character at a time, until it reaches characters that don't match.
|
||||
Then the command exits.
|
||||
window, after pushing each initial point value on the mark ring
|
||||
(@pxref{Mark Ring}) in its respective buffer. Then it moves point
|
||||
forward in each window, one character at a time, until it reaches
|
||||
characters that don't match. Then the command exits.
|
||||
|
||||
If point in the two windows is followed by non-matching text when
|
||||
the command starts, @kbd{M-x compare-windows} tries heuristically to
|
||||
|
@ -1348,8 +1368,9 @@ skips one matching range or finds the start of another.
|
|||
whitespace. If the variable @code{compare-ignore-case} is
|
||||
non-@code{nil}, the comparison ignores differences in case as well.
|
||||
If the variable @code{compare-ignore-whitespace} is non-@code{nil},
|
||||
@code{compare-windows} normally ignores changes in whitespace, and a
|
||||
prefix argument turns that off.
|
||||
@code{compare-windows} by default ignores changes in whitespace, but a
|
||||
prefix argument turns that off for that single invocation of the
|
||||
command.
|
||||
|
||||
@cindex Smerge mode
|
||||
@findex smerge-mode
|
||||
|
@ -1419,7 +1440,7 @@ Move to the next hunk-start (@code{diff-hunk-next}).
|
|||
This command has a side effect: it @dfn{refines} the hunk you move to,
|
||||
highlighting its changes with better granularity. To disable this
|
||||
feature, type @kbd{M-x diff-auto-refine-mode} to toggle off the minor
|
||||
mode Diff Auto-Refine mode. To disable Diff Auto Refine mode by
|
||||
mode Diff Auto-Refine mode. To disable Diff Auto-Refine mode by
|
||||
default, add this to your init file (@pxref{Hooks}):
|
||||
|
||||
@example
|
||||
|
@ -1548,17 +1569,17 @@ modify the original source files rather than the patched source files.
|
|||
@section Copying, Naming and Renaming Files
|
||||
|
||||
Emacs has several commands for copying, naming, and renaming files.
|
||||
All of them read two file names @var{old} and @var{new} using the
|
||||
minibuffer, and then copy or adjust a file's name accordingly; they do
|
||||
not accept wildcard file names.
|
||||
All of them read two file names, @var{old} (or @var{target}) and
|
||||
@var{new}, using the minibuffer, and then copy or adjust a file's name
|
||||
accordingly; they do not accept wildcard file names.
|
||||
|
||||
In all these commands, if the argument @var{new} is just a directory
|
||||
name, the real new name is in that directory, with the same
|
||||
name (@pxref{Directory Names,,, elisp, the Emacs Lisp Reference
|
||||
Manual}), the real new name is in that directory, with the same
|
||||
non-directory component as @var{old}. For example, the command
|
||||
@w{@kbd{M-x rename-file @key{RET} ~/foo @key{RET} /tmp/ @key{RET}}}
|
||||
renames @file{~/foo} to @file{/tmp/foo}. On GNU and other POSIX-like
|
||||
systems, directory names end in @samp{/}. @xref{Directory Names,,,
|
||||
elisp, the Emacs Lisp Reference Manual}.
|
||||
systems, directory names end in @samp{/}.
|
||||
|
||||
All these commands ask for confirmation when the new file name already
|
||||
exists.
|
||||
|
@ -1811,8 +1832,8 @@ To carry out this request, Emacs uses a remote-login program such as
|
|||
@command{ssh}.
|
||||
You must always specify in the file name which method to use---for
|
||||
example, @file{/ssh:@var{user}@@@var{host}:@var{filename}} uses
|
||||
@command{ssh}. When you specify the pseudo method @var{-} in the file
|
||||
name, Emacs chooses the method as follows:
|
||||
@command{ssh}. When you specify the pseudo method @samp{-} in the
|
||||
file name, Emacs chooses the method as follows:
|
||||
|
||||
@enumerate
|
||||
@item
|
||||
|
|
|
@ -78,7 +78,6 @@ the undo command.
|
|||
previous undo commands, use @kbd{M-x undo-only}. This is like
|
||||
@code{undo}, but will not redo changes you have just undone.
|
||||
|
||||
@c What about @kbd{M-x revert-buffer}? --xfq
|
||||
If you notice that a buffer has been modified accidentally, the
|
||||
easiest way to recover is to type @kbd{C-/} repeatedly until the stars
|
||||
disappear from the front of the mode line (@pxref{Mode Line}).
|
||||
|
@ -90,6 +89,10 @@ the last change you made undone, you will see whether it was an
|
|||
intentional change. If it was an accident, leave it undone. If it
|
||||
was deliberate, redo the change as described above.
|
||||
|
||||
Alternatively, you can discard all the changes since the buffer was
|
||||
last visited or saved with @kbd{M-x revert-buffer}
|
||||
(@pxref{Reverting}).
|
||||
|
||||
@cindex selective undo
|
||||
@kindex C-u C-/
|
||||
When there is an active region, any use of @code{undo} performs
|
||||
|
@ -216,7 +219,7 @@ Convert last word to lower case with capital initial.
|
|||
@kindex M-@t{-} M-u
|
||||
@kindex M-@t{-} M-c
|
||||
A very common error is to type words in the wrong case. Because of this,
|
||||
the word case-conversion commands @kbd{M-l}, @kbd{M-u} and @kbd{M-c} have a
|
||||
the word case-conversion commands @kbd{M-l}, @kbd{M-u}, and @kbd{M-c} have a
|
||||
special feature when used with a negative argument: they do not move the
|
||||
cursor. As soon as you see you have mistyped the last word, you can simply
|
||||
case-convert it and go on typing. @xref{Case}.
|
||||
|
@ -231,7 +234,7 @@ case-convert it and go on typing. @xref{Case}.
|
|||
single word or of a portion of a buffer. These commands only work if
|
||||
a spelling checker program, one of Hunspell, Aspell, Ispell or
|
||||
Enchant, is installed. These programs are not part of Emacs, but one
|
||||
of them is usually installed in GNU/Linux and other free operating
|
||||
of them is usually installed on GNU/Linux and other free operating
|
||||
systems.
|
||||
@ifnottex
|
||||
@xref{Top, Aspell,, aspell, The Aspell Manual}.
|
||||
|
|
|
@ -201,12 +201,12 @@ are always displayed as empty spaces extending to the next
|
|||
@node Just Spaces
|
||||
@section Tabs vs.@: Spaces
|
||||
|
||||
Normally, indentation commands insert (or remove) an optimal mix of
|
||||
space characters and tab characters to align to the desired column.
|
||||
Tab characters are displayed as a stretch of empty space extending to
|
||||
the next @dfn{display tab stop}. By default, there is one display tab
|
||||
stop every @code{tab-width} columns (the default is 8). @xref{Text
|
||||
Display}.
|
||||
Normally, indentation commands insert (or remove) the shortest
|
||||
possible series of tab and space characters so as to align to the
|
||||
desired column. Tab characters are displayed as a stretch of empty
|
||||
space extending to the next @dfn{display tab stop}. By default, there
|
||||
is one display tab stop every @code{tab-width} columns (the default is
|
||||
8). @xref{Text Display}.
|
||||
|
||||
@vindex indent-tabs-mode
|
||||
If you prefer, all indentation can be made from spaces only. To
|
||||
|
|
|
@ -56,7 +56,10 @@ of entering the command name. This takes you back to command level.
|
|||
To pass a numeric argument to the command you are invoking with
|
||||
@kbd{M-x}, specify the numeric argument before @kbd{M-x}. The
|
||||
argument value appears in the prompt while the command name is being
|
||||
read, and finally @kbd{M-x} passes the argument to that command.
|
||||
read, and finally @kbd{M-x} passes the argument to that command. For
|
||||
example, to pass the numeric argument of 42 to the command
|
||||
@code{forward-char} you can type @kbd{C-u 42 M-x forward-char
|
||||
@key{RET}}.
|
||||
|
||||
@vindex suggest-key-bindings
|
||||
When the command you run with @kbd{M-x} has a key binding, Emacs
|
||||
|
|
|
@ -18,8 +18,8 @@ does not support versions before macOS 10.6.
|
|||
@samp{Nextstep} internally, instead of ``Cocoa'' or ``macOS''; for
|
||||
instance, most of the commands and variables described in this section
|
||||
begin with @samp{ns-}, which is short for @samp{Nextstep}. NeXTstep
|
||||
was an application interface released by NeXT Inc during the 1980s, of
|
||||
which Cocoa is a direct descendant. Apart from Cocoa, there is
|
||||
was an application interface released by NeXT Inc.@: during the 1980s,
|
||||
of which Cocoa is a direct descendant. Apart from Cocoa, there is
|
||||
another NeXTstep-style system: GNUstep, which is free software. As of
|
||||
this writing, Emacs GNUstep support is alpha status (@pxref{GNUstep
|
||||
Support}), but we hope to improve it in the future.
|
||||
|
|
|
@ -542,13 +542,13 @@ been changed in the repository, offer to update it.
|
|||
These rules also apply when you use RCS in its non-locking mode,
|
||||
except that changes are not automatically merged from the repository.
|
||||
Nothing informs you if another user has committed changes in the same
|
||||
file since you began editing it; when you commit your revision, his
|
||||
changes are removed (however, they remain in the repository and are
|
||||
thus not irrevocably lost). Therefore, you must verify that the
|
||||
current revision is unchanged before committing your changes. In
|
||||
addition, locking is possible with RCS even in this mode: @kbd{C-x v
|
||||
v} with an unmodified file locks the file, just as it does with RCS in
|
||||
its normal locking mode (@pxref{VC With A Locking VCS}).
|
||||
file since you began editing it; when you commit your revision, that
|
||||
other user's changes are removed (however, they remain in the
|
||||
repository and are thus not irrevocably lost). Therefore, you must
|
||||
verify that the current revision is unchanged before committing your
|
||||
changes. In addition, locking is possible with RCS even in this mode:
|
||||
@kbd{C-x v v} with an unmodified file locks the file, just as it does
|
||||
with RCS in its normal locking mode (@pxref{VC With A Locking VCS}).
|
||||
|
||||
@node VC With A Locking VCS
|
||||
@subsubsection Basic Version Control with Locking
|
||||
|
|
|
@ -66,8 +66,8 @@ minibuffer-electric-default-mode}.
|
|||
other uses of the echo area. If an error message or an informative
|
||||
message is emitted while the minibuffer is active, the message hides
|
||||
the minibuffer for a few seconds, or until you type something; then
|
||||
the minibuffer comes back. While the minibuffer is in use, keystrokes
|
||||
do not echo.
|
||||
the minibuffer comes back. While the minibuffer is in use, Emacs does
|
||||
not echo keystrokes.
|
||||
|
||||
@node Minibuffer File
|
||||
@section Minibuffers for File Names
|
||||
|
|
|
@ -413,8 +413,8 @@ is needed. For OpenDocument and Microsoft Office documents, the
|
|||
When you visit a document file that can be displayed with DocView
|
||||
mode, Emacs automatically uses DocView mode @footnote{The needed
|
||||
external tools for the document type must be available, and Emacs must
|
||||
be running in a graphical frame and have PNG image support. If any of
|
||||
these requirements is not fulfilled, Emacs falls back to another major
|
||||
be running in a graphical frame and have PNG image support. If these
|
||||
requirements is not fulfilled, Emacs falls back to another major
|
||||
mode.}. As an exception, when you visit a PostScript file, Emacs
|
||||
switches to PS mode, a major mode for editing PostScript files as
|
||||
text; however, it also enables DocView minor mode, so you can type
|
||||
|
@ -1212,7 +1212,7 @@ buffer after it has been sent.
|
|||
@subsubsection Shell History References
|
||||
@cindex history reference
|
||||
|
||||
Various shells including csh and bash support @dfn{history
|
||||
Various shells, including csh and bash, support @dfn{history
|
||||
references} that begin with @samp{!} and @samp{^}. Shell mode
|
||||
recognizes these constructs, and can perform the history substitution
|
||||
for you.
|
||||
|
@ -1406,8 +1406,8 @@ by the faces @code{term-color-black}, @code{term-color-red},
|
|||
@code{term-color-underline}, and @code{term-color-bold}.
|
||||
@xref{Faces}.
|
||||
|
||||
You can also Term mode to communicate with a device connected to a
|
||||
serial port. @xref{Serial Terminal}.
|
||||
You can also use Term mode to communicate with a device connected to
|
||||
a serial port. @xref{Serial Terminal}.
|
||||
|
||||
The file name used to load the subshell is determined the same way
|
||||
as for Shell mode. To make multiple terminal emulators, rename the
|
||||
|
@ -1427,12 +1427,8 @@ and later.
|
|||
@cindex Term mode
|
||||
@cindex mode, Term
|
||||
|
||||
The terminal emulator uses Term mode, which has two input modes. In
|
||||
line mode, Term basically acts like Shell mode (@pxref{Shell Mode}).
|
||||
In char mode, each character is sent directly to the subshell, except
|
||||
for the Term escape character, normally @kbd{C-c}.
|
||||
|
||||
To switch between line and char mode, use these commands:
|
||||
To switch between line and char mode in Term mode, use these
|
||||
commands:
|
||||
|
||||
@table @kbd
|
||||
@kindex C-c C-j @r{(Term mode)}
|
||||
|
@ -1720,8 +1716,8 @@ Server})---then Emacs opens a frame on the terminal in which you
|
|||
called @command{emacsclient}.
|
||||
|
||||
You can also force @command{emacsclient} to open a new frame on a
|
||||
graphical display, or on a text terminal, using the @samp{-c} and
|
||||
@samp{-t} options. @xref{emacsclient Options}.
|
||||
graphical display using the @samp{-c} option, or on a text terminal
|
||||
using the @samp{-t} option. @xref{emacsclient Options}.
|
||||
|
||||
If you are running on a single text terminal, you can switch between
|
||||
@command{emacsclient}'s shell and the Emacs server using one of two
|
||||
|
|
|
@ -57,10 +57,10 @@ for specific programming languages. These include Lisp mode (which
|
|||
has several variants), C mode, Fortran mode, and others. The third
|
||||
group consists of major modes that are not associated directly with
|
||||
files; they are used in buffers created for specific purposes by
|
||||
Emacs, such as Dired mode for buffers made by Dired (@pxref{Dired}),
|
||||
Message mode for buffers made by @kbd{C-x m} (@pxref{Sending Mail}),
|
||||
and Shell mode for buffers used to communicate with an inferior shell
|
||||
process (@pxref{Interactive Shell}).
|
||||
Emacs. Examples include Dired mode for buffers made by Dired
|
||||
(@pxref{Dired}), Message mode for buffers made by @kbd{C-x m}
|
||||
(@pxref{Sending Mail}), and Shell mode for buffers used to communicate
|
||||
with an inferior shell process (@pxref{Interactive Shell}).
|
||||
|
||||
Usually, the major mode is automatically set by Emacs, when you
|
||||
first visit a file or create a buffer (@pxref{Choosing Modes}). You
|
||||
|
|
|
@ -77,7 +77,7 @@ A short description of the package.
|
|||
|
||||
@noindent
|
||||
The @code{list-packages} command accesses the network, to retrieve the
|
||||
list of available packages from the package archive server. If the
|
||||
list of available packages from package archive servers. If the
|
||||
network is unavailable, it falls back on the most recently retrieved
|
||||
list.
|
||||
|
||||
|
@ -199,7 +199,7 @@ A valid signature is not a cast-iron
|
|||
guarantee that a package is not malicious, so you should still
|
||||
exercise caution. Package archives should provide instructions
|
||||
on how you can obtain their public key. One way is to download the
|
||||
key from a server such as @url{http://pgp.mit.edu/}.
|
||||
key from a server such as @url{https://pgp.mit.edu/}.
|
||||
Use @kbd{M-x package-import-keyring} to import the key into Emacs.
|
||||
Emacs stores package keys in the directory specified by the variable
|
||||
@code{package-gnupghome-dir}, by default in the @file{gnupg}
|
||||
|
@ -219,7 +219,7 @@ package that is not signed. If you use some archives that do not sign
|
|||
their packages, you can add them to the list @code{package-unsigned-archives}.
|
||||
|
||||
For more information on cryptographic keys and signing,
|
||||
@pxref{Top,, Top, gnupg, The GNU Privacy Guard Manual}.
|
||||
@pxref{Top,, GnuPG, gnupg, The GNU Privacy Guard Manual}.
|
||||
Emacs comes with an interface to GNU Privacy Guard,
|
||||
@pxref{Top,, EasyPG, epa, Emacs EasyPG Assistant Manual}.
|
||||
|
||||
|
|
|
@ -175,6 +175,7 @@ Move to the next message containing a match for @var{regexp}
|
|||
|
||||
@item - M-s @var{regexp} @key{RET}
|
||||
Move to the previous message containing a match for @var{regexp}.
|
||||
(This is @kbd{M-s} with a negative argument.)
|
||||
@end table
|
||||
|
||||
@kindex n @r{(Rmail)}
|
||||
|
|
|
@ -30,13 +30,13 @@ display systems commonly use the word ``window'' with a different
|
|||
meaning; but, as stated above, we refer to those graphical windows
|
||||
as ``frames''.
|
||||
|
||||
An Emacs window is where the @dfn{buffer}---the text you are
|
||||
editing---is displayed. On a graphical display, the window possesses
|
||||
a @dfn{scroll bar} on one side, which can be used to scroll through
|
||||
the buffer. The last line of the window is a @dfn{mode line}. This
|
||||
displays various information about what is going on in the buffer,
|
||||
such as whether there are unsaved changes, the editing modes that are
|
||||
in use, the current line number, and so forth.
|
||||
An Emacs window is where the @dfn{buffer}---the text or other
|
||||
graphics you are editing or viewing---is displayed. On a graphical
|
||||
display, the window possesses a @dfn{scroll bar} on one side, which
|
||||
can be used to scroll through the buffer. The last line of the window
|
||||
is a @dfn{mode line}. This displays various information about what is
|
||||
going on in the buffer, such as whether there are unsaved changes, the
|
||||
editing modes that are in use, the current line number, and so forth.
|
||||
|
||||
When you start Emacs, there is normally only one window in the
|
||||
frame. However, you can subdivide this window horizontally or
|
||||
|
|
|
@ -1508,29 +1508,27 @@ This is an example.
|
|||
@findex doctex-mode
|
||||
@findex bibtex-mode
|
||||
|
||||
Emacs provides special major modes for editing files written in
|
||||
@TeX{} and its related formats. @TeX{} is a powerful text formatter
|
||||
written by Donald Knuth; like GNU Emacs, it is free software.
|
||||
@LaTeX{} is a simplified input format for @TeX{}, implemented using
|
||||
@TeX{} macros. Doc@TeX{} is a special file format in which the
|
||||
@LaTeX{} sources are written, combining sources with documentation.
|
||||
Sli@TeX{} is an obsolete special form of @LaTeX{}.@footnote{It has
|
||||
been replaced by the @samp{slides} document class, which comes with
|
||||
@LaTeX{}.}
|
||||
@TeX{} is a powerful text formatter written by Donald Knuth; like
|
||||
GNU Emacs, it is free software. The @TeX{} format has several
|
||||
variants, including @LaTeX{}, a simplified input format for @TeX{};
|
||||
Doc@TeX{}, a special file format in which the @LaTeX{} sources are
|
||||
written, combining sources with documentation; and Sli@TeX{}, an
|
||||
obsolete special form of @LaTeX{}@footnote{
|
||||
It has been replaced by the @samp{slides} document class, which comes
|
||||
with @LaTeX{}.}.
|
||||
|
||||
@vindex tex-default-mode
|
||||
@TeX{} mode has four variants: Plain @TeX{} mode, @LaTeX{} mode,
|
||||
Doc@TeX{} mode, and Sli@TeX{} mode. These distinct major modes differ
|
||||
only slightly, and are designed for editing the four different
|
||||
formats. Emacs selects the appropriate mode by looking at the
|
||||
contents of the buffer. (This is done by the @code{tex-mode} command,
|
||||
which is normally called automatically when you visit a @TeX{}-like
|
||||
file. @xref{Choosing Modes}.) If the contents are insufficient to
|
||||
determine this, Emacs chooses the mode specified by the variable
|
||||
@code{tex-default-mode}; its default value is @code{latex-mode}. If
|
||||
Emacs does not guess right, you can select the correct variant of
|
||||
@TeX{} mode using the command @kbd{M-x plain-tex-mode}, @kbd{M-x
|
||||
latex-mode}, @kbd{M-x slitex-mode}, or @kbd{doctex-mode}.
|
||||
Emacs provides a @TeX{} major mode for each of these variants: Plain
|
||||
@TeX{} mode, @LaTeX{} mode, Doc@TeX{} mode, and Sli@TeX{} mode. Emacs
|
||||
selects the appropriate mode by looking at the contents of the buffer.
|
||||
(This is done by the @code{tex-mode} command, which is normally called
|
||||
automatically when you visit a @TeX{}-like file. @xref{Choosing
|
||||
Modes}.) If the contents are insufficient to determine this, Emacs
|
||||
chooses the mode specified by the variable @code{tex-default-mode};
|
||||
its default value is @code{latex-mode}. If Emacs does not guess
|
||||
right, you can select the correct variant of @TeX{} mode using the
|
||||
command @kbd{M-x plain-tex-mode}, @kbd{M-x latex-mode}, @kbd{M-x
|
||||
slitex-mode}, or @kbd{doctex-mode}.
|
||||
|
||||
The following sections document the features of @TeX{} mode and its
|
||||
variants. There are several other @TeX{}-related Emacs packages,
|
||||
|
@ -1628,7 +1626,9 @@ to keep braces balanced at all times, rather than inserting them
|
|||
singly. Use @kbd{C-c @{} (@code{tex-insert-braces}) to insert a pair of
|
||||
braces. It leaves point between the two braces so you can insert the
|
||||
text that belongs inside. Afterward, use the command @kbd{C-c @}}
|
||||
(@code{up-list}) to move forward past the close brace.
|
||||
(@code{up-list}) to move forward past the close brace. You can also
|
||||
invoke @kbd{C-c @{} after marking some text: then the command encloses
|
||||
the marked text in braces.
|
||||
|
||||
@findex tex-validate-region
|
||||
@findex tex-terminate-paragraph
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
@c Update the elisp.texi Antinews menu entry with the above version number.
|
||||
|
||||
For those users who live backwards in time, here is information about
|
||||
downgrading to Emacs version 25.2. We hope you will enjoy the greater
|
||||
downgrading to Emacs version 25.3. We hope you will enjoy the greater
|
||||
simplicity that results from the absence of many @w{Emacs
|
||||
@value{EMACSVER}} features.
|
||||
|
||||
|
@ -47,6 +47,15 @@ sites become more and more rare as you move back in time, so having a
|
|||
specialized library for their support was deemed an unnecessary
|
||||
maintenance burden.
|
||||
|
||||
@item
|
||||
The time conversion functions @code{current-time-string},
|
||||
@code{current-time-zone}, @code{decode-time},
|
||||
@code{format-time-string}, and @code{set-time-zone-rule} no longer
|
||||
accept integer offsets as time zone rules, to make it more of a
|
||||
challenge to convert foreign timestamps. Also,
|
||||
@code{format-time-string} no longer converts @samp{%q} to the calendar
|
||||
quarter, as that is something you can easily do for yourself.
|
||||
|
||||
@item
|
||||
Field numbers like @samp{%2$} in format specifiers are no longer
|
||||
available. We decided that their use makes code reading and
|
||||
|
@ -83,12 +92,38 @@ symlink targets as you'd expect: to mean your home directory. The
|
|||
confusing differences between the operation of these functions in
|
||||
interactive and non-interactive invocations has been removed.
|
||||
|
||||
@item
|
||||
Several functions that create or rename their files now treat their
|
||||
destination specially if it happens to be a directory, even when its
|
||||
name does not appear to be that of a directory. For example,
|
||||
@code{(rename-file "A" "B")} no longer renames @file{A} to @file{B} if
|
||||
@file{B} happens to be a directory. This is so that dealing with
|
||||
files becomes more of an adventure.
|
||||
|
||||
@item
|
||||
The @code{format} function now returns new strings in more cases, to
|
||||
place more stress on the Emacs memory manager and thereby test Emacs
|
||||
better.
|
||||
|
||||
@item
|
||||
The function @file{assoc} has been simplified by removing its third
|
||||
optional argument. It now always uses @code{equal} for comparison.
|
||||
Likewise, @code{alist-get} always uses @code{assq}, and @code{map-get}
|
||||
and @code{map-put} always use @code{eql} for their comparisons.
|
||||
|
||||
@item
|
||||
Numeric comparisons and the functions @code{format},
|
||||
@code{make-hash-table}, @code{min}, @code{max} and @code{logb} now
|
||||
occasionally round values internally to make their results less
|
||||
predictable.
|
||||
|
||||
@item
|
||||
The functions @code{ffloor}, @code{fceiling}l, @code{ftruncate} and
|
||||
@code{fround} now accept integer arguments. Conversely, functions
|
||||
like @code{decode-char} that accept floating-point integers now accept
|
||||
arguments that are not integers. In both cases the results are
|
||||
amusingly nonsensical sometimes.
|
||||
|
||||
@item
|
||||
GnuTLS cryptographic functions are no longer available in Emacs. We
|
||||
have decided that the needs for such functionality are deteriorating,
|
||||
|
@ -104,15 +139,24 @@ broken by records.
|
|||
You can again use @code{string-as-unibyte},
|
||||
@code{string-make-multibyte}, and other similar functions, without
|
||||
being annoyed by messages about their deprecation. This is in
|
||||
preparation for removal of multibyte text from Emacs in the distance
|
||||
preparation for removal of multibyte text from Emacs in the distant
|
||||
past.
|
||||
|
||||
@item
|
||||
The @code{string-version-lessp} function has been removed, to
|
||||
encourage programmers to use their own idiosyncratic methods to
|
||||
determine whether one version string precedes another.
|
||||
|
||||
@item
|
||||
The function @code{read-color} no longer displays color names using
|
||||
each color as the background. We have determined that this surprises
|
||||
users and produces funny inconsistent results on color-challenged
|
||||
terminals.
|
||||
|
||||
@item
|
||||
Support for 24-bit color on text terminals has been dropped, since
|
||||
it wasn't needed long ago.
|
||||
|
||||
@item
|
||||
We removed the function @code{file-name-case-insensitive-p}, as
|
||||
testing for the OS symbol should be enough for the observable past to
|
||||
|
@ -135,12 +179,57 @@ cases. Let simplicity rule!
|
|||
The function @code{mapcan} is gone; use @code{mapcar} instead, and
|
||||
process the resulting list as you see fit.
|
||||
|
||||
@item
|
||||
Low-level list functions like @code{length} and @code{member} can now
|
||||
loop indefinitely when given cyclic lists, causing Emacs to freeze.
|
||||
This can help these functions run a tiny bit faster in the usual case
|
||||
where the input is not cyclic.
|
||||
|
||||
@item
|
||||
The @code{write-region} function no longer propagates its
|
||||
@var{lockname} argument to file name handlers.
|
||||
|
||||
@item
|
||||
You can once again write a Lisp program that returns funny random
|
||||
values from @code{file-attributes} by having another process alter the
|
||||
filesystem while Emacs is accessing the file. This can give rise to
|
||||
some interesting applications in the near past.
|
||||
|
||||
@item
|
||||
The functions @code{file-attributes}, @code{file-symlink-p}, and
|
||||
@code{make-symbolic-link} now quietly mutate the target of a local
|
||||
symbolic link in some cases, to make it more of a challenge to deal
|
||||
with arbitrary symlinks in Emacs code.
|
||||
|
||||
@item
|
||||
The error @code{file-missing} has been removed; operations now lump
|
||||
such errors into the @code{file-error} category instead.
|
||||
|
||||
@item
|
||||
The function @code{delete-directory} now signals an error if operating
|
||||
recursively and some other process deletes the directory before this
|
||||
function gets to it.
|
||||
|
||||
@item
|
||||
The @code{dutch} input method now attempts to support Turkish too,
|
||||
albeit incorrectly. Also, it converts @samp{IJ} and @samp{ij} to
|
||||
special characters instead of leaving them alone.
|
||||
|
||||
@item
|
||||
Non-breaking hyphens and approximations to quotes are now displayed
|
||||
just with the @code{escape-glyph} face instead of having faces of
|
||||
their own. This is simpler and gives the user amusing puzzles to
|
||||
solve when viewing text containing these characters.
|
||||
|
||||
@item
|
||||
The user option @code{electric-quote-context-sensitive} and the
|
||||
variable @code{electric-quote-inhibit-functions}, so that electric
|
||||
quoting is simpler and more likely to do the wrong thing.
|
||||
|
||||
@item
|
||||
The user option @code{text-quoting-style} has been removed, and is now
|
||||
just a variable.
|
||||
|
||||
@item
|
||||
We have removed the functions @code{file-name-quote},
|
||||
@code{file-name-unquote}, and @code{file-name-quoted-p}. Writing code
|
||||
|
@ -159,6 +248,34 @@ We decided that the format of mode line and header line should be
|
|||
customizable only based on buffers; the @code{mode-line-format} and
|
||||
@code{header-line-format} window parameters have been removed.
|
||||
|
||||
@item
|
||||
Emacs now normally builds a limited @command{movemail} substitute that
|
||||
retrieves POP3 email only via insecure channels, and the
|
||||
configure-time option @option{--with-mailutils} has been removed.
|
||||
This simplifies Emacs setup when security is not important.
|
||||
|
||||
@item
|
||||
The configure-time option @option{--enable-gcc-warnings=warn-only}
|
||||
has been removed, so that build-time warnings are always fatal now.
|
||||
|
||||
@item
|
||||
The configure-time option @option{--disable-build-details} has been
|
||||
removed. This way, Emacs builds are unique and irreproducible.
|
||||
|
||||
@item
|
||||
The variable @code{emacs-version} now includes the build number
|
||||
instead of storing it separately in @code{emacs-build-number}.
|
||||
|
||||
@item
|
||||
Emacs has been ported to IRIX.
|
||||
|
||||
@item
|
||||
Several options and variables have been removed to simplify Emacs and
|
||||
potentially make it less reliable. These include the
|
||||
@option{--module-assertions} option, the
|
||||
@code{attempt-stack-overflow-recovery} variable, and the
|
||||
@code{attempt-orderly-shutdown-on-fatal-signal} variable.
|
||||
|
||||
@item
|
||||
As part of the ongoing quest for simplicity, many other functions and
|
||||
variables have been eliminated.
|
||||
|
|
|
@ -775,16 +775,80 @@ after inserting the modified contents. A custom @code{revert-buffer-function}
|
|||
may or may not run this hook.
|
||||
@end defvar
|
||||
|
||||
@c FIXME? Move this section from arevert-xtra to here?
|
||||
Emacs can revert buffers automatically. It does that by default for
|
||||
buffers visiting files. The following describes how to add support
|
||||
for auto-reverting new types of buffers.
|
||||
|
||||
First, such buffers must have a suitable @code{revert-buffer-function}
|
||||
and @code{buffer-stale-function} defined.
|
||||
|
||||
@defvar buffer-stale-function
|
||||
The value of this variable specifies a function to call to check
|
||||
whether a buffer needs reverting. The default value only handles
|
||||
buffers that are visiting files, by checking their modification time.
|
||||
Buffers that are not visiting files require a custom function
|
||||
@iftex
|
||||
(@pxref{Supporting additional buffers,,, emacs-xtra, Specialized Emacs Features}).
|
||||
@end iftex
|
||||
@ifnottex
|
||||
(@pxref{Supporting additional buffers,,, emacs}).
|
||||
@end ifnottex
|
||||
Buffers that are not visiting files require a custom function of one
|
||||
optional argument @var{noconfirm}. The function should return
|
||||
non-@code{nil} if the buffer should be reverted. The buffer is
|
||||
current when this function is called.
|
||||
|
||||
While this function is mainly intended for use in auto-reverting, it
|
||||
could be used for other purposes as well. For instance, if
|
||||
auto-reverting is not enabled, it could be used to warn the user that
|
||||
the buffer needs reverting. The idea behind the @var{noconfirm}
|
||||
argument is that it should be @code{t} if the buffer is going to be
|
||||
reverted without asking the user and @code{nil} if the function is
|
||||
just going to be used to warn the user that the buffer is out of date.
|
||||
In particular, for use in auto-reverting, @var{noconfirm} is @code{t}.
|
||||
If the function is only going to be used for auto-reverting, you can
|
||||
ignore the @var{noconfirm} argument.
|
||||
|
||||
If you just want to automatically auto-revert every
|
||||
@code{auto-revert-interval} seconds (like the Buffer Menu), use:
|
||||
|
||||
@example
|
||||
(setq-local buffer-stale-function
|
||||
#'(lambda (&optional noconfirm) 'fast))
|
||||
@end example
|
||||
|
||||
@noindent
|
||||
in the buffer's mode function.
|
||||
|
||||
The special return value @samp{fast} tells the caller that the need
|
||||
for reverting was not checked, but that reverting the buffer is fast.
|
||||
It also tells Auto Revert not to print any revert messages, even if
|
||||
@code{auto-revert-verbose} is non-@code{nil}. This is important, as
|
||||
getting revert messages every @code{auto-revert-interval} seconds can
|
||||
be very annoying. The information provided by this return value could
|
||||
also be useful if the function is consulted for purposes other than
|
||||
auto-reverting.
|
||||
@end defvar
|
||||
|
||||
Once the buffer has a suitable @code{revert-buffer-function} and
|
||||
@code{buffer-stale-function}, several problems usually remain.
|
||||
|
||||
The buffer will only auto-revert if it is marked unmodified. Hence,
|
||||
you will have to make sure that various functions mark the buffer
|
||||
modified if and only if either the buffer contains information that
|
||||
might be lost by reverting, or there is reason to believe that the user
|
||||
might be inconvenienced by auto-reverting, because he is actively
|
||||
working on the buffer. The user can always override this by manually
|
||||
adjusting the modified status of the buffer. To support this, calling
|
||||
the @code{revert-buffer-function} on a buffer that is marked
|
||||
unmodified should always keep the buffer marked unmodified.
|
||||
|
||||
It is important to assure that point does not continuously jump around
|
||||
as a consequence of auto-reverting. Of course, moving point might be
|
||||
inevitable if the buffer radically changes.
|
||||
|
||||
You should make sure that the @code{revert-buffer-function} does not
|
||||
print messages that unnecessarily duplicate Auto Revert's own messages,
|
||||
displayed if @code{auto-revert-verbose} is @code{t}, and effectively
|
||||
override a @code{nil} value for @code{auto-revert-verbose}. Hence,
|
||||
adapting a mode for auto-reverting often involves getting rid of such
|
||||
messages. This is especially important for buffers that automatically
|
||||
revert every @code{auto-revert-interval} seconds.
|
||||
|
||||
If the new auto-reverting is part of Emacs, you should mention it
|
||||
in the documentation string of @code{global-auto-revert-non-file-buffers}.
|
||||
|
||||
Similarly, you should document the additions in the Emacs manual.
|
||||
|
|
|
@ -581,7 +581,7 @@ truncated to fit it.
|
|||
The variable @code{max-mini-window-height}, which specifies the
|
||||
maximum height for resizing minibuffer windows, also applies to the
|
||||
echo area (which is really a special use of the minibuffer window;
|
||||
@pxref{Minibuffer Misc}).
|
||||
@pxref{Minibuffer Windows}).
|
||||
|
||||
@node Warnings
|
||||
@section Reporting Warnings
|
||||
|
|
|
@ -2323,6 +2323,12 @@ frame's height; an integer specifies the maximum number of lines. The
|
|||
default value is 0.25.
|
||||
@end defopt
|
||||
|
||||
Note that the values of the above two variables take effect at display
|
||||
time, so let-binding them around code which produces echo-area messages
|
||||
will not work. If you want to prevent resizing of minibuffer windows
|
||||
when displaying long messages, bind the @code{message-truncate-lines}
|
||||
variable instead (@pxref{Echo Area Customization}).
|
||||
|
||||
|
||||
@node Minibuffer Contents
|
||||
@section Minibuffer Contents
|
||||
|
@ -2450,12 +2456,6 @@ minibuffer window was selected. If the selected window is not a
|
|||
minibuffer window, it returns @code{nil}.
|
||||
@end defun
|
||||
|
||||
@defopt max-mini-window-height
|
||||
This variable specifies the maximum height for resizing minibuffer
|
||||
windows. If a float, it specifies a fraction of the height of the
|
||||
frame. If an integer, it specifies a number of lines.
|
||||
@end defopt
|
||||
|
||||
@vindex minibuffer-message-timeout
|
||||
@defun minibuffer-message string &rest args
|
||||
This function displays @var{string} temporarily at the end of the
|
||||
|
|
|
@ -3042,7 +3042,9 @@ with @samp{-}, or might contain shell metacharacters like @samp{;}.
|
|||
Although functions like @code{shell-quote-argument} can help avoid
|
||||
this sort of problem, they are not panaceas; for example, on a POSIX
|
||||
platform @code{shell-quote-argument} quotes shell metacharacters but
|
||||
not leading @samp{-}. @xref{Shell Arguments}. Typically it is safer
|
||||
not leading @samp{-}. On MS-Windows, quoting for @samp{%} assumes
|
||||
none of the environment variables have @samp{^} in their name.
|
||||
@xref{Shell Arguments}. Typically it is safer
|
||||
to use @code{call-process} than a subshell. @xref{Synchronous
|
||||
Processes}. And it is safer yet to use builtin Emacs functions; for
|
||||
example, use @code{(rename-file "@var{a}" "@var{b}" t)} instead of
|
||||
|
|
|
@ -728,8 +728,11 @@ Initialize the process query flag to @var{query-flag}.
|
|||
@xref{Query Before Exit}.
|
||||
|
||||
@item :stop @var{stopped}
|
||||
If @var{stopped} is non-@code{nil}, start the process in the
|
||||
stopped state.
|
||||
If @var{stopped} is non-@code{nil}, start the process in the stopped
|
||||
state. In the stopped state, a pipe process does not accept incoming
|
||||
data, but you can send outgoing data. The stopped state is set by
|
||||
@code{stop-process} and cleared by @code{continue-process}
|
||||
(@pxref{Signals to Processes}).
|
||||
|
||||
@item :filter @var{filter}
|
||||
Initialize the process filter to @var{filter}. If not specified, a
|
||||
|
|
|
@ -1156,7 +1156,7 @@ Caters for French and Dutch.
|
|||
|
||||
| | examples
|
||||
------------+---------+----------
|
||||
others | | fl. -> ƒ eur. -> € ij -> ij IJ -> IJ
|
||||
others | | fl. -> ƒ eur. -> €
|
||||
------------+---------+----------
|
||||
| postfix |
|
||||
------------+---------+----------
|
||||
|
|
|
@ -124,7 +124,7 @@ Args are NAME BUFFER HOST SERVICE.
|
|||
NAME is name for process. It is modified if necessary to make it unique.
|
||||
BUFFER is the buffer (or `buffer-name') to associate with the process.
|
||||
Process output goes at end of that buffer, unless you specify
|
||||
an output stream or filter function to handle the output.
|
||||
a filter function to handle the output.
|
||||
BUFFER may be also nil, meaning that this process is not associated
|
||||
with any buffer
|
||||
Third arg is name of the host to connect to, or its IP address.
|
||||
|
|
|
@ -137,7 +137,7 @@ absolute value without any unit."
|
|||
("MediumAquaMarine" . "#66CDAA")
|
||||
("MediumBlue" . "#0000CD")
|
||||
("MediumOrchid" . "#BA55D3")
|
||||
("MediumPurple" . "#9370D8")
|
||||
("MediumPurple" . "#9370DB")
|
||||
("MediumSeaGreen" . "#3CB371")
|
||||
("MediumSlateBlue" . "#7B68EE")
|
||||
("MediumSpringGreen" . "#00FA9A")
|
||||
|
@ -158,7 +158,7 @@ absolute value without any unit."
|
|||
("PaleGoldenRod" . "#EEE8AA")
|
||||
("PaleGreen" . "#98FB98")
|
||||
("PaleTurquoise" . "#AFEEEE")
|
||||
("PaleVioletRed" . "#D87093")
|
||||
("PaleVioletRed" . "#DB7093")
|
||||
("PapayaWhip" . "#FFEFD5")
|
||||
("PeachPuff" . "#FFDAB9")
|
||||
("Peru" . "#CD853F")
|
||||
|
@ -166,6 +166,7 @@ absolute value without any unit."
|
|||
("Plum" . "#DDA0DD")
|
||||
("PowderBlue" . "#B0E0E6")
|
||||
("Purple" . "#800080")
|
||||
("RebeccaPurple" . "#663399")
|
||||
("Red" . "#FF0000")
|
||||
("RosyBrown" . "#BC8F8F")
|
||||
("RoyalBlue" . "#4169E1")
|
||||
|
|
|
@ -270,7 +270,7 @@ Args are NAME BUFFER HOST PORT.
|
|||
NAME is name for process. It is modified if necessary to make it unique.
|
||||
BUFFER is the buffer (or `buffer-name') to associate with the process.
|
||||
Process output goes at end of that buffer, unless you specify
|
||||
an output stream or filter function to handle the output.
|
||||
a filter function to handle the output.
|
||||
BUFFER may be also nil, meaning that this process is not associated
|
||||
with any buffer
|
||||
Third arg is name of the host to connect to, or its IP address.
|
||||
|
|
|
@ -204,7 +204,7 @@ Args are NAME BUFFER HOST PORT.
|
|||
NAME is name for process. It is modified if necessary to make it unique.
|
||||
BUFFER is the buffer (or buffer name) to associate with the process.
|
||||
Process output goes at end of that buffer, unless you specify
|
||||
an output stream or filter function to handle the output.
|
||||
a filter function to handle the output.
|
||||
BUFFER may be also nil, meaning that this process is not associated
|
||||
with any buffer
|
||||
Third arg is name of the host to connect to, or its IP address.
|
||||
|
|
|
@ -2123,10 +2123,10 @@ and the file name is displayed in the echo area."
|
|||
NAME is name for process. It is modified if necessary to make it unique.
|
||||
BUFFER is the buffer (or buffer name) to associate with the process.
|
||||
|
||||
Process output (both standard output and standard error streams) goes
|
||||
at end of BUFFER, unless you specify an output stream or filter
|
||||
function to handle the output. BUFFER may also be nil, meaning that
|
||||
this process is not associated with any buffer.
|
||||
Process output (both standard output and standard error streams)
|
||||
goes at end of BUFFER, unless you specify a filter function to
|
||||
handle the output. BUFFER may also be nil, meaning that this
|
||||
process is not associated with any buffer.
|
||||
|
||||
PROGRAM is the program file name. It is searched for in `exec-path'
|
||||
\(which see). If nil, just associate a pty with the buffer. Remaining
|
||||
|
|
|
@ -842,7 +842,7 @@ See the documentation of `create-fontset-from-fontset-spec' for the format.")
|
|||
(format "Creation of the standard fontset failed: %s" err)
|
||||
:error)))
|
||||
|
||||
(x-open-connection (system-name) x-command-line-resources t)
|
||||
(x-open-connection (or (system-name) "") x-command-line-resources t)
|
||||
|
||||
;; Add GNUstep menu items Services, Hide and Quit. Rename Help to Info
|
||||
;; and put it first (i.e. omit from menu-bar-final-items.
|
||||
|
|
|
@ -499,6 +499,7 @@ further value candidates, since that list would be infinite.")
|
|||
("red" . "#ff0000")
|
||||
("purple" . "#800080")
|
||||
("fuchsia" . "#ff00ff")
|
||||
("magenta" . "#ff00ff")
|
||||
("green" . "#008000")
|
||||
("lime" . "#00ff00")
|
||||
("olive" . "#808000")
|
||||
|
@ -507,6 +508,7 @@ further value candidates, since that list would be infinite.")
|
|||
("blue" . "#0000ff")
|
||||
("teal" . "#008080")
|
||||
("aqua" . "#00ffff")
|
||||
("cyan" . "#00ffff")
|
||||
("orange" . "#ffa500")
|
||||
("aliceblue" . "#f0f8ff")
|
||||
("antiquewhite" . "#faebd7")
|
||||
|
|
|
@ -1023,8 +1023,8 @@ syms_of_doc (void)
|
|||
doc: /* Style to use for single quotes in help and messages.
|
||||
Its value should be a symbol. It works by substituting certain single
|
||||
quotes for grave accent and apostrophe. This is done in help output
|
||||
and in functions like `message' and `format-message'. It is not done
|
||||
in `format'.
|
||||
\(but not for display of Info manuals) and in functions like `message'
|
||||
and `format-message'. It is not done in `format'.
|
||||
|
||||
`curve' means quote with curved single quotes ‘like this’.
|
||||
`straight' means quote with straight apostrophes \\='like this\\='.
|
||||
|
|
|
@ -1615,9 +1615,8 @@ to make it unique.
|
|||
|
||||
:buffer BUFFER -- BUFFER is the buffer (or buffer-name) to associate
|
||||
with the process. Process output goes at end of that buffer, unless
|
||||
you specify an output stream or filter function to handle the output.
|
||||
BUFFER may be also nil, meaning that this process is not associated
|
||||
with any buffer.
|
||||
you specify a filter function to handle the output. BUFFER may be
|
||||
also nil, meaning that this process is not associated with any buffer.
|
||||
|
||||
:command COMMAND -- COMMAND is a list starting with the program file
|
||||
name, followed by strings to give to the program as arguments.
|
||||
|
@ -2307,8 +2306,8 @@ arguments are defined:
|
|||
|
||||
:buffer BUFFER -- BUFFER is the buffer (or buffer-name) to associate
|
||||
with the process. Process output goes at the end of that buffer,
|
||||
unless you specify an output stream or filter function to handle the
|
||||
output. If BUFFER is not given, the value of NAME is used.
|
||||
unless you specify a filter function to handle the output. If BUFFER
|
||||
is not given, the value of NAME is used.
|
||||
|
||||
:coding CODING -- If CODING is a symbol, it specifies the coding
|
||||
system used for both reading and writing for this process. If CODING
|
||||
|
@ -3022,8 +3021,8 @@ the value of PORT is used.
|
|||
|
||||
:buffer BUFFER -- BUFFER is the buffer (or buffer-name) to associate
|
||||
with the process. Process output goes at the end of that buffer,
|
||||
unless you specify an output stream or filter function to handle the
|
||||
output. If BUFFER is not given, the value of NAME is used.
|
||||
unless you specify a filter function to handle the output. If BUFFER
|
||||
is not given, the value of NAME is used.
|
||||
|
||||
:coding CODING -- If CODING is a symbol, it specifies the coding
|
||||
system used for both reading and writing for this process. If CODING
|
||||
|
@ -3685,9 +3684,8 @@ to make it unique.
|
|||
|
||||
:buffer BUFFER -- BUFFER is the buffer (or buffer-name) to associate
|
||||
with the process. Process output goes at end of that buffer, unless
|
||||
you specify an output stream or filter function to handle the output.
|
||||
BUFFER may be also nil, meaning that this process is not associated
|
||||
with any buffer.
|
||||
you specify a filter function to handle the output. BUFFER may be
|
||||
also nil, meaning that this process is not associated with any buffer.
|
||||
|
||||
:host HOST -- HOST is name of the host to connect to, or its IP
|
||||
address. The symbol `local' specifies the local host. If specified
|
||||
|
|
|
@ -6922,10 +6922,15 @@ w32_initialize_display_info (Lisp_Object display_name)
|
|||
memset (dpyinfo, 0, sizeof (*dpyinfo));
|
||||
|
||||
dpyinfo->name_list_element = Fcons (display_name, Qnil);
|
||||
dpyinfo->w32_id_name = xmalloc (SCHARS (Vinvocation_name)
|
||||
+ SCHARS (Vsystem_name) + 2);
|
||||
sprintf (dpyinfo->w32_id_name, "%s@%s",
|
||||
SDATA (Vinvocation_name), SDATA (Vsystem_name));
|
||||
if (STRINGP (Vsystem_name))
|
||||
{
|
||||
dpyinfo->w32_id_name = xmalloc (SCHARS (Vinvocation_name)
|
||||
+ SCHARS (Vsystem_name) + 2);
|
||||
sprintf (dpyinfo->w32_id_name, "%s@%s",
|
||||
SDATA (Vinvocation_name), SDATA (Vsystem_name));
|
||||
}
|
||||
else
|
||||
dpyinfo->w32_id_name = xlispstrdup (Vinvocation_name);
|
||||
|
||||
/* Default Console mode values - overridden when running in GUI mode
|
||||
with values obtained from system metrics. */
|
||||
|
|
19
src/xrdb.c
19
src/xrdb.c
|
@ -376,15 +376,18 @@ get_environ_db (void)
|
|||
|
||||
if (!p)
|
||||
{
|
||||
/* Use ~/.Xdefaults-HOSTNAME. */
|
||||
char *home = gethomedir ();
|
||||
ptrdiff_t homelen = strlen (home);
|
||||
Lisp_Object system_name = Fsystem_name ();
|
||||
ptrdiff_t filenamesize = (homelen + sizeof xdefaults
|
||||
+ 1 + SBYTES (system_name));
|
||||
p = filename = xrealloc (home, filenamesize);
|
||||
lispstpcpy (stpcpy (stpcpy (filename + homelen, xdefaults), "-"),
|
||||
system_name);
|
||||
if (STRINGP (system_name))
|
||||
{
|
||||
/* Use ~/.Xdefaults-HOSTNAME. */
|
||||
char *home = gethomedir ();
|
||||
ptrdiff_t homelen = strlen (home);
|
||||
ptrdiff_t filenamesize = (homelen + sizeof xdefaults
|
||||
+ 1 + SBYTES (system_name));
|
||||
p = filename = xrealloc (home, filenamesize);
|
||||
lispstpcpy (stpcpy (stpcpy (filename + homelen, xdefaults), "-"),
|
||||
system_name);
|
||||
}
|
||||
}
|
||||
|
||||
db = XrmGetFileDatabase (p);
|
||||
|
|
16
src/xterm.c
16
src/xterm.c
|
@ -12141,6 +12141,8 @@ same_x_server (const char *name1, const char *name2)
|
|||
{
|
||||
bool seen_colon = false;
|
||||
Lisp_Object sysname = Fsystem_name ();
|
||||
if (! STRINGP (sysname))
|
||||
sysname = empty_unibyte_string;
|
||||
const char *system_name = SSDATA (sysname);
|
||||
ptrdiff_t system_name_length = SBYTES (sysname);
|
||||
ptrdiff_t length_until_period = 0;
|
||||
|
@ -12563,15 +12565,19 @@ x_term_init (Lisp_Object display_name, char *xrm_option, char *resource_name)
|
|||
#endif
|
||||
|
||||
Lisp_Object system_name = Fsystem_name ();
|
||||
ptrdiff_t nbytes;
|
||||
if (INT_ADD_WRAPV (SBYTES (Vinvocation_name), SBYTES (system_name) + 2,
|
||||
&nbytes))
|
||||
|
||||
ptrdiff_t nbytes = SBYTES (Vinvocation_name) + 1;
|
||||
if (STRINGP (system_name)
|
||||
&& INT_ADD_WRAPV (nbytes, SBYTES (system_name) + 1, &nbytes))
|
||||
memory_full (SIZE_MAX);
|
||||
dpyinfo->x_id = ++x_display_id;
|
||||
dpyinfo->x_id_name = xmalloc (nbytes);
|
||||
char *nametail = lispstpcpy (dpyinfo->x_id_name, Vinvocation_name);
|
||||
*nametail++ = '@';
|
||||
lispstpcpy (nametail, system_name);
|
||||
if (STRINGP (system_name))
|
||||
{
|
||||
*nametail++ = '@';
|
||||
lispstpcpy (nametail, system_name);
|
||||
}
|
||||
|
||||
/* Figure out which modifier bits mean what. */
|
||||
x_find_modifier_meanings (dpyinfo);
|
||||
|
|
|
@ -325,5 +325,22 @@ cf. Bug#25477."
|
|||
(should (equal (butlast (new-list-fn))
|
||||
(assoc-delete-all "foo" (new-list-fn))))))
|
||||
|
||||
(ert-deftest shell-quote-argument-%-on-w32 ()
|
||||
"Quoting of `%' in w32 shells isn't perfect.
|
||||
See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=19350."
|
||||
:expected-result :failed
|
||||
(skip-unless (and (fboundp 'w32-shell-dos-semantics)
|
||||
(w32-shell-dos-semantics)))
|
||||
(let ((process-environment (append '("ca^=with-caret"
|
||||
"ca=without-caret")
|
||||
process-environment)))
|
||||
;; It actually results in
|
||||
;; without-caret with-caret
|
||||
(should (equal (shell-command-to-string
|
||||
(format "echo %s %s"
|
||||
"%ca%"
|
||||
(shell-quote-argument "%ca%")))
|
||||
"without-caret %ca%"))))
|
||||
|
||||
(provide 'subr-tests)
|
||||
;;; subr-tests.el ends here
|
||||
|
|
|
@ -58,7 +58,7 @@
|
|||
|
||||
;; Check that the `color' property doesn't cause infinite recursion
|
||||
;; because it refers to the value class of the same name.
|
||||
(should (= (length (css--property-values "color")) 152)))
|
||||
(should (= (length (css--property-values "color")) 154)))
|
||||
|
||||
(ert-deftest css-test-property-value-cache ()
|
||||
"Test that `css--property-value-cache' is in use."
|
||||
|
|
Loading…
Add table
Reference in a new issue