OthloBlog - オスロブログ -

名古屋のIT系学生コミュニティOthloTechのブログです。

エンジニアのためのLaTeXとの付き合い方

【対象読者】

  • 「LaTeXでレポートを書くように」と言われた学生や、今研究室に所属している人たち

【ざっくりまとめると】

  • TeX専用のエディタはいりません!愛用エディタで書きましょう!
  • もしくは環境構築が要らないOverleafもオススメ!

こんにちは!OthloTechのにーさん(@ni_san2000)です!
大学院に進学していきなり論文を書くことになり、つい先日投稿できたので開放感に溢れております。卒論を2回分書いた気分でしたね!
さて、そんな論文執筆ばっかりやっていたので今回のお話はLaTeXについて。

TeXは自分の愛用エディタで書きましょう

macユーザーならTeXShopとか使っている人多いと思いますが、なんと自分の愛用しているエディタでTeXは書けるんです!

自分のエディタで保存したら自動で変更を検知してコンパイルしてくれるので、
超超便利なTeX環境にして、ストレスフリーなレポート執筆にしましょう。

導入の方法は色々なサイトで紹介されてますが、ここではざっくり。

ここではmacOS版を例にとって解説をします。まずは以下のコマンドを実行。Homebrewからインストールできます。

brew install caskroom/cask/brew-cask
brew cask install mactex (要ターミナル再起動)
brew install ghostscript
brew install imagemagick
brew cask install skim

続いて、MacTeXの設定です。以下のコマンドを実行。

# texの各パッケージを最新版に更新
sudo tlmgr update --self --all
# texの用紙をA4にセット
sudo tlmgr paper a4
# 漢字のフォントセットをオートでセットアップ
sudo kanji-config-updmap-sys auto

そして~/.latexmkrcを新規作成して設定をファイルに書き込みます。

#!/usr/bin/env perl
$latex            = 'platex -synctex=1 -halt-on-error';
$latex_silent     = 'platex -synctex=1 -halt-on-error -interaction=batchmode';
$bibtex           = 'pbibtex';
$biber            = 'biber --bblencoding=utf8 -u -U --output_safechars';
$dvipdf           = 'dvipdfmx %O -o %D %S';
$makeindex        = 'mendex %O -o %D %S';
$max_repeat       = 5;
$pdf_mode         = 3;
$pvc_view_file_via_temporary = 0;
$pdf_previewer    = "open -ga /Applications/Skim.app";

$latex = "find . -type f -name '*.tex' -print0 | xargs -0 sed -i '' -e 's/、/,/g' -e 's/。/./g'; platex";

なお、VSCodeを普段使いしている人は以下をsettings.jsonに追記する必要があります。

// Latex
"latex-workshop.latex.tools": [
    {
        "command": "latexmk",
        "args": [
            "-e",
            "$latex=q/platex %O -synctex=1 -interaction=nonstopmode -file-line-error %S/",
            "-e",
            "$bibtex=q/pbibtex %O %B/",
            "-e",
            "$biber=q/biber %O --bblencoding=utf8 -u -U --output_safechars %B/",
            "-e",
            "$makeindex=q/mendex %O -o %D %S/",
            "-e",
            "$dvipdf=q/dvipdfmx %O -o %D %S/",
            "-norc",
            "-pdfdvi",
            "%DOC%"
        ],
        "name": "latexmk"
    }
],
"latex-workshop.latex.recipes": [
    {
        "name": "latexmk (tex to PDF)",
        "tools": [
            "latexmk"
        ]
    }
],

あとは自分の作成した.texファイルと同じ位置までターミナルで移動して、
latexmk -pvc [作成したtexファイル].texと実行するだけ!

これで自分の好きなエディタで.texファイルを更新するたびにpdfも随時更新されるので、手軽にTeXが使えるようになります!

f:id:ni_san2000:20180605184027p:plain
AtomやSublimeなどにはシンタックスハイライトやプラグインがあるので要チェックです。

この辺りも参考にして、快適TeXライフを送りましょうね。僕も何度も参考にさせて頂きました。

teru0rc4.hatenablog.com

どうしても環境を構築したくない方へ

でもやっぱり「自分のmacに余計なツール入れたくない!」って方もいると思います。
そこでOverleafというサービスを紹介します。

f:id:ni_san2000:20180605175407p:plain

www.overleaf.com

このサービスですが、

  • リアルタイムのコンパイル
  • 複数人で同時編集
  • 編集履歴があるので遡って復元できる
  • SNSでの共有が充実している(編集可、不可でそれぞれリンクを作れる)

など便利な機能が山盛りです。
TeXを複数人で使う機会のある人は是非!CloudLaTeXなんて比じゃない便利さでした。
ちなみに僕はこれで論文を書いて投稿しました。

というわけで、今回はTeXについて自分なりの付き合い方をまとめてみました! 「LaTeXでレポートを書くように」と言われて、ため息をついてる学生に少しでも届いて欲しいです。

やっと忙しい時期が終わって一息つけるので自分のやりたい事、院生のうちにやっておくべき事をどんどんこなしていきたいと思います。
何か「これは絶対やっておけ!」という事がある人はぜひ教えてください・・・!