diff --git a/modules/lang/latex/README.org b/modules/lang/latex/README.org index 620669f40..7bdc815e7 100644 --- a/modules/lang/latex/README.org +++ b/modules/lang/latex/README.org @@ -26,28 +26,54 @@ Set these variables in your private configuration with: #+END_SRC If the variables are not set, they are ignored. +** Choose View Program +You have four options to choose from for the viewer of your PDF rendered files. +*** Okular +Use Okular as default PDF viewer. + +Activate with the flag '+okular' of the latex module in your private init.el. +#+BEGIN_SRC emacs_lisp +(latex +okular) +#+END_SRC + +*** Skim +For Mac users. Use Skim to preview your PDFs. + +Activate with the flag '+skim' of the latex module in your private init.el. +#+BEGIN_SRC emacs_lisp +(latex +skim) +#+END_SRC + +*** PDF Tools +Use the PDF Tools package to preview your PDFs. Requires the tools module ~pdf~ enabled in your configuration. +#+BEGIN_SRC emacs_lisp +(:tools pdf) +#+END_SRC + +Activate with the flag '+pdf-tools' of the latex module in your private init.el. +#+BEGIN_SRC emacs_lisp +(latex +pdf-tools=) +#+END_SRC + +*** Preview Pane +You may wish to use the old school package ~latex-preview-pane~ instead of the +other alternatives. ~latex-preview-pane~ uses a ~DocView~ instead. + +Activate with the flag '+preview-pane' of the latex module in your private init.el. +#+BEGIN_SRC emacs_lisp +(latex +preview-pane) +#+END_SRC + ** LatexMk -Use LatexMk instead of normal LaTeX to compile documents. LatexMk only needs to run once to get all references, bibliography and other things right. +Use LatexMk instead of normal LaTeX to compile documents. LatexMk only needs to +run once to get all references, bibliography and other things right. Activate with the flag '+latexmk' of the latex module in init.el. #+BEGIN_SRC emacs_lisp (latex +latexmk) #+END_SRC -** Okular -Use Okular as default PDF viewer. - -Activate with the flag '+okular' of the latex module in init.el. +You can enable both a custom view program and LatexMk with a call such as: #+BEGIN_SRC emacs_lisp -(latex +okular) -#+END_SRC - -** Preivew-Pane -Instead of using an external program to display rendered .tex files, use an emacs window to display the rendered file. - -This flag is incompatible with the ~+okular~ flag. - -Activate with the flag '+preview-pane' of the latex module in init.el. -#+BEGIN_SRC emacs_lisp -(latex +preview-pane) +(latex +latexmk +okular) #+END_SRC diff --git a/modules/lang/latex/config.el b/modules/lang/latex/config.el index f0a85e9d0..61b877c43 100644 --- a/modules/lang/latex/config.el +++ b/modules/lang/latex/config.el @@ -103,21 +103,31 @@ LaTeX-indent-environment-list)))) (after! latex - ;; Use Okular is the user says so. + ;; Use Okular if the user says so. (when (featurep! +okular) ;; Configure Okular as viewer. Including a bug fix ;; (https://bugs.kde.org/show_bug.cgi?id=373855) (add-to-list 'TeX-view-program-list '("Okular" ("okular --unique file:%o" (mode-io-correlate "#src:%n%a")))) (add-to-list 'TeX-view-program-selection - '(output-pdf "Okular")))) + '(output-pdf "Okular"))) -(after! latex + ;; Or Skim (when (featurep! +skim) (add-to-list 'TeX-view-program-list '("Skim" "/Applications/Skim.app/Contents/SharedSupport/displayline -b -g %n %o %b")) (add-to-list 'TeX-view-program-selection - '(output-pdf "Skim")))) + '(output-pdf "Skim"))) + + ;; Or PDF-tools, but only if the module is also loaded + (when (and (featurep! :tools pdf) (featurep! +pdf-tools)) + (add-to-list 'TeX-view-program-list + '("PDF Tools" ("TeX-pdf-tools-sync-view"))) + (add-to-list '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))) + (def-package! preview @@ -136,6 +146,8 @@ reftex-toc-split-windows-fraction 0.3) (unless (string-empty-p +latex-bibtex-file) (setq reftex-default-bibliography (list (expand-file-name +latex-bibtex-file)))) + (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 (setq reftex-cite-format @@ -146,8 +158,6 @@ (?f . "\\footcite[]{%l}") (?n . "\\nocite{%l}") (?b . "\\blockcquote[]{%l}{}"))) - (add-hook! (latex-mode LaTeX-mode) #'turn-on-reftex) - :config (map! :map reftex-mode-map :localleader :n ";" 'reftex-toc) (add-hook! 'reftex-toc-mode-hook diff --git a/modules/tools/pdf/config.el b/modules/tools/pdf/config.el index 55eb60b70..ee11260f1 100644 --- a/modules/tools/pdf/config.el +++ b/modules/tools/pdf/config.el @@ -12,20 +12,3 @@ (setq-default pdf-view-display-size 'fit-page) ;; turn off cua so copy works (add-hook! 'pdf-view-mode-hook (cua-mode 0))) - - -(when (featurep! :lang latex) - (after! latex - ;; add to the program list - (add-to-list 'TeX-view-program-selection - '(output-pdf "PDF Tools")) - (add-to-list 'TeX-view-program-list - '("PDF Tools" ("TeX-pdf-tools-sync-view"))) - - ;; enable document revert - (add-hook 'TeX-after-compilation-finished-functions - #'TeX-revert-document-buffer) - - ;; correlated mode - (setq TeX-source-correlate-start-server t - TeX-source-correlate-mode t)))