@c This is part of the AUCTeX manual.
@c Copyright (C) 1994-2002, 2004-2010, 2012-2024 Free Software
@c Foundation, Inc.
@c See file auctex.texi for copying conditions.
@include macros.texi
@ifset rawfile
@chapheading Changes and New Features in @AUCTeX{}

@end ifset

@heading News in 14.1

@itemize @bullet
@item
@AUCTeX{} changes major mode names.  Its primary purpose is to avoid
conflicts with Emacs built-in @TeX{} major modes.  It also improves
consistency of the source code.

@itemize @minus
@item
The overview of the former names and new names are:

@multitable {@code{japanese-plain-tex-mode}} {@code{japanese-plain-TeX-mode}}
@headitem Former name @tab New name
@item @code{plain-tex-mode} @tab @code{plain-TeX-mode}
@item @code{latex-mode} @tab @code{LaTeX-mode}
@item @code{doctex-mode} @tab @code{docTeX-mode}
@item @code{context-mode} @tab @code{ConTeXt-mode}
@item @code{texinfo-mode} @tab @code{Texinfo-mode}
@item @code{ams-tex-mode} @tab @code{AmSTeX-mode}
@item @code{japanese-plain-tex-mode} @tab @code{japanese-plain-TeX-mode}
@item @code{japanese-latex-mode} @tab @code{japanese-LaTeX-mode}
@end multitable

The undocumented modes @code{context-en-mode} and @code{context-nl-mode}
were deleted.

@item
We paid much attention to the compatibility and expect that almost no
particular treatment on the user side is needed.  For example, the names
of the keymaps and mode hooks remain unchanged, and the @samp{mode:} tag
in the file local variables in the existing files works with old mode
names.  See below for more details.

@item
If your Emacs is 29 or newer and you use @file{desktop.el} to save and
restore Emacs sessions, be careful before you update @AUCTeX{}; You should
attempt to update only after
@enumerate
@item
you kill all buffer under former @AUCTeX{} modes which have overlapped
name with Emacs built-in @TeX{} modes, and
@item
you terminate the current Emacs session.
@end enumerate
The modes with such overlapped name are @code{plain-tex-mode},
@code{latex-mode}, @code{doctex-mode} and @code{texinfo-mode}. (The above
prescription ensures no buffer of such modes is recorded in the desktop
file.  Otherwise those buffers would be restored in the built-in modes,
not @AUCTeX{} modes, after the update of @AUCTeX{}.)

@item
New mode names are chosen to match the existing variables, so most user
customizations as well as the third party libraries would continue to work
without modification.  For example, names of keymaps and hooks don't
change as stated above.  (@code{AmS-TeX-mode-hook} is renamed to
@code{AmSTeX-mode-hook}, but compatibility alias is provided.)

@item
Now @code{TeX-add-local-master} adds entry of new mode names such as

