1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-25 07:28:20 +00:00

; Fix punctuation in docs

This commit is contained in:
Stefan Kangas 2024-07-21 16:33:08 +02:00
parent ab29b28d4b
commit 00adee897a
62 changed files with 433 additions and 431 deletions

View File

@ -2044,7 +2044,7 @@ sequences. For example, to bind @kbd{C-c h} to the string
@end example @end example
Non-@acronym{ASCII} characters can be specified directly in the Non-@acronym{ASCII} characters can be specified directly in the
string. To bind to e.g. @samp{ol@'a}, use: string. To bind to e.g. @samp{ol@'a}, use:
@example @example
(keymap-global-set "C-c h" (key-description "ol@'a")) (keymap-global-set "C-c h" (key-description "ol@'a"))

View File

@ -2198,7 +2198,7 @@ The line numbers are displayed in a special face @code{line-number}.
The current line number is displayed in a different face, The current line number is displayed in a different face,
@code{line-number-current-line}, so you can make the current line's @code{line-number-current-line}, so you can make the current line's
number have a distinct appearance, which will help locating the line number have a distinct appearance, which will help locating the line
showing point. Additional faces @code{line-number-major-tick} and showing point. Additional faces @code{line-number-major-tick} and
@code{line-number-minor-tick} can be used to highlight the line numbers @code{line-number-minor-tick} can be used to highlight the line numbers
of lines which are a multiple of certain numbers. Customize of lines which are a multiple of certain numbers. Customize
@code{display-line-numbers-major-tick} and @code{display-line-numbers-major-tick} and

View File

@ -124,7 +124,7 @@ check the outermost block since that may be incomplete.
@findex f90-beginning-of-block @findex f90-beginning-of-block
@item C-M-p @item C-M-p
Move to the start of the current code block Move to the start of the current code block
(@code{fortran-beginning-of-block}/@code{f90-beginning-of-block}). This (@code{fortran-beginning-of-block}/@code{f90-beginning-of-block}). This
is like @code{fortran-end-of-block}, but moves backwards. is like @code{fortran-end-of-block}, but moves backwards.
@end table @end table

View File

@ -1543,7 +1543,7 @@ After customizing the variable @code{tab-bar-select-tab-modifiers} to
specify one or more @var{modifier} keys, you can select a tab by its specify one or more @var{modifier} keys, you can select a tab by its
ordinal number using one of the specified modifiers in combination ordinal number using one of the specified modifiers in combination
with the tab number to select. The number 9 can be used to select the with the tab number to select. The number 9 can be used to select the
last tab. You can select any modifiers supported by Emacs, last tab. You can select any modifiers supported by Emacs,
@pxref{Modifier Keys}. To display the tab number alongside the tab @pxref{Modifier Keys}. To display the tab number alongside the tab
name, you can customize another variable @code{tab-bar-tab-hints}. name, you can customize another variable @code{tab-bar-tab-hints}.
This will help you decide which numerical key to press to select the This will help you decide which numerical key to press to select the

View File

@ -1488,7 +1488,7 @@ the Emacs Lisp Reference Manual
@cindex coding standards for Emacs submissions @cindex coding standards for Emacs submissions
Contributed code should follow the GNU Coding Standards Contributed code should follow the GNU Coding Standards
@url{https://www.gnu.org/prep/standards/}. This may also be available @url{https://www.gnu.org/prep/standards/}. This may also be available
in info on your system. in info on your system.
If it doesn't, we'll need to find someone to fix the code before we If it doesn't, we'll need to find someone to fix the code before we

View File

@ -177,7 +177,7 @@ current directory as a tag named @var{name}
@findex vc-retrieve-tag @findex vc-retrieve-tag
@item C-x v r @var{name} @key{RET} @item C-x v r @var{name} @key{RET}
For all registered files at or below the current directory level, For all registered files at or below the current directory level,
retrieve the tagged revision @var{name}. This command will switch to a retrieve the tagged revision @var{name}. This command will switch to a
branch if @var{name} is a branch name and your VCS distinguishes branch if @var{name} is a branch name and your VCS distinguishes
branches from tags. (@code{vc-retrieve-tag}). branches from tags. (@code{vc-retrieve-tag}).

View File

@ -130,7 +130,7 @@ Boston, MA 02110-1301 USA
@end iftex @end iftex
@ifnottex @ifnottex
Printed copies available from @uref{https://shop.fsf.org/}. Published by: Printed copies available from @uref{https://shop.fsf.org/}. Published by:
@example @example
GNU Press, https://www.fsf.org/licensing/gnu-press/ GNU Press, https://www.fsf.org/licensing/gnu-press/
@ -1969,7 +1969,7 @@ argument is the string of characters, the second and third arguments
are numbers that indicate the beginning (inclusive) and end are numbers that indicate the beginning (inclusive) and end
(exclusive) of the substring. The numbers are a count of the number (exclusive) of the substring. The numbers are a count of the number
of characters (including spaces and punctuation) from the beginning of of characters (including spaces and punctuation) from the beginning of
the string. Note that the characters in a string are numbered from the string. Note that the characters in a string are numbered from
zero, not one. zero, not one.
@need 800 @need 800
@ -5314,7 +5314,7 @@ Looking at the @code{let*} expression in @code{append-to-buffer}:
@noindent @noindent
we see that @code{append-to} is bound to the value returned by the we see that @code{append-to} is bound to the value returned by the
@w{@code{(get-buffer-create buffer)}}. On the next line, @w{@code{(get-buffer-create buffer)}}. On the next line,
@code{append-to} is used as an argument to @code{append-to} is used as an argument to
@code{get-buffer-window-list}; this would not be possible with the @code{get-buffer-window-list}; this would not be possible with the
@code{let} expression. Note that @code{point} is automatically bound @code{let} expression. Note that @code{point} is automatically bound
@ -16099,7 +16099,7 @@ placing point somewhere in the buffer, typing @kbd{M-:}, typing the
and then typing @key{RET}. This causes Emacs to evaluate the and then typing @key{RET}. This causes Emacs to evaluate the
expression in the minibuffer, but to use as the value of point the expression in the minibuffer, but to use as the value of point the
position of point in the @file{*scratch*} buffer. (@kbd{M-:} is the position of point in the @file{*scratch*} buffer. (@kbd{M-:} is the
key binding for @code{eval-expression}. Also, @code{nil} does not key binding for @code{eval-expression}. Also, @code{nil} does not
appear in the @file{*scratch*} buffer since the expression is appear in the @file{*scratch*} buffer since the expression is
evaluated in the minibuffer.) evaluated in the minibuffer.)

View File

@ -1741,7 +1741,7 @@ this is @code{nil}.
@item @var{dx}, @var{dy} @item @var{dx}, @var{dy}
These are the pixel offsets of the click relative to the top left These are the pixel offsets of the click relative to the top left
corner of the @var{object}'s glyph that is the nearest one to the corner of the @var{object}'s glyph that is the nearest one to the
click. The relevant @var{object}s can be either a buffer, or a string, click. The relevant @var{object}s can be either a buffer, or a string,
or an image, see above. If @var{object} is @code{nil} or a string, or an image, see above. If @var{object} is @code{nil} or a string,
the coordinates are relative to the top left corner of the character the coordinates are relative to the top left corner of the character
glyph clicked on. Note that the offsets are always zero on text-mode glyph clicked on. Note that the offsets are always zero on text-mode

View File

@ -2771,7 +2771,7 @@ width of the vertical and horizontal lines to draw; they default to (1
. 1). A negative horizontal or vertical width @minus{}@var{n} means . 1). A negative horizontal or vertical width @minus{}@var{n} means
to draw a line of width @var{n} that occupies the space of the to draw a line of width @var{n} that occupies the space of the
underlying text, thus avoiding any increase in the character height or underlying text, thus avoiding any increase in the character height or
width. For simplification the width could be specified with only a width. For simplification the width could be specified with only a
single number @var{n} instead of a list, such case is equivalent to single number @var{n} instead of a list, such case is equivalent to
@code{((abs @var{n}) . @var{n})}. @code{((abs @var{n}) . @var{n})}.

View File

@ -2708,7 +2708,7 @@ file names (@pxref{Magic File Names}).
@defmac file-name-unquote name @defmac file-name-unquote name
This macro removes the quotation prefix @samp{/:} from the file This macro removes the quotation prefix @samp{/:} from the file
@var{name}, if any. If @var{name} is a remote file name, the local @var{name}, if any. If @var{name} is a remote file name, the local
part of @var{name} is unquoted. part of @var{name} is unquoted.
@end defmac @end defmac
@ -2740,7 +2740,7 @@ This function creates a temporary file and returns its name. Emacs
creates the temporary file's name by adding to @var{prefix} some creates the temporary file's name by adding to @var{prefix} some
random characters that are different in each Emacs job. The result is random characters that are different in each Emacs job. The result is
guaranteed to be a newly created file, containing @var{text} if that's guaranteed to be a newly created file, containing @var{text} if that's
given as a string and empty otherwise. On MS-DOS, this function can given as a string and empty otherwise. On MS-DOS, this function can
truncate @var{prefix} to fit into the 8+3 file-name limits. If truncate @var{prefix} to fit into the 8+3 file-name limits. If
@var{prefix} is a relative file name, it is expanded against @var{prefix} is a relative file name, it is expanded against
@code{temporary-file-directory}. @code{temporary-file-directory}.

View File

@ -4530,7 +4530,7 @@ and a few other such modes) has been made more generic over the years,
so if your language seems somewhat similar to one of those languages, so if your language seems somewhat similar to one of those languages,
you might try to use that engine. @c FIXME: documentation? you might try to use that engine. @c FIXME: documentation?
Another one is SMIE which takes an approach in the spirit Another one is SMIE which takes an approach in the spirit
of Lisp sexps and adapts it to non-Lisp languages. Yet another one is of Lisp sexps and adapts it to non-Lisp languages. Yet another one is
to rely on a full-blown parser, for example, the tree-sitter library. to rely on a full-blown parser, for example, the tree-sitter library.
@menu @menu

View File

@ -387,7 +387,7 @@ following queries:
@table @asis @table @asis
@item archive-contents @item archive-contents
Return a lisp form describing the archive contents. The form is a list Return a lisp form describing the archive contents. The form is a list
of 'package-desc' structures (see @file{package.el}), except the first of 'package-desc' structures (see @file{package.el}), except the first
element of the list is the archive version. element of the list is the archive version.
@ -398,7 +398,7 @@ Return the long description of the package.
Return the signature for the file. Return the signature for the file.
@item <file name> @item <file name>
Return the file. This will be the tarball for a multi-file Return the file. This will be the tarball for a multi-file
package, or the single file for a simple package. package, or the single file for a simple package.
@end table @end table

View File

@ -450,7 +450,7 @@ in the buffer, or in the region if the region is active.
@cindex line number @cindex line number
This function returns the line number in the current buffer This function returns the line number in the current buffer
corresponding to the buffer position @var{pos}. If @var{pos} is corresponding to the buffer position @var{pos}. If @var{pos} is
@code{nil} or omitted, the current buffer position is used. If @code{nil} or omitted, the current buffer position is used. If
@var{absolute} is @code{nil}, the default, counting starts at @var{absolute} is @code{nil}, the default, counting starts at
@code{(point-min)}, so the value refers to the contents of the @code{(point-min)}, so the value refers to the contents of the
accessible portion of the (potentially narrowed) buffer. If accessible portion of the (potentially narrowed) buffer. If

View File

@ -135,7 +135,7 @@ stream to a different destination.
@cindex program arguments @cindex program arguments
All three of the subprocess-creating functions allow specifying All three of the subprocess-creating functions allow specifying
command-line arguments for the process to run. For @code{call-process} command-line arguments for the process to run. For @code{call-process}
and @code{call-process-region}, these come in the form of a and @code{call-process-region}, these come in the form of a
@code{&rest} argument, @var{args}. For @code{make-process}, both the @code{&rest} argument, @var{args}. For @code{make-process}, both the
program to run and its command-line arguments are specified as a list program to run and its command-line arguments are specified as a list

View File

