VSCODE 和 SumatraPDF 反向搜索问题

VSCODE 和 SumatraPDF 反向搜索问题

今天尝试将 sumatraPDF 中的 inverse_Search 复制到 Vscode(latex workshop) 中。在 sumatraPDF 中的“设置反向搜索命令行”一栏中,我输入的是“ E:\VSCODE\Microsoft VS Code\Code.exe" -g "%f":%l”,也就是我的路径Code.exe。但是当我点击一个 pdf 文件时,出现提示:“ EPERM:operation not permitted,mkdir'c:\Users\16323\.vscode\extensions.Please make sure the following directories writable: C:\Users\16323\AppData\Roaming\Code C:\Users\16323\.vscode\extensions'”。我想问题的原因是我把 vscode 插件的安装位置改成了“ E:\VSCODE”,并创建了指向该目录的符号链接,以节省 C 盘空间。我该如何解决这个问题?

答案1

为了记录,这是该问题的解决方案,摘自此处论坛讨论

重要的:要使反向搜索工作(仅限首次使用),必须关闭所有 SumatraPDF 实例,然后使用LaTeX 文件中的Ctrl+ Alt+J热键在 SumatraPDF 中打开相应的 PDF。如果没有此步骤,则在 SumatraPDF 中双击 PDF 会打开文件cli.js而不是 LaTeX 文件。

这给出了正确的正向和反向搜索苏门答腊PDFVSCode,使用奇妙的LaTeX 工作坊扩大:

  • 使用Ctrl++从 VSCode 中的 LaTeX 编辑器跳转到 SumatraPDF 中的 PDF 位置AltJ

  • 用于mouse double click从 SumatraPDF 中的 PDF 跳转到 VSCode 中的 LaTeX 行。

settings.jsonVSCode 中,添加以下行

"latex-workshop.view.pdf.viewer": "external",
"latex-workshop.view.pdf.external.viewer.command": "C:/Program Files/SumatraPDF/SumatraPDF.exe",
"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","%PDF%"],

然后,在 SumatraPDF 中设置反向搜索命令如下,同时PathToCode用 VSCode 的实际路径替换:

"C:\PathToCode\Microsoft VS Code\Code.exe" "C:\PathToCode\Microsoft VS Code\resources\app\out\cli.js" --ms-enable-electron-run-as-node -r -g "%f:%l"

在此处输入图片描述

相关内容