Ubuntu16.04安装vim8

在Ubuntu16.04下编译安装vim8,并配置vim-plug插件管理器,以及安装YouCompleteMe等插件。

安装依赖

sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \
libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \
libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev \
python3-dev ruby-dev liblua5.1 lua5.1-dev libperl-dev git

需要注意的是在Ubuntu16.04中Lua应该为liblua5.1-dev,而在其它版本中应为lua5.1-dev

删除已有vim相关包(可选)

如果是多人使用的机器,最好还是不要轻易apt删除vim,其他人可能受到影响。如果是只有自己一个用户,可以随性:

dpkg -l | grep vim
sudo apt remove vim vim-common vim-runtime vim-tiny

下载最新vim并编译安装

这里安装到个人路径;考虑到远程xshell使用,没有gui,则编译时需要--disable-gui以及--without-x

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

#!/bin/bash
./configure --with-features=huge \
--enable-multibyte \
--enable-rubyinterp=yes \
--enable-pythoninterp=yes \
--with-python-config-dir=/usr/lib/python2.7/config \
--enable-perlinterp=yes \
--enable-luainterp=yes \
--enable-cscope \
--disable-gui \
--without-x \
--prefix=/home/zz/soft/vim8 make -j$(nproc) VIMRUNTIMEDIR=/home/zz/soft/vim8/share/vim/vim81 sudo make install

配置vim

不配置vim的话会比较难用,增加一些插件和个人习惯性的定制能提升编码效率。

在下载安装vim插件这件事儿上,Vundle很慢,基于异步的vim-plug则非常快。上手吧:vim ~/.vimrc, 输入vim指令:set paste,将如下内容粘贴到.vimrc中:

" Specify a directory for plugins
" - For Neovim: ~/.local/share/nvim/plugged
" - Avoid using standard Vim directory names like 'plugin'
call plug#begin('~/.vim/plugged') " Make sure you use single quotes " Shorthand notation; fetches https://github.com/junegunn/vim-easy-align
Plug 'junegunn/vim-easy-align' " Any valid git URL is allowed
Plug 'https://github.com/junegunn/vim-github-dashboard.git' " Multiple Plug commands can be written in a single line using | separators
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets' " On-demand loading
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
Plug 'tpope/vim-fireplace', { 'for': 'clojure' } " Using a non-master branch
Plug 'rdnetto/YCM-Generator', { 'branch': 'stable' } " Using a tagged release; wildcard allowed (requires git 1.9.2 or above)
Plug 'fatih/vim-go', { 'tag': '*' } " Plugin options
Plug 'nsf/gocode', { 'tag': 'v.20150303', 'rtp': 'vim' } " Plugin outside ~/.vim/plugged with post-update hook
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'Valloric/YouCompleteMe', { 'do': './install.py' } " Unmanaged plugin (manually installed and updated)
Plug '~/my-prototype-plugin' " Initialize plugin system
call plug#end() "" 个人定制的一些配置,不喜欢、不习惯可以自行修改
set nu
set tags=./.tags;.tags
set cursorline
set showmatch
set hlsearch
set incsearch
hi CursorLine cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE

关闭vim,再次vim ~/.vimrc,敲入:PlugInstall,开始下载插件:可以看到各个插件是同时在下载的,速度很快。

其中YouCompleteMe因为有很多submodule,很容易下载失败,所以手动处理一下:

cd ~/.vim/plugged/YouCompleteMe

git submodule update --init --recursive

python install.py

参考

