lang/latex: general refactor & load optimization
This commit is contained in:
parent
f2be46d60f
commit
fbce2388ab
2 changed files with 88 additions and 92 deletions
|
@ -1,5 +1,15 @@
|
|||
;;; lang/latex/autoload.el -*- lexical-binding: t; -*-
|
||||
|
||||
;;;###autoload
|
||||
(def-setting! :latex-bibtex-file (file)
|
||||
"Sets the default file RefTeX uses to search for citations."
|
||||
`(setq +latex-bibtex-file ,file))
|
||||
|
||||
;;;###autoload
|
||||
(def-setting! :latex-bibtex-dir (dir)
|
||||
"Sets the directory where AUCTeX will search for PDFs associated to BibTeX references."
|
||||
`(setq +latex-bibtex-dir ,dir))
|
||||
|
||||
;;;###autoload
|
||||
(defun +latex/LaTeX-indent-item ()
|
||||
"Provide proper indentation for LaTeX \"itemize\",\"enumerate\", and \"description\" environments.
|
||||
|
|
|
@ -10,28 +10,17 @@
|
|||
"Custom indentation level for items in enumeration-type environments")
|
||||
|
||||
|
||||
(def-setting! :latex-bibtex-file (file)
|
||||
"Sets the default file RefTeX uses to search for citations."
|
||||
`(setq +latex-bibtex-file ,file))
|
||||
|
||||
(def-setting! :latex-bibtex-dir (dir)
|
||||
"Sets the directory where AUCTeX will search for PDFs associated to BibTeX references."
|
||||
`(setq +latex-bibtex-dir ,dir))
|
||||
|
||||
|
||||
;;
|
||||
;; Plugins
|
||||
;;
|
||||
|
||||
(after! tex-site
|
||||
(after! tex
|
||||
;; Set some varibles to fontify common LaTeX commands.
|
||||
(load! "+fontification")
|
||||
(setq ;; Enable parse on load.
|
||||
TeX-parse-self t
|
||||
;; When running TeX, just save, don't ask
|
||||
TeX-save-query nil
|
||||
;; Enable parse on save.
|
||||
TeX-auto-save t
|
||||
|
||||
(setq TeX-parse-self t ; Enable parse on load.
|
||||
TeX-save-query nil ; just save, don't ask
|
||||
TeX-auto-save t ; Enable parse on save.
|
||||
;; Use hidden directories for AUCTeX files.
|
||||
TeX-auto-local ".auctex-auto"
|
||||
TeX-style-local ".auctex-style"
|
||||
|
@ -50,7 +39,8 @@
|
|||
;; (def-package! tex-style :defer t)
|
||||
|
||||
;; TeX Folding
|
||||
(add-hook 'TeX-mode-hook #'TeX-fold-mode)
|
||||
(add-hook 'TeX-mode-hook #'TeX-fold-mode))
|
||||
|
||||
|
||||
(after! latex
|
||||
(setq LaTeX-section-hook ; Add the toc entry to the sectioning hooks.
|
||||
|
@ -84,11 +74,9 @@
|
|||
;; Use chktex to search for errors in a latex file.
|
||||
(setcar (cdr (assoc "Check" TeX-command-list)) "chktex -v6 %s")
|
||||
;; Set a custom item indentation
|
||||
(setq LaTeX-indent-environment-list
|
||||
(append '(("itemize" +latex/LaTeX-indent-item)
|
||||
("enumerate" +latex/LaTeX-indent-item)
|
||||
("description" +latex/LaTeX-indent-item))
|
||||
LaTeX-indent-environment-list))
|
||||
(dolist (env '("itemize" "enumerate" "description"))
|
||||
(map-put LaTeX-indent-environment-list
|
||||
env '(+latex/LaTeX-indent-item)))
|
||||
|
||||
;;
|
||||
;; Use Okular if the user says so.
|
||||
|
@ -111,26 +99,26 @@
|
|||
(map-put TeX-view-program-list "PDF Tools" '("TeX-pdf-tools-sync-view"))
|
||||
(map-put TeX-view-program-selection 'output-pdf '("PDF Tools"))
|
||||
;; Enable auto reverting the PDF document with PDF Tools
|
||||
(add-hook 'TeX-after-compilation-finished-functions #'TeX-revert-document-buffer))))
|
||||
(add-hook 'TeX-after-compilation-finished-functions #'TeX-revert-document-buffer)))
|
||||
|
||||
|
||||
(def-package! preview
|
||||
;; The preview package is currently broken with the latest AUCTeX version
|
||||
;; ("11.90.2.2017-07-25) ... and Ghostscript 9.22. It's now fixed in AUCTeX
|
||||
;; master, so we just have to wait.
|
||||
:init
|
||||
(def-package! preview
|
||||
:hook (LaTeX-mode . LaTeX-preview-setup)
|
||||
:config
|
||||
(setq-default preview-scale 1.4
|
||||
preview-scale-function
|
||||
(lambda () (* (/ 10.0 (preview-document-pt)) preview-scale)))
|
||||
(add-hook 'LaTeX-mode-hook #'LaTeX-preview-setup))
|
||||
(lambda () (* (/ 10.0 (preview-document-pt)) preview-scale))))
|
||||
|
||||
|
||||
(def-package! latex-preview-pane
|
||||
:when (featurep! +preview-pane)
|
||||
:commands latex-preview-pane-enable
|
||||
:hook ((latex-mode LaTeX-mode) . latex-preview-pane-enable)
|
||||
:commands latex-preview-pane-mode
|
||||
:init
|
||||
(setq latex-preview-pane-multifile-mode 'auctex)
|
||||
(add-hook! (latex-mode LaTeX-mode) #'latex-preview-pane-enable)
|
||||
(map-put TeX-view-program-list "preview-pane" '(latex-preview-pane-mode))
|
||||
(map-put TeX-view-program-selection 'output-pdf '("preview-pane"))
|
||||
:config
|
||||
|
@ -141,11 +129,10 @@
|
|||
|
||||
|
||||
(def-package! reftex
|
||||
:commands turn-on-reftex
|
||||
:hook ((latex-mode LaTeX-mode) . turn-on-reftex)
|
||||
:init
|
||||
(setq reftex-plug-into-AUCTeX t
|
||||
reftex-toc-split-windows-fraction 0.3)
|
||||
(add-hook! (latex-mode LaTeX-mode) #'turn-on-reftex)
|
||||
:config
|
||||
;; Get ReTeX working with biblatex
|
||||
;; http://tex.stackexchange.com/questions/31966/setting-up-reftex-with-biblatex-citation-commands/31992#31992
|
||||
|
@ -190,6 +177,7 @@
|
|||
|
||||
(def-package! auctex-latexmk
|
||||
:when (featurep! +latexmk)
|
||||
:after-call (latex-mode-hook LaTeX-mode-hook)
|
||||
:init
|
||||
;; Pass the -pdf flag when TeX-PDF-mode is active
|
||||
(setq auctex-latexmk-inherit-TeX-PDF-mode t)
|
||||
|
@ -225,7 +213,5 @@
|
|||
|
||||
;; Nicely indent lines that have wrapped when visual line mode is activated
|
||||
(def-package! adaptive-wrap
|
||||
:commands (adaptive-wrap-prefix-mode)
|
||||
:init
|
||||
(add-hook 'LaTeX-mode-hook #'adaptive-wrap-prefix-mode)
|
||||
(setq-default adaptive-wrap-extra-indent 0))
|
||||
:hook (LaTeX-mode . adaptive-wrap-prefix-mode)
|
||||
:init (setq-default adaptive-wrap-extra-indent 0))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue