美文网首页Linux Manjaro Neovim
cmake - 基于neovim 0.5的LSP配置

cmake - 基于neovim 0.5的LSP配置

作者: 老杜振熙 | 来源:发表于2021-06-10 15:47 被阅读0次

首先,使用ChristianChiarulli大神的neovim0.5的配置,基本全部基于Lua。
GitHub - ChristianChiarulli/LunarVim: A Neovim config made with sane defaults

这套配置已经搭建了完整的框架,但是需要的LSP server需要自己安装,安装也很简单,直接vim命令行:LspInstall <language-name>即可,比如此处我们需要的是cmake,那就是:LspInstall cmake

安装完成之后,再加入一点配置信息。首先是cmake启动文件,即cmake-ls.lua,放置在相应的文件夹下,如下(其实文件名可以随便取):

cmake-ls.lua文件放置位置

一个简单的cmake-ls.lua如下(注意,cmd字段是必填的,这是告诉系统对应的程序在哪条路径下,DATA_PATH是在根部init.lua中进行定义的):

cmake-ls.lua

随后,再在根部init.lua中加入一行require 'lsp.cmake-ls'即可

init.lua

然后就可以愉快的自动补全啦!


效果呈现

最后,对于C++工程项目而言,因为包含多个文件,因此需要告诉clangd这个项目是如何构建(build)的。对于cmake-based的工程而言,这很简单,只需要在执行cmake的时候,加上-DCMAKE_EXPORT_COMPILE_COMMANDS=1这个flag就可以,例如:cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=1 -S . -B build,那么,一个compile_commands.json文件就会生成在build文件夹中。之后,再在工程根目录下创建一个软链接即可:ln -s build/compile_commands.json .即可。这样一来,clangd就知道这个工程是如何进行构建的,就可以更好的执行gd,gr等操作。

  • 其实,如果不想写了完整的CMakeLists.txt之后再实现vim的跳转的话,可以事先配置一个环境变量CPLUS_INCLUDE_PATH,加入需要搜索的路径,然后export CPLUS_INCLUDE_PATH,vim(clangd)就知道需要在哪里搜索头文件了。

其他的语言也是一样的。Now enjoy it!

相关文章

  • cmake - 基于neovim 0.5的LSP配置

    首先,使用ChristianChiarulli大神的neovim0.5的配置,基本全部基于Lua。GitHub -...

  • [Other] emacs lsp-mode + python-

    0. Emacs + LSP lsp-mode 是 emacs 基于 LSP 的客户端。 python-langu...

  • LVGL模拟器

    LVGL的官方代码库中提供基于eclipse配置下载,这里配置了基于win10环境下使用cmake的配置方法,还添...

  • Neovim 配置

    01. VIM 配置 02. Neovim 配置 03. IdeaVim 进阶配置 04. VsVim 配置 前言...

  • windows配置neovim

    最近在windows下将gvim换成了neovim,配置过程如下 安装neovim 我在windows下使用sco...

  • Autostart for gopls failed: matc

    问题 nvim内置 lsp 配置 gopls 后,编写 go 文件 LSP 报错 解决 设置 root_dir 触...

  • neovim 插件管理

    安装vim-plugin neovim 插件配置 默认配置路径~/.config/nvim/init.vim ca...

  • neovim 插件配置

    neovim 正在变得越来越流行,虽然很多人喜欢vscode,但是这并不妨碍有些人已经开始走进neovim,并且深...

  • 从零开始配置vim(26)——LSP UI 美化

    之前我们通过几个实例演示如何配置其他语言的lsp服务,相信各位小伙伴碰到其他的编程语言也能熟练的配置它对应的lsp...

  • Nvim 内置 LSP 配置 Nim LSP

    lspconfig 配置 安装 alaviss/nim.nvim,激活 LSP,提供补全、高亮等

网友评论

    本文标题:cmake - 基于neovim 0.5的LSP配置

    本文链接:https://www.haomeiwen.com/subject/rtwosltx.html