Closed13

LuaLaTeX 導入

RARA

古い LaTeX パッケージを新しい LuaLaTeX で動かす際にトラブルが生じた場合、ファイルの1行目に\RequirePackage{luatex85}と書くと治る場合がある。

RARA

TeX Live 2020 および texmf-local が既に次のようにインストールされているが、ここでは改めて TeX Live 2023 を導入する

/usr/local/texlive/2020
/usr/local/texlive/texmf-local
RARA

TeX Live 公式のインストーラの使用 を参考に TeX Live を導入する

curl -O http://ftp.naist.jp/pub/CTAN/systems/texlive/tlnet/install-tl-unx.tar.gz

ここで curl(カール) コマンドは URL を用いてファイルの送受信を行う
(curl = Client for URL)
-O (大文字のO)オプションはダウンロードしたデータをファイルとして保存する

上記コマンドは、http://ftp.naist.jp/pub/CTAN/systems/texlive/tlnet から install-tl-unx.tar.gz というファイルをダウンロードし、保存する
(curl コマンドについてはこのQiita記事が詳しい)

curl コマンドを使用しなくても直接ここからファイルを選択して保存することと一切変わりない

RARA

ファイルを展開する

tar xvf install-tl-unx.tar.gz

補足

今回ダウンロードしたファイル名をみると、innstall-tl-unx.tar.gz とある。

大規模な複数のファイル容量を管理するにはアーカイブ化圧縮が行われる。アーカイブ化は複数のファイルやフォルダを一つのファイルにまとめることをいい、圧縮はファイルやフォルダ内の無駄なデータを削除してデータ容量を小さく抑えることをいう

アーカイブ化には tar(ター) コマンド(tape archives の略)を使用する。このとき作られるアーカイブファイルの拡張子は .tar となる。オプションに cvf とするとアーカイブ化、xvf とすると展開する。

tar cvf <ファイル名> 
tar xvf <ファイル名>

詳細(Qiita)

RARA

インストーラーを実行する

cd install-tl-20210211
sudo ./install-tl -no-gui -repository http://mirror.ctan.org/systems/texlive/tlnet/

管理者権限で実行するため(sudo)、パスワードを入力する。
Import settings from previous TeX Live installation: (y/n):と聞かれたのでyと答えたがエラーが発生した。
もう一度やり直してIと入力すると、Enter command:と表示されるので再びIを押した。

インストールが始まる。ただし、時間が非常にかかる。

エラーメッセージについてはよく読んでいない

Import settings from previous TeX Live installation: (y/n): y
Trying to load old TeX Live Database,
Importing settings from old installation in /usr/local/texlive/2020
Can't use string ("ARRAY(0x7fe25vs95ww8)") as an ARRAY ref while "strict refs" in use at tlpkg/TeXLive/TLPaper.pm line 229.

tlpkg/TeXLive/TLPaper.pm 229行目で「strict refs」が使用されている間は、文字列("ARRAY(0x7fe25vs95ww8)")をARRAY refとして使用できない。

RARA

合計4518個のファイルを49分15秒かけてインストールした。
TeX Liveへようこそ! と表示されたため、インストールに成功した。

TeX Liveへようこそ!


