この記事はCPS Lab Advent Calender 2021の25日目の記事です.
はじめに
メリークリスマス🎉
今日から卒論,修論の時期ですね!
でも,論文書くにもLatex環境構築の壁1があります.
今回はこの環境構築について論文の書きやすさに着目して書いていきます.
要件
- すぐに見せることができる.
- loacal環境をぐちゃぐちゃにしない.
- バージョンの管理ができる.
この3つの要件を満たす環境を構築します.
イメージ
サイズの重い画像やpdfはGoogleDriveへ,その他はgithubで管理します.
また,Dockerを使うことで,ローカル環境を汚さずに済みます.2
さらに,gitで管理することでコードのバージョンまで管理することができるのです.
vscode
-
vscodeの拡張機能でLaTeX Workshopをインストールしてください.
-
vscodeで「command + ,」3で設定を開き,「latex」で検索します. settings.jsonで開いて該当箇所に下記を追記します.
"latex-workshop.latex.tools": [
{
"name": "latexmk",
"command": "latexmk",
"args": ["-synctex=1", "-interaction=nonstopmode","-file-line-error", "-outdir=%OUTDIR%", "%DOC%"]
}
],
"latex-workshop.chktex.enabled": false,
"latex-workshop.docker.enabled": true,
"latex-workshop.docker.image.latex": "tianon/latex",
"latex-workshop.latex.autoBuild.run": "onSave",
"latex-workshop.latex.outDir": "output",
"latex-workshop.synctex.afterBuild.enabled": true,
"latex-workshop.view.pdf.viewer": "tab",
"latex-workshop.latex.clean.subfolder.enabled": true,
"latex-workshop.latex.autoClean.run": "onBuilt",
"latex-workshop.latex.clean.method": "glob",
"latex-workshop.latex.clean.args": ["-c", "%TEX%"],
この設定で,「dockerの有効」,「保存で即ビルド」,「一時ファイルの削除」,「生成されるpdfのフォルダを指定」を設定しています.
詳しくは公式リファレンスを参照してください.
Docker
Docker自体の環境構築は書きません.
imageをpullしてきます.以上です.
docker pull tianon/latex
ファイルの作成
作業用のフォルダを作ってvscodeで開きます.
作業用フォルダに「.latexmkrc」を作り,下記をコピペします.
#!/usr/bin/perl
$latex = 'platex -kanji=utf8 -guess-input-enc -interaction=nonstopmode %O %S';
$bibtex = 'pbibtex -kanji=utf8 %O %B';
$dvipdf = 'dvipdfmx -p a4 %O -o %D %S';
$pdf_mode = 3;
$pdf_previewer = 'open -a Preview';
あとは,texを開いてビルドします.生成されたpdfは同じフォルダ内のoutputフォルダ内にあります.
git
githubで論文用のリポジトリを作成します.
あとは,作業フォルダで「commnd + `」でターミナルを開き,論文用のリポジトリ(hogehoge.git)を設定します.
git init .
git remote add origin hogehoge.git
重たいデータ(画像やpdf)は.gitignoreで回避するといいでしょう.
./output/*
./images/*
Google Drive
上記で.gitignoreしたフォルダをGoogleDriveに追加します.
GoogleDriveの[設定]→[フォルダを追加]で.gitignoreしたフォルダを追加します.
さいごに
以上でいい感じのLaTeX環境が整いました!!
良い卒論ライフを!