安装
- 使用vim插件管理器plug.vim安装,添加
Plug 'puremourning/vimspector'
- 安装debug adapters(gadgets),实际在后台工作的程序,vimspector只是一个前台交互wrapper
- 配置项目的debug配置文件
.vimspector.json
[!NOTE]
步骤二中需要设置在terminal中操作,因为需要代理网络访问。
- $env:HTTPS_PROXY = “xxxx” [设置环境变量HTTPS_PROXY,用于python网络接口]
- python .\install_gadget.py --enable-c --enable-python
可以看到安装adaptor有两种方式,一种通过vim中的命令(不推荐)会由于网络导致安装失败,并且该失败会导致后续通过脚本成功安装之后检测不到成功安装。另一种是通过 install_gadget.py
脚本来安装adapter(推荐)
配置
官网给出了一些简单的vimspector.json的配置:puremourning/vimspector: vimspector - A multi-language debugging system for Vim (github.com)
配置文件中具体的手册参考文档:Configuration | Vimspector Documentation (puremourning.github.io)
//vimspector.json中可以有配置,且vimspector官方对该json配置做了一些扩展支持符号扩展等特性
{
"configurations": {
"cpp_launch": {
"adapter": "CodeLLDB",
"configuration": {
"name": "cpp:launch",
"stopAtEntry": true,
"type": "cppdbg",
"request": "launch",
"program": "${workspaceRoot}/ninja_build/out/decoder.exe",
"args": [ "*${CommandLineArgs}" ],
"cwd": "${workspaceRoot}/ninja_build/out",
"environment": [],
"externalConsole": true,
"MIMode": "gdb"
}
}
"python_Launch": {
"adapter": "debugpy",
"configuration": {
"name": "python3: Launch",
"type": "python",
"request": "launch",
"cwd": "${workspaceRoot}",
"stopOnEntry": true,
"console": "externalTerminal",
"debugOptions": [],
"program": "${script:${file\\}}"
}
}
}
}
使用
-
首先是快捷键映射,官方已经有两套默认配置,只需设置全局变量
let g:vimspector_enable_mappings = 'VISUAL_STUDIO'
或let g:vimspector_enable_mappings = 'HUMAN'
即可使用。所有可用映射参见官网puremourning/vimspector: vimspector - A multi-language debugging system for Vim (github.com) -
vim界面上可以点击(winbar),不需要自己重写打乱自己的映射