@item
Andrew Choi and Yamamoto Mitsuharu wrote the Carbon support, used
-prior to Emacs 23 for Mac OS. Yamamoto Mitsuharu continued to
+prior to Emacs 23 for Mac OS@. Yamamoto Mitsuharu continued to
contribute to Mac OS support in the newer Nextstep port; and also
improved support for multi-monitor displays.
becomes @samp{file\middle\top}, while @code{post-forward} puts them in
forward order after the file name, as in @samp{file|top/middle}. If
@code{uniquify-buffer-name-style} is set to @code{nil}, the buffer
-names simply get @samp{<2>}, @samp{<3>}, etc. appended.
+names simply get @samp{<2>}, @samp{<3>}, etc.@: appended.
Which rule to follow for putting the directory names in the buffer
name is not very important if you are going to @emph{look} at the
any unfontified text they scroll over, instead to assume it has the
default face. This can cause Emacs to scroll to somewhat wrong buffer
positions when the faces in use are not all the same size, even with
-single (i.e. without auto-repeat) scrolling operations.
+single (i.e., without auto-repeat) scrolling operations.
@vindex scroll-up
@vindex scroll-down
@cindex overscrolling
If you're using Emacs on X (with GTK+ or Motif), you can customize the
variable @code{scroll-bar-adjust-thumb-portion} to control
-@dfn{overscrolling} of the scroll bar, i.e. dragging the thumb down even
+@dfn{overscrolling} of the scroll bar, i.e., dragging the thumb down even
when the end of the buffer is visible. If its value is
non-@code{nil}, the scroll bar can be dragged downwards even if the
end of the buffer is shown; if @code{nil}, the thumb will be at the
The command @kbd{C-x @key{SPC}} (@code{rectangle-mark-mode}) toggles
whether the region-rectangle or the standard region is highlighted
(first activating the region if necessary). When this mode is enabled,
-commands that resize the region (@kbd{C-f}, @kbd{C-n} etc.) do
+commands that resize the region (@kbd{C-f}, @kbd{C-n} etc.)@: do
so in a rectangular fashion, and killing and yanking operate on the
rectangle. @xref{Killing}. The mode persists only as long as the
region is active.
Supported language environments include:
@c @cindex entries below are split between portions of the list to
-@c make them more accurate, i.e. land on the line that mentions the
+@c make them more accurate, i.e., land on the line that mentions the
@c language. However, makeinfo 4.x doesn't fill inside @quotation
@c lines that follow a @cindex entry and whose text has no whitespace.
@c To work around, we group the language environments together, so
the backtrace, @var{bindir} is the name of the directory that
contains the Emacs executable, and @var{emacs-binary} is the name of
the Emacs executable file, normally @file{emacs} on GNU and Unix
-systems and @file{emacs.exe} on MS-Windows and MS-DOS. Omit the
+systems and @file{emacs.exe} on MS-Windows and MS-DOS@. Omit the
@option{-p} option if your version of @command{addr2line} is too old
to have it.
change occurs in.
If you are using the Emacs repository, make sure your copy is
-up-to-date (e.g. with @code{git pull}). You can commit your changes
+up-to-date (e.g., with @code{git pull}). You can commit your changes
to a private branch and generate a patch from the master version by
using @code{git format-patch master}. Or you can leave your changes
uncommitted and use @code{git diff}.
Please look at the change log entries of recent commits to see what
sorts of information to put in, and to learn the style that we use. Note that,
unlike some other projects, we do require change logs for
-documentation, i.e. Texinfo files.
+documentation, i.e., Texinfo files.
@xref{Change Log},
@ifset WWW_GNU_ORG
see
For general information, see the website @url{http://www.fsf.org/}.
Generally speaking, for non-trivial contributions to GNU Emacs we
-require that the copyright be assigned to the FSF. For the reasons
+require that the copyright be assigned to the FSF@. For the reasons
behind this, see @url{http://www.gnu.org/licenses/why-assign.html}.
Copyright assignment is a simple process. Residents of some countries
has to be repeated each time you want to send something new.
We can accept small changes (roughly, fewer than 15 lines) without
-an assignment. This is a cumulative limit (e.g. three separate 5 line
+an assignment. This is a cumulative limit (e.g., three separate 5 line
patches) over all your contributions.
@node Service
* Point and mark:: A review of various locations.
* Template for save-excursion::
-A Few Buffer--Related Functions
+A Few Buffer-Related Functions
* Finding More:: How to find more information.
* simplified-beginning-of-buffer:: Shows @code{goto-char},
@end itemize
@node Buffer Walk Through
-@chapter A Few Buffer--Related Functions
+@chapter A Few Buffer-Related Functions
In this chapter we study in detail several of the functions used in GNU
Emacs. This is called a ``walk-through''. These functions are used as
@uref{http://www.gnu.org/software/texinfo/manual/texinfo/}
@end ifhtml
@iftex
-``Indicating Definitions, Commands, etc.'' in @cite{Texinfo, The GNU
+``Indicating Definitions, Commands, etc.''@: in @cite{Texinfo, The GNU
Documentation Format}.
@end iftex
@end itemize
of @code{describe-function} will include similar information.
The value of the property can be: a string, which the byte-compiler
will use directly in its warning (it should end with a period, and not
-start with a capital, e.g. ``use @dots{} instead.''); @code{t}; any
+start with a capital, e.g., ``use @dots{} instead.''); @code{t}; any
other symbol, which should be an alternative function to use in Lisp
code.
@end defun
@menu
-* Keyboard Events:: Ordinary characters--keys with symbols on them.
-* Function Keys:: Function keys--keys with names, not symbols.
+* Keyboard Events:: Ordinary characters -- keys with symbols on them.
+* Function Keys:: Function keys -- keys with names, not symbols.
* Mouse Events:: Overview of mouse events.
* Click Events:: Pushing and releasing a mouse button.
* Drag Events:: Moving the mouse before releasing the button.
Alternative foreground color, a string. This is like @code{:foreground}
but the color is only used as a foreground when the background color is
near to the foreground that would have been used. This is useful for
-example when marking text (i.e. the region face). If the text has a foreground
+example when marking text (i.e., the region face). If the text has a foreground
that is visible with the region face, that foreground is used.
If the foreground is near the region face background,
@code{:distant-foreground} is used instead so the text is readable.
Input Events
-* Keyboard Events:: Ordinary characters--keys with symbols on them.
-* Function Keys:: Function keys--keys with names, not symbols.
+* Keyboard Events:: Ordinary characters -- keys with symbols on them.
+* Function Keys:: Function keys -- keys with names, not symbols.
* Mouse Events:: Overview of mouse events.
* Click Events:: Pushing and releasing a mouse button.
* Drag Events:: Moving the mouse before releasing the button.
Position of the top-left corner and size of the work area (``usable''
space) in pixels as @samp{(@var{x} @var{y} @var{width} @var{height})}.
This may be different from @samp{geometry} in that space occupied by
-various window manager features (docks, taskbars, etc.) may be
+various window manager features (docks, taskbars, etc.)@: may be
excluded from the work area. Whether or not such features actually
subtract from the work area depends on the platform and environment.
Again, if the monitor is not the primary monitor, some of the
@var{frame}, measured in pixels. Together, these values establish the
size of the default font on @var{frame}. The values depend on the
choice of font for @var{frame}, see @ref{Font and Color Parameters}.
-@end defun
+@end defun
The default font can be also set directly with the following function:
stored in @var{place} (@pxref{Generalized Variables}).
@var{where} determines how @var{function} is composed with the
-existing function, e.g. whether @var{function} should be called before, or
+existing function, e.g., whether @var{function} should be called before, or
after the original function. @xref{Advice combinators}, for the list of
available ways to compose the two functions.
@defun advice-eval-interactive-spec spec
Evaluate the interactive @var{spec} just like an interactive call to a function
with such a spec would, and then return the corresponding list of arguments
-that was built. E.g. @code{(advice-eval-interactive-spec "r\nP")} will
+that was built. E.g., @code{(advice-eval-interactive-spec "r\nP")} will
return a list of three elements, containing the boundaries of the region and
the current prefix argument.
@end defun
of @code{intptr_t}).
@item
-Prefer @code{int} for Emacs character codes, in the range 0 ..@: 0x3FFFFF.
+Prefer @code{int} for Emacs character codes, in the range 0 ..@: 0x3FFFFF@.
More generally, prefer @code{int} for integers known to be in
@code{int} range, e.g., screen column counts.
If the option @code{load-prefer-newer} is non-@code{nil}, then when
searching suffixes, @code{load} selects whichever version of a file
-(@samp{.elc}, @samp{.el}, etc.) has been modified most recently.
+(@samp{.elc}, @samp{.el}, etc.)@: has been modified most recently.
If @var{filename} is a relative file name, such as @file{foo} or
@file{baz/foo.bar}, @code{load} searches for the file using the variable
When Emacs is running in batch mode, any request to read from the
minibuffer actually reads a line from the standard input descriptor that
was supplied when Emacs was started. This supports only basic input:
-none of the special minibuffer features (history, completion, etc.)
+none of the special minibuffer features (history, completion, etc.)@:
are available in batch mode.
@node Text from Minibuffer
@math{x = s 2^e}.
@end tex
If @var{x} is zero or infinity, then @var{s} is the same as @var{x}.
-If @var{x} is a NaN, then @var{s} is also a NaN.
+If @var{x} is a NaN, then @var{s} is also a NaN@.
If @var{x} is zero, then @var{e} is 0.
@end defun
Emacs process in batch mode, it is sometimes required to make sure any
arbitrary binary data will be read/written verbatim, and/or that no
translation of newlines to or from CR-LF pairs are performed. This
-issue does not exist on Posix hosts, only on MS-Windows and MS-DOS.
+issue does not exist on Posix hosts, only on MS-Windows and MS-DOS@.
The following function allows to control the I/O mode of any standard
stream of the Emacs process.
This command deletes whitespace characters after the last
non-whitespace character in each line in the region.
-If this command acts on the entire buffer (i.e. if called
+If this command acts on the entire buffer (i.e., if called
interactively with the mark inactive, or called from Lisp with
@var{end} @code{nil}), it also deletes all trailing lines at the end of the
buffer if the variable @code{delete-trailing-lines} is non-@code{nil}.
@defun get-pos-property position prop &optional object
This function is like @code{get-char-property}, except that it pays
attention to properties' stickiness and overlays' advancement settings
-instead of the property of the character at (i.e. right after)
+instead of the property of the character at (i.e., right after)
@var{position}.
@end defun
token with either single or double quotes.
You can use single quotes inside a password or other token by
-surrounding it with double quotes, e.g. @code{"he'llo"}. Similarly you
+surrounding it with double quotes, e.g., @code{"he'llo"}. Similarly you
can use double quotes inside a password or other token by surrounding
-it with single quotes, e.g. @code{'he"llo'}. You can't mix both (so a
+it with single quotes, e.g., @code{'he"llo'}. You can't mix both (so a
password or other token can't have both single and double quotes).
All this is optional. You could just say (but we don't recommend it,
or with @kbd{$} to take a formula from the top of the stack, or with
@kbd{'} and a typed formula. In the last two cases, the formula may
be a nameless function like @samp{<#1+#2>} or @samp{<x, y : x+y>}, or it
-may include @kbd{$}, @kbd{$$}, etc. (where @kbd{$} will correspond to the
+may include @kbd{$}, @kbd{$$}, etc.@: (where @kbd{$} will correspond to the
last argument of the created function), or otherwise you will be
prompted for an argument list. The number of vectors popped from the
stack by @kbd{V M} depends on the number of arguments of the function.
Since there's a lot of normal text in comments and string literals,
@ccmode{} provides features to edit these like in text mode. The goal
is to do it seamlessly, i.e., you can use auto fill mode, sentence and
-paragraph movement, paragraph filling, adaptive filling etc. wherever
+paragraph movement, paragraph filling, adaptive filling etc.@: wherever
there's a piece of normal text without having to think much about it.
@ccmode{} keeps the indentation, fixes suitable comment line prefixes,
and so on.
Due to release schedule skew, it is likely that all of these Emacsen
have old versions of @ccmode{} and so should be upgraded. Access to the
@ccmode{} source code, as well as more detailed information on Emacsen
-compatibility, etc. are all available on the web site:
+compatibility, etc.@: are all available on the web site:
@quotation
@uref{http://cc-mode.sourceforge.net/}
First off, please note that this manual cannot serve as a complete
introduction to object oriented programming and generic functions in
-LISP. Although EIEIO is not a complete implementation of the Common
+LISP@. Although EIEIO is not a complete implementation of the Common
Lisp Object System (CLOS) and also differs from it in several aspects,
it follows the same basic concepts. Therefore, it is highly
recommended to learn those from a textbook or tutorial first,
(setq erc-autojoin-channels-alist '(("freenode.net" "#emacs" "#erc")))
;; Rename server buffers to reflect the current network name instead
-;; of SERVER:PORT. (e.g. "freenode" instead of "irc.freenode.net:6667"). This
-;; is useful when using a bouncer like ZNC where you have multiple
+;; of SERVER:PORT (e.g., "freenode" instead of "irc.freenode.net:6667").
+;; This is useful when using a bouncer like ZNC where you have multiple
;; connections to the same server.
(setq erc-rename-buffers t)
@item
@uref{http://www.emacswiki.org/cgi-bin/wiki/ERC} is the
-emacswiki.org page for ERC@. Anyone may add tips, hints, etc. to it.
+emacswiki.org page for ERC@. Anyone may add tips, hints, etc.@: to it.
@item
You can ask questions about using ERC on the Emacs mailing list,
to in this manual as ``visual commands,'' because they are not simply
line-oriented. You must tell Eshell which commands are visual, by
adding them to @code{eshell-visual-commands}; for commands that are
-visual for only certain @emph{sub}-commands -- e.g. @samp{git log} but
+visual for only certain @emph{sub}-commands -- e.g., @samp{git log} but
not @samp{git status} -- use @code{eshell-visual-subcommands}; and for
commands that are visual only when passed certain options, use
@code{eshell-visual-options}.
@cindex History
EWW remembers the URLs you have visited to allow you to go back and
forth between them. By pressing @kbd{l} (@code{eww-back-url}) you go
-to the previous URL. You can go forward again with @kbd{r}
+to the previous URL@. You can go forward again with @kbd{r}
(@code{eww-forward-url}). If you want an overview of your browsing
history press @kbd{H} (@code{eww-list-histories}) to open the history
buffer @file{*eww history*}. The history is lost when EWW is quit.
@vindex eww-desktop-remove-duplicates
EWW history may sensibly contain multiple entries for the same page
-URI. At run-time, these entries may still have different associated
+URI@. At run-time, these entries may still have different associated
point positions or the actual Web page contents.
The latter, however, tend to be overly large to preserve in the
desktop file, so they get omitted, thus rendering the respective
article. That's well and nice, but there's also lots of information
most people do not want to see---what systems the article has passed
through before reaching you, the @code{Message-ID}, the
-@code{References}, etc. ad nauseam---and you'll probably want to get rid
+@code{References}, etc.@: ad nauseam---and you'll probably want to get rid
of some of those lines. If you want to keep all those lines in the
article buffer, you can set @code{gnus-show-all-headers} to @code{t}.
The registry can store custom flags and keywords for a message. For
instance, you can mark a message ``To-Do'' this way and the flag will
persist whether the message is in the nnimap, nnml, nnmaildir,
-etc. backends.
+etc.@: backends.
@item
Store arbitrary data
@code{gnus-registry-max-entries}. This option controls exactly how
much less: the target is calculated as the maximum number of entries
minus the maximum number times this factor. The default is 0.1:
-i.e. if your registry is limited to 50000 entries, pruning will try to
+i.e., if your registry is limited to 50000 entries, pruning will try to
cut back to 45000 entries. Entries with keys marked as precious will
not be pruned.
@end defvar
(hfy-face-at P)
@end lisp
-Find face in effect at point P. If overlays are to be considered
+Find face in effect at point P@. If overlays are to be considered
(see @ref{hfy-optimisations}) then this may return a @code{defface} style
list of face properties instead of a face symbol.
a page with different colors than the fontified code.)
@item keep-overlays
-Preserve overlay highlighting (c.f. @code{ediff} or @code{goo-font-lock})
+Preserve overlay highlighting (cf.@: @code{ediff} or @code{goo-font-lock})
as well as basic faces. Can result in extremely verbose highlighting
if there are many overlays (as is the case with @code{goo-font-lock}).
@cindex Highlighting of syntax
@cindex Font lock
-Highlighting of keywords, comments, strings etc. can be accomplished
+Highlighting of keywords, comments, strings etc.@: can be accomplished
with @code{font-lock}. If you are using @code{global-font-lock-mode}
(in Emacs), or have @code{font-lock} turned on in any other buffer in
XEmacs, it should also automatically work in IDLWAVE buffers. If you'd
@kindex C-c C-d C-p
Do you find yourself repeatedly typing, e.g., @code{print,n_elements(x)},
and similar statements to remind yourself of the
-type/size/structure/value/etc. of variables and expressions in your code
+type/size/structure/value/etc.@: of variables and expressions in your code
or at the command line? IDLWAVE has a suite of special commands to
automate these types of variable or expression examinations. They work
by sending statements to the shell formatted to include the indicated
of the list and hit @key{RET}.
To go up to the parent directory, delete any partial file name already
-specified (e.g. using @key{DEL}) and hit @key{DEL}.
+specified (e.g., using @key{DEL}) and hit @key{DEL}.
@c @deffn Command ido-delete-backward-updir
@vindex newsticker-url-list
@item newsticker-url-list
All your personal news feeds are defined here. Each feed is
-identified by its name and an URL. You may set the start-time and the
+identified by its name and an URL@. You may set the start-time and the
retrieval interval for each feed as well as the retrieval command
arguments in case that the default values do not fit a certain feed.
Elisp libraries. You can install Org with @kbd{M-x package-install RET org}.
@noindent @b{Important}: you need to do this in a session where no @code{.org} file has
-been visited, i.e. where no Org built-in function have been loaded.
+been visited, i.e., where no Org built-in function have been loaded.
Otherwise autoload Org functions will mess up the installation.
Then, to make sure your Org configuration is taken into account, initialize
@item C-v
Toggle visible-only export. Only export the text that is currently
-visible, i.e. not hidden by outline visibility in the buffer.
+visible, i.e., not hidden by outline visibility in the buffer.
@end table
A link with no description and destined to a regular (un-itemized) outline
heading is replaced with a cross-reference and section number of the heading.
-A @samp{\ref@{label@}}-style reference to an image, table etc. is replaced
+A @samp{\ref@{label@}}-style reference to an image, table etc.@: is replaced
with a cross-reference and sequence number of the labeled entity.
@xref{Labels and captions in ODT export}.
This is obviously the most powerful customization, since the changes happen
at the parser level. Indeed, some export back-ends are built as extensions
-of other ones (e.g. Markdown back-end an extension of HTML back-end).
+of other ones (e.g., Markdown back-end an extension of HTML back-end).
Extending a back-end means that if an element type is not transcoded by the
new back-end, it will be handled by the original one. Hence you can extend
deal with detached PGP messages, normally used in PGP/MIME
infrastructure. This was the main reason why I wrote the new library.
-Note that the PGG library is now obsolete, replaced by EasyPG.
+Note that the PGG library is now obsolete, replaced by EasyPG@.
@xref{Top,, EasyPG, epa, EasyPG Assistant User's Manual}.
PGP/MIME is an application of MIME Object Security Services (RFC1848).
@item <
Promote the current section. This will convert @code{\section} to
-@code{\chapter}, @code{\subsection} to @code{\section} etc. If there is
+@code{\chapter}, @code{\subsection} to @code{\section} etc. If there is
an active region, all sections in the region will be promoted, including
the one at point. To avoid mistakes, @RefTeX{} requires a fresh
document scan before executing this command; if necessary, it will
@cindex @code{linguex}, LaTeX package
@cindex LaTeX packages, @code{linguex}
A more complex example is the @file{linguex.sty} package which defines
-list macros @samp{\ex.}, @samp{\a.}, @samp{\b.} etc. for lists which are
+list macros @samp{\ex.}, @samp{\a.}, @samp{\b.} etc.@: for lists which are
terminated by @samp{\z.} or by an empty line.
@example
@noindent @b{Version 3.11}
@itemize @bullet
@item
-Fixed bug which led to naked label in (e.g.@:) footnotes.
+Fixed bug which led to naked label in (e.g.)@: footnotes.
@item
Added scroll-other-window functions to RefTeX-Select.
@end itemize
Put point on the previous button.
@end table
-These commands are cyclic, e.g. when point is on the last button,
+These commands are cyclic, e.g., when point is on the last button,
pressing @kbd{n} moves it to the first button.
Typing @kbd{q} exits Todo Categories mode, killing the buffer and returning
@item F h
@itemx h
Hide the item headers if visible, or show them if they are hidden.
-With done items, only the done header (i.e. the done tag and date-time
+With done items, only the done header (i.e., the done tag and date-time
string inserted when the item was marked done) is hidden, the original
date-time string is not. With filtered items, the category (or
category-file) tag is not hidden.
This special method uses the Android Debug Bridge for accessing
Android devices. The Android Debug Bridge must be installed locally.
Some GNU/Linux distributions offer it for installation, otherwise it
-can be installed as part of the Android SDK. If the @command{adb}
+can be installed as part of the Android SDK@. If the @command{adb}
program is not found via the @env{PATH} environment variable, the
variable @var{tramp-adb-program} must point to its absolute path.
pair of information (in lisp parlance, a @emph{cons cell}), where the
first part is a @dfn{syntactic symbol}, and the second part is a
@dfn{relative buffer position}. Syntactic symbols describe elements of
-VHDL code, e.g. @code{statement}, @code{comment}, @code{block-open},
+VHDL code, e.g., @code{statement}, @code{comment}, @code{block-open},
@code{block-close}, etc. @xref{Syntactic Symbols}, for a complete list
of currently recognized syntactic symbols and their semantics. Also,
the variable @code{vhdl-offsets-alist} contains the list of currently
visited, VHDL Mode will automatically institute these offsets using
@code{vhdl-set-offset}. @xref{Customizing Indentation}.
-Note that file style settings (i.e. @code{vhdl-file-style}) are applied
-before file offset settings (i.e. @code{vhdl-file-offsets}).
+Note that file style settings (i.e., @code{vhdl-file-style}) are applied
+before file offset settings (i.e., @code{vhdl-file-offsets}).
@node Advanced Customizations
@cindex region
-Vi operators like @kbd{d}, @kbd{c} etc. are usually used in combination
+Vi operators like @kbd{d}, @kbd{c} etc.@: are usually used in combination
with motion commands. It is now possible to use current region as the
argument to these operators. (A @dfn{region} is a part of buffer
delimited by point and mark.) The key @kbd{r} is used for this purpose.
@cindex Ex style motion
@cindex line editor motion
-Viper can be set free from the line--limited movements in Vi, such as @kbd{l}
+Viper can be set free from the line-limited movements in Vi, such as @kbd{l}
refusing to move beyond the line, @key{ESC} moving one character back,
etc. These derive from Ex, which is a line editor. If your
Viper customization file contains
@code{man} behavior.]
@item woman-ignore
-A boolean value. If non-@code{nil} then unrecognized requests etc. are
+A boolean value. If non-@code{nil} then unrecognized requests etc.@: are
ignored. Default is @code{t}. This gives the standard @code{roff} behavior.
If @code{nil} then they are left in the buffer, which may aid debugging.