LaTeXのトラブルいろいろ
最近 vscode で LaTeX を再び使いはじめるようになったのですが,いろいろと不具合が生じて苦戦していたので,バックログの意味も込めて解決法を記します.
1. TeX Live における back end gone
TeX Live でパッケージをインストールする際に back end gone というエラーメッセージが出てアプリケーションが落ちる.
→TeX Liveのアップデートで改善.
2023版をアップデートせずに使い続けていたのが原因と思われる.
2024版をインストールしたところパッケージを入れられるようになりました.
自動で更新を確認していると思い込んでいましたが,手動でやらなければいけないようです.
毎年春頃にアップデートされているようなので,次は忘れないようにしたいところです.
2. 問題パネルにエラーが出てこない
これまではエラーが出ていても problem panel に何も表示されていませんでしたが,TeX Live のアップデートに伴いエラーが表示されるようになりました.
3. chktex could not found
パッケージを入れられるようになったためChkTexをインストールできるようになりました.
それまではデバッグツールも何もなかったため,エラーが出たら自分でチェックしてました.
前述の problem panel にエラーが出てこないという問題もあったため仕方なくやっていましたが,改めて考えると時間の無駄すぎる.
ていうかこれが原因で一時期使わなくなってた気がする.
なので構文をチェックしてくれるChkTexは私にとっては神のようなソフトウェアでしたが,こいつが結構厄介でした.
ウキウキでインストールして "latex-workshop.chktex.enabled": true を settings.json に書き込んだところ,chktex could not found というエラーが出ました.
いやインストールしたじゃんと TeX Live を 100 回確認しましたが vscode は無情にもエラーを吐き出し続けました.
私の場合,編集しているTeXファイルと同じディレクトリに .chktexrc を作成したらエラーが出なくなりました.
中身はこんな感じです.
ファイルの名前を .chktexrc.txt などとしないように気をつけてください.
CmdLine
{
-n19
-n24
-n26
-n36
-n41
-n42
-n44
-n46
}
これで使えるようになったかと思えばまだ続きます.
4. chktex: WARNING -- Compilation of regular expression [(?![^][{}]{(?![^][{}]}))[^]]*[ failed with error repetition-operator operand invalid. Source: LaTeX
一応,3 の問題が解決してエラーチェックはできるようになってはいたのですが,右下にこいつが一生居座っててめちゃくちゃ邪魔でした.
ググっても .chktexrc の 247行目を削除しろとかいう意味不明な答えしかありませんでした.
いや,自分で作ったやつしかないから247行も無いんですけど...
紆余曲折あって,LaTeX の拡張機能をワークスペース上でオフにするとこのエラーは消えました.
work shop の方ではなく無印の方です.
これで chktexが完全に動作しました.
自分の目でエラーを探す必要がなくなったので記述が非常に楽になりました.
苦労した甲斐があった...
5. vscode上でLaTeXとgitを使っているとpdfの生成がうまくいかない
LaTeXの設定で,保存すると自動でpdfが生成されプレビュー画面が開けるようにしているのですが,LaTeXとgitを同時に使っていると変更箇所がプレビュー画面に反映されない問題に悩まされていました.
結論からいうと,githubにあるリモートリポジトリの名前と .gitフォルダがあるローカルのフォルダの名前が一致していなかったのが原因かと思われます.
vscodeでgitを使うときは最初にリポジトリを初期化すると思うのですが,そのときのカレントディレクトリに .gitフォルダが生成されます.
その .gitフォルダが入っているフォルダ(ややこしい)の名前とgithubで作ったリモートリポジトリの名前が一致していないとプレビューが上手くいかないっぽいです.
正直これが原因なのかは分かりませんが,名前を一致させてリポジトリを作り直したところ変更箇所がプレビューに反映されるようになりました.
これに辿り着くまでに中間ファイルの削除とか .jsonファイルいじったりしていましたがいずれも効果はありませんでした.
どれも初歩的なミスかもしれませんが,解決するまでに時間がかかったので私と同じ症状で悩んでいる方の参考になればと思います.
最後に,qiita と謎の個人サイトに感謝の意を表して終わろうと思います.