@example
%%% Local Variables:
%%% mode: LaTeX      <-- not `latex'
%%% End:
@end example

@item
The compatibility with the former mode names with respect to invoking the
major mode are retained.

@enumerate
@item
Former modes which overlap with built-in modes, namely
@code{plain-tex-mode}, @code{latex-mode}, @code{doctex-mode},
@code{texinfo-mode} and @code{tex-mode} are handled by redirections; the
same override advices as before are continued to used for Emacs @math{<29}
while @code{major-mode-remap-alist} is used for Emacs 29 and later.
(Therefore, if there are user codes which call @code{latex-mode}
directly, built-in @code{latex-mode} runs instead of @AUCTeX{}
@code{LaTeX-mode} in Emacs 29 and later.)

These redirections still honor your customization to @code{TeX-modes}
option.  Thus you are served by built-in @code{plain-tex-mode} and
@AUCTeX{} @code{LaTeX-mode} if you exclude @code{plain-tex-mode} from
@code{TeX-modes}.

@item
Other former names, e.g.@: @code{context-mode} and
@code{japanese-latex-mode}, are handled by aliases such as

@lisp
(defalias 'context-mode #'ConTeXt-mode)
@end lisp
@end enumerate

@item
New modes recognize directory local variables prepaired for the former
mode name.  For example, directory local variables for @code{latex-mode}
are valid in @code{LaTeX-mode} as well.  So you don't have to rewrite
every former mode name to the new one in @file{.dir-locals.el}.

@item
Your abbrevs are preserved.  For example, @code{latex-mode-abbrev-table},
if exists, is automatically included as a parent of
@code{LaTeX-mode-abbrev-table}.

@item
Now all major modes are defined by @code{define-derived-mode}, so standard
inheritance of keymaps, syntax tables etc.@: takes place.  The inheritance
relations are:
@verbatim
text-mode      --+-- TeX-mode
                 +-- Texinfo-mode

TeX-mode       --+-- plain-TeX-mode
                 +-- LaTeX-mode
                 +-- ConTeXt-mode

plain-TeX-mode --+-- AmSTeX-mode
                 +-- japanese-plain-TeX-mode

LaTeX-mode     --+-- docTeX-mode
                 +-- japanese-LaTeX-mode
@end verbatim

These inheritance relations are taken into account for directory local
variables in the standard way.  For example, directory local variables for
@code{LaTeX-mode} are applied to @code{docTeX-mode} now.

Note that @code{TeX-mode} isn't meant for use for end users.  It is only
meant for the base mode for other major modes.  Its role is to provide
base keymap, hook and syntax table under the same name with the former
@AUCTeX{} and run the common initialization code.

Now that all modes have @code{text-mode} as their ancestor, they inherit
its keymap and syntax table.  In addition, dir local vars for
@code{text-mode} are applied to all @AUCTeX{} major mode.

However, @code{Texinfo-mode} is exceptional in the following two aspects:
@enumerate
@item
It doesn't inherit @code{text-mode-syntax-table} because it simply uses
built-in mode's @code{texinfo-mode-syntax-table}, which is independent of
@code{text-mode-syntax-table}.  This situation is the same with the former
@AUCTeX{} Texinfo mode.

@item
@code{Texinfo-mode-map} has @code{TeX-mode-map} as its direct parent.
This is the same with the former @AUCTeX{} Texinfo mode.  Now it inherits
@code{text-mode-map} indirectly through @code{TeX-mode-map}.
@end enumerate

@c Need to mention AmSTeX-mode as well?

@item
There are new keymaps, hooks and abbrev tables:
@code{Texinfo-mode-abbrev-table}, @code{japanese-plain-TeX-mode-map},
@code{japanese-LaTeX-mode-map}, @code{japanese-plain-TeX-mode-hook},
@code{japanese-LaTeX-mode-hook},
@code{japanese-plain-TeX-mode-abbrev-table},
@code{japanese-LaTeX-mode-abbrev-table}
@end itemize

@item
New custom variable @code{LaTeX-flymake-chktex-options} is provided to
enable or disable specific warnings of @code{chktex} backend used by
Flymake.

@item
The boolean custom variable @code{TeX-kill-process-without-query} can be
used to disable the user query before aborting a running process for a
@TeX{} document.  Default is @code{nil}.

@item
@AUCTeX{} now requires GNU Emacs 27.1 or higher.
@end itemize

@heading News in 13.3

@itemize @bullet
@item
@AUCTeX{} now requires GNU Emacs 26.1 or higher.

@item
@LaTeX{} abbrevs are now available in doc@TeX{} mode buffers.

@item
@AUCTeX{} temporarily rebinds the variable @code{gc-cons-percentage} to a
higher value during parsing which speeds up the process significantly.
The memory pressure should still be acceptable, even on older machines.

@item
Macros provided by the @file{xparse} package are part of @LaTeX{} kernel
since October 2020.  @AUCTeX{} tracks this change and the content of
@file{xparse.el} is moved into @file{latex.el} and @file{font-latex.el}
respectively.

@item
The variable @code{preview-scale-function} is now allowed as a file-local
variable where the assigned value can only be between 0.1 and 10.
@end itemize

@heading News in 13.2

@itemize @bullet
@item
@AUCTeX{} no longer refuses to insert dollar sign when you type @kbd{$} at
point where @AUCTeX{} thinks the current math mode didn't start with
dollar(s).  @AUCTeX{} assumes the user knows that it isn't in math mode
actually.

You can keep the former behavior by enabling the new customize option
@code{TeX-refuse-unmatched-dollar}.

@item
@AUCTeX{} supports completion-at-point of macro and environment arguments
in @LaTeX{} buffers.  The responsible function recognizes the argument
position and extracts the corresponding candidates from the variables
@code{TeX-symbol-list} and @code{LaTeX-environment-list}.

@item
@AUCTeX{} underlines the argument of macros which produce underlined text
in the final product with @code{font-latex-underline-face}.  The
corresponding keyword class is called @code{underline-command}.
@ifset rawfile
See the section for fontification of macros
@end ifset
@ifclear rawfile
@xref{Fontification of macros}
@end ifclear
if you dislike this feature and wish to deactivate it.

@item
Support for the Sioyek document viewer is added.

@item
@AUCTeX{} now requires GNU Emacs 25.1 or higher.

@item
@AUCTeX{} tracks the change in Emacs where initial inputs in the
minibuffer during queries are getting phased out.  Queries for the
mandatory arguments of macros and environments are adjusted where
applicable.  The value which will be used after hitting @kbd{RET} without
other input is shown in the prompt in parentheses prefixed with
@samp{default}.  For this change the signature of the function
@code{TeX-arg-length} is altered.  The old argument list was:
@lisp
(defun TeX-arg-length (optional &optional prompt
                                initial-input definition default)
@end lisp

whereas the new one is:
@lisp
(defun TeX-arg-length (optional &optional prompt
                                default initial-input definition)
@end lisp

Note the position change of @code{DEFAULT}.

@item
Indenting of conditionals is improved.  Code inside constructs like
@samp{\ifx . \else . \fi} is correctly indented.  An interface for style
files is also introduced which can add their macros to the indentation
engine.  Check the file @file{algpseudocode.el} for an example.

@item
You can optionally enable indent inside square brackets @samp{[]} by new
user options @code{TeX-indent-open-delimiters} and
@code{TeX-indent-close-delimiters}.
@ifclear rawfile
@xref{Indenting}.
@end ifclear

@item
Now @file{tex-buf.el} is merged into @file{tex.el} and no longer exists.
If your personal code has @code{(require 'tex-buf)}, one of the following
prescriptions would serve.
@enumerate
@item
Remove @code{(require 'tex-buf)}.
@item
Replace it with @code{(require 'tex)}.
@item
Replace it with @code{(require 'latex)}.
@end enumerate

@item
When you edit a document divided into multiple files, auto parsed
information for all sub files are saved under @file{auto} subdirectory at
master directory when @code{TeX-parse-self} and @code{TeX-auto-save}
options are enabled.  Now you can have support @file{.el} file saved under
@file{auto} subdirectory of each directory of the sub file when the sub
files aren't located at the master directory.

To achieve that, set new user option @code{TeX-auto-save-aggregate} to
@code{nil}.

@item
There was another hook where former dynamic free variables could be used.
The usage was invalidated at version 13.1, by introduction of lexical
binding over @AUCTeX{}.

The functions in @code{TeX-region-hook} could access the free variables
@code{master-buffer} and @code{orig-buffer}.  Those are now named
@code{TeX-region-master-buffer} and @code{TeX-region-orig-buffer},
respectively.
@end itemize

@heading News in 13.1

@itemize @bullet
@item
In math environments @samp{gather}, @samp{gather*}, @samp{gathered},
@samp{multline} and @samp{multline*}, fill commands such as @kbd{M-q} and
@kbd{C-c C-q C-e} are disabled.  This sorts out the inconsistency between
those and @samp{equation}, @samp{displaymath} environments, in latter of
which filling is already disabled.

If you want filling in such environments, customize
@code{LaTeX-indent-environment-list} to remove them.

Auto fill continues to work in such environment anyway.

In addition, @AUCTeX{} adds support of alignment at @samp{&} sign in
@samp{align}-like environments such as @samp{alignat}, @samp{aligned} and
so on, as well as @samp{matrix}-like environments such as @samp{pmatrix},
@samp{bmatrix} and so on.

@item
Now two commands @samp{Texindex} and @samp{Texi2dvi} are available when
you type @kbd{C-c C-c} in Texinfo mode.  The command @samp{Texindex} runs
@command{texindex} on index files and @samp{Texi2dvi} runs
@command{pdftexi2dvi} or @command{texi2dvi} according to the value of
@code{TeX-PDF-mode}.

So you can typeset Texinfo documents into @acronym{PDF} or @acronym{DVI}
format from within @AUCTeX{}.

@item
@AUCTeX{}'s own help messages for @LaTeX{} errors are now shown only for
@LaTeX{} runs.  @AUCTeX{} shows raw error/warning messages found in
@file{.log} files for runs of formats other than @LaTeX{}, such as plain
@TeX{}, @ConTeXt{} and Texinfo, as it does even for @LaTeX{} runs when it
can't find a matching entry in its own help message catalogue.

Due to this change, customize option @code{TeX-error-description-list} can
no longer have a fallback entry that matches any error.  If your
customized value includes such entry, typically @samp{(".*" . "No help
available")}, please remove it.

@item
Two functions @code{TeX-split-string} and @code{TeX-assoc} are now
obsolete and will be removed in future release.  If your personal code
uses these functions, use @code{split-string} and @code{assoc-string}
instead.

@item
The function @code{TeX-read-key-val} now accepts a function call as second
argument.  This change should help @AUCTeX{} style writers who use
@code{TeX-arg-key-val} and have to deal with dynamic key-values.  Example
of usage:
@lisp
(TeX-add-style-hook "foo"
 (lambda ()
   (TeX-add-symbols
    '("bar" (TeX-arg-key-val (function-returning-key-val))))))
@end lisp

@item
Since @AUCTeX{} 12.2, @kbd{C-x C-w} accidentally disabled the parse on
save in that buffer, even when you enabled @code{TeX-auto-save} option.
This bug was fixed.

@item
@AUCTeX{} now requires GNU Emacs 24.3 or higher.

@item
Old implementations for viewers were discarded, as announced long before.
The variables @code{TeX-output-view-style} and @code{TeX-view-style} have
no effect now.  The former placeholders @samp{%v} and @samp{%vv} in
@code{TeX-command-list} are ignored.

@item
@AUCTeX{} now uses lexical binding which has been introduced in Emacs
24.  This change should have no user-visible effect and require no
manual adaptions except in the following cases.

@itemize @minus
@item
Entries added to the customization variable @code{TeX-expand-list} also
had access to variables @code{command} and @code{pos}.  Those are now
properly declared and named @code{TeX-expand-command} and
@code{TeX-expand-pos}.

@item
Entries added to the customization variable @code{TeX-expand-list} had
access to a variable @code{file} which was bound to
@code{TeX-active-master}, i.e., it evaluated to either the master or
region file.  This usage must be replaced with either
@code{TeX-active-master} or @code{TeX-active-master-with-quotes}.

@item
Viewer entries in @code{TeX-view-program-list} also had access to a
variable @code{file} which was bound to the name of the master or region
file without extension.  Instead, the function @code{TeX-active-master}
has to be used now.

@item
Macro argument parsing functions could set a variable @code{exit-mark}
to the buffer position where point should be left after all arguments
have been read.  This variable is now named @code{TeX-exit-mark}.

@item
The functions in @code{LaTeX-section-hook} had access or modified the
previously undeclared variables @code{title}, @code{name}, @code{level},
@code{done-mark}, and @code{toc}.  These variables are now properly
declared and have the @samp{LaTeX-} prefix, e.g.,
@code{LaTeX-done-mark}.

@item
The functions in @code{ConTeXt-numbered-section-hook} and
@code{ConTeXt-unnumbered-section-hook} had access or modified the
previously undeclared variables @code{title}, @code{name}, @code{level},
@code{done-mark}, and @code{reference}.  These variables are now
properly declared and have the @samp{ConTeXt-} prefix, e.g.,
@code{ConTeXt-title}.

@item
The functions in @code{TeX-translate-location-hook} could access and
modify the free variables @code{file}, @code{line}, @code{error},
@code{offset}, @code{context}, and @code{string}.  Those are now properly
declared variables with the prefix @samp{TeX-translate-location-}, e.g.,
@code{TeX-translate-location-file}.
@end itemize

@item
The constant @code{LaTeX-dialect} has been renamed to @code{TeX-dialect}
and moved from @file{latex.el} to @file{tex.el}.  @code{LaTeX-dialect}
now is an obsolete alias.

@item
The style @file{latexinfo.el} is removed from @AUCTeX{}.
@file{latexinfo.el} was meant to support latexinfo which in return was a
@LaTeX{}-2.09 extension of Texinfo, but didn't manage to replace Texinfo.

@item
The style @file{siunitx.el} is updated to support package version 3.
Key-value options provided by older package versions are removed,
deprecated macros and units are not supported anymore.

@item
@AUCTeX{} has preliminary support for @LaTeX{}-hooks.  Hooks provided by
@LaTeX{} kernel are known and available for completion in
@samp{\AddToHook}, @samp{\RemoveFromHook} and @samp{\AddToHookNext}.

@item
@AUCTeX{} is now able to place all generated output files, including those
that are produced by applications running under @AUCTeX{}, temporary files
related to region processing and @previewlatex{} files, in an output
directory.  To use this feature, set the new user option
@code{TeX-output-dir} to the absolute path of the output directory or a
relative path which would be interpreted as being relative to the master
file in a multifile document.

Note that this feature doesn't work if the document includes sub file
placed in sub directory below the main file via @samp{\include} command.

@item
Many other bugs were fixed.
@end itemize

@heading News in 12.3

@itemize @bullet
@item
Support for @samp{PSTricks} is now @acronym{PDF}-oriented.  @AUCTeX{} no
longer turns off PDF mode for @samp{PSTricks} documents even without
@samp{pst-pdf}.  It now sets up @code{TeX-PDF-from-DVI} option so that
@acronym{PDF} output is generated when @code{TeX-PDF-mode} is enabled
(default).  Users who want @acronym{DVI} output should disable PDF mode
explicitly by file local variable, or customize @code{TeX-PDF-mode} to
@code{nil}.

@item
The function @code{font-latex-update-font-lock} has been obsoleted in
order to fix @samp{bug#37945}.  That function was used by several style
files in order to refresh fontification after adding new symbols or
verbatim constructs.  It is better to call @code{font-lock-flush} in the
former case and @code{font-latex-set-syntactic-keywords} in the latter
case.  The function @code{font-latex-update-font-lock} still exists as a
no-op which only shows a warning explaining how to update font-lock as
mentioned above.

@item
Math expression highlighting was improved.  Highlighting for documents
with a lot of inline math expressions @samp{$...$} won't get scrambled
now (@samp{bug#33139}).

In addition, it is no longer recommended to customize
@code{font-latex-math-environments}.  Use @code{texmathp-tex-commands}
instead.
@ifclear rawfile
@xref{Fontification of math}.
@end ifclear

@item
@AUCTeX{} tracks changes in @LaTeX{}2e 2020-02-02 release.  @AUCTeX{}
supports the improvements to @LaTeX{} font selection mechanism (NFSS).
New macros like @samp{\textsw} or @samp{\textulc} are added to font
insertion keyboard commands.
@ifset rawfile
See the section for inserting font specifiers for details.
@end ifset
@ifclear rawfile
@xref{Font Specifiers}, for details.
@end ifclear
Further, the entries in the menu @samp{LaTeX}, @samp{Insert Font} are reorganized and
adjusted accordingly.

Macros previously provided by @file{textcomp.sty} are now part of
@LaTeX{} kernel.  @AUCTeX{} tracks this change as well and support for
the new macro @samp{\legacyoldstylenums} is added.

@item
Insertion of environments in @LaTeX{} documents (i.e.@: @kbd{C-c C-e}) was
improved.  The former code had a few bugs, which sometimes resulted in
either spurious empty line or spurious comment prefix, or both,
especially when the region is active.  Those bugs are now fixed.

@item
More bugs fixed, other minor features implemented.
@end itemize

@heading News in 12.2

@itemize @bullet
@item
@AUCTeX{} reflects the changes in @LaTeX{}2e 2019-10-01 release.
@samp{filecontents} environment now takes an optional argument and can
be used anywhere in a document.  The macros @samp{\Ref} and
@samp{\labelformat} are moved from @file{varioref.sty} to @LaTeX{}
kernel.  @samp{amsmath} has a new macro @samp{\overunderset}.

@item
A new method is implemented in @previewlatex{} to adjust the foreground
colors of generated images to those of Emacs, when the @LaTeX{} command
produces @acronym{PDF}.  The traditional method became invalid because
of the change introduced in Ghostscript 9.27.  Unfortunately, the new
method doesn't work due to a bug in Ghostscript 9.27 and is valid only
for Ghostscript > 9.27.  There is also a fallback method for gs 9.27
users which displays plain ``black on white'' images.  For successful
function of @previewlatex{}, the users are encouraged to set up the new
user option @code{preview-pdf-color-adjust-method} to choose appropriate
option among the three: new, traditional and fallback method.

@item
@AUCTeX{} has support for the Flymake package in Emacs 26 or newer.  To
enable, call @kbd{M-x flymake-mode @key{RET}} or add this to your
@file{.emacs} file:
@lisp
(add-hook 'LaTeX-mode-hook #'flymake-mode)
@end lisp

@item
The way the option @code{TeX-record-buffer} is used was corrected.  It
was used in just the opposite way as the document says.  Erase the
customization if you have customized this option since it now acts in
reverse to your expectation.

@item
A former customize option @code{japanese-TeX-command-list} is removed.
Use @code{japanese-TeX-engine-default}, or if it's really necessary,
customize @code{TeX-command-list} directly if the task which the option
used to carry is required.

@item
Support for standard @LaTeX{} without e-@TeX{} extension is now very
limited.  It doesn't work if raw @TeX{} code is put on the command line
to invoke @command{latex} command.  It also fails for region compilation (@kbd{C-c
C-r} and so on) with documents of non-ascii file name.  In addition, it
no longer works with @previewlatex{}.  We consider this incompatibility
is permissible because e-@TeX{} extension is enabled for standard
@LaTeX{} by default long ago.  @LaTeX{} variants such as Xe@LaTeX{} and
Lua@LaTeX{} are not affected.

@item
Key binds in Texinfo mode are improved.  Typing @kbd{$}, @kbd{^},
@kbd{_} and @kbd{\} now just self-inserts without pointless side effects
in Texinfo mode.

In addition, the option @code{TeX-electric-escape} is now effective in
Texinfo mode.  When it is enabled, typing @kbd{@@} will invoke
@code{TeX-electric-macro} offering completion in similar style with
other @TeX{} modes of @AUCTeX{}.

@item
Fontification support for @samp{biblatex} package is improved and
updated to macros provided by package version 3.12.  For qualified
lists, at least 2 mandatory arguments are fontified.

@item
Support for column specifiers @samp{w} and @samp{W} provided by
@samp{array} package is added to @file{array.el}.  The correct counting
of columns only works when the @samp{align} parameter is enclosed in
braces, e.g., @samp{w@{l@}@{3cm@}}.  The short version @samp{wl@{3cm@}}
is not supported.

@item
Entries for @samp{PDF Tools} are added in
@code{TeX-view-program-list-builtin} for Windows and macOS.  This viewer
can be configured under these operating systems with an entry like this
in an init file:
@lisp
(setq TeX-view-program-selection '((output-pdf "PDF Tools")))
@end lisp

@item
Several other bugs were fixed, many minor features were added.
@end itemize

@heading News in 12.1

@itemize @bullet
@item
@AUCTeX{} now requires GNU Emacs 24 or higher.  Support for XEmacs has
been dropped.

@item
Besides the change in the supported version of Emacs, there has been no
functional change in this release, which is equivalent to version 11.92.
@end itemize

@heading News in 11.92

@itemize @bullet
@item
@previewlatex{} is compatible with Ghostscript 9.22 where the operator
@samp{.runandhide} is removed.  All occurrences of @samp{.runandhide} in
@previewlatex{} are replaced by alternative code making it work with
Ghostscript 9.22 again.

@item
@AUCTeX{} has a new customize option
@code{TeX-math-input-method-off-regexp}.  When you begin to input a math
formula, the current input method is turned off if its name matches this
regular expression.

In fact this variable was introduced long before, but has not been
documented in info files nor turned into a customize option with
@code{defcustom} until this release.

@item
The window system focus is pulled back to Emacs when viewing with
evince-compatible viewers if a new customize option
@code{TeX-view-evince-keep-focus} is non-nil.

@item
The usual dose of bug fixes was administered.
@end itemize

@heading News in 11.91

@itemize @bullet
@item
Now @AUCTeX{} has a logo.  The @LaTeX{} code to create it is available
in the @file{etc/} directory of the package.

@item
Add support for @command{upmendex}, an extension of @command{makeindex}
capable of sorting indexes by unicode based ICU.

@item
Fix @previewlatex{} to interact correctly with Japanese @LaTeX{}.  The
parsing routine was made robust not to be confused by the 7-bit encoding
of Japanese text and the necessary option to @LaTeX{} command is kept
even when preamble caching is enabled.

@item
The new ``Glossaries'' entry in @code{TeX-command-list} runs the command
@command{makeglossaries}.

@item
Fontification of control symbols has been improved.  Characters defined
in @code{font-latex-match-simple-exclude-list} do not receive any
fontification.  In Doc@TeX{} mode, the character @samp{_} is removed
from @code{font-latex-match-simple-exclude-list} in order to fontify
macros like @samp{\__module_foo:nnn} correctly.

@item
Fontification of math environments has been improved.  Optional and/or
mandatory argument(s) to environments are not fontified.

@item
@file{preview.sty} loads @file{luatex85.sty} if possible and should be
compatible with newer lua@TeX{} versions.

@item
@AUCTeX{} has a new customize option @code{TeX-ispell-verb-delimiters}.
This string contains usual characters used as delimiters for in-line
verbatim macros like @samp{\verb}.  Text between delimiters after an
in-line verbatim macro will be skipped during spell checking.

@item
Fontification of in-line verbatim macros has been improved.
@file{font-latex.el} recognizes an optional or a mandatory argument for
macros like @samp{\Verb} from @file{fancyvrb.sty}, @samp{\mint} and
@samp{\mintinline} from @file{minted.sty} and fontifies verbatim content
correctly.

@item
@AUCTeX{} can put and parse labels in optional argument of environments.
Inserting labels is done by new function
@code{LaTeX-env-label-as-keyval}.  A new customize option
@code{LaTeX-listing-label} is available as prefix to labels in code
typesetting environments, e.g.@: @samp{lstlisting} environment provided by
@samp{listings} package.  @code{LaTeX-listing-label} defaults to
@code{lst:}.  Parsing of labels for later referencing relies on two
requirements:
@enumerate
@item
Label should come as last key-value argument, and
@item
label must be enclosed in braces, e.g.
@example
\begin@{lstlisting@}[caption=Some Caption,label=@{lst:foo@}]
...
\end@{lstlisting@}
@end example
@end enumerate

@item
The function @code{LaTeX-label} now takes a second optional argument
@code{NO-INSERT}.  When non-@code{nil}, @code{LaTeX-label} reads a label
and returns it as a string.  This argument is also passed to any
function bound to @code{LaTeX-label-function} (see next item).

@item
@strong{Incompatible change:} The signature for the function passed with
the customize option @code{LaTeX-label-function} has changed.  The
function bound to this variable is now expected to take an optional
second argument @code{NO-INSERT}.  When this argument is non-@code{nil},
the function should read and only return a label as a string; insertion
is done by another function.

@item
Directory local variables were ineffective for
@code{japanese-latex-mode} and @code{japanese-plain-tex-mode}.  This bug
was fixed.  (This was actually done in @AUCTeX{} 11.90, but not
advertised)

@item
The output of Japanese text from Japanese @TeX{} engines is decoded
correctly for most cases, according to the encoding of the @TeX{}
documents and the locale.  The difference between MS Windows, macOS and
unix-like OS is taken into account.  (This was actually done in
@AUCTeX{} 11.90, but not advertised)

@item
Quite a few new @LaTeX{} packages are supported.

@item
As usual, many bugs were fixed.

@end itemize

@heading News in 11.90

@itemize @bullet
@item
In addition to the completion performed by @code{TeX-complete-symbol},
@AUCTeX{} now also supports the new Emacs standard completion-at-point
facility (see the Emacs command @code{completion-at-point}).  This also
means that modern completion UIs like @i{company-mode} work out of the
box in @TeX{} and @LaTeX{} buffers.
@ifclear rawfile
@xref{Completion}, for details.
@end ifclear

@item
Completion is now aware of being inside a math environment and then
completes math macros.

@item
@AUCTeX{} is able to display several levels of super- and subscripts,
each one raised above and a bit smaller than its basis.  For this
feature, have a look at the customize options
@code{font-latex-fontify-script} (especially the new values
@code{multi-level} and @code{invisible}) and
@code{font-latex-fontify-script-max-level}.  Also, the script characters
@samp{^} and @samp{_} are also fontified with a special face named
@code{font-latex-script-char-face}.
@ifclear rawfile
@xref{Fontification of math}, for details.
@end ifclear

@item
Parsing of format specification in various tabular environments has been
improved.  The function @code{LaTeX-insert-item} (@kbd{C-c @key{LFD}})
inserts suitable number of ampersands for @samp{*@{num@}@{cols@}}
constructs.  Style files for @LaTeX{} packages @samp{tabularx},
@samp{tabulary}, @samp{longtable}, @samp{dcolumn} and @samp{siunitx} are
adapted to take advantage of this improvement.

@item
@AUCTeX{} has a new Ispell dictionary @file{tex-ispell.el} for macros
and environments which will be skipped during spell checking.  The
activiation of this feature is controlled by a new customize option
@code{TeX-ispell-extend-skip-list}, which is set to @code{t} and
activated by default.

@item
@AUCTeX{} has a new customize option @code{TeX-raise-frame-function}
that is currently only used by Evince and Atril inverse search to raise
the Emacs frame.

@item
When inserting a new float, @AUCTeX{} will now prompt for a
short-caption if the length of the caption provided is greater than a
certain size.  This size is controlled via a new user option
@code{LaTeX-short-caption-prompt-length}.

@item
Parsing of the compilation log has been reworked.  You should encounter
fewer mistaken files while navigating through errors and warnings.

@item
Two new user options, @code{TeX-ignore-warnings} and
@code{TeX-suppress-ignored-warnings}, allow ignoring certain warnings
after compilation of the document.
@ifclear rawfile
@xref{Ignoring warnings}, for details.
@end ifclear

@item
A new option, @code{TeX-PDF-from-DVI}, controls if and how to produce a
@acronym{PDF} file by converting a @acronym{DVI} file.  This supersedes
@code{TeX-PDF-via-dvips-ps2pdf} which is still recognized but marked as
obsolete and may be removed in future releases.

@item
Support for a number of external viewers has been added:
@itemize
@item
Atril viewer.  Forward and inverse search requires version 1.9.1 or
later to work.

@item
dviout viewer on Windows.  Note that this setup works when
@code{TeX-source-correlate-method} is set to use @samp{source-specials}
for @acronym{DVI}, e.g.:
@lisp
(setq TeX-source-correlate-method
      '((dvi . source-specials)
        (pdf . synctex)))
@end lisp
which is the default.

@item
SumatraPDF viewer on Windows.

@item
Zathura viewer.  Forward and inverse search requires a recent version of
the program to work (3.4 or later).
@end itemize

@item
A new function, @code{TeX-documentation-texdoc}, for reading
documentation with @samp{texdoc} has been added.  @code{TeX-doc} is
still available but now @kbd{C-c ?} runs
@code{TeX-documentation-texdoc}.

@item
@AUCTeX{} has a new custom option
@code{LaTeX-reftex-cite-format-auto-activate} which controls the
automatic activation of citation formats provided by Ref@TeX{} when a style
file is loaded and Ref@TeX{} is enabled.  Currently, @file{biblatex.el},
@file{harvard.el}, @file{jurabib.el} and @file{natbib.el} use this
feature.  If you have customized @code{reftex-cite-format} and want to
use your settings, you should set this variable to @code{nil}.

@item
@AUCTeX{} now has limited support for the TikZ package.  For the moment,
this includes some basic support for prompting the user of arguments to
the @samp{\draw} macro.

@item
The style @file{graphicx.el} went through a bigger overhaul.  The
optional argument of command @samp{\includegraphics} now supports
key-val query; keys can independently be chosen anytime by pressing the
@key{,} key.  As a side effect, the variable
@code{LaTeX-includegraphics-options-alist} is now no-op and is removed
from @file{tex-style.el}.  You can safely remove any customization of it
from your init file.  The mandatory argument of @samp{\includegraphics}
knows about image file extensions supported by the used engine and
offers them for inclusion.

@item
Support for other @LaTeX{} packages was improved, and style files for
several new packages were added.

@item
Many bugs were crushed along the way.
@end itemize

@heading News in 11.89

@itemize @bullet
@item
You can now run all commands needed to compile a document and then open
the viewer with a single command: @code{TeX-command-run-all}, bound to
@kbd{C-c C-a}.

@item
Commands such as @samp{LaTeX} and @samp{View} can now be executed conveniently on the
current section (or part, chapter, subsection, etc).  See
@code{LaTeX-command-section} and
@code{LaTeX-command-section-change-level}.
@ifclear rawfile
@xref{Starting a Command}, for details.
@end ifclear

@item
Forward and backward search with Evince now also work when only a region
of the document is compiled/viewed.

@item
To open the PDF output file you can now use also PDF Tools, a document
viewer for Emacs.  With it, as a plus, forward and backward search is
accurate at word level.

@item
With new option @code{TeX-PDF-via-dvips-ps2pdf} it is possible to
compile a document to @acronym{DVI} and then convert it to @acronym{PDF}
using @command{dvips}--@command{ps2pdf} before viewing it.

@item
New option @code{TeX-file-line-error} allows to select file:line:error
style for error messages.

@item
Indent @samp{\[...\]} math mode as a regular environment by default.

@item
Now @AUCTeX{} suggests to run @command{makeindex} when appropriate.

@item
@code{TeX-view-program-list} can contain, as third optional element of
each item, the name of the executable(s) needed to open the viewer.

@item
@code{TeX-expand-list} variable has been split into
@code{TeX-expand-list} and @code{TeX-expand-list-builtin}.  Only the
former is intended to be customized by the user, the latter contains
built-in expanders.  You might want to keep in @code{TeX-expand-list}
only new expansion strings.

@item
Before running commands like @TeX{} and @LaTeX{}, now @AUCTeX{} performs
some checks.  If @code{TeX-check-TeX} is non-nil, it will test whether a
working @TeX{} distribution is actually present in the system and
available to Emacs.  Instead, when @code{TeX-check-engine} is non-nil,
before running @LaTeX{} commands @AUCTeX{} will check whether the
correct engine has been set, based upon known restrictions posed by
@LaTeX{} packages.

@item
Basic support to @ConTeXt{} Mark IV has been added.  Users can now
select the Mark version to be used with new option
@code{ConTeXt-Mark-version}, and @AUCTeX{} is able to catch error
messages in the output log of a Mark IV document.

@item
Support for tons of @LaTeX{} packages has been added.

@item
Numbers of bugs have been fixed, many minor features have been added.
@end itemize

@heading News in 11.88

@itemize @bullet
@item
@code{TeX-PDF-mode} is now enabled by default.

@item
Now @code{TeX-previous-error} works with @TeX{} commands if the new
option @code{TeX-parse-all-errors} is non-nil, which is the default.
When this option is non-nil, an overview of errors and warnings reported
by the @TeX{} compiler can be opened with @kbd{M-x TeX-error-overview
@key{RET}}.
@ifclear rawfile
@xref{Debugging}, for details.
@end ifclear

@item
Style file authors are encouraged to distinguish common from expert
macros and environments, and mark the latter using
@code{TeX-declare-expert-macros} and
@code{LaTeX-declare-expert-environments}.

Users can then restrict completion using
@code{TeX-complete-expert-commands}.

@item
Management of @LaTeX{} package options in the parser was improved.  You
might need to reparse your documents, especially if you loaded the
@samp{babel} package with language options.

@item
Now you can insert @samp{$...$} or @samp{\(...\)} by typing a single
@kbd{$}.  To do this, customize the new option @samp{TeX-electric-math}.
@code{TeX-math-close-double-dollar} was removed.
@ifclear rawfile
@xref{Quotes}, for details.
@end ifclear

@item
@kbd{C-c @key{RET} documentclass @key{RET}} completes with all available
@LaTeX{} classes, if the @code{TeX-arg-input-file-search} variable is
non-nil.  Completion for class options of the standard @LaTeX{} classes
is provided as well.

@item
New user options @code{LaTeX-default-author},
@code{LaTeX-fontspec-arg-font-search},
@code{LaTeX-fontspec-font-list-default}, @code{TeX-date-format}, and
@code{TeX-insert-braces-alist}.  A new possible value
(@code{show-all-optional-args}) for
@code{TeX-insert-macro-default-style} was added.  The default value of
@code{TeX-source-correlate-method} has been changed.

@item
@samp{biblatex} support was greatly expanded.  If parsing is enabled,
@AUCTeX{} looks at @samp{backend} option to decide whether to use Biber
or Bib@TeX{}.  The @code{LaTeX-biblatex-use-Biber} variable was changed to
be file local only and is no more customizable.

@item
With some @LaTeX{} classes, the default environment suggested by
@code{LaTeX-environment} (@kbd{C-c C-e}) when the current environment is
@samp{document} was changed.  With @samp{beamer} class the default
environment is @samp{frame}, with @samp{letter} it is @samp{letter},
with @samp{slides} it is @samp{slide}.

@item
Brace pairing feature was enhanced in @LaTeX{} documents.  Support for
@samp{\bigl}, @samp{\Bigl}, @samp{\biggl} and @samp{\Biggl}, the same
as the one for @samp{\left}, was added to @code{TeX-insert-macro}.
For example, @kbd{C-c @key{RET} bigl @key{RET} ( @key{RET}} inserts
@samp{\bigl(\bigr)}.

You can insert brace pair @samp{()}, @samp{@{@}} and @samp{[]} by typing
a single left brace if the new user option
@code{LaTeX-electric-left-right-brace} is enabled.

Macros @samp{\langle}, @samp{\lfloor} and @samp{\lceil}, which produce
the left part of the paired braces, are treated similarly as @samp{(},
@samp{@{} and @samp{[} during the course of @code{TeX-insert-macro}.
@ifclear rawfile
@xref{Quotes}, for details.
@end ifclear

@item
Support for dozens of @LaTeX{} packages was added.

@item
Tabular-like environments (@samp{tabular}, @samp{tabular*}, @samp{tabularx}, @samp{tabulary}, @samp{array},
@samp{align}, ...) are indented in a nicer and more informative way when the
column values of a table line are written across multiple lines in the
tex file.

@item
The suitable number of ampersands are inserted when you insert @samp{array},
@samp{tabular} and @samp{tabular*} environments with @kbd{C-c C-e}.  Similar
experience is obtained if you terminate rows in these environments with
@kbd{C-c @key{LFD}}.  It supplies line break macro @samp{\\} and inserts
the suitable number of ampersands on the next line.

Similar supports are provided for various @samp{amsmath} environments.

@ifclear rawfile
@xref{Tabular-like}, for details.
@end ifclear

@item
Commands for narrowing to a group (@code{TeX-narrow-to-group}) and to
@LaTeX{} environments (@code{LaTeX-narrow-to-environment}) were added.

@item
Now arbitrary options can be passed to the @TeX{} processor on a
per file basis using the @code{TeX-command-extra-options} option.
@ifclear rawfile
@xref{Processor Options}, for details.
@end ifclear

@item
Now @kbd{C-c C-e document @key{RET}}, in an empty document, prompts for
@samp{\usepackage} macros in addition to @samp{\documentclass}.

@item
@code{TeX-add-style-hook} has now a third argument to tell @AUCTeX{} for
which dialect (@LaTeX{}, Texinfo or Bib@TeX{}) the style hook is
registers. Labelling style hook by dialect will avoid applying them not
in the right context.

@item
There have been lots of bug fixes and feature additions.
@end itemize

@heading News in 11.87

@itemize @bullet
@item
@AUCTeX{} now supports Biber in conjunction with biblatex in addition to
Bib@TeX{}.

@item
Each @AUCTeX{} mode now has its own abbrev table.  On Emacsen which
provide the possibility to inherit abbrevs from other tables, the
abbrevs from the Text mode abbrev table are available as well.  Newly
defined abbrevs are written to the mode-specific tables, though.

@item
The file @samp{tex-fptex.el} was removed.

@item
Forward/backward search for Evince has been improved.  If Emacs is
compiled with DBUS support and a recent Evince version (3.x) is
installed, the communication goes over the desktop bus instead of the
command line, resulting in more accurate positioning of point in Emacs
and highlighting of the target paragraph in Evince.

@item
A problem where Ghostscript threw an @samp{/invalidfileaccess} error when
running @previewlatex{} was fixed.

@item
A lot of smaller fixes and additions have been made.
@end itemize


@heading News in 11.86

@itemize @bullet
@item
Parsing of @LaTeX{} output was improved.  It is now less likely that
@AUCTeX{} opens a non-existent file upon calling @code{TeX-next-error};
a problem for example encountered when using MiK@TeX{} 2.8.  In addition
quoted file names as emitted by MiK@TeX{} are now supported.

@item
A new framework for the definition and selection of viewers was
implemented.  If you have customizations regarding viewers you will have
to redo them in this new framework or reenable the old one.
@ifset rawfile
See the section on viewers in the manual for details.
@end ifset
@ifclear rawfile
@xref{Starting Viewers}, for details.
@end ifclear

@item
Comprehensive editing support for PSTricks was added.

@item
Support for various @LaTeX{} packages was added, e.g.@: @samp{tabularx},
@samp{CJK}, and @samp{hyperref}.

@item
An easy way to switch between @TeX{} engines (PDF@TeX{}, Lua@TeX{},
Xe@TeX{}, Omega) was added.

@item
Support for Sync@TeX{} was added.  This involves the command line
options for @LaTeX{} and the viewer.

@item
Folding can now be customized to use macro arguments as replacement
text.

@item
@samp{preview.sty} now works with Xe@TeX{}.

@item
A lot of smaller and larger bugs have been squashed.
@end itemize

@heading News in 11.85

@itemize @bullet

@item
Font locking has been improved significantly.  It is now less prone to
color bleeding which could lead to high resource usage.  In addition it
now includes information about @LaTeX{} macro syntax and can indicate
syntactically incorrect macros in @LaTeX{} mode.

@item
The license was updated to GPLv3.

@item
Support for the nomencl, flashcards and comment @LaTeX{} packages as
well as the Icelandic language option of babel were added.

@item
Support for folding of math macros was added.

@item
Lots of minor bugs in features and documentation fixed.
@end itemize

@heading News in 11.84

@itemize @bullet

@item
There have been problems with the @option{-without-texmf-dir} option to
@samp{configure} when the value of @option{-with-kpathsea-sep} was set or
determined for an installation system with a default different from that
of the runtime system.  @code{with-kpathsea-sep} has been removed; the
setting is now usually determined at runtime.

Due to this and other problems, @previewlatex{} in the released XEmacs
package failed under Windows or with anything except recent 21.5
XEmacsen.

@item
@AUCTeX{} and @previewlatex{} have been changed in order to accommodate
file names containing spaces.  @previewlatex{} now tolerates bad
PostScript code polluting the stack (like some Omega fonts).

@item
@samp{preview.sty} had in some cases failed to emit PostScript header
specials.

@item
Support for folding of comments was added.

@item
The @code{polish} language option of the babel @LaTeX{} package as well as
the polski @LaTeX{} package are now supported.  Most notably this means
that @AUCTeX{} will help to insert quotation marks as defined by @file{polish.sty}
(@code{"`..."'}) and @file{polski.sty} (@code{,,...''}).

