Changes and New Features in AUCTeX ********************************** News in 13.2 ============ • AUCTeX no longer refuses to insert dollar sign when you type ‘$’ 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 ‘TeX-refuse-unmatched-dollar’. • 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 ‘TeX-symbol-list’ and ‘LaTeX-environment-list’. • AUCTeX underlines the argument of macros which produce underlined text in the final product with ‘font-latex-underline-face’. The corresponding keyword class is called ‘underline-command’. See the section for fontification of macros if you dislike this feature and wish to deactivate it. • Support for the Sioyek document viewer is added. • AUCTeX now requires GNU Emacs 25.1 or higher. • 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 ‘RET’ without other input is shown in the prompt in parentheses prefixed with ‘default’. For this change the signature of the function ‘TeX-arg-length’ is altered. The old argument list was: (defun TeX-arg-length (optional &optional prompt initial-input definition default) whereas the new one is: (defun TeX-arg-length (optional &optional prompt default initial-input definition) Note the position change of ‘DEFAULT’. • Indenting of conditionals is improved. Code inside constructs like ‘\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 ‘algpseudocode.el’ for an example. • You can optionally enable indent inside square brackets ‘[]’ by new user options ‘TeX-indent-open-delimiters’ and ‘TeX-indent-close-delimiters’. • Now ‘tex-buf.el’ is merged into ‘tex.el’ and no longer exists. If your personal code has ‘(require 'tex-buf)’, one of the following prescriptions would serve. 1. Remove ‘(require 'tex-buf)’. 2. Replace it with ‘(require 'tex)’. 3. Replace it with ‘(require 'latex)’. • When you edit a document divided into multiple files, auto parsed information for all sub files are saved under ‘auto’ subdirectory at master directory when ‘TeX-parse-self’ and ‘TeX-auto-save’ options are enabled. Now you can have support ‘.el’ file saved under ‘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 ‘TeX-auto-save-aggregate’ to ‘nil’. • 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 ‘TeX-region-hook’ could access the free variables ‘master-buffer’ and ‘orig-buffer’. Those are now named ‘TeX-region-master-buffer’ and ‘TeX-region-orig-buffer’, respectively. News in 13.1 ============ • In math environments ‘gather’, ‘gather*’, ‘gathered’, ‘multline’ and ‘multline*’, fill commands such as ‘M-q’ and ‘C-c C-q C-e’ are disabled. This sorts out the inconsistency between those and ‘equation’, ‘displaymath’ environments, in latter of which filling is already disabled. If you want filling in such environments, customize ‘LaTeX-indent-environment-list’ to remove them. Auto fill continues to work in such environment anyway. In addition, AUCTeX adds support of alignment at ‘&’ sign in ‘align’-like environments such as ‘alignat’, ‘aligned’ and so on, as well as ‘matrix’-like environments such as ‘pmatrix’, ‘bmatrix’ and so on. • Now two commands ‘Texindex’ and ‘Texi2dvi’ are available when you type ‘C-c C-c’ in Texinfo mode. The command ‘Texindex’ runs ‘texindex’ on index files and ‘Texi2dvi’ runs ‘pdftexi2dvi’ or ‘texi2dvi’ according to the value of ‘TeX-PDF-mode’. So you can typeset Texinfo documents into PDF or DVI format from within AUCTeX. • AUCTeX’s own help messages for LaTeX errors are now shown only for LaTeX runs. AUCTeX shows raw error/warning messages found in ‘.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 ‘TeX-error-description-list’ can no longer have a fallback entry that matches any error. If your customized value includes such entry, typically ‘(".*" . "No help available")’, please remove it. • Two functions ‘TeX-split-string’ and ‘TeX-assoc’ are now obsolete and will be removed in future release. If your personal code uses these functions, use ‘split-string’ and ‘assoc-string’ instead. • The function ‘TeX-read-key-val’ now accepts a function call as second argument. This change should help AUCTeX style writers who use ‘TeX-arg-key-val’ and have to deal with dynamic key-values. Example of usage: (TeX-add-style-hook "foo" (lambda () (TeX-add-symbols '("bar" (TeX-arg-key-val (function-returning-key-val)))))) • Since AUCTeX 12.2, ‘C-x C-w’ accidentally disabled the parse on save in that buffer, even when you enabled ‘TeX-auto-save’ option. This bug was fixed. • AUCTeX now requires GNU Emacs 24.3 or higher. • Old implementations for viewers were discarded, as announced long before. The variables ‘TeX-output-view-style’ and ‘TeX-view-style’ have no effect now. The former placeholders ‘%v’ and ‘%vv’ in ‘TeX-command-list’ are ignored. • 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. − Entries added to the customization variable ‘TeX-expand-list’ also had access to variables ‘command’ and ‘pos’. Those are now properly declared and named ‘TeX-expand-command’ and ‘TeX-expand-pos’. − Entries added to the customization variable ‘TeX-expand-list’ had access to a variable ‘file’ which was bound to ‘TeX-active-master’, i.e., it evaluated to either the master or region file. This usage must be replaced with either ‘TeX-active-master’ or ‘TeX-active-master-with-quotes’. − Viewer entries in ‘TeX-view-program-list’ also had access to a variable ‘file’ which was bound to the name of the master or region file without extension. Instead, the function ‘TeX-active-master’ has to be used now. − Macro argument parsing functions could set a variable ‘exit-mark’ to the buffer position where point should be left after all arguments have been read. This variable is now named ‘TeX-exit-mark’. − The functions in ‘LaTeX-section-hook’ had access or modified the previously undeclared variables ‘title’, ‘name’, ‘level’, ‘done-mark’, and ‘toc’. These variables are now properly declared and have the ‘LaTeX-’ prefix, e.g., ‘LaTeX-done-mark’. − The functions in ‘ConTeXt-numbered-section-hook’ and ‘ConTeXt-unnumbered-section-hook’ had access or modified the previously undeclared variables ‘title’, ‘name’, ‘level’, ‘done-mark’, and ‘reference’. These variables are now properly declared and have the ‘ConTeXt-’ prefix, e.g., ‘ConTeXt-title’. − The functions in ‘TeX-translate-location-hook’ could access and modify the free variables ‘file’, ‘line’, ‘error’, ‘offset’, ‘context’, and ‘string’. Those are now properly declared variables with the prefix ‘TeX-translate-location-’, e.g., ‘TeX-translate-location-file’. • The constant ‘LaTeX-dialect’ has been renamed to ‘TeX-dialect’ and moved from ‘latex.el’ to ‘tex.el’. ‘LaTeX-dialect’ now is an obsolete alias. • The style ‘latexinfo.el’ is removed from AUCTeX. ‘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. • The style ‘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. • AUCTeX has preliminary support for LaTeX-hooks. Hooks provided by LaTeX kernel are known and available for completion in ‘\AddToHook’, ‘\RemoveFromHook’ and ‘\AddToHookNext’. • 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 preview-latex files, in an output directory. To use this feature, set the new user option ‘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 ‘\include’ command. • Many other bugs were fixed. News in 12.3 ============ • Support for ‘PSTricks’ is now PDF-oriented. AUCTeX no longer turns off PDF mode for ‘PSTricks’ documents even without ‘pst-pdf’. It now sets up ‘TeX-PDF-from-DVI’ option so that PDF output is generated when ‘TeX-PDF-mode’ is enabled (default). Users who want DVI output should disable PDF mode explicitly by file local variable, or customize ‘TeX-PDF-mode’ to ‘nil’. • The function ‘font-latex-update-font-lock’ has been obsoleted in order to fix ‘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 ‘font-lock-flush’ in the former case and ‘font-latex-set-syntactic-keywords’ in the latter case. The function ‘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. • Math expression highlighting was improved. Highlighting for documents with a lot of inline math expressions ‘$...$’ won’t get scrambled now (‘bug#33139’). In addition, it is no longer recommended to customize ‘font-latex-math-environments’. Use ‘texmathp-tex-commands’ instead. • AUCTeX tracks changes in LaTeX2e 2020-02-02 release. AUCTeX supports the improvements to LaTeX font selection mechanism (NFSS). New macros like ‘\textsw’ or ‘\textulc’ are added to font insertion keyboard commands. See the section for inserting font specifiers for details. Further, the entries in the menu ‘LaTeX’, ‘Insert Font’ are reorganized and adjusted accordingly. Macros previously provided by ‘textcomp.sty’ are now part of LaTeX kernel. AUCTeX tracks this change as well and support for the new macro ‘\legacyoldstylenums’ is added. • Insertion of environments in LaTeX documents (i.e. ‘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. • More bugs fixed, other minor features implemented. News in 12.2 ============ • AUCTeX reflects the changes in LaTeX2e 2019-10-01 release. ‘filecontents’ environment now takes an optional argument and can be used anywhere in a document. The macros ‘\Ref’ and ‘\labelformat’ are moved from ‘varioref.sty’ to LaTeX kernel. ‘amsmath’ has a new macro ‘\overunderset’. • A new method is implemented in preview-latex to adjust the foreground colors of generated images to those of Emacs, when the LaTeX command produces 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 preview-latex, the users are encouraged to set up the new user option ‘preview-pdf-color-adjust-method’ to choose appropriate option among the three: new, traditional and fallback method. • AUCTeX has support for the Flymake package in Emacs 26 or newer. To enable, call ‘M-x flymake-mode ’ or add this to your ‘.emacs’ file: (add-hook 'LaTeX-mode-hook #'flymake-mode) • The way the option ‘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. • A former customize option ‘japanese-TeX-command-list’ is removed. Use ‘japanese-TeX-engine-default’, or if it’s really necessary, customize ‘TeX-command-list’ directly if the task which the option used to carry is required. • 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 ‘latex’ command. It also fails for region compilation (‘C-c C-r’ and so on) with documents of non-ascii file name. In addition, it no longer works with preview-latex. We consider this incompatibility is permissible because e-TeX extension is enabled for standard LaTeX by default long ago. LaTeX variants such as XeLaTeX and LuaLaTeX are not affected. • Key binds in Texinfo mode are improved. Typing ‘$’, ‘^’, ‘_’ and ‘\’ now just self-inserts without pointless side effects in Texinfo mode. In addition, the option ‘TeX-electric-escape’ is now effective in Texinfo mode. When it is enabled, typing ‘@’ will invoke ‘TeX-electric-macro’ offering completion in similar style with other TeX modes of AUCTeX. • Fontification support for ‘biblatex’ package is improved and updated to macros provided by package version 3.12. For qualified lists, at least 2 mandatory arguments are fontified. • Support for column specifiers ‘w’ and ‘W’ provided by ‘array’ package is added to ‘array.el’. The correct counting of columns only works when the ‘align’ parameter is enclosed in braces, e.g., ‘w{l}{3cm}’. The short version ‘wl{3cm}’ is not supported. • Entries for ‘PDF Tools’ are added in ‘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: (setq TeX-view-program-selection '((output-pdf "PDF Tools"))) • Several other bugs were fixed, many minor features were added. News in 12.1 ============ • AUCTeX now requires GNU Emacs 24 or higher. Support for XEmacs has been dropped. • 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. News in 11.92 ============= • preview-latex is compatible with Ghostscript 9.22 where the operator ‘.runandhide’ is removed. All occurrences of ‘.runandhide’ in preview-latex are replaced by alternative code making it work with Ghostscript 9.22 again. • AUCTeX has a new customize option ‘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 ‘defcustom’ until this release. • The window system focus is pulled back to Emacs when viewing with evince-compatible viewers if a new customize option ‘TeX-view-evince-keep-focus’ is non-nil. • The usual dose of bug fixes was administered. News in 11.91 ============= • Now AUCTeX has a logo. The LaTeX code to create it is available in the ‘etc/’ directory of the package. • Add support for ‘upmendex’, an extension of ‘makeindex’ capable of sorting indexes by unicode based ICU. • Fix preview-latex 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. • The new “Glossaries” entry in ‘TeX-command-list’ runs the command ‘makeglossaries’. • Fontification of control symbols has been improved. Characters defined in ‘font-latex-match-simple-exclude-list’ do not receive any fontification. In DocTeX mode, the character ‘_’ is removed from ‘font-latex-match-simple-exclude-list’ in order to fontify macros like ‘\__module_foo:nnn’ correctly. • Fontification of math environments has been improved. Optional and/or mandatory argument(s) to environments are not fontified. • ‘preview.sty’ loads ‘luatex85.sty’ if possible and should be compatible with newer luaTeX versions. • AUCTeX has a new customize option ‘TeX-ispell-verb-delimiters’. This string contains usual characters used as delimiters for in-line verbatim macros like ‘\verb’. Text between delimiters after an in-line verbatim macro will be skipped during spell checking. • Fontification of in-line verbatim macros has been improved. ‘font-latex.el’ recognizes an optional or a mandatory argument for macros like ‘\Verb’ from ‘fancyvrb.sty’, ‘\mint’ and ‘\mintinline’ from ‘minted.sty’ and fontifies verbatim content correctly. • AUCTeX can put and parse labels in optional argument of environments. Inserting labels is done by new function ‘LaTeX-env-label-as-keyval’. A new customize option ‘LaTeX-listing-label’ is available as prefix to labels in code typesetting environments, e.g. ‘lstlisting’ environment provided by ‘listings’ package. ‘LaTeX-listing-label’ defaults to ‘lst:’. Parsing of labels for later referencing relies on two requirements: 1. Label should come as last key-value argument, and 2. label must be enclosed in braces, e.g. \begin{lstlisting}[caption=Some Caption,label={lst:foo}] ... \end{lstlisting} • The function ‘LaTeX-label’ now takes a second optional argument ‘NO-INSERT’. When non-‘nil’, ‘LaTeX-label’ reads a label and returns it as a string. This argument is also passed to any function bound to ‘LaTeX-label-function’ (see next item). • *Incompatible change:* The signature for the function passed with the customize option ‘LaTeX-label-function’ has changed. The function bound to this variable is now expected to take an optional second argument ‘NO-INSERT’. When this argument is non-‘nil’, the function should read and only return a label as a string; insertion is done by another function. • Directory local variables were ineffective for ‘japanese-latex-mode’ and ‘japanese-plain-tex-mode’. This bug was fixed. (This was actually done in AUCTeX 11.90, but not advertised) • 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) • Quite a few new LaTeX packages are supported. • As usual, many bugs were fixed. News in 11.90 ============= • In addition to the completion performed by ‘TeX-complete-symbol’, AUCTeX now also supports the new Emacs standard completion-at-point facility (see the Emacs command ‘completion-at-point’). This also means that modern completion UIs like company-mode work out of the box in TeX and LaTeX buffers. • Completion is now aware of being inside a math environment and then completes math macros. • 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 ‘font-latex-fontify-script’ (especially the new values ‘multi-level’ and ‘invisible’) and ‘font-latex-fontify-script-max-level’. Also, the script characters ‘^’ and ‘_’ are also fontified with a special face named ‘font-latex-script-char-face’. • Parsing of format specification in various tabular environments has been improved. The function ‘LaTeX-insert-item’ (‘C-c ’) inserts suitable number of ampersands for ‘*{num}{cols}’ constructs. Style files for LaTeX packages ‘tabularx’, ‘tabulary’, ‘longtable’, ‘dcolumn’ and ‘siunitx’ are adapted to take advantage of this improvement. • AUCTeX has a new Ispell dictionary ‘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 ‘TeX-ispell-extend-skip-list’, which is set to ‘t’ and activated by default. • AUCTeX has a new customize option ‘TeX-raise-frame-function’ that is currently only used by Evince and Atril inverse search to raise the Emacs frame. • 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 ‘LaTeX-short-caption-prompt-length’. • Parsing of the compilation log has been reworked. You should encounter fewer mistaken files while navigating through errors and warnings. • Two new user options, ‘TeX-ignore-warnings’ and ‘TeX-suppress-ignored-warnings’, allow ignoring certain warnings after compilation of the document. • A new option, ‘TeX-PDF-from-DVI’, controls if and how to produce a PDF file by converting a DVI file. This supersedes ‘TeX-PDF-via-dvips-ps2pdf’ which is still recognized but marked as obsolete and may be removed in future releases. • Support for a number of external viewers has been added: • Atril viewer. Forward and inverse search requires version 1.9.1 or later to work. • dviout viewer on Windows. Note that this setup works when ‘TeX-source-correlate-method’ is set to use ‘source-specials’ for DVI, e.g.: (setq TeX-source-correlate-method '((dvi . source-specials) (pdf . synctex))) which is the default. • SumatraPDF viewer on Windows. • Zathura viewer. Forward and inverse search requires a recent version of the program to work (3.4 or later). • A new function, ‘TeX-documentation-texdoc’, for reading documentation with ‘texdoc’ has been added. ‘TeX-doc’ is still available but now ‘C-c ?’ runs ‘TeX-documentation-texdoc’. • AUCTeX has a new custom option ‘LaTeX-reftex-cite-format-auto-activate’ which controls the automatic activation of citation formats provided by RefTeX when a style file is loaded and RefTeX is enabled. Currently, ‘biblatex.el’, ‘harvard.el’, ‘jurabib.el’ and ‘natbib.el’ use this feature. If you have customized ‘reftex-cite-format’ and want to use your settings, you should set this variable to ‘nil’. • 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 ‘\draw’ macro. • The style ‘graphicx.el’ went through a bigger overhaul. The optional argument of command ‘\includegraphics’ now supports key-val query; keys can independently be chosen anytime by pressing the <,> key. As a side effect, the variable ‘LaTeX-includegraphics-options-alist’ is now no-op and is removed from ‘tex-style.el’. You can safely remove any customization of it from your init file. The mandatory argument of ‘\includegraphics’ knows about image file extensions supported by the used engine and offers them for inclusion. • Support for other LaTeX packages was improved, and style files for several new packages were added. • Many bugs were crushed along the way. News in 11.89 ============= • You can now run all commands needed to compile a document and then open the viewer with a single command: ‘TeX-command-run-all’, bound to ‘C-c C-a’. • Commands such as ‘LaTeX’ and ‘View’ can now be executed conveniently on the current section (or part, chapter, subsection, etc). See ‘LaTeX-command-section’ and ‘LaTeX-command-section-change-level’. • Forward and backward search with Evince now also work when only a region of the document is compiled/viewed. • 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. • With new option ‘TeX-PDF-via-dvips-ps2pdf’ it is possible to compile a document to DVI and then convert it to PDF using ‘dvips’–‘ps2pdf’ before viewing it. • New option ‘TeX-file-line-error’ allows to select file:line:error style for error messages. • Indent ‘\[...\]’ math mode as a regular environment by default. • Now AUCTeX suggests to run ‘makeindex’ when appropriate. • ‘TeX-view-program-list’ can contain, as third optional element of each item, the name of the executable(s) needed to open the viewer. • ‘TeX-expand-list’ variable has been split into ‘TeX-expand-list’ and ‘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 ‘TeX-expand-list’ only new expansion strings. • Before running commands like TeX and LaTeX, now AUCTeX performs some checks. If ‘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 ‘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. • Basic support to ConTeXt Mark IV has been added. Users can now select the Mark version to be used with new option ‘ConTeXt-Mark-version’, and AUCTeX is able to catch error messages in the output log of a Mark IV document. • Support for tons of LaTeX packages has been added. • Numbers of bugs have been fixed, many minor features have been added. News in 11.88 ============= • ‘TeX-PDF-mode’ is now enabled by default. • Now ‘TeX-previous-error’ works with TeX commands if the new option ‘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 ‘M-x TeX-error-overview ’. • Style file authors are encouraged to distinguish common from expert macros and environments, and mark the latter using ‘TeX-declare-expert-macros’ and ‘LaTeX-declare-expert-environments’. Users can then restrict completion using ‘TeX-complete-expert-commands’. • Management of LaTeX package options in the parser was improved. You might need to reparse your documents, especially if you loaded the ‘babel’ package with language options. • Now you can insert ‘$...$’ or ‘\(...\)’ by typing a single ‘$’. To do this, customize the new option ‘TeX-electric-math’. ‘TeX-math-close-double-dollar’ was removed. • ‘C-c documentclass ’ completes with all available LaTeX classes, if the ‘TeX-arg-input-file-search’ variable is non-nil. Completion for class options of the standard LaTeX classes is provided as well. • New user options ‘LaTeX-default-author’, ‘LaTeX-fontspec-arg-font-search’, ‘LaTeX-fontspec-font-list-default’, ‘TeX-date-format’, and ‘TeX-insert-braces-alist’. A new possible value (‘show-all-optional-args’) for ‘TeX-insert-macro-default-style’ was added. The default value of ‘TeX-source-correlate-method’ has been changed. • ‘biblatex’ support was greatly expanded. If parsing is enabled, AUCTeX looks at ‘backend’ option to decide whether to use Biber or BibTeX. The ‘LaTeX-biblatex-use-Biber’ variable was changed to be file local only and is no more customizable. • With some LaTeX classes, the default environment suggested by ‘LaTeX-environment’ (‘C-c C-e’) when the current environment is ‘document’ was changed. With ‘beamer’ class the default environment is ‘frame’, with ‘letter’ it is ‘letter’, with ‘slides’ it is ‘slide’. • Brace pairing feature was enhanced in LaTeX documents. Support for ‘\bigl’, ‘\Bigl’, ‘\biggl’ and ‘\Biggl’, the same as the one for ‘\left’, was added to ‘TeX-insert-macro’. For example, ‘C-c bigl ( ’ inserts ‘\bigl(\bigr)’. You can insert brace pair ‘()’, ‘{}’ and ‘[]’ by typing a single left brace if the new user option ‘LaTeX-electric-left-right-brace’ is enabled. Macros ‘\langle’, ‘\lfloor’ and ‘\lceil’, which produce the left part of the paired braces, are treated similarly as ‘(’, ‘{’ and ‘[’ during the course of ‘TeX-insert-macro’. • Support for dozens of LaTeX packages was added. • Tabular-like environments (‘tabular’, ‘tabular*’, ‘tabularx’, ‘tabulary’, ‘array’, ‘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. • The suitable number of ampersands are inserted when you insert ‘array’, ‘tabular’ and ‘tabular*’ environments with ‘C-c C-e’. Similar experience is obtained if you terminate rows in these environments with ‘C-c ’. It supplies line break macro ‘\\’ and inserts the suitable number of ampersands on the next line. Similar supports are provided for various ‘amsmath’ environments. • Commands for narrowing to a group (‘TeX-narrow-to-group’) and to LaTeX environments (‘LaTeX-narrow-to-environment’) were added. • Now arbitrary options can be passed to the TeX processor on a per file basis using the ‘TeX-command-extra-options’ option. • Now ‘C-c C-e document ’, in an empty document, prompts for ‘\usepackage’ macros in addition to ‘\documentclass’. • ‘TeX-add-style-hook’ has now a third argument to tell AUCTeX for which dialect (LaTeX, Texinfo or BibTeX) the style hook is registers. Labelling style hook by dialect will avoid applying them not in the right context. • There have been lots of bug fixes and feature additions. News in 11.87 ============= • AUCTeX now supports Biber in conjunction with biblatex in addition to BibTeX. • 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. • The file ‘tex-fptex.el’ was removed. • 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. • A problem where Ghostscript threw an ‘/invalidfileaccess’ error when running preview-latex was fixed. • A lot of smaller fixes and additions have been made. News in 11.86 ============= • Parsing of LaTeX output was improved. It is now less likely that AUCTeX opens a non-existent file upon calling ‘TeX-next-error’; a problem for example encountered when using MiKTeX 2.8. In addition quoted file names as emitted by MiKTeX are now supported. • 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. See the section on viewers in the manual for details. • Comprehensive editing support for PSTricks was added. • Support for various LaTeX packages was added, e.g. ‘tabularx’, ‘CJK’, and ‘hyperref’. • An easy way to switch between TeX engines (PDFTeX, LuaTeX, XeTeX, Omega) was added. • Support for SyncTeX was added. This involves the command line options for LaTeX and the viewer. • Folding can now be customized to use macro arguments as replacement text. • ‘preview.sty’ now works with XeTeX. • A lot of smaller and larger bugs have been squashed. News in 11.85 ============= • 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. • The license was updated to GPLv3. • Support for the nomencl, flashcards and comment LaTeX packages as well as the Icelandic language option of babel were added. • Support for folding of math macros was added. • Lots of minor bugs in features and documentation fixed. News in 11.84 ============= • There have been problems with the ‘-without-texmf-dir’ option to ‘configure’ when the value of ‘-with-kpathsea-sep’ was set or determined for an installation system with a default different from that of the runtime system. ‘with-kpathsea-sep’ has been removed; the setting is now usually determined at runtime. Due to this and other problems, preview-latex in the released XEmacs package failed under Windows or with anything except recent 21.5 XEmacsen. • AUCTeX and preview-latex have been changed in order to accommodate file names containing spaces. preview-latex now tolerates bad PostScript code polluting the stack (like some Omega fonts). • ‘preview.sty’ had in some cases failed to emit PostScript header specials. • Support for folding of comments was added. • The ‘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 ‘polish.sty’ (‘"`..."'’) and ‘polski.sty’ (‘,,...''’). • The TeX tool bar is now available and enabled by default in plain TeX mode. • Bug fix in the display of math subscripts and superscripts. • Bug fix ‘TeX-doc’ for Emacs 21. • There has been quite a number of other bug fixes to various features and documentation across the board. News in 11.83 ============= • The new function ‘TeX-doc’ provides easy access to documentation about commands and packages or information related to TeX and friends in general. It is accessible with the key binding ‘C-c ?’ or the ‘Find Documentation...’ entry in the mode menus. • You can now get rid of generated intermediate and output files by means of the new ‘Clean’ and ‘Clean All’ entries in ‘TeX-command-list’ accessible with ‘C-c C-c’ or the Command menu. • 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. 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. Adding support for this feature required the default value of the variable ‘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. • TeX error messages of the ‘-file-line-error’ kind are now understood in AUCTeX and preview-latex (parsers are still separate). • Bug fix in XyMTeX support. • The LaTeX tool bar is now enabled by default. News in 11.82 ============= • Support for the MinionPro LaTeX package was added. • 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 ‘TeX-toggle-debug-warnings’ (‘C-c C-t C-w’) or ‘TeX-toggle-debug-bad-boxes’ (‘C-c C-t C-b’). In this case ‘TeX-next-error’ will find these warnings in addition to normal errors. The key binding ‘C-c C-w’ for ‘TeX-toggle-debug-bad-boxes’ (which was renamed from ‘TeX-toggle-debug-boxes’) now is deprecated. • AUCTeX now can automatically insert a pair of braces after typing <_> or <^> in math constructs if the new variable ‘TeX-electric-sub-and-superscript’ is set to a non-nil value. • Some language-specific support for French was added. There now is completion support for the commands provided by the ‘frenchb’ (and ‘francais’) options of the babel LaTeX package and easier input of French quotation marks (‘\og ...\fg’) which can now be inserted by typing <">. • Completion support for options of some LaTeX packages was added. • Already in version 11.81 the way to activate AUCTeX changed substantially. This should now be done with ‘(load "auctex.el" nil t t)’ instead of the former ‘(require 'tex-site)’. Related to this change ‘tex-mik.el’ does not load ‘tex-site.el’ anymore. That means if you used only ‘(require 'tex-mik)’ in order to activate AUCTeX, you have to add ‘(load "auctex.el" nil t t)’ before the latter statement. More detailed information can be found in the installation instructions (file ‘INSTALL’). • Handling of verbatim constructs was consolidated across AUCTeX. This resulted in the font-latex-specific variables ‘font-latex-verb-like-commands’, ‘font-latex-verbatim-macros’, and ‘font-latex-verbatim-environments’ being removed and the more general variables ‘LaTeX-verbatim-macros-with-delims’, ‘LaTeX-verbatim-macros-with-braces’, and ‘LaTeX-verbatim-environments’ being added. • The output of a BibTeX run is now checked for warnings and errors, which are reported in the echo area. • The aliases for ‘font-latex-title-fontify’ were removed. Use ‘font-latex-fontify-sectioning’ instead. • The problem that Japanese macros where broken across lines was fixed. • Various bug fixes. News in 11.81 ============= • ‘LaTeX-mark-section’ now marks subsections of a given section as well. The former behavior is available via the prefix argument. • preview-latex which was previously available separately became a subsystem of AUCTeX. There is no documented provision for building or installing preview-latex separately. It is still possible to use and install AUCTeX without preview-latex, however. • 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 preview-latex 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 ‘(require 'tex-site)’ you should now use ‘(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 ‘(unload-feature 'tex-site)’ before any of its modes have been used. This may be important especially for site-wide installations. • Support for the babel LaTeX package was added. • 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 ‘TeX-fold-force-fontify’. • Folded content now reveals part of its original text in a tooltip or the echo area when hovering with the mouse pointer over it. • The language-specific insertion of quotation marks was generalized. The variables ‘LaTeX-german-open-quote’, ‘LaTeX-german-close-quote’, ‘LaTeX-german-quote-after-quote’, ‘LaTeX-italian-open-quote’, ‘LaTeX-italian-close-quote’, and ‘LaTeX-italian-quote-after-quote’ are now obsolete. If you are not satisfied with the default settings, you should customize ‘TeX-quote-language-alist’ instead. • Similar to language-specific quote insertion, AUCTeX now helps you with hyphens in different languages as well. • 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. • The scaling factor of the fontification of sectioning commands can now be customized using the variable ‘font-latex-fontify-sectioning’. This variable was previously called ‘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 ‘font-latex-sectioning-N-face’ (N=0...5) instead of ‘font-latex-title-N-face’ (N=1...4). Analogously the names of the variables holding the related keyword lists were changed from ‘font-latex-title-N-keywords’ to ‘font-latex-sectioning-N-keywords’. Make sure to adjust your customizations. • Titles in beamer slides marked by the “\frametitle” command are know displayed with the new face ‘font-latex-slide-title-face’. You can add macros to be highlighted with this face to ‘font-latex-match-slide-title-keywords’. • Of course a lot of bugs have been fixed. News in 11.55 ============= • 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 ‘show-trailing-whitespace’ to ‘t’. If you want to delete all trailing whitespace in a buffer, type ‘M-x delete-trailing-whitespace ’. • A bug was fixed which lead to a ‘*Compile-Log*’ buffer popping up when the first LaTeX file was loaded in an Emacs session. • On some systems the presence of an outdated Emacspeak package lead to the error message ‘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. • The value of ‘TeX-macro-global’ is not determined during configuration anymore but at load time of AUCTeX. Consequently the associated configuration option ‘--with-tex-input-dirs’ was removed. • Support for the LaTeX Japanese classes ‘jsarticle’ and ‘jsbook’ was added. News in 11.54 ============= • The parser (used e.g. for ‘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. • Folding can now be done for paragraphs and regions besides single constructs and the whole buffer. With the new ‘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. • Info files of the manual now have a .info extension. • There is an experimental tool bar support now. It is not activated by default. If you want to use it, add (add-hook 'LaTeX-mode-hook 'LaTeX-install-toolbar) to your init file. • 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. • 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”. • 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 ‘font-latex-user-keyword-classes’. The customization options can be found in the customization group ‘font-latex-keywords’. • Verbatim content is now displayed with the ‘fixed-pitch’ face. (GNU Emacs only) • Syntax highlighting should not spill out of verbatim content anymore. (GNU Emacs only) • Verbatim commands like ‘\verb|...|’ will not be broken anymore during filling. • You can customize the completion for graphic files with ‘LaTeX-includegraphics-read-file’. • Support for the LaTeX packages ‘url’, ‘listings’, ‘jurabib’ and ‘csquotes’ was added with regard to command completion and syntax highlighting. • Performance of fontification and filling was improved. • Insertion of nodes in Texinfo mode now supports completion of existing node names. • Setting the variable ‘LaTeX-float’ to ‘nil’ now means that you will not be prompted for the float position of figures and tables. You can get the old behaviour of ‘nil’ by setting the variable to ‘""’, i.e. an empty string. • The XEmacs-specific bug concerning ‘overlays-at’ was fixed. • Lots of bug fixes. News in 11.53 ============= • The LaTeX math menu can include Unicode characters if your Emacs built supports it. See the variable ‘LaTeX-math-menu-unicode’. • Bug fixes for XEmacs. • Completion for graphic files in the TeX search path has been added. • ‘start’ is used for the viewer for MiKTeX and fpTeX. • The variable ‘TeX-fold-preserve-comments’ can now be customized to deactivate folding in comments. News in 11.52 ============= • Installation and menus under XEmacs work again (maybe for the first time). • Fontification of subscripts and superscripts is now disabled when the fontification engine is not able to support it properly. • Bug fixes in the build process. News in 11.51 ============= • PDFTeX and Source Special support did not work with ConTeXt, this has been fixed. Similar for Source Special support under Windows. • Omega support has been added. • Bug fixes in the build process. • ‘TeX-fold’ now supports folding of environments in Texinfo mode. News in 11.50 ============= • The use of source specials when processing or viewing the document can now be controlled with the new ‘TeX-source-specials’ minor mode which can be toggled via an entry in the Command menu or the key binding ‘C-c C-t C-s’. If you have customized the variable ‘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 ‘M-x customize-variable TeX-command-list ’, selecting “Erase Customization” and do your customization again with the new default. • The content of the command menu now depends on the mode (plain TeX, LaTeX, ConTeXt etc.). Any former customization of the variable ‘TeX-command-list’ has to be erased. Otherwise the command menu and the customization will not work correctly. • Support for hiding and auto-revealing macros, e.g. footnotes or citations, and environments in a buffer was added. • You can now control if indentation is done upon typing by customizing the variable ‘TeX-newline-function’. • Limited support for ‘doc.sty’ and ‘ltxdoc.cls’ (‘dtx’ files) was added. The new docTeX 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.) • For macro completion in docTeX mode the AUCTeX style files ‘doc.el’, ‘ltxdoc.el’ and ‘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. • Support for ConTeXt with a separate ConTeXt mode is now included. Macro definitions for completion are available in Dutch and English. • 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. • Filling and indentation in XEmacs with preview-latex and activated previews lead to the insertion of whitespace before multi-line previews. AUCTeX now contains facilities to prevent this problem. • If ‘TeX-master’ is set to ‘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 ‘TeX-master-file-ask’ (bound to ‘C-c _’ is provided for adding the variable manually. • Sectioning commands are now shown in a larger font on display devices which support such fontification. The variable ‘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. • Support for ‘alphanum.sty’, ‘beamer.cls’, ‘booktabs.sty’, ‘captcont.sty’, ‘emp.sty’, ‘paralist.sty’, ‘subfigure.sty’ and ‘units.sty’/‘nicefrac.sty’ was added. Credits go to the authors mentioned in the respective AUCTeX style files. • Inserting graphics with ‘C-c includegraphics ’ was improved. See the variable ‘LaTeX-includegraphics-options-alist’. • If ‘LaTeX-default-position’ is ‘nil’, don’t prompt for position arguments in Tabular-like environments. • Completion for available packages when using ‘C-c usepackage ’ was improved on systems using the kpathsea library. • 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. • Syntax highlighting can be customized to fontify quotes delimited by either >>German<< or <> quotation marks by changing the variable ‘font-latex-quotes’. • 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 ‘font-latex-match-function-keywords’, ‘font-latex-match-reference-keywords’, ‘font-latex-match-variable-keywords’ and ‘font-latex-match-warning-keywords’. • If you include the style files ‘german’ or ‘ngerman’ in a document (directly or via the ‘babel’ package), you should now customize ‘LaTeX-german-open-quote’, ‘LaTeX-german-close-quote’ and ‘LaTeX-german-quote-after-quote’ instead of ‘TeX-open-quote’, ‘TeX-close-quote’ and ‘TeX-quote-after-quote’ if you want to influence the type of quote insertion. • 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 ‘TeX-output-view-style’. • You can control whether ‘TeX-insert-macro’ (‘C-c ’) ask for all optional arguments by customizing the variable ‘TeX-insert-macro-default-style’. • ‘TeX-run-discard’ is now able to completely detach a process that it started. • The build process was enhanced and is now based on ‘autoconf’ making installing AUCTeX a mostly automatic process. See the files ‘INSTALL’ and ‘INSTALL.windows’ for details. News in 11.14 ============= • Many more LaTeX and LaTeX2e commands are supported. Done by Masayuki Ataka News in 11.12 ============= • Support for the KOMA-Script classes. Contributed by Mark Trettin . News in 11.11 ============= • Support for ‘prosper.sty’, see . Contributed by Phillip Lord . News in 11.10 ============= • ‘comment-region’ now inserts %% by default. Suggested by "Davide G. M. Salvetti" >. News in 11.06 ============= • You can now switch between using the ‘font-latex’ (all emacsen), the ‘tex-font’ (Emacs 21 only) or no special package for font locking. Customize ‘TeX-install-font-lock’ for this. News in 11.04 ============= • Now use -t landscape by default when landscape option appears. Suggested by Erik Frisk . News in 11.03 ============= • Use ‘tex-fptex.el’ for fpTeX support. Contributed by Fabrice Popineau . News in 11.02 ============= • New user option ‘LaTeX-top-caption-list’ specifies environments where the caption should go at top. Contributed by (Masayuki Ataka). • Allow explicit dimensions in ‘graphicx.sty’. Contributed by (Masayuki Ataka). • Limited support for ‘verbatim.sty’. Contributed by (Masayuki Ataka). • Better support for amsmath items. Patch by (Masayuki Ataka). • More accurate error parsing. Added by David Kastrup . News in 11.01 ============= • Bug fixes.