VSCode

VSCode

配置

C++ IntelliSense

以下是如何配置 includePath 的步骤:

  1. 打开 Visual Studio Code。
  2. 打开项目文件夹或者工作区文件夹。
  3. 在左侧的资源管理器中,找到并点击打开项目文件夹中的 .vscode 文件夹,如果没有该文件夹,则创建一个新的。
  4. .vscode 文件夹中创建或打开 c_cpp_properties.json 文件,如果不存在该文件,则可以通过选择 生成工作区的默认设置(Generate c_cpp_properties.json)来创建。
  5. c_cpp_properties.json 文件中添加或修改 includePath 部分,指定需要搜索的头文件路径。例如:
{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**",
                "/usr/include",
                "/usr/local/include"
            ],
            "defines": [],
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "gnu17",
            "cppStandard": "c++17",
            "intelliSenseMode": "gcc-x64"
        }
    ],
    "version": 4
}

Tricks

  • 如果一个项目调用了另外一个库,想要看另外一个库的代码,直接将另外一个库的路径写到c_cpp_properties.json::configurations::includePath中,记得路径后加上**表示递归处理所有子文件夹。

Windows平台

windows下需要指定VCWindows SDK的路径,以下是一个示例:

{
    "configurations": [
        {
            "name": "Win64",
            "includePath": [
                "${workspaceFolder}/**",
                "C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/include",
                "C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/ucrt",
                "C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared",
                "C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um",
                "C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt",
                "C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.8/include"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "compilerPath": "C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "msvc-x64"
        }
    ],
    "version": 4
}

X11 Remote SSH

  1. windows端下载X11客户端vcxsrv
  2. 配置windows环境变量,添加DISPLAY=localhost:0.0
  3. vscode的remote ssh配置添加:
Host some_host
    ...
    ForwardAgent yes
    ForwardX11 yes
    ForwardX11Trusted yes
  1. vscode配置setting.json中添加linux DISPLAY环境变量:
// 需要添加这一步是因为vscode设置的DISPLAY环境变量好像是被bash清空了,可以
// 在vscode的 "输出 -> Remote SSH" 搜索DISPLAY,可以看到实际上已经设置过了,
// 但是在terminal中却看到为空。下面填写的DISPLAY值也是从上面输出中获取的。
{
	...
	"terminal.integrated.env.linux": {
		"DISPLAY": "faceunity:10.0"
	},
	...
}

或者使用ssh命令行直接:ssh -Y some_user@some_host

插件

CodeGPT

remote ssh无法连接

目前官方还没有处理在remote ssh中使用的问题,从issue中发现,可以通过配置端口映射临时使用

方法一

netsh interface portproxy add v4tov4 listenaddress=127.0.0.1 listenport=54112 connectaddress=192.168.0.211 connectport=54112

但是这样配置之后,在windows本地就无法使用了,需要维持一个远程窗口的开启。

方法二: 直接host端打开一个vscode窗口并且打开codegpt插件窗口

问题

C++ IntelliSense混乱

重启VSCode。

remote ssh老断

不要使用windows自带的ssh工具,使用git的ssh工具,修改环境变量(用户和系统):

没有文件路径补全

安装Path IntelliSense插件。

Cursor

修改显示语言

CTRL + p调出命令,输入> display然后修改语言:

修改回复语言

CTRL + p调出命令,输出> rules调出用户规则,然后修改或者添加