因为 CentOS7 在默认情况下,通过 yum 安装的 vim-X11.x86_64 版本为 7.x 版本,对 Youcompleteme 支持不好。故需要升级到 8.x 版本。

以下记录 gvim 源码安装过程:

0. 卸载原始的安装包 vim-X11

$ sudo yum remove vim-X11.x86_64 

1. 安装必要的软件包 (主要是为了支持 X,首先可用 $ rpm -qa xxx 查看是否这些包已经安装)

$ sudo yum install ncurses-devel.x86_64
$ sudo yum install libXt-devel.x86_64
$ sudo yum install gtk2-devel.x86_64

2. clone 源码包

$ git clone https://github.com/vim/vim.git

3. 进入源码目录进行编译前配置 (可用 $ ./configure --help 查看可用的编译选项)

$ ./configure --prefix=/usr/local --enable-pythoninterp=yes --enable-gui=auto --enable-cscope --enable-multibyte --enable-xim --enable-fontset --with-features=huge --with-x 

4. 编译

$ make

5. 安装

$ sudo make install

6. 问题

github 最新的 vim8.1 可能出现在 GUI 情况下 Ctrl + F 不能正确翻页的问题,Linux 下解决方法如下,

打开文件: /usr/local/share/vim/vim81/mswin.vim

把如下的黄色部分注释掉即可,

if has("gui")
"" CTRL-F is the search dialog
"noremap <expr> <C-F> has("gui_running") ? ":promptfind\<CR>" : "/"
"inoremap <expr> <C-F> has("gui_running") ? "\<C-\>\<C-O>:promptfind\<CR>" : "\<C-\>\<C-O>/"
"cnoremap <expr> <C-F> has("gui_running") ? "\<C-\>\<C-C>:promptfind\<CR>" : "\<C-\>\<C-O>/" " CTRL-H is the replace dialog,
" but in console, it might be backspace, so don't map it there
nnoremap <expr> <C-H> has("gui_running") ? ":promptrepl\<CR>" : "\<C-H>"
inoremap <expr> <C-H> has("gui_running") ? "\<C-\>\<C-O>:promptrepl\<CR>" : "\<C-H>"
cnoremap <expr> <C-H> has("gui_running") ? "\<C-\>\<C-C>:promptrepl\<CR>" : "\<C-H>"
endif

完。

CentOS7 升级 gvim 到 8.x 版本的更多相关文章

  1. centos7 升级openssh到openssh-8.0p1版本

    环境介绍 centos7.3和centos7.6升级完毕测试登录ssh以及重启后登录ssh均无问题. 前期请自行配置好yum源(如果不会请百度) 整个过程不需要卸载原先的openssl包和openss ...

  2. centos7 升级 git(2.14.3) 版本

    下载  wget https://www.kernel.org/pub/software/scm/git/git-2.14.3.tar.gz 安装依赖包  yum install curl-devel ...

  3. Centos7升级Git版本

    centos 升级 Git 版本 问题描述 centos7 系统默认的 git 安装版本是 1.8,但是在项目构建中发现 git 版本过低,于是用源码编译的方式进行升级.同时该文章也适用于安装新的 g ...

  4. centOS7升级git版本到2.7.3

    CentOS 自带的git版本太低,需要升级到2.1.2版本以上才能使用gitea. 升级方法: 1.安装所需软件包 yum install curl-devel expat-devel gettex ...

  5. CentOS7升级OpenSSL版本

    1.CentOS7.6默认安装的openssl版本为 # 查看openssl版本 openssl version 2.下载最新的openssl wget https://www.openssl.org ...

  6. Centos7 升级 Ruby

    Centos7通过yum 安装的Ruby 是2.0版本.版本较低,需要升级到2.5以上版本. #yum 安装ruby yum install ruby #查看ruby版本 ruby -v 以下开始升级 ...

  7. 【转】CentOS 6.6 升级GCC G++ (当前最新版本为v6.1.0) (完整)

    原文地址:https://www.cnblogs.com/lzpong/p/5755678.html 我这里是centos7 升级到gcc8.1,过程差不多,参考这篇文章,记录一下. ---原文--- ...

  8. Linux下升级安装Python-3.6.2版本

    本文主要介绍在Linux(CentOS)下将Python的版本升级为3.6.2的方法 众所周知,在2020年python官方将不再支持2.7版本的python,所以使用3.x版本的python是必要的 ...

  9. centos7 升级最新版内核 并安装 bcc-tools

    centos7 升级最新版内核 升级系统 [root@jikeshijian ~]# yum update -y 安装 ELRepo [root@jikeshijian ~]# rpm --impor ...

随机推荐

  1. c++ 之模板进阶

    c++中的多态主要体现在模板与继承上. 继承可以理解为有相互关系的不同数据结构的集合. 而模板则是完全独立的数据结构,彼此无需依赖 在函数中使用模板, 可以根据函数传入的参数自动推导类型,从而省略到很 ...

  2. 将博客搬至CSDN https://blog.csdn.net/Fredric_2014

    将博客搬至CSDN https://blog.csdn.net/Fredric_2014

  3. 微信小程序客服消息开发实战:实时在手机上接收小程序客服消息通知,以及在手机上回复

    在微信小程序开发中,可以非常方便的集成客服功能,只需要一行代码便可以将用户引导至客服会话界面.这行代码就是: <button open-type="contact" bind ...

  4. CMake简介

    目录 一.CMake简介 二.CMake典型示例 源代码 demo.cpp cmake脚本 CMakeLists.txt 编译流程 三.CMake常用命令 常用命令介绍 设置编译目标类型 指定编译包含 ...

  5. 音视频 学习&开发&测试 资源

    一.FFmpeg 学习 1. 官方API文档 FFmpeg Documentation:http://www.ffmpeg.org/doxygen/trunk/index.html 2. 优秀开源项目 ...

  6. sql的查询语句的总结

    一:基本的查询sql 1:基本常用查询 select * from student; --select select all sex from student; --all 查询所有 select d ...

  7. 树莓派linux系统中显示隐藏文件的几种方法

    一.如果直接使用可视化文件管理器 1.直接点击右键,直接选择“显示隐藏文件”选项. 2.快捷键 CTRL + H 二.在终端命令行模式下 可以使用ls命令的-a参数来显示隐藏的文件及文件夹. ls - ...

  8. .net core入门-发布及部署_异常(处理程序“aspNetCore”在其模块列表中有一个错误模块“AspNetCoreModuleV2")处理

    备注:本人使用开发工具:VS2017,.NET Core 2.2,其中VS2017原本自带2.1,我单独从官网下载了2.2的程序集安装包,但是没有下配套的运行环境,运行项目时出了一个问题. 以下是我在 ...

  9. 校园生活app结对开发第二天

    昨天进行了android studio的安装与配置遇到很多问题,在gradel处遇到很多问题,安装版本错误等等,在百度和书籍的帮助下成功安装 今天要做登陆界面开发

  10. Asp.Net Core在CentOS部署与注意

    部署具体步骤参考:将ASP.NET Core应用程序部署至生产环境中(CentOS7) 1.wwwroot是放静态文件的,Startup的配置里面要app.UseStaticFiles(); 2.在不 ...