今後の拡張機能のアップデートで,以降のPDFまわりの設定を自動で行うようになるらしいので,それを待つ方が確実かもしれません.(wiki参照)
Build and Preview on Save (forwards search incl.) v>=0.3
With SumatraPDF installed in its default location, Zed will automatically build (with latexmk) and forward-search (including opening the preview window the first time) on save unless any user texlab workspace settings specify otherwise. SumatraPDF will then highlight the location in the PDF corresponding to the current editing location.
はじめに
2025年10月に Zed というエディタのWindows版が正式リリースされた.高速に動作して快適らしい.ぜひともLaTeXエディタとして利用したいと思い環境構築を行った.しかし,今までVSCodeのLaTeX環境(しかも基本的な)を利用していた私にとってPDFまわりの設定が分かりづらく,環境構築に時間がかかったため,これから環境構築をする人に向けて残しておきたい.
(タイトルで「PDFプレビュー環境」としている通り,1から環境構築(Zed,TeX Liveの導入等...)をする方にとっては情報が不足しているかもしれません.)
以降 {user} が何回か登場します.自分のユーザ名に置き換えてください.
できたこと
- TeXソースファイル保存時にビルド・PDFプレビューの更新
- 順方向検索(TeX→PDF)
- 逆方向検索(PDF→TeX)
自分の環境
| 項目 | バージョン |
|---|---|
| OS | Windows11 Home 25H2 |
| エディタ | Zed 0.218.6 |
| TeXディストリビューション | TeX Live 2025 |
| ビルドツール | latexmk 4.87 |
| PDFビューア | SumatraPDF 3.5.2 (64bit) |
また,以下のような .latexmkrc を C:/User/{user}直下に配置している.
# LaTeX
$latex = "platex -halt-on-error -file-line-error -interaction=nonstopmode %O %S";
# BibTeX
$bibtex = "pbibtex %O %S";
$biber = "biber --bblencoding=utf8 -u -U --output_safechars %O %S";
# index
$makeindex = "mendex %O -o %D %S";
# DVI->PDF
$dvipdf = "dvipdfmx %O -o %D %S";
$max_repeat = 3;
$pdf_mode = 3;
PDFビューア以外は上記のものをインストール済みとして手順を示していきます.
手順
1. 拡張機能 "LaTeX" のインストール
Zedを開いて Shift+Ctrl+P でコマンドパレットを開き,"extensions" などと入力して,zed: extensions を選択する.
すると拡張機能の管理画面が開くため,
検索ボックスに "latex" などと入力してでてくる,
拡張機能 LaTeX をインストールする.
2. SumatraPDFのインストール
下記リンクから,SumatraPDFをダウンロードする.
代表的なPDFビューアにAcrobat Readerがあるが,Windows版のAcrobat Readerは開いているPDFをロックしてしまう仕様のため,編集中のPDFの更新ができない.
拡張機能のwikiでもSumatraPDFが推奨されている.
In Windows, the recommended PDF viewer to use is sumatraPDf in order to have forwards+inverse search.
3. settings.jsonの編集
Zedを開いて Shift+Ctrl+P でコマンドパレットを開き,"settings" などと入力して,zed: open settings file を選択.
すると settings.json の編集画面が開くため,以下の設定を追記する.
今回の機能に関係ない設定も混じっています.お好みで変更してください.
{
// ...
// その他の設定
// ...
"lsp": {
"texlab": {
"settings": {
"texlab": {
"build": {
"onSave": true,
"forwardSearchAfter": true,
"pdfDirectory": "out",
"auxDirectory": "build",
"executable": "latexmk",
"args": ["-synctex=1", "-outdir=out", "-auxdir=build"],
},
"forwardSearch": {
"executable": "C:/Users/{user}/AppData/Local/SumatraPDF/SumatraPDF.exe",
"args": ["-reuse-instance", "%p", "-forward-search", "%f", "%l"],
},
},
},
},
}
}
各行の説明
"texlab.build.onSave": true
TeXソースファイル保存時にビルドを行うをtrue
"texlab.build.forwardSearchAfter": true
TeXビルド時に順方向検索を行うをtrue
"texlab.build.pdfDirectory": "out"
"texlab.build.auxDirectory": "build"
出力したPDFファイルを ./out に,中間ファイルを ./build に保存する.
"texlab.build.executable": "latexmk"
"texlab.build.args": ["-synctex=1", "-outdir=out", "-auxdir=build"]
TeXビルド時に実行するコマンド latexmk に,与える引数を -synctex=1, -outdir=out, -auxdir=build に設定する.
出力ファイルをTeXファイルとは異なる階層に設定する場合は,pdfDirectory, auxDirectory, args すべてで明示してください.
"texlab.forwardSearch.executable": "C:/Users/{user}/AppData/Local/SumatraPDF/SumatraPDF.exe"
"texlab.forwardSearch.args": ["-reuse-instance", "%p", "-forward-search", "%f", "%l"]
順方向検索を行う際に開くPDFビューアを C:/Users/{user}/AppData/Local/SumatraPDF/SumatraPDF.exe に, 与える引数を -reuse-instance %p -forward-search %f %l に設定する.
4. SumatraPDFの詳細設定の変更
SumatraPDFを開き,左上のメニューから,「設定」→「詳細設定」を選択する.
すると,SumatraPDF-settings.txt が立ち上がるため,以下を設定する.
-
EnableTeXEnhancementsという項目の値がfalseになっている場合はtrueに変更する -
InverseSearchCmdLine = "C:\Users\{user}\AppData\Local\Programs\Zed\bin\zed.exe" "%f":%lという行を追記する - 「設定」→「オプション」から,逆順検索コマンドラインの設定 が追記したものになっていることを確認する(違うものになっていたら変更する)
動作確認
TeXソースファイル保存時にビルド・PDFプレビューの更新
SumatraPDFがアクティブになり(初回保存時は起動する),PDFが更新される.
順方向検索(TeX→PDF)
保存をすると,保存時点にカーソルがある場所に該当する部分を表示する.
逆方向検索(PDF→TeX)
SumatraPDF上でPDFを Alt+ダブルクリック するとその部分に該当するTeXソースファイルの場所にカーソルが移動する.
おわりに
外部のPDFビューアと連携するような設定を自分で行わなければいけないのが難しかった.その点VSCodeのLaTeX Workshopは,インストールすればあとはVSCode内で完結するうえ,ググったときに情報がたくさんあるためかなり導入しやすい方なんだなと感じた.
私と同じようにPDFまわりで困っている方の参考になれば幸いです.
参考サイト
- 拡張機能 LaTeX のwiki
- texlabのwiki
- 京都大学のwiki