@ -1771,7 +1771,7 @@ required for @code{rx-to-string} to work. Example:
Another difference from @code{rx-let} is that the @var{bindings} are Another difference from @code{rx-let} is that the @var{bindings} are
dynamically scoped, and thus also available in functions called from dynamically scoped, and thus also available in functions called from
@var{body}. However, they are not visible inside functions defined in @var{body}. However, they are not visible inside functions defined in
@var{body}. @var{body}.
@end defmac @end defmac
@ -1919,7 +1919,7 @@ symptoms less likely and help alleviate problems that do arise.
@itemize @itemize
@item @item
Anchor regexps at the beginning of a line, string or buffer using Anchor regexps at the beginning of a line, string or buffer using
zero-width assertions (@samp{^} and @code{\`}). This takes advantage zero-width assertions (@samp{^} and @code{\`}). This takes advantage
of fast paths in the implementation and can avoid futile matching of fast paths in the implementation and can avoid futile matching
attempts. Other zero-width assertions may also bring benefits by attempts. Other zero-width assertions may also bring benefits by
causing a match to fail early. causing a match to fail early.

View File

@ -937,7 +937,7 @@ use instead of the default @code{equal}.
@defun seq-set-equal-p sequence1 sequence2 &optional testfn @defun seq-set-equal-p sequence1 sequence2 &optional testfn
This function checks whether @var{sequence1} and @var{sequence2} This function checks whether @var{sequence1} and @var{sequence2}
contain the same elements, regardless of the order. If the optional contain the same elements, regardless of the order. If the optional
argument @var{testfn} is non-@code{nil}, it is a function of two argument @var{testfn} is non-@code{nil}, it is a function of two
arguments to use instead of the default @code{equal}. arguments to use instead of the default @code{equal}.

View File

@ -970,7 +970,7 @@ you can use, see the variable's documentation string.
@defvar print-integers-as-characters @defvar print-integers-as-characters
When this variable is non-@code{nil}, integers that represent When this variable is non-@code{nil}, integers that represent
graphic base characters will be printed using Lisp character syntax graphic base characters will be printed using Lisp character syntax
(@pxref{Basic Char Syntax}). Other numbers are printed the usual way. (@pxref{Basic Char Syntax}). Other numbers are printed the usual way.
For example, the list @code{(4 65 -1 10)} would be printed as For example, the list @code{(4 65 -1 10)} would be printed as
@samp{(4 ?A -1 ?\n)}. @samp{(4 ?A -1 ?\n)}.

View File

@ -2613,7 +2613,7 @@ compatibility. You can do this with @code{defvaralias}.
@defun defvaralias new-alias base-variable &optional docstring @defun defvaralias new-alias base-variable &optional docstring
This function defines the symbol @var{new-alias} as a variable alias This function defines the symbol @var{new-alias} as a variable alias
for symbol @var{base-variable}. This means that retrieving the value for symbol @var{base-variable}. This means that retrieving the value
of @var{new-alias} returns the value of @var{base-variable}, and of @var{new-alias} returns the value of @var{base-variable}, and
changing the value of @var{new-alias} changes the value of changing the value of @var{new-alias} changes the value of
@var{base-variable}. The two aliased variable names always share the @var{base-variable}. The two aliased variable names always share the

View File

@ -171,7 +171,7 @@ of \- means standard output; overrides default \fBTAGS\fP or \fBtags\fP.
Make tags based on regexp matching for the files following this option, Make tags based on regexp matching for the files following this option,
in addition to the tags made with the standard parsing based on in addition to the tags made with the standard parsing based on
language. May be freely intermixed with filenames and the \fB\-R\fP language. May be freely intermixed with filenames and the \fB\-R\fP
option. The regexps are cumulative, i.e., each such option will add to option. The regexps are cumulative, i.e., each such option will add to
the previous ones. The regexps are of one of the forms: the previous ones. The regexps are of one of the forms:
.br .br

View File

@ -136,12 +136,12 @@ You can use spaces inside a password or other token by surrounding the
token with either single or double quotes. token with either single or double quotes.
You can use apostrophes inside a password or other token by You can use apostrophes 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 can use double quotes inside a password or other token by surrounding
it with apostrophes, e.g., @code{'he"llo'}. You can't mix both (so a it with apostrophes, e.g., @code{'he"llo'}. You can't mix both (so a
password or other token can't have both apostrophes and double quotes). password or other token can't have both apostrophes and double quotes).
All this is optional. You could just say (but we don't recommend it, All this is optional. You could just say (but we don't recommend it,
we're just showing that it's possible) we're just showing that it's possible)
@example @example
@ -267,7 +267,7 @@ earlier. Since Tramp has about 88 connection methods, this may be
necessary if you have an unusual (see earlier comment on those) setup. necessary if you have an unusual (see earlier comment on those) setup.
The netrc format is directly translated into JSON, if you are into The netrc format is directly translated into JSON, if you are into
that sort of thing. Just point to a JSON file with entries like this: that sort of thing. Just point to a JSON file with entries like this:
@example @example
[ [
@ -501,7 +501,9 @@ The username can also be expressed as a prefix, separated from the
host with an at-sign (@code{@@}). host with an at-sign (@code{@@}).
@item gnu.org:22.gpg @item gnu.org:22.gpg
The port (aka. service) to match can only be expressed after the host and separated with a colon (@code{:}). The separator can be changed through the @code{auth-source-pass-port-separator} variable. The port (aka. service) to match can only be expressed after the host
and separated with a colon (@code{:}). The separator can be changed
through the @code{auth-source-pass-port-separator} variable.
@item gnu.org:22/rms.gpg @item gnu.org:22/rms.gpg

View File

@ -290,7 +290,7 @@ be inserted.
It can also be a function, which allows doing various things. The function It can also be a function, which allows doing various things. The function
can simply insert some text, indeed, it can be skeleton command (@pxref{Using can simply insert some text, indeed, it can be skeleton command (@pxref{Using
Skeletons}). It can be a lambda function which will for example conditionally Skeletons}). It can be a lambda function which will for example conditionally
call another function. Or it can even reset the mode for the buffer. If you call another function. Or it can even reset the mode for the buffer. If you
want to perform several such actions in order, you use a vector, i.e., several want to perform several such actions in order, you use a vector, i.e., several
of the above elements between square brackets (@samp{[@r{@dots{}}]}). of the above elements between square brackets (@samp{[@r{@dots{}}]}).

View File

@ -346,7 +346,7 @@ semantic list.
@item (EXPANDFULL @var{$1} @var{nonterminal} @var{depth}) @item (EXPANDFULL @var{$1} @var{nonterminal} @var{depth})
Is like @code{EXPAND}, except that the parser will iterate over Is like @code{EXPAND}, except that the parser will iterate over
@var{nonterminal} until there are no more matches. (The same way the @var{nonterminal} until there are no more matches. (The same way the
parser iterates over the starting rule (@pxref{Starting Rules}). This parser iterates over the starting rule (@pxref{Starting Rules}). This
lets you have much simpler rules in this specific case, and also lets lets you have much simpler rules in this specific case, and also lets
you have positional information in the returned tokens, and error you have positional information in the returned tokens, and error
skipping. skipping.

View File

@ -355,7 +355,7 @@ To print the Calc manual in one huge tome, you will need the
Emacs source, which contains the source code to this manual, Emacs source, which contains the source code to this manual,
@file{calc.texi}. Change to the @file{doc/misc} subdirectory of the @file{calc.texi}. Change to the @file{doc/misc} subdirectory of the
Emacs source distribution, which contains source code for this manual, Emacs source distribution, which contains source code for this manual,
and type @kbd{make calc.pdf}. (Don't worry if you get some ``overfull and type @kbd{make calc.pdf}. (Don't worry if you get some ``overfull
box'' warnings while @TeX{} runs.) The result will be this entire box'' warnings while @TeX{} runs.) The result will be this entire
manual as a pdf file. manual as a pdf file.
@end ifnottex @end ifnottex
@ -524,7 +524,7 @@ matrix into a
@infoline 2x3 @infoline 2x3
matrix. Type @w{@kbd{v u}} to unpack the rows into two separate matrix. Type @w{@kbd{v u}} to unpack the rows into two separate
vectors. Now type @w{@kbd{V R + @key{TAB} V R +}} to compute the sums vectors. Now type @w{@kbd{V R + @key{TAB} V R +}} to compute the sums
of the two original columns. (There is also a special of the two original columns. (There is also a special
grab-and-sum-columns command, @kbd{C-x * :}.) grab-and-sum-columns command, @kbd{C-x * :}.)
@strong{Units conversion.} Units are entered algebraically. @strong{Units conversion.} Units are entered algebraically.
@ -929,7 +929,7 @@ is
Calc has added annotations to the file to help it remember the modes Calc has added annotations to the file to help it remember the modes
that were used for this formula. They are formatted like comments that were used for this formula. They are formatted like comments
in the @TeX{} typesetting language, just in case you are using @TeX{} or in the @TeX{} typesetting language, just in case you are using @TeX{} or
@LaTeX{}. (In this example @TeX{} is not being used, so you might want @LaTeX{}. (In this example @TeX{} is not being used, so you might want
to move these comments up to the top of the file or otherwise put them to move these comments up to the top of the file or otherwise put them
out of the way.) out of the way.)
@ -1174,7 +1174,7 @@ that arbitrary-size integers were just as easy as large integers.
Arbitrary floating-point precision was the logical next step. Also, Arbitrary floating-point precision was the logical next step. Also,
since the large integer arithmetic was there anyway it seemed only since the large integer arithmetic was there anyway it seemed only
fair to give the user direct access to it, which in turn made it fair to give the user direct access to it, which in turn made it
practical to support fractions as well as floats. All these features practical to support fractions as well as floats. All these features
inspired me to look around for other data types that might be worth inspired me to look around for other data types that might be worth
having. having.
@ -5762,7 +5762,7 @@ which in algebraic notation is written like @samp{ninteg(f(t), t, 0, x)}
with any integrand @samp{f(t)}. Define a @kbd{z s} command and with any integrand @samp{f(t)}. Define a @kbd{z s} command and
@code{Si} function that implement this. You will need to edit the @code{Si} function that implement this. You will need to edit the
default argument list a bit. As a test, @samp{Si(1)} should return default argument list a bit. As a test, @samp{Si(1)} should return
0.946083. (If you don't get this answer, you might want to check that 0.946083. (If you don't get this answer, you might want to check that
Calc is in Radians mode. Also, @code{ninteg} will run a lot faster if Calc is in Radians mode. Also, @code{ninteg} will run a lot faster if
you reduce the precision to, say, six digits beforehand.) you reduce the precision to, say, six digits beforehand.)
@xref{Programming Answer 1, 1}. (@bullet{}) @xref{Programming Answer 1, 1}. (@bullet{})
@ -9758,7 +9758,7 @@ by a zero) resets the Calculator to its initial state. This clears
the stack, resets all the modes to their initial values (the values the stack, resets all the modes to their initial values (the values
that were saved with @kbd{m m} (@code{calc-save-modes})), clears the that were saved with @kbd{m m} (@code{calc-save-modes})), clears the
caches (@pxref{Caches}), and so on. (It does @emph{not} erase the caches (@pxref{Caches}), and so on. (It does @emph{not} erase the
values of any variables.) With an argument of 0, Calc will be reset to values of any variables.) With an argument of 0, Calc will be reset to
its default state; namely, the modes will be given their default values. its default state; namely, the modes will be given their default values.
With a positive prefix argument, @kbd{C-x * 0} preserves the contents of With a positive prefix argument, @kbd{C-x * 0} preserves the contents of
the stack but resets everything else to its initial state; with a the stack but resets everything else to its initial state; with a
@ -10254,7 +10254,7 @@ specified number of operations. When the Calculator is quit, as with
the @kbd{q} (@code{calc-quit}) command, the undo history will be the @kbd{q} (@code{calc-quit}) command, the undo history will be
truncated to the length of the customizable variable truncated to the length of the customizable variable
@code{calc-undo-length} (@pxref{Customizing Calc}), which by default @code{calc-undo-length} (@pxref{Customizing Calc}), which by default
is @expr{100}. (Recall that @kbd{C-x * c} is synonymous with is @expr{100}. (Recall that @kbd{C-x * c} is synonymous with
@code{calc-quit} while inside the Calculator; this also truncates the @code{calc-quit} while inside the Calculator; this also truncates the
undo history.) undo history.)
@ -11050,8 +11050,8 @@ calendar.
Some calendars attempt to mimic the historical situation by using the Some calendars attempt to mimic the historical situation by using the
Gregorian calendar for recent dates and the Julian calendar for older Gregorian calendar for recent dates and the Julian calendar for older
dates. The @code{cal} program in most Unix implementations does this, dates. The @code{cal} program in most Unix implementations does this,
for example. While January 1 wasn't always the beginning of a calendar for example. While January 1 wasn't always the beginning of a calendar
year, these hybrid calendars still use January 1 as the beginning of year, these hybrid calendars still use January 1 as the beginning of
the year even for older dates. The customizable variable the year even for older dates. The customizable variable
@code{calc-gregorian-switch} (@pxref{Customizing Calc}) can be set to @code{calc-gregorian-switch} (@pxref{Customizing Calc}) can be set to
@ -11405,7 +11405,7 @@ means a variable is random, and its value could
be anything but is ``probably'' within one be anything but is ``probably'' within one
@texline @math{\sigma} @texline @math{\sigma}
@infoline @var{sigma} @infoline @var{sigma}
of the mean value @expr{x}. An interval of the mean value @expr{x}. An interval
`@tfn{[}@var{a} @tfn{..@:} @var{b}@tfn{]}' means a `@tfn{[}@var{a} @tfn{..@:} @var{b}@tfn{]}' means a
variable's value is unknown, but guaranteed to lie in the specified variable's value is unknown, but guaranteed to lie in the specified
range. Error forms are statistical or ``average case'' approximations; range. Error forms are statistical or ``average case'' approximations;
@ -11862,7 +11862,7 @@ any portion of a vector or formula on the stack.
@cindex Moving stack entries @cindex Moving stack entries
The command @kbd{C-x C-t} (@code{calc-transpose-lines}) will transpose The command @kbd{C-x C-t} (@code{calc-transpose-lines}) will transpose
the stack object determined by the point with the stack object at the the stack object determined by the point with the stack object at the
next higher level. For example, with @samp{10 20 30 40 50} on the next higher level. For example, with @samp{10 20 30 40 50} on the
stack and the point on the line containing @samp{30}, @kbd{C-x C-t} stack and the point on the line containing @samp{30}, @kbd{C-x C-t}
creates @samp{10 20 40 30 50}. More generally, @kbd{C-x C-t} acts on creates @samp{10 20 40 30 50}. More generally, @kbd{C-x C-t} acts on
the stack objects determined by the current point (and mark) similar the stack objects determined by the current point (and mark) similar
@ -11871,7 +11871,7 @@ lines. With argument @var{n}, @kbd{C-x C-t} will move the stack object
at the level above the current point and move it past N other objects; at the level above the current point and move it past N other objects;
for example, with @samp{10 20 30 40 50} on the stack and the point on for example, with @samp{10 20 30 40 50} on the stack and the point on
the line containing @samp{30}, @kbd{C-u 2 C-x C-t} creates the line containing @samp{30}, @kbd{C-u 2 C-x C-t} creates
@samp{10 40 20 30 50}. With an argument of 0, @kbd{C-x C-t} will switch @samp{10 40 20 30 50}. With an argument of 0, @kbd{C-x C-t} will switch
the stack objects at the levels determined by the point and the mark. the stack objects at the levels determined by the point and the mark.
@node Editing Stack Entries @node Editing Stack Entries
@ -12062,14 +12062,14 @@ the stack contains the sole number 5, but after @kbd{2 @key{RET} 3 K +},
the stack contains the arguments and the result: @samp{2 3 5}. the stack contains the arguments and the result: @samp{2 3 5}.
With the exception of keyboard macros, this works for all commands that With the exception of keyboard macros, this works for all commands that
take arguments off the stack. (To avoid potentially unpleasant behavior, take arguments off the stack. (To avoid potentially unpleasant behavior,
a @kbd{K} prefix before a keyboard macro will be ignored. A @kbd{K} a @kbd{K} prefix before a keyboard macro will be ignored. A @kbd{K}
prefix called @emph{within} the keyboard macro will still take effect.) prefix called @emph{within} the keyboard macro will still take effect.)
As another example, @kbd{K a s} simplifies a formula, pushing the As another example, @kbd{K a s} simplifies a formula, pushing the
simplified version of the formula onto the stack after the original simplified version of the formula onto the stack after the original
formula (rather than replacing the original formula). Note that you formula (rather than replacing the original formula). Note that you
could get the same effect by typing @kbd{@key{RET} a s}, copying the could get the same effect by typing @kbd{@key{RET} a s}, copying the
formula and then simplifying the copy. One difference is that for a very formula and then simplifying the copy. One difference is that for a very
large formula the time taken to format the intermediate copy in large formula the time taken to format the intermediate copy in
@kbd{@key{RET} a s} could be noticeable; @kbd{K a s} would avoid this @kbd{@key{RET} a s} could be noticeable; @kbd{K a s} would avoid this
extra work. extra work.
@ -13171,7 +13171,7 @@ Calc can display @expr{w}-bit integers using two's complement
notation, although this is most useful with the binary, octal and notation, although this is most useful with the binary, octal and
hexadecimal display modes. This option is selected by using the hexadecimal display modes. This option is selected by using the
@kbd{O} option prefix before setting the display radix, and a negative word @kbd{O} option prefix before setting the display radix, and a negative word
size might be appropriate (@pxref{Binary Functions}). In two's size might be appropriate (@pxref{Binary Functions}). In two's
complement notation, the integers in the (nearly) symmetric interval complement notation, the integers in the (nearly) symmetric interval
from from
@texline @math{-2^{w-1}} @texline @math{-2^{w-1}}
@ -13502,7 +13502,7 @@ date representation, this week goes from 2013-W01-1 (December 31,
All three ISO 8601 representations arrange the numbers from most All three ISO 8601 representations arrange the numbers from most
significant to least significant; as well as being unambiguous significant to least significant; as well as being unambiguous
representations, they are easy to sort since chronological order in representations, they are easy to sort since chronological order in
this formats corresponds to lexicographical order. The hyphens are this formats corresponds to lexicographical order. The hyphens are
sometimes omitted. sometimes omitted.
The ISO 8601 standard uses a 24 hour clock; a particular time is The ISO 8601 standard uses a 24 hour clock; a particular time is
@ -13744,7 +13744,7 @@ order), then all other characters are ignored and this information
determines the date. Otherwise, all words and numbers are isolated determines the date. Otherwise, all words and numbers are isolated
from the string; other characters are ignored. All words must be from the string; other characters are ignored. All words must be
either month names or day-of-week names (the latter of which are either month names or day-of-week names (the latter of which are
ignored). Names can be written in full or as three-letter ignored). Names can be written in full or as three-letter
abbreviations. abbreviations.
Large numbers, or numbers with @samp{+} or @samp{-} signs, Large numbers, or numbers with @samp{+} or @samp{-} signs,
@ -14205,9 +14205,9 @@ quotients are written using @code{\over} in @TeX{} mode (as in
@code{\choose} in @TeX{} mode (as in @code{@{a \choose b@}}) and @code{\choose} in @TeX{} mode (as in @code{@{a \choose b@}}) and
@code{\binom} in @LaTeX{} mode (as in @code{\binom@{a@}@{b@}}). @code{\binom} in @LaTeX{} mode (as in @code{\binom@{a@}@{b@}}).
Interval forms are written with @code{\ldots}, and error forms are Interval forms are written with @code{\ldots}, and error forms are
written with @code{\pm}. Absolute values are written as in written with @code{\pm}. Absolute values are written as in
@samp{|x + 1|}, and the floor and ceiling functions are written with @samp{|x + 1|}, and the floor and ceiling functions are written with
@code{\lfloor}, @code{\rfloor}, etc. The words @code{\left} and @code{\lfloor}, @code{\rfloor}, etc. The words @code{\left} and
@code{\right} are ignored when reading formulas in @TeX{} and @LaTeX{} @code{\right} are ignored when reading formulas in @TeX{} and @LaTeX{}
modes. Both @code{inf} and @code{uinf} are written as @code{\infty}; modes. Both @code{inf} and @code{uinf} are written as @code{\infty};
when read, @code{\infty} always translates to @code{inf}. when read, @code{\infty} always translates to @code{inf}.
@ -16290,7 +16290,7 @@ interpretations; the expression @samp{a/b*c} should be written
@samp{(a/b)*c} or @samp{a/(b*c)}, as appropriate. Without the @samp{(a/b)*c} or @samp{a/(b*c)}, as appropriate. Without the
parentheses, Calc will interpret @samp{a/b*c} as @samp{a/(b*c)}, since parentheses, Calc will interpret @samp{a/b*c} as @samp{a/(b*c)}, since
in algebraic entry Calc gives division a lower precedence than in algebraic entry Calc gives division a lower precedence than
multiplication. (This is not standard across all computer languages, and multiplication. (This is not standard across all computer languages, and
Calc may change the precedence depending on the language mode being used. Calc may change the precedence depending on the language mode being used.
@xref{Language Modes}.) This default ordering can be changed by setting @xref{Language Modes}.) This default ordering can be changed by setting
the customizable variable @code{calc-multiplication-has-precedence} to the customizable variable @code{calc-multiplication-has-precedence} to
@ -17456,7 +17456,7 @@ converting into a generalized time zone (see below).
The Lisp function @code{math-prev-weekday-in-month} is useful for The Lisp function @code{math-prev-weekday-in-month} is useful for
daylight saving computations. This is an internal version of daylight saving computations. This is an internal version of
the user-level @code{pwday} function described in the previous the user-level @code{pwday} function described in the previous
section. It takes four arguments: The floating-point date value, section. It takes four arguments: The floating-point date value,
the corresponding six-element date list, the day-of-month number, the corresponding six-element date list, the day-of-month number,
and the weekday number (0--6). and the weekday number (0--6).
@ -20150,7 +20150,7 @@ that the counts in the result vector don't add up to the length of the
input vector.) input vector.)
If no prefix is given, then you will be prompted for a vector which If no prefix is given, then you will be prompted for a vector which
will be used to determine the bins. (If a positive integer is given at will be used to determine the bins. (If a positive integer is given at
this prompt, it will be still treated as if it were given as a this prompt, it will be still treated as if it were given as a
prefix.) Each bin will consist of the interval of numbers closest to prefix.) Each bin will consist of the interval of numbers closest to
the corresponding number of this new vector; if the vector the corresponding number of this new vector; if the vector
@ -21636,7 +21636,7 @@ to
@noindent @noindent
Every character not part of the sub-formula @samp{b} has been changed Every character not part of the sub-formula @samp{b} has been changed
to a dot. (If the customizable variable to a dot. (If the customizable variable
@code{calc-highlight-selections-with-faces} is non-@code{nil}, then the characters @code{calc-highlight-selections-with-faces} is non-@code{nil}, then the characters
not part of the sub-formula are de-emphasized by using a less not part of the sub-formula are de-emphasized by using a less
noticeable face instead of using dots. @pxref{Displaying Selections}.) noticeable face instead of using dots. @pxref{Displaying Selections}.)
@ -22837,12 +22837,12 @@ suitable numbers.
This section describes all simplifications that are performed by This section describes all simplifications that are performed by
the algebraic simplification mode, which is the default simplification the algebraic simplification mode, which is the default simplification
mode. If you have switched to a different simplification mode, you can mode. If you have switched to a different simplification mode, you can
switch back with the @kbd{m A} command. Even in other simplification switch back with the @kbd{m A} command. Even in other simplification
modes, the @kbd{a s} command will use these algebraic simplifications to modes, the @kbd{a s} command will use these algebraic simplifications to
simplify the formula. simplify the formula.
There is a variable, @code{AlgSimpRules}, in which you can put rewrites There is a variable, @code{AlgSimpRules}, in which you can put rewrites
to be applied. Its use is analogous to @code{EvalRules}, to be applied. Its use is analogous to @code{EvalRules},
but without the special restrictions. Basically, the simplifier does but without the special restrictions. Basically, the simplifier does
@samp{@w{a r} AlgSimpRules} with an infinite repeat count on the whole @samp{@w{a r} AlgSimpRules} with an infinite repeat count on the whole
expression being simplified, then it traverses the expression applying expression being simplified, then it traverses the expression applying
@ -22991,7 +22991,7 @@ function; for example, @expr{1/@tfn{sec}(x)} is simplified to
hyperbolic functions are also handled. hyperbolic functions are also handled.
Trigonometric functions of their inverse functions are Trigonometric functions of their inverse functions are
simplified. The expression @expr{@tfn{sin}(@tfn{arcsin}(x))} is simplified. The expression @expr{@tfn{sin}(@tfn{arcsin}(x))} is
simplified to @expr{x}, and similarly for @code{cos} and @code{tan}. simplified to @expr{x}, and similarly for @code{cos} and @code{tan}.
Trigonometric functions of inverses of different trigonometric Trigonometric functions of inverses of different trigonometric
functions can also be simplified, as in @expr{@tfn{sin}(@tfn{arccos}(x))} functions can also be simplified, as in @expr{@tfn{sin}(@tfn{arccos}(x))}
@ -27646,7 +27646,7 @@ simplifications.
Most of the special limitations for @code{EvalRules} don't apply to Most of the special limitations for @code{EvalRules} don't apply to
@code{AlgSimpRules}. Calc simply does an @kbd{a r AlgSimpRules} @code{AlgSimpRules}. Calc simply does an @kbd{a r AlgSimpRules}
command with an infinite repeat count as the first step of algebraic command with an infinite repeat count as the first step of algebraic
simplifications. It then applies its own built-in simplifications simplifications. It then applies its own built-in simplifications
throughout the formula, and then repeats these two steps (along with throughout the formula, and then repeats these two steps (along with
applying the default simplifications) until no further changes are applying the default simplifications) until no further changes are
possible. possible.
@ -27883,7 +27883,7 @@ while typing @kbd{u c au/yr @key{RET}} produces
If the units you request are inconsistent with the original units, the If the units you request are inconsistent with the original units, the
number will be converted into your units times whatever ``remainder'' number will be converted into your units times whatever ``remainder''
units are left over. For example, converting @samp{55 mph} into acres units are left over. For example, converting @samp{55 mph} into acres
produces @samp{6.08e-3 acre / (m s)}. Remainder units are expressed in terms of produces @samp{6.08e-3 acre / (m s)}. Remainder units are expressed in terms of
``fundamental'' units like @samp{m} and @samp{s}, regardless of the ``fundamental'' units like @samp{m} and @samp{s}, regardless of the
input units. input units.
@ -28257,7 +28257,7 @@ is defined to be
@infoline @math{10 log10(P1/P0) dB}. @infoline @math{10 log10(P1/P0) dB}.
@texline @math{10 \log_{10}(P_{1}/P_{0}) {\rm dB}}. @texline @math{10 \log_{10}(P_{1}/P_{0}) {\rm dB}}.
(The factor of 10 is because a decibel, as its name implies, is (The factor of 10 is because a decibel, as its name implies, is
one-tenth of a bel. The bel, named after Alexander Graham Bell, was one-tenth of a bel. The bel, named after Alexander Graham Bell, was
considered to be too large of a unit and was effectively replaced by considered to be too large of a unit and was effectively replaced by
the decibel.) If @math{F} is a field quantity with power the decibel.) If @math{F} is a field quantity with power
@math{P=k F^2}, then a reference quantity of @math{P=k F^2}, then a reference quantity of
@ -28353,10 +28353,10 @@ capital @kbd{O} prefix is used.
@tindex lufquant @tindex lufquant
The @kbd{l q} (@code{calc-lu-quant}) [@code{lupquant}] The @kbd{l q} (@code{calc-lu-quant}) [@code{lupquant}]
command computes the power quantity corresponding to a given number of command computes the power quantity corresponding to a given number of
logarithmic units. With the capital @kbd{O} prefix, @kbd{O l q}, the logarithmic units. With the capital @kbd{O} prefix, @kbd{O l q}, the
reference level will be read from the top of the stack. (In an reference level will be read from the top of the stack. (In an
algebraic formula, @code{lupquant} can be given an optional second algebraic formula, @code{lupquant} can be given an optional second
argument which will be used for the reference level.) For example, argument which will be used for the reference level.) For example,
@code{20 dB @key{RET} l q} will return @code{100 mW}; @code{20 dB @key{RET} l q} will return @code{100 mW};
@code{20 dB @key{RET} 4 W @key{RET} O l q} will return @code{400 W}. @code{20 dB @key{RET} 4 W @key{RET} O l q} will return @code{400 W}.
The @kbd{H l q} [@code{lufquant}] command behaves like @kbd{l q} but The @kbd{H l q} [@code{lufquant}] command behaves like @kbd{l q} but
@ -28469,7 +28469,7 @@ The @kbd{l *} (@code{calc-lu-times}) [@code{lupmul}] and @kbd{H l *}
[@code{lufmul}] commands will ``multiply'' a logarithmic unit by a [@code{lufmul}] commands will ``multiply'' a logarithmic unit by a
number; the @kbd{l /} (@code{calc-lu-divide}) [@code{lupdiv}] and number; the @kbd{l /} (@code{calc-lu-divide}) [@code{lupdiv}] and
@kbd{H l /} [@code{lufdiv}] commands will ``divide'' a logarithmic @kbd{H l /} [@code{lufdiv}] commands will ``divide'' a logarithmic
unit by a number. Note that the reference quantities don't play a role unit by a number. Note that the reference quantities don't play a role
in this arithmetic. in this arithmetic.
@node Musical Notes @node Musical Notes
@ -28528,7 +28528,7 @@ example, @code{500 Hz} gets converted to
@tindex midi @tindex midi
The @kbd{l m} (@code{calc-midi}) [@code{midi}] command converts either The @kbd{l m} (@code{calc-midi}) [@code{midi}] command converts either
a frequency or a note given in scientific pitch notation to the a frequency or a note given in scientific pitch notation to the
corresponding midi number. For example, @code{C_6} gets converted to 84 corresponding midi number. For example, @code{C_6} gets converted to 84
and @code{440 Hz} to 69. and @code{440 Hz} to 69.
@kindex l f @kindex l f
@ -28536,7 +28536,7 @@ and @code{440 Hz} to 69.
@tindex freq @tindex freq
The @kbd{l f} (@code{calc-freq}) [@code{freq}] command converts either The @kbd{l f} (@code{calc-freq}) [@code{freq}] command converts either
either a midi number or a note given in scientific pitch notation to either a midi number or a note given in scientific pitch notation to
the corresponding frequency. For example, @code{Asharp_2 + 30 cents} the corresponding frequency. For example, @code{Asharp_2 + 30 cents}
gets converted to @code{118.578040134 Hz} and @code{55} to gets converted to @code{118.578040134 Hz} and @code{55} to
@code{195.99771799 Hz}. @code{195.99771799 Hz}.
@ -29530,7 +29530,7 @@ will be computed for the surface.
Data values in the graph of a function are normally computed to a Data values in the graph of a function are normally computed to a
precision of five digits, regardless of the current precision at the precision of five digits, regardless of the current precision at the
time. This is usually more than adequate, but there are cases where time. This is usually more than adequate, but there are cases where
it will not be. For example, plotting @expr{1 + x} with @expr{x} in the it will not be. For example, plotting @expr{1 + x} with @expr{x} in the
interval @samp{[0 ..@: 1e-6]} will round all the data points down interval @samp{[0 ..@: 1e-6]} will round all the data points down
to 1.0! Putting the command @samp{set precision @var{n}} in the to 1.0! Putting the command @samp{set precision @var{n}} in the
@ -29975,7 +29975,7 @@ register will be deleted from the Calc buffer.
It is possible to add additional stack entries to a register. The It is possible to add additional stack entries to a register. The
command @kbd{M-x calc-append-to-register} will prompt for a register, command @kbd{M-x calc-append-to-register} will prompt for a register,
then add the stack entries in the region to the end of the register then add the stack entries in the region to the end of the register
contents. The command @kbd{M-x calc-prepend-to-register} will contents. The command @kbd{M-x calc-prepend-to-register} will
similarly prompt for a register and add the stack entries in the similarly prompt for a register and add the stack entries in the
region to the beginning of the register contents. Both commands take region to the beginning of the register contents. Both commands take
@kbd{C-u} arguments, which will cause the region to be deleted after being @kbd{C-u} arguments, which will cause the region to be deleted after being
@ -30620,7 +30620,7 @@ like most Calc commands, but rather in regular editing buffers that
are visiting your own files. are visiting your own files.
Calc will try to guess an appropriate language based on the major mode Calc will try to guess an appropriate language based on the major mode
of the editing buffer. (@xref{Language Modes}.) If the current buffer is of the editing buffer. (@xref{Language Modes}.) If the current buffer is
in @code{latex-mode}, for example, Calc will set its language to @LaTeX{}. in @code{latex-mode}, for example, Calc will set its language to @LaTeX{}.
Similarly, Calc will use @TeX{} language for @code{tex-mode}, Similarly, Calc will use @TeX{} language for @code{tex-mode},
@code{plain-tex-mode} and @code{context-mode}, C language for @code{plain-tex-mode} and @code{context-mode}, C language for
@ -30657,7 +30657,7 @@ on their own separate lines or in-line with the formula.
If you give a positive or negative numeric prefix argument, Calc If you give a positive or negative numeric prefix argument, Calc
instead uses the current point as one end of the formula, and includes instead uses the current point as one end of the formula, and includes
that many lines forward or backward (respectively, including the current that many lines forward or backward (respectively, including the current
line). Explicit delimiters are not necessary in this case. line). Explicit delimiters are not necessary in this case.
With a prefix argument of zero, Calc uses the current region (delimited With a prefix argument of zero, Calc uses the current region (delimited
by point and mark) instead of formula delimiters. With a prefix by point and mark) instead of formula delimiters. With a prefix
@ -31189,7 +31189,7 @@ use @kbd{C-x * u} to update the buffer by hand.
@noindent @noindent
The mode settings can be changed while Calc is in embedded mode, but The mode settings can be changed while Calc is in embedded mode, but
by default they will revert to their original values when embedded mode by default they will revert to their original values when embedded mode
is ended. However, the modes saved when the mode-recording mode is is ended. However, the modes saved when the mode-recording mode is
@code{Save} (see below) and the modes in effect when the @kbd{m e} @code{Save} (see below) and the modes in effect when the @kbd{m e}
(@code{calc-embedded-preserve-modes}) command is given (@code{calc-embedded-preserve-modes}) command is given
will be preserved when embedded mode is ended. will be preserved when embedded mode is ended.
@ -31315,7 +31315,7 @@ on it in order to get it to notice the new annotation.
Two more mode-recording modes selectable by @kbd{m R} are available Two more mode-recording modes selectable by @kbd{m R} are available
which are also available outside of Embedded mode. which are also available outside of Embedded mode.
(@pxref{General Mode Commands}.) They are @code{Save}, in which mode (@pxref{General Mode Commands}.) They are @code{Save}, in which mode
settings are recorded permanently in your Calc init file (the file given settings are recorded permanently in your Calc init file (the file given
by the variable @code{calc-settings-file}, typically @file{~/.emacs.d/calc.el}) by the variable @code{calc-settings-file}, typically @file{~/.emacs.d/calc.el})
rather than by annotating the current document, and no-recording rather than by annotating the current document, and no-recording
@ -35645,7 +35645,7 @@ formulas in normal language modes. If
@code{calc-multiplication-has-precedence} is non-@code{nil}, then @code{calc-multiplication-has-precedence} is non-@code{nil}, then
multiplication has precedence (and, for certain obscure reasons, is multiplication has precedence (and, for certain obscure reasons, is
right associative), and so for example @samp{a/b*c} will be interpreted right associative), and so for example @samp{a/b*c} will be interpreted
as @samp{a/(b*c)}. If @code{calc-multiplication-has-precedence} is as @samp{a/(b*c)}. If @code{calc-multiplication-has-precedence} is
@code{nil}, then multiplication has the same precedence as division @code{nil}, then multiplication has the same precedence as division
(and, like division, is left associative), and so for example (and, like division, is left associative), and so for example
@samp{a/b*c} will be interpreted as @samp{(a/b)*c}. The default value @samp{a/b*c} will be interpreted as @samp{(a/b)*c}. The default value

View File

@ -182,7 +182,7 @@ modify this GNU manual.''
@end quotation @end quotation
@end copying @end copying
@comment Info directory entry for use by install-info. The indentation @comment Info directory entry for use by install-info. The indentation
@comment here is by request from the FSF folks. @comment here is by request from the FSF folks.
@dircategory Emacs editing modes @dircategory Emacs editing modes
@direntry @direntry
@ -1429,7 +1429,7 @@ continuation of the preceding @code{if}.
@findex abbrev-mode @findex abbrev-mode
@cindex Abbrev mode @cindex Abbrev mode
@ccmode{} uses Abbrev mode (@pxref{Abbrevs,,,@emacsman{}, @emacsmantitle{}}) @ccmode{} uses Abbrev mode (@pxref{Abbrevs,,,@emacsman{}, @emacsmantitle{}})
to accomplish this. It's therefore turned on by default in all language to accomplish this. It's therefore turned on by default in all language
modes except IDL mode, since CORBA IDL doesn't have any statements. modes except IDL mode, since CORBA IDL doesn't have any statements.
@end deffn @end deffn
@ -2704,7 +2704,7 @@ for C code in GNU programs.
@item k&r @item k&r
@cindex K&R style @cindex K&R style
The classic Kernighan and Ritchie style for C code. If you're looking The classic Kernighan and Ritchie style for C code. If you're looking
for the style used in the 2nd edition of their book ``The C for the style used in the 2nd edition of their book ``The C
Programming Language'', then check out the @code{stroustrup} style. Programming Language'', then check out the @code{stroustrup} style.
@ -7591,7 +7591,7 @@ Started}.
@kindex C-M-\ @kindex C-M-\
@emph{How do I reindent the whole file?} @emph{How do I reindent the whole file?}
Visit the file and hit @kbd{C-x h} to mark the whole buffer. Then hit Visit the file and hit @kbd{C-x h} to mark the whole buffer. Then hit
@kbd{C-M-\}. @xref{Indentation Commands}. @kbd{C-M-\}. @xref{Indentation Commands}.
@item @item

View File

@ -860,7 +860,7 @@ Thus @code{(cl-typep @var{object} 'null)} is equivalent to
@item @item
The type symbol @code{atom} represents all objects that are not cons The type symbol @code{atom} represents all objects that are not cons
cells. Thus @code{(cl-typep @var{object} 'atom)} is equivalent to cells. Thus @code{(cl-typep @var{object} 'atom)} is equivalent to
@code{(atom @var{object})}. @code{(atom @var{object})}.
@item @item
@ -2191,7 +2191,7 @@ term restricts the search to just the specified property. The
Properties,,,elisp}. Properties,,,elisp}.
@item for @var{var} being the frames @item for @var{var} being the frames
This clause iterates over all Emacs frames. The clause @code{screens} is This clause iterates over all Emacs frames. The clause @code{screens} is
a synonym for @code{frames}. The frames are visited in a synonym for @code{frames}. The frames are visited in
@code{next-frame} order starting from @code{selected-frame}. @code{next-frame} order starting from @code{selected-frame}.

View File

@ -1255,7 +1255,7 @@ object. Example:
@end lisp @end lisp
With the @code{dbus-introspect} function it is possible to explore the With the @code{dbus-introspect} function it is possible to explore the
interfaces of @samp{org.freedesktop.Hal} service. It offers the interfaces of @samp{org.freedesktop.Hal} service. It offers the
interfaces @samp{org.freedesktop.Hal.Manager} for the object at the interfaces @samp{org.freedesktop.Hal.Manager} for the object at the
path @samp{/org/freedesktop/Hal/Manager} as well as the interface path @samp{/org/freedesktop/Hal/Manager} as well as the interface
@samp{org.freedesktop.Hal.Device} for all objects prefixed with the @samp{org.freedesktop.Hal.Device} for all objects prefixed with the
@ -1970,7 +1970,7 @@ If this variable is non-@code{nil}, D-Bus specific debug messages are raised.
Input parameters of @code{dbus-call-method}, Input parameters of @code{dbus-call-method},
@code{dbus-call-method-asynchronously}, @code{dbus-send-signal}, @code{dbus-call-method-asynchronously}, @code{dbus-send-signal},
@code{dbus-register-method}, @code{dbus-register-property} and @code{dbus-register-method}, @code{dbus-register-property} and
@code{dbus-register-signal} are checked for correct D-Bus types. If @code{dbus-register-signal} are checked for correct D-Bus types. If
there is a type mismatch, the Lisp error @code{wrong-type-argument} there is a type mismatch, the Lisp error @code{wrong-type-argument}
@code{D-Bus @var{arg}} is raised. @code{D-Bus @var{arg}} is raised.

View File

@ -513,8 +513,8 @@ practical than to clutter up the buffer list with dozens of member
buffers. buffers.
If you want to display more than one member list at a time you can If you want to display more than one member list at a time you can
@dfn{freeze} its member buffer. Freezing a member buffer prevents it @dfn{freeze} its member buffer. Freezing a member buffer prevents it
from being overwritten the next time you display a member list. You can from being overwritten the next time you display a member list. You can
toggle this buffer status at any time. toggle this buffer status at any time.
Every member list display command in the tree buffer can be used with a Every member list display command in the tree buffer can be used with a
@ -747,7 +747,7 @@ menu.
@cindex unmark all @cindex unmark all
@item M a @item M a
Unmark all classes. With prefix argument @kbd{C-u}, mark all classes in Unmark all classes. With prefix argument @kbd{C-u}, mark all classes in
the tree. Since this command operates on the whole buffer, it can also be the tree. Since this command operates on the whole buffer, it can also be
found in the buffer's object menu. found in the buffer's object menu.
@end table @end table

