YouCompleteMe C/C++ VIM CMake 工程 代码提示不可用问题

YouCompleteMe 介绍 如果安装完YouCompleteMe并配置好后 (本站有过程记录,点击这里查看),就可以 使用单文件来检测代码提示效果了。但是,当 S&E 打开他的 C/C++工程时,却发现代码提 示、跳转等功能不能正常使用。在查阅文档后,S&E 发现原来是 YouCompleteMe 相关的索 引数据库没有建立,相关的编译选项并不正确,所以 YouCompleteMe 所使用的的 clangd 就不能将多个源文件联系起来。 建立 C/C++ VIM 代码提示索引的方法 如果是使用 CMake 建立工程,则可以在 CMakeList.txt 中加入 set( CMAKE\_EXPORT\_COMPILE\_COMMANDS ON ) 或者在命令行 cmake 后加上-DCMAKE_EXPORT_COMPILE_COMMANDS=ON也行 建立索引的原理 YouCompleteMe 读取由构建系统 CMake 生成的编译数据库(通常名字叫做 compile_commands.json),这样就可以完成对于工程文件的索引。而编译数据库包含项目 中每个编译单元的编译器调用。YouCompleteMe 会寻找打开文件所在目录中的 compile_commands.json,如果没找到会递归地向上查找这个文件。如果在它找到 .ycm_extra_conf.py 之前,找到了 compile_commands.json,那么它就会停止搜索,然 后,让 clangd 处理接管并处理该文件中含有的标志。 在完成上述这些操作 后,YouCompleteMe 的相关功能就可以正常使用了。

2021年2月6日

Vim 代码提示插件 YouCompleteMe 安装与配置

介绍 对于在 Vim 下的 C/C++程序编写,如果有代码提示插件会大大提高编写效率。大型 IDE 用 的多了,刚回归 Vim 的 S&E 比较依赖这个。正好 YouCompleteMe 能够满足他的相关需 求。索性把安装与配置的过程记录在这里,以供下次回忆使用。 除了 C/C++,YouCompleteMe 支持 Java、Go、C#、Objective-C、CUDA 等,可以说是比较强大 了。但是话说,写 Java 为什么要用 Vim 呢?IDEA 貌似更好。 使用后发现这插件还支持 代码跳转、引用查找、修改函数名和格式调整等操作,挺方便。 Giuhub 仓库地 址:https://github.com/ycm-core/YouCompleteMe 前置条件 安装最新的 YouCompleteMe 插件需要满足一些条件 Vim 8.1 以上 并且启用了 Python3 扩展支持(本站有过程记录,点击这里查 看) GCC 8 以上 或者 Clang 7 以上 Python3.6 以上编译的时候有–enable-shared 选项(一般包管理器安装都带有) 对于 Debian 10, 通过包管理器安装的 Gcc 版本为 8.3.0。 然后可以通过以下命令查看 编译器版本 % cc -v 对于 python3 的版本,使用以下命令查看 % python3 --version 对于 Vim 版本,使用执行以下命令查看 ...

2021年2月6日

Vim主题 spf13-vim.sh 的安装与使用

Vim 主题介绍 我经常使用 vim 为在 Linux 下的主要的代码编辑器。每当 SSH 进入一个新的开发系统环 境,为了编写方便,他总是需要手动安装 Vim 并配置各类常用插件。spf13-vim.sh 是一个 使用于 Vim 的插件和相关资源的发行版。一条命令,即可以自动安装常用的配套的插件环 境。 Github 仓库地 址:https://github.com/spf13/spf13-vim 心得 我感觉这个就好像快速安装了一个以 Vim 为核心的 IDE(可以类比 Vscode)。然 后,spf13-vim.sh 产生一个比较规范的 vim 配置文件层次结构,方便后来再添加其他插 件,也避免无规划地手动添加插件产生的杂乱的配置文件。而且,把相关插件的优化和配置 工作丢给它后,省心了不少。 安装 前置条件: git curl vim 7.3 以上 本站有安装 Vim 8.2 的相关过程记录:点击这里查 看 对于 Debian 10 可以简单地执行以下命令安装 git 和 curl % sudo apt install git curl 然后对于 Unix/Linux、Mac OS 等,执行以下命令一键安装 spf13-vim.sh % curl https://j.mp/spf13-vim3 -L > spf13-vim.sh && sh spf13-vim.sh (对于 Windows 系统,请参考 Github 仓库中的 ReadME.md) ...

2021年2月6日

Vim 8.2 源码编译安装 添加Python3扩展

介绍 为了安装 YouCompleteMe 这类插件,需要将 Vim 升级至比较高的版本并且启用 Python3扩 展。所以,这里提供的是通过源码安装 Vim 最新版本的过程记录。 这里使用到的 Vim源代 码仓库地址:https://github.com/vim/vim/ 编译安装默认版本 在编译安装之前先要安装相关的工具以及依赖 % sudo apt install git make clang libpython3-dev 选择适当的目录执行克隆命令 % git clone https://github.com/vim/vim.git 克隆成功后会出现 vim 目录,进入该目录下的 src 目录 % cd vim/src 执行编译(为了加快速度可以替换执行% make -j4来并行编译) % make 执行测试 % make test 默认安装到/usr/local 目录下 % sudo make install 开启Python3扩展支持 在上述操作完成后,打开该目录下的Makefile文件,找到"CONF_OPT_PYTHON3 = --enable-python3interp"并取消注释该行,保存。 执行命令更新编译参数make reconfig

2021年2月6日