0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

LaTeX 環境構築の手順【VSCode / pLaTeX / upLaTeX / LuaLaTeX / pdfLaTeX / BiBTeX】

Last updated at Posted at 2025-02-04

はじめに

本記事では、$\LaTeX$ の環境構築の手順を説明します。
Mac を想定していますが、Windows などでもほぼ同じ手順で実行できます。

卒業論文や修士論文を LaTeX で執筆する学生は多いです。特に、理系分野の学生は、Microsoft Word ではなく LaTeX で執筆せざるをえません。

オンライン上で LaTeX を執筆する環境としては、Cloud LaTeXOverleaf があります。Cloud LaTeX はデフォルトで日本語に対応しており、VSCode の拡張機能で簡単に連携できるので、おすすめです。
一方、卒業論文・修士論文を執筆する時期になると、アクセスが集中し、サーバダウンがときどき起こります。
したがって、ローカルに LaTeX の執筆環境を整えておくのは重要です。

1. LaTeX をインストールする

  • MaxTeXHomebrew でインストールする
    • GUI アプリケーションなしをインストールする
  • ターミナルに入力する
  • 時間がかかる(20 分ほど)
  • 途中、パスワードの入力が必要になる
brew install mactex-no-gui --cask
exec $SHELL -l

2. LaTeX をアップデートする

  • MaxTeX をアップデートする
  • 時間がかかる(30 分ほど)
sudo tlmgr update --self --all

3. デフォルトを A4 用紙に設定する

sudo tlmgr paper a4

4. VSCode の拡張機能 LaTeX Workshop をインストールする

  • VSCode で拡張機能 LaTeX Workshop を検索し、インストールする

5. setting.json を編集する

  • + , で設定画面に移動し、 右上のボタンから setting.json を開く

5.1. LaTeX エンジンの設定を記入する

  • pLaTeX
  • upLaTeX
  • LuaLaTeX
  • pdfLaTeX
  • pBibTeX
  • BibTeX
setting.json
// ----- LaTeX エンジンの設定 ----- //
"latex-workshop.latex.tools": [
    { // pLaTeX
        "name": "platex",
        "command": "ptex2pdf",
        "args": [
            "-interaction=nonstopmode",
            "-l",
            "-ot",
            "-kanji=utf8",
            "-synctex=1",
            "%DOC%"
        ],
        "env": {
            "PATH": "/Library/TeX/texbin"
        }
    },
    { // upLaTeX
        "name": "uplatex",
        "command": "ptex2pdf",
        "args": [
            "-interaction=nonstopmode",
            "-l",
            "-u",
            "-ot",
            "-kanji=utf8",
            "-synctex=1",
            "%DOC%"
        ],
        "env": {
            "PATH": "/Library/TeX/texbin"
        }
    },
    { // pBibTeX
        "command": "pbibtex",
        "args": ["%DOCFILE%", "-kanji=utf8"],
        "name": "pbibtex",
        "env": {
            "PATH": "/Library/TeX/texbin"
        }
    },
    { // LuaLaTeX
        "name": "lualatexmk",
        "command": "latexmk",
        "args": [
            "-lualatex",
            "-synctex=1",
            "-interaction=nonstopmode",
            "-file-line-error",
            "-outdir=%OUTDIR%",
            "%DOC%"
        ],
        "env": {
            "PATH": "/Library/TeX/texbin"
        }
    },
    { // pdfLaTeX
        "name": "pdflatex",
        "command": "pdflatex",
        "args": [
            "-synctex=1",
            "-interaction=nonstopmode",
            "-file-line-error",
            "%DOC%"
        ],
        "env": {
            "PATH": "/Library/TeX/texbin"
        }
    },
    { // BibTeX
        "name": "bibtex",
        "command": "bibtex",
        "args": [
            "%DOCFILE%"
        ],
        "env": {
            "PATH": "/Library/TeX/texbin"
        }
    },
],

5.2. LaTeX レシピの設定を記入する

  • 上記の「5.1. LaTeX エンジンの設定を記入する」に続けて記入する

  • pLaTeXBiBTeX あり)

  • pLaTeXBiBTeX なし)

  • upLaTeXBiBTeX あり)

  • upLaTeXBiBTeX なし)

  • LuaLaTeX

  • pdfLaTeXBiBTeX あり)

  • pdfLaTeXBiBTeX なし)

setting.json
// ----- LaTeX レシピの設定 ----- //
"latex-workshop.latex.recipes": [
    { // pLaTeX(BiBTeX あり)
        "name": "pLaTeX pBibTeX",
        "tools": ["platex", "pbibtex", "platex", "platex"]
    },
    { // pLaTeX(BiBTeX なし)
        "name": "pLaTeX",
        "tools": ["platex"]
    },
    {  // upLaTeX(BiBTeX あり)
    "name": "upLaTeX pBibTeX",
    "tools": ["uplatex", "pbibtex", "uplatex", "uplatex"]
    },
    { // upLaTeX(BiBTeX なし)
    "name": "upLaTeX",
    "tools": ["uplatex"]
    },
    { // LuaLaTeX
        "name": "lualatex",
        "tools": [
            "lualatexmk"
        ]
    },
    { // pdfLaTeX(BibTeX あり)
        "name": "pdfLaTeX BibTeX",
        "tools": [
            "pdflatex",
            "bibtex",
            "pdflatex",
            "pdflatex"
        ]
    },
    { // pdfLaTeX(BibTeX なし)
        "name": "pdfLaTeX",
        "tools": [
            "pdflatex"
        ]
    },
],

