Calling this pivotal macro "def-package!" has frequently been a source
of confusion. It is a thin wrapper around use-package, and it should be
obvious that it is so. For this reason, and to match the naming
convention used with other convenience macros/wrappers, it is now
use-package!.
Also changes def-package-hook! -> use-package-hook!
The old macros are now marked obsolete and will be removed when straight
integration is merged.
The varible `TeX-mode-local-vars-hook` is not called correctly as AucTeX
reports that the major mode in a LaTeX file is `latex-mode`. Instead,
let's use `latex-mode-local-vars-hook` to enable flyspell.
This change enables disabling the feature of flyspell of immediately
spellchecking a document with:
`(setq-hook! 'TeX-mode-hook +spellcheck-immediately nil)`
Caused because use-package is creating an autoload for TeX-latex-mode as
if it were in the tex package, but it's in the latex package, instead.
Since auctex already autoloads TeX-latex-mode, there's no need to set
our own.
The +zathura, +skim, +okular and +pdf-tools module flags have been
removed in favor of +latex-viewers, which takes a list of symbols. Its
order determines the priority. The first viewer found on your system is
used.
If none of these viewers are found, it will fall back to
latex-preview-pane.
After some profiling, it turns out map-put and map-delete are 5-7x
slower (more on Emacs 25) than delq, setf/alist-get and add-to-list for
small lists (under 250 items), which is exactly how I've been using
them.
The only caveat is alist-get's signature is different on Emacs 25, thus
a polyfill is necessary in core-lib.