LaTeX を VSCode で使いたい人向けメモ

一か月ぶりですね。自粛中とはいえ、それなりに課題が出ているので大変と言えば大変です。レポートも書く機会があるので、メモしておきます。TeX(テフ)に乗り換える人はぜひ参考にどうぞ。

1. VSCodeLaTeX のインストール

VSCode は公式サイトから落としてきます。

code.visualstudio.com

拡張機能から LaTeX Workshop を導入します。これでVSCodeLaTeXを使う環境ができました。

f:id:takunology:20200511180018p:plain

次に LaTeX をインストールします。といっても LaTeX はパッケージなので様々なファイルを落としてきます。おそらく100個ほど。

東大の先生が作成した TeXインストーラです。これが一番簡単にインストールできる方法だと思います。

www.ms.u-tokyo.ac.jp

f:id:takunology:20200511181511p:plain

ここの(暫定)最新版(0.91)をダウンロードします。これを展開して、

f:id:takunology:20200511181739p:plain

abtexinst.exe を実行します。インストーラを進めると、TeXの保存先が表示されるのでそのままにして進みます。

f:id:takunology:20200511182032p:plain

インストール先の URL は時期によって上手くダウンロードできないことがあります。うまくいかないときは他の URL を選択します。

f:id:takunology:20200511182126p:plain

このまま進みます。

f:id:takunology:20200511182524p:plain

しばらくダウンロードが続きます。

f:id:takunology:20200511182932p:plain

ダウンロード後はインストーラが起動しますので、そのまま進めます。

f:id:takunology:20200511190755p:plain

f:id:takunology:20200511190934p:plain

f:id:takunology:20200511191044p:plain

これで TeX を使う準備ができました。再起動を忘れずに。

2. VSCode の設定

VSCode で [Ctrl] + [Shift] + [P] を同時押しして検索欄にて open user settings を選択して設定ページを開きます。下にスクロールして Edit in settings json をクリックします。

f:id:takunology:20200511192524j:plain

エディタ画面が開くので、このように記述します。

f:id:takunology:20200511193025p:plain

コードを載せておきます。

"latex-workshop.latex.tools": [
        {
            "name":"ptex2pdf",
            "command": "ptex2pdf",
            "args": [
                "-interaction=nonstopmode",
                "-l",
                "-ot",
                "-kanji=utf8 -synctex=1",
                "%DOC%"
            ]
        }
    ],

"latex-workshop.latex.recipes": [
        {
            "name": "ptex2pdf*2",
            "tools": [
                "ptex2pdf",
                "ptex2pdf"
            ]
        }
    ]

出来たら [Ctrl] + [s] で保存します。これでTeXVSCodeから使うことができます。

3. TeX

TeX形式を文章におこすことを「タイプセット」といいますが、プログラム言語を実行可能形式にする「コンパイル」と似ていることから、コンパイルとも言われています。正直、好みの問題ですが自分は使い分けたいのでタイプセットを使います。

タイプセットするとき、TeXは様々なファイルを吐き出すので、まずは作業用ディレクトリを作っておきましょう。その中にTeXのファイルを保存します。拡張子は .tex です。

f:id:takunology:20200511194113p:plain

保存すると、ロゴが変わり、サイドバーに TEX アイコンがでてきます。これをクリックすると、TeXをタイプセットするためのコマンドが表示されます。

f:id:takunology:20200511194307p:plain

タイプセットするときは Recipe: ptex2pdf*2 をクリックし、作成された資料(PDF)を見るときは View in VS Code tab をクリックします。

では文章を打ってみましょう。TeXを書くにはプログラムを書くように、必要事項を記入しなければなりません。

\documentclass[a4paper]{jsarticle}
\begin{document}
ここに文章を書いていく。
\end{document}

これをタイプセットします。先のように Recipe: ptex2pdf*2 をクリックしてコマンドを実行するか、[Ctrl] + [s] で保存して実行するかのどちらかになります。ちなみにタイプセットは2回行われます。なぜなら、図や表などを参照するための番号を一度読み込ませる必要があるからです。上記の文章だけでは2回やる必要はないですが、図や表などを載せて番号を参照する際には必要になります。

コマンドが正しく実行されているかを確認したい場合は、View > Output をクリックして出力ログターミナルを開き、ターミナル右上にあるドロップダウンメニューから Latex Compiler を選択します。

f:id:takunology:20200511195426p:plain

タイプセット完了の合図は左下のぐるぐるが止まってチェックマークになるか、generated by dvipdfmx. という表記が表示されるかで分かります。もし、いつまでたっても完了しない場合はエラーが起きているので、一度 Recipe: ptex2pdf*2 をクリックして止めます。そのあと、エラー箇所(タイプミス)を探します。

上手くいった場合は View in VS Code tab で表示してみましょう。

f:id:takunology:20200511201214p:plain

PDF形式に変換された文章が表示されています。これがTeXの使い方のキホンです。書き方などはググって調べてみてください。もしくは奥村先生のLaTeX美文章作成入門という本がおすすめです。付録にCDROMがついており、これ1枚でTeX環境が整います。

4. たくのろじぃのテンプレート

これは私がレポートを書くときに使っているテンプレートです。色々都合よくセッティングをしていますので、使いたい人はダウンロードしてみてください。コードを写しただけでは画像ファイルが見つからず、タイプセットできませんのでご注意を。

drive.google.com

中身のコードはこんな感じです。基本は \begin{} から始まって \end{} までです。

\documentclass[a4paper, 11pt]{jsarticle}
\usepackage{enumerate}
\usepackage{setspace}
\usepackage[dvipdfmx]{graphicx}
\usepackage[dvipdfmx]{xcolor}
\usepackage{amsmath,amsthm}
\usepackage{geometry}
\usepackage{listings} %ソースコード行番号

%タイトル
\title{{\Huge \textbf{たくのろじぃのメモ部屋}}\\ {\Large- \LaTeX を VSCode で使う -}}
\author{たくのろじぃ}
\date{\today}

% ----------------------プログラムのソースコードの設定----------------------

\lstset{
    %language=c++,%
    breaklines=true,%
    showstringspaces={true},%
    keepspaces=true,%
    tabsize = 4,%
    basicstyle={\ttfamily\small},%
    identifierstyle={\small},
    commentstyle={\smallitshape},
    keywordstyle={\small\bfseries},
    ndkeywordstyle={\small},
    stringstyle={\small\ttfamily},
    numberstyle={\scriptsize},
    frame=single,%
    framesep = 3pt,%
    xrightmargin=0zw,
    xleftmargin=1.5zw,
    numbersep=1zw,
    lineskip=-0.5ex,
    numbers = left,%
    stepnumber = 1%
}

\begin{document}
\maketitle
\section{数式}
数式は \$ マークで囲むと $f(x) = ax$ のようにイタリック体で表せます。ほかにも、
equation を使うと1行にわたって数式をかけます。
\begin{equation}
    \int _a^b f(x) dx
\end{equation}
align を使うと改行して数式をかけます。
\begin{align}
    &\sum _{k = 0}^{n} (a_k + b_k) \\
    &= \sum _{k = 0}^{n} a_k + \sum _{k = 0}^{n} b_k
\end{align}

\section{セクション}
セクションは細かくしていくことができます。しかも自動的に幅を調整してくれるので
便利です。改行するにはバックスラッシュ2つで\\
改行できます。
\subsection{サブセクション}
セクションより細かいサブセクション。
\subsubsection{サブサブセクション}
もっと細かいサブサブセクション。

\section{}
図番号の参照は ref を使います。
LaTeX Workshop の 拡張機能を図\ref{fig:LaTeX Workshop}に示す。
\begin{figure}[htb]
    \centering
     \includegraphics[scale=0.4]{texex.png}
    \caption{LaTeX Workshopの拡張機能}
    \label{fig:LaTeX Workshop}
\end{figure}

\section{}
意味もなく増減表を表\ref{tab:増減表}に示す。
\begin{table}[htb]
    \centering
    \caption{$f(x) = x^3-3x$の増減表}
    \label{tab:増減表}
    \begin{tabular}{|c||c|c|c|c|c|}\hline
    $x$ & ... & $-$1 & ... & 1 & ... \\ \hline 
    $f'(x)$ & $+$ & 0 & $-$ & 0 & $+$ \\ \hline
    $f(x)$ & $\nearrow$ & 2 & $\searrow$ & $-$2 & $\nearrow$ \\ \hline
    \end{tabular}
\end{table}

\newpage % 次のページに送る

\section{ソースコード}
ソースコードは lstlisting で書けます。
\begin{lstlisting}
#include<stdio.h>

int main() {
    printf("Hello\n");
}
\end{lstlisting}

数字の箇条書き
\begin{enumerate}
    \item 1 番目
    \item 2 番目
    \item 3 番目
\end{enumerate}

ドットの箇条書き
\begin{itemize}
    \item 要素 1
    \item 要素 2
    \item 要素 3
\end{itemize}

参考文献は thebibliography で定義して、cite で参照させる。\cite{book1}\\
URLはアンダーバー (\_) にお気をつけて。\cite{url1}

\begin{thebibliography}{99}
 \bibitem{book1} 本のタイトル, 著者, 出版社, 発行日
 \bibitem{url1} ページタイトル, 作者, 閲覧日, URLリンク
\end{thebibliography}

\end{document}

タイプセットした結果はこんな感じです。

皆さんも良き、レポートライフを!