エラーしながら学ぶVSCodeにLatexを導入1

最近はCloud $\LaTeX$があって、ローカルで$\LaTeX$を導入しなくてもよくなりました。
それでも自分のパソコンに入れたい方向けの記事です。

:::note alert
これは **Windowsユーザー向け** のVSCodeに少し変わった$\LaTeX$導入する方法です。
昔の私のように、PATHの知識もない方に向けて丁寧に書いています。
:::

この記事を書いた目的は三つあります。
1\. Wordを使うな！！ $\LaTeX$を使え！！(過激派)
2\. p$\LaTeX$やup$\LaTeX$ではなくLua$\LaTeX$を普及させる。
3\. バイブル本である<a href="https://www.amazon.co.jp/%EF%BC%BB%E6%94%B9%E8%A8%82%E7%AC%AC8%E7%89%88%EF%BC%BDLaTeX2%CE%B5%E7%BE%8E%E6%96%87%E6%9B%B8%E4%BD%9C%E6%88%90%E5%85%A5%E9%96%80-%E5%A5%A5%E6%9D%91-%E6%99%B4%E5%BD%A6-ebook/dp/B08MZ98Z1Q/ref=sr_1_1?adgrpid=50088253341&gclid=CjwKCAiAheacBhB8EiwAItVO29Q1wRaxEXLqJkS3CNBuOcCRxCaVPpgt3eHKMo0GBQvM6MQIoXyLTBoCXoAQAvD_BwE&hvadid=618672912236&hvdev=c&hvlocphy=1009647&hvnetw=g&hvqmt=e&hvrand=4036218945925990216&hvtargid=kwd-333079996939&hydadcr=15817_13600566&jp-ad-ap=0&keywords=%E7%BE%8E%E6%96%87%E6%9B%B8%E4%BD%9C%E6%88%90%E5%85%A5%E9%96%80&qid=1671006223&sr=8-1"> LaTeX2e美文書作成入門 </a>を買ってください。(関係者ではないです)

$\TeX$は、エラーが不親切で嫌になるときもあります。
ただ、$\TeX$開発コミュニティの方が時間を割いて作ってくださって、私たちに提供してくれています。
$\TeX$開発コミュニティの方の感謝を忘れず、エラーを可愛がってあげましょう。

# LuaLaTeXとは？(布教用)
日本語TeX開発コミュニティの方がこのようなことをおっしゃっています。

https://acetaminophen.hatenablog.com/entry/2021/06/18/022108

簡単に要約すると、最新の$\LaTeX$のバージョンでは、p$\LaTeX$やup$\LaTeX$は壊れる可能性があるよということ。

またバイブル本である<a href="https://www.amazon.co.jp/%EF%BC%BB%E6%94%B9%E8%A8%82%E7%AC%AC8%E7%89%88%EF%BC%BDLaTeX2%CE%B5%E7%BE%8E%E6%96%87%E6%9B%B8%E4%BD%9C%E6%88%90%E5%85%A5%E9%96%80-%E5%A5%A5%E6%9D%91-%E6%99%B4%E5%BD%A6-ebook/dp/B08MZ98Z1Q/ref=sr_1_1?adgrpid=50088253341&gclid=CjwKCAiAheacBhB8EiwAItVO29Q1wRaxEXLqJkS3CNBuOcCRxCaVPpgt3eHKMo0GBQvM6MQIoXyLTBoCXoAQAvD_BwE&hvadid=618672912236&hvdev=c&hvlocphy=1009647&hvnetw=g&hvqmt=e&hvrand=4036218945925990216&hvtargid=kwd-333079996939&hydadcr=15817_13600566&jp-ad-ap=0&keywords=%E7%BE%8E%E6%96%87%E6%9B%B8%E4%BD%9C%E6%88%90%E5%85%A5%E9%96%80&qid=1671006223&sr=8-1"> LaTeX2e美文書作成入門 </a>の4page目に、このようなことが書いています。
> Lua$\LaTeX$を日本語対応にするLua$\LaTeX$-jaプロジェクトの成果からp$\LaTeX$を凌駕するにまで成熟しました。
> Lua$\LaTeX$を使えば、$\LaTeX$の鬼門であったフォントや多言語化の問題が嘘のように簡単に解決できます。

まだいいところがあります。
中間ファイルであるdviファイルがでないため工程が少なくなる。(あとで詳しくやります。)

いいところばっかり言うと良くないので、悪いところも上げます。
1\.　外国では普及しているが、日本では普及していないためテンプレートが少ない。
2\.　速度が遅い。特にフォント変換したときは遅い気がします。

大学の研究室とかでは、まだp$\LaTeX$のテンプレートを渡されることがあるらしいです。
そのようなことがあったら、先生にLua$\LaTeX$を勧めておいてください。

# LaTeXの導入の前座

まず、勘違いさせてしまった可能性があるので、先にこれを言っておきます。

:::note warn
ここまでLua$\LaTeX$を勧めていたので、p$\LaTeX$やup$\LaTeX$は導入しないのかと思っている方がいそうだけど、p$\LaTeX$、up$\LaTeX$、Lua$\LaTeX$すべて導入できます。
:::

最初に、少し変わった$\LaTeX$導入方法といったように、

