見出し画像

VScodeでLaTeX 備忘録 (1)

PCを買い替え、今までLaTeXを「texworks」で動かしていたのだが「VScode」の方が良いと風の噂で聞いたので、今回はVScodeにLaTeXの環境を構築し、emathの導入とPerlとの連携をしました。特に、Perlの連携で私はかなり躓いたので、二度と躓かないように刻んでおきます。

環境
Windows11 Pro
Tex Live 2024




texlive のインストール

TeX Live のインストール

下記リンクに示した「TeX Wiki」からインストールします。

「Tex Live/Windows」→「Installing TeX Live over the Internet 」→「install-tl-windows.exe」からインストーラがインストールされます。

手順1
手順2
手順3

先ほどインストールしたインストーラを起動し、texliveをインストールします。

  1. "install" を選択した状態で「Next」

  2. 「Install」

  3. 「特定ミラーの選択」から日本のミラーサイトをどれでもいいので選択します(Asia→Japan→どれでも)

    1. 「TeXworksのインストール」からチェックを外します

    2. 「高度な設定」を選択し、スキームを変更します(任意)
      *texはかなり重いので、ちょこっとしか使わない人であれば「basicスキーム」で十分だと思います。(デフォルトはfullスキームです

    3. 「カスタマイズ」から「日本語」,「英語・米語」,「LaTeX推奨パッケージ」にチェックを入れ「OK」を選択

    4. 「インストール」

インストールにかなり時間がかかる場合があります。

PATHが通っているかの確認

正常にインストールができ、PATHが通っていることを確認します。
コマンドプロンプトで

latex

と入力し、以下のようなバージョンの情報が出ていれば大丈夫です。
こうならなかった場合は、インストール時にエラーが発生している可能性があるので再インストールしましょう。

This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024) (preloaded format=latex)
 restricted \write18 enabled.
**

「Ctrl + C」でlatexコマンドが終了します。

! End of file on the terminal... why?

必要なパッケージのインストール

「TLShell TeX Live Manager」を起動して、状態のところを「すべて」にします。すると読み込みが始まりますので、完了したら「閉じる」を押します。
次に、検索で「latexmk」と入力し、以下の2つのパッケージ(写真の場合だとlatexmk, latexmk-windows)にチェックを入れて「選択項目をインストール」を押します。インストールが完了したら閉じます。

パッケージのインストール手順

これでTeX Liveでの設定は終わりです。
ターミナル(Power Shell)で、

latexmk -version

と打ち込み、

Latexmk, John Collins, 7 Apr. 2024. Version 4.85

このようにバージョンが表示されればインストール成功です。

VScodeのインストール

こちらは、たくさん記事があると思うのでインストールの方法は割愛させていただきます。

VScode でLaTeX環境を整える

VScodeを起動したら、左側の正方形が4つあるマーク(Extensions)を押します。便利な拡張機能をインストールします。

  • 検索バーで「Japanese」と入力し、Japanese Language Pack for Visual Studio Codeをインストールします。インストール後に出てくる「Change Language and Restart」を押しVScodeを再起動すると日本語化します。

  • 検索バーで「latex」と入力し、LaTeX Workshopをインストールし、左下の歯車マーク「⚙」を押して「設定」を選択

setting.jsonの作成

すると、右上に「ファイルに丸い矢印が向いている」マークがあると思うのでそこをクリックし、setting.jsonを開きます。
setting.jsonを以下のように書き換えます。(emathなどを導入するつもりなのでplatexでのコンパイルに設定しているが、そうでない人はlatexmkの方が良い)

{
    // ---------- Language ----------

    "[tex]": {
        // スニペット補完中にも補完を使えるようにする
        "editor.suggest.snippetsPreventQuickSuggestions": false,
        // インデント幅を2にする
        "editor.tabSize": 2
    },

    "[latex]": {
        // スニペット補完中にも補完を使えるようにする
        "editor.suggest.snippetsPreventQuickSuggestions": false,
        // インデント幅を2にする
        "editor.tabSize": 2
    },

    "[bibtex]": {
        // インデント幅を2にする
        "editor.tabSize": 2
    },


    // ---------- LaTeX Workshop ----------

    "latex-workshop.latex.tools":[
             {
                  "command": "ptex2pdf",
                  "args": ["-l", "-ot", "-kanji=utf8 -synctex=1", "%DOC%"],
                  "name": "ptex2pdf"
                },
                {
                  "command": "pbibtex",
                  "args": ["%DOCFILE%", "-kanji=utf8"],
                  "name": "pbibtex"
                },
                {
                    "name":"ptex2pdf (uplatex)",
                    "command": "ptex2pdf",
                    "args": ["-l","-u","-ot","-kanji=utf8 -synctex=1","%DOC%"]
                },
                {
                    "name": "bibtex",
                    "command": "bibtex",
                    "args": ["%DOCFILE%"],
                }
            ], 
            "latex-workshop.latex.recipes": [
                {
                    "name": "pt2p-pt2p",
                    "tools": [
                        "ptex2pdf", //タイプセットに使うtoolの名前
                        "ptex2pdf"
                    ]
                },
                {
                  "name": "pt2p-bib-pt2p-pt2p",
                  "tools": [
                    "ptex2pdf",
                    "pbibtex",
                    "ptex2pdf",
                    "ptex2pdf"
                  ]
                }
            ],
            "latex-workshop.latex.clean.fileTypes": [
                "*.aux", "*.bbl", "*.blg", "*.idx", "*.ind", "*.lof", "*.lot", "*.out", "*.toc", "*.acn", "*.acr", "*.alg", "*.glg", "*.glo", "*.gls", "*.ist", "*.fls", "*.log", "*.fdb_latexmk", "*.synctex.gz",
                // for Beamer files
                "_minted*", "*.nav", "*.snm", "*.vrb",
            ],
            "latex-workshop.view.pdf.viewer": "tab",
            "latex-workshop.latex.autoClean.run": "onBuilt",
            "latex-workshop.latex.clean.enabled": true, //上とぶつからないかな?auxiliaryファイル削除
            "latex-workshop.latex.autoBuild.run": "never",
}

