[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [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, usually bound to M-TAB. Using
LaTeX-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''.
A more direct way to insert a macro is with TeX-insert-macro
,
bound to C-c C-m. 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.
As a default selection, AUCTeX will suggest the macro last inserted
or, as the first choice the value of the variable
TeX-default-macro
.
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 macros. If set to
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
.
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
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.
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 section 5.1 Entering Mathematics, or by setting TeX-insert-braces
to nil.
Completions work because AUCTeX can analyze TeX files, and store symbols in emacs lisp files for later retrieval. See section 11. Automatic Customization, for more information.
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 section 9. Automatic Parsing of TeX 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.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |