Next: Marking, Previous: Mathematics, Up: Editing [Contents][Index]
Emacs lisp programmers probably know the lisp-complete-symbol
command, usually bound to M-TAB. Users of the wonderful
ispell mode know and love the ispell-complete-word
command from
that package. Similarly, AUCTeX has a TeX-complete-symbol
command, by default bound to M-TAB which is equivalent to
M-C-i. Using TeX-complete-symbol
makes it easier to type
and remember the names of long LaTeX macros.
In order to use TeX-complete-symbol
, you should write a backslash
and the start of the macro. Typing M-TAB will now complete
as much of the macro, as it unambiguously can. For example, if you type
‘‘\renewc’’ and then M-TAB, it will expand to
‘‘\renewcommand’’.
(M-TAB) Complete TeX symbol before point.
A more direct way to insert a macro is with TeX-insert-macro
,
bound to C-c C-m which is equivalent to C-c RET. It
has the advantage over completion that it knows about the argument of
most standard LaTeX macros, and will prompt for them. It also knows
about the type of the arguments, so it will for example give completion
for the argument to ‘\include’. Some examples are listed below.
(C-c C-m or C-c RET) Prompt (with completion) for the name of a TeX macro, and if AUCTeX knows the macro, prompt for each argument.
As a default selection, AUCTeX will suggest the macro last inserted
or, as the first choice the value of the variable
TeX-default-macro
.
Specifies whether TeX-insert-macro
will ask for all optional
arguments.
If set to the symbol show-optional-args
, TeX-insert-macro
asks for optional arguments of TeX marcos, unless the previous
optional argument has been rejected. If set to
show-all-optional-args
, TeX-insert-macro
asks for all
optional arguments. mandatory-args-only
, TeX-insert-macro
asks only for mandatory arguments. When TeX-insert-macro
is
called with prefix argument (C-u), it’s the other way round.
Note that for some macros, there are special mechanisms, e.g.
LaTeX-includegraphics-options-alist
and
TeX-arg-cite-note-p
.
Default macro to insert when invoking TeX-insert-macro
first time.
A faster alternative is to bind the function TeX-electric-macro
to ‘\’. This can be done by setting the variable
TeX-electric-escape
If this is non-nil when AUCTeX is loaded, the TeX escape
character ‘\’ will be bound to TeX-electric-macro
The difference between TeX-insert-macro
and
TeX-electric-macro
is that space will complete and exit from the
minibuffer in TeX-electric-macro
. Use TAB if you merely
want to complete.
Prompt (with completion) for the name of a TeX macro, and if AUCTeX knows the macro, prompt for each argument. Space will complete and exit.
By default AUCTeX will put an empty set braces ‘{}’ after a
macro with no arguments to stop it from eating the next whitespace.
This can be stopped by entering LaTeX-math-mode
,
see Mathematics, or by setting TeX-insert-braces
to nil.
If non-nil, append a empty pair of braces after inserting a macro.
Control the insertion of a pair of braces after a macro on a per macro basis.
This variable is an alist. Each element is a cons cell, whose car is the macro name, and the cdr is non-nil or nil, depending on whether a pair of braces should be, respectively, appended or not to the macro.
If a macro has an element in this variable, TeX-parse-macro
will
use its value to decided what to do, whatever the value of the variable
TeX-insert-braces
.
Completions work because AUCTeX can analyze TeX files, and store symbols in Emacs Lisp files for later retrieval. See Automatic, for more information.
AUCTeX distinguishes normal and expert macros. By default, it will
offer completion only for normal commands. This behavior can be
controlled using the user option TeX-complete-expert-commands
.
Complete macros and environments marked as expert commands.
Possible values are nil, t, or a list of style names.
Don’t complete expert commands (default).
Always complete expert commands.
Only complete expert commands of STYLES.
AUCTeX will also make completion for many macro arguments, for
example existing labels when you enter a ‘\ref’ macro with
TeX-insert-macro
or TeX-electric-macro
, and BibTeX
entries when you enter a ‘\cite’ macro. For this kind of
completion to work, parsing must be enabled as described in
see Parsing Files. For ‘\cite’ you must also make sure that
the BibTeX files have been saved at least once after you enabled
automatic parsing on save, and that the basename of the BibTeX file
does not conflict with the basename of one of TeX files.
Next: Marking, Previous: Mathematics, Up: Editing [Contents][Index]