You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Mac上设置双击main.tex文件时,让VS Code打开其所在LaTeX项目文件夹并自动打开对应main.pdf

如何在Mac上设置双击main.tex文件时,让VS Code打开其所在LaTeX项目文件夹并自动打开对应main.pdf

嘿,我刚好之前为了复刻Overleaf的便捷性折腾过这个需求,给你分享两种亲测有效的方法,都是Mac原生工具+VS Code自带功能,不用装额外第三方软件:

方法一:用Automator创建自定义快速操作(推荐,小白友好)

Automator是Mac自带的自动化工具,几步就能搞定:

  1. 打开Launchpad,找到并启动Automator,新建一个「快速操作」(旧版本叫「服务」,功能完全一致)
  2. 在顶部的工作流设置里调整:
    • 「工作流接收当前」选择「文件或文件夹」
    • 「位于」选择「Finder」
    • 「文件类型」下拉搜索并选择「Tex文件」
  3. 在左侧动作库搜「运行Shell脚本」,把这个动作拖到右侧的工作流区域
  4. 把「传递输入」改成「作为自变量」,然后替换默认脚本为下面的内容:
    for f in "$@"
    do
      # 只对main.tex生效(如果想所有.tex文件都触发,删掉这个if判断即可)
      if [ "$(basename "$f")" = "main.tex" ]; then
        # 获取当前tex文件所在的项目文件夹路径
        folder_path=$(dirname "$f")
        # 用VS Code打开整个项目文件夹
        code "$folder_path"
        # 检查同目录下的main.pdf是否存在,存在则打开
        pdf_path="$folder_path/main.pdf"
        if [ -f "$pdf_path" ]; then
          # 想在VS Code内打开PDF?用这行(需提前装PDF Viewer类插件)
          code "$pdf_path"
          # 想用系统默认PDF阅读器打开?替换成下面这行:
          # open "$pdf_path"
        fi
      fi
    done
    
  5. Cmd+S保存这个快速操作,命名比如「Open LaTeX Project with PDF」
  6. 最后绑定默认打开方式:
    • 随便找一个main.tex文件,右键→「显示简介」
    • 拉到「打开方式」模块,点击下拉菜单选「其他…」
    • 在应用列表里找到刚才保存的快速操作(可直接搜名字,或者去「应用程序/Automator」文件夹找)
    • 勾选「始终以此方式打开」,再点击「全部更改」确认即可

方法二:VS Code内置任务+自定义触发(适合爱折腾配置的同学)

如果你更习惯用VS Code的内建功能,也可以这么配置:

  1. 先确保code命令能在终端调用:打开VS Code,按Cmd+Shift+P,输入「Shell Command: Install 'code' command in PATH」,执行这个命令(一次设置终身受用)
  2. 在你的LaTeX项目根目录下,新建.vscode/tasks.json文件,粘贴以下配置:
    {
      "version": "2.0.0",
      "tasks": [
        {
          "label": "Open Project and PDF",
          "type": "shell",
          "command": "cd ${workspaceFolder}; if [ -f main.pdf ]; then code main.pdf; fi",
          "runOptions": {
            "runOn": "folderOpen"
          }
        }
      ]
    }
    
  3. 最后设置Finder里的main.tex打开方式为VS Code,再去VS Code设置里开启「Files: Open Files in New Window」并设为on——这样双击main.tex时,VS Code会提示你是否打开所在文件夹,确认后就会自动触发上述任务打开PDF

几个关键注意点

  • 第一次运行Automator快速操作时,系统可能弹“无法打开”的提示,去「系统偏好设置→隐私与安全性→安全性」里点击「允许」就能解决
  • 如果方法一的脚本里code命令没反应,百分百是没装Shell Command,回到方法二的第一步补做就行
  • PDF的打开方式完全看你偏好:用code就是在VS Code内集成浏览,用open就是调用系统默认的PDF阅读器(比如预览)

我自己现在用的是方法一,设置好之后双击main.tex直接加载整个项目文件夹,同时自动弹出PDF,和Overleaf的流畅感几乎一样,再也不用手动点来点去折腾了😎

火山引擎 最新活动