5.3. コンパイル時の設定を記入する

  • 上記の「5.2. LaTeX レシピの設定を記入する」に続けて記入する
setting.json
// ----- コンパイル時の設定 ----- //

//  + s でファイル保存時に自動でコンパイルする
"latex-workshop.latex.autoBuild.run": "onSave",

// 直近で使用したレシピでコンパイルする
"latex-workshop.latex.recipe.default": "lastUsed",

// PDF(プレビュー)
// PDF  VSCode で開く
"latex-workshop.view.pdf.viewer": "tab",
// PDF の幅を調整する
"latex-workshop.view.pdf.zoom": "page-width",
// PDF を右側に開く
"latex-workshop.view.pdf.tab.editorGroup": "right",

// LaTeX Workshop のインテリセンスを有効にする
"latex-workshop.intellisense.package.enabled": true,

// 不要なファイルを削除する
"latex-workshop.latex.clean.method": "glob",
"latex-workshop.latex.autoClean.run": "onBuilt",
"latex-workshop.latex.clean.fileTypes": [
    "%DOCFILE%.acn",
    "%DOCFILE%.acr",
    "%DOCFILE%.alg",
    "%DOCFILE%.aux",
    "%DOCFILE%.bbl",
    "%DOCFILE%.blg",
    "%DOCFILE%.dvi",
    "%DOCFILE%.fdb_latexmk",
    "%DOCFILE%.fls",
    "%DOCFILE%.glg",
    "%DOCFILE%.glo",
    "%DOCFILE%.gls",
    "%DOCFILE%.idx",
    "%DOCFILE%.ind",
    "%DOCFILE%.lof",
    "%DOCFILE%.lot",
    "%DOCFILE%.nav",
    "%DOCFILE%.out",
    "%DOCFILE%.snm",
    "%DOCFILE%.toc",
    "%DOCFILE%.vrb"
],

6. VSCode に LaTeX スニペットを設定する

  • VSCode の左下の設定ボタンから「Snippets(スニペット)」を開く
  • LaTeX と入力し、latex.json を開く
  • スニペットを設定しておくと、毎回、同じコードを入力する手間が省ける
latex.json
"my_latex_template": {
    "prefix": "my_template",
    "body": [
        "\\documentclass[${1:a4paper, 11pt}]{${2:jsarticle}}",
        
        // よく使うパッケージを設定
        "\\usepackage{amsmath}",
        "\\usepackage{amssymb}",
        "\\usepackage[dvipdfmx]{graphicx}",
        "\\usepackage{enumitem}",
        "\\usepackage[nobreak]{cite}",
        "${3}",
        "",
        "\\begin{document}",
        "",
        "\\title{${4}}",
        "\\author{${5}}",
        "\\date{${6:\\today}}",
        "\\maketitle",
        "",
        "\\section{はじめに}",
        "$0",
        "",
        "\\end{document}",
        "",
    ],
    "description": "LaTeX テンプレート"
}

7. 実際にローカルで LaTeX を執筆する

  • VSCode で空の LaTeX ファイルを作成する
  • my_template と入力すると、上記の「6. VSCode に LaTeX スニペットを設定する」で設定したスニペットが自動入力される
  • タイトルや本文などを適当に記入する
  • VSCode の左側に表示されている $\TeX$ のボタンを押す
  • 今回は BiBTeX は使用していないため、「Build LaTeX project(LaTeX プロジェクトをビルド)」から、「Recipe: pLaTex (レシピ:pLaTex)」もしくは「Recipe: upLaTex(レシピ:upLaTex)」を実行する
  • 「View LaTeX PDF(LaTeX PDF を表示)」を実行すると、右側に PDF が表示される
  • Recipe terminated with fatal error: spawn ptex2pdf ENOENT. というエラーが出る場合は、後述の「8. エラーが出る場合」を確認する
sample.tex
\documentclass[a4paper, 11pt]{jsarticle}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage[dvipdfmx]{graphicx}
\usepackage{enumitem}
\usepackage[nobreak]{cite}


\begin{document}

\title{\LaTeX 環境構築の手順}
\author{著者名}
\date{\today}
\maketitle

\section{はじめに}
本稿では,\LaTeX の環境構築の手順を説明する.

\end{document}

8. エラーが出る場合

8.1. Recipe terminated with fatal error: spawn ptex2pdf ENOENT.

  • ptex2pdf が設定と異なる場所にあるというエラー
  • ターミナルで ptex2pdf の正しい場所を探す
which ptex2pdf
  • 「5.1. LaTeX エンジンの設定を記入する」で記入した setting.json の一部を修正する
  • pLaTeXupLaTeX 以外も同様に修正しておく
setting.json
"env": {
    "PATH": "<ptex2pdf の正しい場所>"
}

8.2. LuaLaTeX で env: perl: no such file or directory

  • ターミナルで latexmk -lualatex -synctex=1 -interaction=nonstopmode sample.tex を実行して成功するか確認する
  • 成功するなら、perl の場所を探す
which perl
  • 「5.1. LaTeX エンジンの設定を記入する」で記入した setting.json の一部を修正する
setting.json
{ // LuaLaTeX
    "name": "lualatexmk",
    "command": "latexmk",
    "args": [
        "-lualatex",
        "-synctex=1",
        "-interaction=nonstopmode",
        "-file-line-error",
        "-outdir=%OUTDIR%",
        "%DOC%"
    ],
    "env": {
        "PATH": "/Library/TeX/texbin:<perl の場所>"
    }
},

参考

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?