M1 MacでTex Live 2020とVSCodeとemathとBiBTexの導入（忘備録）

#開発環境
macOS Big Sur （バージョン11.2.3）
Macbook Air (M1, 2020)
チップ：Apple M1
メモリ：16GB
起動ディスク：Macintosh HD

#全体的なコツ
＊どこにコードを書き込むか書いてなかったら、基本的にターミナルを起動して書き込んでいく
＊エラーが起きたらターミナルかパソコンを再起動で割と解決
＊放置したら何故かエラーが起きなくなることもあるので、根を詰めてするより何日かに分けて一日の制限時間を定めて行うほうが効率的
＊目的を決める　→　そこへ至る小目的を設定　→　失敗　→　小目的の再設定　→　失敗　→　小目的の再設定　→　……　→　小目的の成功　→　……　→　目的の成功
という過程になるので、沼にハマったら手法でなく"目的"を変更しよう
＊体系的に知識をまとめるより”ググル力”のほうが大事。語句を変えて何度も検索する必要あり。
＊ネットで調べて分からなかったらたいてい本にも載っていないので目的の再設定。

#行った道筋
以下のサイトを参考に上から順に行った。

セットアップと一般的な設定＋ターミナルの「Rosettaを使用して開く」にチェックのみを行なった
https://oku.edu.mie-u.ac.jp/~okumura/macosx/m1.html

homebrewのインストール
https://qiita.com/___xxx_/items/17655df4e80ebadd8fc3

Ghostscriptのインストール
https://qiita.com/yaplus/items/55fa6957c1b15dbcf387

パッケージ管理システムによるTeX Liveのインストール
GUIアプリケーションありの場合
https://texwiki.texjp.org/?TeX%20Live%2FMac#texlive-install-official

Finderのサイドバーにホームフォルダを表示
https://dtmmethod.com/mac-finder-home

Finderで ctrl＋shift＋G の後に /usr/local と打ち込んでtexliveがあるのを確認。Tex Liveは2021が出ていたが、結局2020がインストールされていた。

VSCodeをインストール。公式に従って簡単にできる
https://code.visualstudio.com

拡張機能 LaTeX Workshop のインストールから行う
https://qiita.com/rainbartown/items/d7718f12d71e688f3573

latexmkrcを作成して書き込む。テキストエディタで開いて.latexmkrcに名前を変更。
https://qiita.com/rainbartown/items/d7718f12d71e688f3573

5-2. LaTeX Workshop の設定を見直すを行なった
https://pyteyon.hatenablog.com/entry/2019/12/24/225305

ここまででパッケージを入れない簡単な文書は作成成功。

#emathパッケージの導入
このサイトに従って「こちら」→「入口」→（ユーザ認証についてはそのまま「入口」の下に書いてある）→「丸ごとパック」とクリックしていってダウンロードする。
http://emath.s40.xrea.com

ダウンロードしたファイルについては以下の説明
http://emath.s40.xrea.com/ydir/Wiki/index.php?emath%A4%CE%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB

ファイルをどのディレクトリに置けば良いかを以下のサイトに従って行っていく。（ここが肝）
http://emath.s40.xrea.com/ydir/Wiki/index.php?emath.sty%A4%CE%C3%D6%A4%AD%BE%EC%BD%EA


**注意**
(i) 自分は、このサイトにおいて
myTEXMF = /usr/local/texlive/texmf-local
mySUBDIR = tex/platex
となった。
(ii) 途中の、\usr\local はFinderから開くのに工夫が必要 ctrl＋shift＋G
https://qiita.com/DarkLight_0/items/d257d4b8f27ad670f40d
(iii) styフォルダを移すときはその中身ではなく、styフォルダそのものを移す。よってemathフォルダの中にstyフォルダが入っている状態となる。
(iv) mktexlsrは忘れずに,
しっかり実行（分岐が書かれている文書は読み飛ばしが起きがち）。ターミナルで管理者権限がなくてコマンドがdeniedされるときは、コマンドの頭に sudo をつけて、パスワードを入力。

パッケージは置けたが、エラーが出る。以下のサイトで、自分がどのtexを使っているかの確認→pdfLatex、これのせいでエラー吐いてると確認
https://qiita.com/zr_tex8r/items/a924be192ecea7e6bbe4