@item
The @TeX{} tool bar is now available and enabled by default in plain
@TeX{} mode.
@ifclear rawfile
@xref{Processing Facilities}.
@end ifclear

@item
Bug fix in the display of math subscripts and superscripts.

@item
Bug fix @code{TeX-doc} for Emacs 21.

@item
There has been quite a number of other bug fixes to various features and
documentation across the board.

@end itemize

@heading News in 11.83

@itemize @bullet
@item
The new function @code{TeX-doc} provides easy access to documentation
about commands and packages or information related to @TeX{} and friends
in general.
@ifset rawfile
It is accessible with the key binding @kbd{C-c ?} or the
@samp{Find Documentation...} entry in the mode menus.
@end ifset
@ifclear rawfile
@xref{Documentation}.
@end ifclear

@item
You can now get rid of generated intermediate and output files by means
of the new @samp{Clean} and @samp{Clean All} entries in
@code{TeX-command-list} accessible with @kbd{C-c C-c} or the Command
menu.
@ifclear rawfile
@xref{Cleaning}.
@end ifclear

@item
Support for forward search with PDF files was added.  That means you can
jump to a place in the output file corresponding to the position in the
source file.
@ifset rawfile
Currently this only works if you use the pdfsync @LaTeX{} package and
xpdf as your PDF viewer.  The accuracy is in the range of +/-1 page.
@end ifset
@ifclear rawfile
@xref{Viewing}.
@end ifclear

