vscode写latex的正反向搜索问题

时间:2024-02-01 15:04:38

vscode写latex的正反向搜索问题

vscode使用LaTeX Workshop + TexLive时可以很舒畅的写作

但是在长篇写作时,会涉及到正反向搜索的需求。即根据源码搜pdf的位置,和根据pdf的位置搜索源码的位置。尤其改论文时用的很多。

但是我使用搜索功能发现不能用,几经搜索找到了问题。

在安装LaTeX Workshop时,需要在setting.json中进行一些配置工作,这里面有两项配置叫

    "latex-workshop.latex.autoClean.run": "onBuilt",
    "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",
        "*.gz"
    ],

这个配置是每次编译后,会将中间生成的临时文件删除掉,以保持项目文件夹的整洁。

但是!这里会阐述掉一个重要的文件,叫xxx.synctex.gz。这个文件负责的就是刚才说的正反向搜索的锚点。如果删除掉它,那么整个正反向搜索的功能就失效了。

想要不删除它,也很简单,只要注释掉上面的配置文件中的.gz就可以了。

使用正反向搜索的方法也很简单

正向搜索:先固定源码中的光标,然后Ctrl + Alt + J

反向搜索:Ctrl + 鼠标左键点击pdf中某个位置

最后附上我关于LaTeX Workshop的全部配置设置:

其中为了写论文方便,我把pdflatex - bibtex - pdflatex*2放到了最前面,不常用的话可以自己修改回去。

    // Latex workshop
    "editor.wordWrap": "on",
    "workbench.startupEditor": "newUntitledFile",
    "latex-workshop.latex.autoClean.run": "onBuilt",
    "latex-workshop.hover.command.enabled": true,
    "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",
        // "*.gz"
    ],
    "latex-workshop.view.pdf.viewer": "tab",
    "latex-workshop.latex.recipes": [
        {
            "name": "pdflatex ➞ bibtex ➞ pdflatex*2",
            "tools": [
                "pdflatex",
                "bibtex",
                "pdflatex",
                "pdflatex"
            ]
        },
        {
            "name": "XeLaTex