爆速で日本語LaTeX執筆環境を用意する

公開日:2019-06-24
最終更新:2019-06-27
※この記事は外部サイト(https://korosuke613.hatenablog.com/entry/2...)からのクロス投稿です

LaTeX環境を用意するのって大変ですよね。

環境は汚すし時間はかかるし、Macの場合、font周りで訳のわからないことになるし...

今回は、そういった煩わしさを消し去って、爆速でLaTeX執筆環境を用意する方法を教えます。

概要

VS Codeの拡張機能である、Remote - Containersを利用して、LaTeXのビルド環境(uplatexやlatexmk)および、執筆環境(エディタやsynctex)を構築するための、Dockerイメージおよび、テンプレートを作成しました。

以下で、使い方等を説明します。

うれしいこと

  • Dockerイメージ内に、LaTeX環境があるため、ホストマシンの環境を汚さない!
  • インストールが速い!楽!
  • latexindentでフォーマットできる!
  • synctexが使える!

インストール

インストール方法を記します。ちなみに、イメージのOSはubuntu18.04で、TeX Liveは2017(だったはず)です。

必要なもの

Docker、docker-composeが動作するPC

この手法では、Dockerとdocker-composeを利用します。

インストールしておいてください。(参考)

Visual Studio Code

この手法では、LaTeXを実際に執筆するエディタとして、Visual Studio Codeを利用します。
インストールしておいてください。(参考)

"Remote - Containers"をVS Codeにインストール

https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers

上記のリンク先の、Installをクリックすると、VS Codeが立ち上がり、拡張機能をインストールできる。

左下が、上の画像のようになればOK

テンプレートをgit clone

git clone --depth=1 https://github.com/korosuke613/texlive-ja-devcontainer-template.git  

git cloneできない人は、ここから、zipをダウンロードしてください。

テンプレートをVS Codeで開く

メニューバーの、ファイル開く...をクリックし、先ほどcloneした、texlive-ja-devcontainer-templateフォルダを開く。

たぶんこんな感じになるはず。

Reopen in Containerする

フォルダを開いたら、

の青いボタン(><)をクリックする。

上の方に選択肢がでるので、Reopen Folder in Containerをクリックすると、Dockerイメージのpull、Remote機能の適用、docker-composeが始まる。

イメージサイズがけっこうデカい()ので、初回は結構時間がかかる。(5,6分?)


準備ができたら、上の画像のような感じになり、左下の青い部分が、Dev Container: ubuntu-texlive-jaとなる。

これで、準備完了!

確認

インストールが完了したかどうか、チェックする。

  1. sample.texを開く。
  2. 左サイドバーにある、TEXマークをクリックする。
  3. Build LaTeX ProjectRecipe upLaTeXをクリックする。ビルドが開始される。
  4. 下の画像の、PDFと虫眼鏡っぽいマークをクリックする。
    5. PDFが開く。問題なく表示されていればインストール完了!

その他

font

IPAフォントを利用しています。

LaTeX統合環境

この手法では、エディタにVS Codeを使い、LaTeXの統合環境を追加する拡張機能にLaTeX Workshopを使っています。

なので、PDFの開き方や、開発時の細かい設定などは、こちらを参照してください。

latexmk

今回のテンプレートでは、latexmkの設定を追加しています。latexmkの設定に関しては、こちらを参照させていただきました。

https://qiita.com/popunbom/items/7d02fc75ad23b735d28c

alpine-texlive-ja

本当は、alpine-texlive-jaというイメージを使いたかったのですが、alpineではRemote - Containers機能を利用できなかったため、Ubuntuで作り直しました。

https://3846masa.hatenablog.jp/entry/2017/02/08/215920

カスタマイズ方法

もし、さらにapt-getしたい場合やfontを変えたい場合は、テンプレート内の.devcontainer/Dockerfileおよび、.devcontainer/docker-compose.ymlを修正してください。

Dockerfile

FROM korosuke613/ubuntu-texlive-ja:latest  

MAINTAINER Futa HIRAKOBA  

RUN apt-get update && apt-get install -y \  
    git \  
    cpanminus \  
    texlive-extra-utils \  
    make \  
    && apt-get clean \  
    && rm -rf /var/lib/apt/lists/*  

RUN cpanm Log::Log4perl Log::Dispatch::File YAML::Tiny File::HomeDir Unicode::GCString  

新たにapt-getしたい場合は、RUN apt-get update && apt-get install -y \の後に、パッケージ名を追加してください。

docker-compose.yml

Dockerfileを変更したら、

これを、

version: "3"  
services:  
  ubuntu-texlive-ja:  
    image: korosuke613/ubuntu-texlive-ja-devcontainer  
    #build: .  
    command: sleep infinity  
    volumes:  
      - ../:/workdir  
      - ~/.gitconfig:/root/.gitconfig  
    environment:  
      SHELL: "/bin/bash"  

こう変えてください。

version: "3"  
services:  
  ubuntu-texlive-ja:  
    build: .  
    command: sleep infinity  
    volumes:  
      - ../:/workdir  
      - ~/.gitconfig:/root/.gitconfig  
    environment:  
      SHELL: "/bin/bash"  

これで、Dockerfileをビルドするようになります。

おわりに

今回は、爆速で日本語LaTeX執筆環境を用意する方法を記しました。とても便利なのですが、Remote - Containers機能が、まだまだプレビュー版な為、ビルド時にたまに失敗するなど、不安定な感じはします。dockerの知識があれば、自分でトラブルシューティングはできると思うのですが、dockerの知識が無い人は、エラーがでた時に結構厳しいかも知れません。

もしなんかあったら、コメントするか、issue、pull requestを飛ばしてください。

記事が少しでもいいなと思ったらクラップを送ってみよう!
58
+1
情報系大学院生のブログ的な何かです

よく一緒に読まれている記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる

技術ブログをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

技術ブログを開設する

Qrunchでアウトプットをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

Markdownで書ける

ログ機能でアウトプットを加速

デザインのカスタマイズが可能

技術ブログ開設

ここから先はアカウント(ブログ)開設が必要です

英数字4文字以上
.qrunch.io
英数字6文字以上
ログインする