Adding support for this feature required the default value of the
variable @code{TeX-output-view-style} to be changed.  Please make sure
you either remove any customizations overriding the new default or
incorporate the changes into your customizations if you want to use this
feature.

@item
@TeX{} error messages of the @option{-file-line-error} kind are now
understood in @AUCTeX{} and @previewlatex{} (parsers are still
separate).

@item
Bug fix in XyM@TeX{} support.

@item
The @LaTeX{} tool bar is now enabled by default.
@ifclear rawfile
@xref{Processing Facilities}.
@end ifclear

@end itemize

@heading News in 11.82

@itemize @bullet
@item
Support for the MinionPro @LaTeX{} package was added.

@item
Warnings and underfull/overfull boxes are now being indicated in the
echo area after a @LaTeX{} run, if the respective debugging options are
activated with @code{TeX-toggle-debug-warnings} (@kbd{C-c C-t C-w}) or
@code{TeX-toggle-debug-bad-boxes} (@kbd{C-c C-t C-b}).  In this case
@code{TeX-next-error} will find these warnings in addition to normal
errors.

The key binding @kbd{C-c C-w} for @code{TeX-toggle-debug-bad-boxes}
(which was renamed from @code{TeX-toggle-debug-boxes}) now is
deprecated.

@item
@AUCTeX{} now can automatically insert a pair of braces after typing
@key{_} or @key{^} in math constructs if the new variable
@code{TeX-electric-sub-and-superscript} is set to a non-nil value.