:::note info
chocolateyというソフトを使った導入方法を紹介します。
:::

chocolatyはソフトのインストールやアップデートをするときに役に立つソフトです。
ほとんどの無料ソフトをここからダウンロードできたりするので、とてもおすすめします。

また、次のようなことに注意してください。

:::note info
導入に必要な知識を与えながらなので、最短で導入できる方法ではありません。
:::

プログラミングはエラーとの闘いなので、原理を知っていると対処しやすかったりします。
少し遠回りになるけど、理解するためには仕方がないと思います。


# Chocolatyの導入

1\. 次のサイトから以下のコードをコピーする。

https://chocolatey.org/install

```
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
```

2\. **管理者権限**でターミナルを開く。
![img.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/061b6bdd-aeb9-9e1e-d401-07a0cf3cec9b.png)

3\. コピーしたものをターミナルに張り付け、実行する。
![aaaaaa.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/186a7e19-4caa-72a1-2f67-b2ffce87326c.png)

4\. ログの中で "Chocolatey (choco.exe) is now ready." と出てればインストール完了

より詳しく知りたかったら、次のものを参考にしてください。

https://nodachisoft.com/common/jp/article/jp000012/

# chocolatyでソフトをインストール

### TeXLiveのインストール

TeXLiveとは、$\TeX$を使うために必要なソフトがパッケージされたものである。

1\. 先ほどと同じ方法で**管理者権限**で、ターミナルを開く。

2\. ターミナルに次のものを書き込む。
```
choco install texlive
```
![スクリーンショット 2022-12-14 224218.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/005f93a1-b6a6-d33c-63f0-5c08b11f5f40.png)

3\. Do you want to run the script? と出たら、yと入力する。

4\. TeXLiveはサイズが大きいので、ダウンロードできるまで待つ。

### ChocolateyGUI,VSCode,Sumatra PDFのインストール
ChocolateyGUIとは、Chocolateyをめちゃくちゃ便利にするものです。
VSCodeとは、高機能なテキストエディタです。
Sumatra PDFとは、軽量の無料のPDFビューアーです。
**Sumatra PDFは、必須のものではないのでインストールする必要はないですが、ブラウザでPDFを見ている方にお勧めします。**

TeXLiveのインストールと同じ方法でインストールする。**管理者権限**のターミナルに以下のものを打ち込みます。
```
choco install chocolateygui vscode sumatrapdf.install -y
```

-yは、 Do you want to run the script? とでたときに、yと入力しなくてもよくなります。


# LuaLaTeXが入っているかの確認

1\. 管理者権限ではないターミナルを開く。

![img2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/f38e830a-d26b-9125-6c93-f0b697617917.png)

2\. 次のコマンドを打ち込む
```
lualatex -version
```

3\. 次のような結果が出ていたら成功である。
![lua.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/46cc9a6c-9218-fb31-542c-b6ea6a4fea97.png)
失敗した場合は、
![error.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/478f3a5d-e245-7eba-617a-dbc6a4e03eb3.png)
のようになる。(Chocolateyで入れた場合、PATHが自動で入るはずなので普通ならエラーは出ないはず)

**エラーが起こった場合、またはPATHがわからない方は、次の章を読んでほしい。**


# 環境変数のPATHの設定

:::note info
Pythonやgsudoのようなソフトを導入したいときに、**環境変数のPATHの設定がめちゃくちゃめちゃくちゃ重要**になります。
:::

lualatex -version とコマンドを入力したときに、何が起こっているのでしょうか？

成功した場合、Cドライブ内の`texlive => 2022 => bin => win32 `の lualatex.exe のソフトが反応して、lualatexのVersionを返しています。
![Lualatex.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/aa49419f-cd7c-1622-b79b-6e21d4862b29.png)

もし環境変数のPATHがないと、どのようになるのでしょうか？
**広大なファイルの中から、lualatex.exe を探さないといけなくなります。
そのようなことを避けるために、環境変数のPATHを設定してあげる必要があります。**

### TeXLiveの環境変数のPATHの登録方法

1\. 設定を開き、画像の順に移動する

![setting.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/08b94f63-a823-ca62-8bfd-46817fe65156.png)

![setting2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/0caf3206-6258-fac3-6935-e20f55024b50.png)

![PATH.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961507/d2e4878a-120f-84fb-e0d0-27c8ccbc321f.png)


ソフトがいっぱいあるところとは、今回の場合は`texlive => 2022 => bin => win32 `の lualatex.exe　があったところです。
今回の場合、環境変数のところに`C:\texlive\2022\bin\win32`を入力します。
TeXLiveのバージョンが違うなら、ソフトがある場所が変わったりする可能性があるので、臨機応変に対応してください。

2\. もう一度このコマンドを打ち込む
```
lualatex -version
```
これで、成功できているはずです。

**もしこれでもできなかったら**、TeXLiveのインストール中に破損した可能性があるので、**管理者権限**でターミナルを開いて
```
choco uninstall texlive
```
で、アンインストールしてもう一度インストールし直してください。

# 続きのリンク

https://qiita.com/hikozaru1202/items/befa7ddb6ea1b8920c92

https://qiita.com/hikozaru1202/items/ce4c916f8d763b4006a9#latexmkrc%E3%81%AE%E4%BD%9C%E6%88%90