何をするか
WSL (Windows Subsystem for Linux)においてlatexmk
を使えるようにします。Vimと最終的には連携させたい(Future Plan)。いろいろなサイトを参考にしてやってみたがエラーが出て苦労したので、解決方法をまとめておく
環境
- Windows10 64bit
- W32TeX
手順
W32TeXをWindowsで使っていたのでlatexmk
自体はもともと入っています。これをWSLで使えるようにパスを通すなどします。bash上でvim ~/.profile
と押して.profile
を開きます。そして以下のようにパスを追加していきます。
export PATH=$PATH:/mnt/c/w32tex/bin
export PATH=$PATH:/mnt/c/w32tex/share/texmf/tex/latex
右辺の値は人によって違うかもしれません。ここからlatexmk
のための設定をしていきます。
まず.latexmkrc
というlatexmk
のための設定ファイルを編集します。これはいろいろなサイトに書き方が書いてあります。
最初はこれを参考にして書いてみたのですが、"platex not found"のエラーが。platex
にはパスを通したはずなのでこのエラーはなぜ起こるのか最初わかりませんでした。
このエラーの原因はWSLだと見落としがち(?)のもので、Windowsのプログラムを実行するには platex
だけでは不十分で、最後に.exe
をつけなければいけなかったのです。これを直したらちゃんと通るようになりました。
$latex = 'platex.exe -kanji=utf8 -synctex=1 -halt-on-error'; $latex_silent = 'platex -synctex=1 -halt-on-error -interaction=batchmode';
$bibtex = 'pbibtex';
$dvipdf = 'dvipdfmx.exe %O -o %D %S';
$makeindex = 'mendex %O -o %D %S';
$max_repeat = 5;
$pdf_mode = 3; #dvipdfmxを使ってPDF生成
今はlatexmk
を使ってVimのquickrun
プラグインでLaTeXのコンパイルをできるように頑張っていますが、コンパイルするとファイルが見つからないというエラーが出て途方に暮れています。解決したら、もしかしたら記事にするかもしれません。