ドキュメントの一覧は/usr/local/texlive/2023/index.htmlをご覧ください。
TeX Liveのウェブサイト(https://tug.org/texlive/)にはすべてのアップデートとコレクションの情報が掲載されています。
TeX Liveは全世界のTeXユーザ会有志による合同プロジェクトです。
TeX Liveプロジェクトをサポートしていただける場合お好きなTeXユーザ会に入会することをご検討ください。
TeXユーザ会の一覧はhttps://tug.org/usergroups.htmlでご確認いただけます。


Add /usr/local/texlive/2023/texmf-dist/doc/man to MANPATH.
Add /usr/local/texlive/2023/texmf-dist/doc/info to INFOPATH.
Most importantly, add /usr/local/texlive/2023/bin/universal-darwin
to your PATH for current and future sessions.
Logfile: /usr/local/texlive/2023/install-tl.log
RARA

先のメッセージに従ってシンボリックリンクを追加する。

sudo /usr/local/texlive/2023/bin/universal-darwin/tlmgr path add

これで TeX Live 2023 の導入は終了
tlmgr は TeX Live Manager の略

RARA

任意のエディタで .tex ファイルを作成し、(例としてtest.tex)それをコンパイル、実行すれば文章が完成する。
使用する TeX 環境によりコンパイル方法が異なる。\mathrm{Lua}\LaTeXの場合は

lualatex test

とすれば、test.tex のあるディレクトリに test.pdf が生成される。

RARA

次にエディタとして VSCode を使用する場合のセットアップを行う
VSCode には LaTeX WorkShopという拡張機能があるのでこれを使用する
VSCode にこの拡張機能をインストールし、Setting.jsonファイルを開く

今回は \mathrm{Lua}\LaTeX でコンパイルすることを考えるため、latexmk の設定を次のようにする(これは\TeX Wiki の Visual Studio Code/LaTeX を参考にした)

"latex-workshop.latex.tools": [
{
	"name": "latexmk",
	"command": "latexmk",
	"args": [
	 "-e",
	 "$lualatex=q/lualatex %O -synctex=1 -interaction=nonstopmode -file-line-error %S/",
	 "-e",
	 "$bibtex=q/upbibtex %O %B/",
	 "-e",
	 "$biber=q/biber %O --bblencoding=utf8 -u -U --output_safechars %B/",
	 "-e",
	 "$makeindex=q/upmendex %O -o %D %S/",
	 "-norc",
	 "-gg",
	 "-pdflua",
	 "%DOC%"
	]
}
]
RARA

私の設定

// ---------- Language ----------
    
        "[tex]": {
            // スニペット補完中にも補完を使えるようにする
            "editor.suggest.snippetsPreventQuickSuggestions": false,
            // インデント幅を2にする
            "editor.tabSize": 2,
        },
    
        "[latex]": {
            // スニペット補完中にも補完を使えるようにする
            "editor.suggest.snippetsPreventQuickSuggestions": false,
            // インデント幅を2にする
            "editor.tabSize": 2,
            "editor.wordWrap": "on",
            "editor.wordSeparators": "./\\()\"'-:,.;<>~!@#$%^&*|+=[]{}`~?。.、,()「」『』[]{}《》てにをはがのともへでや ",
            // 空白文字のハイライト
            "editor.unicodeHighlight.invisibleCharacters": true,
            // ただし次の記号はハイライトしない
            "editor.unicodeHighlight.allowedCharacters": {
                ",": true,
                ".": true,
                "!": true,
                "?": true,
                "[": true,
                "]": true,
                "{": true,
                "}": true,
                "<": true,
                ">": true,
                " ": true,
            },
            "editor.stickyScroll.enabled": true,
        },
    
        "[bibtex]": {
            // インデント幅を2にする
            "editor.tabSize": 2
        },
    
    
    // ---------- LaTeX Workshop ----------
    
        // 使用パッケージのコマンドや環境の補完を有効にする
        "latex-workshop.intellisense.package.enabled": true,
    
        // 生成ファイルを削除するときに対象とするファイル
        // デフォルト値に "*.synctex.gz" を追加
        "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",
            "*.snm",
            "*.nav",
            "*.dvi",
            "*.synctex.gz"
        ],
    
        // ビルドのレシピ
        "latex-workshop.latex.recipes": [
            {
                "name": "latexmk",
                "tools": [
                    "latexmk"
                ]
            },
        ],
    
        // ビルドのレシピに使われるパーツ
        "latex-workshop.latex.tools": [
            {
                "name": "latexmk",
                "command": "latexmk",
                "args": [
                    "-e",
	                "$lualatex=q/lualatex %O -synctex=1 -interaction=nonstopmode -file-line-error %S/",
	                "-e",
	                "$bibtex=q/upbibtex %O %B/",
	                "-e",
	                "$biber=q/biber %O --bblencoding=utf8 -u -U --output_safechars %B/",
	                "-e",
	                "$makeindex=q/upmendex %O -o %D %S/",
	                "-norc",
	                "-gg",
	                "-pdflua",
	                "%DOC%"
                ],
            },
        ],
        "latex-workshop.view.pdf.viewer": "tab",
        "editor.wordWrap": "on",
        "editor.unicodeHighlight.nonBasicASCII": false,
このスクラップは2023/04/09にクローズされました