このサイトを参考にpLatexに変更した。
https://qiita.com/warper/items/cae0ea700bd49106f059

具体的にはVSCodeを開いた状態で、cmd＋, を押して、
右上のチェスのナイトっぽいマークをクリックし、出てきたファイル（settings.jsonと呼ぶらしい）に

```
{
    // ---------- 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": "Step 1: ptex2pdf"
                },
                {
                  "command": "pbibtex",
                  "args": ["%DOCFILE%", "-kanji=utf8"],
                  "name": "Step 2: pbibtex"
                },
                {
                  "command": "ptex2pdf",
                  "args": ["-l", "-ot", "-kanji=utf8 -synctex=1", "%DOC%"],
                  "name": "Step 3: ptex2pdf"
                },
                {
                  "command": "ptex2pdf",
                  "args": ["-l", "-ot", "-kanji=utf8 -synctex=1", "%DOC%"],
                  "name": "Step 4: ptex2pdf"
                },
                {
                  "command": "ptex2pdf",
                  "args": ["-l", "-ot", "-kanji=utf8 -synctex=1", "%DOC%"],
                  "name": "ptex2pdf"
                },
                {
                    "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": [
                    "Step 1: ptex2pdf",
                    "Step 2: pbibtex",
                    "Step 3: ptex2pdf",
                    "Step 4: 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",
}
```
と書き込んで成功。


pLatexではなかったっぽいのでさらに変更した。
https://qiita.com/warper/items/cae0ea700bd49106f059
加えて、エラーが起きるとビルドが終わらないので"-interaction=nonstopmode"を以下で全てに付け加えた。
https://qiita.com/nebusoku3e/items/abcc675f83ad388b1b8c
つまり、settings.jsonを丸ごと以下に書き換えた。

```
{
    // ---------- 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": ["-interaction=nonstopmode", "-l", "-ot", "-kanji=utf8 -synctex=1", "%DOC%"],
                  "name": "Step 1: ptex2pdf"
                },
                {
                  "command": "pbibtex",
                  "args": ["%DOCFILE%", "-kanji=utf8"],
                  "name": "Step 2: pbibtex"
                },
                {
                  "command": "ptex2pdf",
                  "args": ["-interaction=nonstopmode", "-l", "-ot", "-kanji=utf8 -synctex=1", "%DOC%"],
                  "name": "Step 3: ptex2pdf"
                },
                {
                  "command": "ptex2pdf",
                  "args": ["-interaction=nonstopmode", "-l", "-ot", "-kanji=utf8 -synctex=1", "%DOC%"],
                  "name": "Step 4: ptex2pdf"
                },
                {
                  "command": "ptex2pdf",
                  "args": ["-interaction=nonstopmode", "-l", "-ot", "-kanji=utf8 -synctex=1", "%DOC%"],
                  "name": "ptex2pdf"
                },
                {
                    "name":"ptex2pdf (uplatex)",
                    "command": "ptex2pdf",
                    "args": ["-interaction=nonstopmode", "-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": [
                    "Step 1: ptex2pdf",
                    "Step 2: pbibtex",
                    "Step 3: ptex2pdf",
                    "Step 4: 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",
}
```
        

また、上のメニューバーから「View」「Taggle Word Wrap」をクリックしてコードが折り返すように変更。


#BiBTexの使用
＊ターミナルの操作について
1.システム系ファイルの開き方
　option + command + G
をした後に、ファイルのパスを入力

2.ファイルのフルパスのコピー
　option + command + C

3.移動
　cd 移動先
ただし、名前に空白が含まれるときは “ “ で囲む必要がある

4.現在地（カレントディレクトリ）にあるファイルの確認
　ls

5.ファイルの作成
　touch ファイル名


このサイトを参考に行なった。
https://qiita.com/cheerfularge/items/2674d6180eed4af199da
しかし、↑このサイトだけだとできない、以下のサイトの「コンパイルする」の項を実行。環境変数の設定は必要なかった。
https://qiita.com/MoriKen/items/d5bb3c07f899d80b2309 
また、texファイル内で\cite{自分で設定した参考文献の名前}を書いて引用しないと、現れないので要注意。