@item
Some language-specific support for French was added.  There now is
completion support for the commands provided by the @samp{frenchb} (and
@samp{francais}) options of the babel @LaTeX{} package and easier input
of French quotation marks (@code{\og ...\fg}) which can now be
inserted by typing @key{"}.

@item
Completion support for options of some @LaTeX{} packages was added.

@item
@ifclear rawfile
@cindex @file{auctex.el}
@cindex @file{tex-site.el}
@end ifclear
Already in version 11.81 the way to activate @AUCTeX{} changed
substantially.  This should now be done with @code{(load "auctex.el" nil
t t)} instead of the former @code{(require 'tex-site)}.  Related to this
change @file{tex-mik.el} does not load @file{tex-site.el} anymore.  That
means if you used only @code{(require 'tex-mik)} in order to activate
@AUCTeX{}, you have to add @code{(load "auctex.el" nil t t)} before the
latter statement.
@ifset rawfile
More detailed information can be found in the installation instructions
(file @file{INSTALL}).
@end ifset
@ifclear rawfile
@xref{Loading the package}.
@end ifclear

@item
Handling of verbatim constructs was consolidated across @AUCTeX{}.  This
resulted in the @fontlatex{}-specific variables
@code{font-latex-verb-like-commands}, @code{font-latex-verbatim-macros},
and @code{font-latex-verbatim-environments} being removed and the more
general variables @code{LaTeX-verbatim-macros-with-delims},
@code{LaTeX-verbatim-macros-with-braces}, and
@code{LaTeX-verbatim-environments} being added.

@item
The output of a Bib@TeX{} run is now checked for warnings and errors,
which are reported in the echo area.

@item
The aliases for @code{font-latex-title-fontify} were removed.  Use
@code{font-latex-fontify-sectioning} instead.

@item
The problem that Japanese macros where broken across lines was fixed.

@item
Various bug fixes.
@end itemize

@heading News in 11.81

@itemize @bullet
@item
@code{LaTeX-mark-section} now marks subsections of a given section as
well.  The former behavior is available via the prefix argument.

@item
@previewlatex{} which was previously available separately became a
subsystem of @AUCTeX{}.  There is no documented provision for building
or installing @previewlatex{} separately.  It is still possible to use
and install @AUCTeX{} without @previewlatex{}, however.

@item
The installation procedures have been overhauled and now also install
startup files as part of the process (those had to be copied manually
previously).  You are advised to remove previous installations of
@AUCTeX{} and @previewlatex{} before starting the installation
procedure.  A standard installation from an unmodified tarball no longer
requires Makeinfo or Perl.

Also note that the way @AUCTeX{} is supposed to be activated changed.
Instead of @code{(require 'tex-site)} you should now use @code{(load
"auctex.el" nil t t)}.  While the former method may still work, the new
method has the advantage that you can deactivate a preactivated
@AUCTeX{} with the statement @code{(unload-feature 'tex-site)} before
any of its modes have been used.  This may be important especially for
site-wide installations.

@item
Support for the babel @LaTeX{} package was added.

@item
Folding a buffer now ensures that the whole buffer is fontified before
the actual folding is carried out.  If this results in unbearably long
execution times, you can fall back to the old behavior of relying on
stealth font locking to do this job in the background by customizing the
variable @code{TeX-fold-force-fontify}.

@item
Folded content now reveals part of its original text in a tooltip or the
echo area when hovering with the mouse pointer over it.

@item
The language-specific insertion of quotation marks was generalized.  The
variables @code{LaTeX-german-open-quote},
@code{LaTeX-german-close-quote}, @code{LaTeX-german-quote-after-quote},
@code{LaTeX-italian-open-quote}, @code{LaTeX-italian-close-quote}, and
@code{LaTeX-italian-quote-after-quote} are now obsolete.  If you are not
satisfied with the default settings, you should customize
@code{TeX-quote-language-alist} instead.

@item
Similar to language-specific quote insertion, @AUCTeX{} now helps you
with hyphens in different languages as well.
@ifclear rawfile
@xref{European}, for details.
@end ifclear

@item
Fill problems in Japanese text introduced in @AUCTeX{} 11.55 were fixed.
@AUCTeX{} tries not to break lines between 1-byte and 2-byte chars.
These features will work in Chinese text, too.

@item
The scaling factor of the fontification of sectioning commands can now
be customized using the variable @code{font-latex-fontify-sectioning}.
This variable was previously called @code{font-latex-title-fontify}; In
this release we provide an alias but this will disappear in one of the
the next releases.  The faces for the sectioning commands are now called
@code{font-latex-sectioning-@var{N}-face} (@var{N}=0@dots{}5) instead of
@code{font-latex-title-@var{N}-face} (@var{N}=1@dots{}4).  Analogously
the names of the variables holding the related keyword lists were
changed from @code{font-latex-title-@var{N}-keywords} to
@code{font-latex-sectioning-@var{N}-keywords}.
@ifclear rawfile
@xref{Font Locking}, for details.
@end ifclear
Make sure to adjust your customizations.

@item
Titles in beamer slides marked by the ``\frametitle'' command are know
displayed with the new face @code{font-latex-slide-title-face}.  You can
add macros to be highlighted with this face to
@code{font-latex-match-slide-title-keywords}.

@item
Of course a lot of bugs have been fixed.
@end itemize

@heading News in 11.55

@itemize @bullet
@item
A bug was fixed which lead to the insertion of trailing whitespace
during filling.  In particular extra spaces were added to sentence
endings at the end of lines.  You can make this whitespace visible by
setting the variable @code{show-trailing-whitespace} to @code{t}.  If
you want to delete all trailing whitespace in a buffer, type @kbd{M-x
delete-trailing-whitespace @key{RET}}.

@item
A bug was fixed which lead to a @samp{*Compile-Log*} buffer popping up
when the first @LaTeX{} file was loaded in an Emacs session.

@item
On some systems the presence of an outdated Emacspeak package lead to
the error message @samp{File mode specification error: (error "Variable
binding depth exceeds max-specpdl-size")}.  Precautions were added which
prevent this error from happening.  But nevertheless, it is advised to
upgrade or uninstall the outdated Emacspeak package.

@item
The value of @code{TeX-macro-global} is not determined during
configuration anymore but at load time of @AUCTeX{}.  Consequently the
associated configuration option @option{--with-tex-input-dirs} was
removed.

@item
Support for the @LaTeX{} Japanese classes @samp{jsarticle} and
@samp{jsbook} was added.
@end itemize

@heading News in 11.54

@itemize @bullet
@item
The parser (used e.g.@: for @code{TeX-auto-generate-global}) was extended
to recognize keywords common in @LaTeX{} packages and classes, like
``\DeclareRobustCommand'' or ``\RequirePackage''.  Additionally a bug
was fixed which led to duplicate entries in @AUCTeX{} style files.

@item
Folding can now be done for paragraphs and regions besides single
constructs and the whole buffer.  With the new @code{TeX-fold-dwim}
command content can both be hidden and shown with a single key binding.
In course of these changes new key bindings for unfolding commands where
introduced.  The old bindings are still present but will be phased out
in future releases.

@item
Info files of the manual now have a .info extension.

@item
There is an experimental tool bar support now.  It is not activated by
default.  If you want to use it, add
@lisp
(add-hook 'LaTeX-mode-hook 'LaTeX-install-toolbar)
@end lisp
to your init file.

@item
The manual now contains a new chapter ``Quick Start''.  It explains the
main features and how to use them, and should be enough for a new user
to start using @AUCTeX{}.

@item
A new section ``Font Locking'' was added to the manual which explains
syntax highlighting in @AUCTeX{} and its customization.  Together with
the sections related to folding and outlining, the section is part of
the new chapter ``Display''.

@item
Keywords for syntax highlighting of @LaTeX{} constructs to be typeset in
bold, italic or typewriter fonts may now be customized.  Besides the
built-in classes, new keyword classes may be added by customizing the
variable @code{font-latex-user-keyword-classes}.  The customization
options can be found in the customization group
@code{font-latex-keywords}.

@item
Verbatim content is now displayed with the @samp{fixed-pitch} face. (GNU
Emacs only)

@item
Syntax highlighting should not spill out of verbatim content
anymore. (GNU Emacs only)

@item
Verbatim commands like @samp{\verb|...|} will not be broken anymore
during filling.

@item
You can customize the completion for graphic files with 
@code{LaTeX-includegraphics-read-file}.

@item
Support for the @LaTeX{} packages @samp{url}, @samp{listings},
@samp{jurabib} and @samp{csquotes} was added with regard to command
completion and syntax highlighting.

@item
Performance of fontification and filling was improved.

@item
Insertion of nodes in Texinfo mode now supports completion of existing
node names.

@item
Setting the variable @code{LaTeX-float} to @code{nil} now means that you
will not be prompted for the float position of figures and tables.  You
can get the old behaviour of @code{nil} by setting the variable to
@code{""}, i.e.@: an empty string.
@ifclear rawfile
See also @ref{Floats}.
@end ifclear

@item
The XEmacs-specific bug concerning @code{overlays-at} was fixed.

@item
Lots of bug fixes.
@end itemize

@heading News in 11.53

@itemize @bullet
@item
The @LaTeX{} math menu can include Unicode characters if your Emacs
built supports it.  See the variable
@ifset rawfile
@code{LaTeX-math-menu-unicode}.
@end ifset
@ifclear rawfile
@code{LaTeX-math-menu-unicode}, @ref{Mathematics}.
@end ifclear

@item
Bug fixes for XEmacs.

@c The following items weren't present at release time of 11.53:
@item
Completion for graphic files in the @TeX{} search path has been added.

@item
@command{start} is used for the viewer for MiK@TeX{} and fp@TeX{}.

@item
The variable @code{TeX-fold-preserve-comments} can now be customized to
deactivate folding in comments.
@end itemize

@heading News in 11.52
@c Not present at release time of 11.52.

@itemize @bullet
@item
Installation and menus under XEmacs work again (maybe for the first
time).

@item
Fontification of subscripts and superscripts is now disabled when the
fontification engine is not able to support it properly.

@item
Bug fixes in the build process.
@end itemize

@heading News in 11.51
@c Not present at release time of 11.51.

@itemize @bullet
@item
PDF@TeX{} and Source Special support did not work with @ConTeXt{},
this has been fixed.  Similar for Source Special support under Windows.

@item
Omega support has been added.

@item
Bug fixes in the build process.

@item
@code{TeX-fold} now supports folding of environments in Texinfo mode.
@end itemize

@heading News in 11.50

@itemize @bullet
@item
The use of source specials when processing or viewing the document can
now be controlled with the new @code{TeX-source-specials} minor mode
which can be toggled via an entry in the Command menu or the key binding
@kbd{C-c C-t C-s}.  If you have customized the variable
@code{TeX-command-list}, you have to re-initialize it for this to work.
This means to open a customization buffer for the variable by typing
@kbd{M-x customize-variable @key{RET} TeX-command-list @key{RET}}, selecting
``Erase Customization'' and do your customization again with the new
default.

@item
The content of the command menu now depends on the mode (plain @TeX{},
@LaTeX{}, @ConTeXt{} etc.).  Any former customization of the variable
@code{TeX-command-list} has to be erased.  Otherwise the command menu
and the customization will not work correctly.

@item
Support for hiding and auto-revealing macros, e.g.@: footnotes or
citations, and environments in a buffer was
@ifset rawfile
added.
@end ifset
@ifclear rawfile
added, @ref{Folding}.
@end ifclear

@item
You can now control if indentation is done upon typing @key{RET} by
customizing the variable
@ifset rawfile
@code{TeX-newline-function}.
@end ifset
@ifclear rawfile
@code{TeX-newline-function}, @ref{Indenting}.
@end ifclear

@item
Limited support for @code{doc.sty} and @code{ltxdoc.cls} (@samp{dtx}
files) was added.  The new doc@TeX{} mode provides functionality for
editing documentation parts.  This includes formatting (indenting and
filling), adding and completion of macros and environments while staying
in comments as well as syntax highlighting.  (Please note that the mode
is not finished yet.  For example syntax highlighting does not work yet
in XEmacs.)

@item
For macro completion in doc@TeX{} mode the @AUCTeX{} style files
@file{doc.el}, @file{ltxdoc.el} and @file{ltx-base.el} were included.
The latter provides general support for low-level @LaTeX{} macros and
may be used with @LaTeX{} class and style files as well.  It is
currently not loaded automatically for those files.

@item
Support for @ConTeXt{} with a separate @ConTeXt{} mode is now included.
Macro definitions for completion are available in Dutch and English.

@item
The filling and indentation code was overhauled and is now able to
format commented parts of the source syntactically correct.  Newly
available functionality and customization options are explained in the
manual.

@item
Filling and indentation in XEmacs with @previewlatex{} and activated
previews lead to the insertion of whitespace before multi-line previews.
@AUCTeX{} now contains facilities to prevent this problem.

@item
If @code{TeX-master} is set to @code{t}, @AUCTeX{} will now query for a
master file only when a new file is opened.  Existing files will be left
alone.  The new function @code{TeX-master-file-ask} (bound to @kbd{C-c
_} is provided for adding the variable manually.

@item
Sectioning commands are now shown in a larger font on display devices
which support such fontification.  The variable
@code{font-latex-title-fontify} can be customized to restore the old
appearance, i.e.@: the usage of a different color instead of a change in
size.

@item
Support for @code{alphanum.sty}, @code{beamer.cls}, @code{booktabs.sty},
@code{captcont.sty}, @code{emp.sty}, @code{paralist.sty},
@code{subfigure.sty} and @code{units.sty}/@code{nicefrac.sty} was added.
Credits go to the authors mentioned in the respective @AUCTeX{} style
files.

@item
Inserting graphics with @kbd{C-c @key{RET} includegraphics @key{RET}} was improved.
See the variable @code{LaTeX-includegraphics-options-alist}.
@c FIXME: Document this in the main part of the manual

@item
If @code{LaTeX-default-position} is @code{nil}, don't prompt for
position arguments in Tabular-like
@ifset rawfile
environments.
@end ifset
@ifclear rawfile
environments, see @ref{Tabular-like}.
@end ifclear

@item
Completion for available packages when using @kbd{C-c @key{RET} usepackage
@key{RET}} was improved on systems using the kpathsea library.

@item
The commenting functionality was fixed.  The separate functions for
commenting and uncommenting were unified in one function for paragraphs
and regions respectively which do both.

@item
Syntax highlighting can be customized to fontify quotes delimited by
either >>German<< or <<French>> quotation marks by changing the variable
@code{font-latex-quotes}.

@item
Certain @TeX{}/@LaTeX{} keywords for functions, references, variables
and warnings will now be fontified specially.  You may add your own
keywords by customizing the variables
@code{font-latex-match-function-keywords},
@code{font-latex-match-reference-keywords},
@code{font-latex-match-variable-keywords} and
@code{font-latex-match-warning-keywords}.

@item
If you include the style files @file{german} or @file{ngerman} in a
document (directly or via the @samp{babel} package), you should now
customize @code{LaTeX-german-open-quote},
@code{LaTeX-german-close-quote} and
@code{LaTeX-german-quote-after-quote} instead of @code{TeX-open-quote},
@code{TeX-close-quote} and @code{TeX-quote-after-quote} if you want to
influence the type of quote insertion.

@item
Upon viewing an output file, the right viewer and command line options
for it are now determined automatically by looking at the extension of
the output file and certain options used in the source file.  The
behavior can be adapted or extended respectively by customizing the
variable @code{TeX-output-view-style}.

@item
You can control whether @code{TeX-insert-macro} (@kbd{C-c @key{RET}}) ask for
all optional arguments by customizing the variable
@ifset rawfile
@code{TeX-insert-macro-default-style}.
@end ifset
@ifclear rawfile
@code{TeX-insert-macro-default-style}, @ref{Completion}.
@end ifclear

@item
@code{TeX-run-discard} is now able to completely detach a process that
it started.

@item
The build process was enhanced and is now based on @code{autoconf}
making installing @AUCTeX{} a mostly automatic process.  See
@ifset rawfile
the files @file{INSTALL} and @file{INSTALL.windows}
@end ifset
@ifclear rawfile
@ref{Installation} and @ref{Installation under MS Windows}
@end ifclear
for details.
@end itemize

@heading News in 11.14

@itemize @bullet
@item
Many more @LaTeX{} and @LaTeX{}2e commands are supported.
Done by Masayuki Ataka @email{ataka@@milk.freemail.ne.jp}
@end itemize

@heading News in 11.12

@itemize @bullet
@item
Support for the KOMA-Script classes.
Contributed by Mark Trettin @email{Mark.Trettin@@gmx.de}.
@end itemize

@heading News in 11.11

@itemize @bullet
@item
Support for @file{prosper.sty}, see @url{http://prosper.sourceforge.net/}.
Contributed by Phillip Lord @email{p.lord@@russet.org.uk}.
@end itemize

@heading News in 11.10

@itemize @bullet
@item
@code{comment-region} now inserts @t{%%} by default.
Suggested by "Davide G. M. Salvetti" @email{salve@@debian.org>}.
@end itemize

@heading News in 11.06

@itemize @bullet
@item
You can now switch between using the @file{font-latex} (all emacsen),
the @file{tex-font} (Emacs 21 only) or no special package for font
locking.  Customize @code{TeX-install-font-lock} for this.
@end itemize

@heading News in 11.04

@itemize @bullet
@item
Now use @t{-t landscape} by default when landscape option appears.
Suggested by Erik Frisk @email{frisk@@isy.liu.se}.
@end itemize

@heading News in 11.03

@itemize @bullet
@item
Use @file{tex-fptex.el} for fp@TeX{} support.
Contributed by Fabrice Popineau @email{Fabrice.Popineau@@supelec.fr}.
@end itemize

@heading News in 11.02

@itemize @bullet
@item
New user option @code{LaTeX-top-caption-list} specifies environments
where the caption should go at top.
Contributed by @email{ataka@@milk.freemail.ne.jp} (Masayuki Ataka).

@item
Allow explicit dimensions in @file{graphicx.sty}.
Contributed by @email{ataka@@milk.freemail.ne.jp} (Masayuki Ataka).

@item
Limited support for @file{verbatim.sty}.
Contributed by @email{ataka@@milk.freemail.ne.jp} (Masayuki Ataka).

@item
Better support for amsmath items.
Patch by @email{ataka@@milk.freemail.ne.jp} (Masayuki Ataka).

@item
More accurate error parsing.
Added by David Kastrup @email{David.Kastrup@@t-online.de}.
@end itemize

@heading News in 11.01

@itemize @bullet
@item
Bug fixes.
@end itemize

@c Local Variables:
@c mode: Texinfo
@c TeX-master: "auctex"
@c End:
