LaTeX
TeXLive

WindowsでLaTeXを始めるための基礎知識

$\rm\LaTeX$っていいよね~と思って早1年です。
$\rm\LaTeX$初心者の域を脱することはできていないかもしれませんがこんなにも便利なツールを普及するためなら頑張ります。

1 はじめに

 ここでは$\rm\LaTeX$ を始めたての人が同じく$\rm\LaTeX$を始めたいと考えている人に向けて、$\rm\LaTeX$とは何なのか、そして$\rm\LaTeX$を始めるにはどうすればよいのかを解説したものです。
 また、内容を簡単にしてわかりやすくするために正確ではない呼び方などしていますが、あまり支障はないので気にしないで下さい。(例えばこの文章で解説しようとして使用している$\rm\LaTeX$という言葉は正確にはpLaTeX2eであり、厳密な意味での $\rm\LaTeX$ではないとか)
 また、筆者はWindowsしか触ったことがないので、MacintoshやLinuxなどには疎いことを踏まえてお読みください。
 また、一々$\rm\LaTeX$と表記するのはわずらわしいのでこれからは「LaTeX」と打ちます。

2 LaTeXとは

 LaTeXを一言で表すならば、それは「組版システム」になります。
 Wordなどのワープロソフトとも違い、InDesignなどのDTPソフトとも全く違うもので、「文字や図版などの要素を紙面に配置する」という作業をコマンドを駆使してコンピュータで行うためのシステムです。Wordなどは「WYSIWYG」と呼ばれる、「ディスプレイに現れるものと印刷結果(処理結果)が一致するように表現する技術」が用いられていますが、LaTeXでは出力のための命令を書き入れたテキストを作成し、それをもとに印刷イメージファイルを作成する「MarkUp方式」が採られています。これは、目で見て直観的に操作ができない代わりに、論理的に整然と文字列を並べることができ、とても美しい仕上がりの文書を作成することができます。
 さらに、これはLaTeXを拡張して機能を充実させた物も含めてほぼすべてが無料で公開されています。これにより、WordやAdobe製品よりもっと身近なソフトであると言えるでしょう。
 また、LaTeXは前述のMarkUp方式により、数式などを配置するのに優れています。しかし、数式でなくともとても美しい文書が出来上がるのも確かです。
 LaTeXを使った組版の流れは下の通りです。

  1. エディタを使って組版のための命令が書かれた、「.tex」が拡張子のファイルを作成する。
  2. この.texが拡張子のファイルをTeXのシステムを用いてDVIファイルにする。
  3. このDVIファイルをPDFファイルなどに変換する。

まず、どのようなエディタを用いてもよいので(パソコンに必ずと言っていいほど入っているメモ帳でも構いません。).texファイルを作成します。ここには、後述するコマンドなどが書かれることになります。
次に、このファイルをDVIファイルにします。この時にLaTeXのシステムを用いて.texファイルに書かれた文字列を正しく組み上げることになります。また、DVIファイルとは、パソコンのOSや印刷機などの環境に左右されず、常に同じ結果を表示するファイルで、これを閲覧するには別のソフトが必要になります。(普通、TeX統合環境を入れると自動で付いてきます。)
 この時、.texファイルをDVIファイルにする方法として、コマンドプロンプトを使うなどありますが、後述するようにこの動作を自動でしてくれるソフトもあります。
 最後に、DVIファイルだと見づらかったり、これを閲覧するソフトを多くの人が持っているとは限らないといった理由からPDFファイルに変換します。(勿論、PDFに変換しなくとも問題はありませんが世間的にPDFの方が使い勝手が良いようです。)
 このように、様々なソフトやファイルを用いる必要があるLaTeXですが、これらを一括でしてくれる統合環境やエディタがきちんとあるので、心配いりません。
 上記のような仕組みのため、OSやパソコン、使用するソフトやそのバージョンなどによって結果が左右されることがあまりなく、安定して編集を行うことができます。

3 導入

 早速LaTeXを導入するわけですが(正確に言うとLaTeXだけではなく、LaTeXを編集するための統合環境やパッケージ群を導入することになります。)これにはとても時間がかかる場合があります。(短いと20分程度から長いと3時間程度まで)くれぐれも深夜やOSの更新の直前に導入し始めたりしないでください。
 LaTeXを利用するための必要なソフトや基本的な拡張機能などを持たせたファイル群を導入しますが、日本含め世界でLaTeXを始める場合、TeXLiveを使うのが一般的です。(Windowsの場合、ほかにもW32TeXというファイル群もあるのですが、調べれば導入の仕方は簡単に出てくるので今回は割愛します。http://did2memo.net/2012/04/23/easy-latex-install-windows-201204/ とかを参考にしてみてください。)

  1. 日本でのTeX に関する情報の集合体であるTeXWikiの一節であるhttps://texwiki.texjp.org/?TeX%20Live に行き、TeXLiveについて確認してください。(動作環境などのチェック)
  2. 確認が終わったらリンクをクリックし、各ページに飛んで、さらなる詳しい説明を読み、どのような方法でインストールするのかを決めてください(ここではインストーラを用いる方法を採っていきます。)
  3. 各配布ページのリンクに飛んでください(Windowsならば\https://www.tug.org/texlive/acquire-netinstall.html 、Macならばhttp://www2.kumagaku.ac.jp/teacher/herogw/ あたりが妥当だと思います。)
  4. (ここからはWindowsで、インストーラを用いた方法のみの説明となりますが、他の方法をとる場合は各自調べてください。)ダウンロードしたインストーラを起動し、次へ、やNEXTなどを押します。ここでは基本的に設定変更を行う機会はありません。すると、ファイル群のダウンロードが始まるので、終わるまでPCがシャットダウンやスリープしないように気を付けてください。(この間に作業をしていてなんら構いません)
  5. ファイル群のダウンロードと解凍が終わるとなんらかのアクションがありますので、今度はTeXを書くためのエディタの設定をしましょう。
  6. Windowsで標準的なTeXLIveを導入した場合、TeXWorksと呼ばれるエディタが標準で付いてくるはずです。今回は、これを使うための設定を行います。(詳しくはhttps://texwiki.texjp.org/?cmd=read&page=TeXworks%2F%E8%A8%AD%E5%AE%9A&word=TeXWorks を見るのが良いでしょう。)
  7. まずはこれを頑張って探し出して起動しましょう。(Windowsに標準で搭載されているPC内の検索機能を活用しましょう)起動させたら、上の方にあるタブから「編集」というところをクリックし、さらにそこの中から「設定」とあるところをクリックし、設定画面を開きましょう。そこで、フォントや自動インデントなどお好みでいいですが、エンコーディングだけは「Shift-JIS」から「UTF-8」に変更しておきましょう。
  8. 次にタイプセットを設定します。編集→設定→タイプセットと進み、一番右下の青い「+」ボタンを押し、タイプセットの種類を増やします。そして、出てきた画面で次のように文字を入力して設定します。(引数を入力するときは1行ごとに「+」ボタンをその都度押してください。)
  • 名前:pLaTeX (ptex2pdf)
  • プログラム:ptex2pdf
  • 引数:上から順に
    • -l
    • -ot
    • -kanji=utf8 $synctexoption
    • $fullname

入力できたらOKを押して閉じます。
 同様の手順で、あと二つタイプセットを増やしますが、この時設定画面にある「実行後、PDFを表示する」というところにあるチェックを外してください。

  1. 1つめ
    • 名前:pBibTeX
    • プログラム:pbibtex.exe
    • 引数:$basename
  2. 2つめ
    • 名前:mendex
    • プログラム:mendex.exe
    • 引数:$basename

 これらの設定が終わったら、デフォルトを、最初に設定した「pLaTeX (ptex2pdf)」に変えておきましょう。この後、このTeXWoeksを閉じたり開いたりしてもこの設定が変わらなかったら成功です。失敗したら同じことを何度か繰り返すか、わかる人に聞くなりしましょう。
 これでLaTeXで編集する環境は整いました。
 あとは文章列を書き、左上の緑色の▷マークをクリックすればPDFファイルが出てきます。この動作をコンパイルと呼びます。(最初はファイルに名前をつけて保存する作業が必要となります。)

4 LaTeXの簡単な書き方

 とりあえず、簡単な文章が作れるようにしましょう。
 LaTeXを始めた人が最初に書かされる簡単な文字列があります。みなさんも書き、コンパイルしてみましょう。

\documentclass{jsarticle}
\begin{document}
Hello \LaTeX !
\end{document}

出力するとこうなるはずです。(\LaTeXと!の間は半角一マス空いています。)

Hello $\rm\LaTeX$!

いかがだったでしょうか?それでは各文字列について説明していきます。
 まず最初の「\documentclass{jsarticle}」からです。これはこの文書の書式を決定するコマンドで、{}の中の「jsarticle」が意味を持っています。例えば、この「jsarticle」を「jsbook」に変えて、再度コンパイルしてみてください。こんどは大きくデザインが変わったと思います。これが、このコマンドの働きで、絶対に書かなければいけない3つのコマンドのうちの1つでもあります。
 次に「\begin{document}」です。これは、「ここから文書が始まりますよ!」ということをLaTeXに宣言するコマンドで、これがないとLaTeXはどこから文書が始まるのかわからず、混乱してしまいます。
 最初の「\documentclass{}」と、この「\begin{document}」の間をプリアンブルと呼び、文書全体に関わるコマンドを書くための場所にもなります。そして、後述する「\end{document}」とペアのコマンドで、絶対に書かなければいけない3つのコマンドのうちの1つです。
 次に「Hello」です。これはコマンドでもなんでもないですが、通常の文書ではこのように書いたものがそのまま出力されます。(機種依存文字は除く)
 次に「\LaTeX !」です。\LaTeXは$\rm\LaTeX$のロゴを出すコマンドですが、このコマンドの後ろに半角1つ分空いています。これは、コマンドの終わりを示すためです。この区切りがないとLaTeXはコマンドを認識することができなくなり、エラーを吐いてしまいます。
 最後に「\end{document}」です。これは「ここで文書が終わりますよ!」ということをLaTeXに宣言するコマンドで、「\begin{document}」と同じ役割を果たし、絶対に書かなければいけないコマンドの最後の1つです。

5 コマンドについて

 LaTeXはコマンドに従って文字列を配置するものなので、おのずとコマンドが重要になってきます。(コマンドをつけていなくとも実は\normalsizeで\rmという風に裏で認識されて配置されている。)
 LaTeX でのコマンドは「\」(Windowsだと円マーク)から始まります。
 では、コマンドの種類についての説明です。

  • \begin{}\end{}型

これは

\begin{命令}
文字列
\end{命令}

という風に、間に文字列を挟み、その文字列を命令に従って配置するコマンドです。
例えば、{}内に「center」を入れると中央揃えになる(上の\beginと下の\endの{}内の命令は同じでなければいけないのは当然)

  • \〇〇{}型
    これは
\命令{文字列}|

という風に、\命令にくっついている{}内の文字列を、その命令通りに配置するコマンドです。
例えば\textbf{あああ|のように書くと、あああのように、文字列がボールド体になります。(\textbfはボールド体にするコマンド)

  • それ単体で一つの文字や効果生み出すコマンド

さっきの例での\LaTeXのように、ロゴを生み出すものから、数学で使われる記号を生み出すもの、表や図を中央揃えにするコマンドまでさまざまです。(数式で使うものはコマンド単体では使えず、$で挟むなどしなければ使えないことが多い。)

6 パッケージ

 LaTeXに本来ある機能だけではどうしても表現できないものがあるとき、それはパッケージに頼ることで解決することが多々あります。というか画像を挿入するだけでもパッケージが必要ですし文字に色を付けるだけでもパッケージが必要になります。(なければ自分で作ってしまうこともできる。)
 パッケージは拡張機能であり、すべてのTLaeXユーザーが同じパッケージを持っているとは限らないのでパッケージを使った.texファイルを渡すときは注意が必要となります。
 また、パッケージに頼らなくとも、自分でマクロと呼ばれる命令を組むこともできますが、それはかなり面倒なので割愛します。(こちらの投稿を見るのが良いと思います。https://qiita.com/zr_tex8r/items/5067307890d36c0e4882
 TeXLiveやW32TeXには最初から相当数のパッケージが入っているので、自分でパッケージを探してダウンロードし、適切な位置に置くといった作業が必要になることは少ないですが、その必要があるときは、http://emath.s40.xrea.com/ydir/Wiki/index.php?emath.sty%A4%CE%C3%D6%A4%AD%BE%EC%BD%EA を参考にして、位置を決め、ここの説明で「misc」がおかれる場所にファイルを置きます。その場所がないときはファイルを作り、名前を書き替えることで作り出すことが必要になります。(大まかにまとめるならば、C:\texlive\texmf-local\tex\platex あたりにおいておけば良いと思います。ただし、\texmf-local以下はファイルを作る必要があります。)
 しかし、パッケージを使う場合に必ず共通していることは、プリアンブルに\usepackage{パッケージ名}と書かなければいけないという点です。
 これは、どのパッケージを使っているのかをLaTeX に宣言しなければ、LaTeX が適切なコマンドを探せず、混乱するからです。

7 エラー

 LaTeXでコンパイルすると、たまにエラーが出ることがあります。
 原因の多くはコマンドの不備であることが多いです。問題となっている箇所がlogに表示されるので、それを見ながら綴りミスがないか、コマンドの後に半角1マスが不足していないか、コマンドに必要な指定が抜けていないか、パッケージのコマンドなのにプリアンブルに書いていないかなどを確認し、訂正すれば直るはずです。
 これでも直らないのだったら、当該部分を削除してみるのが一番早いです。そのうえで、代替となるコマンドを探すか、エラーが出るか出ないかのギリギリのラインを攻めるなどいくつか方法はあるのであきらめずに挑戦してみることが大事になりますが、あまり無茶でアクロバティックな事を要求しないようにしましょう。

8 最後に

 LaTeXにはまだまだたくさん機能があるので調べて活用してみましょう。
 また、これから先LaTeXを進めるには、コマンドを知る必要がありますので、LaTeXを使う上での基本的なコマンドを読んで、次のステップへと進んでみてください。