mirror of
https://github.com/masscollaborationlabs/emacs.git
synced 2025-07-09 21:50:50 +00:00
Merge from emacs-24 branch
This commit is contained in:
commit
e6fd457e01
28 changed files with 469 additions and 338 deletions
|
@ -155,13 +155,8 @@ mini.texi rgm
|
||||||
misc.texi cyd
|
misc.texi cyd
|
||||||
modes.texi cyd
|
modes.texi cyd
|
||||||
msdog.texi rgm (can't actually test any of it though)
|
msdog.texi rgm (can't actually test any of it though)
|
||||||
It was not obvious to me that the following is true (it could well be though):
|
|
||||||
|
|
||||||
Emacs on Windows automatically determines your default printer and
|
|
||||||
sets the variable `printer-name' to that printer's name.
|
|
||||||
|
|
||||||
msdog-xtra.texi rgm (can't actually test any of it though)
|
msdog-xtra.texi rgm (can't actually test any of it though)
|
||||||
mule.texi
|
mule.texi rgm (not 100% sure about "Fontsets")
|
||||||
m-x.texi cyd
|
m-x.texi cyd
|
||||||
package.texi cyd
|
package.texi cyd
|
||||||
picture-xtra.texi rgm
|
picture-xtra.texi rgm
|
||||||
|
@ -182,7 +177,7 @@ xresources.texi cyd
|
||||||
|
|
||||||
abbrevs.texi rgm
|
abbrevs.texi rgm
|
||||||
advice.texi cyd
|
advice.texi cyd
|
||||||
anti.texi
|
anti.texi rgm
|
||||||
back.texi rgm
|
back.texi rgm
|
||||||
backups.texi cyd
|
backups.texi cyd
|
||||||
buffers.texi cyd
|
buffers.texi cyd
|
||||||
|
|
|
@ -1,3 +1,37 @@
|
||||||
|
2012-04-15 Chong Yidong <cyd@gnu.org>
|
||||||
|
|
||||||
|
* misc.texi (emacsclient Options): More clarifications.
|
||||||
|
|
||||||
|
2012-04-15 Glenn Morris <rgm@gnu.org>
|
||||||
|
|
||||||
|
* msdog.texi (Windows Printing): It doesn't set printer-name.
|
||||||
|
|
||||||
|
* mule.texi (Language Environments): Move font info to "Fontsets".
|
||||||
|
(Fontsets): Move intlfonts etc here from "Language Environments".
|
||||||
|
Copyedits.
|
||||||
|
(Defining Fontsets, Modifying Fontsets, Undisplayable Characters)
|
||||||
|
(Unibyte Mode, Charsets, Bidirectional Editing): Copyedits.
|
||||||
|
|
||||||
|
2012-04-15 Chong Yidong <cyd@gnu.org>
|
||||||
|
|
||||||
|
* glossary.texi (Glossary): Standardize on "text terminal"
|
||||||
|
terminology. All callers changed.
|
||||||
|
|
||||||
|
* misc.texi (emacsclient Options): Document "client frame" concept
|
||||||
|
and its effect on C-x C-c more carefully.
|
||||||
|
|
||||||
|
2012-04-15 Glenn Morris <rgm@gnu.org>
|
||||||
|
|
||||||
|
* frames.texi (Scroll Bars):
|
||||||
|
* glossary.texi (Glossary): Use consistent case for "X Window System".
|
||||||
|
|
||||||
|
* mule.texi (Select Input Method, Coding Systems):
|
||||||
|
State command names in kbd tables.
|
||||||
|
(Recognize Coding): Add cross-ref.
|
||||||
|
(Output Coding): Don't mention message mode in particular.
|
||||||
|
(Text Coding, Communication Coding, File Name Coding, Terminal Coding):
|
||||||
|
Copyedits.
|
||||||
|
|
||||||
2012-04-14 Glenn Morris <rgm@gnu.org>
|
2012-04-14 Glenn Morris <rgm@gnu.org>
|
||||||
|
|
||||||
* mule.texi (Select Input Method, Coding Systems, Recognize Coding):
|
* mule.texi (Select Input Method, Coding Systems, Recognize Coding):
|
||||||
|
|
|
@ -690,8 +690,8 @@ directory-local variables; and the @code{info-finder} feature that
|
||||||
creates a virtual Info manual of package keywords.
|
creates a virtual Info manual of package keywords.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
Károly L@H{o}rentey wrote the ``multi-terminal'' code, which allows Emacs to
|
Károly L@H{o}rentey wrote the ``multi-terminal'' code, which allows
|
||||||
run on graphical and text-only terminals simultaneously.
|
Emacs to run on graphical and text terminals simultaneously.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
Martin Lorentzon wrote @file{vc-annotate.el}, support for version
|
Martin Lorentzon wrote @file{vc-annotate.el}, support for version
|
||||||
|
|
|
@ -372,7 +372,7 @@ the text in the region. @xref{Mark}, for a description of the region.
|
||||||
On most keyboards, @key{DEL} is labeled @key{Backspace}, but we
|
On most keyboards, @key{DEL} is labeled @key{Backspace}, but we
|
||||||
refer to it as @key{DEL} in this manual. (Do not confuse @key{DEL}
|
refer to it as @key{DEL} in this manual. (Do not confuse @key{DEL}
|
||||||
with the @key{Delete} key; we will discuss @key{Delete} momentarily.)
|
with the @key{Delete} key; we will discuss @key{Delete} momentarily.)
|
||||||
On some text-only terminals, Emacs may not recognize the @key{DEL} key
|
On some text terminals, Emacs may not recognize the @key{DEL} key
|
||||||
properly. @xref{DEL Does Not Delete}, if you encounter this problem.
|
properly. @xref{DEL Does Not Delete}, if you encounter this problem.
|
||||||
|
|
||||||
The @key{delete} (@code{delete-forward-char}) command deletes in the
|
The @key{delete} (@code{delete-forward-char}) command deletes in the
|
||||||
|
@ -530,7 +530,7 @@ too long to fit in the window, and Emacs displays it as two or more
|
||||||
@dfn{continuation}, and the long logical line is called a
|
@dfn{continuation}, and the long logical line is called a
|
||||||
@dfn{continued line}. On a graphical display, Emacs indicates line
|
@dfn{continued line}. On a graphical display, Emacs indicates line
|
||||||
wrapping with small bent arrows in the left and right window fringes.
|
wrapping with small bent arrows in the left and right window fringes.
|
||||||
On a text-only terminal, Emacs indicates line wrapping by displaying a
|
On a text terminal, Emacs indicates line wrapping by displaying a
|
||||||
@samp{\} character at the right margin.
|
@samp{\} character at the right margin.
|
||||||
|
|
||||||
Most commands that act on lines act on logical lines, not screen
|
Most commands that act on lines act on logical lines, not screen
|
||||||
|
@ -545,9 +545,9 @@ and up, respectively, by one screen line (@pxref{Moving Point}).
|
||||||
continuing them. This means that every logical line occupies a single
|
continuing them. This means that every logical line occupies a single
|
||||||
screen line; if it is longer than the width of the window, the rest of
|
screen line; if it is longer than the width of the window, the rest of
|
||||||
the line is not displayed. On a graphical display, a truncated line
|
the line is not displayed. On a graphical display, a truncated line
|
||||||
is indicated by a small straight arrow in the right fringe; on a
|
is indicated by a small straight arrow in the right fringe; on a text
|
||||||
text-only terminal, it is indicated by a @samp{$} character in the
|
terminal, it is indicated by a @samp{$} character in the right margin.
|
||||||
right margin. @xref{Line Truncation}.
|
@xref{Line Truncation}.
|
||||||
|
|
||||||
By default, continued lines are wrapped at the right window edge.
|
By default, continued lines are wrapped at the right window edge.
|
||||||
Since the wrapping may occur in the middle of a word, continued lines
|
Since the wrapping may occur in the middle of a word, continued lines
|
||||||
|
|
|
@ -227,13 +227,13 @@ is determined by the variable @code{next-error-highlight}.
|
||||||
If the @file{*compilation*} buffer is shown in a window with a left
|
If the @file{*compilation*} buffer is shown in a window with a left
|
||||||
fringe (@pxref{Fringes}), the locus-visiting commands put an arrow in
|
fringe (@pxref{Fringes}), the locus-visiting commands put an arrow in
|
||||||
the fringe, pointing to the current error message. If the window has
|
the fringe, pointing to the current error message. If the window has
|
||||||
no left fringe, such as on a text-only terminal, these commands scroll
|
no left fringe, such as on a text terminal, these commands scroll the
|
||||||
the window so that the current message is at the top of the window.
|
window so that the current message is at the top of the window. If
|
||||||
If you change the variable @code{compilation-context-lines} to an
|
you change the variable @code{compilation-context-lines} to an integer
|
||||||
integer value @var{n}, these commands scroll the window so that the
|
value @var{n}, these commands scroll the window so that the current
|
||||||
current error message is @var{n} lines from the top, whether or not
|
error message is @var{n} lines from the top, whether or not there is a
|
||||||
there is a fringe; the default value, @code{nil}, gives the behavior
|
fringe; the default value, @code{nil}, gives the behavior described
|
||||||
described above.
|
above.
|
||||||
|
|
||||||
@vindex compilation-error-regexp-alist
|
@vindex compilation-error-regexp-alist
|
||||||
@vindex grep-regexp-alist
|
@vindex grep-regexp-alist
|
||||||
|
@ -572,12 +572,12 @@ for special commands that can be used in the GUD interaction buffer.
|
||||||
|
|
||||||
As you debug a program, Emacs displays the relevant source files by
|
As you debug a program, Emacs displays the relevant source files by
|
||||||
visiting them in Emacs buffers, with an arrow in the left fringe
|
visiting them in Emacs buffers, with an arrow in the left fringe
|
||||||
indicating the current execution line. (On a text-only terminal, the
|
indicating the current execution line. (On a text terminal, the arrow
|
||||||
arrow appears as @samp{=>}, overlaid on the first two text columns.)
|
appears as @samp{=>}, overlaid on the first two text columns.) Moving
|
||||||
Moving point in such a buffer does not move the arrow. You are free
|
point in such a buffer does not move the arrow. You are free to edit
|
||||||
to edit these source files, but note that inserting or deleting lines
|
these source files, but note that inserting or deleting lines will
|
||||||
will throw off the arrow's positioning, as Emacs has no way to figure
|
throw off the arrow's positioning, as Emacs has no way to figure out
|
||||||
out which edited source line corresponds to the line reported by the
|
which edited source line corresponds to the line reported by the
|
||||||
debugger subprocess. To update this information, you typically have
|
debugger subprocess. To update this information, you typically have
|
||||||
to recompile and restart the program.
|
to recompile and restart the program.
|
||||||
|
|
||||||
|
@ -936,7 +936,7 @@ already exists there, the click removes it. A @kbd{C-Mouse-1} click
|
||||||
enables or disables an existing breakpoint; a breakpoint that is
|
enables or disables an existing breakpoint; a breakpoint that is
|
||||||
disabled, but not unset, is indicated by a gray dot.
|
disabled, but not unset, is indicated by a gray dot.
|
||||||
|
|
||||||
On a text-only terminal, or when fringes are disabled, enabled
|
On a text terminal, or when fringes are disabled, enabled
|
||||||
breakpoints are indicated with a @samp{B} character in the left margin
|
breakpoints are indicated with a @samp{B} character in the left margin
|
||||||
of the window. Disabled breakpoints are indicated with @samp{b}.
|
of the window. Disabled breakpoints are indicated with @samp{b}.
|
||||||
(The margin is only displayed if a breakpoint is present.)
|
(The margin is only displayed if a breakpoint is present.)
|
||||||
|
@ -1079,9 +1079,9 @@ debugger}.
|
||||||
|
|
||||||
@findex gdb-frames-select
|
@findex gdb-frames-select
|
||||||
On graphical displays, the selected stack frame is indicated by an
|
On graphical displays, the selected stack frame is indicated by an
|
||||||
arrow in the fringe. On text-only terminals, or when fringes are
|
arrow in the fringe. On text terminals, or when fringes are disabled,
|
||||||
disabled, the selected stack frame is displayed in reverse contrast.
|
the selected stack frame is displayed in reverse contrast. To select
|
||||||
To select a stack frame, move point in its line and type @key{RET}
|
a stack frame, move point in its line and type @key{RET}
|
||||||
(@code{gdb-frames-select}), or click @kbd{Mouse-2} on it. Doing so
|
(@code{gdb-frames-select}), or click @kbd{Mouse-2} on it. Doing so
|
||||||
also updates the Locals buffer
|
also updates the Locals buffer
|
||||||
@ifnottex
|
@ifnottex
|
||||||
|
|
|
@ -849,8 +849,8 @@ emacs -ms coral -cr 'slate blue' &
|
||||||
You can reverse the foreground and background colors through the
|
You can reverse the foreground and background colors through the
|
||||||
@samp{-rv} option or with the X resource @samp{reverseVideo}.
|
@samp{-rv} option or with the X resource @samp{reverseVideo}.
|
||||||
|
|
||||||
The @samp{-fg}, @samp{-bg}, and @samp{-rv} options function on
|
The @samp{-fg}, @samp{-bg}, and @samp{-rv} options function on text
|
||||||
text-only terminals as well as on graphical displays.
|
terminals as well as on graphical displays.
|
||||||
|
|
||||||
@node Window Size X
|
@node Window Size X
|
||||||
@appendixsec Options for Window Size and Position
|
@appendixsec Options for Window Size and Position
|
||||||
|
|
|
@ -62,7 +62,7 @@ starting with @key{ESC}. Thus, you can enter @kbd{M-a} by typing
|
||||||
C-a}. Unlike @key{Meta}, @key{ESC} is entered as a separate
|
C-a}. Unlike @key{Meta}, @key{ESC} is entered as a separate
|
||||||
character. You don't hold down @key{ESC} while typing the next
|
character. You don't hold down @key{ESC} while typing the next
|
||||||
character; instead, press @key{ESC} and release it, then enter the
|
character; instead, press @key{ESC} and release it, then enter the
|
||||||
next character. This feature is useful on certain text-only terminals
|
next character. This feature is useful on certain text terminals
|
||||||
where the @key{Meta} key does not function reliably.
|
where the @key{Meta} key does not function reliably.
|
||||||
|
|
||||||
@cindex keys stolen by window manager
|
@cindex keys stolen by window manager
|
||||||
|
|
|
@ -286,8 +286,8 @@ scrolling whenever point moves off the left or right edge of the
|
||||||
screen. To disable automatic horizontal scrolling, set the variable
|
screen. To disable automatic horizontal scrolling, set the variable
|
||||||
@code{auto-hscroll-mode} to @code{nil}. Note that when the automatic
|
@code{auto-hscroll-mode} to @code{nil}. Note that when the automatic
|
||||||
horizontal scrolling is turned off, if point moves off the edge of the
|
horizontal scrolling is turned off, if point moves off the edge of the
|
||||||
screen, the cursor disappears to indicate that. (On text-only
|
screen, the cursor disappears to indicate that. (On text terminals,
|
||||||
terminals, the cursor is left at the edge instead.)
|
the cursor is left at the edge instead.)
|
||||||
|
|
||||||
@vindex hscroll-margin
|
@vindex hscroll-margin
|
||||||
The variable @code{hscroll-margin} controls how close point can get
|
The variable @code{hscroll-margin} controls how close point can get
|
||||||
|
@ -479,9 +479,9 @@ prompts for a regular expression, and displays only faces with names
|
||||||
matching that regular expression (@pxref{Regexps}).
|
matching that regular expression (@pxref{Regexps}).
|
||||||
|
|
||||||
It's possible for a given face to look different in different
|
It's possible for a given face to look different in different
|
||||||
frames. For instance, some text-only terminals do not support all
|
frames. For instance, some text terminals do not support all face
|
||||||
face attributes, particularly font, height, and width, and some
|
attributes, particularly font, height, and width, and some support a
|
||||||
support a limited range of colors.
|
limited range of colors.
|
||||||
|
|
||||||
@cindex background color
|
@cindex background color
|
||||||
@cindex default face
|
@cindex default face
|
||||||
|
@ -529,13 +529,13 @@ or an @dfn{RGB triplet}.
|
||||||
@samp{medium sea green}. To view a list of color names, type @kbd{M-x
|
@samp{medium sea green}. To view a list of color names, type @kbd{M-x
|
||||||
list-colors-display}. To control the order in which colors are shown,
|
list-colors-display}. To control the order in which colors are shown,
|
||||||
customize @code{list-colors-sort}. If you run this command on a
|
customize @code{list-colors-sort}. If you run this command on a
|
||||||
graphical display, it shows the full range of color names known to Emacs
|
graphical display, it shows the full range of color names known to
|
||||||
(these are the standard X11 color names, defined in X's @file{rgb.txt}
|
Emacs (these are the standard X11 color names, defined in X's
|
||||||
file). If you run the command on a text-only terminal, it shows only a
|
@file{rgb.txt} file). If you run the command on a text terminal, it
|
||||||
small subset of colors that can be safely displayed on such terminals.
|
shows only a small subset of colors that can be safely displayed on
|
||||||
However, Emacs understands X11 color names even on text-only terminals;
|
such terminals. However, Emacs understands X11 color names even on
|
||||||
if a face is given a color specified by an X11 color name, it is
|
text terminals; if a face is given a color specified by an X11 color
|
||||||
displayed using the closest-matching terminal color.
|
name, it is displayed using the closest-matching terminal color.
|
||||||
|
|
||||||
An RGB triplet is a string of the form @samp{#RRGGBB}. Each of the
|
An RGB triplet is a string of the form @samp{#RRGGBB}. Each of the
|
||||||
R, G, and B components is a hexadecimal number specifying the
|
R, G, and B components is a hexadecimal number specifying the
|
||||||
|
@ -651,8 +651,8 @@ at the top of a window just as the mode line appears at the bottom.
|
||||||
Most windows do not have a header line---only some special modes, such
|
Most windows do not have a header line---only some special modes, such
|
||||||
Info mode, create one.
|
Info mode, create one.
|
||||||
@item vertical-border
|
@item vertical-border
|
||||||
This face is used for the vertical divider between windows on
|
This face is used for the vertical divider between windows on text
|
||||||
text-only terminals.
|
terminals.
|
||||||
@item minibuffer-prompt
|
@item minibuffer-prompt
|
||||||
@cindex @code{minibuffer-prompt} face
|
@cindex @code{minibuffer-prompt} face
|
||||||
@vindex minibuffer-prompt-properties
|
@vindex minibuffer-prompt-properties
|
||||||
|
@ -679,9 +679,9 @@ This face determines the color of the mouse pointer.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
The following faces likewise control the appearance of parts of the
|
The following faces likewise control the appearance of parts of the
|
||||||
Emacs frame, but only on text-only terminals, or when Emacs is built
|
Emacs frame, but only on text terminals, or when Emacs is built on X
|
||||||
on X with no toolkit support. (For all other cases, the appearance of
|
with no toolkit support. (For all other cases, the appearance of the
|
||||||
the respective frame elements is determined by system-wide settings.)
|
respective frame elements is determined by system-wide settings.)
|
||||||
|
|
||||||
@table @code
|
@table @code
|
||||||
@item scroll-bar
|
@item scroll-bar
|
||||||
|
@ -1453,9 +1453,9 @@ global-hl-line-mode} enables or disables the same mode globally.
|
||||||
Emacs can display long lines by @dfn{truncation}. This means that all
|
Emacs can display long lines by @dfn{truncation}. This means that all
|
||||||
the characters that do not fit in the width of the screen or window do
|
the characters that do not fit in the width of the screen or window do
|
||||||
not appear at all. On graphical displays, a small straight arrow in
|
not appear at all. On graphical displays, a small straight arrow in
|
||||||
the fringe indicates truncation at either end of the line. On
|
the fringe indicates truncation at either end of the line. On text
|
||||||
text-only terminals, this is indicated with @samp{$} signs in the
|
terminals, this is indicated with @samp{$} signs in the leftmost
|
||||||
leftmost and/or rightmost columns.
|
and/or rightmost columns.
|
||||||
|
|
||||||
@vindex truncate-lines
|
@vindex truncate-lines
|
||||||
@findex toggle-truncate-lines
|
@findex toggle-truncate-lines
|
||||||
|
@ -1577,7 +1577,7 @@ of an overline above the text, including the height of the overline
|
||||||
itself, in pixels; the default is 2.
|
itself, in pixels; the default is 2.
|
||||||
|
|
||||||
@findex tty-suppress-bold-inverse-default-colors
|
@findex tty-suppress-bold-inverse-default-colors
|
||||||
On some text-only terminals, bold face and inverse video together
|
On some text terminals, bold face and inverse video together result
|
||||||
result in text that is hard to read. Call the function
|
in text that is hard to read. Call the function
|
||||||
@code{tty-suppress-bold-inverse-default-colors} with a non-@code{nil}
|
@code{tty-suppress-bold-inverse-default-colors} with a non-@code{nil}
|
||||||
argument to suppress the effect of bold-face in this case.
|
argument to suppress the effect of bold-face in this case.
|
||||||
|
|
|
@ -511,7 +511,7 @@ Frames and Graphical Displays
|
||||||
* Tooltips:: Displaying information at the current mouse position.
|
* Tooltips:: Displaying information at the current mouse position.
|
||||||
* Mouse Avoidance:: Moving the mouse pointer out of the way.
|
* Mouse Avoidance:: Moving the mouse pointer out of the way.
|
||||||
* Non-Window Terminals:: Multiple frames on terminals that show only one.
|
* Non-Window Terminals:: Multiple frames on terminals that show only one.
|
||||||
* Text-Only Mouse:: Using the mouse in text-only terminals.
|
* Text-Only Mouse:: Using the mouse in text terminals.
|
||||||
|
|
||||||
International Character Set Support
|
International Character Set Support
|
||||||
|
|
||||||
|
|
|
@ -148,14 +148,14 @@ stopping the program temporarily and returning control to the parent
|
||||||
process (usually a shell); in most shells, you can resume Emacs after
|
process (usually a shell); in most shells, you can resume Emacs after
|
||||||
suspending it with the shell command @command{%emacs}.
|
suspending it with the shell command @command{%emacs}.
|
||||||
|
|
||||||
Text-only terminals usually listen for certain special characters
|
Text terminals usually listen for certain special characters whose
|
||||||
whose meaning is to kill or suspend the program you are running.
|
meaning is to kill or suspend the program you are running. @b{This
|
||||||
@b{This terminal feature is turned off while you are in Emacs.} The
|
terminal feature is turned off while you are in Emacs.} The meanings
|
||||||
meanings of @kbd{C-z} and @kbd{C-x C-c} as keys in Emacs were inspired
|
of @kbd{C-z} and @kbd{C-x C-c} as keys in Emacs were inspired by the
|
||||||
by the use of @kbd{C-z} and @kbd{C-c} on several operating systems as
|
use of @kbd{C-z} and @kbd{C-c} on several operating systems as the
|
||||||
the characters for stopping or killing a program, but that is their
|
characters for stopping or killing a program, but that is their only
|
||||||
only relationship with the operating system. You can customize these
|
relationship with the operating system. You can customize these keys
|
||||||
keys to run any commands of your choice (@pxref{Keymaps}).
|
to run any commands of your choice (@pxref{Keymaps}).
|
||||||
|
|
||||||
@ifnottex
|
@ifnottex
|
||||||
@lowersections
|
@lowersections
|
||||||
|
|
|
@ -1853,7 +1853,7 @@ When typing a file name in the minibuffer, @kbd{C-@key{tab}}
|
||||||
(@code{file-cache-minibuffer-complete}) completes it using the file
|
(@code{file-cache-minibuffer-complete}) completes it using the file
|
||||||
name cache. If you repeat @kbd{C-@key{tab}}, that cycles through the
|
name cache. If you repeat @kbd{C-@key{tab}}, that cycles through the
|
||||||
possible completions of what you had originally typed. (However, note
|
possible completions of what you had originally typed. (However, note
|
||||||
that the @kbd{C-@key{tab}} character cannot be typed on most text-only
|
that the @kbd{C-@key{tab}} character cannot be typed on most text
|
||||||
terminals.)
|
terminals.)
|
||||||
|
|
||||||
The file name cache does not fill up automatically. Instead, you
|
The file name cache does not fill up automatically. Instead, you
|
||||||
|
|
|
@ -57,9 +57,9 @@ Undo one entry in the current buffer's undo records (@code{undo}).
|
||||||
@kbd{C-x u})@footnote{Aside from @kbd{C-/}, the @code{undo} command is
|
@kbd{C-x u})@footnote{Aside from @kbd{C-/}, the @code{undo} command is
|
||||||
also bound to @kbd{C-x u} because that is more straightforward for
|
also bound to @kbd{C-x u} because that is more straightforward for
|
||||||
beginners to remember: @samp{u} stands for ``undo''. It is also bound
|
beginners to remember: @samp{u} stands for ``undo''. It is also bound
|
||||||
to @kbd{C-_} because typing @kbd{C-/} on some text-only terminals
|
to @kbd{C-_} because typing @kbd{C-/} on some text terminals actually
|
||||||
actually enters @kbd{C-_}.}. This undoes the most recent change in
|
enters @kbd{C-_}.}. This undoes the most recent change in the buffer,
|
||||||
the buffer, and moves point back to where it was before that change.
|
and moves point back to where it was before that change.
|
||||||
|
|
||||||
Consecutive repetitions of @kbd{C-/} (or its aliases) undo earlier
|
Consecutive repetitions of @kbd{C-/} (or its aliases) undo earlier
|
||||||
and earlier changes in the current buffer. If all the recorded
|
and earlier changes in the current buffer. If all the recorded
|
||||||
|
|
|
@ -27,13 +27,12 @@ displays (@pxref{Exiting}). To close just the selected frame, type
|
||||||
|
|
||||||
This chapter describes Emacs features specific to graphical displays
|
This chapter describes Emacs features specific to graphical displays
|
||||||
(particularly mouse commands), and features for managing multiple
|
(particularly mouse commands), and features for managing multiple
|
||||||
frames. On text-only terminals, many of these features are
|
frames. On text terminals, many of these features are unavailable.
|
||||||
unavailable. However, it is still possible to create multiple
|
However, it is still possible to create multiple ``frames'' on text
|
||||||
``frames'' on text-only terminals; such frames are displayed one at a
|
terminals; such frames are displayed one at a time, filling the entire
|
||||||
time, filling the entire terminal screen (@pxref{Non-Window
|
terminal screen (@pxref{Non-Window Terminals}). It is also possible
|
||||||
Terminals}). It is also possible to use the mouse on some text-only
|
to use the mouse on some text terminals (@pxref{Text-Only Mouse}, for
|
||||||
terminals (@pxref{Text-Only Mouse}, for doing so on GNU and Unix
|
doing so on GNU and Unix systems; and
|
||||||
systems; and
|
|
||||||
@iftex
|
@iftex
|
||||||
@pxref{MS-DOS Mouse,,,emacs-xtra,Specialized Emacs Features},
|
@pxref{MS-DOS Mouse,,,emacs-xtra,Specialized Emacs Features},
|
||||||
@end iftex
|
@end iftex
|
||||||
|
@ -62,7 +61,7 @@ for doing so on MS-DOS).
|
||||||
* Tooltips:: Displaying information at the current mouse position.
|
* Tooltips:: Displaying information at the current mouse position.
|
||||||
* Mouse Avoidance:: Preventing the mouse pointer from obscuring text.
|
* Mouse Avoidance:: Preventing the mouse pointer from obscuring text.
|
||||||
* Non-Window Terminals:: Multiple frames on terminals that show only one.
|
* Non-Window Terminals:: Multiple frames on terminals that show only one.
|
||||||
* Text-Only Mouse:: Using the mouse in text-only terminals.
|
* Text-Only Mouse:: Using the mouse in text terminals.
|
||||||
@end menu
|
@end menu
|
||||||
|
|
||||||
@node Mouse Commands
|
@node Mouse Commands
|
||||||
|
@ -465,9 +464,9 @@ the ordinary, interactive frames are deleted. In this case, @kbd{C-x
|
||||||
|
|
||||||
The @kbd{C-x 5 1} (@code{delete-other-frames}) command deletes all
|
The @kbd{C-x 5 1} (@code{delete-other-frames}) command deletes all
|
||||||
other frames on the current terminal (this terminal refers to either a
|
other frames on the current terminal (this terminal refers to either a
|
||||||
graphical display, or a text-only terminal; @pxref{Non-Window
|
graphical display, or a text terminal; @pxref{Non-Window Terminals}).
|
||||||
Terminals}). If the Emacs session has frames open on other graphical
|
If the Emacs session has frames open on other graphical displays or
|
||||||
displays or text terminals, those are not deleted.
|
text terminals, those are not deleted.
|
||||||
|
|
||||||
@vindex focus-follows-mouse
|
@vindex focus-follows-mouse
|
||||||
The @kbd{C-x 5 o} (@code{other-frame}) command selects the next
|
The @kbd{C-x 5 o} (@code{other-frame}) command selects the next
|
||||||
|
@ -908,7 +907,7 @@ scroll bars on the right side of windows), @code{left} (put them on
|
||||||
the left), or @code{nil} (disable scroll bars). By default, Emacs
|
the left), or @code{nil} (disable scroll bars). By default, Emacs
|
||||||
puts scroll bars on the right if it was compiled with GTK+ support on
|
puts scroll bars on the right if it was compiled with GTK+ support on
|
||||||
the X Window System, and on MS-Windows or Mac OS; Emacs puts scroll
|
the X Window System, and on MS-Windows or Mac OS; Emacs puts scroll
|
||||||
bars on the left if compiled on the X Window system without GTK+
|
bars on the left if compiled on the X Window System without GTK+
|
||||||
support (following the old convention for X applications).
|
support (following the old convention for X applications).
|
||||||
|
|
||||||
@vindex scroll-bar-width
|
@vindex scroll-bar-width
|
||||||
|
@ -953,7 +952,7 @@ the use of menu bars at startup, customize the variable
|
||||||
@code{menu-bar-mode}.
|
@code{menu-bar-mode}.
|
||||||
|
|
||||||
@kindex C-Mouse-3 @r{(when menu bar is disabled)}
|
@kindex C-Mouse-3 @r{(when menu bar is disabled)}
|
||||||
Expert users often turn off the menu bar, especially on text-only
|
Expert users often turn off the menu bar, especially on text
|
||||||
terminals, where this makes one additional line available for text.
|
terminals, where this makes one additional line available for text.
|
||||||
If the menu bar is off, you can still pop up a menu of its contents
|
If the menu bar is off, you can still pop up a menu of its contents
|
||||||
with @kbd{C-Mouse-3} on a display which supports pop-up menus.
|
with @kbd{C-Mouse-3} on a display which supports pop-up menus.
|
||||||
|
@ -1112,9 +1111,9 @@ raises the frame.
|
||||||
|
|
||||||
@node Non-Window Terminals
|
@node Non-Window Terminals
|
||||||
@section Non-Window Terminals
|
@section Non-Window Terminals
|
||||||
@cindex text-only terminal
|
@cindex text terminal
|
||||||
|
|
||||||
On a text-only terminal, Emacs can display only one Emacs frame at a
|
On a text terminal, Emacs can display only one Emacs frame at a
|
||||||
time. However, you can still create multiple Emacs frames, and switch
|
time. However, you can still create multiple Emacs frames, and switch
|
||||||
between them. Switching frames on these terminals is much like
|
between them. Switching frames on these terminals is much like
|
||||||
switching between different window configurations.
|
switching between different window configurations.
|
||||||
|
@ -1139,11 +1138,11 @@ to select a frame according to its name. The name you specify appears
|
||||||
in the mode line when the frame is selected.
|
in the mode line when the frame is selected.
|
||||||
|
|
||||||
@node Text-Only Mouse
|
@node Text-Only Mouse
|
||||||
@section Using a Mouse in Text-only Terminals
|
@section Using a Mouse in Text Terminals
|
||||||
@cindex mouse support
|
@cindex mouse support
|
||||||
@cindex terminal emulators, mouse support
|
@cindex terminal emulators, mouse support
|
||||||
|
|
||||||
Some text-only terminals support mouse clicks in the terminal window.
|
Some text terminals support mouse clicks in the terminal window.
|
||||||
|
|
||||||
@cindex xterm
|
@cindex xterm
|
||||||
In a terminal emulator which is compatible with @command{xterm}, you
|
In a terminal emulator which is compatible with @command{xterm}, you
|
||||||
|
|
|
@ -181,7 +181,7 @@ Emacs supports a number of character sets, each of which represents a
|
||||||
particular alphabet or script. @xref{International}.
|
particular alphabet or script. @xref{International}.
|
||||||
|
|
||||||
@item Character Terminal
|
@item Character Terminal
|
||||||
@xref{Glossary - Text-only Terminal}.
|
@xref{Glossary - Text Terminal}.
|
||||||
|
|
||||||
@item Click Event
|
@item Click Event
|
||||||
A click event is the kind of input event (q.v.@:) generated when you
|
A click event is the kind of input event (q.v.@:) generated when you
|
||||||
|
@ -193,7 +193,7 @@ press a mouse button and release it without moving the mouse.
|
||||||
|
|
||||||
@item Clipboard
|
@item Clipboard
|
||||||
A clipboard is a buffer provided by the window system for transferring
|
A clipboard is a buffer provided by the window system for transferring
|
||||||
text between applications. On the X Window system, the clipboard is
|
text between applications. On the X Window System, the clipboard is
|
||||||
provided in addition to the primary selection (q.v.@:); on MS-Windows and Mac,
|
provided in addition to the primary selection (q.v.@:); on MS-Windows and Mac,
|
||||||
the clipboard is used @emph{instead} of the primary selection.
|
the clipboard is used @emph{instead} of the primary selection.
|
||||||
@xref{Clipboard}.
|
@xref{Clipboard}.
|
||||||
|
@ -1329,12 +1329,12 @@ Data consisting of written human language (as opposed to programs),
|
||||||
or following the stylistic conventions of human language.
|
or following the stylistic conventions of human language.
|
||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
@anchor{Glossary - Text-only Terminal}
|
@anchor{Glossary - Text Terminal}
|
||||||
@item Text-only Terminal
|
@item Text Terminal
|
||||||
A text-only terminal is a display that is limited to displaying text in
|
A text terminal, or character terminal, is a display that is limited
|
||||||
character units. Such a terminal cannot control individual pixels it
|
to displaying text in character units. Such a terminal cannot control
|
||||||
displays. Emacs supports a subset of display features on text-only
|
individual pixels it displays. Emacs supports a subset of display
|
||||||
terminals.
|
features on text terminals.
|
||||||
|
|
||||||
@item Text Properties
|
@item Text Properties
|
||||||
Text properties are annotations recorded for particular characters in
|
Text properties are annotations recorded for particular characters in
|
||||||
|
@ -1384,7 +1384,7 @@ displaying it. @xref{Continuation Lines,Truncation}, and
|
||||||
@ref{Glossary - Continuation Line}.
|
@ref{Glossary - Continuation Line}.
|
||||||
|
|
||||||
@item TTY
|
@item TTY
|
||||||
@xref{Glossary - Text-only Terminal}.
|
@xref{Glossary - Text Terminal}.
|
||||||
|
|
||||||
@item Undoing
|
@item Undoing
|
||||||
Undoing means making your previous editing go in reverse, bringing
|
Undoing means making your previous editing go in reverse, bringing
|
||||||
|
|
|
@ -1405,7 +1405,7 @@ signaled.) Currently, this feature is mainly useful for developers.
|
||||||
the shell command @samp{emacsclient @var{file}}, where @var{file} is a
|
the shell command @samp{emacsclient @var{file}}, where @var{file} is a
|
||||||
file name. This connects to an Emacs server, and tells that Emacs
|
file name. This connects to an Emacs server, and tells that Emacs
|
||||||
process to visit @var{file} in one of its existing frames---either a
|
process to visit @var{file} in one of its existing frames---either a
|
||||||
graphical frame, or one in a text-only terminal (@pxref{Frames}). You
|
graphical frame, or one in a text terminal (@pxref{Frames}). You
|
||||||
can then select that frame to begin editing.
|
can then select that frame to begin editing.
|
||||||
|
|
||||||
If there is no Emacs server, the @command{emacsclient} program halts
|
If there is no Emacs server, the @command{emacsclient} program halts
|
||||||
|
@ -1415,12 +1415,12 @@ Server})---then Emacs opens a frame on the terminal in which you
|
||||||
called @command{emacsclient}.
|
called @command{emacsclient}.
|
||||||
|
|
||||||
You can also force @command{emacsclient} to open a new frame on a
|
You can also force @command{emacsclient} to open a new frame on a
|
||||||
graphical display, or on a text-only terminal, using the @samp{-c} and
|
graphical display, or on a text terminal, using the @samp{-c} and
|
||||||
@samp{-t} options. @xref{emacsclient Options}.
|
@samp{-t} options. @xref{emacsclient Options}.
|
||||||
|
|
||||||
If you are running on a single text-only terminal, you can switch
|
If you are running on a single text terminal, you can switch between
|
||||||
between @command{emacsclient}'s shell and the Emacs server using one
|
@command{emacsclient}'s shell and the Emacs server using one of two
|
||||||
of two methods: (i) run the Emacs server and @command{emacsclient} on
|
methods: (i) run the Emacs server and @command{emacsclient} on
|
||||||
different virtual terminals, and switch to the Emacs server's virtual
|
different virtual terminals, and switch to the Emacs server's virtual
|
||||||
terminal after calling @command{emacsclient}; or (ii) call
|
terminal after calling @command{emacsclient}; or (ii) call
|
||||||
@command{emacsclient} from within the Emacs server itself, using Shell
|
@command{emacsclient} from within the Emacs server itself, using Shell
|
||||||
|
@ -1502,16 +1502,24 @@ The environment variable @env{ALTERNATE_EDITOR} has the same effect as
|
||||||
the @samp{-a} option. If both are present, the latter takes
|
the @samp{-a} option. If both are present, the latter takes
|
||||||
precedence.
|
precedence.
|
||||||
|
|
||||||
|
@cindex client frame
|
||||||
@item -c
|
@item -c
|
||||||
Create a new graphical frame, instead of using an existing Emacs
|
Create a new graphical @dfn{client frame}, instead of using an
|
||||||
frame. Emacs can create a graphical frame even if it was started in a
|
existing Emacs frame. If you omit a filename argument while supplying
|
||||||
text-only terminal, provided it is able to connect to a graphical
|
the @samp{-c} option, the new frame displays the @file{*scratch*}
|
||||||
display. If Emacs is unable to connect to a graphical display, and on
|
buffer (@pxref{Buffers}). See below for the special behavior of
|
||||||
systems, such as MS-Windows (@pxref{Windows Startup, emacsclient}),
|
@kbd{C-x C-c} in a client frame.
|
||||||
where it cannot create graphical frames when started from a text-only
|
|
||||||
terminal, it creates a new text-only terminal frame (@pxref{Frames}).
|
If Emacs is unable to create a new graphical frame (e.g.@: if it is
|
||||||
If you omit a filename argument while supplying the @samp{-c} option,
|
unable to connect to the X server), it tries to create a text terminal
|
||||||
the new frame displays the @file{*scratch*} buffer (@pxref{Buffers}).
|
client frame, as though you had supplied the @samp{-t} option instead
|
||||||
|
(see below).
|
||||||
|
|
||||||
|
On MS-Windows, a single Emacs session cannot display frames on both
|
||||||
|
graphical and text terminals, nor on multiple text terminals. Thus,
|
||||||
|
if the Emacs server is running on a text terminal, the @samp{-c}
|
||||||
|
option, like the @samp{-t} option, creates a new frame in the server's
|
||||||
|
current text terminal. @xref{Windows Startup}.
|
||||||
|
|
||||||
@item -F @var{alist}
|
@item -F @var{alist}
|
||||||
@itemx --frame-parameters=@var{alist}
|
@itemx --frame-parameters=@var{alist}
|
||||||
|
@ -1593,28 +1601,46 @@ server it finds. (This option is not supported on MS-Windows.)
|
||||||
@item -t
|
@item -t
|
||||||
@itemx --tty
|
@itemx --tty
|
||||||
@itemx -nw
|
@itemx -nw
|
||||||
Create a new Emacs frame on the current text-only terminal, instead of
|
Create a new client frame on the current text terminal, instead of
|
||||||
using an existing Emacs frame. Emacs can open a text-only terminal
|
using an existing Emacs frame. This is similar to the @samp{-c}
|
||||||
even if it was started in another text-only terminal, or on a
|
option, above, except that it creates a text terminal frame
|
||||||
graphical display. On systems, such as MS-Windows, where this is
|
(@pxref{Non-Window Terminals}). If you omit a filename argument while
|
||||||
impossible, Emacs will create a new frame, either GUI or text-only, on
|
supplying this option, the new frame displays the @file{*scratch*}
|
||||||
the same terminal where it was started (@pxref{Windows Startup,
|
buffer (@pxref{Buffers}). See below for the special behavior of
|
||||||
emacsclient}). If you omit a filename argument while supplying this
|
@kbd{C-x C-c} in a client frame.
|
||||||
option, the new frame displays the @file{*scratch*} buffer.
|
|
||||||
@xref{Buffers}.
|
On MS-Windows, a single Emacs session cannot display frames on both
|
||||||
|
graphical and text terminals, nor on multiple text terminals. Thus,
|
||||||
|
if the Emacs server is using the graphical display, @samp{-t} behaves
|
||||||
|
like @samp{-c} (see above); whereas if the Emacs server is running on
|
||||||
|
a text terminal, it creates a new frame in its current text terminal.
|
||||||
|
@xref{Windows Startup}.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
If you type @kbd{C-x C-c} (@code{save-buffers-kill-terminal}) in an
|
The new graphical or text terminal frames created by the @samp{-c}
|
||||||
Emacs frame created with @command{emacsclient}, via the @samp{-c} or
|
or @samp{-t} options are considered @dfn{client frames}. Any new
|
||||||
@samp{-t} options, Emacs deletes the frame instead of killing the
|
frame that you create from a client frame is also considered a client
|
||||||
Emacs process itself. On a text-only terminal frame created with the
|
frame. If you type @kbd{C-x C-c} (@code{save-buffers-kill-terminal})
|
||||||
@samp{-t} option, this returns control to the terminal. Emacs also
|
in a client frame, that command does not kill the Emacs session as it
|
||||||
marks all the server buffers for the client as finished, as though you
|
normally does (@pxref{Exiting}). Instead, Emacs deletes the client
|
||||||
had typed @kbd{C-x #} in all of them.
|
frame; furthermore, if the client frame has an @command{emacsclient}
|
||||||
|
waiting to regain control (i.e.@: if you did not supply the @samp{-n}
|
||||||
|
option), Emacs deletes all other frames of the same client, and marks
|
||||||
|
the client's server buffers as finished, as though you had typed
|
||||||
|
@kbd{C-x #} in all of them. If it so happens that there are no
|
||||||
|
remaining frames after the client frame(s) are deleted, the Emacs
|
||||||
|
session exits.
|
||||||
|
|
||||||
When Emacs is started as a daemon, all frames are considered client
|
As an exception, when Emacs is started as a daemon, all frames are
|
||||||
frames, so @kbd{C-x C-c} will never kill Emacs. To kill the Emacs
|
considered client frames, and @kbd{C-x C-c} never kills Emacs. To
|
||||||
process, type @kbd{M-x kill-emacs}.
|
kill a daemon session, type @kbd{M-x kill-emacs}.
|
||||||
|
|
||||||
|
Note that the @samp{-t} and @samp{-n} options are contradictory:
|
||||||
|
@samp{-t} says to take control of the current text terminal to create
|
||||||
|
a new client frame, while @samp{-n} says not to take control of the
|
||||||
|
text terminal. If you supply both options, Emacs visits the specified
|
||||||
|
files(s) in an existing frame rather than a new client frame, negating
|
||||||
|
the effect of @samp{-t}.
|
||||||
|
|
||||||
@node Printing, Sorting, Emacs Server, Top
|
@node Printing, Sorting, Emacs Server, Top
|
||||||
@section Printing Hard Copies
|
@section Printing Hard Copies
|
||||||
|
|
|
@ -247,7 +247,7 @@ begins at the top of the character cell.
|
||||||
|
|
||||||
@cindex frames on MS-DOS
|
@cindex frames on MS-DOS
|
||||||
The MS-DOS terminal can only display a single frame at a time. The
|
The MS-DOS terminal can only display a single frame at a time. The
|
||||||
Emacs frame facilities work on MS-DOS much as they do on text-only
|
Emacs frame facilities work on MS-DOS much as they do on text
|
||||||
terminals
|
terminals
|
||||||
@iftex
|
@iftex
|
||||||
(@pxref{Frames,,,emacs, the Emacs Manual}).
|
(@pxref{Frames,,,emacs, the Emacs Manual}).
|
||||||
|
|
|
@ -121,8 +121,8 @@ Emacs will always create a new text-mode frame in the same
|
||||||
created only if the server runs in a GUI session. Similarly, if you
|
created only if the server runs in a GUI session. Similarly, if you
|
||||||
invoke @command{emacsclient} with the @option{-t} option, Emacs will
|
invoke @command{emacsclient} with the @option{-t} option, Emacs will
|
||||||
create a GUI frame if the server runs in a GUI session, or a text-mode
|
create a GUI frame if the server runs in a GUI session, or a text-mode
|
||||||
frame when the session runs in text-only mode in a @dfn{Command
|
frame when the session runs in text mode in a @dfn{Command Prompt}
|
||||||
Prompt} window. @xref{emacsclient Options}.
|
window. @xref{emacsclient Options}.
|
||||||
|
|
||||||
@node Text and Binary
|
@node Text and Binary
|
||||||
@section Text Files and Binary Files
|
@section Text Files and Binary Files
|
||||||
|
@ -729,9 +729,9 @@ Posix-style @code{lpr} program is unavailable. The same Emacs
|
||||||
variables control printing on all systems, but in some cases they have
|
variables control printing on all systems, but in some cases they have
|
||||||
different default values on MS-DOS and MS-Windows.
|
different default values on MS-DOS and MS-Windows.
|
||||||
|
|
||||||
Emacs on Windows automatically determines your default printer and
|
Emacs on MS Windows attempts to determine your default printer
|
||||||
sets the variable @code{printer-name} to that printer's name. But in
|
automatically (using the function @code{default-printer-name}).
|
||||||
some rare cases this can fail, or you may wish to use a different
|
But in some rare cases this can fail, or you may wish to use a different
|
||||||
printer from within Emacs. The rest of this section explains how to
|
printer from within Emacs. The rest of this section explains how to
|
||||||
tell Emacs which printer to use.
|
tell Emacs which printer to use.
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,7 @@ for each command; see @ref{Text Coding}.
|
||||||
@item
|
@item
|
||||||
You can display non-@acronym{ASCII} characters encoded by the various
|
You can display non-@acronym{ASCII} characters encoded by the various
|
||||||
scripts. This works by using appropriate fonts on graphics displays
|
scripts. This works by using appropriate fonts on graphics displays
|
||||||
(@pxref{Defining Fontsets}), and by sending special codes to text-only
|
(@pxref{Defining Fontsets}), and by sending special codes to text
|
||||||
displays (@pxref{Terminal Coding}). If some characters are displayed
|
displays (@pxref{Terminal Coding}). If some characters are displayed
|
||||||
incorrectly, refer to @ref{Undisplayable Characters}, which describes
|
incorrectly, refer to @ref{Undisplayable Characters}, which describes
|
||||||
possible problems and explains how to solve them.
|
possible problems and explains how to solve them.
|
||||||
|
@ -210,7 +210,7 @@ What keys to type to input the character in the current input method
|
||||||
|
|
||||||
@item
|
@item
|
||||||
If you are running Emacs on a graphical display, the font name and
|
If you are running Emacs on a graphical display, the font name and
|
||||||
glyph code for the character. If you are running Emacs on a text-only
|
glyph code for the character. If you are running Emacs on a text
|
||||||
terminal, the code(s) sent to the terminal.
|
terminal, the code(s) sent to the terminal.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
|
@ -365,25 +365,8 @@ UTF-8), Ukrainian, Vietnamese, Welsh, and Windows-1255 (for a setup
|
||||||
which prefers Cyrillic characters and files encoded in Windows-1255).
|
which prefers Cyrillic characters and files encoded in Windows-1255).
|
||||||
@end quotation
|
@end quotation
|
||||||
|
|
||||||
@cindex fonts for various scripts
|
|
||||||
@cindex Intlfonts package, installation
|
|
||||||
To display the script(s) used by your language environment on a
|
To display the script(s) used by your language environment on a
|
||||||
graphical display, you need to have a suitable font. If some of the
|
graphical display, you need to have suitable fonts.
|
||||||
characters appear as empty boxes or hex codes, you should install
|
|
||||||
extra fonts. Your operating system may have optional fonts that
|
|
||||||
you can install; or you can install the
|
|
||||||
GNU Intlfonts package, which includes fonts for most supported
|
|
||||||
scripts.@footnote{If you run Emacs on X, you may need to inform the X
|
|
||||||
server about the location of the newly installed fonts with
|
|
||||||
commands such as:
|
|
||||||
@c FIXME? I feel like this may be out of date.
|
|
||||||
@c Eg the intlfonts tarfile is ~ 10 years old.
|
|
||||||
|
|
||||||
@example
|
|
||||||
xset fp+ /usr/local/share/emacs/fonts
|
|
||||||
xset fp rehash
|
|
||||||
@end example
|
|
||||||
}
|
|
||||||
@xref{Fontsets}, for more details about setting up your fonts.
|
@xref{Fontsets}, for more details about setting up your fonts.
|
||||||
|
|
||||||
@findex set-locale-environment
|
@findex set-locale-environment
|
||||||
|
@ -577,10 +560,10 @@ Text}.
|
||||||
|
|
||||||
@table @kbd
|
@table @kbd
|
||||||
@item C-\
|
@item C-\
|
||||||
Enable or disable use of the selected input method.
|
Enable or disable use of the selected input method (@code{toggle-input-method}).
|
||||||
|
|
||||||
@item C-x @key{RET} C-\ @var{method} @key{RET}
|
@item C-x @key{RET} C-\ @var{method} @key{RET}
|
||||||
Select a new input method for the current buffer.
|
Select a new input method for the current buffer (@code{set-input-method}).
|
||||||
|
|
||||||
@item C-h I @var{method} @key{RET}
|
@item C-h I @var{method} @key{RET}
|
||||||
@itemx C-h C-\ @var{method} @key{RET}
|
@itemx C-h C-\ @var{method} @key{RET}
|
||||||
|
@ -716,7 +699,7 @@ carriage-return (``mac'').
|
||||||
|
|
||||||
@table @kbd
|
@table @kbd
|
||||||
@item C-h C @var{coding} @key{RET}
|
@item C-h C @var{coding} @key{RET}
|
||||||
Describe coding system @var{coding}.
|
Describe coding system @var{coding} (@code{describe-coding-system}).
|
||||||
|
|
||||||
@item C-h C @key{RET}
|
@item C-h C @key{RET}
|
||||||
Describe the coding systems currently in use.
|
Describe the coding systems currently in use.
|
||||||
|
@ -921,7 +904,7 @@ escape sequence detection.
|
||||||
the strongest way to specify the coding system for certain patterns of
|
the strongest way to specify the coding system for certain patterns of
|
||||||
file names, or for files containing certain patterns, respectively.
|
file names, or for files containing certain patterns, respectively.
|
||||||
These variables even override @samp{-*-coding:-*-} tags in the file
|
These variables even override @samp{-*-coding:-*-} tags in the file
|
||||||
itself. For example, Emacs
|
itself (@pxref{Specify Coding}). For example, Emacs
|
||||||
uses @code{auto-coding-alist} for tar and archive files, to prevent it
|
uses @code{auto-coding-alist} for tar and archive files, to prevent it
|
||||||
from being confused by a @samp{-*-coding:-*-} tag in a member of the
|
from being confused by a @samp{-*-coding:-*-} tag in a member of the
|
||||||
archive and thinking it applies to the archive file as a whole.
|
archive and thinking it applies to the archive file as a whole.
|
||||||
|
@ -1006,6 +989,7 @@ and asks you to choose one of those coding systems.
|
||||||
|
|
||||||
If you insert the unsuitable characters in a mail message, Emacs
|
If you insert the unsuitable characters in a mail message, Emacs
|
||||||
behaves a bit differently. It additionally checks whether the
|
behaves a bit differently. It additionally checks whether the
|
||||||
|
@c What determines this?
|
||||||
most-preferred coding system is recommended for use in MIME messages;
|
most-preferred coding system is recommended for use in MIME messages;
|
||||||
if not, Emacs tells you that the most-preferred coding system is not
|
if not, Emacs tells you that the most-preferred coding system is not
|
||||||
recommended and prompts you for another coding system. This is so you
|
recommended and prompts you for another coding system. This is so you
|
||||||
|
@ -1014,17 +998,22 @@ recipient's mail software will have difficulty decoding. (You can
|
||||||
still use an unsuitable coding system if you type its name in response
|
still use an unsuitable coding system if you type its name in response
|
||||||
to the question.)
|
to the question.)
|
||||||
|
|
||||||
|
@c It seems that select-message-coding-system does this.
|
||||||
|
@c Both sendmail.el and smptmail.el call it; i.e. smtpmail.el still
|
||||||
|
@c obeys sendmail-coding-system.
|
||||||
@vindex sendmail-coding-system
|
@vindex sendmail-coding-system
|
||||||
When you send a message with Message mode (@pxref{Sending Mail}),
|
When you send a mail message (@pxref{Sending Mail}),
|
||||||
Emacs has four different ways to determine the coding system to use
|
Emacs has four different ways to determine the coding system to use
|
||||||
for encoding the message text. It tries the buffer's own value of
|
for encoding the message text. It tries the buffer's own value of
|
||||||
@code{buffer-file-coding-system}, if that is non-@code{nil}.
|
@code{buffer-file-coding-system}, if that is non-@code{nil}.
|
||||||
Otherwise, it uses the value of @code{sendmail-coding-system}, if that
|
Otherwise, it uses the value of @code{sendmail-coding-system}, if that
|
||||||
is non-@code{nil}. The third way is to use the default coding system
|
is non-@code{nil}. The third way is to use the default coding system
|
||||||
for new files, which is controlled by your choice of language
|
for new files, which is controlled by your choice of language
|
||||||
|
@c i.e., default-sendmail-coding-system
|
||||||
environment, if that is non-@code{nil}. If all of these three values
|
environment, if that is non-@code{nil}. If all of these three values
|
||||||
are @code{nil}, Emacs encodes outgoing mail using the Latin-1 coding
|
are @code{nil}, Emacs encodes outgoing mail using the Latin-1 coding
|
||||||
system.
|
system.
|
||||||
|
@c FIXME? Where does the Latin-1 default come in?
|
||||||
|
|
||||||
@node Text Coding
|
@node Text Coding
|
||||||
@section Specifying a Coding System for File Text
|
@section Specifying a Coding System for File Text
|
||||||
|
@ -1035,8 +1024,8 @@ one:
|
||||||
|
|
||||||
@table @kbd
|
@table @kbd
|
||||||
@item C-x @key{RET} f @var{coding} @key{RET}
|
@item C-x @key{RET} f @var{coding} @key{RET}
|
||||||
Use coding system @var{coding} to save or revisit the visited file in
|
Use coding system @var{coding} to save or revisit the file in
|
||||||
the current buffer (@code{set-buffer-file-coding-system})
|
the current buffer (@code{set-buffer-file-coding-system}).
|
||||||
|
|
||||||
@item C-x @key{RET} c @var{coding} @key{RET}
|
@item C-x @key{RET} c @var{coding} @key{RET}
|
||||||
Specify coding system @var{coding} for the immediately following
|
Specify coding system @var{coding} for the immediately following
|
||||||
|
@ -1066,8 +1055,8 @@ buffer.
|
||||||
You can also use this command to specify the end-of-line conversion
|
You can also use this command to specify the end-of-line conversion
|
||||||
(@pxref{Coding Systems, end-of-line conversion}) for encoding the
|
(@pxref{Coding Systems, end-of-line conversion}) for encoding the
|
||||||
current buffer. For example, @kbd{C-x @key{RET} f dos @key{RET}} will
|
current buffer. For example, @kbd{C-x @key{RET} f dos @key{RET}} will
|
||||||
cause Emacs to save the current buffer's text with DOS-style CRLF line
|
cause Emacs to save the current buffer's text with DOS-style
|
||||||
endings.
|
carriage-return linefeed line endings.
|
||||||
|
|
||||||
@kindex C-x RET c
|
@kindex C-x RET c
|
||||||
@findex universal-coding-system-argument
|
@findex universal-coding-system-argument
|
||||||
|
@ -1155,7 +1144,7 @@ coding system for the next selection made in Emacs or read by Emacs.
|
||||||
The variable @code{x-select-request-type} specifies the data type to
|
The variable @code{x-select-request-type} specifies the data type to
|
||||||
request from the X Window System for receiving text selections from
|
request from the X Window System for receiving text selections from
|
||||||
other applications. If the value is @code{nil} (the default), Emacs
|
other applications. If the value is @code{nil} (the default), Emacs
|
||||||
tries @code{COMPOUND_TEXT} and @code{UTF8_STRING}, in this order, and
|
tries @code{UTF8_STRING} and @code{COMPOUND_TEXT}, in this order, and
|
||||||
uses various heuristics to choose the more appropriate of the two
|
uses various heuristics to choose the more appropriate of the two
|
||||||
results; if none of these succeed, Emacs falls back on @code{STRING}.
|
results; if none of these succeed, Emacs falls back on @code{STRING}.
|
||||||
If the value of @code{x-select-request-type} is one of the symbols
|
If the value of @code{x-select-request-type} is one of the symbols
|
||||||
|
@ -1187,8 +1176,8 @@ current language environment.
|
||||||
The variable @code{locale-coding-system} specifies a coding system
|
The variable @code{locale-coding-system} specifies a coding system
|
||||||
to use when encoding and decoding system strings such as system error
|
to use when encoding and decoding system strings such as system error
|
||||||
messages and @code{format-time-string} formats and time stamps. That
|
messages and @code{format-time-string} formats and time stamps. That
|
||||||
coding system is also used for decoding non-@acronym{ASCII} keyboard input on X
|
coding system is also used for decoding non-@acronym{ASCII} keyboard
|
||||||
Window systems. You should choose a coding system that is compatible
|
input on the X Window System. You should choose a coding system that is compatible
|
||||||
with the underlying system's text representation, which is normally
|
with the underlying system's text representation, which is normally
|
||||||
specified by one of the environment variables @env{LC_ALL},
|
specified by one of the environment variables @env{LC_ALL},
|
||||||
@env{LC_CTYPE}, and @env{LANG}. (The first one, in the order
|
@env{LC_CTYPE}, and @env{LANG}. (The first one, in the order
|
||||||
|
@ -1201,27 +1190,29 @@ the text representation.)
|
||||||
@table @kbd
|
@table @kbd
|
||||||
@item C-x @key{RET} F @var{coding} @key{RET}
|
@item C-x @key{RET} F @var{coding} @key{RET}
|
||||||
Use coding system @var{coding} for encoding and decoding file
|
Use coding system @var{coding} for encoding and decoding file
|
||||||
@emph{names} (@code{set-file-name-coding-system}).
|
names (@code{set-file-name-coding-system}).
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@vindex file-name-coding-system
|
|
||||||
@cindex file names with non-@acronym{ASCII} characters
|
|
||||||
The variable @code{file-name-coding-system} specifies a coding
|
|
||||||
system to use for encoding file names. It has no effect on reading
|
|
||||||
and writing the @emph{contents} of files.
|
|
||||||
|
|
||||||
@findex set-file-name-coding-system
|
@findex set-file-name-coding-system
|
||||||
@kindex C-x @key{RET} F
|
@kindex C-x @key{RET} F
|
||||||
If you set the variable to a coding system name (as a Lisp symbol or
|
@cindex file names with non-@acronym{ASCII} characters
|
||||||
a string), Emacs encodes file names using that coding system for all
|
The command @kbd{C-x @key{RET} F} (@code{set-file-name-coding-system})
|
||||||
file operations. This makes it possible to use non-@acronym{ASCII}
|
specifies a coding system to use for encoding file @emph{names}. It
|
||||||
characters in file names---or, at least, those non-@acronym{ASCII}
|
has no effect on reading and writing the @emph{contents} of files.
|
||||||
characters which the specified coding system can encode. Use @kbd{C-x
|
|
||||||
@key{RET} F} (@code{set-file-name-coding-system}) to specify this
|
@vindex file-name-coding-system
|
||||||
interactively.
|
In fact, all this command does is set the value of the variable
|
||||||
|
@code{file-name-coding-system}. If you set the variable to a coding
|
||||||
|
system name (as a Lisp symbol or a string), Emacs encodes file names
|
||||||
|
using that coding system for all file operations. This makes it
|
||||||
|
possible to use non-@acronym{ASCII} characters in file names---or, at
|
||||||
|
least, those non-@acronym{ASCII} characters that the specified coding
|
||||||
|
system can encode.
|
||||||
|
|
||||||
If @code{file-name-coding-system} is @code{nil}, Emacs uses a
|
If @code{file-name-coding-system} is @code{nil}, Emacs uses a
|
||||||
default coding system determined by the selected language environment.
|
default coding system determined by the selected language environment,
|
||||||
|
and stored in the @code{default-file-name-coding-system} variable.
|
||||||
|
@c FIXME? Is this correct? What is the "default language environment"?
|
||||||
In the default language environment, non-@acronym{ASCII} characters in
|
In the default language environment, non-@acronym{ASCII} characters in
|
||||||
file names are not encoded specially; they appear in the file system
|
file names are not encoded specially; they appear in the file system
|
||||||
using the internal Emacs representation.
|
using the internal Emacs representation.
|
||||||
|
@ -1232,7 +1223,7 @@ result if you have already visited files whose names were encoded using
|
||||||
the earlier coding system and cannot be encoded (or are encoded
|
the earlier coding system and cannot be encoded (or are encoded
|
||||||
differently) under the new coding system. If you try to save one of
|
differently) under the new coding system. If you try to save one of
|
||||||
these buffers under the visited file name, saving may use the wrong file
|
these buffers under the visited file name, saving may use the wrong file
|
||||||
name, or it may get an error. If such a problem happens, use @kbd{C-x
|
name, or it may encounter an error. If such a problem happens, use @kbd{C-x
|
||||||
C-w} to specify a new file name for that buffer.
|
C-w} to specify a new file name for that buffer.
|
||||||
|
|
||||||
@findex recode-file-name
|
@findex recode-file-name
|
||||||
|
@ -1245,13 +1236,13 @@ system, and the coding system to which you wish to convert.
|
||||||
@section Coding Systems for Terminal I/O
|
@section Coding Systems for Terminal I/O
|
||||||
|
|
||||||
@table @kbd
|
@table @kbd
|
||||||
@item C-x @key{RET} k @var{coding} @key{RET}
|
|
||||||
Use coding system @var{coding} for keyboard input
|
|
||||||
(@code{set-keyboard-coding-system}).
|
|
||||||
|
|
||||||
@item C-x @key{RET} t @var{coding} @key{RET}
|
@item C-x @key{RET} t @var{coding} @key{RET}
|
||||||
Use coding system @var{coding} for terminal output
|
Use coding system @var{coding} for terminal output
|
||||||
(@code{set-terminal-coding-system}).
|
(@code{set-terminal-coding-system}).
|
||||||
|
|
||||||
|
@item C-x @key{RET} k @var{coding} @key{RET}
|
||||||
|
Use coding system @var{coding} for keyboard input
|
||||||
|
(@code{set-keyboard-coding-system}).
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@kindex C-x RET t
|
@kindex C-x RET t
|
||||||
|
@ -1274,8 +1265,8 @@ your locale specification (@pxref{Language Environments}).
|
||||||
@kindex C-x RET k
|
@kindex C-x RET k
|
||||||
@findex set-keyboard-coding-system
|
@findex set-keyboard-coding-system
|
||||||
@vindex keyboard-coding-system
|
@vindex keyboard-coding-system
|
||||||
The command @kbd{C-x @key{RET} k} (@code{set-keyboard-coding-system})
|
The command @kbd{C-x @key{RET} k} (@code{set-keyboard-coding-system}),
|
||||||
or the variable @code{keyboard-coding-system} specifies the coding
|
or the variable @code{keyboard-coding-system}, specifies the coding
|
||||||
system for keyboard input. Character-code translation of keyboard
|
system for keyboard input. Character-code translation of keyboard
|
||||||
input is useful for terminals with keys that send non-@acronym{ASCII}
|
input is useful for terminals with keys that send non-@acronym{ASCII}
|
||||||
graphic characters---for example, some terminals designed for ISO
|
graphic characters---for example, some terminals designed for ISO
|
||||||
|
@ -1310,30 +1301,49 @@ non-graphic characters.
|
||||||
A font typically defines shapes for a single alphabet or script.
|
A font typically defines shapes for a single alphabet or script.
|
||||||
Therefore, displaying the entire range of scripts that Emacs supports
|
Therefore, displaying the entire range of scripts that Emacs supports
|
||||||
requires a collection of many fonts. In Emacs, such a collection is
|
requires a collection of many fonts. In Emacs, such a collection is
|
||||||
called a @dfn{fontset}. A fontset is defined by a list of font specs,
|
called a @dfn{fontset}. A fontset is defined by a list of font specifications,
|
||||||
each assigned to handle a range of character codes, and may fall back
|
each assigned to handle a range of character codes, and may fall back
|
||||||
on another fontset for characters which are not covered by the fonts
|
on another fontset for characters that are not covered by the fonts
|
||||||
it specifies.
|
it specifies.
|
||||||
|
|
||||||
|
@cindex fonts for various scripts
|
||||||
|
@cindex Intlfonts package, installation
|
||||||
Each fontset has a name, like a font. However, while fonts are
|
Each fontset has a name, like a font. However, while fonts are
|
||||||
stored in the system and the available font names are defined by the
|
stored in the system and the available font names are defined by the
|
||||||
system, fontsets are defined within Emacs itself. Once you have
|
system, fontsets are defined within Emacs itself. Once you have
|
||||||
defined a fontset, you can use it within Emacs by specifying its name,
|
defined a fontset, you can use it within Emacs by specifying its name,
|
||||||
anywhere that you could use a single font. Of course, Emacs fontsets
|
anywhere that you could use a single font. Of course, Emacs fontsets
|
||||||
can use only the fonts that the system supports; if certain characters
|
can use only the fonts that the system supports. If some characters
|
||||||
appear on the screen as hollow boxes, this means that the fontset in
|
appear on the screen as empty boxes or hex codes, this means that the
|
||||||
use for them has no font for those characters.@footnote{The Emacs
|
fontset in use for them has no font for those characters. In this
|
||||||
installation instructions have information on additional font
|
case, or if the characters are shown, but not as well as you would
|
||||||
support.}
|
like, you may need to install extra fonts. Your operating system may
|
||||||
|
have optional fonts that you can install; or you can install the GNU
|
||||||
|
Intlfonts package, which includes fonts for most supported
|
||||||
|
scripts.@footnote{If you run Emacs on X, you may need to inform the X
|
||||||
|
server about the location of the newly installed fonts with commands
|
||||||
|
such as:
|
||||||
|
@c FIXME? I feel like this may be out of date.
|
||||||
|
@c Eg the intlfonts tarfile is ~ 10 years old.
|
||||||
|
|
||||||
|
@example
|
||||||
|
xset fp+ /usr/local/share/emacs/fonts
|
||||||
|
xset fp rehash
|
||||||
|
@end example
|
||||||
|
}
|
||||||
|
|
||||||
Emacs creates three fontsets automatically: the @dfn{standard
|
Emacs creates three fontsets automatically: the @dfn{standard
|
||||||
fontset}, the @dfn{startup fontset} and the @dfn{default fontset}.
|
fontset}, the @dfn{startup fontset} and the @dfn{default fontset}.
|
||||||
|
@c FIXME? The doc of *standard*-fontset-spec says:
|
||||||
|
@c "You have the biggest chance to display international characters
|
||||||
|
@c with correct glyphs by using the *standard* fontset." (my emphasis)
|
||||||
The default fontset is most likely to have fonts for a wide variety of
|
The default fontset is most likely to have fonts for a wide variety of
|
||||||
non-@acronym{ASCII} characters and is the default fallback for the
|
non-@acronym{ASCII} characters, and is the default fallback for the
|
||||||
other two fontsets, and if you set a default font rather than fontset.
|
other two fontsets, and if you set a default font rather than fontset.
|
||||||
However it does not specify font family names, so results can be
|
However, it does not specify font family names, so results can be
|
||||||
somewhat random if you use it directly. You can specify use of a
|
somewhat random if you use it directly. You can specify use of a
|
||||||
specific fontset with the @samp{-fn} option. For example,
|
particular fontset by starting Emacs with the @samp{-fn} option.
|
||||||
|
For example,
|
||||||
|
|
||||||
@example
|
@example
|
||||||
emacs -fn fontset-standard
|
emacs -fn fontset-standard
|
||||||
|
@ -1372,10 +1382,12 @@ of @code{standard-fontset-spec}. This fontset's name is
|
||||||
@noindent
|
@noindent
|
||||||
or just @samp{fontset-standard} for short.
|
or just @samp{fontset-standard} for short.
|
||||||
|
|
||||||
On GNUstep and Mac, fontset-standard is created using the value of
|
On GNUstep and Mac OS X, the standard fontset is created using the value of
|
||||||
@code{ns-standard-fontset-spec}, and on Windows it is
|
@code{ns-standard-fontset-spec}, and on MS Windows it is
|
||||||
created using the value of @code{w32-standard-fontset-spec}.
|
created using the value of @code{w32-standard-fontset-spec}.
|
||||||
|
|
||||||
|
@c FIXME? How does one access these, or do anything with them?
|
||||||
|
@c Does it matter?
|
||||||
Bold, italic, and bold-italic variants of the standard fontset are
|
Bold, italic, and bold-italic variants of the standard fontset are
|
||||||
created automatically. Their names have @samp{bold} instead of
|
created automatically. Their names have @samp{bold} instead of
|
||||||
@samp{medium}, or @samp{i} instead of @samp{r}, or both.
|
@samp{medium}, or @samp{i} instead of @samp{r}, or both.
|
||||||
|
@ -1390,8 +1402,15 @@ started. This is the @dfn{startup fontset} and its name is
|
||||||
@var{charset_encoding} field with @samp{startup}, then using the
|
@var{charset_encoding} field with @samp{startup}, then using the
|
||||||
resulting string to specify a fontset.
|
resulting string to specify a fontset.
|
||||||
|
|
||||||
For instance, if you start Emacs this way,
|
For instance, if you start Emacs with a font of this form,
|
||||||
|
|
||||||
|
@c FIXME? I think this is a little misleading, because you cannot (?)
|
||||||
|
@c actually specify a font with wildcards, it has to be a complete spec.
|
||||||
|
@c Also, an X font specification of this form hasn't (?) been
|
||||||
|
@c mentioned before now, and is somewhat obsolete these days.
|
||||||
|
@c People are more likely to use a form like
|
||||||
|
@c emacs -fn "DejaVu Sans Mono-12"
|
||||||
|
@c How does any of this apply in that case?
|
||||||
@example
|
@example
|
||||||
emacs -fn "*courier-medium-r-normal--14-140-*-iso8859-1"
|
emacs -fn "*courier-medium-r-normal--14-140-*-iso8859-1"
|
||||||
@end example
|
@end example
|
||||||
|
@ -1404,8 +1423,8 @@ window frame:
|
||||||
-*-courier-medium-r-normal-*-14-140-*-*-*-*-fontset-startup
|
-*-courier-medium-r-normal-*-14-140-*-*-*-*-fontset-startup
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
The startup fontset will use the font that you specify or a variant
|
The startup fontset will use the font that you specify, or a variant
|
||||||
with a different registry and encoding for all the characters which
|
with a different registry and encoding, for all the characters that
|
||||||
are supported by that font, and fallback on @samp{fontset-default} for
|
are supported by that font, and fallback on @samp{fontset-default} for
|
||||||
other characters.
|
other characters.
|
||||||
|
|
||||||
|
@ -1413,7 +1432,8 @@ other characters.
|
||||||
just like an actual font name. But be careful not to specify a fontset
|
just like an actual font name. But be careful not to specify a fontset
|
||||||
name in a wildcard resource like @samp{Emacs*Font}---that wildcard
|
name in a wildcard resource like @samp{Emacs*Font}---that wildcard
|
||||||
specification matches various other resources, such as for menus, and
|
specification matches various other resources, such as for menus, and
|
||||||
menus cannot handle fontsets.
|
@c FIXME is this still true?
|
||||||
|
menus cannot handle fontsets. @xref{X Resources}.
|
||||||
|
|
||||||
You can specify additional fontsets using X resources named
|
You can specify additional fontsets using X resources named
|
||||||
@samp{Fontset-@var{n}}, where @var{n} is an integer starting from 0.
|
@samp{Fontset-@var{n}}, where @var{n} is an integer starting from 0.
|
||||||
|
@ -1424,7 +1444,8 @@ The resource value should have this form:
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
|
||||||
@noindent
|
@noindent
|
||||||
@var{fontpattern} should have the form of a standard X font name, except
|
@var{fontpattern} should have the form of a standard X font name (see
|
||||||
|
the previous fontset-startup example), except
|
||||||
for the last two fields. They should have the form
|
for the last two fields. They should have the form
|
||||||
@samp{fontset-@var{alias}}.
|
@samp{fontset-@var{alias}}.
|
||||||
|
|
||||||
|
@ -1446,7 +1467,7 @@ that describe the character set. For the @acronym{ASCII} character font,
|
||||||
In addition, when several consecutive fields are wildcards, Emacs
|
In addition, when several consecutive fields are wildcards, Emacs
|
||||||
collapses them into a single wildcard. This is to prevent use of
|
collapses them into a single wildcard. This is to prevent use of
|
||||||
auto-scaled fonts. Fonts made by scaling larger fonts are not usable
|
auto-scaled fonts. Fonts made by scaling larger fonts are not usable
|
||||||
for editing, and scaling a smaller font is not useful because it is
|
for editing, and scaling a smaller font is not also useful, because it is
|
||||||
better to use the smaller font in its own size, which is what Emacs
|
better to use the smaller font in its own size, which is what Emacs
|
||||||
does.
|
does.
|
||||||
|
|
||||||
|
@ -1472,8 +1493,8 @@ and the font specification for Chinese GB2312 characters would be this:
|
||||||
|
|
||||||
You may not have any Chinese font matching the above font
|
You may not have any Chinese font matching the above font
|
||||||
specification. Most X distributions include only Chinese fonts that
|
specification. Most X distributions include only Chinese fonts that
|
||||||
have @samp{song ti} or @samp{fangsong ti} in @var{family} field. In
|
have @samp{song ti} or @samp{fangsong ti} in the @var{family} field. In
|
||||||
such a case, @samp{Fontset-@var{n}} can be specified as below:
|
such a case, @samp{Fontset-@var{n}} can be specified as:
|
||||||
|
|
||||||
@smallexample
|
@smallexample
|
||||||
Emacs.Fontset-0: -*-fixed-medium-r-normal-*-24-*-*-*-*-*-fontset-24,\
|
Emacs.Fontset-0: -*-fixed-medium-r-normal-*-24-*-*-*-*-*-fontset-24,\
|
||||||
|
@ -1507,8 +1528,8 @@ script.
|
||||||
|
|
||||||
Fontsets can be modified using the function @code{set-fontset-font},
|
Fontsets can be modified using the function @code{set-fontset-font},
|
||||||
specifying a character, a charset, a script, or a range of characters
|
specifying a character, a charset, a script, or a range of characters
|
||||||
to modify the font for, and a font-spec for the font to be used. Some
|
to modify the font for, and a font specification for the font to be
|
||||||
examples are:
|
used. Some examples are:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
;; Use Liberation Mono for latin-3 charset.
|
;; Use Liberation Mono for latin-3 charset.
|
||||||
|
@ -1535,10 +1556,10 @@ examples are:
|
||||||
@node Undisplayable Characters
|
@node Undisplayable Characters
|
||||||
@section Undisplayable Characters
|
@section Undisplayable Characters
|
||||||
|
|
||||||
There may be a some non-@acronym{ASCII} characters that your terminal cannot
|
There may be some non-@acronym{ASCII} characters that your
|
||||||
display. Most text-only terminals support just a single character
|
terminal cannot display. Most text terminals support just a single
|
||||||
set (use the variable @code{default-terminal-coding-system}
|
character set (use the variable @code{default-terminal-coding-system}
|
||||||
(@pxref{Terminal Coding}) to tell Emacs which one); characters which
|
to tell Emacs which one, @ref{Terminal Coding}); characters that
|
||||||
can't be encoded in that coding system are displayed as @samp{?} by
|
can't be encoded in that coding system are displayed as @samp{?} by
|
||||||
default.
|
default.
|
||||||
|
|
||||||
|
@ -1570,17 +1591,15 @@ the range 0240 to 0377 octal (160 to 255 decimal) to handle the
|
||||||
accented letters and punctuation needed by various European languages
|
accented letters and punctuation needed by various European languages
|
||||||
(and some non-European ones). Note that Emacs considers bytes with
|
(and some non-European ones). Note that Emacs considers bytes with
|
||||||
codes in this range as raw bytes, not as characters, even in a unibyte
|
codes in this range as raw bytes, not as characters, even in a unibyte
|
||||||
session, i.e.@: if you disable multibyte characters. However, Emacs
|
buffer, i.e.@: if you disable multibyte characters. However, Emacs
|
||||||
can still handle these character codes as if they belonged to
|
can still handle these character codes as if they belonged to
|
||||||
@emph{one} of the single-byte character sets at a time. To specify
|
@emph{one} of the single-byte character sets at a time. To specify
|
||||||
@emph{which} of these codes to use, invoke @kbd{M-x
|
@emph{which} of these codes to use, invoke @kbd{M-x
|
||||||
set-language-environment} and specify a suitable language environment
|
set-language-environment} and specify a suitable language environment
|
||||||
such as @samp{Latin-@var{n}}.
|
such as @samp{Latin-@var{n}}.
|
||||||
|
|
||||||
For more information about unibyte operation, see @ref{Disabling
|
For more information about unibyte operation, see
|
||||||
Multibyte}. Note particularly that you probably want to ensure that
|
@ref{Disabling Multibyte}.
|
||||||
your initialization files are read as unibyte if they contain
|
|
||||||
non-@acronym{ASCII} characters.
|
|
||||||
|
|
||||||
@vindex unibyte-display-via-language-environment
|
@vindex unibyte-display-via-language-environment
|
||||||
Emacs can also display bytes in the range 160 to 255 as readable
|
Emacs can also display bytes in the range 160 to 255 as readable
|
||||||
|
@ -1599,8 +1618,8 @@ them as raw bytes, not as characters.
|
||||||
set, Emacs can display these characters as @acronym{ASCII} sequences which at
|
set, Emacs can display these characters as @acronym{ASCII} sequences which at
|
||||||
least give you a clear idea of what the characters are. To do this,
|
least give you a clear idea of what the characters are. To do this,
|
||||||
load the library @code{iso-ascii}. Similar libraries for other
|
load the library @code{iso-ascii}. Similar libraries for other
|
||||||
Latin-@var{n} character sets could be implemented, but we don't have
|
Latin-@var{n} character sets could be implemented, but have not been
|
||||||
them yet.
|
so far.
|
||||||
|
|
||||||
@findex standard-display-8bit
|
@findex standard-display-8bit
|
||||||
@cindex 8-bit display
|
@cindex 8-bit display
|
||||||
|
@ -1624,9 +1643,9 @@ If your keyboard can generate character codes 128 (decimal) and up,
|
||||||
representing non-@acronym{ASCII} characters, you can type those character codes
|
representing non-@acronym{ASCII} characters, you can type those character codes
|
||||||
directly.
|
directly.
|
||||||
|
|
||||||
On a graphical display, you should not need to do anything special to use
|
On a graphical display, you should not need to do anything special to
|
||||||
these keys; they should simply work. On a text-only terminal, you
|
use these keys; they should simply work. On a text terminal, you
|
||||||
should use the command @code{M-x set-keyboard-coding-system} or the
|
should use the command @code{M-x set-keyboard-coding-system} or customize the
|
||||||
variable @code{keyboard-coding-system} to specify which coding system
|
variable @code{keyboard-coding-system} to specify which coding system
|
||||||
your keyboard uses (@pxref{Terminal Coding}). Enabling this feature
|
your keyboard uses (@pxref{Terminal Coding}). Enabling this feature
|
||||||
will probably require you to use @kbd{ESC} to type Meta characters;
|
will probably require you to use @kbd{ESC} to type Meta characters;
|
||||||
|
@ -1694,8 +1713,9 @@ internal representation within Emacs.
|
||||||
@findex list-character-sets
|
@findex list-character-sets
|
||||||
@kbd{M-x list-character-sets} displays a list of all supported
|
@kbd{M-x list-character-sets} displays a list of all supported
|
||||||
charsets. The list gives the names of charsets and additional
|
charsets. The list gives the names of charsets and additional
|
||||||
information to identity each charset (see
|
information to identity each charset; see the
|
||||||
@url{http://www.itscj.ipsj.or.jp/ISO-IR/} for details). In this list,
|
@url{http://www.itscj.ipsj.or.jp/ISO-IR/, International Register of
|
||||||
|
Coded Character Sets} for more details. In this list,
|
||||||
charsets are divided into two categories: @dfn{normal charsets} are
|
charsets are divided into two categories: @dfn{normal charsets} are
|
||||||
listed first, followed by @dfn{supplementary charsets}. A
|
listed first, followed by @dfn{supplementary charsets}. A
|
||||||
supplementary charset is one that is used to define another charset
|
supplementary charset is one that is used to define another charset
|
||||||
|
@ -1715,8 +1735,8 @@ Chars}).
|
||||||
Hebrew, whose natural ordering of horizontal text for display is from
|
Hebrew, whose natural ordering of horizontal text for display is from
|
||||||
right to left. However, digits and Latin text embedded in these
|
right to left. However, digits and Latin text embedded in these
|
||||||
scripts are still displayed left to right. It is also not uncommon to
|
scripts are still displayed left to right. It is also not uncommon to
|
||||||
have small portions of text in Arabic or Hebrew embedded in otherwise
|
have small portions of text in Arabic or Hebrew embedded in an otherwise
|
||||||
Latin document, e.g., as comments and strings in a program source
|
Latin document; e.g., as comments and strings in a program source
|
||||||
file. For these reasons, text that uses these scripts is actually
|
file. For these reasons, text that uses these scripts is actually
|
||||||
@dfn{bidirectional}: a mixture of runs of left-to-right and
|
@dfn{bidirectional}: a mixture of runs of left-to-right and
|
||||||
right-to-left characters.
|
right-to-left characters.
|
||||||
|
@ -1744,6 +1764,7 @@ directionality when they are displayed. The default value is
|
||||||
|
|
||||||
Each paragraph of bidirectional text can have its own @dfn{base
|
Each paragraph of bidirectional text can have its own @dfn{base
|
||||||
direction}, either right-to-left or left-to-right. (Paragraph
|
direction}, either right-to-left or left-to-right. (Paragraph
|
||||||
|
@c paragraph-separate etc have no influence on this?
|
||||||
boundaries are empty lines, i.e.@: lines consisting entirely of
|
boundaries are empty lines, i.e.@: lines consisting entirely of
|
||||||
whitespace characters.) Text in left-to-right paragraphs begins at
|
whitespace characters.) Text in left-to-right paragraphs begins at
|
||||||
the left margin of the window and is truncated or continued when it
|
the left margin of the window and is truncated or continued when it
|
||||||
|
@ -1780,5 +1801,5 @@ commands move point in the logical order, so the cursor will sometimes
|
||||||
jump when point traverses reordered bidirectional text. Similarly, a
|
jump when point traverses reordered bidirectional text. Similarly, a
|
||||||
highlighted region covering a contiguous range of character positions
|
highlighted region covering a contiguous range of character positions
|
||||||
may look discontinuous if the region spans reordered text. This is
|
may look discontinuous if the region spans reordered text. This is
|
||||||
normal and similar to behavior of other programs that support
|
normal and similar to the behavior of other programs that support
|
||||||
bidirectional text.
|
bidirectional text.
|
||||||
|
|
|
@ -8,12 +8,12 @@
|
||||||
@cindex frame
|
@cindex frame
|
||||||
|
|
||||||
On a graphical display, such as on GNU/Linux using the X Window
|
On a graphical display, such as on GNU/Linux using the X Window
|
||||||
System, Emacs occupies a ``graphical window''. On a text-only
|
System, Emacs occupies a ``graphical window''. On a text terminal,
|
||||||
terminal, Emacs occupies the entire terminal screen. We will use the
|
Emacs occupies the entire terminal screen. We will use the term
|
||||||
term @dfn{frame} to mean a graphical window or terminal screen
|
@dfn{frame} to mean a graphical window or terminal screen occupied by
|
||||||
occupied by Emacs. Emacs behaves very similarly on both kinds of
|
Emacs. Emacs behaves very similarly on both kinds of frames. It
|
||||||
frames. It normally starts out with just one frame, but you can
|
normally starts out with just one frame, but you can create additional
|
||||||
create additional frames if you wish (@pxref{Frames}).
|
frames if you wish (@pxref{Frames}).
|
||||||
|
|
||||||
Each frame consists of several distinct regions. At the top of the
|
Each frame consists of several distinct regions. At the top of the
|
||||||
frame is a @dfn{menu bar}, which allows you to access commands via a
|
frame is a @dfn{menu bar}, which allows you to access commands via a
|
||||||
|
@ -178,7 +178,7 @@ unselected windows, in order to make it stand out.
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@noindent
|
@noindent
|
||||||
On a text-only terminal, this text is followed by a series of dashes
|
On a text terminal, this text is followed by a series of dashes
|
||||||
extending to the right edge of the window. These dashes are omitted
|
extending to the right edge of the window. These dashes are omitted
|
||||||
on a graphical display.
|
on a graphical display.
|
||||||
|
|
||||||
|
@ -195,7 +195,7 @@ means no conversion whatsoever, and is usually used for files
|
||||||
containing non-textual data. Other characters represent various
|
containing non-textual data. Other characters represent various
|
||||||
@dfn{coding systems}---for example, @samp{1} represents ISO Latin-1.
|
@dfn{coding systems}---for example, @samp{1} represents ISO Latin-1.
|
||||||
|
|
||||||
On a text-only terminal, @var{cs} is preceded by two additional
|
On a text terminal, @var{cs} is preceded by two additional
|
||||||
characters that describe the coding systems for keyboard input and
|
characters that describe the coding systems for keyboard input and
|
||||||
terminal output. Furthermore, if you are using an input method,
|
terminal output. Furthermore, if you are using an input method,
|
||||||
@var{cs} is preceded by a string that identifies the input method
|
@var{cs} is preceded by a string that identifies the input method
|
||||||
|
@ -228,7 +228,7 @@ However, if the default-directory for the current buffer is on a
|
||||||
remote machine, @samp{@@} is displayed instead (@pxref{File Names}).
|
remote machine, @samp{@@} is displayed instead (@pxref{File Names}).
|
||||||
|
|
||||||
@var{fr} gives the selected frame name (@pxref{Frames}). It appears
|
@var{fr} gives the selected frame name (@pxref{Frames}). It appears
|
||||||
only on text-only terminals. The initial frame's name is @samp{F1}.
|
only on text terminals. The initial frame's name is @samp{F1}.
|
||||||
|
|
||||||
@var{buf} is the name of the buffer displayed in the window.
|
@var{buf} is the name of the buffer displayed in the window.
|
||||||
Usually, this is the same as the name of a file you are editing.
|
Usually, this is the same as the name of a file you are editing.
|
||||||
|
@ -307,13 +307,12 @@ You can then navigate the menus with the arrow keys. To activate a
|
||||||
selected menu item, press @key{RET}; to cancel menu navigation, press
|
selected menu item, press @key{RET}; to cancel menu navigation, press
|
||||||
@key{ESC}.
|
@key{ESC}.
|
||||||
|
|
||||||
On a text-only terminal, you can use the menu bar by typing
|
On a text terminal, you can use the menu bar by typing @kbd{M-`} or
|
||||||
@kbd{M-`} or @key{F10} (these run the command @code{tmm-menubar}).
|
@key{F10} (these run the command @code{tmm-menubar}). This lets you
|
||||||
This lets you select a menu item with the keyboard. A provisional
|
select a menu item with the keyboard. A provisional choice appears in
|
||||||
choice appears in the echo area. You can use the up and down arrow
|
the echo area. You can use the up and down arrow keys to move through
|
||||||
keys to move through the menu to different items, and then you can
|
the menu to different items, and then you can type @key{RET} to select
|
||||||
type @key{RET} to select the item. Each menu item is also designated
|
the item. Each menu item is also designated by a letter or digit
|
||||||
by a letter or digit (usually the initial of some word in the item's
|
(usually the initial of some word in the item's name). This letter or
|
||||||
name). This letter or digit is separated from the item name by
|
digit is separated from the item name by @samp{=>}. You can type the
|
||||||
@samp{=>}. You can type the item's letter or digit to select the
|
item's letter or digit to select the item.
|
||||||
item.
|
|
||||||
|
|
|
@ -172,20 +172,19 @@ used to delete forwards. If this key deletes backward in Emacs, that
|
||||||
too suggests Emacs got the wrong information---but in the opposite
|
too suggests Emacs got the wrong information---but in the opposite
|
||||||
sense.
|
sense.
|
||||||
|
|
||||||
On a text-only terminal, if you find that @key{Backspace} prompts
|
On a text terminal, if you find that @key{Backspace} prompts for a
|
||||||
for a Help command, like @kbd{Control-h}, instead of deleting a
|
Help command, like @kbd{Control-h}, instead of deleting a character,
|
||||||
character, it means that key is actually sending the @key{BS}
|
it means that key is actually sending the @key{BS} character. Emacs
|
||||||
character. Emacs ought to be treating @key{BS} as @key{DEL}, but it
|
ought to be treating @key{BS} as @key{DEL}, but it isn't.
|
||||||
isn't.
|
|
||||||
|
|
||||||
@findex normal-erase-is-backspace-mode
|
@findex normal-erase-is-backspace-mode
|
||||||
In all of those cases, the immediate remedy is the same: use the
|
In all of those cases, the immediate remedy is the same: use the
|
||||||
command @kbd{M-x normal-erase-is-backspace-mode}. This toggles
|
command @kbd{M-x normal-erase-is-backspace-mode}. This toggles
|
||||||
between the two modes that Emacs supports for handling @key{DEL}, so
|
between the two modes that Emacs supports for handling @key{DEL}, so
|
||||||
if Emacs starts in the wrong mode, this should switch to the right
|
if Emacs starts in the wrong mode, this should switch to the right
|
||||||
mode. On a text-only terminal, if you want to ask for help when
|
mode. On a text terminal, if you want to ask for help when @key{BS}
|
||||||
@key{BS} is treated as @key{DEL}, use @key{F1}; @kbd{C-?} may also
|
is treated as @key{DEL}, use @key{F1}; @kbd{C-?} may also work, if it
|
||||||
work, if it sends character code 127.
|
sends character code 127.
|
||||||
|
|
||||||
To fix the problem in every Emacs session, put one of the following
|
To fix the problem in every Emacs session, put one of the following
|
||||||
lines into your initialization file (@pxref{Init File}). For the
|
lines into your initialization file (@pxref{Init File}). For the
|
||||||
|
@ -327,8 +326,8 @@ not make a backup of its old contents.
|
||||||
@node Emergency Escape
|
@node Emergency Escape
|
||||||
@subsection Emergency Escape
|
@subsection Emergency Escape
|
||||||
|
|
||||||
On text-only terminals, the @dfn{emergency escape} feature suspends
|
On text terminals, the @dfn{emergency escape} feature suspends Emacs
|
||||||
Emacs immediately if you type @kbd{C-g} a second time before Emacs can
|
immediately if you type @kbd{C-g} a second time before Emacs can
|
||||||
actually respond to the first one by quitting. This is so you can
|
actually respond to the first one by quitting. This is so you can
|
||||||
always get out of GNU Emacs no matter how badly it might be hung.
|
always get out of GNU Emacs no matter how badly it might be hung.
|
||||||
When things are working properly, Emacs recognizes and handles the
|
When things are working properly, Emacs recognizes and handles the
|
||||||
|
|
|
@ -36,8 +36,8 @@ has its own value of point.
|
||||||
At any time, one Emacs window is the @dfn{selected window}; the
|
At any time, one Emacs window is the @dfn{selected window}; the
|
||||||
buffer this window is displaying is the current buffer. On graphical
|
buffer this window is displaying is the current buffer. On graphical
|
||||||
displays, the point is indicated by a solid blinking cursor in the
|
displays, the point is indicated by a solid blinking cursor in the
|
||||||
selected window, and by a hollow box in non-selected windows. On
|
selected window, and by a hollow box in non-selected windows. On text
|
||||||
text-only terminals, the cursor is drawn only in the selected window.
|
terminals, the cursor is drawn only in the selected window.
|
||||||
@xref{Cursor Display}.
|
@xref{Cursor Display}.
|
||||||
|
|
||||||
Commands to move point affect the value of point for the selected
|
Commands to move point affect the value of point for the selected
|
||||||
|
|
|
@ -1,3 +1,23 @@
|
||||||
|
2012-04-15 Glenn Morris <rgm@gnu.org>
|
||||||
|
|
||||||
|
* processes.texi (Processes, Subprocess Creation, Shell Arguments):
|
||||||
|
(Synchronous Processes, Asynchronous Processes, Deleting Processes):
|
||||||
|
Copyedits.
|
||||||
|
(Subprocess Creation): Discourage modifying exec-path directly.
|
||||||
|
(Synchronous Processes, Asynchronous Processes):
|
||||||
|
Update some example output.
|
||||||
|
(Process Information): Fix typo.
|
||||||
|
(Bindat Spec): Use Texinfo-recommended form of quote+punctuation.
|
||||||
|
|
||||||
|
2012-04-15 Glenn Morris <rgm@gnu.org>
|
||||||
|
|
||||||
|
* anti.texi (Antinews): Copyedits. Don't @dfn anything here.
|
||||||
|
open-network-stream does exist in Emacs 23, but is simpler.
|
||||||
|
|
||||||
|
2012-04-15 Chong Yidong <cyd@gnu.org>
|
||||||
|
|
||||||
|
* customize.texi (Custom Themes): Also document load-theme etc.
|
||||||
|
|
||||||
2012-04-14 Chong Yidong <cyd@gnu.org>
|
2012-04-14 Chong Yidong <cyd@gnu.org>
|
||||||
|
|
||||||
* customize.texi (Applying Customizations):
|
* customize.texi (Applying Customizations):
|
||||||
|
|
|
@ -65,9 +65,9 @@ Emacs windows now have most of their internal state hidden from Lisp.
|
||||||
Internal windows are no longer visible to Lisp; functions such as
|
Internal windows are no longer visible to Lisp; functions such as
|
||||||
@code{window-parent}, window parameters related to window arrangement,
|
@code{window-parent}, window parameters related to window arrangement,
|
||||||
and window-local buffer lists have all been removed. Functions for
|
and window-local buffer lists have all been removed. Functions for
|
||||||
resizing windows can delete windows if when they become too small.
|
resizing windows can delete windows if they become too small.
|
||||||
|
|
||||||
The @dfn{action function} feature for controlling buffer display has
|
The ``action function'' feature for controlling buffer display has
|
||||||
been removed, including @code{display-buffer-overriding-action} and
|
been removed, including @code{display-buffer-overriding-action} and
|
||||||
related variables, as well as the @var{action} argument to
|
related variables, as well as the @var{action} argument to
|
||||||
@code{display-buffer} and other functions. The way to
|
@code{display-buffer} and other functions. The way to
|
||||||
|
@ -80,7 +80,7 @@ variables.
|
||||||
The standard completion interface has been simplified, eliminating the
|
The standard completion interface has been simplified, eliminating the
|
||||||
@code{completion-extra-properties} variable, the @code{metadata}
|
@code{completion-extra-properties} variable, the @code{metadata}
|
||||||
action flag for completion functions, and the concept of
|
action flag for completion functions, and the concept of
|
||||||
@dfn{completion categories}. Lisp programmers may now find the choice
|
``completion categories''. Lisp programmers may now find the choice
|
||||||
of methods for tuning completion less bewildering, but if a package
|
of methods for tuning completion less bewildering, but if a package
|
||||||
finds the streamlined interface insufficient for its needs, it must
|
finds the streamlined interface insufficient for its needs, it must
|
||||||
implement its own specialized completion feature.
|
implement its own specialized completion feature.
|
||||||
|
@ -123,17 +123,19 @@ an additional @var{cache} entry in their definitions, like this:
|
||||||
The @var{cache} entry is used internally by Emacs to record equivalent
|
The @var{cache} entry is used internally by Emacs to record equivalent
|
||||||
keyboard key sequences for invoking the same command; Lisp programs
|
keyboard key sequences for invoking the same command; Lisp programs
|
||||||
should never use it.
|
should never use it.
|
||||||
|
@c Not really NEWS-worthy then...
|
||||||
|
|
||||||
@item
|
@item
|
||||||
The @code{open-network-stream} function has been removed, and so has
|
The @code{gnutls} library has been removed, and the function
|
||||||
the @code{gnutls} library. Lisp programs that want an encrypted
|
@code{open-network-stream} correspondingly simplified.
|
||||||
network connection must now call external utilities such as
|
Lisp programs that want an encrypted network connection must now call
|
||||||
@command{starttls} or @command{gnutls-cli}.
|
external utilities such as @command{starttls} or @command{gnutls-cli}.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
Tool bars can no longer display separators, which frees up several
|
Tool bars can no longer display separators, which frees up several
|
||||||
pixels of space on each graphical frame.
|
pixels of space on each graphical frame.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
Many other functions and variables have been eliminated.
|
As part of the ongoing quest for simplicity, many other functions and
|
||||||
|
variables have been eliminated.
|
||||||
@end itemize
|
@end itemize
|
||||||
|
|
|
@ -22,7 +22,7 @@ subprocess, the Lisp program waits for the subprocess to terminate
|
||||||
before continuing execution. When you create an asynchronous
|
before continuing execution. When you create an asynchronous
|
||||||
subprocess, it can run in parallel with the Lisp program. This kind of
|
subprocess, it can run in parallel with the Lisp program. This kind of
|
||||||
subprocess is represented within Emacs by a Lisp object which is also
|
subprocess is represented within Emacs by a Lisp object which is also
|
||||||
called a ``process.'' Lisp programs can use this object to communicate
|
called a ``process''. Lisp programs can use this object to communicate
|
||||||
with the subprocess or to control it. For example, you can send
|
with the subprocess or to control it. For example, you can send
|
||||||
signals, obtain status information, receive output from the process, or
|
signals, obtain status information, receive output from the process, or
|
||||||
send input to it.
|
send input to it.
|
||||||
|
@ -69,7 +69,9 @@ a program. One of them, @code{start-process}, creates an asynchronous
|
||||||
process and returns a process object (@pxref{Asynchronous Processes}).
|
process and returns a process object (@pxref{Asynchronous Processes}).
|
||||||
The other two, @code{call-process} and @code{call-process-region},
|
The other two, @code{call-process} and @code{call-process-region},
|
||||||
create a synchronous process and do not return a process object
|
create a synchronous process and do not return a process object
|
||||||
(@pxref{Synchronous Processes}).
|
(@pxref{Synchronous Processes}). There are various higher-level
|
||||||
|
functions that make use of these primitives to run particular types of
|
||||||
|
process.
|
||||||
|
|
||||||
Synchronous and asynchronous processes are explained in the following
|
Synchronous and asynchronous processes are explained in the following
|
||||||
sections. Since the three functions are all called in a similar
|
sections. Since the three functions are all called in a similar
|
||||||
|
@ -103,16 +105,19 @@ system-dependent.
|
||||||
|
|
||||||
@strong{Please note:} The argument @var{program} contains only the
|
@strong{Please note:} The argument @var{program} contains only the
|
||||||
name of the program; it may not contain any command-line arguments. You
|
name of the program; it may not contain any command-line arguments. You
|
||||||
must use @var{args} to provide those.
|
must use a separate argument, @var{args}, to provide those, as
|
||||||
|
described below.
|
||||||
|
|
||||||
Each of the subprocess-creating functions has a @var{buffer-or-name}
|
Each of the subprocess-creating functions has a @var{buffer-or-name}
|
||||||
argument which specifies where the standard output from the program will
|
argument that specifies where the standard output from the program will
|
||||||
go. It should be a buffer or a buffer name; if it is a buffer name,
|
go. It should be a buffer or a buffer name; if it is a buffer name,
|
||||||
that will create the buffer if it does not already exist. It can also
|
that will create the buffer if it does not already exist. It can also
|
||||||
be @code{nil}, which says to discard the output unless a filter function
|
be @code{nil}, which says to discard the output unless a filter function
|
||||||
handles it. (@xref{Filter Functions}, and @ref{Read and Print}.)
|
handles it. (@xref{Filter Functions}, and @ref{Read and Print}.)
|
||||||
Normally, you should avoid having multiple processes send output to the
|
Normally, you should avoid having multiple processes send output to the
|
||||||
same buffer because their output would be intermixed randomly.
|
same buffer because their output would be intermixed randomly.
|
||||||
|
For synchronous processes, you can send the output to a file instead
|
||||||
|
of a buffer.
|
||||||
|
|
||||||
@cindex program arguments
|
@cindex program arguments
|
||||||
All three of the subprocess-creating functions have a @code{&rest}
|
All three of the subprocess-creating functions have a @code{&rest}
|
||||||
|
@ -121,18 +126,16 @@ supplied to @var{program} as separate command line arguments. Wildcard
|
||||||
characters and other shell constructs have no special meanings in these
|
characters and other shell constructs have no special meanings in these
|
||||||
strings, since the strings are passed directly to the specified program.
|
strings, since the strings are passed directly to the specified program.
|
||||||
|
|
||||||
The subprocess gets its current directory from the value of
|
|
||||||
@code{default-directory} (@pxref{File Name Expansion}).
|
|
||||||
|
|
||||||
@cindex environment variables, subprocesses
|
@cindex environment variables, subprocesses
|
||||||
The subprocess inherits its environment from Emacs, but you can
|
The subprocess inherits its environment from Emacs, but you can
|
||||||
specify overrides for it with @code{process-environment}. @xref{System
|
specify overrides for it with @code{process-environment}. @xref{System
|
||||||
Environment}.
|
Environment}. The subprocess gets its current directory from the
|
||||||
|
value of @code{default-directory}.
|
||||||
|
|
||||||
@defvar exec-directory
|
@defvar exec-directory
|
||||||
@pindex movemail
|
@pindex movemail
|
||||||
The value of this variable is a string, the name of a directory that
|
The value of this variable is a string, the name of a directory that
|
||||||
contains programs that come with GNU Emacs, programs intended for Emacs
|
contains programs that come with GNU Emacs and are intended for Emacs
|
||||||
to invoke. The program @code{movemail} is an example of such a program;
|
to invoke. The program @code{movemail} is an example of such a program;
|
||||||
Rmail uses it to fetch new mail from an inbox.
|
Rmail uses it to fetch new mail from an inbox.
|
||||||
@end defvar
|
@end defvar
|
||||||
|
@ -147,6 +150,11 @@ directory (which is the value of @code{default-directory}).
|
||||||
The value of @code{exec-path} is used by @code{call-process} and
|
The value of @code{exec-path} is used by @code{call-process} and
|
||||||
@code{start-process} when the @var{program} argument is not an absolute
|
@code{start-process} when the @var{program} argument is not an absolute
|
||||||
file name.
|
file name.
|
||||||
|
|
||||||
|
Generally, you should not modify @code{exec-path} directly. Instead,
|
||||||
|
ensure that your @env{PATH} environment variable is set appropriately
|
||||||
|
before starting Emacs. Trying to modify @code{exec-path}
|
||||||
|
independently of @env{PATH} can lead to confusing results.
|
||||||
@end defopt
|
@end defopt
|
||||||
|
|
||||||
@node Shell Arguments
|
@node Shell Arguments
|
||||||
|
@ -162,7 +170,7 @@ occur in the file name, they will confuse the shell. To handle these
|
||||||
characters, use the function @code{shell-quote-argument}:
|
characters, use the function @code{shell-quote-argument}:
|
||||||
|
|
||||||
@defun shell-quote-argument argument
|
@defun shell-quote-argument argument
|
||||||
This function returns a string which represents, in shell syntax,
|
This function returns a string that represents, in shell syntax,
|
||||||
an argument whose actual contents are @var{argument}. It should
|
an argument whose actual contents are @var{argument}. It should
|
||||||
work reliably to concatenate the return value into a shell command
|
work reliably to concatenate the return value into a shell command
|
||||||
and then pass it to a shell for execution.
|
and then pass it to a shell for execution.
|
||||||
|
@ -200,10 +208,10 @@ a shell command:
|
||||||
The following two functions are useful for combining a list of
|
The following two functions are useful for combining a list of
|
||||||
individual command-line argument strings into a single string, and
|
individual command-line argument strings into a single string, and
|
||||||
taking a string apart into a list of individual command-line
|
taking a string apart into a list of individual command-line
|
||||||
arguments. These functions are mainly intended to be used for
|
arguments. These functions are mainly intended for
|
||||||
converting user input in the minibuffer, a Lisp string, into a list of
|
converting user input in the minibuffer, a Lisp string, into a list of
|
||||||
string arguments to be passed to @code{call-process} or
|
string arguments to be passed to @code{call-process} or
|
||||||
@code{start-process}, or for the converting such lists of arguments in
|
@code{start-process}, or for converting such lists of arguments into
|
||||||
a single Lisp string to be presented in the minibuffer or echo area.
|
a single Lisp string to be presented in the minibuffer or echo area.
|
||||||
|
|
||||||
@defun split-string-and-unquote string &optional separators
|
@defun split-string-and-unquote string &optional separators
|
||||||
|
@ -347,7 +355,7 @@ In the examples below, the buffer @samp{foo} is current.
|
||||||
@result{} 0
|
@result{} 0
|
||||||
|
|
||||||
---------- Buffer: foo ----------
|
---------- Buffer: foo ----------
|
||||||
/usr/user/lewis/manual
|
/home/lewis/manual
|
||||||
---------- Buffer: foo ----------
|
---------- Buffer: foo ----------
|
||||||
@end group
|
@end group
|
||||||
|
|
||||||
|
@ -356,18 +364,18 @@ In the examples below, the buffer @samp{foo} is current.
|
||||||
@result{} 0
|
@result{} 0
|
||||||
|
|
||||||
---------- Buffer: bar ----------
|
---------- Buffer: bar ----------
|
||||||
lewis:5LTsHm66CSWKg:398:21:Bil Lewis:/user/lewis:/bin/csh
|
lewis:x:1001:1001:Bil Lewis,,,,:/home/lewis:/bin/bash
|
||||||
|
|
||||||
---------- Buffer: bar ----------
|
---------- Buffer: bar ----------
|
||||||
@end group
|
@end group
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
|
||||||
Here is a good example of the use of @code{call-process}, which used to
|
Here is an example of the use of @code{call-process}, as used to
|
||||||
be found in the definition of @code{insert-directory}:
|
be found in the definition of the @code{insert-directory} function:
|
||||||
|
|
||||||
@smallexample
|
@smallexample
|
||||||
@group
|
@group
|
||||||
(call-process insert-directory-program nil t nil @var{switches}
|
(call-process insert-directory-program nil t nil switches
|
||||||
(if full-directory-p
|
(if full-directory-p
|
||||||
(concat (file-name-as-directory file) ".")
|
(concat (file-name-as-directory file) ".")
|
||||||
file))
|
file))
|
||||||
|
@ -377,9 +385,9 @@ be found in the definition of @code{insert-directory}:
|
||||||
|
|
||||||
@defun process-file program &optional infile buffer display &rest args
|
@defun process-file program &optional infile buffer display &rest args
|
||||||
This function processes files synchronously in a separate process. It
|
This function processes files synchronously in a separate process. It
|
||||||
is similar to @code{call-process} but may invoke a file handler based
|
is similar to @code{call-process}, but may invoke a file handler based
|
||||||
on the value of the variable @code{default-directory}. The current
|
on the value of the variable @code{default-directory}, which specifies
|
||||||
working directory of the subprocess is @code{default-directory}.
|
the current working directory of the subprocess.
|
||||||
|
|
||||||
The arguments are handled in almost the same way as for
|
The arguments are handled in almost the same way as for
|
||||||
@code{call-process}, with the following differences:
|
@code{call-process}, with the following differences:
|
||||||
|
@ -392,15 +400,15 @@ file handlers might not support separating standard output and error
|
||||||
output by way of the @var{buffer} argument.
|
output by way of the @var{buffer} argument.
|
||||||
|
|
||||||
If a file handler is invoked, it determines the program to run based
|
If a file handler is invoked, it determines the program to run based
|
||||||
on the first argument @var{program}. For instance, consider that a
|
on the first argument @var{program}. For instance, suppose that a
|
||||||
handler for remote files is invoked. Then the path that is used for
|
handler for remote files is invoked. Then the path that is used for
|
||||||
searching the program might be different than @code{exec-path}.
|
searching for the program might be different from @code{exec-path}.
|
||||||
|
|
||||||
The second argument @var{infile} may invoke a file handler. The file
|
The second argument @var{infile} may invoke a file handler. The file
|
||||||
handler could be different from the handler chosen for the
|
handler could be different from the handler chosen for the
|
||||||
@code{process-file} function itself. (For example,
|
@code{process-file} function itself. (For example,
|
||||||
@code{default-directory} could be on a remote host, whereas
|
@code{default-directory} could be on one remote host, and
|
||||||
@var{infile} is on another remote host. Or @code{default-directory}
|
@var{infile} on a different remote host. Or @code{default-directory}
|
||||||
could be non-special, whereas @var{infile} is on a remote host.)
|
could be non-special, whereas @var{infile} is on a remote host.)
|
||||||
|
|
||||||
If @var{buffer} is a list of the form @code{(@var{real-destination}
|
If @var{buffer} is a list of the form @code{(@var{real-destination}
|
||||||
|
@ -417,16 +425,16 @@ file names.
|
||||||
@end defun
|
@end defun
|
||||||
|
|
||||||
@defvar process-file-side-effects
|
@defvar process-file-side-effects
|
||||||
This variable indicates, whether a call of @code{process-file} changes
|
This variable indicates whether a call of @code{process-file} changes
|
||||||
remote files.
|
remote files.
|
||||||
|
|
||||||
Per default, this variable is always set to @code{t}, meaning that a
|
By default, this variable is always set to @code{t}, meaning that a
|
||||||
call of @code{process-file} could potentially change any file on a
|
call of @code{process-file} could potentially change any file on a
|
||||||
remote host. When set to @code{nil}, a file handler could optimize
|
remote host. When set to @code{nil}, a file handler could optimize
|
||||||
its behavior with respect to remote file attributes caching.
|
its behavior with respect to remote file attribute caching.
|
||||||
|
|
||||||
This variable should never be changed by @code{setq}. Instead of, it
|
You should only ever change this variable with a let-binding; never
|
||||||
shall be set only by let-binding.
|
with @code{setq}.
|
||||||
@end defvar
|
@end defvar
|
||||||
|
|
||||||
@defun call-process-region start end program &optional delete destination display &rest args
|
@defun call-process-region start end program &optional delete destination display &rest args
|
||||||
|
@ -442,7 +450,7 @@ as it comes in. For details, see the description of
|
||||||
@code{call-process}, above. If @var{destination} is the integer 0,
|
@code{call-process}, above. If @var{destination} is the integer 0,
|
||||||
@code{call-process-region} discards the output and returns @code{nil}
|
@code{call-process-region} discards the output and returns @code{nil}
|
||||||
immediately, without waiting for the subprocess to finish (this only
|
immediately, without waiting for the subprocess to finish (this only
|
||||||
works if asynchronous subprocesses are supported).
|
works if asynchronous subprocesses are supported; i.e. not on MS-DOS).
|
||||||
|
|
||||||
The remaining arguments, @var{args}, are strings that specify command
|
The remaining arguments, @var{args}, are strings that specify command
|
||||||
line arguments for the program.
|
line arguments for the program.
|
||||||
|
@ -476,20 +484,21 @@ inputinput@point{}
|
||||||
@end group
|
@end group
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
|
||||||
The @code{shell-command-on-region} command uses
|
For example, the @code{shell-command-on-region} command uses
|
||||||
@code{call-process-region} like this:
|
@code{call-process-region} in a manner similar to this:
|
||||||
|
|
||||||
@smallexample
|
@smallexample
|
||||||
@group
|
@group
|
||||||
(call-process-region
|
(call-process-region
|
||||||
start end
|
start end
|
||||||
shell-file-name ; @r{Name of program.}
|
shell-file-name ; @r{name of program}
|
||||||
nil ; @r{Do not delete region.}
|
nil ; @r{do not delete region}
|
||||||
buffer ; @r{Send output to @code{buffer}.}
|
buffer ; @r{send output to @code{buffer}}
|
||||||
nil ; @r{No redisplay during output.}
|
nil ; @r{no redisplay during output}
|
||||||
"-c" command) ; @r{Arguments for the shell.}
|
"-c" command) ; @r{arguments for the shell}
|
||||||
@end group
|
@end group
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
@c It actually uses shell-command-switch, but no need to mention that here.
|
||||||
@end defun
|
@end defun
|
||||||
|
|
||||||
@defun call-process-shell-command command &optional infile destination display &rest args
|
@defun call-process-shell-command command &optional infile destination display &rest args
|
||||||
|
@ -510,6 +519,9 @@ This function executes @var{command} (a string) as a shell command,
|
||||||
then returns the command's output as a string.
|
then returns the command's output as a string.
|
||||||
@end defun
|
@end defun
|
||||||
|
|
||||||
|
@c There is also shell-command-on-region, but that is more of a user
|
||||||
|
@c command, not something to use in programs.
|
||||||
|
|
||||||
@defun process-lines program &rest args
|
@defun process-lines program &rest args
|
||||||
This function runs @var{program}, waits for it to finish, and returns
|
This function runs @var{program}, waits for it to finish, and returns
|
||||||
its output as a list of strings. Each string in the list holds a
|
its output as a list of strings. Each string in the list holds a
|
||||||
|
@ -553,7 +565,8 @@ The remaining arguments, @var{args}, are strings that specify command
|
||||||
line arguments for the program.
|
line arguments for the program.
|
||||||
|
|
||||||
In the example below, the first process is started and runs (rather,
|
In the example below, the first process is started and runs (rather,
|
||||||
sleeps) for 100 seconds. Meanwhile, the second process is started, and
|
sleeps) for 100 seconds (the output buffer @samp{foo} is created
|
||||||
|
immediately). Meanwhile, the second process is started, and
|
||||||
given the name @samp{my-process<1>} for the sake of uniqueness. It
|
given the name @samp{my-process<1>} for the sake of uniqueness. It
|
||||||
inserts the directory listing at the end of the buffer @samp{foo},
|
inserts the directory listing at the end of the buffer @samp{foo},
|
||||||
before the first process finishes. Then it finishes, and a message to
|
before the first process finishes. Then it finishes, and a message to
|
||||||
|
@ -567,13 +580,15 @@ finishes, and another message is inserted in the buffer for it.
|
||||||
@end group
|
@end group
|
||||||
|
|
||||||
@group
|
@group
|
||||||
(start-process "my-process" "foo" "ls" "-l" "/user/lewis/bin")
|
(start-process "my-process" "foo" "ls" "-l" "/bin")
|
||||||
@result{} #<process my-process<1>>
|
@result{} #<process my-process<1>>
|
||||||
|
|
||||||
---------- Buffer: foo ----------
|
---------- Buffer: foo ----------
|
||||||
total 2
|
total 8336
|
||||||
lrwxrwxrwx 1 lewis 14 Jul 22 10:12 gnuemacs --> /emacs
|
-rwxr-xr-x 1 root root 971384 Mar 30 10:14 bash
|
||||||
-rwxrwxrwx 1 lewis 19 Jul 30 21:02 lemon
|
-rwxr-xr-x 1 root root 146920 Jul 5 2011 bsd-csh
|
||||||
|
@dots{}
|
||||||
|
-rwxr-xr-x 1 root root 696880 Feb 28 15:55 zsh4
|
||||||
|
|
||||||
Process my-process<1> finished
|
Process my-process<1> finished
|
||||||
|
|
||||||
|
@ -586,45 +601,49 @@ Process my-process finished
|
||||||
@defun start-file-process name buffer-or-name program &rest args
|
@defun start-file-process name buffer-or-name program &rest args
|
||||||
Like @code{start-process}, this function starts a new asynchronous
|
Like @code{start-process}, this function starts a new asynchronous
|
||||||
subprocess running @var{program} in it, and returns its process
|
subprocess running @var{program} in it, and returns its process
|
||||||
object---when @code{default-directory} is not a magic file name.
|
object.
|
||||||
|
|
||||||
If @code{default-directory} is magic, the function invokes its file
|
The difference from @code{start-process} is that this function may
|
||||||
handler instead. This handler ought to run @var{program}, perhaps on
|
invoked a file handler based on the value of @code{default-directory}.
|
||||||
the local host, perhaps on a remote host that corresponds to
|
This handler ought to run @var{program}, perhaps on the local host,
|
||||||
@code{default-directory}. In the latter case, the local part of
|
perhaps on a remote host that corresponds to @code{default-directory}.
|
||||||
@code{default-directory} becomes the working directory of the process.
|
In the latter case, the local part of @code{default-directory} becomes
|
||||||
|
the working directory of the process.
|
||||||
|
|
||||||
This function does not try to invoke file name handlers for
|
This function does not try to invoke file name handlers for
|
||||||
@var{program} or for the @var{program-args}.
|
@var{program} or for the @var{program-args}.
|
||||||
|
|
||||||
Depending on the implementation of the file handler, it might not be
|
Depending on the implementation of the file handler, it might not be
|
||||||
possible to apply @code{process-filter} or @code{process-sentinel} to
|
possible to apply @code{process-filter} or @code{process-sentinel} to
|
||||||
the resulting process object (@pxref{Filter Functions}, @pxref{Sentinels}).
|
the resulting process object. @xref{Filter Functions}, and @ref{Sentinels}.
|
||||||
|
|
||||||
|
@c FIXME Can we find a better example (i.e. a more modern function
|
||||||
|
@c that is actually documented).
|
||||||
Some file handlers may not support @code{start-file-process} (for
|
Some file handlers may not support @code{start-file-process} (for
|
||||||
example @code{ange-ftp-hook-function}). In such cases, the function
|
example the function @code{ange-ftp-hook-function}). In such cases,
|
||||||
does nothing and returns @code{nil}.
|
this function does nothing and returns @code{nil}.
|
||||||
@end defun
|
@end defun
|
||||||
|
|
||||||
@defun start-process-shell-command name buffer-or-name command
|
@defun start-process-shell-command name buffer-or-name command
|
||||||
This function is like @code{start-process} except that it uses a shell
|
This function is like @code{start-process}, except that it uses a shell
|
||||||
to execute the specified command. The argument @var{command} is a shell
|
to execute the specified command. The argument @var{command} is a shell
|
||||||
command name. The variable @code{shell-file-name} specifies which shell to
|
command name. The variable @code{shell-file-name} specifies which shell to
|
||||||
use.
|
use.
|
||||||
|
|
||||||
The point of running a program through the shell, rather than directly
|
The point of running a program through the shell, rather than directly
|
||||||
with @code{start-process}, is so that you can employ shell features such
|
with @code{start-process}, is so that you can employ shell features such
|
||||||
as wildcards in the arguments. It follows that if you include an
|
as wildcards in the arguments. It follows that if you include any
|
||||||
arbitrary user-specified arguments in the command, you should quote it
|
arbitrary user-specified arguments in the command, you should quote them
|
||||||
with @code{shell-quote-argument} first, so that any special shell
|
with @code{shell-quote-argument} first, so that any special shell
|
||||||
characters do @emph{not} have their special shell meanings. @xref{Shell
|
characters do @emph{not} have their special shell meanings. @xref{Shell
|
||||||
Arguments}.
|
Arguments}. Of course, when executing commands based on user input
|
||||||
|
you should also consider the security implications.
|
||||||
@end defun
|
@end defun
|
||||||
|
|
||||||
@defun start-file-process-shell-command name buffer-or-name command
|
@defun start-file-process-shell-command name buffer-or-name command
|
||||||
This function is like @code{start-process-shell-command}, but uses
|
This function is like @code{start-process-shell-command}, but uses
|
||||||
@code{start-file-process} internally. By this, @var{command} can be
|
@code{start-file-process} internally. Because of this, @var{command}
|
||||||
executed also on remote hosts, depending on @code{default-directory}.
|
can also be executed on remote hosts, depending on @code{default-directory}.
|
||||||
@end defun
|
@end defun
|
||||||
|
|
||||||
@defvar process-connection-type
|
@defvar process-connection-type
|
||||||
|
@ -649,7 +668,7 @@ with one subprocess by binding the variable around the call to
|
||||||
|
|
||||||
@smallexample
|
@smallexample
|
||||||
@group
|
@group
|
||||||
(let ((process-connection-type nil)) ; @r{Use a pipe.}
|
(let ((process-connection-type nil)) ; @r{use a pipe}
|
||||||
(start-process @dots{}))
|
(start-process @dots{}))
|
||||||
@end group
|
@end group
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
@ -666,9 +685,9 @@ Information}).
|
||||||
@dfn{Deleting a process} disconnects Emacs immediately from the
|
@dfn{Deleting a process} disconnects Emacs immediately from the
|
||||||
subprocess. Processes are deleted automatically after they terminate,
|
subprocess. Processes are deleted automatically after they terminate,
|
||||||
but not necessarily right away. You can delete a process explicitly
|
but not necessarily right away. You can delete a process explicitly
|
||||||
at any time. If you delete a terminated process explicitly before it
|
at any time. If you explicitly delete a terminated process before it
|
||||||
is deleted automatically, no harm results. Deleting a running
|
is deleted automatically, no harm results. Deleting a running
|
||||||
process sends a signal to terminate it (and its child processes if
|
process sends a signal to terminate it (and its child processes, if
|
||||||
any), and calls the process sentinel if it has one. @xref{Sentinels}.
|
any), and calls the process sentinel if it has one. @xref{Sentinels}.
|
||||||
|
|
||||||
When a process is deleted, the process object itself continues to
|
When a process is deleted, the process object itself continues to
|
||||||
|
@ -866,7 +885,7 @@ closed the connection, or Emacs did @code{delete-process}.
|
||||||
@end defun
|
@end defun
|
||||||
|
|
||||||
@defun process-live-p process
|
@defun process-live-p process
|
||||||
This function returns nin-@code{nil} if @var{process} is alive. A
|
This function returns non-@code{nil} if @var{process} is alive. A
|
||||||
process is considered alive if its status is @code{run}, @code{open},
|
process is considered alive if its status is @code{run}, @code{open},
|
||||||
@code{listen}, @code{connect} or @code{stop}.
|
@code{listen}, @code{connect} or @code{stop}.
|
||||||
@end defun
|
@end defun
|
||||||
|
@ -2664,7 +2683,7 @@ specification}, a special nested list describing named and typed
|
||||||
@dfn{fields}. This specification controls length of each field to be
|
@dfn{fields}. This specification controls length of each field to be
|
||||||
processed, and how to pack or unpack it. We normally keep bindat specs
|
processed, and how to pack or unpack it. We normally keep bindat specs
|
||||||
in variables whose names end in @samp{-bindat-spec}; that kind of name
|
in variables whose names end in @samp{-bindat-spec}; that kind of name
|
||||||
is automatically recognized as ``risky.''
|
is automatically recognized as ``risky''.
|
||||||
|
|
||||||
@cindex endianness
|
@cindex endianness
|
||||||
@cindex big endian
|
@cindex big endian
|
||||||
|
@ -2674,7 +2693,7 @@ is automatically recognized as ``risky.''
|
||||||
that the field represents and, in the case of multibyte fields, how
|
that the field represents and, in the case of multibyte fields, how
|
||||||
the bytes are ordered within the field. The two possible orderings
|
the bytes are ordered within the field. The two possible orderings
|
||||||
are ``big endian'' (also known as ``network byte ordering'') and
|
are ``big endian'' (also known as ``network byte ordering'') and
|
||||||
``little endian.'' For instance, the number @code{#x23cd} (decimal
|
``little endian''. For instance, the number @code{#x23cd} (decimal
|
||||||
9165) in big endian would be the two bytes @code{#x23} @code{#xcd};
|
9165) in big endian would be the two bytes @code{#x23} @code{#xcd};
|
||||||
and in little endian, @code{#xcd} @code{#x23}. Here are the possible
|
and in little endian, @code{#xcd} @code{#x23}. Here are the possible
|
||||||
type values:
|
type values:
|
||||||
|
|
|
@ -1,3 +1,16 @@
|
||||||
|
2012-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||||
|
|
||||||
|
Avoid the use of ((lambda ...) ...) in lexical-binding code.
|
||||||
|
* emacs-lisp/easy-mmode.el (define-minor-mode):Use funcall (bug#11241).
|
||||||
|
|
||||||
|
2012-04-15 Glenn Morris <rgm@gnu.org>
|
||||||
|
|
||||||
|
* simple.el (process-file-side-effects): Doc fix.
|
||||||
|
|
||||||
|
2012-04-15 Glenn Morris <rgm@gnu.org>
|
||||||
|
|
||||||
|
* international/mule-cmds.el (set-language-environment): Doc fix.
|
||||||
|
|
||||||
2012-04-14 Juanma Barranquero <lekktu@gmail.com>
|
2012-04-14 Juanma Barranquero <lekktu@gmail.com>
|
||||||
|
|
||||||
* server.el (server-auth-key, server-generate-key): Doc fixes.
|
* server.el (server-auth-key, server-generate-key): Doc fixes.
|
||||||
|
|
|
@ -260,7 +260,7 @@ the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'.
|
||||||
;; repeat-command still does the toggling correctly.
|
;; repeat-command still does the toggling correctly.
|
||||||
(interactive (list (or current-prefix-arg 'toggle)))
|
(interactive (list (or current-prefix-arg 'toggle)))
|
||||||
(let ((,last-message (current-message)))
|
(let ((,last-message (current-message)))
|
||||||
(,@(if setter (list setter)
|
(,@(if setter `(funcall #',setter)
|
||||||
(list (if (symbolp mode) 'setq 'setf) mode))
|
(list (if (symbolp mode) 'setq 'setf) mode))
|
||||||
(if (eq arg 'toggle)
|
(if (eq arg 'toggle)
|
||||||
(not ,mode)
|
(not ,mode)
|
||||||
|
|
|
@ -1834,7 +1834,11 @@ The default status is as follows:
|
||||||
This sets the coding system priority and the default input method
|
This sets the coding system priority and the default input method
|
||||||
and sometimes other things. LANGUAGE-NAME should be a string
|
and sometimes other things. LANGUAGE-NAME should be a string
|
||||||
which is the name of a language environment. For example, \"Latin-1\"
|
which is the name of a language environment. For example, \"Latin-1\"
|
||||||
specifies the character set for the major languages of Western Europe."
|
specifies the character set for the major languages of Western Europe.
|
||||||
|
|
||||||
|
If there is a prior value for `current-language-environment', this
|
||||||
|
runs the hook `exit-language-environment-hook'. After setting up
|
||||||
|
the new language environment, it runs `set-language-environment-hook'."
|
||||||
(interactive (list (read-language-name
|
(interactive (list (read-language-name
|
||||||
nil
|
nil
|
||||||
"Set language environment (default English): ")))
|
"Set language environment (default English): ")))
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; simple.el --- basic editing commands for Emacs
|
;;; simple.el --- basic editing commands for Emacs
|
||||||
|
|
||||||
;; Copyright (C) 1985-1987, 1993-2012 Free Software Foundation, Inc.
|
;; Copyright (C) 1985-1987, 1993-2012 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;; Maintainer: FSF
|
;; Maintainer: FSF
|
||||||
;; Keywords: internal
|
;; Keywords: internal
|
||||||
|
@ -2677,13 +2677,13 @@ value passed."
|
||||||
(defvar process-file-side-effects t
|
(defvar process-file-side-effects t
|
||||||
"Whether a call of `process-file' changes remote files.
|
"Whether a call of `process-file' changes remote files.
|
||||||
|
|
||||||
Per default, this variable is always set to `t', meaning that a
|
By default, this variable is always set to `t', meaning that a
|
||||||
call of `process-file' could potentially change any file on a
|
call of `process-file' could potentially change any file on a
|
||||||
remote host. When set to `nil', a file handler could optimize
|
remote host. When set to `nil', a file handler could optimize
|
||||||
its behavior with respect to remote file attributes caching.
|
its behavior with respect to remote file attribute caching.
|
||||||
|
|
||||||
This variable should never be changed by `setq'. Instead of, it
|
You should only ever change this variable with a let-binding;
|
||||||
shall be set only by let-binding.")
|
never with `setq'.")
|
||||||
|
|
||||||
(defun start-file-process (name buffer program &rest program-args)
|
(defun start-file-process (name buffer program &rest program-args)
|
||||||
"Start a program in a subprocess. Return the process object for it.
|
"Start a program in a subprocess. Return the process object for it.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue