FileManager-Actions能否在当前目录启动动作?Nautilus右键打开VS Code配置问题
Nautilus右键当前目录启动VS Code配置方法
通用解决方案(适配本地分区+挂载盘)
你遇到的参数解析异常是Nautilus路径参数传递给VS Code时的兼容问题,不用纠结参数选择,直接使用「先切换目录再启动程序」的逻辑即可100%适配所有场景:
方法1:通过FileManager-Actions配置右键菜单项
- 先安装配置工具(Debian/Ubuntu系发行版):
sudo apt install filemanager-actions - 打开配置工具新建动作,按以下参数填写:
- 「动作」标签:自定义菜单名称为在VS Code中打开,勾选「在目录上下文菜单中显示」
- 「命令」标签:
- 路径:
/bin/bash - 参数:
-c "cd %d && code ."
- 路径:
- 保存配置后执行
nautilus -q重启文件管理器即可生效。
方法2:通过Nautilus脚本快速实现
无需额外安装软件,直接写脚本配置:
- 进入脚本目录:
cd ~/.local/share/nautilus/scripts/ - 新建命名为
在VS Code中打开的脚本文件,写入以下内容:
#!/bin/bash cd "$1" || exit 1 code .
- 给脚本添加执行权限:
chmod +x ./在VS Code中打开 - 重启Nautilus后,右键空白处的「脚本」子菜单就会出现对应选项,所有目录包括挂载盘均可正常使用。
原参数异常原因说明
%d参数本身是当前目录的正确路径,异常是因为VS Code接收路径参数时,对部分挂载盘的路径格式解析逻辑问题导致自动跳转父级,通过cd命令先切换工作目录再启动VS Code,就可以完全规避该兼容问题。%b是目录名而非完整路径,仅在本地分区下Nautilus会自动补全路径前缀,挂载盘下没有对应前缀所以失效,不建议使用。
内容的提问来源于stack exchange,提问作者Ostap Kuchma
相关产品推荐
相关产品推荐