View File

@ -1120,7 +1120,7 @@ number. It also holds a list of @code{ede-target} objects and a list
of sub projects, or more @code{ede-project} objects. of sub projects, or more @code{ede-project} objects.
New project types must subclass @code{ede-project} to add special New project types must subclass @code{ede-project} to add special
behavior. New project types also need to subclass @code{ede-target} to behavior. New project types also need to subclass @code{ede-target} to
add specialty behavior. add specialty behavior.
In this way, the common @ede{} interface is designed to work against In this way, the common @ede{} interface is designed to work against

View File

@ -135,10 +135,10 @@ The architecture and the interface are, of course, drastically different.
When Ediff starts up, it displays a small control window, which accepts the When Ediff starts up, it displays a small control window, which accepts the
Ediff commands, and two or three windows displaying the files to be compared Ediff commands, and two or three windows displaying the files to be compared
or merged. The control window can be in its own small frame or it can be or merged. The control window can be in its own small frame or it can be
part of a bigger frame that displays other buffers. In any case, it is part of a bigger frame that displays other buffers. In any case, it is
important that the control window be active (i.e., be the one receiving the important that the control window be active (i.e., be the one receiving the
keystrokes) when you use Ediff. You can switch to other Emacs buffers at keystrokes) when you use Ediff. You can switch to other Emacs buffers at
will and even edit the files currently being compared with Ediff and then will and even edit the files currently being compared with Ediff and then
switch back to Ediff at any time by activating the appropriate Emacs windows. switch back to Ediff at any time by activating the appropriate Emacs windows.
@ -156,13 +156,13 @@ Compare two files.
@item ediff-backup @item ediff-backup
@findex ediff-backup @findex ediff-backup
Compare a file with its backup. If there are several numerical backups, use Compare a file with its backup. If there are several numerical backups, use
the latest. If the file is itself a backup, then compare it with its the latest. If the file is itself a backup, then compare it with its
original. original.
@item ediff-current-file @item ediff-current-file
@findex ediff-current-file @findex ediff-current-file
Compare the buffer with its file on disk. This function can be used as a Compare the buffer with its file on disk. This function can be used as a
safe version of @code{revert-buffer}. safe version of @code{revert-buffer}.
@item ediff-buffers @item ediff-buffers
@ -220,14 +220,14 @@ Compare text visible in 2 windows line-by-line.
@findex ediff-regions-wordwise @findex ediff-regions-wordwise
Compare regions word-by-word. The regions can come from the same buffer Compare regions word-by-word. The regions can come from the same buffer
and they can even overlap. You will be asked to specify the buffers that and they can even overlap. You will be asked to specify the buffers that
contain the regions, which you want to compare. For each buffer, you will contain the regions, which you want to compare. For each buffer, you will
also be asked to mark the regions to be compared. Pay attention to the also be asked to mark the regions to be compared. Pay attention to the
messages that appear in the minibuffer. messages that appear in the minibuffer.
@item ediff-regions-linewise @item ediff-regions-linewise
@findex ediff-regions-linewise @findex ediff-regions-linewise
Similar to @code{ediff-windows-linewise}, but compares the regions Similar to @code{ediff-windows-linewise}, but compares the regions
line-by-line. See @code{ediff-windows-linewise} for more details. line-by-line. See @code{ediff-windows-linewise} for more details.
@item ediff-revision @item ediff-revision
@findex ediff-revision @findex ediff-revision
@ -246,7 +246,7 @@ will be able to patch the files selectively. @xref{Session Groups}, for
more details. more details.
Since the patch might be in a buffer or a file, you will be asked which is Since the patch might be in a buffer or a file, you will be asked which is
the case. To avoid this extra prompt, you can invoke this command with a the case. To avoid this extra prompt, you can invoke this command with a
prefix argument. With an odd prefix argument, Ediff assumes the patch prefix argument. With an odd prefix argument, Ediff assumes the patch
is in a file; with an even argument, a buffer is assumed. is in a file; with an even argument, a buffer is assumed.
@ -280,7 +280,7 @@ This function would refuse to apply a multifile patch to a buffer. Use
modified by the @code{patch} utility). modified by the @code{patch} utility).
Since the patch might be in a buffer or a file, you will be asked which is Since the patch might be in a buffer or a file, you will be asked which is
the case. To avoid this extra prompt, you can invoke this command with a the case. To avoid this extra prompt, you can invoke this command with a
prefix argument. With an odd prefix argument, Ediff assumes the patch prefix argument. With an odd prefix argument, Ediff assumes the patch
is in a file; with an even argument, a buffer is assumed. is in a file; with an even argument, a buffer is assumed.
@ -683,7 +683,7 @@ again puts Ediff back in the original state.
@vindex ediff-ignore-case-option @vindex ediff-ignore-case-option
@vindex ediff-ignore-case-option3 @vindex ediff-ignore-case-option3
@vindex ediff-ignore-case @vindex ediff-ignore-case
Toggle case sensitivity in the diff program. All diffs are recomputed. Toggle case sensitivity in the diff program. All diffs are recomputed.
Case sensitivity is controlled by the variables Case sensitivity is controlled by the variables
@code{ediff-ignore-case-option}, @code{ediff-ignore-case-option3}, @code{ediff-ignore-case-option}, @code{ediff-ignore-case-option3},
and @code{ediff-ignore-case}, which are explained elsewhere. and @code{ediff-ignore-case}, which are explained elsewhere.
@ -814,7 +814,7 @@ it. Typing @kbd{$$} again undoes this setting.
@kindex $* @kindex $*
When merging files with large number of differences, it is sometimes When merging files with large number of differences, it is sometimes
convenient to be able to skip the difference regions for which you already convenient to be able to skip the difference regions for which you already
decided which variant is most appropriate. Typing @kbd{$*} will accomplish decided which variant is most appropriate. Typing @kbd{$*} will accomplish
precisely this. precisely this.
To be more precise, this toggles the check for whether the current merge is To be more precise, this toggles the check for whether the current merge is
@ -898,9 +898,9 @@ child Ediff session for comparing regions in buffers A, B, or
C as follows. C as follows.
First, you will be asked whether you want to compare the fine differences First, you will be asked whether you want to compare the fine differences
between the currently highlighted buffers on a word-by-word basis. If you between the currently highlighted buffers on a word-by-word basis. If you
accept, a child Ediff session will start using the currently highlighted accept, a child Ediff session will start using the currently highlighted
regions. Ediff will let you step over the differences word-wise. regions. Ediff will let you step over the differences word-wise.
If you reject the offer, you will be asked to select regions of your choice. If you reject the offer, you will be asked to select regions of your choice.
@ -1054,9 +1054,9 @@ directories.
@cindex Directory difference buffer @cindex Directory difference buffer
Sometimes it is desirable to copy some files from one directory to another Sometimes it is desirable to copy some files from one directory to another
without exiting Ediff. The @emph{directory difference buffer}, which is without exiting Ediff. The @emph{directory difference buffer}, which is
displayed by typing @kbd{D} as discussed above, can be used for this displayed by typing @kbd{D} as discussed above, can be used for this
purpose. If a file is, say, in Ediff's Directory A, but is missing in purpose. If a file is, say, in Ediff's Directory A, but is missing in
Ediff's Directory B (Ediff will refuse to override existing files), then Ediff's Directory B (Ediff will refuse to override existing files), then
typing @kbd{C} or clicking mouse button 2 over that file (which must be typing @kbd{C} or clicking mouse button 2 over that file (which must be
displayed in directory difference buffer) will copy that file from displayed in directory difference buffer) will copy that file from
@ -1130,7 +1130,7 @@ for hiding or, with @kbd{=m}, for further operations.
The comparison operations @kbd{==}, @kbd{=h}, and @kbd{=m} can recurse into The comparison operations @kbd{==}, @kbd{=h}, and @kbd{=m} can recurse into
subdirectories to see if they have identical contents (so the user will not subdirectories to see if they have identical contents (so the user will not
need to descend into those subdirectories manually). These commands ask the need to descend into those subdirectories manually). These commands ask the
user whether or not to do a recursive descent. user whether or not to do a recursive descent.
@ -1221,7 +1221,7 @@ of Ediff.
@vindex ediff-after-setup-windows-hook @vindex ediff-after-setup-windows-hook
These two hooks are called before and after Ediff sets up its window These two hooks are called before and after Ediff sets up its window
configuration. These hooks are run each time Ediff rearranges windows to configuration. These hooks are run each time Ediff rearranges windows to
its liking. This happens whenever it detects that the user changed the its liking. This happens whenever it detects that the user changed the
windows setup. windows setup.
@item ediff-suspend-hook @item ediff-suspend-hook
@ -1323,7 +1323,7 @@ Hooks run after setting up the registry for all active Ediff session.
@item ediff-before-session-group-setup-hook @item ediff-before-session-group-setup-hook
@vindex ediff-before-session-group-setup-hook @vindex ediff-before-session-group-setup-hook
Hooks run before setting up a control panel for a group of related Ediff Hooks run before setting up a control panel for a group of related Ediff
sessions. Can be used, for example, to save window configuration to restore sessions. Can be used, for example, to save window configuration to restore
later. later.
@item ediff-after-session-group-setup-hook @item ediff-after-session-group-setup-hook
@vindex ediff-after-session-group-setup-hook @vindex ediff-after-session-group-setup-hook
@ -1598,21 +1598,21 @@ problem.
@vindex ediff-ignore-case-option @vindex ediff-ignore-case-option
@vindex ediff-ignore-case-option3 @vindex ediff-ignore-case-option3
@vindex ediff-ignore-case @vindex ediff-ignore-case
Finally, Ediff can be told to ignore the case of the letters. This behavior Finally, Ediff can be told to ignore the case of the letters. This behavior
can be toggled with @kbd{#c} and it is controlled with three variables: can be toggled with @kbd{#c} and it is controlled with three variables:
@code{ediff-ignore-case-option}, @code{ediff-ignore-case-option3}, and @code{ediff-ignore-case-option}, @code{ediff-ignore-case-option3}, and
@code{ediff-ignore-case}. @code{ediff-ignore-case}.
The variable @code{ediff-ignore-case-option} specifies the option to pass The variable @code{ediff-ignore-case-option} specifies the option to pass
to the diff program for comparing two files or buffers. For GNU to the diff program for comparing two files or buffers. For GNU
@code{diff}, this option is @code{"-i"}. The variable @code{diff}, this option is @code{"-i"}. The variable
@code{ediff-ignore-case-option3} specifies the option to pass to the @code{ediff-ignore-case-option3} specifies the option to pass to the
@code{diff3} program in order to make it case-insensitive. GNU @code{diff3} @code{diff3} program in order to make it case-insensitive. GNU @code{diff3}
does not have such an option, so when merging or comparing three files with does not have such an option, so when merging or comparing three files with
this program, ignoring the letter case is not supported. this program, ignoring the letter case is not supported.
The variable @code{ediff-ignore-case} controls whether Ediff starts out by The variable @code{ediff-ignore-case} controls whether Ediff starts out by
ignoring letter case or not. It can be set in @file{.emacs} using ignoring letter case or not. It can be set in @file{.emacs} using
@code{setq-default}. @code{setq-default}.
When case sensitivity is toggled, all difference When case sensitivity is toggled, all difference
@ -1875,11 +1875,11 @@ Customize interface instead of using @code{setq} directly.)
@item ediff-coding-system-for-read @item ediff-coding-system-for-read
@vindex ediff-coding-system-for-read @vindex ediff-coding-system-for-read
This variable specifies the coding system to use when reading the output This variable specifies the coding system to use when reading the output
that the programs @code{diff3} and @code{diff} send to Emacs. The default that the programs @code{diff3} and @code{diff} send to Emacs. The default
is @code{raw-text}, and this should work fine in Unix and in most is @code{raw-text}, and this should work fine in Unix and in most
cases under Windows NT/98/2000. There are @code{diff} programs cases under Windows NT/98/2000. There are @code{diff} programs
for which the default option doesn't work under Windows. In such cases, for which the default option doesn't work under Windows. In such cases,
@code{raw-text-dos} might work. If not, you will have to experiment with @code{raw-text-dos} might work. If not, you will have to experiment with
other coding systems or use GNU diff. other coding systems or use GNU diff.
@item ediff-patch-program @item ediff-patch-program
@ -1992,7 +1992,7 @@ the difference region from the ancestor buffer, if available
======= end ======= end
@end example @end example
The above is the default template for the combined region. The user can The above is the default template for the combined region. The user can
customize this template using the variable customize this template using the variable
@code{ediff-combination-pattern}. @code{ediff-combination-pattern}.
@ -2000,11 +2000,11 @@ customize this template using the variable
The variable @code{ediff-combination-pattern} specifies the template that The variable @code{ediff-combination-pattern} specifies the template that
determines how the combined merged region looks like. The template is determines how the combined merged region looks like. The template is
represented as a list of the form @code{(STRING1 Symbol1 STRING2 Symbol2 represented as a list of the form @code{(STRING1 Symbol1 STRING2 Symbol2
STRING3 Symbol3 STRING4)}. The symbols here must be atoms of the form STRING3 Symbol3 STRING4)}. The symbols here must be atoms of the form
@code{A}, @code{B}, or @code{Ancestor}. They determine the order in which @code{A}, @code{B}, or @code{Ancestor}. They determine the order in which
the corresponding difference regions (from buffers A, B, and the ancestor the corresponding difference regions (from buffers A, B, and the ancestor
buffer) are displayed in the merged region of buffer C@. The strings in the buffer) are displayed in the merged region of buffer C@. The strings in the
template determine the text that separates the aforesaid regions. The template determine the text that separates the aforesaid regions. The
default template is default template is
@smallexample @smallexample
@ -2014,8 +2014,8 @@ default template is
@noindent @noindent
(this is one long line) and the corresponding combined region is shown (this is one long line) and the corresponding combined region is shown
above. The order in which the regions are shown (and the separator above. The order in which the regions are shown (and the separator
strings) can be changed by changing the above template. It is even strings) can be changed by changing the above template. It is even
possible to add or delete region specifiers in this template (although possible to add or delete region specifiers in this template (although
the only possibly useful such modification seems to be the deletion of the only possibly useful such modification seems to be the deletion of
the ancestor). the ancestor).
@ -2154,7 +2154,7 @@ change this variable.
@vindex ediff-merge-filename-prefix @vindex ediff-merge-filename-prefix
When merge buffers are saved automatically as directed by When merge buffers are saved automatically as directed by
@code{ediff-autostore-merges}, Ediff attaches a prefix to each file, as @code{ediff-autostore-merges}, Ediff attaches a prefix to each file, as
specified by the variable @code{ediff-merge-filename-prefix}. The default specified by the variable @code{ediff-merge-filename-prefix}. The default
is @code{merge_}, but this can be changed by the user. is @code{merge_}, but this can be changed by the user.
@node Support for Version Control @node Support for Version Control
@ -2318,9 +2318,9 @@ unconditionally (e.g., by making @code{ediff-janitor} into one of these hooks).
@item ediff-keep-tmp-versions @item ediff-keep-tmp-versions
@vindex ediff-keep-tmp-versions @vindex ediff-keep-tmp-versions
Default is @code{nil}. If @code{t}, the versions of the files being Default is @code{nil}. If @code{t}, the versions of the files being
compared or merged using operations such as @code{ediff-revision} or compared or merged using operations such as @code{ediff-revision} or
@code{ediff-merge-revisions} are not deleted on exit. The normal action is @code{ediff-merge-revisions} are not deleted on exit. The normal action is
to clean up and delete these version files. to clean up and delete these version files.
@item ediff-grab-mouse @item ediff-grab-mouse

View File

