我正在使用Windows并尝试使用带有本指南you-complete-me的VS Code中的Visual Studio Code Dev扩展名自动补全功能,但随后出现了以下问题:
接下来是above guide,我尝试在工作区设置中设置you-complete-me:
"ycmd.path": "C:/Program Files/~/.ycmd",
"ycmd.global_extra_config":"D:/chromium/depot_tools/src/tools/vim/chromium.ycm_extra_conf.py",
"ycmd.confirm_extra_conf": false,
其次是问题,我通过以下命令生成了compile_command.json文件:
ninja -C out/Default -t compdb cc cxx objc objcxx > out/Default/compile_commands.json
然后在
c_cpp_properties.json
文件中,我更新了“includePath”,“browse”路径,并将上述compile_commands.json
文件的路径添加到了“compileCommands”中: "name": "Win32",
"includePath": [
"C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC/Tools/MSVC/14.12.25827/include/*",
"C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC/Tools/MSVC/14.12.25827/atlmfc/include/*",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/um",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/ucrt",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/shared",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/winrt",
"${workSpaceRoot}",
"D:/chromium/depot_tools/src"
],
"compileCommands": "D:/chromium/depot_tools/src/out/Default/compile_commands.json",
"defines": [
"_DEBUG",
"UNICODE"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC/Tools/MSVC/14.12.25827/include/*",
"C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC/Tools/MSVC/14.12.25827/atlmfc/include/*",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/um",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/ucrt",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/shared",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/winrt",
"${workSpaceRoot}",
"D:/chromium/depot_tools/src"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
但是什么也没有发生,这些问题仍然出现。谁能帮助我解决这些问题,或为我推荐一个清晰的指南来开始使用VS Code中的 Chrome ?
最佳答案
我花了一些时间尝试使YCM在Windows上运行,但没有运气。但是,我能够使IntelliSense正常工作。首先,请确保您已安装C/C++
扩展名。
c_cpp_properties.json:
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"windowsSdkVersion": "10.0.17134.0",
"compilerPath": "${workspaceFolder}/third_party/llvm-build/Release+Asserts/bin/clang-cl.exe",
"compileCommands": "${workspaceFolder}/out/Default/compile_commands.json",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64"
}
],
"version": 4
}
我使用此命令生成compile_commands.json:
python tools/clang/scripts/generate_compdb.py -p out/Default -o out/Default/compile_commands.json
此外,除非您知道如何使它工作,否则我建议您卸载/禁用YCM,因为它会干扰C / C++扩展。
关于c++ - 如何在带有Visual Studio Code的Chromium中使用自动补全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48304336/