使用 CMAKE 为 C++ 设置 Neovim
Setting Up Neovim for C++ with CMAKE
我将 coc 用于 code-completion,将 ale 用于 linting 我的 c++ 文件,当我将所有 headers 和源文件放在同一目录时,这工作正常,但是当我有具有典型 include
和 src
目录的 CMake 项目(分别用于 headers 和 .cpp 文件)此设置未能意识到我的 headers 在 include
目录等 linting 和代码完成不起作用。
在配置我的 neovim 设置以处理此项目结构方面的任何帮助,或可以完成我想要的不同插件的建议,将不胜感激。
请查看 CMake 关于 CMAKE_EXPORT_COMPILE_COMMANDS 的文档。
这是我的部分 .nvimrc
例如:
nnoremap <F5> :wa <bar> :set makeprg=cd\ build\ &&\ cmake\ -DCMAKE_BUILD_TYPE=debug\ -DCMAKE_EXPORT_COMPILE_COMMANDS=1\ ../view\ &&\ cmake\ --build\ . <bar> :compiler gcc <bar> :make <CR>
这会生成 compile_commands.json
文件,供各种 ALE Supported Languages and Tools 读取。
我将 coc 用于 code-completion,将 ale 用于 linting 我的 c++ 文件,当我将所有 headers 和源文件放在同一目录时,这工作正常,但是当我有具有典型 include
和 src
目录的 CMake 项目(分别用于 headers 和 .cpp 文件)此设置未能意识到我的 headers 在 include
目录等 linting 和代码完成不起作用。
在配置我的 neovim 设置以处理此项目结构方面的任何帮助,或可以完成我想要的不同插件的建议,将不胜感激。
请查看 CMake 关于 CMAKE_EXPORT_COMPILE_COMMANDS 的文档。
这是我的部分 .nvimrc
例如:
nnoremap <F5> :wa <bar> :set makeprg=cd\ build\ &&\ cmake\ -DCMAKE_BUILD_TYPE=debug\ -DCMAKE_EXPORT_COMPILE_COMMANDS=1\ ../view\ &&\ cmake\ --build\ . <bar> :compiler gcc <bar> :make <CR>
这会生成 compile_commands.json
文件,供各种 ALE Supported Languages and Tools 读取。