适用于Cursor的兼容性设置

假定

环境中VS Code的优先级高于Cursor。

环境变量设置

将VS Code和Cursor的运行路径放在环境变量中,其中VS Code的优先级高于Cursor。

在Cursor的settings.json中加入:

settings.json
1
2
3
4
5
{
"terminal.integrated.env.windows": {
"PATH": "<path-of-cursor>;${env:Path}",
},
}

这样code命令在Cursor内是打开Cursor,其他时候都是打开VS Code。

Git设置

在上一步的基础上,只需要将Git的默认编辑器和比较编辑器都设为code即可打开正在使用的编辑器。打开主目录下的.gitconfig,加入:

.gitconfig
1
2
3
4
5
6
[core]
editor = code.cmd --wait
[diff]
tool = vscode
[difftool "vscode"]
cmd = code.cmd --wait --diff $LOCAL $REMOTE

这样Git就不会调用其他编辑器了。

Windows上这里有个坑。当命令设置为code时,Git会优先找code,之后再找code.cmd,这与命令行的行为不一样。即使Cursor的路径比VS Code先出现,但是Cursor没有提供code时,Git会自动打开找到的第一个、即VS Code的code,而非路径更早出现的、但是名为code.cmd的程序。