Ubuntu16.04安装vim8的更多相关文章

  1. Ubuntu 16.04安装Vim8.0

    Ubuntu 16.04安装Vim8.0 https://www.aliyun.com/jiaocheng/131859.html sudo add-apt-repository ppa:jonath ...

  2. ubuntu16.04安装jdk,tomcat

    ubuntu16.04安装jdk,tomcat 最近装了一下tomcat,网上的教程很多,我也试了很多次,但是有一些教程关于tomcat配置是错误的,让我走上了歧途.差点重装系统,还好王总及时出手帮助 ...

  3. Ubuntu16.04 安装openjdk-7-jdk

    Ubuntu16.04 安装openjdk-7-jdk sudo apt-get install openjdk-7-jre 或者sudo apt-get install openjdk-7-jdk ...

  4. Ubuntu16.04安装GTK3主题:OSX-Arc

    Ubuntu16.04安装GTK3主题:OSX-Arc GTK3主题:OSX-Arc描述: 前几个月,Gnome3.20升3.22的时候,出现了大量主题崩溃的现象,其中包括Arc.Flatabulou ...

  5. Ubuntu16.04安装opencv for python/c++

    Ubuntu16.04安装opencv for python/c++ 网上关于opencv的安装已经有了不少资料,但是没有一篇资料能让我一次性安装成功,因此花费了大量时间去解决各种意外,希望这篇能给一 ...

  6. ubuntu16.04安装不上有道词典的解决办法

    转自:http://www.linuxdiyf.com/linux/21143.html ubuntu16.04安装不上有道词典,提示: le@hu-pc:~/下载$ sudo dpkg -i you ...

  7. Ubuntu16.04安装mongodb

    Ubuntu16.04安装mongodb copy from: http://blog.csdn.net/zhushh/article/details/52451441 1.导入软件源的公钥 sudo ...

  8. 【Tools】ubuntu16.04安装搜狗输入法

    Ubuntu16,04 安装搜狗输入法 1.下载搜狗输入法的安装包 下载地址为:http://pinyin.sogou.com/linux/ 2.按键Ctr+Alt+T打开终端,输入以下命令切换到下载 ...

  9. Ubuntu16.04安装cuda9.0+cudnn7.0

    Ubuntu16.04安装cuda9.0+cudnn7.0 这篇记录拖了好久,估计是去年6月份就已经安装过几遍,然后一方面因为俺比较懒,一方面后面没有经常在自己电脑上跑算法,比较少装cuda和cudn ...

随机推荐

  1. WPF C# int.TryParse的用法

    ; if (!int.TryParse(item.Tag.ToString(), out comld)) { continue; } 没转换成功就continue 开始写成 if(GetNumber( ...

  2. 在Linux安装ASP.NET Core运行时环境

    我使用的是Centos7 ,其它的Linux请参考微软文档   微软官方介绍文档:                                https://www.microsoft.com/n ...

  3. codevs 1080 线段树练习(线段树)

    题目: 题目描述 Description 一行N个方格,开始每个格子里都有一个整数.现在动态地提出一些问题和修改:提问的形式是求某一个特定的子区间[a,b]中所有元素的和:修改的规则是指定某一个格子x ...

  4. html干货部分

    1.标签 a.文本标签:p,span,a,b,i,u,em.文本标签里只能放文字,图片,表单元素. 上标,下标: 5<sup>2</sup>(上标) 8<sub>2 ...

  5. Euclideanloss_layer层解析

    这里说一下euclidean_loss_layer.cpp关于该欧式loss层的解析,代码如下: #include <vector> #include "caffe/layers ...

  6. MySQL 4.1-5.0-5.1-5.5-5.6各版本的主要区别

    各版本的一些命令差异:  show innodb status\G mysql-5.1  show engines innodb status\G mysql-5.5  关于grant授权 mysql ...

  7. 嵌入式系统C编程之堆栈回溯【转】

    转自:https://www.cnblogs.com/clover-toeic/p/3949896.html 前言 在嵌入式系统C语言开发调试过程中,常会遇到各类异常情况.一般可按需添加打印信息,以便 ...

  8. vc++基础班[21]---文件的基本操作之CFile

    ①.文件的创建.打开.关闭: 文件的创建.打开:CFile::Open 文件的关闭:CFile::Close   CFile::modeCreate:以新建方式打开,如果文件不存在,则新建:如果文件已 ...

  9. MongoDB与MySQL的插入、查询性能测试

    1.1  MongoDB的简单介绍 在当今的数据库市场上,MySQL无疑是占有一席之地的.作为一个开源的关系型数据库,MySQL被大量应用在各大网站后台中,承担着信息存储的重要作用.2009年,甲骨文 ...

  10. mysql·事务挂起

          当开启事务后,程序挂了而事务没有提交,那么会被锁住,报错:连接超时,但不影响查询. 下面操作需要权限     一.查询现在被占用的锁信息 select * from information ...