【问题标题】:How to use autocompletion in Chromium with Visual Studio Code如何通过 Visual Studio Code 在 Chromium 中使用自动完成功能
【发布时间】:2018-06-26 12:35:21
【问题描述】:

我正在使用 Windows 并尝试通过本指南 Visual Studio Code Dev 在 VS Code 中使用带有 you-complete-me 扩展名的自动完成功能,但后来我遇到了这样的问题:

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 中的铬吗?

【问题讨论】:

    标签: c++ json autocomplete visual-studio-code chromium


    【解决方案1】:

    我花了一些时间尝试让 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++ 扩展。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-28
      • 2019-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-10
      • 2019-06-06
      • 2015-10-12
      相关资源
      最近更新 更多