次に作業ディレクトリに「.latexmkrc」というファイルを作成し、以下のように記述します。

#!/usr/bin/perl
$latex = 'platex -shell-escape -guess-input-enc -src-specials -interaction=nonstopmode -synctex=1';
$latex_silent = 'platex -interaction=batchmode';
$dvips = 'dvips';
$bibtex = 'pbibtex';
$makeindex = 'mendex -r -c -s jind.ist';
$dvi_previewer = 'start dviout'; # -pv option
$dvipdf = 'dvipdfmx %O -o %D %S';
if ($^O eq 'darwin') {
    $pdf_previewer = 'open -a Preview %S';
} elsif ($^O eq 'linux') {
    $pdf_previewer = 'evince';
}
$preview_continuous_mode = 1;
$pdf_mode = 3;
$pdf_update_method = 4;
# clean up
$clean_full_ext = "%R.synctex.gz"

ここまで終えたら、準備は完了です。試しに動かしてみましょう。https://www.damp.tottori-u.ac.jp/~hoshi/info/doc-info-2009/sample.tex
ここにあるサンプルのコードをsample.texというファイルを作ってコピー&ペーストしましょう。一応、サンプルのコードを以下に示しておきます。

\documentclass[a4paper,11pt]{jsarticle}
\title{ {\LaTeX} 動作確認テスト・サンプルファイル}
\author{情報リテラシTA}
\date{\today}
\begin{document}
\maketitle


\section{インストール成功!}
\LaTeX の世界にようこそ!この文章が「dviout」というソフトで閲覧できていれば、
インストールに成功しています。

\LaTeX(ラテフ)もしくは\TeX(テフ)は、
組版処理を行うソフトウェアです。
数学者・コンピュータ科学者のドナルド・クヌース氏によって作られました。

このソフトを使うと、きれいな文章の作成ができます。実際に出版の現場でも使われているそうです。
数学者が作ったということもあって、特に数式の出力がきれいにできるのが特徴です。
\begin{eqnarray}
	& \displaystyle \lim _{x \rightarrow 1} \left( \frac{2}{x-1} - \frac{x+5}{x^3 -1} \right)\; ,\;
	& \displaystyle \int ^\pi _0 \cos ^2 (x)dx \nonumber
\end{eqnarray}
2つの数式が、きちんと表示されていますか?
複雑な数式が入った文章も、きれいに出力することができます。



\section{基本手順}

では、\LaTeX で文章を作る際の、基本的な手順をここに示します。

\begin{enumerate}
	\item ソースファイルをTeraPadなどのエディタで作成する。
	      ソース(素)となるファイルを作成します。これにはエディタと呼ばれるソフトを使います。
	      この地点では文章の形にはなっていません。
	\item ソースファイルをコンパイルして、dviファイルを作成する。
	      パソコンに変換を命令して、先ほどつくったソースファイル
	      をdviファイルに変換、文章の形にして確認します。
	\item dviファイルができたことを確認したら、PDFに変換する。
	      dvi形式は、あまり一般的ではありません。
	      そこで、Adobe Readerなどで閲覧ができるPDF形式に変換します。
\end{enumerate}


\end{document}

sample.texを開いた状態で、左側にある TEX マークを押し「LaTeXプロジェクトをビルド」を押して、右下が「×」ではなく「✓」になっていればコンパイル成功です。「LaTeX PDFの表示」を押して上手くpdfが表示されれば大成功です。

sample.texのコンパイル

おわりに

今回はとりあえずVScodeでLaTeXを動かすところまでで終わりにします。emathの導入をする人しない人で大きく分かれる気がしたので、次回の投稿でemathの導入とPerlの連携で躓いた部分を残したいと思います。

参考資料

この記事が気に入ったらサポートをしてみませんか?