<LaTeX> LaTeX 執筆環境を VSCode へ移行する
今まで LaTeX は Emacs で書いていたのですが,諸々の開発環境も VSCode へ移行していることもあり,合わせて LaTeX も移行することにしました.
エディタの乗り換え
今までは Emacs を愛好していたのですが,時代も時代なのでモダンなエディタに乗り換えようと思い,行き着いたのが VSCode でした.
色々な記事を見かけますが,現在最強のエディタかもしれません.
使用する拡張
2つの拡張を使います.これだけで殆ど十分といって過言ではありません.
LaTeX Workshop
おそらく最も定番な VSCode の LaTeX 用拡張だと思います.
シンタックスハイライト,自動補完,自動タイプセット, PDF View 等,これ1つで全てやってくれます.
Settings
元々 Latexmk を使っていたのですが,デフォルトのままだと ~/.latexmkrc
を読み込んでくれません. uplatex
を使いたいとかそういう事情もあるので,なんとかしたいです.
そこで,設定を読ませるのではなく, Code/User/setting.json
に設定を書き加えることで,なんとかします.
"latex-workshop.latex.tools": [ { "name": "latexmk", "command": "latexmk", "args": [ "-e", "$latex=q/uplatex %O -synctex=1 -halt-on-error -shell-escape %S/", "-e", "$latex_silent=q/uplatex %O -synctex=1 -halt-on-error -interaction=batchmode -shell-escape %S/", "-e", "$bibtex=q/upbibtex %O %B/", "-e", "$dvipdf=q/dvipdfmx %O -o %D %S/", "-e", "$makeindex=q/upmendex %O -o %D %S/", "-e", "$max_repeat=5", ] } ]
Latexmk の設定はお好みで.
Usage
多分よく使うコマンドとそのデフォルトキーバインドです.
name | command | keybind |
---|---|---|
Build LaTeX project | latex-workshop.build |
Ctrl + Alt + B |
Clean up auxiliary files | latex-workshop.clean |
Ctrl + Alt + C |
View LaTeX PDF file | latex-workshop.view |
Ctrl + Alt + V |
View LaTeX PDF file in VSCode tab | latex-workshop.tab |
Nothing |
SyncTeX from cursor | latex-workshop.synctex |
Ctrl + Alt + J |
CaTeX
LaTeX Workshop で十分じゃないか!という説もありますが,元々 Emacs で使っていた YaTeX というクソ便利モードがあり,このモードの機能が欲しいという説もあります.
例えば,次のようなものです.
- 数式記号等のイメージ補完.
\begin{}
\end{}
や\section{}
の挿入(スニペット).
この辺りを実現してくれるのが CaTeX です.
機能自体はシンプルなものなので,公式を参照するのが良いと思います.
公式ブログに細かい解説があります.
Settings
私の場合,自分のキーバインドとぶつかったりしたのと自分の好みを反映し,次のようにしました.
{ "key": "ctrl+c ctrl+s", "command": "extension.complete.catex.section" }, { "key": "ctrl+c s", "command": "-extension.complete.catex.section" }, { "key": "ctrl+c ctrl+b", "command": "extension.complete.catex.environment" }, { "key": "ctrl+c b", "command": "-extension.complete.catex.environment" }, { "key": "ctrl+c ctrl+l", "command": "extension.complete.catex.large" }, { "key": "ctrl+c l", "command": "-extension.complete.catex.large" }
ところで
大学から離れたら,もう LaTeX することもなさそう…