@ -773,7 +773,7 @@ corrupted while unpacking and Emacs will not start.
If it is still not working, send mail to the If it is still not working, send mail to the
@email{help-gnu-emacs@@gnu.org} mailing list, describing what you've @email{help-gnu-emacs@@gnu.org} mailing list, describing what you've
done, and what you are seeing. (The more information you send the more done, and what you are seeing. (The more information you send the more
likely it is that you'll receive a helpful response.) likely it is that you'll receive a helpful response.)
@node Virus @node Virus
@ -1592,7 +1592,7 @@ smtpmail is loaded, then you'll need to change
@code{smtpmail-smtp-server}. @code{smtpmail-smtp-server}.
If you are experiencing problems with sending large messages, check If you are experiencing problems with sending large messages, check
the value of the variable @code{smtpmail-debug-info}. If it is the value of the variable @code{smtpmail-debug-info}. If it is
non-@code{nil}, you should set it to @code{nil}: non-@code{nil}, you should set it to @code{nil}:
@node Incoming mail with Rmail @node Incoming mail with Rmail
@ -1908,9 +1908,9 @@ See the following two URLs for details:
@cindex MSVC++, compiling within Emacs @cindex MSVC++, compiling within Emacs
@findex compile @findex compile
This is an app note on how to use Microsoft Visual C++ with Emacs. The This is an app note on how to use Microsoft Visual C++ with Emacs. The
experiments done below were done with Emacs 19.34.1 on Windows 95, experiments done below were done with Emacs 19.34.1 on Windows 95,
using Visual C++ 4.0 Standard Edition. Your mileage may vary. using Visual C++ 4.0 Standard Edition. Your mileage may vary.
This writeup assumes minimal knowledge of Emacs hacking on the part of This writeup assumes minimal knowledge of Emacs hacking on the part of
the reader. the reader.
@ -1939,14 +1939,14 @@ For all versions of Windows you can alternatively set the variables
just inside Emacs by using @code{setenv} calls in your init file. just inside Emacs by using @code{setenv} calls in your init file.
@xref{Installing Emacs,,Where do I put my init file?}. @xref{Installing Emacs,,Where do I put my init file?}.
You should now be able to compile from Emacs. Load a source file from You should now be able to compile from Emacs. Load a source file from
a VC++ project. Type @kbd{M-x compile}. Replace the proposed command line a VC++ project. Type @kbd{M-x compile}. Replace the proposed command line
with: with:
@example @example
nmake -f @var{ProjectName}.mak nmake -f @var{ProjectName}.mak
@end example @end example
You will find that this defaults to a debug build. You can change it You will find that this defaults to a debug build. You can change it
to a release build with: to a release build with:
@example @example
nmake -f @var{ProjectName}.mak CFG="@var{ProjectName} - Win32 Release" nmake -f @var{ProjectName}.mak CFG="@var{ProjectName} - Win32 Release"
@ -2018,21 +2018,21 @@ click on @code{Customize...}. In the @code{Tools} tab, click on
@file{emacsclientw.exe} file in your Emacs bin directory, and @file{emacsclientw.exe} file in your Emacs bin directory, and
select it. For arguments, use @option{+$(CurLine)} select it. For arguments, use @option{+$(CurLine)}
@option{"$(FilePath)"} and for the directory use the @code{$(WkspDir)} @option{"$(FilePath)"} and for the directory use the @code{$(WkspDir)}
(the quotes around FilePath handle paths with spaces in them). Set the (the quotes around FilePath handle paths with spaces in them). Set the
Menu Text to say "Em&acs". The @option{+$(CurLine)} will set point in Menu Text to say "Em&acs". The @option{+$(CurLine)} will set point in
Emacs to the same line as the cursor position in VC++. The ampersand Emacs to the same line as the cursor position in VC++. The ampersand
in the word @code{Em&acs} allows you to select emacs from the keyboard. in the word @code{Em&acs} allows you to select emacs from the keyboard.
(E is already used for the OLE control test container.) (E is already used for the OLE control test container.)
You should now be able to go to any source file in your project. Then, You should now be able to go to any source file in your project. Then,
use the pull-down menu @code{Tools->Emacs}. The active file in your use the pull-down menu @code{Tools->Emacs}. The active file in your
VC++ IDE should now be front and center in Emacs, all ready to edit as VC++ IDE should now be front and center in Emacs, all ready to edit as
you wish. If you use keystrokes to work the menus, try @kbd{Alt-T A} to you wish. If you use keystrokes to work the menus, try @kbd{Alt-T A} to
move the file into Emacs. Binding this tool to a keystroke will be move the file into Emacs. Binding this tool to a keystroke will be
left as an exercise for the student. left as an exercise for the student.
If you have the option of saving files before running tools, make sure If you have the option of saving files before running tools, make sure
this option is set. (I don't see it on VC++ 4.0.) this option is set. (I don't see it on VC++ 4.0.)
@node Borland C++ Builder @node Borland C++ Builder
@section Emacs and Borland C++ Builder @section Emacs and Borland C++ Builder
@ -2072,8 +2072,8 @@ Free native Windows binaries. For those that don't Cygwin may be an option.
From Jay Rogers: From Jay Rogers:
Some versions of the perl debugger itself need to be patched to work Some versions of the perl debugger itself need to be patched to work
with emacs. They are perl versions 5.001 and less, and version with emacs. They are perl versions 5.001 and less, and version
5.004_01. To fix, locate and change the code similar to the following 5.004_01. To fix, locate and change the code similar to the following
code in lib/perl5db.pl code in lib/perl5db.pl
@example @example
if (-e "/dev/tty") @{ if (-e "/dev/tty") @{
@ -2273,7 +2273,7 @@ If you have general questions about Emacs, the best places to start
looking are @ref{Top,,, emacs, The GNU Emacs Manual}, and looking are @ref{Top,,, emacs, The GNU Emacs Manual}, and
@ref{Top,,, efaq, the standard Emacs FAQ}. @ref{Top,,, efaq, the standard Emacs FAQ}.
In Emacs, you can browse the manual using Info by typing @kbd{C-h r}, In Emacs, you can browse the manual using Info by typing @kbd{C-h r},
and you can view the FAQ by typing @kbd{C-h C-f}. Other resources include: and you can view the FAQ by typing @kbd{C-h C-f}. Other resources include:
@itemize @itemize
@item @uref{https://www.gnu.org/software/emacs/, The Emacs website} @item @uref{https://www.gnu.org/software/emacs/, The Emacs website}

View File

@ -3693,7 +3693,7 @@ feature.
Emacs has a list of local variables that are known to be safe to set. Emacs has a list of local variables that are known to be safe to set.
If a file tries to set any variable outside this list, it asks the If a file tries to set any variable outside this list, it asks the
user to confirm whether the variables should be set. You can also tell user to confirm whether the variables should be set. You can also tell
Emacs whether to allow the evaluation of Emacs Lisp code found at the Emacs whether to allow the evaluation of Emacs Lisp code found at the
bottom of files by setting the variable @code{enable-local-eval}. bottom of files by setting the variable @code{enable-local-eval}.
@ -3836,7 +3836,7 @@ in the distribution.
To build Emacs from source for MS-DOS, see the instructions in the file To build Emacs from source for MS-DOS, see the instructions in the file
@file{msdos/INSTALL} in the distribution. The DOS port builds and runs @file{msdos/INSTALL} in the distribution. The DOS port builds and runs
on plain DOS, and also on all versions of MS-Windows from version 3.X on plain DOS, and also on all versions of MS-Windows from version 3.X
onwards, including Windows XP and Vista. Pre-built binaries may be onwards, including Windows XP and Vista. Pre-built binaries may be
available at available at
@uref{https://www.delorie.com/pub/djgpp/current/v2gnu/emacs.README} @uref{https://www.delorie.com/pub/djgpp/current/v2gnu/emacs.README}
@ -4762,14 +4762,14 @@ these systems, you should configure @code{movemail} to use @code{flock}.
Ron Isaacson says: When you hit Ron Isaacson says: When you hit
@kbd{r} to reply in Rmail, by default it Ccs all of the original @kbd{r} to reply in Rmail, by default it Ccs all of the original
recipients (everyone on the original @samp{To} and @samp{CC} recipients (everyone on the original @samp{To} and @samp{CC}
lists). With a prefix argument (i.e., typing @kbd{C-u} before @kbd{r}), lists). With a prefix argument (i.e., typing @kbd{C-u} before @kbd{r}),
it replies only to the sender. However, going through the whole it replies only to the sender. However, going through the whole
@kbd{C-u} business every time you want to reply is a pain. This is the @kbd{C-u} business every time you want to reply is a pain. This is the
best fix I've been able to come up with: best fix I've been able to come up with:
@lisp @lisp
(defun rmail-reply-t () (defun rmail-reply-t ()
"Reply only to the sender of the current message. (See rmail-reply.)" "Reply only to the sender of the current message. (See rmail-reply.)"
(interactive) (interactive)
(rmail-reply t)) (rmail-reply t))

View File

@ -1313,7 +1313,7 @@ based on compile-time information.
The language server reports the regions by periodically sending a The language server reports the regions by periodically sending a
@code{textDocument/inactiveRegions} notification for each managed @code{textDocument/inactiveRegions} notification for each managed
buffer (@pxref{Eglot and Buffers}). Normally, unknown server buffer (@pxref{Eglot and Buffers}). Normally, unknown server
notifications are ignored by Eglot, but we're going change that. notifications are ignored by Eglot, but we're going change that.
Both the announcement of the client capability and the handling of the Both the announcement of the client capability and the handling of the
@ -1353,7 +1353,7 @@ called @code{eglot-clangd}, so that the method would be simplified:
However, this would require that users tweak However, this would require that users tweak
@code{eglot-server-program} to tell Eglot instantiate such sub-classes @code{eglot-server-program} to tell Eglot instantiate such sub-classes
instead of the generic @code{eglot-lsp-server} (@pxref{Setting Up LSP instead of the generic @code{eglot-lsp-server} (@pxref{Setting Up LSP
Servers}). For the purposes of this particular demonstration, we're Servers}). For the purposes of this particular demonstration, we're
going to use the more hacky regexp route which doesn't require that. going to use the more hacky regexp route which doesn't require that.
Note, however, that detecting server versions before announcing new Note, however, that detecting server versions before announcing new

View File

@ -379,7 +379,7 @@ This variable is @code{resize} by default, which means that images
that are bigger than the Emacs window are resized so that they fit. that are bigger than the Emacs window are resized so that they fit.
If you set this to @code{nil}, large images are not displayed in If you set this to @code{nil}, large images are not displayed in
Emacs, but can instead be displayed externally (e.g., with Emacs, but can instead be displayed externally (e.g., with
@samp{ImageMagick} or @samp{xv}). Setting this variable to @code{t} @samp{ImageMagick} or @samp{xv}). Setting this variable to @code{t}
disables this check and makes the library display all inline images as disables this check and makes the library display all inline images as
inline, regardless of their size. inline, regardless of their size.

View File

@ -203,11 +203,11 @@ different Emacs versions.
@cindex interactive testing @cindex interactive testing
@findex ert @findex ert
You can run the tests that are currently defined in your Emacs with You can run the tests that are currently defined in your Emacs with the
the command @kbd{M-x ert @key{RET} t @key{RET}}. (For an command @kbd{M-x ert @key{RET} t @key{RET}}. (For an explanation of the
explanation of the @code{t} argument, @pxref{Test Selectors}.) ERT will pop @code{t} argument, @pxref{Test Selectors}.) ERT will pop up a new
up a new buffer, the ERT results buffer, showing the results of the buffer, the ERT results buffer, showing the results of the tests run.
tests run. It looks like this: It looks like this:
@example @example
Selector: t Selector: t

View File

@ -329,7 +329,7 @@ form} or in @dfn{Lisp form}.
You can use the semicolon (@code{;}) to separate multiple command You can use the semicolon (@code{;}) to separate multiple command
invocations on a single line, executing each in turn. You can also invocations on a single line, executing each in turn. You can also
separate commands with @code{&&} or @code{||}. When using @code{&&}, separate commands with @code{&&} or @code{||}. When using @code{&&},
Eshell will execute the second command only if the first succeeds Eshell will execute the second command only if the first succeeds
(i.e.@: has an exit status of 0); with @code{||}, Eshell will execute (i.e.@: has an exit status of 0); with @code{||}, Eshell will execute
the second command only if the first fails. the second command only if the first fails.
@ -1977,7 +1977,7 @@ Matches one or more copies of the glob pattern @var{x}. Thus,
etc. etc.
@item @var{x}~@var{y} @item @var{x}~@var{y}
Matches anything that matches the pattern @var{x} but not @var{y}. For Matches anything that matches the pattern @var{x} but not @var{y}. For
example, @samp{[[:digit:]]#~4?} matches @file{1} and @file{12}, but example, @samp{[[:digit:]]#~4?} matches @file{1} and @file{12}, but
not @file{42}. Note that unlike in Zsh, only a single @samp{~} not @file{42}. Note that unlike in Zsh, only a single @samp{~}
operator can be used in a pattern, and it cannot be inside of a group operator can be used in a pattern, and it cannot be inside of a group
@ -2398,9 +2398,9 @@ Adds the text passed to it to the clipboard.
@findex eshell-close-target @findex eshell-close-target
You can, of course, define your own virtual targets. These are entries You can, of course, define your own virtual targets. These are entries
in @code{eshell-virtual-targets} with the form @samp{(@var{filename} in @code{eshell-virtual-targets} with the form @samp{(@var{filename}
@var{output-function} @var{pass-mode})}. The first element, @var{output-function} @var{pass-mode})}. The first element,
@var{filename}, is the device name, usually of the form @var{filename}, is the device name, usually of the form
@samp{"/dev/@var{name}"}. The second, @var{output-function}, should be a @samp{"/dev/@var{name}"}. The second, @var{output-function}, should be a
function: Eshell will repeatedly call it with the redirected output. function: Eshell will repeatedly call it with the redirected output.
This argument can also be an @code{eshell-generic-target} instance. In This argument can also be an @code{eshell-generic-target} instance. In
this case, Eshell will repeatedly call the generic function this case, Eshell will repeatedly call the generic function
@ -2529,7 +2529,7 @@ for the built-in functions and some common external commands, and you
can define your own for any command. can define your own for any command.
@kindex TAB @kindex TAB
Eshell completion also works for Lisp forms and glob patterns. If the Eshell completion also works for Lisp forms and glob patterns. If the
point is on a Lisp form, then @key{TAB} will behave similarly to point is on a Lisp form, then @key{TAB} will behave similarly to
completion in @code{elisp-mode} and @code{lisp-interaction-mode}. For completion in @code{elisp-mode} and @code{lisp-interaction-mode}. For
glob patterns, the pattern will be removed from the input line, and glob patterns, the pattern will be removed from the input line, and
@ -2967,7 +2967,7 @@ Also a new @command{less} buffer was created with nothing in it@dots{}
If @command{less.exe} is invoked from the Eshell command line, the If @command{less.exe} is invoked from the Eshell command line, the
expected output is written to the buffer. expected output is written to the buffer.
Note that this happens on NT-Emacs 20.6.1 on Windows 2000. The term.el Note that this happens on NT-Emacs 20.6.1 on Windows 2000. The term.el
package and the supplied shell both use the @command{cmdproxy} program package and the supplied shell both use the @command{cmdproxy} program
for running shells. for running shells.

View File

@ -131,7 +131,7 @@ Quoted from RFC 1777:
@quotation @quotation
[LDAP] is designed to provide access to the X.500 Directory while not [LDAP] is designed to provide access to the X.500 Directory while not
incurring the resource requirements of the Directory Access Protocol incurring the resource requirements of the Directory Access Protocol
(DAP). This protocol is specifically targeted at simple management (DAP). This protocol is specifically targeted at simple management
applications and browser applications that provide simple read/write applications and browser applications that provide simple read/write
interactive access to the X.500 Directory, and is intended to be a interactive access to the X.500 Directory, and is intended to be a
complement to the DAP itself. complement to the DAP itself.
@ -564,7 +564,7 @@ to customize in this process.
Before doing any query you will need to set the directory server. You Before doing any query you will need to set the directory server. You
need to specify the name of the host machine running the server software need to specify the name of the host machine running the server software
and the protocol to use. If you do not set the server in any fashion, and the protocol to use. If you do not set the server in any fashion,
EUDC will ask you for one when you make your first query. EUDC will ask you for one when you make your first query.
You can set the server by selecting one from your hotlist of servers You can set the server by selecting one from your hotlist of servers
@ -579,9 +579,9 @@ buffer will be displayed where you can edit the search base and other
parameters for the server. parameters for the server.
@defvar eudc-server @defvar eudc-server
The name or IP address of the remote directory server. A TCP port number The name or IP address of the remote directory server. A TCP port number
may be specified by appending a colon and a number to the name of the may be specified by appending a colon and a number to the name of the
server. You will not need this unless your server runs on a port other server. You will not need this unless your server runs on a port other
than the default (which depends on the protocol). than the default (which depends on the protocol).
If the directory server resides on your own computer (which is the case If the directory server resides on your own computer (which is the case
if you use the BBDB back end) then @samp{localhost} is a reasonable value but if you use the BBDB back end) then @samp{localhost} is a reasonable value but
@ -609,12 +609,12 @@ attributes you want to see, if different from the server defaults.
@defvar eudc-default-return-attributes @defvar eudc-default-return-attributes
A list of the default attributes to extract from directory entries. If A list of the default attributes to extract from directory entries. If
set to the symbol @code{all} then all available attributes are set to the symbol @code{all} then all available attributes are
returned. A value of @code{nil}, the default, means to return the returned. A value of @code{nil}, the default, means to return the
default attributes as configured in the server. default attributes as configured in the server.
@end defvar @end defvar
The server may return several matching records to a query. Some of the The server may return several matching records to a query. Some of the
records may however not contain all the attributes you requested. You can records may however not contain all the attributes you requested. You can
discard those records. discard those records.
@defopt eudc-strict-return-matches @defopt eudc-strict-return-matches
@ -626,32 +626,32 @@ attributes are ignored. Default is @code{t}.
@subsection Duplicate Attributes @subsection Duplicate Attributes
Directory standards may authorize different instances of the same Directory standards may authorize different instances of the same
attribute in a record. For instance the record of a person may contain attribute in a record. For instance the record of a person may contain
several email fields containing different email addresses, in which several email fields containing different email addresses, in which
case EUDC will consider the attribute duplicated. case EUDC will consider the attribute duplicated.
EUDC has several methods to deal with duplicated attributes. The EUDC has several methods to deal with duplicated attributes. The
available methods are: available methods are:
@table @code @table @code
@item list @item list
Makes a list with the different values of the duplicate attribute. The Makes a list with the different values of the duplicate attribute. The
record is returned with only one instance of the attribute with a list record is returned with only one instance of the attribute with a list
of all the different values as a value. This is the default method that of all the different values as a value. This is the default method that
is used to handle duplicate fields for which no other method has been is used to handle duplicate fields for which no other method has been
specified. specified.
@item first @item first
Discards all the duplicate values of the field keeping only the first Discards all the duplicate values of the field keeping only the first
one. one.
@item concat @item concat
Concatenates the different values using a newline as a separator. The Concatenates the different values using a newline as a separator. The
record keeps only one instance of the field the value of which is a record keeps only one instance of the field the value of which is a
single multi-line string. single multi-line string.
@item duplicate @item duplicate
Duplicates the whole record into as many instances as there are different Duplicates the whole record into as many instances as there are different
values for the field. This is the default for the email field. Thus a values for the field. This is the default for the email field. Thus a
record containing 3 different email addresses is duplicated into three record containing 3 different email addresses is duplicated into three
different records each having a single email address. This is different records each having a single email address. This is
particularly useful in combination with @code{select} as the method to particularly useful in combination with @code{select} as the method to
handle multiple matches in inline expansion queries (@pxref{Inline Query handle multiple matches in inline expansion queries (@pxref{Inline Query
Expansion}) because you are presented with the 3 addresses in a Expansion}) because you are presented with the 3 addresses in a
@ -667,7 +667,7 @@ A method to handle entries containing duplicate attributes. This is
either an alist of elements @code{(@var{attr} . @var{method})}, or a symbol either an alist of elements @code{(@var{attr} . @var{method})}, or a symbol
@var{method}. The alist form of the variable associates a method to an @var{method}. The alist form of the variable associates a method to an
individual attribute name; the second form specifies a method applicable individual attribute name; the second form specifies a method applicable
to all attribute names. Available methods are: @code{list}, to all attribute names. Available methods are: @code{list},
@code{first}, @code{concat}, and @code{duplicate} (see above). The default is @code{first}, @code{concat}, and @code{duplicate} (see above). The default is
@code{list}. @code{list}.
@end defvar @end defvar
@ -678,8 +678,8 @@ to all attribute names. Available methods are: @code{list},
@section Query Form @section Query Form
The simplest way to query your directory server is to use the query The simplest way to query your directory server is to use the query
form. You display the query form with the @samp{Query with Form} menu form. You display the query form with the @samp{Query with Form} menu
item or by invoking the command @kbd{M-x eudc-query-form}. The attribute item or by invoking the command @kbd{M-x eudc-query-form}. The attribute
names presented in this form are defined by the names presented in this form are defined by the
@code{eudc-query-form-attributes} variable (unless a non-@code{nil} @code{eudc-query-form-attributes} variable (unless a non-@code{nil}
argument is supplied to @code{eudc-query-form}). argument is supplied to @code{eudc-query-form}).
@ -717,7 +717,7 @@ names for directory attribute names. This variable is ignored if
@defvar eudc-user-attribute-names-alist @defvar eudc-user-attribute-names-alist
This is an alist of user-defined names for the directory attributes used in This is an alist of user-defined names for the directory attributes used in
query/response forms. Prompt strings for attributes that are not in this query/response forms. Prompt strings for attributes that are not in this
alist are derived by splitting the attribute name at underscores and alist are derived by splitting the attribute name at underscores and
capitalizing the individual words. capitalizing the individual words.
@end defvar @end defvar
@ -893,7 +893,7 @@ against the @code{cn} attribute of LDAP servers:
@defvar eudc-inline-expansion-format @defvar eudc-inline-expansion-format
This variable lets you control exactly what is inserted into the This variable lets you control exactly what is inserted into the
buffer upon an inline expansion request. It can be set to @code{nil}, buffer upon an inline expansion request. It can be set to @code{nil},
to a function, or to a list. Default is @code{nil}. to a function, or to a list. Default is @code{nil}.
When the value is a list, the first element is a string passed to When the value is a list, the first element is a string passed to
@ -926,7 +926,7 @@ any of the formats:
Email address specifications, as are generated by inline expansion, Email address specifications, as are generated by inline expansion,
need to comply with RFC 5322 in order to be useful in email need to comply with RFC 5322 in order to be useful in email
messages. When an invalid address specification is present in an email messages. When an invalid address specification is present in an email
message header, the message is likely to be rejected by a receiving message header, the message is likely to be rejected by a receiving
MTA. It is hence recommended to switch old configurations, which use MTA. It is hence recommended to switch old configurations, which use
a list value, to the new @code{nil}, or function value type since it a list value, to the new @code{nil}, or function value type since it

View File

@ -194,7 +194,7 @@ The following statuses are defined:
@item [@var{nerrors} @var{nwarnings} ...] @item [@var{nerrors} @var{nwarnings} ...]
@tab Normal operation. @var{nerrors} and @var{nwarnings} are, respectively, @tab Normal operation. @var{nerrors} and @var{nwarnings} are, respectively,
the total number of errors and warnings found during the last buffer the total number of errors and warnings found during the last buffer
check, for all backends. They may be followed by other totals for check, for all backends. They may be followed by other totals for
other types of diagnostics (@pxref{Flymake error types}). other types of diagnostics (@pxref{Flymake error types}).
@item @code{Wait} @item @code{Wait}

View File

@ -298,9 +298,9 @@ Similar to @code{forms-next-field} but moves backwards.
@item M-x forms-save-buffer @item M-x forms-save-buffer
@kindex C-x C-s @kindex C-x C-s
@itemx C-x C-s @itemx C-x C-s
Forms mode replacement for @code{save-buffer}. When executed in the Forms mode replacement for @code{save-buffer}. When executed in the
forms buffer it will save the contents of the (modified) data buffer forms buffer it will save the contents of the (modified) data buffer
instead. In Forms mode this function will be bound to @kbd{C-x C-s}. instead. In Forms mode this function will be bound to @kbd{C-x C-s}.
@findex forms-print @findex forms-print
@item M-x forms-print @item M-x forms-print
@ -374,10 +374,10 @@ string @code{forms-field-sep}, which is @code{"\t"} (a Tab) by default.
If the format of the data file is not suitable enough you can define the If the format of the data file is not suitable enough you can define the
filter functions @code{forms-read-file-filter} and filter functions @code{forms-read-file-filter} and
@code{forms-write-file-filter}. @code{forms-read-file-filter} is called @code{forms-write-file-filter}. @code{forms-read-file-filter} is called
when the data file is read from disk into the data buffer. It operates when the data file is read from disk into the data buffer. It operates
on the data buffer, ignoring read-only protections. When the data file on the data buffer, ignoring read-only protections. When the data file
is saved to disk @code{forms-write-file-filter} is called to cancel the is saved to disk @code{forms-write-file-filter} is called to cancel the
effects of @code{forms-read-file-filter}. After being saved, effects of @code{forms-read-file-filter}. After being saved,
@code{forms-read-file-filter} is called again to prepare the data buffer @code{forms-read-file-filter} is called again to prepare the data buffer
for further processing. for further processing.
@ -488,7 +488,7 @@ The default value is @code{"\^k"}, the character Control-K@. Example:
@findex forms-read-file-filter @findex forms-read-file-filter
@item forms-read-file-filter @item forms-read-file-filter
This variable holds the name of a function to be called after the data This variable holds the name of a function to be called after the data
file has been read in. This can be used to transform the contents of the file has been read in. This can be used to transform the contents of the
data file into a format more suitable for forms processing. data file into a format more suitable for forms processing.
If it is @code{nil}, no function is called. For example, to maintain a If it is @code{nil}, no function is called. For example, to maintain a
gzipped database: gzipped database:
@ -533,7 +533,7 @@ modified, just before updating the Forms data file. If it is
@findex forms-insert-after @findex forms-insert-after
@item forms-insert-after @item forms-insert-after
If this variable is not @code{nil}, new records are created @emph{after} the If this variable is not @code{nil}, new records are created @emph{after} the
current record. Also, upon visiting a file, the initial position will be current record. Also, upon visiting a file, the initial position will be
at the last record instead of the first one. at the last record instead of the first one.
@findex forms-check-number-of-fields @findex forms-check-number-of-fields
@ -798,8 +798,8 @@ newline in a field, while @code{forms-multi-line} was @code{nil}.
@item Field separator occurs in record - update refused! @item Field separator occurs in record - update refused!
The current record contains the field separator string inside one of the The current record contains the field separator string inside one of the
fields. It can not be written back to the data file, for it would fields. It can not be written back to the data file, for it would
corrupt it. Probably you inserted the field separator string in a field. corrupt it. Probably you inserted the field separator string in a field.
@item Record number @var{xx} out of range 1..@var{yy} @item Record number @var{xx} out of range 1..@var{yy}
A jump was made to non-existing record @var{xx}. @var{yy} denotes the A jump was made to non-existing record @var{xx}. @var{yy} denotes the
@ -813,7 +813,7 @@ An attempt was made to enable edit mode on a file that has been write
protected. protected.
@item Search failed: @var{regexp} @item Search failed: @var{regexp}
The @var{regexp} could not be found in the data file. Forward searching The @var{regexp} could not be found in the data file. Forward searching
is done from the current location until the end of the file, then is done from the current location until the end of the file, then
retrying from the beginning of the file until the current location. retrying from the beginning of the file until the current location.
Backward searching is done from the current location until the beginning Backward searching is done from the current location until the beginning
@ -828,7 +828,7 @@ Forms mode's idea of the number of records has been adjusted to the
number of records actually present in the data file. number of records actually present in the data file.
@item Problem saving buffers? @item Problem saving buffers?
An error occurred while saving the data file buffer. Most likely, Emacs An error occurred while saving the data file buffer. Most likely, Emacs
did ask to confirm deleting the buffer because it had been modified, and did ask to confirm deleting the buffer because it had been modified, and
you said ``no''. you said ``no''.
@end table @end table

View File

@ -115,7 +115,7 @@ development version that became Gnus 5.12.
* FAQ 2-4:: My group buffer becomes a bit crowded, is there a way to * FAQ 2-4:: My group buffer becomes a bit crowded, is there a way to
sort my groups into categories so I can easier browse through sort my groups into categories so I can easier browse through
them? them?
* FAQ 2-5:: How to manually sort the groups in Group buffer? How to * FAQ 2-5:: How to manually sort the groups in Group buffer? How to
sort the groups in a topic? sort the groups in a topic?
@end menu @end menu
@ -146,7 +146,7 @@ what's this?
@subsubheading Answer @subsubheading Answer
You get the message described in the q/a pair above while You get the message described in the q/a pair above while
starting Gnus, right? It's another symptom for the same starting Gnus, right? It's another symptom for the same
problem, so read the answer above. problem, so read the answer above.
@node FAQ 2-3 @node FAQ 2-3
@ -190,7 +190,7 @@ groups nicely indented.
@node FAQ 2-5 @node FAQ 2-5
@subsubheading Question 2.5 @subsubheading Question 2.5
How to manually sort the groups in Group buffer? How to How to manually sort the groups in Group buffer? How to
sort the groups in a topic? sort the groups in a topic?
@subsubheading Answer @subsubheading Answer
@ -583,7 +583,7 @@ each POP3 mail source. @xref{Mail Source Specifiers}, for details on
* FAQ 4-8:: Is there anything I can do to make poorly formatted * FAQ 4-8:: Is there anything I can do to make poorly formatted
mails more readable? mails more readable?
* FAQ 4-9:: Is there a way to automatically ignore posts by specific * FAQ 4-9:: Is there a way to automatically ignore posts by specific
authors or with specific words in the subject? And can I authors or with specific words in the subject? And can I
highlight more interesting ones in some way? highlight more interesting ones in some way?
* FAQ 4-10:: How can I disable threading in some (e.g., mail-) groups, * FAQ 4-10:: How can I disable threading in some (e.g., mail-) groups,
or set other variables specific for some groups? or set other variables specific for some groups?
@ -593,7 +593,7 @@ each POP3 mail source. @xref{Mail Source Specifiers}, for details on
displays in group buffer is by far to high, especially in mail displays in group buffer is by far to high, especially in mail
groups. Is this a bug? groups. Is this a bug?
* FAQ 4-13:: I don't like the layout of summary and article buffer, * FAQ 4-13:: I don't like the layout of summary and article buffer,
how to change it? Perhaps even a three pane display? how to change it? Perhaps even a three pane display?
* FAQ 4-14:: I don't like the way the Summary buffer looks, how to * FAQ 4-14:: I don't like the way the Summary buffer looks, how to
tweak it? tweak it?
* FAQ 4-15:: How to split incoming mails in several groups? * FAQ 4-15:: How to split incoming mails in several groups?
@ -750,7 +750,7 @@ other deuglifications).
@subsubheading Question 4.9 @subsubheading Question 4.9
Is there a way to automatically ignore posts by specific Is there a way to automatically ignore posts by specific
authors or with specific words in the subject? And can I authors or with specific words in the subject? And can I
highlight more interesting ones in some way? highlight more interesting ones in some way?
@subsubheading Answer @subsubheading Answer
@ -876,7 +876,7 @@ groups again).
@subsubheading Question 4.13 @subsubheading Question 4.13
I don't like the layout of summary and article buffer, how I don't like the layout of summary and article buffer, how
to change it? Perhaps even a three pane display? to change it? Perhaps even a three pane display?
@subsubheading Answer @subsubheading Answer
@ -1056,7 +1056,7 @@ of the variables @code{shr-color-visible-distance-min} and
signature...? signature...?
* FAQ 5-4:: Can I set things like From, Signature etc. group based on * FAQ 5-4:: Can I set things like From, Signature etc. group based on
the group I post too? the group I post too?
* FAQ 5-5:: Is there a spell-checker? Perhaps even on-the-fly * FAQ 5-5:: Is there a spell-checker? Perhaps even on-the-fly
spell-checking? spell-checking?
* FAQ 5-6:: Can I set the dictionary based on the group I'm posting * FAQ 5-6:: Can I set the dictionary based on the group I'm posting
to? to?
@ -1212,7 +1212,7 @@ at the bottom.
@node FAQ 5-5 @node FAQ 5-5
@subsubheading Question 5.5 @subsubheading Question 5.5
Is there a spell-checker? Perhaps even on-the-fly spell-checking? Is there a spell-checker? Perhaps even on-the-fly spell-checking?
@subsubheading Answer @subsubheading Answer
@ -1562,7 +1562,7 @@ gnu.emacs.gnus and want to archive it there are several
solutions. The first and easiest is to save it to a file solutions. The first and easiest is to save it to a file
by saying @kbd{O f}. However, wouldn't by saying @kbd{O f}. However, wouldn't
it be much more convenient to have more direct access to it be much more convenient to have more direct access to
the archived message from Gnus? If you say yes, put this the archived message from Gnus? If you say yes, put this
snippet by Frank Haun <pille3003@@fhaun.de> in snippet by Frank Haun <pille3003@@fhaun.de> in
@file{~/.gnus.el}: @file{~/.gnus.el}:
@ -1584,7 +1584,7 @@ more then one article."
@noindent @noindent
You can now say @kbd{M-x my-archive-article} in summary buffer to You can now say @kbd{M-x my-archive-article} in summary buffer to
archive the article under the cursor in a nnml group. (Change nnml to archive the article under the cursor in a nnml group. (Change nnml to
your preferred back end.) your preferred back end.)
Of course you can also make sure the cache is enabled by saying Of course you can also make sure the cache is enabled by saying
@ -1664,7 +1664,7 @@ follows a slightly different approach, here all article
where the read mark is set are expirable. where the read mark is set are expirable.
To activate auto-expire, include auto-expire in the To activate auto-expire, include auto-expire in the
Group parameters for the group. (Hit @kbd{G Group parameters for the group. (Hit @kbd{G
c} in summary buffer with point over the c} in summary buffer with point over the
group to change group parameters). For total-expire add group to change group parameters). For total-expire add
total-expire to the group-parameters. total-expire to the group-parameters.
@ -1808,7 +1808,7 @@ other possibility is to set, again in the summary
buffer, downloadable (%) marks for the articles you buffer, downloadable (%) marks for the articles you
want by typing @kbd{@@} with point over want by typing @kbd{@@} with point over
the article and then typing @kbd{J u}. the article and then typing @kbd{J u}.
What's the difference? Well, process marks are erased as What's the difference? Well, process marks are erased as
soon as you exit the summary buffer while downloadable soon as you exit the summary buffer while downloadable
marks are permanent. You can actually set downloadable marks are permanent. You can actually set downloadable
marks in several groups then use fetch session ('J s' in marks in several groups then use fetch session ('J s' in

View File

@ -5837,7 +5837,7 @@ Mail a very wide reply to the author of the current article
(@code{gnus-summary-very-wide-reply}). A @dfn{very wide reply} is a (@code{gnus-summary-very-wide-reply}). A @dfn{very wide reply} is a
reply that goes out to all people listed in the @code{To}, @code{From} reply that goes out to all people listed in the @code{To}, @code{From}
(or @code{Reply-To}) and @code{Cc} headers in all the process/prefixed (or @code{Reply-To}) and @code{Cc} headers in all the process/prefixed
articles. This command uses the process/prefix convention. If given a articles. This command uses the process/prefix convention. If given a
prefix argument, the body of the current article will also be yanked. prefix argument, the body of the current article will also be yanked.
@item S V @item S V
@ -7424,7 +7424,7 @@ meaningful. Here's one example:
@end lisp @end lisp
And another example: the protonmail bridge adds fake message-ids to And another example: the protonmail bridge adds fake message-ids to
@code{References} in message headers, which can confuse threading. To @code{References} in message headers, which can confuse threading. To
remove these spurious ids remove these spurious ids
@lisp @lisp
@ -10558,7 +10558,7 @@ course, it'll make group entry somewhat slow.
@vindex gnus-refer-thread-use-search @vindex gnus-refer-thread-use-search
If @code{gnus-refer-thread-use-search} is @code{nil} (the default) If @code{gnus-refer-thread-use-search} is @code{nil} (the default)
then thread-referral only looks for articles in the current group. If then thread-referral only looks for articles in the current group. If
this variable is @code{t} the server to which the current group this variable is @code{t} the server to which the current group
belongs is searched (provided that searching is available for the belongs is searched (provided that searching is available for the
server's backend). If this variable is a list of servers, each server server's backend). If this variable is a list of servers, each server
@ -14706,7 +14706,7 @@ Here's a complete example @code{nnimap} backend with a client-side
If you're using Google's Gmail, you may want to see your Gmail labels If you're using Google's Gmail, you may want to see your Gmail labels
when reading your mail. Gnus can give you this information if you ask when reading your mail. Gnus can give you this information if you ask
for @samp{X-GM-LABELS} in the variable @code{gnus-extra-headers}. For for @samp{X-GM-LABELS} in the variable @code{gnus-extra-headers}. For
example: example:
@example @example
@ -15387,7 +15387,7 @@ corresponding keywords.
@item :mailbox @item :mailbox
The name of the mailbox to get mail from. The default is @samp{INBOX} The name of the mailbox to get mail from. The default is @samp{INBOX}
which normally is the mailbox which receives incoming mail. Instead of which normally is the mailbox which receives incoming mail. Instead of
a single mailbox, this can be a list of mailboxes to fetch mail from. a single mailbox, this can be a list of mailboxes to fetch mail from.
@item :predicate @item :predicate
@ -20602,7 +20602,7 @@ key will lead to creation of @file{ADAPT} files.)
@cindex score file atoms @cindex score file atoms
@item score-fn @item score-fn
The value of this entry should be one or more user-defined function The value of this entry should be one or more user-defined function
names in parentheses. Each function will be called in order and the names in parentheses. Each function will be called in order and the
returned value is required to be an integer. returned value is required to be an integer.
@example @example
@ -22355,7 +22355,7 @@ calling @code{nnmairix-search} with @samp{f:From}.
@item G G o @item G G o
@kindex G G o @r{(Summary)} @kindex G G o @r{(Summary)}
@findex nnmairix-goto-original-article @findex nnmairix-goto-original-article
(Only in @code{nnmairix} groups!) Tries determine the group this article (Only in @code{nnmairix} groups!) Tries determine the group this article
originally came from and displays the article in this group, so that, originally came from and displays the article in this group, so that,
e.g., replying to this article the correct posting styles/group e.g., replying to this article the correct posting styles/group
parameters are applied (@code{nnmairix-goto-original-article}). This parameters are applied (@code{nnmairix-goto-original-article}). This
@ -26641,13 +26641,13 @@ data across multiple machines.
Very often, you want all your marks (what articles you've read, which Very often, you want all your marks (what articles you've read, which
ones were important, and so on) to be synchronized between several ones were important, and so on) to be synchronized between several
machines. With IMAP, that's built into the protocol, so you can read machines. With IMAP, that's built into the protocol, so you can read
nnimap groups from many machines and they are automatically nnimap groups from many machines and they are automatically
synchronized. But NNTP, nnrss, and many other backends do not store synchronized. But NNTP, nnrss, and many other backends do not store
marks, so you have to do it locally. marks, so you have to do it locally.
The Gnus Cloud package stores the marks, plus any files you choose, on The Gnus Cloud package stores the marks, plus any files you choose, on
an IMAP server in a special folder. It's like a an IMAP server in a special folder. It's like a
DropTorrentSyncBoxOakTree(TM).@footnote{The name ``Gnus Cloud'' DropTorrentSyncBoxOakTree(TM).@footnote{The name ``Gnus Cloud''
parodizes but otherwise has little to do with ``cloud computing'', a parodizes but otherwise has little to do with ``cloud computing'', a
@url{https://www.gnu.org/philosophy/words-to-avoid.html#CloudComputing, @url{https://www.gnu.org/philosophy/words-to-avoid.html#CloudComputing,
@ -26661,17 +26661,17 @@ misleading term normally best avoided}.}
@node Gnus Cloud Setup @node Gnus Cloud Setup
@subsection Gnus Cloud Setup @subsection Gnus Cloud Setup
Setting up the Gnus Cloud takes less than a minute. From the Group Setting up the Gnus Cloud takes less than a minute. From the Group
buffer: buffer:
Press @kbd{^} to go to the Server buffer. Here you'll see all the Press @kbd{^} to go to the Server buffer. Here you'll see all the
servers that Gnus knows. @xref{Server Buffer}. servers that Gnus knows. @xref{Server Buffer}.
Then press @kbd{i} to mark any servers as cloud-synchronized (their marks are synchronized). Then press @kbd{i} to mark any servers as cloud-synchronized (their marks are synchronized).
Then press @kbd{I} to mark a single server as the cloud host (it must Then press @kbd{I} to mark a single server as the cloud host (it must
be an IMAP server, and will host a special IMAP folder with all the be an IMAP server, and will host a special IMAP folder with all the
synchronization data). This will set the variable synchronization data). This will set the variable
@code{gnus-cloud-method} (using the Customize facilities), then ask @code{gnus-cloud-method} (using the Customize facilities), then ask
you to optionally upload your first CloudSynchronizationDataPack(TM). you to optionally upload your first CloudSynchronizationDataPack(TM).
@ -26691,37 +26691,37 @@ Download the latest Gnus Cloud data.
@item ~ ~ @item ~ ~
@findex gnus-cloud-upload-all-data @findex gnus-cloud-upload-all-data
@cindex cloud, download @cindex cloud, download
Upload the local Gnus Cloud data. Creates a new Upload the local Gnus Cloud data. Creates a new
CloudSynchronizationDataPack(TM). CloudSynchronizationDataPack(TM).
@end table @end table
But wait, there's more. Of course there's more. So much more. You can But wait, there's more. Of course there's more. So much more. You can
customize all of the following. customize all of the following.
@defvar gnus-cloud-synced-files @defvar gnus-cloud-synced-files
These are the files that will be part of every These are the files that will be part of every
CloudSynchronizationDataPack(TM). They are included in every upload, CloudSynchronizationDataPack(TM). They are included in every upload,
so don't synchronize a lot of large files. Files under 100Kb are best. so don't synchronize a lot of large files. Files under 100Kb are best.
@end defvar @end defvar
@defvar gnus-cloud-storage-method @defvar gnus-cloud-storage-method
This is a choice from several storage methods. It's highly recommended This is a choice from several storage methods. It's highly recommended
to use the EPG facilities. It will be automatic if have GnuPG to use the EPG facilities. It will be automatic if have GnuPG
installed and EPG loaded. Otherwise, you could use Base64+gzip, installed and EPG loaded. Otherwise, you could use Base64+gzip,
Base64, or no encoding. Base64, or no encoding.
@end defvar @end defvar
@defvar gnus-cloud-interactive @defvar gnus-cloud-interactive
When this is set, and by default it is, the Gnus Cloud package will When this is set, and by default it is, the Gnus Cloud package will
ask you for confirmation here and there. Leave it on until you're ask you for confirmation here and there. Leave it on until you're
comfortable with the package. comfortable with the package.
@end defvar @end defvar
@defvar gnus-cloud-method @defvar gnus-cloud-method
The name of the IMAP server to store the The name of the IMAP server to store the
CloudSynchronizationDataPack(TM)s. It's easiest to set this from the CloudSynchronizationDataPack(TM)s. It's easiest to set this from the
Server buffer (@pxref{Gnus Cloud Setup}). Server buffer (@pxref{Gnus Cloud Setup}).
@end defvar @end defvar

View File

@ -1167,7 +1167,7 @@ An assoc of @code{(point . @var{face-symbol})} or
. end)} elements, in descending order of point value (i.e., from the . end)} elements, in descending order of point value (i.e., from the
file's end to its beginning). The map is in reverse order because file's end to its beginning). The map is in reverse order because
inserting a @samp{<style>} tag (or any other string) at @var{point} inserting a @samp{<style>} tag (or any other string) at @var{point}
invalidates the map for all entries with a greater value of point. By invalidates the map for all entries with a greater value of point. By
traversing the map from greatest to least @var{point}, we still traversing the map from greatest to least @var{point}, we still
invalidate the map as we go, but only those points we have already invalidate the map as we go, but only those points we have already
dealt with (and therefore no longer care about) will be invalid at any dealt with (and therefore no longer care about) will be invalid at any

View File

@ -189,7 +189,7 @@ IDLWAVE consists of two main parts: a major mode for editing IDL
source files (@code{idlwave-mode}) and a mode for running the IDL source files (@code{idlwave-mode}) and a mode for running the IDL
program as an inferior shell (@code{idlwave-shell-mode}). Although program as an inferior shell (@code{idlwave-shell-mode}). Although
one mode can be used without the other, both work together closely to one mode can be used without the other, both work together closely to
form a complete development environment. Here is a brief summary of form a complete development environment. Here is a brief summary of
what IDLWAVE does: what IDLWAVE does:
@itemize @bullet @itemize @bullet
@ -504,7 +504,7 @@ keywords again? Go back to the source window and put the cursor into
the ``plot'' line and press @kbd{C-c ?}. This shows the routine info the ``plot'' line and press @kbd{C-c ?}. This shows the routine info
window for the plot routine, which contains a list of keywords, along window for the plot routine, which contains a list of keywords, along
with the argument list. Oh, we wanted @code{YTITLE}. Fix that up. with the argument list. Oh, we wanted @code{YTITLE}. Fix that up.
Recompile with @kbd{C-c C-d C-c}. Jump back into the shell with Recompile with @kbd{C-c C-d C-c}. Jump back into the shell with
@kbd{C-c C-s}, press the @key{UP} arrow to recall the previous command @kbd{C-c C-s}, press the @key{UP} arrow to recall the previous command
and execute again. and execute again.
@ -566,7 +566,7 @@ directory---but do not be dismayed; for the most part, you can just
copy and work from the examples given here. copy and work from the examples given here.
Let's first use a boolean variable. These are variables which you turn Let's first use a boolean variable. These are variables which you turn
on or off, much like a checkbox. A value of @samp{t} means on, a value on or off, much like a checkbox. A value of @samp{t} means on, a value
of @samp{nil} means off. Copy the following line into your of @samp{nil} means off. Copy the following line into your
@file{.emacs} file, exit and restart Emacs. @file{.emacs} file, exit and restart Emacs.
@ -604,7 +604,7 @@ If you cannot seem to master this Lisp customization in @file{.emacs},
there is another, more user-friendly way to customize all the IDLWAVE there is another, more user-friendly way to customize all the IDLWAVE
variables. You can access it through the IDLWAVE menu in one of the variables. You can access it through the IDLWAVE menu in one of the
@file{.pro} buffers, menu item @code{Customize->Browse IDLWAVE @file{.pro} buffers, menu item @code{Customize->Browse IDLWAVE
Group}. Here you'll be presented with all the various variables grouped Group}. Here you'll be presented with all the various variables grouped
into categories. You can navigate the hierarchy (e.g., @samp{IDLWAVE into categories. You can navigate the hierarchy (e.g., @samp{IDLWAVE
Code Formatting->Idlwave Abbrev And Indent Action->Idlwave Expand Code Formatting->Idlwave Abbrev And Indent Action->Idlwave Expand
Generic End} to turn on @code{END} expansion), read about the variables, Generic End} to turn on @code{END} expansion), read about the variables,
@ -1899,7 +1899,7 @@ commands. Emacs abbreviations are expanded by typing text into the
buffer and pressing @key{SPC} or @key{RET}. The special abbreviations buffer and pressing @key{SPC} or @key{RET}. The special abbreviations
used to insert code templates all start with a @samp{\} (the backslash), used to insert code templates all start with a @samp{\} (the backslash),
or, optionally, any other character set in or, optionally, any other character set in
@code{idlwave-abbrev-start-char}. IDLWAVE ensures that abbreviations are @code{idlwave-abbrev-start-char}. IDLWAVE ensures that abbreviations are
only expanded where they should be (i.e., not in a string or comment), only expanded where they should be (i.e., not in a string or comment),
and permits the point to be moved after an abbreviation expansion: and permits the point to be moved after an abbreviation expansion:
very useful for positioning the mark inside of parentheses, etc. very useful for positioning the mark inside of parentheses, etc.
@ -2659,7 +2659,7 @@ setting and clearing commands, and @code{debug} for other debug,
stepping, and continue commands. In addition, if the variable is set to stepping, and continue commands. In addition, if the variable is set to
the single symbol @code{'everything}, all the copious shell input is the single symbol @code{'everything}, all the copious shell input is
displayed (which is probably only useful for debugging purposes). displayed (which is probably only useful for debugging purposes).
N.B. For hidden commands which produce output by side-effect, that N.B. For hidden commands which produce output by side-effect, that
output remains hidden (e.g., stepping through a @code{print} command). output remains hidden (e.g., stepping through a @code{print} command).
As a special case, any error message in the output will be displayed As a special case, any error message in the output will be displayed
(e.g., stepping to an error). (e.g., stepping to an error).
@ -3429,7 +3429,7 @@ the file @file{idlw-rinfo.el}.
IDLWAVE @emph{scans} all its @emph{buffers} in the current Emacs session IDLWAVE @emph{scans} all its @emph{buffers} in the current Emacs session
for routine definitions. This is done automatically when routine for routine definitions. This is done automatically when routine
information or completion is first requested by the user. Each new information or completion is first requested by the user. Each new
buffer and each buffer saved after making changes is also scanned. The buffer and each buffer saved after making changes is also scanned. The
command @kbd{C-c C-i} (@code{idlwave-update-routine-info}) can be used command @kbd{C-c C-i} (@code{idlwave-update-routine-info}) can be used
at any time to rescan all buffers. at any time to rescan all buffers.
@ -3786,7 +3786,7 @@ itself.
There are a wide variety of possible browsers to use for displaying There are a wide variety of possible browsers to use for displaying
the online HTML help available with IDLWAVE (starting with version the online HTML help available with IDLWAVE (starting with version
5.0). Since IDL v6.2, a single cross-platform HTML help browser, the 5.0). Since IDL v6.2, a single cross-platform HTML help browser, the
@emph{IDL Assistant} is distributed with IDL@. If this help browser is @emph{IDL Assistant} is distributed with IDL@. If this help browser is
available, it is the preferred choice, and the default. The variable available, it is the preferred choice, and the default. The variable
@code{idlwave-help-use-assistant}, enabled by default, controls @code{idlwave-help-use-assistant}, enabled by default, controls

View File

@ -473,7 +473,7 @@ depends on the Info reader you use.) This is because @kbd{n} and
level}. The present node is contained in a menu (see next) of the level}. The present node is contained in a menu (see next) of the
node you came from, and hence is considered to be at a lower level. node you came from, and hence is considered to be at a lower level.
It is the only node in the previous node's menu (even though it was It is the only node in the previous node's menu (even though it was
listed three times). Hence it has no next or previous node that listed three times). Hence it has no next or previous node that
@kbd{n} or @kbd{p} could move to. @kbd{n} or @kbd{p} could move to.
If you systematically move through a manual by typing @kbd{n}, you run If you systematically move through a manual by typing @kbd{n}, you run

View File

@ -1338,8 +1338,8 @@ your PGP implementation, so we refer to it.
If you have imported your old PGP 2.x key into GnuPG, and want to send If you have imported your old PGP 2.x key into GnuPG, and want to send
signed and encrypted messages to your fellow PGP 2.x users, you'll signed and encrypted messages to your fellow PGP 2.x users, you'll
discover that the receiver cannot understand what you send. One discover that the receiver cannot understand what you send. One
solution is to use PGP 2.x instead. You could also convince your solution is to use PGP 2.x instead. You could also convince your
fellow PGP 2.x users to convert to GnuPG@. fellow PGP 2.x users to convert to GnuPG@.
@vindex mml-signencrypt-style-alist @vindex mml-signencrypt-style-alist
As a final workaround, you can make the sign and encryption work in As a final workaround, you can make the sign and encryption work in
@ -1687,8 +1687,8 @@ Allegedly.
@item message-default-headers @item message-default-headers
@vindex message-default-headers @vindex message-default-headers
Header lines to be inserted in outgoing messages before you edit the Header lines to be inserted in outgoing messages before you edit the
message, so you can edit or delete their lines. If set to a string, it message, so you can edit or delete their lines. If set to a string, it
is directly inserted. If set to a function, it is called and its is directly inserted. If set to a function, it is called and its
result is inserted. result is inserted.
@item message-subject-re-regexp @item message-subject-re-regexp
@ -2190,7 +2190,7 @@ posting a prepared news message.
@table @code @table @code
@item message-cite-style @item message-cite-style
@vindex message-cite-style @vindex message-cite-style
The overall style to be used when replying to messages. This controls The overall style to be used when replying to messages. This controls
things like where the reply should be put relative to the original, things like where the reply should be put relative to the original,
how the citation is formatted, where the signature goes, etc. how the citation is formatted, where the signature goes, etc.
@ -2198,12 +2198,12 @@ Value is either @code{nil} (no variable overrides) or a let-style list
of pairs @code{(VARIABLE VALUE)} to override default values. of pairs @code{(VARIABLE VALUE)} to override default values.
See @code{gnus-posting-styles} to set this variable for specific See @code{gnus-posting-styles} to set this variable for specific
groups. Presets to impersonate popular mail agents are available in the groups. Presets to impersonate popular mail agents are available in the
@code{message-cite-style-*} variables. @code{message-cite-style-*} variables.
@item message-cite-reply-position @item message-cite-reply-position
@vindex message-cite-reply-position @vindex message-cite-reply-position
Where the reply should be positioned. Available styles are Where the reply should be positioned. Available styles are
@code{traditional} to reply inline, @code{above} for top-posting, and @code{traditional} to reply inline, @code{above} for top-posting, and
@code{below} for bottom-posting @code{below} for bottom-posting

View File

@ -1237,7 +1237,7 @@ and ==*modus-operandi-list-mappings*= for the semantic color mappings.
:END: :END:
The Modus themes provide the means to access the palette of (i) the The Modus themes provide the means to access the palette of (i) the
active theme or (ii) any theme in the Modus collection. These are active theme or (ii) any theme in the Modus collection. These are
useful for Do-It-Yourself customizations ([[#h:f4651d55-8c07-46aa-b52b-bed1e53463bb][Advanced customization]]), useful for Do-It-Yourself customizations ([[#h:f4651d55-8c07-46aa-b52b-bed1e53463bb][Advanced customization]]),
though it can also be helpful in other cases, such as to reuse a color though it can also be helpful in other cases, such as to reuse a color
value in some other application. value in some other application.
@ -1252,8 +1252,8 @@ value in some other application.
#+findex: modus-themes-get-color-value #+findex: modus-themes-get-color-value
The function ~modus-themes-get-color-value~ can be called from Lisp to The function ~modus-themes-get-color-value~ can be called from Lisp to
return the value of a color from the active Modus theme palette. It return the value of a color from the active Modus theme palette. It
takea a =COLOR= argument and an optional =OVERRIDES=. It also accepts takea a =COLOR= argument and an optional =OVERRIDES=. It also accepts
a third =THEME= argument, to get the color from the given theme. a third =THEME= argument, to get the color from the given theme.
=COLOR= is a symbol that represents a named color entry in the =COLOR= is a symbol that represents a named color entry in the
@ -1264,7 +1264,7 @@ mapping), this function recurs until it finds the underlying color
value. value.
With an optional =OVERRIDES= argument as a non-~nil~ value, it With an optional =OVERRIDES= argument as a non-~nil~ value, it
accounts for palette overrides. Else it reads only the default palette accounts for palette overrides. Else it reads only the default palette
([[#h:34c7a691-19bb-4037-8d2f-67a07edab150][Option for palette overrides]]) ([[#h:34c7a691-19bb-4037-8d2f-67a07edab150][Option for palette overrides]])
With an optional =THEME= as a symbol among the ~modus-themes-items~ With an optional =THEME= as a symbol among the ~modus-themes-items~
@ -1309,12 +1309,12 @@ with/without overrides and when recursive mappings are introduced.
#+findex: modus-themes-with-colors #+findex: modus-themes-with-colors
Advanced users may want to apply many colors from the palette of the Advanced users may want to apply many colors from the palette of the
active Modus theme in their custom code. In such a case, retrieving active Modus theme in their custom code. In such a case, retrieving
each value with the function ~modus-themes-get-color-value~ is each value with the function ~modus-themes-get-color-value~ is
inefficient ([[#h:1cc552c1-5f5f-4a56-ae78-7b69e8512c4e][Get a single color from the palette]]). The Lisp macro inefficient ([[#h:1cc552c1-5f5f-4a56-ae78-7b69e8512c4e][Get a single color from the palette]]). The Lisp macro
~modus-themes-with-colors~ provides the requisite functionality. It ~modus-themes-with-colors~ provides the requisite functionality. It
supplies the current theme's palette to the code called from inside of supplies the current theme's palette to the code called from inside of
it. For example: it. For example:
#+begin_src emacs-lisp #+begin_src emacs-lisp
(modus-themes-with-colors (modus-themes-with-colors
@ -1323,9 +1323,9 @@ it. For example:
#+end_src #+end_src
The above return value is for ~modus-operandi~ when that is the active The above return value is for ~modus-operandi~ when that is the active
theme. Switching to another theme and evaluating this code anew will theme. Switching to another theme and evaluating this code anew will
return the relevant results for that theme (remember that since return the relevant results for that theme (remember that since
version 4, the Modus themes consist of many items ([[#h:f0f3dbcb-602d-40cf-b918-8f929c441baf][Overview]])). The version 4, the Modus themes consist of many items ([[#h:f0f3dbcb-602d-40cf-b918-8f929c441baf][Overview]])). The
same with ~modus-vivendi~ as the active theme: same with ~modus-vivendi~ as the active theme:
#+begin_src emacs-lisp #+begin_src emacs-lisp
@ -1340,7 +1340,7 @@ like =blue-warmer= and (ii) semantic color mappings like =warning=.
We provide commands to inspect those ([[#h:f4d4b71b-2ca5-4c3d-b0b4-9bfd7aa7fb4d][Preview theme colors]]). We provide commands to inspect those ([[#h:f4d4b71b-2ca5-4c3d-b0b4-9bfd7aa7fb4d][Preview theme colors]]).
Others sections in this manual show how to use the aforementioned Others sections in this manual show how to use the aforementioned
macro ([[#h:f4651d55-8c07-46aa-b52b-bed1e53463bb][Advanced customization]]). In practice, the use of a hook will macro ([[#h:f4651d55-8c07-46aa-b52b-bed1e53463bb][Advanced customization]]). In practice, the use of a hook will
also be needed ([[#h:d87673fe-2ce1-4c80-a4b8-be36ca9f2d24][DIY Use a hook at the post-load-theme phase]]). also be needed ([[#h:d87673fe-2ce1-4c80-a4b8-be36ca9f2d24][DIY Use a hook at the post-load-theme phase]]).
* Advanced customization * Advanced customization
@ -1355,7 +1355,7 @@ mechanism to control things with precision ([[#h:bf1c82f2-46c7-4eb2-ad00-dd11fdd
This section is of interest only to users who are prepared to maintain This section is of interest only to users who are prepared to maintain
their own local tweaks and who are willing to deal with any possible their own local tweaks and who are willing to deal with any possible
incompatibilities between versioned releases of the themes. As such, incompatibilities between versioned releases of the themes. As such,
they are labeled as "do-it-yourself" or "DIY". they are labeled as "do-it-yourself" or "DIY".
** DIY Palette override presets ** DIY Palette override presets
@ -2076,14 +2076,14 @@ Reload the theme for changes to take effect.
:end: :end:
This is one of our practical examples to override the semantic colors This is one of our practical examples to override the semantic colors
of the Modus themes ([[#h:df1199d8-eaba-47db-805d-6b568a577bf3][Stylistic variants using palette overrides]]). Here of the Modus themes ([[#h:df1199d8-eaba-47db-805d-6b568a577bf3][Stylistic variants using palette overrides]]). Here
we show how to change the presentation of Org blocks (and other such we show how to change the presentation of Org blocks (and other such
blocks like Markdown fenced code sections, though the exact blocks like Markdown fenced code sections, though the exact
presentation depends on each major mode). presentation depends on each major mode).
The default style of Org blocks is a subtle gray background for the The default style of Org blocks is a subtle gray background for the
contents and for the delimiter lines (the =#+begin_= and =#+end_= contents and for the delimiter lines (the =#+begin_= and =#+end_=
parts). The text of the delimiter lines is a subtle gray foreground parts). The text of the delimiter lines is a subtle gray foreground
color. color.
[[#h:bb5b396f-5532-4d52-ab13-149ca24854f1][Make inline code in prose use alternative styles]]. [[#h:bb5b396f-5532-4d52-ab13-149ca24854f1][Make inline code in prose use alternative styles]].
@ -2123,8 +2123,8 @@ color.
#+end_src #+end_src
The previous examples differentiate the delimiter lines from the The previous examples differentiate the delimiter lines from the
block's contents. Though we can mimic the default aesthetic of a block's contents. Though we can mimic the default aesthetic of a
uniform background, while changing the applicable colors. Here are uniform background, while changing the applicable colors. Here are
some nice combinations: some nice combinations:
#+begin_src emacs-lisp #+begin_src emacs-lisp
@ -2152,7 +2152,7 @@ some nice combinations:
Finally, the following makes code blocks have no distinct background. Finally, the following makes code blocks have no distinct background.
The minimal styles are applied to the delimiter lines, which only use The minimal styles are applied to the delimiter lines, which only use
a subtle gray foreground. This was the default for the Modus themes up a subtle gray foreground. This was the default for the Modus themes up
until version 4.3.0. until version 4.3.0.
#+begin_src emacs-lisp #+begin_src emacs-lisp
@ -3280,11 +3280,11 @@ invoke {{{kbd(M-x org-mode-restart)}}}.
In versions of the Modus themes before =4.4.0= there was an option to In versions of the Modus themes before =4.4.0= there was an option to
change the coloration of Org source blocks so that certain languages change the coloration of Org source blocks so that certain languages
would have a distinctly colored background. This was not flexible would have a distinctly colored background. This was not flexible
enough, because (i) we cannot cover all languages effectively and (ii) enough, because (i) we cannot cover all languages effectively and (ii)
the user had no choice over the =language --> color= mapping. the user had no choice over the =language --> color= mapping.
As such, the old user option is no more. Users can use the following As such, the old user option is no more. Users can use the following
to achieve what they want: to achieve what they want:
[ All this is done by setting the Org user option ~org-src-block-faces~, [ All this is done by setting the Org user option ~org-src-block-faces~,
@ -3323,9 +3323,9 @@ to achieve what they want:
[[#h:d87673fe-2ce1-4c80-a4b8-be36ca9f2d24][DIY Use a hook at the post-load-theme phase]]. [[#h:d87673fe-2ce1-4c80-a4b8-be36ca9f2d24][DIY Use a hook at the post-load-theme phase]].
Note that the ~org-src-block-faces~ accepts a named face, as shown Note that the ~org-src-block-faces~ accepts a named face, as shown
above, as well as a list of face attributes. The latter approach is above, as well as a list of face attributes. The latter approach is
not good enough because it hardcodes values in such a way that an not good enough because it hardcodes values in such a way that an
~org-mode-restart~ is necessary. Whereas the indirection of the named ~org-mode-restart~ is necessary. Whereas the indirection of the named
face lets the theme change the values while Org buffers continue to face lets the theme change the values while Org buffers continue to
show the right colors. show the right colors.
@ -3768,7 +3768,7 @@ Reload the theme for changes to take effect.
:END: :END:
Many of the Do-It-Yourself (DIY) snippets provided herein make use of Many of the Do-It-Yourself (DIY) snippets provided herein make use of
a hook to apply the desired changes. In most examples, this hook is a hook to apply the desired changes. In most examples, this hook is
the ~modus-themes-after-load-theme-hook~ (alias ~modus-themes-post-load-hook~). the ~modus-themes-after-load-theme-hook~ (alias ~modus-themes-post-load-hook~).
This hook is provided by the Modus themes and is called at the end of This hook is provided by the Modus themes and is called at the end of
one the following: one the following:
@ -3786,7 +3786,7 @@ one the following:
Users who switch between themes that are not limited to the Modus Users who switch between themes that are not limited to the Modus
collection cannot benefit from the aforementioned hook: it only works collection cannot benefit from the aforementioned hook: it only works
with the Modus themes. A theme-agnostic hook is needed in such a case. with the Modus themes. A theme-agnostic hook is needed in such a case.
Before Emacs 29, this had to be set up manually ([[#h:86f6906b-f090-46cc-9816-1fe8aeb38776][DIY A theme-agnostic hook for theme loading]]). Before Emacs 29, this had to be set up manually ([[#h:86f6906b-f090-46cc-9816-1fe8aeb38776][DIY A theme-agnostic hook for theme loading]]).
Starting with Emacs 29, the special hook ~enable-theme-functions~ Starting with Emacs 29, the special hook ~enable-theme-functions~
works with anything that uses the basic ~enable-theme~ function. works with anything that uses the basic ~enable-theme~ function.
@ -3799,7 +3799,7 @@ the way it is done with every hook:
#+end_src #+end_src
Functions added to ~enable-theme-functions~ accept a single =THEME= Functions added to ~enable-theme-functions~ accept a single =THEME=
argument. The examples shown in this manual use the pattern =(&rest argument. The examples shown in this manual use the pattern =(&rest
_)=, which is how a function accepts one or more arguments but _)=, which is how a function accepts one or more arguments but
declares it will not use them (in plain terms, the code works with or declares it will not use them (in plain terms, the code works with or
without ~enable-theme-functions~). without ~enable-theme-functions~).
@ -3809,7 +3809,7 @@ without ~enable-theme-functions~).
:custom_id: h:86f6906b-f090-46cc-9816-1fe8aeb38776 :custom_id: h:86f6906b-f090-46cc-9816-1fe8aeb38776
:end: :end:
[ NOTE: The following is for versions of Emacs before 29. For Emacs 29 [ NOTE: The following is for versions of Emacs before 29. For Emacs 29
or higher, users can rely on the built-in ~enable-theme-functions~ or higher, users can rely on the built-in ~enable-theme-functions~
([[#h:d87673fe-2ce1-4c80-a4b8-be36ca9f2d24][Using a hook at the post-load-theme phase]]). ] ([[#h:d87673fe-2ce1-4c80-a4b8-be36ca9f2d24][Using a hook at the post-load-theme phase]]). ]

View File

@ -73,12 +73,12 @@ modify this GNU manual.''
Newsticker provides a @b{Feed Reader} for Emacs. It retrieves Newsticker provides a @b{Feed Reader} for Emacs. It retrieves
headlines from a list of news sites, processes them, and provides headlines from a list of news sites, processes them, and provides
frontends for reading and managing them. (Standard headline formats frontends for reading and managing them. (Standard headline formats
are RSS and Atom which makes Newsticker an ``RSS Reader'', ``Atom are RSS and Atom which makes Newsticker an ``RSS Reader'', ``Atom
Reader'' or ``Feed Aggregator''.) Reader'' or ``Feed Aggregator''.)
Headlines (or news items) consist of a title, (mostly) a description, Headlines (or news items) consist of a title, (mostly) a description,
and a link to the full story. The description may be a brief summary and a link to the full story. The description may be a brief summary
in plain text or a full HTML-formatted article. A headline may carry in plain text or a full HTML-formatted article. A headline may carry
enclosed data such as images, audio or video files, typically in the enclosed data such as images, audio or video files, typically in the
case of so ``podcast feeds''. case of so ``podcast feeds''.
@ -95,7 +95,7 @@ customized to your liking.
As Newsticker is part of GNU Emacs there is no need to perform any As Newsticker is part of GNU Emacs there is no need to perform any
installation steps in order to use it. installation steps in order to use it.
Newsticker is highly customizable. All options have reasonable default Newsticker is highly customizable. All options have reasonable default
values, so that (in most cases) it is not necessary to customize values, so that (in most cases) it is not necessary to customize
anything before you start Newsticker for the first time. anything before you start Newsticker for the first time.
@ -186,7 +186,7 @@ it is retrieved a second time.
@chapter Reading News @chapter Reading News
@findex newsticker-show-news @findex newsticker-show-news
Start Newsticker with the command @kbd{M-x newsticker-show-news}. This Start Newsticker with the command @kbd{M-x newsticker-show-news}. This
will start the asynchronous news download and displays all available will start the asynchronous news download and displays all available
headlines. headlines.
@ -224,13 +224,13 @@ subtree. The following commands allow for managing groups.
@item M-a @item M-a
@kindex M-a @kindex M-a
@findex newsticker-group-add-group @findex newsticker-group-add-group
Add a new feed group. Name of the new group and of the parent group Add a new feed group. Name of the new group and of the parent group
must be entered. If The name of the parent group is the new group must be entered. If The name of the parent group is the new group
becomes a top-level group. (@code{newsticker-group-add-group}) becomes a top-level group. (@code{newsticker-group-add-group})
@item M-m @item M-m
@kindex M-m @kindex M-m
@findex newsticker-group-move-feed @findex newsticker-group-move-feed
Moves a feed into a group. The name of the group must be Moves a feed into a group. The name of the group must be
entered. (@code{newsticker-group-move-feed}) entered. (@code{newsticker-group-move-feed})
@end table @end table
@ -269,18 +269,18 @@ The Treeview is updated automatically as soon as new headlines have
arrived. arrived.
The Treeview is used when the variable @code{newsticker-frontend} is The Treeview is used when the variable @code{newsticker-frontend} is
set to the value @code{newsticker-treeview}. (Alternatively it can be set to the value @code{newsticker-treeview}. (Alternatively it can be
started with the command @code{newsticker-treeview}.) started with the command @code{newsticker-treeview}.)
@subheading Plainview @subheading Plainview
@cindex Plainview @cindex Plainview
In this view all headlines of all feeds are displayed in a single In this view all headlines of all feeds are displayed in a single
buffer (@file{*newsticker*}). The modeline in the @file{*newsticker*} buffer (@file{*newsticker*}). The modeline in the @file{*newsticker*}
buffer informs you whenever new headlines have arrived. buffer informs you whenever new headlines have arrived.
You may want to use imenu with Plainview, which allows for navigating You may want to use imenu with Plainview, which allows for navigating
with the help of a menu. In this case add the following to your Emacs with the help of a menu. In this case add the following to your Emacs
startup file (@file{~/.emacs}). startup file (@file{~/.emacs}).
@lisp @lisp
@ -296,7 +296,7 @@ subscribed to a large amount of feeds you may want to give the
Treeview a try.) Treeview a try.)
The Plainview is used when the variable @code{newsticker-frontend} is The Plainview is used when the variable @code{newsticker-frontend} is
set to the value @code{newsticker-plainview}. (Alternatively it can be set to the value @code{newsticker-plainview}. (Alternatively it can be
started with the command @code{newsticker-plainview}.) started with the command @code{newsticker-plainview}.)
@subheading Ticker @subheading Ticker

View File

@ -134,8 +134,8 @@ type @kbd{C-M-i} or @kbd{@key{ESC} @key{TAB}} for completion, or bind
the following, I will assume that you type @kbd{C-M-i}. the following, I will assume that you type @kbd{C-M-i}.
nXML mode completion works by examining the symbol preceding point. nXML mode completion works by examining the symbol preceding point.
This is the symbol to be completed. The symbol to be completed may be This is the symbol to be completed. The symbol to be completed may be
the empty. Completion considers what symbols starting with the symbol the empty. Completion considers what symbols starting with the symbol
to be completed would be valid replacements for the symbol to be to be completed would be valid replacements for the symbol to be
completed, given the schema and the contents of the buffer before completed, given the schema and the contents of the buffer before
point. These symbols are the possible completions. An example may point. These symbols are the possible completions. An example may
@ -182,7 +182,7 @@ happens.
@item @item
If there is one possible completion, then that completion is If there is one possible completion, then that completion is
inserted, together with any following characters that are inserted, together with any following characters that are
required. For example, in this case: required. For example, in this case:
@example @example
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
@ -199,14 +199,14 @@ required. For example, in this case:
@item @item
If there is more than one possible completion, but all If there is more than one possible completion, but all
possible completions share a common non-empty prefix, then that prefix possible completions share a common non-empty prefix, then that prefix
is inserted. For example, suppose the buffer is: is inserted. For example, suppose the buffer is:
@example @example
<html x@point{} <html x@point{}
@end example @end example
@noindent @noindent
The symbol to be completed is @samp{x}. The possible completions are The symbol to be completed is @samp{x}. The possible completions are
@samp{xmlns} and @samp{xml:lang}. These share a common prefix of @samp{xmlns} and @samp{xml:lang}. These share a common prefix of
@samp{xml}. Thus, @kbd{C-M-i} will yield: @samp{xml}. Thus, @kbd{C-M-i} will yield:
@ -255,7 +255,7 @@ If you input @kbd{xmlns}, the result will be:
@noindent @noindent
(If you do @kbd{C-M-i} again, the namespace URI will be (If you do @kbd{C-M-i} again, the namespace URI will be
inserted. Should that happen automatically?) inserted. Should that happen automatically?)
@end itemize @end itemize
@node Inserting end-tags @node Inserting end-tags
@ -269,17 +269,17 @@ You can use @kbd{C-M-i} after @samp{</} to complete the rest of the
end-tag. end-tag.
@kbd{C-c C-f} inserts an end-tag for the element containing @kbd{C-c C-f} inserts an end-tag for the element containing
point. This command is useful when you want to input the start-tag, point. This command is useful when you want to input the start-tag,
then input the content and finally input the end-tag. The @samp{f} then input the content and finally input the end-tag. The @samp{f}
is mnemonic for finish. is mnemonic for finish.
If you want to keep tags balanced and input the end-tag at the If you want to keep tags balanced and input the end-tag at the
same time as the start-tag, before inputting the content, then you can same time as the start-tag, before inputting the content, then you can
use @kbd{C-c C-i}. This inserts a @samp{>}, then inserts use @kbd{C-c C-i}. This inserts a @samp{>}, then inserts
the end-tag and leaves point before the end-tag. @kbd{C-c C-b} the end-tag and leaves point before the end-tag. @kbd{C-c C-b}
is similar but more convenient for block-level elements: it puts the is similar but more convenient for block-level elements: it puts the
start-tag, point and the end-tag on successive lines, appropriately start-tag, point and the end-tag on successive lines, appropriately
indented. The @samp{i} is mnemonic for inline and the indented. The @samp{i} is mnemonic for inline and the
@samp{b} is mnemonic for block. @samp{b} is mnemonic for block.
Finally, you can customize nXML mode so that @kbd{/} automatically Finally, you can customize nXML mode so that @kbd{/} automatically
@ -312,7 +312,7 @@ then those lines will not be included in any paragraph.
A start-tag at the beginning of the line (possibly indented) may A start-tag at the beginning of the line (possibly indented) may
be treated as starting a paragraph. Similarly, an end-tag at the end be treated as starting a paragraph. Similarly, an end-tag at the end
of the line may be treated as ending a paragraph. The following rules of the line may be treated as ending a paragraph. The following rules
are used to determine whether such a tag is in fact treated as a are used to determine whether such a tag is in fact treated as a
paragraph boundary: paragraph boundary:
@ -324,7 +324,7 @@ is a paragraph boundary.
If the end-tag corresponding to the start-tag is not at If the end-tag corresponding to the start-tag is not at
the end of its line, or the start-tag corresponding to the end-tag is the end of its line, or the start-tag corresponding to the end-tag is
not at the beginning of its line, then it is not a paragraph not at the beginning of its line, then it is not a paragraph
boundary. For example, in boundary. For example, in
@example @example
<p>This is a paragraph with an <p>This is a paragraph with an
@ -374,9 +374,9 @@ in a future version.
The variable @code{nxml-section-element-name-regexp} gives The variable @code{nxml-section-element-name-regexp} gives
a regexp for the local names (i.e., the part of the name following any a regexp for the local names (i.e., the part of the name following any
prefix) of section elements. The variable prefix) of section elements. The variable
@code{nxml-heading-element-name-regexp} gives a regexp for the @code{nxml-heading-element-name-regexp} gives a regexp for the
local names of heading elements. For an element to be recognized local names of heading elements. For an element to be recognized
as a section as a section
@itemize @bullet @itemize @bullet
@ -415,7 +415,7 @@ that subsection.
@end itemize @end itemize
In the last two states, where the text content is hidden, the In the last two states, where the text content is hidden, the
heading is displayed specially, in an abbreviated form. An element heading is displayed specially, in an abbreviated form. An element
like this: like this:
@example @example
@ -515,7 +515,7 @@ displayed start-tag toggles the display of subheadings on and
off. off.
The outline state for each section is stored with the first The outline state for each section is stored with the first
character of the section (as a text property). Every command that character of the section (as a text property). Every command that
changes the outline state of any section updates the display of the changes the outline state of any section updates the display of the
buffer so that each section is displayed correctly according to its buffer so that each section is displayed correctly according to its
outline state. If the section structure is subsequently changed, then outline state. If the section structure is subsequently changed, then
@ -536,10 +536,10 @@ should use. The order of the list is significant: when file
@var{x} occurs in the list before file @var{y} then rules @var{x} occurs in the list before file @var{y} then rules
from file @var{x} have precedence over rules from file from file @var{x} have precedence over rules from file
@var{y}. A filename specified in @var{y}. A filename specified in
@samp{rng-schema-locating-files} may be relative. If so, it will @samp{rng-schema-locating-files} may be relative. If so, it will
be resolved relative to the document for which a schema is being be resolved relative to the document for which a schema is being
located. It is not an error if relative file-names in located. It is not an error if relative file-names in
@samp{rng-schema-locating-files} do not exist. You can use @samp{rng-schema-locating-files} do not exist. You can use
@kbd{M-x customize-variable @key{RET} rng-schema-locating-files @kbd{M-x customize-variable @key{RET} rng-schema-locating-files
@key{RET}} to customize the list of schema locating @key{RET}} to customize the list of schema locating
files. files.
@ -548,7 +548,7 @@ By default, @samp{rng-schema-locating-files} list has two
members: @samp{schemas.xml}, and members: @samp{schemas.xml}, and
@samp{@var{dist-dir}/schema/schemas.xml} where @samp{@var{dist-dir}/schema/schemas.xml} where
@samp{@var{dist-dir}} is the directory containing the nXML @samp{@var{dist-dir}} is the directory containing the nXML
distribution. The first member will cause nXML mode to use a file distribution. The first member will cause nXML mode to use a file
@samp{schemas.xml} in the same directory as the document being @samp{schemas.xml} in the same directory as the document being
edited if such a file exist. The second member contains rules for the edited if such a file exist. The second member contains rules for the
schemas that are included with the nXML distribution. schemas that are included with the nXML distribution.
@ -565,7 +565,7 @@ The command @kbd{C-c C-s C-w} will tell you what schema
is currently being used. is currently being used.
The rules for locating a schema are applied automatically when The rules for locating a schema are applied automatically when
you visit a file in nXML mode. However, if you have just created a new you visit a file in nXML mode. However, if you have just created a new
file and the schema cannot be inferred from the file-name, then this file and the schema cannot be inferred from the file-name, then this
will not locate the right schema. In this case, you should insert the will not locate the right schema. In this case, you should insert the
start-tag of the root element and then use the command @kbd{C-c C-s start-tag of the root element and then use the command @kbd{C-c C-s
@ -578,12 +578,12 @@ If you want to use a schema that has not yet been added to the
schema locating files, you can use the command @kbd{C-c C-s C-f} schema locating files, you can use the command @kbd{C-c C-s C-f}
to manually select the file containing the schema for the document in to manually select the file containing the schema for the document in
current buffer. Emacs will read the file-name of the schema from the current buffer. Emacs will read the file-name of the schema from the
minibuffer. After reading the file-name, Emacs will ask whether you minibuffer. After reading the file-name, Emacs will ask whether you
wish to add a rule to a schema locating file that persistently wish to add a rule to a schema locating file that persistently
associates the document with the selected schema. The rule will be associates the document with the selected schema. The rule will be
added to the first file in the list specified added to the first file in the list specified
@samp{rng-schema-locating-files}; it will create the file if @samp{rng-schema-locating-files}; it will create the file if
necessary, but will not create a directory. If the variable necessary, but will not create a directory. If the variable
@samp{rng-schema-locating-files} has not been customized, this @samp{rng-schema-locating-files} has not been customized, this
means that the rule will be added to the file @samp{schemas.xml} means that the rule will be added to the file @samp{schemas.xml}
in the same directory as the document being edited. in the same directory as the document being edited.
@ -591,14 +591,14 @@ in the same directory as the document being edited.
The command @kbd{C-c C-s C-t} allows you to select a schema by The command @kbd{C-c C-s C-t} allows you to select a schema by
specifying an identifier for the type of the document. The schema specifying an identifier for the type of the document. The schema
locating files determine the available type identifiers and what locating files determine the available type identifiers and what
schema is used for each type identifier. This is useful when it is schema is used for each type identifier. This is useful when it is
impossible to infer the right schema from either the file-name or the impossible to infer the right schema from either the file-name or the
content of the document, even though the schema is already in the content of the document, even though the schema is already in the
schema locating file. A situation in which this can occur is when schema locating file. A situation in which this can occur is when
there are multiple variants of a schema where all valid documents have there are multiple variants of a schema where all valid documents have
the same document element. For example, XHTML has Strict and the same document element. For example, XHTML has Strict and
Transitional variants. In a situation like this, a schema locating file Transitional variants. In a situation like this, a schema locating file
can define a type identifier for each variant. As with @kbd{C-c can define a type identifier for each variant. As with @kbd{C-c
C-s C-f}, Emacs will ask whether you wish to add a rule to a schema C-s C-f}, Emacs will ask whether you wish to add a rule to a schema
locating file that persistently associates the document with the locating file that persistently associates the document with the
specified type identifier. specified type identifier.
@ -611,12 +611,12 @@ the schema that is currently being used.
@section Schema locating files @section Schema locating files
Each schema locating file specifies a list of rules. The rules Each schema locating file specifies a list of rules. The rules
from each file are appended in order. To locate a schema each rule is from each file are appended in order. To locate a schema each rule is
applied in turn until a rule matches. The first matching rule is then applied in turn until a rule matches. The first matching rule is then
used to determine the schema. used to determine the schema.
Schema locating files are designed to be useful for other Schema locating files are designed to be useful for other
applications that need to locate a schema for a document. In fact, applications that need to locate a schema for a document. In fact,
there is nothing specific to locating schemas in the design; it could there is nothing specific to locating schemas in the design; it could
equally well be used for locating a stylesheet. equally well be used for locating a stylesheet.
@ -638,7 +638,7 @@ files must be valid with respect to this schema.
The document element of a schema locating file must be The document element of a schema locating file must be
@samp{locatingRules} and the namespace URI must be @samp{locatingRules} and the namespace URI must be
@samp{http://thaiopensource.com/ns/locating-rules/1.0}. The @samp{http://thaiopensource.com/ns/locating-rules/1.0}. The
children of the document element specify rules. The order of the children of the document element specify rules. The order of the
children is the same as the order of the rules. Here's a complete children is the same as the order of the rules. Here's a complete
example of a schema locating file: example of a schema locating file:
@ -665,7 +665,7 @@ As usual with XML-related technologies, resources are identified
by URIs. The @samp{uri} attribute identifies the schema by by URIs. The @samp{uri} attribute identifies the schema by
specifying the URI@. The URI may be relative. If so, it is resolved specifying the URI@. The URI may be relative. If so, it is resolved
relative to the URI of the schema locating file that contains relative to the URI of the schema locating file that contains
attribute. This means that if the value of @samp{uri} attribute attribute. This means that if the value of @samp{uri} attribute
does not contain a @samp{/}, then it will refer to a filename in does not contain a @samp{/}, then it will refer to a filename in
the same directory as the schema locating file. the same directory as the schema locating file.
@ -696,7 +696,7 @@ relative URI in the @samp{resource} attribute is resolved into a
particular absolute URI using the base URI of the schema locating particular absolute URI using the base URI of the schema locating
file, a relative URI pattern matches if it matches some number of file, a relative URI pattern matches if it matches some number of
complete path segments of the document's URI ending with the last path complete path segments of the document's URI ending with the last path
segment of the document's URI@. For example, segment of the document's URI@. For example,
@example @example
<uri pattern="*.xsl" uri="xslt.rnc"/> <uri pattern="*.xsl" uri="xslt.rnc"/>
@ -707,7 +707,7 @@ specifies that the schema for documents with a URI whose path ends
with @samp{.xsl} is @samp{xslt.rnc}. with @samp{.xsl} is @samp{xslt.rnc}.
A @samp{transformURI} rule locates a schema by A @samp{transformURI} rule locates a schema by
transforming the URI of the document. The @samp{fromPattern} transforming the URI of the document. The @samp{fromPattern}
attribute specifies a URI pattern with the same meaning as the attribute specifies a URI pattern with the same meaning as the
@samp{pattern} attribute of the @samp{uri} element. The @samp{pattern} attribute of the @samp{uri} element. The
@samp{toPattern} attribute is a URI pattern that is used to @samp{toPattern} attribute is a URI pattern that is used to
@ -736,7 +736,7 @@ schema.
@subsection Using the document element to locate a schema @subsection Using the document element to locate a schema
A @samp{documentElement} rule locates a schema based on A @samp{documentElement} rule locates a schema based on
the local name and prefix of the document element. For example, a rule the local name and prefix of the document element. For example, a rule
@example @example
<documentElement prefix="xsl" localName="stylesheet" uri="xslt.rnc"/> <documentElement prefix="xsl" localName="stylesheet" uri="xslt.rnc"/>
@ -745,12 +745,12 @@ the local name and prefix of the document element. For example, a rule
@noindent @noindent
specifies that when the name of the document element is specifies that when the name of the document element is
@samp{xsl:stylesheet}, then @samp{xslt.rnc} should be used @samp{xsl:stylesheet}, then @samp{xslt.rnc} should be used
as the schema. Either the @samp{prefix} or as the schema. Either the @samp{prefix} or
@samp{localName} attribute may be omitted to allow any prefix or @samp{localName} attribute may be omitted to allow any prefix or
local name. local name.
A @samp{namespace} rule locates a schema based on the A @samp{namespace} rule locates a schema based on the
namespace URI of the document element. For example, a rule namespace URI of the document element. For example, a rule
@example @example
<namespace ns="http://www.w3.org/1999/XSL/Transform" uri="xslt.rnc"/> <namespace ns="http://www.w3.org/1999/XSL/Transform" uri="xslt.rnc"/>
@ -780,7 +780,7 @@ Each of the rules described in previous sections that uses a
@samp{uri} attribute to specify a schema, can instead use a @samp{uri} attribute to specify a schema, can instead use a
@samp{typeId} attribute to specify a type identifier. The type @samp{typeId} attribute to specify a type identifier. The type
identifier can be associated with a URI using a @samp{typeId} identifier can be associated with a URI using a @samp{typeId}
element. For example, element. For example,
@example @example
<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0"> <locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0">
@ -805,7 +805,7 @@ more flexible than a schema locating file that simply specified
@noindent @noindent
A user can easily use @kbd{C-c C-s C-t} to select between XHTML A user can easily use @kbd{C-c C-s C-t} to select between XHTML
Strict and XHTML Transitional. Also, a user can easily add a catalog Strict and XHTML Transitional. Also, a user can easily add a catalog
@example @example
<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0"> <locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0">
@ -823,7 +823,7 @@ The @samp{include} element includes rules from another
schema locating file. The behavior is exactly as if the rules from schema locating file. The behavior is exactly as if the rules from
that file were included in place of the @samp{include} element. that file were included in place of the @samp{include} element.
Relative URIs are resolved into absolute URIs before the inclusion is Relative URIs are resolved into absolute URIs before the inclusion is
performed. For example, performed. For example,
@example @example
<include rules="../rules.xml"/> <include rules="../rules.xml"/>
@ -875,7 +875,7 @@ nXML mode is designed to support the creation of standalone XML
documents that do not depend on a DTD@. Although it is common practice documents that do not depend on a DTD@. Although it is common practice
to insert a DOCTYPE declaration referencing an external DTD, this has to insert a DOCTYPE declaration referencing an external DTD, this has
undesirable side-effects. It means that the document is no longer undesirable side-effects. It means that the document is no longer
self-contained. It also means that different XML parsers may interpret self-contained. It also means that different XML parsers may interpret
the document in different ways, since the XML Recommendation does not the document in different ways, since the XML Recommendation does not
require XML parsers to read the DTD@. With DTDs, it was impractical to require XML parsers to read the DTD@. With DTDs, it was impractical to
get validation without using an external DTD or reference to an get validation without using an external DTD or reference to an
@ -884,9 +884,9 @@ simultaneously get the benefits of validation and standalone XML
documents. Therefore, I recommend that you do not reference an documents. Therefore, I recommend that you do not reference an
external DOCTYPE in your XML documents. external DOCTYPE in your XML documents.
One problem is entities for characters. Typically, as well as One problem is entities for characters. Typically, as well as
providing validation, DTDs also provide a set of character entities providing validation, DTDs also provide a set of character entities
for documents to use. Schemas cannot provide this functionality, for documents to use. Schemas cannot provide this functionality,
because schema validation happens after XML parsing. The recommended because schema validation happens after XML parsing. The recommended
solution is to either use the Unicode characters directly, or, if this solution is to either use the Unicode characters directly, or, if this
is impractical, use character references. nXML mode supports this by is impractical, use character references. nXML mode supports this by
@ -903,7 +903,7 @@ nXML mode has some limitations:
@item @item
DTD support is limited. Internal parsed general entities declared DTD support is limited. Internal parsed general entities declared
in the internal subset are supported provided they do not contain in the internal subset are supported provided they do not contain
elements. Other usage of DTDs is ignored. elements. Other usage of DTDs is ignored.
@item @item
The restrictions on RELAX NG schemas in section 7 of the RELAX NG The restrictions on RELAX NG schemas in section 7 of the RELAX NG
specification are not enforced. specification are not enforced.

View File

@ -27,7 +27,7 @@ Authoring Org files is best supported by Emacs, but you can view,
understand, and change them with any text editor. understand, and change them with any text editor.
As an authoring tool, Org helps you write structured documents and As an authoring tool, Org helps you write structured documents and
provides exporting facilities. Org files can also be used for literate provides exporting facilities. Org files can also be used for literate
programming and reproducible research. As a TODO lists manager, Org programming and reproducible research. As a TODO lists manager, Org
helps you organize your tasks in a flexible way, from daily needs to helps you organize your tasks in a flexible way, from daily needs to
detailed project-planning, allowing logging, multiple views on your detailed project-planning, allowing logging, multiple views on your
@ -16552,7 +16552,7 @@ BACKEND is the export backend being used, as a symbol."
(lambda () (lambda ()
(delete-region (point) (line-beginning-position 2)) (delete-region (point) (line-beginning-position 2))
;; We need to tell `org-map-entries' to not skip over heading at ;; We need to tell `org-map-entries' to not skip over heading at
;; point. Otherwise, it would continue from _next_ heading. See ;; point. Otherwise, it would continue from _next_ heading. See
;; the docstring of `org-map-entries' for details. ;; the docstring of `org-map-entries' for details.
(setq org-map-continue-from (point))))) (setq org-map-continue-from (point)))))
@ -17661,7 +17661,7 @@ Org currently includes the following export processors:
- bibtex :: this export processor uses BibTeX, the historical - bibtex :: this export processor uses BibTeX, the historical
bibliographic processor used with LaTeX, thus allowing the use of bibliographic processor used with LaTeX, thus allowing the use of
data and style files compatible with this processor (including a data and style files compatible with this processor (including a
large number of publishers' styles). It only supports LaTeX's large number of publishers' styles). It only supports LaTeX's
=\cite= and =\nocite= commands. =\cite= and =\nocite= commands.
- natbib :: as with the bibtex processor, but using the LaTeX - natbib :: as with the bibtex processor, but using the LaTeX
@ -17706,15 +17706,15 @@ your LaTeX installation, it won't export to anything but PDF.
#+vindex: org-cite-biblatex-options #+vindex: org-cite-biblatex-options
#+texinfo: @noindent #+texinfo: @noindent
specifies the =biblatex= export processor with the default =numeric= specifies the =biblatex= export processor with the default =numeric=
style and the =bibtex= backend. Always define the style first and then style and the =bibtex= backend. Always define the style first and then
the rest of load-time options for the =biblatex= the rest of load-time options for the =biblatex=
package. Alternatively, you can use the ~key=val,key=val~ format for package. Alternatively, you can use the ~key=val,key=val~ format for
the options as documented in the =biblatex= package documentation: the options as documented in the =biblatex= package documentation:
: #+cite_export: biblatex backend=bibtex,style=numeric : #+cite_export: biblatex backend=bibtex,style=numeric
The ~org-cite-biblatex-options~ variable in your Emacs configuration The ~org-cite-biblatex-options~ variable in your Emacs configuration
uses this format. It will only export to PDF, since it relies on the uses this format. It will only export to PDF, since it relies on the
~biblatex~ processor of your LaTeX installation. ~biblatex~ processor of your LaTeX installation.
** Bibliography printing ** Bibliography printing
@ -19425,10 +19425,10 @@ the tangled file's executable permission.
The =tangle-mode= header argument specifies what permissions to set The =tangle-mode= header argument specifies what permissions to set
for tangled files by ~set-file-modes~. Permissions are given by an for tangled files by ~set-file-modes~. Permissions are given by an
octal value, which can be provided calling the ~identity~ function on octal value, which can be provided calling the ~identity~ function on
an elisp octal value. For instance, to create a read-only file one may an elisp octal value. For instance, to create a read-only file one may
use =:tangle-mode (identity #o444)=. To reduce the verbosity required, use =:tangle-mode (identity #o444)=. To reduce the verbosity required,
a octal shorthand is defined, =oXXX= (=o= for octal). Using this, our a octal shorthand is defined, =oXXX= (=o= for octal). Using this, our
read-only example is =:tangle-mode o444=. Omitting the =o= prefix will read-only example is =:tangle-mode o444=. Omitting the =o= prefix will
cause the argument to be interpreted as an integer, which can lead to cause the argument to be interpreted as an integer, which can lead to
unexpected results (=444= is the same as =o674=). unexpected results (=444= is the same as =o674=).
Two other shorthands are recognized, ls-style strings like Two other shorthands are recognized, ls-style strings like
@ -19437,7 +19437,7 @@ Note that chmod-style permissions are based on
~org-babel-tangle-default-file-mode~, which is =#o544= by default. ~org-babel-tangle-default-file-mode~, which is =#o544= by default.
When =:tangle-mode= and =:shebang= are both specified, the give When =:tangle-mode= and =:shebang= are both specified, the give
=:tangle-mode= will override the permissions from =:shebang=. When =:tangle-mode= will override the permissions from =:shebang=. When
multiple source code blocks tangle to a single file with conflicting multiple source code blocks tangle to a single file with conflicting
=:tangle-mode= header arguments, Org's behavior is undefined. =:tangle-mode= header arguments, Org's behavior is undefined.

View File

@ -730,7 +730,7 @@ positioned on a directory all files in that directory are marked
(@code{cvs-mode-mark}). (@code{cvs-mode-mark}).
@item u @item u
Unmark the file that the cursor is positioned on. If the cursor is on a Unmark the file that the cursor is positioned on. If the cursor is on a
directory, all files in that directory are unmarked directory, all files in that directory are unmarked
(@code{cvs-mode-unmark}). (@code{cvs-mode-unmark}).

View File

@ -835,7 +835,7 @@ window @code{rcirc} considers is controlled by the
@vindex rcirc-omit-unless-requested @vindex rcirc-omit-unless-requested
Certain messages can be omitted by default, unless the user manual Certain messages can be omitted by default, unless the user manual
requests them. For example, if you don't want to display @code{TOPIC} requests them. For example, if you don't want to display @code{TOPIC}
and @code{NAMES} messages, after reconnecting, you can configure and @code{NAMES} messages, after reconnecting, you can configure
@code{rcirc-omit-unless-requested} to hide: @code{rcirc-omit-unless-requested} to hide:

View File

@ -1371,7 +1371,7 @@ the context.
@end lisp @end lisp
The empty pairs of brackets indicate the different arguments of the The empty pairs of brackets indicate the different arguments of the
@code{\myfig} macro. The @samp{*} marks the label argument. @code{?f} @code{\myfig} macro. The @samp{*} marks the label argument. @code{?f}
indicates that this is a figure label which will be listed together with indicates that this is a figure label which will be listed together with
labels from normal figure environments. The @code{nil} entries for labels from normal figure environments. The @code{nil} entries for
prefix and reference format mean to use the defaults for figure labels. prefix and reference format mean to use the defaults for figure labels.
@ -1748,7 +1748,7 @@ selection process similar to that for selecting labels
(@pxref{Referencing Labels}). (@pxref{Referencing Labels}).
The regular expression uses an extended syntax: @samp{&&} defines a The regular expression uses an extended syntax: @samp{&&} defines a
logic @code{and} for regular expressions. For example logic @code{and} for regular expressions. For example
@samp{Einstein&&Bose} will match all articles which mention @samp{Einstein&&Bose} will match all articles which mention
Bose-Einstein condensation, or which are co-authored by Bose and Bose-Einstein condensation, or which are co-authored by Bose and
Einstein. When entering the regular expression, you can complete on Einstein. When entering the regular expression, you can complete on
@ -2708,7 +2708,7 @@ display.
@item @code{\bibitem} @item @code{\bibitem}
@cindex @code{\bibitem} @cindex @code{\bibitem}
Display a document location which cites this article. Pressing Display a document location which cites this article. Pressing
@kbd{C-c &} several times moves through the entire document and finds @kbd{C-c &} several times moves through the entire document and finds
all locations. all locations.
@ -2955,7 +2955,7 @@ path specified in the variables @code{BIBINPUTS} and @code{TEXBIB} for
When searching, @RefTeX{} will also expand recursive path When searching, @RefTeX{} will also expand recursive path
definitions (directories ending in @samp{//} or @samp{!!}). But it will definitions (directories ending in @samp{//} or @samp{!!}). But it will
only search and expand directories @emph{explicitly} given in these only search and expand directories @emph{explicitly} given in these
variables. This may cause problems under the following circumstances: variables. This may cause problems under the following circumstances:
@itemize @bullet @itemize @bullet
@item @item
@ -3288,7 +3288,7 @@ Labels}).
@findex TeX-add-style-hook@r{, AUCTeX} @findex TeX-add-style-hook@r{, AUCTeX}
Style files are Emacs Lisp files which are evaluated by @AUCTeX{} in Style files are Emacs Lisp files which are evaluated by @AUCTeX{} in
association with the @code{\documentclass} and @code{\usepackage} association with the @code{\documentclass} and @code{\usepackage}
commands of a document (@pxref{Style Files,,,auctex}). Support for commands of a document (@pxref{Style Files,,,auctex}). Support for
@RefTeX{} in such a style file is useful when the @LaTeX{} style @RefTeX{} in such a style file is useful when the @LaTeX{} style
defines macros or environments connected with labels, citations, or the defines macros or environments connected with labels, citations, or the
index. Many style files (e.g., @file{amsmath.el} or @file{natbib.el}) index. Many style files (e.g., @file{amsmath.el} or @file{natbib.el})
@ -4132,7 +4132,7 @@ Prefixes for section labels. When the label prefix given in an entry in
@code{reftex-label-alist} contains @samp{%S}, this list is used to @code{reftex-label-alist} contains @samp{%S}, this list is used to
determine the correct prefix string depending on the current section determine the correct prefix string depending on the current section
level. The list is an alist, with each entry of the form level. The list is an alist, with each entry of the form
@w{@code{(@var{key} . @var{prefix})}}. Possible keys are sectioning macro @w{@code{(@var{key} . @var{prefix})}}. Possible keys are sectioning macro
names like @samp{chapter}, integer section levels (as given in names like @samp{chapter}, integer section levels (as given in
@code{reftex-section-levels}), and @code{t} for the default. @code{reftex-section-levels}), and @code{t} for the default.
@end defopt @end defopt
@ -4298,7 +4298,7 @@ Character class after abbrev point in word.
@cindex Referencing labels, options @cindex Referencing labels, options
@defopt reftex-label-menu-flags @defopt reftex-label-menu-flags
List of flags governing the label menu makeup. The flags are: List of flags governing the label menu makeup. The flags are:
@table @asis @table @asis
@item @var{table-of-contents} @item @var{table-of-contents}
Show the labels embedded in a table of context. Show the labels embedded in a table of context.
@ -4764,7 +4764,7 @@ phrase and its index command will always end up on a single line.
@defopt reftex-index-phrases-sort-prefers-entry @defopt reftex-index-phrases-sort-prefers-entry
Non-@code{nil} means when sorting phrase lines, the explicit index entry Non-@code{nil} means when sorting phrase lines, the explicit index entry
is used. Phrase lines in the phrases buffer contain a search phrase, and is used. Phrase lines in the phrases buffer contain a search phrase, and
sorting is normally based on these. Some phrase lines also have sorting is normally based on these. Some phrase lines also have
an explicit index argument specified. When this variable is an explicit index argument specified. When this variable is
non-@code{nil}, the index argument will be used for sorting. non-@code{nil}, the index argument will be used for sorting.
@ -4993,7 +4993,7 @@ lookup.
@end table @end table
If a buffer is to be kept, the file is visited normally (which is If a buffer is to be kept, the file is visited normally (which is
potentially slow but will happen only once). If a buffer is to be thrown potentially slow but will happen only once). If a buffer is to be thrown
away, the initialization of the buffer depends upon the variable away, the initialization of the buffer depends upon the variable
@code{reftex-initialize-temporary-buffers}. @code{reftex-initialize-temporary-buffers}.
@end defopt @end defopt
@ -5001,7 +5001,7 @@ away, the initialization of the buffer depends upon the variable
@defopt reftex-initialize-temporary-buffers @defopt reftex-initialize-temporary-buffers
Non-@code{nil} means do initializations even when visiting file Non-@code{nil} means do initializations even when visiting file
temporarily. When @code{nil}, @RefTeX{} may turn off find-file hooks and temporarily. When @code{nil}, @RefTeX{} may turn off find-file hooks and
other stuff to briefly visit a file. When @code{t}, the full default other stuff to briefly visit a file. When @code{t}, the full default
initializations are done (@code{find-file-hook} etc.). Instead of initializations are done (@code{find-file-hook} etc.). Instead of
@code{t} or @code{nil}, this variable may also be a list of hook @code{t} or @code{nil}, this variable may also be a list of hook
functions to do a minimal initialization. functions to do a minimal initialization.
@ -5107,7 +5107,7 @@ Non-@code{nil} means, highlight selected text in selection and
@emph{selected} text, and it is highlighted. This is the entry most @emph{selected} text, and it is highlighted. This is the entry most
keys in the selection and @file{*toc*} buffers act on. However, if you keys in the selection and @file{*toc*} buffers act on. However, if you
mainly use the mouse to select an item, you may find it nice to have mainly use the mouse to select an item, you may find it nice to have
mouse-triggered highlighting @emph{instead} or @emph{as well}. The mouse-triggered highlighting @emph{instead} or @emph{as well}. The
variable may have one of these values: variable may have one of these values:
@example @example
@ -5719,7 +5719,7 @@ Fixed bug with empty context strings.
@noindent @b{Version 3.21} @noindent @b{Version 3.21}
@itemize @bullet @itemize @bullet
@item @item
New options for all faces used by @RefTeX{}. They're in the New options for all faces used by @RefTeX{}. They're in the
customization group @code{reftex-fontification-configurations}. customization group @code{reftex-fontification-configurations}.
@end itemize @end itemize

View File

@ -620,7 +620,7 @@ time, it just goes ahead and inserts the reference header indexed by
different reference headers based on the type of reply or forwarding different reference headers based on the type of reply or forwarding
you are doing. You may also want to preview the reference header you are doing. You may also want to preview the reference header
before deciding whether to insert it into the reply buffer or before deciding whether to insert it into the reply buffer or
not. Supercite provides an optional @dfn{electric reference} mode not. Supercite provides an optional @dfn{electric reference} mode
which you can drop into to give you this functionality. which you can drop into to give you this functionality.
@vindex sc-electric-references-p @vindex sc-electric-references-p

View File

@ -162,7 +162,7 @@ A B
By default, the cell value print-out is right aligned, that is the By default, the cell value print-out is right aligned, that is the
reason for such an alignment for the notes in column @samp{B}. To reason for such an alignment for the notes in column @samp{B}. To
change that, you can enter a printer function for the whole column, change that, you can enter a printer function for the whole column,
using e.g., @kbd{M-p ("%s")}. Enclosing @code{"%s"} into a list tells using e.g., @kbd{M-p ("%s")}. Enclosing @code{"%s"} into a list tells
@acronym{SES} to align left. You can override a column's printer @acronym{SES} to align left. You can override a column's printer
function in any individual cell using @kbd{p}. function in any individual cell using @kbd{p}.
@ -203,7 +203,7 @@ remove blank cells from the returned list, which enables using
Actually, both options are not exactly equivalent as the former makes Actually, both options are not exactly equivalent as the former makes
the summing in reversed order of argument, and the latter in the same the summing in reversed order of argument, and the latter in the same
order. You can also reverse the order of arguments returned by order. You can also reverse the order of arguments returned by
@code{ses-range} with the @code{<} modifier. @code{ses-range} with the @code{<} modifier.
@c =================================================================== @c ===================================================================
@ -226,16 +226,16 @@ with @file{.ses}. For example, @kbd{C-x C-f test.ses @key{RET}}.
A @dfn{cell identifier} is a symbol with a column letter and a row A @dfn{cell identifier} is a symbol with a column letter and a row
number. Cell B7 is the 2nd column of the 7th row. For very wide number. Cell B7 is the 2nd column of the 7th row. For very wide
spreadsheets, there are two column letters: cell AB7 is the 28th spreadsheets, there are two column letters: cell AB7 is the 28th
column of the 7th row. Super wide spreadsheets get AAA1, etc. column of the 7th row. Super wide spreadsheets get AAA1, etc.
You move around with the regular Emacs movement commands. You move around with the regular Emacs movement commands.
@table @kbd @table @kbd
@item j @item j
Moves point to cell, specified by identifier (@code{ses-jump}). Unless Moves point to cell, specified by identifier (@code{ses-jump}). Unless
the cell is a renamed cell, the identifier is case-insensitive. A the cell is a renamed cell, the identifier is case-insensitive. A
prefix argument @math{n} move to cell with coordinates @math{(n\div R, prefix argument @math{n} move to cell with coordinates @math{(n\div R,
n \% C)} for a spreadsheet of @math{R} rows and @math{C} columns, and n \% C)} for a spreadsheet of @math{R} rows and @math{C} columns, and
@samp{A1} being of coordinates @math{(0,0)}. The way the identifier or @samp{A1} being of coordinates @math{(0,0)}. The way the identifier or
the command prefix argument are interpreted can be customized through the command prefix argument are interpreted can be customized through
variables @code{ses-jump-cell-name-function} and variables @code{ses-jump-cell-name-function} and
@code{ses-jump-prefix-function}. @code{ses-jump-prefix-function}.
@ -434,7 +434,7 @@ use parentheses: @samp{("$%.2f")}.
@item @item
A printer can also be a one-argument function, the result of which is A printer can also be a one-argument function, the result of which is
a string (to get right alignment) or list of one string (to get left a string (to get right alignment) or list of one string (to get left
alignment). Such a function can be in turn configured as: alignment). Such a function can be in turn configured as:
@itemize @itemize
@item @item
A lambda expression, for instance: A lambda expression, for instance:
@ -543,11 +543,11 @@ printer function. Then, if you call again
reprinted accordingly. reprinted accordingly.
Sometimes there are local printers that you want to define or Sometimes there are local printers that you want to define or
re-define automatically every time you open a sheet. For instance re-define automatically every time you open a sheet. For instance
imagine that you want to define/re-define automatically a local imagine that you want to define/re-define automatically a local
printer @code{euro} to display a number like an amount of euros, that printer @code{euro} to display a number like an amount of euros, that
is to say number @code{3.1} would be displayed as is to say number @code{3.1} would be displayed as
@code{3.10@dmn{}@euro{}}. To do so in any non read-only SES buffer, @code{3.10@dmn{}@euro{}}. To do so in any non read-only SES buffer,
you can add some code like this to your @file{.emacs} init file: you can add some code like this to your @file{.emacs} init file:
@lisp @lisp
@ -586,7 +586,7 @@ when you define a local printer function with command
When doing so, please take care that the returned value is a string, When doing so, please take care that the returned value is a string,
or a list containing a string, even when the input argument has an or a list containing a string, even when the input argument has an
unexpected value. Here is an example: unexpected value. Here is an example:
@example @example
(lambda (val) (lambda (val)
@ -769,24 +769,24 @@ list.
@vindex ses-jump-cell-name-function @vindex ses-jump-cell-name-function
@code{ses-jump-cell-name-function} is a customizable variable by @code{ses-jump-cell-name-function} is a customizable variable by
default set to the @code{upcase} function. This function is called default set to the @code{upcase} function. This function is called
when you pass a cell name to the @command{ses-jump} command (@kbd{j}), when you pass a cell name to the @command{ses-jump} command (@kbd{j}),
@c TODO : propagate extra explanation from the French version. @c TODO : propagate extra explanation from the French version.
it changes the entered cell name to that where to jump. The default it changes the entered cell name to that where to jump. The default
setting @code{upcase} allows you to enter the cell name in low setting @code{upcase} allows you to enter the cell name in low
case. Another use of @code{ses-jump-cell-name-function} could be some case. Another use of @code{ses-jump-cell-name-function} could be some
internationalization to convert non latin characters into latin internationalization to convert non latin characters into latin
equivalents to name the cell. Instead of a cell name, the function may equivalents to name the cell. Instead of a cell name, the function may
return cell coordinates in the form of a cons, for instance @code{(0 return cell coordinates in the form of a cons, for instance @code{(0
. 0)} for cell @code{A1}, @code{(1 . 0)} for cell @code{A2}, etc. . 0)} for cell @code{A1}, @code{(1 . 0)} for cell @code{A2}, etc.
@vindex ses-jump-prefix-function @vindex ses-jump-prefix-function
@code{ses-jump-prefix-function} is a customizable variable by default @code{ses-jump-prefix-function} is a customizable variable by default
set to the @code{ses-jump-prefix} function. This function is called set to the @code{ses-jump-prefix} function. This function is called
when you give a prefix argument to the @command{ses-jump} command when you give a prefix argument to the @command{ses-jump} command
(@kbd{j}). It returns a cell name or cell coordinates corresponding to (@kbd{j}). It returns a cell name or cell coordinates corresponding to
the prefix argument. Cell coordinates are in the form of a cons, for the prefix argument. Cell coordinates are in the form of a cons, for
instance @code{(1 . 0)} for cell @code{A2}. The default setting instance @code{(1 . 0)} for cell @code{A2}. The default setting
@code{ses-jump-prefix} will number cells left to right and then top @code{ses-jump-prefix} will number cells left to right and then top
down, so assuming a 4x3 spreadsheet prefix argument @samp{0} jumps to down, so assuming a 4x3 spreadsheet prefix argument @samp{0} jumps to
cell @samp{A1}, prefix argument @samp{2} jumps to @samp{C1}, prefix cell @samp{A1}, prefix argument @samp{2} jumps to @samp{C1}, prefix
@ -841,7 +841,7 @@ valid local variable name (See also @ref{Nonrelocatable references}).
@findex ses-repair-cell-reference-all @findex ses-repair-cell-reference-all
When you interrupt a cell formula update by typing @kbd{C-g}, then When you interrupt a cell formula update by typing @kbd{C-g}, then
the cell reference link may be broken, which will jeopardize automatic the cell reference link may be broken, which will jeopardize automatic
cell update when any other cell on which it depends is changed. To cell update when any other cell on which it depends is changed. To
repair that use function @code{ses-repair-cell-reference-all} repair that use function @code{ses-repair-cell-reference-all}
@end table @end table
@ -946,21 +946,21 @@ Flags can be added to @code{ses-range} immediately after the @var{to}
cell. cell.
@table @code @table @code
@item ! @item !
Empty cells in range can be removed by adding the @code{!} flag. An Empty cells in range can be removed by adding the @code{!} flag. An
empty cell is a cell the value of which is one of symbols @code{nil} empty cell is a cell the value of which is one of symbols @code{nil}
or @code{*skip*}. For instance @code{(ses-range A1 A4 !)} will do the or @code{*skip*}. For instance @code{(ses-range A1 A4 !)} will do the
same as @code{(list A1 A3)} when cells @code{A2} and @code{A4} are same as @code{(list A1 A3)} when cells @code{A2} and @code{A4} are
empty. empty.
@item _ @item _
Empty cell values are replaced by the argument following flag Empty cell values are replaced by the argument following flag
@code{_}, or @code{0} when flag @code{_} is last in argument list. For @code{_}, or @code{0} when flag @code{_} is last in argument list. For
instance @code{(ses-range A1 A4 _ "empty")} will do the same as instance @code{(ses-range A1 A4 _ "empty")} will do the same as
@code{(list A1 "empty" A3 "empty")} when cells @code{A2} and @code{A4} @code{(list A1 "empty" A3 "empty")} when cells @code{A2} and @code{A4}
are empty. Similarly, @code{(ses-range A1 A4 _ )} will do the same as are empty. Similarly, @code{(ses-range A1 A4 _ )} will do the same as
@code{(list A1 0 A3 0)}. @code{(list A1 0 A3 0)}.
@item >v @item >v
When order matters, list cells by reading cells row-wise from top left When order matters, list cells by reading cells row-wise from top left
to bottom right. This flag is provided for completeness only as it is to bottom right. This flag is provided for completeness only as it is
the default reading order. the default reading order.
@item <v @item <v
List cells by reading cells row-wise from top right to bottom left. List cells by reading cells row-wise from top right to bottom left.
@ -978,7 +978,7 @@ A short hand for @code{>v}.
A short hand for @code{>^}. A short hand for @code{>^}.
@item * @item *
Instead of listing cells, it makes a Calc vector or matrix of it Instead of listing cells, it makes a Calc vector or matrix of it
(@pxref{Top,,,calc,GNU Emacs Calc Manual}). If the range contains only (@pxref{Top,,,calc,GNU Emacs Calc Manual}). If the range contains only
one row or one column a vector is made, otherwise a matrix is made. one row or one column a vector is made, otherwise a matrix is made.
@item *2 @item *2
Same as @code{*} except that a matrix is always made even when there Same as @code{*} except that a matrix is always made even when there
@ -1033,7 +1033,7 @@ are some useful functions to call from your formulas:
@table @code @table @code
@item (ses-delete-blanks &rest @var{args}) @item (ses-delete-blanks &rest @var{args})
Returns a list from which all blank cells (value is either @code{nil} Returns a list from which all blank cells (value is either @code{nil}
or '*skip*) have been deleted. Order of args is reverted. Please note or '*skip*) have been deleted. Order of args is reverted. Please note
that @code{ses-range} has a @code{!} modifier that enables removing that @code{ses-range} has a @code{!} modifier that enables removing
blanks, so it is possible to write: blanks, so it is possible to write:
@lisp @lisp
@ -1250,8 +1250,8 @@ The best way is to rename cells that you do @emph{not} want to be
relocatable by using @code{ses-rename-cell}. relocatable by using @code{ses-rename-cell}.
@findex ses-rename-cell @findex ses-rename-cell
Cells that do not have an A1-like name style are not relocated on Cells that do not have an A1-like name style are not relocated on
yank. Using this method, the concerned cells won't be relocated yank. Using this method, the concerned cells won't be relocated
whatever formula they appear in. Please note however that when a whatever formula they appear in. Please note however that when a
formula contains some range @code{(ses-range @var{cell1} @var{cell2})} formula contains some range @code{(ses-range @var{cell1} @var{cell2})}
then in the yanked formula each range bound @var{cell1} and then in the yanked formula each range bound @var{cell1} and
@var{cell2} are relocated, or not, independently, depending on whether @var{cell2} are relocated, or not, independently, depending on whether

View File

@ -48,7 +48,7 @@ packages, and web browsers.
Speedbar displays a narrow frame in which a tree view is shown. This Speedbar displays a narrow frame in which a tree view is shown. This
tree view defaults to containing a list of files and directories. Files tree view defaults to containing a list of files and directories. Files
can be ``expanded'' to list tags inside. Directories can be expanded to can be ``expanded'' to list tags inside. Directories can be expanded to
list the files within them. Each file or tag can be jumped to list the files within them. Each file or tag can be jumped to
immediately. immediately.

View File

@ -812,7 +812,7 @@ or by removing it if present.
@samp{nonmarking} (@kbd{k}): Change the current item's calendar @samp{nonmarking} (@kbd{k}): Change the current item's calendar
marking status by adding @code{diary-nonmarking-symbol} if the item marking status by adding @code{diary-nonmarking-symbol} if the item
lacks this, or by removing it if present. Since this symbol only lacks this, or by removing it if present. Since this symbol only
applies to diary items, the item is automatically marked as such, applies to diary items, the item is automatically marked as such,
i.e., if @code{todo-nondiary-marker} is present, it is removed. i.e., if @code{todo-nondiary-marker} is present, it is removed.
@ -1799,7 +1799,7 @@ current file:
Hide the item headers if visible, or show them if they are hidden. 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 string inserted when the item was marked done) is hidden, the original
date-time string is not. With filtered items, the category (or date-time string is not. With filtered items, the category (or
category-file) tag is not hidden. category-file) tag is not hidden.
@item F H @item F H

View File

@ -165,9 +165,9 @@ commands even have so many options that they introduce @emph{subcommands}
@anchor{Using Transient for composing interactive commands} @anchor{Using Transient for composing interactive commands}
@heading Using Transient for composing interactive commands @heading Using Transient for composing interactive commands
What about Emacs commands used interactively? How do these handle What about Emacs commands used interactively? How do these handle
options? One solution is to make many versions of the same command, options? One solution is to make many versions of the same command,
so you don't need to! Consider: @samp{delete-other-windows} vs. so you don't need to! Consider: @samp{delete-other-windows} vs.
@samp{delete-other-windows-vertically} (among many similar examples). @samp{delete-other-windows-vertically} (among many similar examples).
Some Emacs commands will simply prompt you for the next "argument" Some Emacs commands will simply prompt you for the next "argument"
@ -1019,7 +1019,7 @@ independently. See @ref{Using History}.
After a transient prefix command is invoked, @kbd{C-h @var{KEY}} can be used to After a transient prefix command is invoked, @kbd{C-h @var{KEY}} can be used to
show the documentation for the infix or suffix command that @kbd{@var{KEY}} is show the documentation for the infix or suffix command that @kbd{@var{KEY}} is
bound to (see @ref{Getting Help for Suffix Commands}), and infixes and bound to (see @ref{Getting Help for Suffix Commands}), and infixes and
suffixes can be removed from the transient using @kbd{C-x l @var{KEY}}. Infixes suffixes can be removed from the transient using @kbd{C-x l @var{KEY}}. Infixes
and suffixes that are disabled by default can be enabled the same way. and suffixes that are disabled by default can be enabled the same way.
See @ref{Enabling and Disabling Suffixes}. See @ref{Enabling and Disabling Suffixes}.
@ -1287,7 +1287,7 @@ individual suffix command.
The same form is also used when later binding additional commands The same form is also used when later binding additional commands
using functions such as @code{transient-insert-suffix}, see @ref{Modifying Existing Transients}. using functions such as @code{transient-insert-suffix}, see @ref{Modifying Existing Transients}.
Note that an infix is a special kind of suffix. Depending on context Note that an infix is a special kind of suffix. Depending on context
``suffixes'' means ``suffixes (including infixes)'' or ``non-infix ``suffixes'' means ``suffixes (including infixes)'' or ``non-infix
suffixes''. Here it means the former. suffixes''. Here it means the former.
@ -1382,7 +1382,7 @@ argument supported by the constructor of that class. See @ref{Suffix Slots}.
@cindex defining suffix commands @cindex defining suffix commands
@cindex defining infix commands @cindex defining infix commands
Note that an infix is a special kind of suffix. Depending on context Note that an infix is a special kind of suffix. Depending on context
``suffixes'' means ``suffixes (including infixes)'' or ``non-infix ``suffixes'' means ``suffixes (including infixes)'' or ``non-infix
suffixes''. suffixes''.

View File

@ -1612,8 +1612,8 @@ You can override the above setting for a single package by adding
@findex :vc @findex :vc
The @code{:vc} keyword can be used to control how packages are The @code{:vc} keyword can be used to control how packages are
downloaded and/or installed. More specifically, it allows one to fetch downloaded and/or installed. More specifically, it allows one to fetch
and update packages directly from a version control system. This is and update packages directly from a version control system. This is
especially convenient when wanting to install a package that is not on especially convenient when wanting to install a package that is not on
any package archive. any package archive.

View File

@ -79,7 +79,7 @@ modify this GNU manual.''
@chapter Introduction @chapter Introduction
@cindex Introduction @cindex Introduction
Welcome to VHDL Mode. This is a GNU Emacs mode for editing files Welcome to VHDL Mode. This is a GNU Emacs mode for editing files
containing VHDL code. containing VHDL code.
This manual will describe the following: This manual will describe the following:
@ -99,18 +99,18 @@ How to customize the indentation engine.
@findex vhdl-version @findex vhdl-version
The major version number was incremented to 3 with the addition of The major version number was incremented to 3 with the addition of
many new features for editing VHDL code to the new indentation engine, many new features for editing VHDL code to the new indentation engine,
which was introduced in major version 2. To find the minor revision which was introduced in major version 2. To find the minor revision
number of this release, use @kbd{M-x vhdl-version @key{RET}}. number of this release, use @kbd{M-x vhdl-version @key{RET}}.
A special word of thanks goes to Rod Whitby, who wrote the A special word of thanks goes to Rod Whitby, who wrote the
VHDL Mode indentation engine, and to Barry Warsaw, who wrote VHDL Mode indentation engine, and to Barry Warsaw, who wrote
the CC Mode indentation engine that formed the basis the CC Mode indentation engine that formed the basis
thereof. Their manuals were also the basis for this manual. thereof. Their manuals were also the basis for this manual.
This manual is not very up-to-date. It basically contains the This manual is not very up-to-date. It basically contains the
indentation machine documentation by Rod Whitby with only minor indentation machine documentation by Rod Whitby with only minor
adaptions. A short documentation of the entire VHDL Mode is available adaptions. A short documentation of the entire VHDL Mode is available
within the mode itself by typing @kbd{C-c C-h}. Also, all commands and within the mode itself by typing @kbd{C-c C-h}. Also, all commands and
customization of most variables are available through the menu, which customization of most variables are available through the menu, which
makes everything highly self-explaining. makes everything highly self-explaining.
@ -126,14 +126,14 @@ To get started, simply visit a @file{.vhd} file in Emacs; or type
@cindex New Indentation Engine @cindex New Indentation Engine
VHDL Mode has a new indentation engine, providing a simplified, yet VHDL Mode has a new indentation engine, providing a simplified, yet
flexible and general mechanism for customizing indentation. It breaks flexible and general mechanism for customizing indentation. It breaks
indentation calculation into two steps. First for the line of code being indentation calculation into two steps. First for the line of code being
indented, VHDL Mode analyzes what kind of language construct it's indented, VHDL Mode analyzes what kind of language construct it's
looking at, then it applies user defined offsets to the current line looking at, then it applies user defined offsets to the current line
based on this analysis. based on this analysis.
This section will briefly cover how indentation is calculated in This section will briefly cover how indentation is calculated in
VHDL Mode. It is important to understand the indentation model VHDL Mode. It is important to understand the indentation model
being used so that you will know how to customize VHDL Mode for being used so that you will know how to customize VHDL Mode for
your personal coding style. your personal coding style.
@ -169,7 +169,7 @@ Conceptually, a line of VHDL code is always indented relative to the
indentation of some line higher up in the buffer. This is represented indentation of some line higher up in the buffer. This is represented
by the relative buffer position in the syntactic component. by the relative buffer position in the syntactic component.
It might help to see an example. Suppose we had the following code as It might help to see an example. Suppose we had the following code as
the only thing in a VHDL Mode buffer @footnote{The line numbers the only thing in a VHDL Mode buffer @footnote{The line numbers
in this and future examples don't actually appear in the buffer.}: in this and future examples don't actually appear in the buffer.}:
@example @example
@ -652,7 +652,7 @@ one of the syntactic symbol offsets will need to be tweaked slightly, or
perhaps @code{vhdl-basic-offset} will need to be changed. However, some perhaps @code{vhdl-basic-offset} will need to be changed. However, some
styles require a more advanced ability for customization, and one of the styles require a more advanced ability for customization, and one of the
real strengths of VHDL Mode is that the syntactic analysis model real strengths of VHDL Mode is that the syntactic analysis model
provides a very flexible framework for customizing indentation. This provides a very flexible framework for customizing indentation. This
allows you to perform special indentation calculations for situations allows you to perform special indentation calculations for situations
not handled by the mode directly. not handled by the mode directly.
@ -833,13 +833,13 @@ symbol currently recognized}
@strong{Q.} @emph{How do I re-indent the whole file?} @strong{Q.} @emph{How do I re-indent the whole file?}
@strong{A.} Visit the file and hit @kbd{C-x h} to mark the whole @strong{A.} Visit the file and hit @kbd{C-x h} to mark the whole
buffer. Then hit @kbd{@key{ESC} C-\} to re-indent the entire region buffer. Then hit @kbd{@key{ESC} C-\} to re-indent the entire region
which you've just marked. Or just enter @kbd{M-x vhdl-indent-buffer}. which you've just marked. Or just enter @kbd{M-x vhdl-indent-buffer}.
@sp 2 @sp 2
@strong{Q.} @emph{How do I re-indent the entire function?} @strong{Q.} @emph{How do I re-indent the entire function?}
@strong{A.} Hit @kbd{@key{ESC} C-h} to mark the entire function. Then @strong{A.} Hit @kbd{@key{ESC} C-h} to mark the entire function. Then
hit @kbd{@key{ESC} C-\} to re-indent the entire region which you've just hit @kbd{@key{ESC} C-\} to re-indent the entire region which you've just
marked. marked.
@sp 2 @sp 2

View File

@ -190,7 +190,7 @@ M-x vip-mode
@kindex 0301 C-x C-z @r{(}@code{suspend-emacs}@r{)} @kindex 0301 C-x C-z @r{(}@code{suspend-emacs}@r{)}
Loading VIP has the effect of globally binding @kbd{C-z} (@kbd{Control-z}) Loading VIP has the effect of globally binding @kbd{C-z} (@kbd{Control-z})
to the function @code{vip-change-mode-to-vi}. The default binding of @kbd{C-z} to the function @code{vip-change-mode-to-vi}. The default binding of @kbd{C-z}
in GNU Emacs is @code{suspend-emacs}, but, you can also call in GNU Emacs is @code{suspend-emacs}, but, you can also call
@code{suspend-emacs} by typing @kbd{C-x C-z}. Other than this, all the @code{suspend-emacs} by typing @kbd{C-x C-z}. Other than this, all the
key bindings of Emacs remain the same after loading VIP. key bindings of Emacs remain the same after loading VIP.
@ -400,7 +400,7 @@ Given counts, text will be yanked (in Vi's sense) that many times. Thus
@itemx O @itemx O
@kindex 157 o @r{(}@code{vip-open-line}@r{)} @kindex 157 o @r{(}@code{vip-open-line}@r{)}
@kindex 117 O @r{(}@code{vip-Open-line}@r{)} @kindex 117 O @r{(}@code{vip-Open-line}@r{)}
Given counts, that many copies of text will be inserted. Thus Given counts, that many copies of text will be inserted. Thus
@kbd{o a b c @key{ESC}} will insert 3 lines of @samp{abc} below the current @kbd{o a b c @key{ESC}} will insert 3 lines of @samp{abc} below the current
line. line.
@item / @item /
@ -474,7 +474,7 @@ Forward incremental search.
@kindex 033 ESC @r{(}@code{vip-ESC}@r{)} @kindex 033 ESC @r{(}@code{vip-ESC}@r{)}
These keys will exit from vi mode and return to emacs mode temporarily. If These keys will exit from vi mode and return to emacs mode temporarily. If
you hit one of these keys, Emacs will be in emacs mode and will believe you hit one of these keys, Emacs will be in emacs mode and will believe
that you hit that key in emacs mode. For example, if you hit @kbd{C-x} that you hit that key in emacs mode. For example, if you hit @kbd{C-x}
followed by @kbd{2}, then the current window will be split into 2 and you followed by @kbd{2}, then the current window will be split into 2 and you
will be in vi mode again. will be in vi mode again.
@item \ @item \
@ -517,7 +517,7 @@ Change upper-case characters in the region to lower case
(@code{downcase-region}). (@code{downcase-region}).
@item # C @item # C
@kindex 0431 # C @r{(}@code{upcase-region}@r{)} @kindex 0431 # C @r{(}@code{upcase-region}@r{)}
Change lower-case characters in the region to upper case. For instance, Change lower-case characters in the region to upper case. For instance,
@kbd{# C 3 w} will capitalize 3 words from the current point @kbd{# C 3 w} will capitalize 3 words from the current point
(@code{upcase-region}). (@code{upcase-region}).
@item # g @item # g
@ -574,14 +574,14 @@ in the current window, while @kbd{S} selects buffer in another window.
@kindex 1300 X @r{(}@code{vip-ctl-x-equivalent}@r{)} @kindex 1300 X @r{(}@code{vip-ctl-x-equivalent}@r{)}
These keys will exit from vi mode and return to emacs mode temporarily. These keys will exit from vi mode and return to emacs mode temporarily.
If you type @kbd{C} (@kbd{X}), Emacs will be in emacs mode and will believe If you type @kbd{C} (@kbd{X}), Emacs will be in emacs mode and will believe
that you have typed @kbd{C-c} (@kbd{C-x}) in emacs mode. Moreover, that you have typed @kbd{C-c} (@kbd{C-x}) in emacs mode. Moreover,
if the following character you type is an upper-case letter, then Emacs if the following character you type is an upper-case letter, then Emacs
will believe that you have typed the corresponding control character. will believe that you have typed the corresponding control character.
You will be in vi mode again after the command is executed. For example, You will be in vi mode again after the command is executed. For example,
typing @kbd{X S} in vi mode is the same as typing @kbd{C-x C-s} in emacs typing @kbd{X S} in vi mode is the same as typing @kbd{C-x C-s} in emacs
mode. You get the same effect by typing @kbd{C-x C-s} in vi mode, but mode. You get the same effect by typing @kbd{C-x C-s} in vi mode, but
the idea here is that you can execute useful Emacs commands without typing the idea here is that you can execute useful Emacs commands without typing
control characters. For example, if you hit @kbd{X} (or @kbd{C-x}) followed control characters. For example, if you hit @kbd{X} (or @kbd{C-x}) followed
by @kbd{2}, then the current window will be split into 2 and you will be in by @kbd{2}, then the current window will be split into 2 and you will be in
vi mode again. vi mode again.
@end table @end table
@ -1307,7 +1307,7 @@ The line commands are as follows:
@cindex expanding (region) @cindex expanding (region)
If a point command is given as an argument to a modifying command, the If a point command is given as an argument to a modifying command, the
region determined by the point command will be affected by the modifying region determined by the point command will be affected by the modifying
command. On the other hand, if a line command is given as an argument to a command. On the other hand, if a line command is given as an argument to a
modifying command, the region determined by the line command will be modifying command, the region determined by the line command will be
enlarged so that it will become the smallest region properly containing the enlarged so that it will become the smallest region properly containing the
region and consisting of whole lines (we call this process @dfn{expanding region and consisting of whole lines (we call this process @dfn{expanding
@ -1418,9 +1418,9 @@ below.
@item p @item p
@kindex 160 p @r{(}@code{vip-put-back}@r{)} @kindex 160 p @r{(}@code{vip-put-back}@r{)}
Insert, after the character point is looking at, most recently Insert, after the character point is looking at, most recently
deleted/yanked text from anonymous register. Given a register name deleted/yanked text from anonymous register. Given a register name
argument, the content of the named register will be put back. Given a argument, the content of the named register will be put back. Given a
count, the command will be repeated that many times. This command also count, the command will be repeated that many times. This command also
checks if the text to put back ends with a new line character, and if so checks if the text to put back ends with a new line character, and if so
the text will be put below the current line (@code{vip-put-back}). the text will be put below the current line (@code{vip-put-back}).
@item P @item P

View File

@ -163,10 +163,10 @@ some incompatibilities.
This manual is written with the assumption that you are an experienced Vi This manual is written with the assumption that you are an experienced Vi
user who wants to switch to Emacs while retaining the ability to edit files user who wants to switch to Emacs while retaining the ability to edit files
Vi style. Incredible as it might seem, there are experienced Emacs users Vi style. Incredible as it might seem, there are experienced Emacs users
who use Viper as a backdoor into the superior (as every Vi user already knows) who use Viper as a backdoor into the superior (as every Vi user already knows)
world of Vi! These users are well familiar with Emacs bindings and prefer them world of Vi! These users are well familiar with Emacs bindings and prefer them
in some cases, especially in the Vi Insert state. John Hawkins in some cases, especially in the Vi Insert state. John Hawkins
<jshawkin@@eecs.umich.edu> has provided a set of customizations, which <jshawkin@@eecs.umich.edu> has provided a set of customizations, which
enables additional Emacs bindings under Viper. These customizations can be enables additional Emacs bindings under Viper. These customizations can be
included in your @file{~/.emacs.d/viper} file and are found at the included in your @file{~/.emacs.d/viper} file and are found at the
@ -335,7 +335,7 @@ Viper.
The latest versions of Emacs have an interactive customization facility, The latest versions of Emacs have an interactive customization facility,
which allows you to (mostly) bypass the use of the @file{.emacs} and which allows you to (mostly) bypass the use of the @file{.emacs} and
@code{viper-custom-file-name} files. You can reach this customization @code{viper-custom-file-name} files. You can reach this customization
facility from within Viper's VI state by executing the Ex command facility from within Viper's VI state by executing the Ex command
@kbd{:customize}. @kbd{:customize}.
@ -1589,10 +1589,10 @@ you are doing. Only two variables, @code{viper-mode} and
prior to loading Viper (i.e., prior to @code{(require 'viper)} command. prior to loading Viper (i.e., prior to @code{(require 'viper)} command.
@item @item
@cindex Ex customize @cindex Ex customize
By executing the @kbd{:customize} Ex command. This takes you to the Emacs By executing the @kbd{:customize} Ex command. This takes you to the Emacs
customization widget, which lets you change the values of Viper customization widget, which lets you change the values of Viper
customizable variables easily. This method is good for novice and customizable variables easily. This method is good for novice and
experts alike. The customization code in the form of Lisp commands will be experts alike. The customization code in the form of Lisp commands will be
placed in @file{~/.emacs} or some other customization file depending on the placed in @file{~/.emacs} or some other customization file depending on the
version of Emacs that you use. Still, it is recommended to separate version of Emacs that you use. Still, it is recommended to separate
Viper-related customization produced by the Emacs customization widget Viper-related customization produced by the Emacs customization widget
@ -1766,7 +1766,7 @@ have to set it as a string inside double quotes.
Function used by the command @kbd{#c<move>} to spell. Function used by the command @kbd{#c<move>} to spell.
@item viper-glob-function @item viper-glob-function
The value of this variable is the function symbol used to expand wildcard The value of this variable is the function symbol used to expand wildcard
symbols. This is platform-dependent. The default tries to set this variable symbols. This is platform-dependent. The default tries to set this variable
to work with most shells, MS Windows, etc. However, if it to work with most shells, MS Windows, etc. However, if it
doesn't work the way you expect, you should write your own. doesn't work the way you expect, you should write your own.
Use @code{viper-glob-unix-files} and @code{viper-glob-mswindows-files} in Use @code{viper-glob-unix-files} and @code{viper-glob-mswindows-files} in
@ -2298,7 +2298,7 @@ suspicion is wrong, no harm is done if you harness a minor mode that
doesn't need to be harnessed. doesn't need to be harnessed.
It is recommended to harness even those minor modes that don't override It is recommended to harness even those minor modes that don't override
Viper keys, but still have their own keymaps. A general way to Viper keys, but still have their own keymaps. A general way to
make a minor mode, @code{my-mode}, make a minor mode, @code{my-mode},
compatible with Viper is to have the file @file{my-mode.el} include the following code: compatible with Viper is to have the file @file{my-mode.el} include the following code:
@ -3099,7 +3099,7 @@ lines.
@cindex % (Current file) @cindex % (Current file)
Note that @samp{%} is used in Ex commands @kbd{:e} and @kbd{:r <shell-cmd>} Note that @samp{%} is used in Ex commands @kbd{:e} and @kbd{:r <shell-cmd>}
to mean current file. If you want a @samp{%} in your command, it must be to mean current file. If you want a @samp{%} in your command, it must be
escaped as @samp{\%}. Note that @kbd{:w} and the regular @kbd{:r <file>} escaped as @samp{\%}. Note that @kbd{:w} and the regular @kbd{:r <file>}
command doesn't support the meta symbols @samp{%} and @samp{#}, because command doesn't support the meta symbols @samp{%} and @samp{#}, because
file history is a better mechanism. file history is a better mechanism.
@cindex # (Previous file) @cindex # (Previous file)
@ -3452,7 +3452,7 @@ Mark the current file and position with the specified letter.
Set the Emacs mark (@pxref{Emacs Preliminaries}) at point. Set the Emacs mark (@pxref{Emacs Preliminaries}) at point.
@item m ^ @item m ^
Set the Emacs mark (@pxref{Emacs Preliminaries}) back to where it was last Set the Emacs mark (@pxref{Emacs Preliminaries}) back to where it was last
set with the @kbd{m.} command. This is useful when you set the mark with set with the @kbd{m.} command. This is useful when you set the mark with
@kbd{m.}, but then some other command (such as @kbd{L} or @kbd{G}) changes @kbd{m.}, but then some other command (such as @kbd{L} or @kbd{G}) changes
it in a way that you didn't like. it in a way that you didn't like.
@item m < @item m <
@ -3701,9 +3701,9 @@ Repeat latest Ex substitute command, e.g.,
@itemx :g/Pat/p @itemx :g/Pat/p
@itemx :v/Pat/p @itemx :v/Pat/p
The above commands display certain buffer lines in a The above commands display certain buffer lines in a
temporary buffer. The first form above displays the buffer lines between temporary buffer. The first form above displays the buffer lines between
@kbd{x} and @kbd{y}. The second displays the lines of the buffer, which @kbd{x} and @kbd{y}. The second displays the lines of the buffer, which
match a given pattern. The third form displays the lines that do @emph{not} match a given pattern. The third form displays the lines that do @emph{not}
match the given pattern. match the given pattern.
@item #c<move> @item #c<move>
Change upper-case characters in the region to lower-case. Change upper-case characters in the region to lower-case.
@ -3765,7 +3765,7 @@ found there (e.g., @samp{~} is not expanded to the result of the previous
substitution). substitution).
After typing @kbd{/} or @kbd{?} all the usual Emacs minibuffer commands, such as After typing @kbd{/} or @kbd{?} all the usual Emacs minibuffer commands, such as
@kbd{M-p} and @kbd{M-n} are available. In addition, typing @kbd{C-s} will @kbd{M-p} and @kbd{M-n} are available. In addition, typing @kbd{C-s} will
insert the last search string used by the Emacs incremental search command insert the last search string used by the Emacs incremental search command
(which is bound to @kbd{C-s} everywhere except in this case). (which is bound to @kbd{C-s} everywhere except in this case).
@ -3970,8 +3970,8 @@ In all file handling commands, space should be typed before entering the file
name. If you need to type a modifier, such as @kbd{>>} or @kbd{!}, don't name. If you need to type a modifier, such as @kbd{>>} or @kbd{!}, don't
put any space between the command and the modifier. put any space between the command and the modifier.
Note that many Ex commands, e.g., @kbd{:w}, accept command arguments. The Note that many Ex commands, e.g., @kbd{:w}, accept command arguments. The
effect is that the command would start acting on the current region. For effect is that the command would start acting on the current region. For
instance, if the current region spans the lines 11 through 22, then if you instance, if the current region spans the lines 11 through 22, then if you
type @kbd{1:w} you would see @samp{:11,22w} in the minibuffer. type @kbd{1:w} you would see @samp{:11,22w} in the minibuffer.
@ -4028,7 +4028,7 @@ Preserve the file---autosave buffers.
Recover file from autosave. Recover file from autosave.
@item :f [<file>] @item :f [<file>]
without the argument, prints file name and character/line information afout without the argument, prints file name and character/line information afout
the currently visited file. With an argument, sets the currently visited the currently visited file. With an argument, sets the currently visited
filename to @file{file}. filename to @file{file}.
@item :cd [<dir>] @item :cd [<dir>]
Set the working directory to <dir> (default home directory). Set the working directory to <dir> (default home directory).
@ -4062,7 +4062,7 @@ Like @kbd{:n}, but the meaning of the variable
Switch to another buffer. If @code{ex-cycle-other-window} is @code{t}, Switch to another buffer. If @code{ex-cycle-other-window} is @code{t},
switch in another window. Buffer completion is supported. switch in another window. Buffer completion is supported.
The variable @code{viper-read-buffer-function} controls which function is The variable @code{viper-read-buffer-function} controls which function is
actually used to read the buffer name. The default is @code{read-buffer}, actually used to read the buffer name. The default is @code{read-buffer},
but better alternatives are also available in Emacs (e.g., but better alternatives are also available in Emacs (e.g.,
@code{ido-read-buffer}). @code{ido-read-buffer}).
@vindex viper-read-buffer-function @vindex viper-read-buffer-function
@ -4459,7 +4459,7 @@ VIP 4.4, by Aamod Sane. This manual is an adaptation of the manual for VIP
4.4, which, in turn, was based on Sato's manual for VIP 3.5. 4.4, which, in turn, was based on Sato's manual for VIP 3.5.
Many contributors on the Net pointed out bugs and suggested a number of Many contributors on the Net pointed out bugs and suggested a number of
useful features. Scott Bronson and Samuel Padgett contributed patches that useful features. Scott Bronson and Samuel Padgett contributed patches that
were incorporated in this code. Here is a hopefully complete list of were incorporated in this code. Here is a hopefully complete list of
contributors: contributors:

View File

@ -150,7 +150,7 @@ Widget library will also use the new graphic features automatically.
A form consists of read only text for documentation and some fields, A form consists of read only text for documentation and some fields,
where each field contains two parts, a tag and a value. The tags are where each field contains two parts, a tag and a value. The tags are
used to identify the fields, so the documentation can refer to the used to identify the fields, so the documentation can refer to the
@samp{foo field}, meaning the field tagged with @samp{Foo}. Here is an @samp{foo field}, meaning the field tagged with @samp{Foo}. Here is an
example form: example form:
@example @example
@ -865,7 +865,7 @@ the @code{:mouse-down-action} property.
All widgets can be created from a type specification. The general All widgets can be created from a type specification. The general
syntax of a type specification is: syntax of a type specification is:
@c FIXME: Add BNF reference here? If yes, what reference? @c FIXME: Add BNF reference here? If yes, what reference?
@example @example
@var{name} ::= (@var{name} [@var{keyword} @var{argument}]... @var{args}) @var{name} ::= (@var{name} [@var{keyword} @var{argument}]... @var{args})
| @var{name} | @var{name}

View File

@ -109,7 +109,7 @@ described in the @ref{Top, Semantic Manual, Semantic Manual, semantic}.
@chapter Wisent Overview @chapter Wisent Overview
@dfn{Wisent} (the European Bison) is an implementation in Emacs Lisp @dfn{Wisent} (the European Bison) is an implementation in Emacs Lisp
of the GNU Compiler Compiler Bison. Its code is a port of the C code of the GNU Compiler Compiler Bison. Its code is a port of the C code
of GNU Bison 1.28 & 1.31. of GNU Bison 1.28 & 1.31.
For more details on the basic concepts for understanding Wisent, it is For more details on the basic concepts for understanding Wisent, it is
@ -1795,7 +1795,7 @@ environment.
@samp{grammar} rule. The semantic action uses the @code{TAG} macro to @samp{grammar} rule. The semantic action uses the @code{TAG} macro to
produce a raw tag, automagically expanded by @semantic{}. produce a raw tag, automagically expanded by @semantic{}.
But @samp{rules} part is parsed in Bison style! Why? But @samp{rules} part is parsed in Bison style! Why?
Rule delimiters are the colon (@code{:}), that follows the nonterminal Rule delimiters are the colon (@code{:}), that follows the nonterminal
name, and a final semicolon (@code{;}). Unfortunately these name, and a final semicolon (@code{;}). Unfortunately these