2020-03-17

設定 SumatraPDF 的 SyncTeX 正/反查

原先我使用的 LaTeX editor 是 TeXstudio,而與 TeXstudio 配對的 PDF reader 則是 SumatraPDF,原因是 SumatraPDF 可以設定 SyncTeX 支援反查,只要在 PDF 檔上點兩下就會跳回 TeX 檔中相對應的段落,在修改文件的時候很方便。

但是我打算改以 Visual Studio Code 做為主要的 TeX 編輯器,於是備份一下原先對應 TeXstudio 的設定,也紀錄改用 VS Code 之後的設定。


進入 SumatraPDF 的設定選項

從左上角的三條槓開始,進入「設定值」選單底下的「選項」。


TeXstudio 裡的設定

其實安裝完 TeXstudio 之後就自動設定好了,以下留個紀錄
xelatex.exe -synctex=1 -interaction=nonstopmode %.tex


SumatraPDF 裡對應 TeXsutdio 的設定


"C:\Program Files (x86)\TeXstudio\texstudio.exe" "%f" -line %l




VS Code 裡的設定

  1. 安裝 LaTeX-Workshop 套件
  2. 參考 LaTeX-Workshop 的 Wiki ,在 settings.json 加入以下的設定
  3. "latex-workshop.latex.tools": [
        {
            "name": "xelatex",
            "command": "C:\\Program Files (x86)\\TeXLive\\2019\\bin\\win32\\xelatex",
            "args": [
                "-synctex=1",
                "-interaction=nonstopmode",
                "-file-line-error", 
                "-shell-escape",
                "%DOCFILE%"
            ]
        },
    "latex-workshop.view.pdf.external.synctex.command": "C:/Program Files/SumatraPDF/SumatraPDF.exe",
    "latex-workshop.view.pdf.external.synctex.args": [
        "-forward-search",
        "%TEX%",
        "%LINE%",
        "-reuse-instance",
        "-inverse-search",
        "code \"C:\\Users\\使用者名稱\\AppData\\Local\\Programs\\Microsoft VS Code\\resources\\app\\out\\cli.js\" -r -g \"%f:%l\"",
        "%PDF%",
    ],
其中 code 是VS Code 所在的資料夾,而 SumatraPDF 所在的路徑,及 VS Code 安裝的資料夾請自行更換。

第一段是設定從 VS Code 正查 PDF 檔,快速鍵是 Ctrl + Alt + J,在 VS Code 裡按下快速鍵就會跳到 PDF 檔裡相對應的段落。


SumatraPDF 裡對應 VS Code 的設定

"C:\Users\使用者名稱\AppData\Local\Programs\Microsoft VS Code\Code.exe" -g "%f:%l"
其中的 C:\Users\使用者名稱\AppData\Local\Programs\Microsoft VS Code\ 是 VS Code 安裝的資料夾,請根據自己的環境更改。

沒有留言:

張貼留言

您好:

感謝您來訪這個小站,因為工作繁忙的關係,我並不會時常查看留言,所以可能會很晚才回覆,請見諒。