1 安装vim需要的库
apt-get build-dep vim-gtk
apt-get install libncurses5-dev mercurial
yum -y groupinstall "Development Tools"
yum install ncurses-devel mercurial python python-devel perl-devel ruby ruby-devel lua lua-devel
yum install libgnome-devel libgnomeui-devel gtk2-devel atk-devel libbonoboui-devel cairo-devel libX11-devel libXpm-devel libXt-devel
yum install epel-release
yum install python34 python34-devel
2 下载Vim8
apt-get install git
git clone https://github.com/vim/vim.git
cd vim
git pull && git fetch
cd vim/src
make distclean # if vim was prev installed
3 编译安装
cd vim &&
echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >> src/feature.h &&
echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' >> src/feature.h &&
./configure --prefix=/usr/local/vim8 --with-features=huge
--enable-multibyte --enable-fontset --enable-xim
--enable-pythoninterp --enable-perlinterp
--enable-python3interp
--enable-rubyinterp --enable-luainterp
--enable-cscope --enable-sniff
--enable-gui=gtk2
--with-compiledby="busor" &&
make &&
make install
ln -s /usr/local/vim8/bin/vim /usr/local/bin/vim &&
ln -s /usr/local/vim8/bin/vimtutor /usr/local/bin/vimtutor &&
ln -s /usr/local/vim8/bin/gvimtutor /usr/local/bin/gvimtutor &&
ln -s /usr/local/vim8/bin/xxd /usr/local/bin/xxd &&
ln -s vim /usr/local/bin/vi &&
ln -s vim /usr/local/bin/view &&
ln -s vim /usr/local/bin/vimdiff &&
ln -s vim /usr/local/bin/gvimdiff &&
ln -s vim /usr/local/bin/gview &&
ln -s vim /usr/local/bin/gvim
4 验证
yucheng@debian:~$ vim --version
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Sep 16 2016 13:56:45)
Included patches: 1-5
Compiled by busor
Huge version with GTK2 GUI. Features included (+) or not (-):
+acl +file_in_path +mouse_sgr +tag_old_static
+arabic +find_in_path -mouse_sysmouse -tag_any_white
+autocmd +float +mouse_urxvt -tcl
+balloon_eval +folding +mouse_xterm +termguicolors
+browse -footer +multi_byte +terminfo
++builtin_terms +fork() +multi_lang +termresponse
+byte_offset +gettext -mzscheme +textobjects
+channel -hangul_input +netbeans_intg +timers
+cindent +iconv +num64 +title
+clientserver +insert_expand +packages +toolbar
+clipboard +job +path_extra +user_commands
+cmdline_compl +jumplist +perl +vertsplit
+cmdline_hist +keymap +persistent_undo +virtualedit
+cmdline_info +lambda +postscript +visual
+comments +langmap +printer +visualextra
+conceal +libcall +profile +viminfo
+cryptv +linebreak +python +vreplace
+cscope +lispindent -python3 +wildignore
+cursorbind +listcmds +quickfix +wildmenu
+cursorshape +localmap +reltime +windows
+dialog_con_gui +lua +rightleft +writebackup
+diff +menu +ruby +X11
+digraphs +mksession +scrollbind -xfontset
+dnd +modify_fname +signs +xim
-ebcdic +mouse +smartindent +xpm
+emacs_tags +mouseshape +startuptime +xsmp_interact
+eval +mouse_dec +statusline +xterm_clipboard
+ex_extra +mouse_gpm -sun_workshop -xterm_save
+extra_search -mouse_jsbterm +syntax
+farsi +mouse_netterm +tag_binary
system vimrc file: "/etc/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
system gvimrc file: "/etc/gvimrc"
user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
defaults file: "$VIMRUNTIME/defaults.vim"
system menu file: "$VIMRUNTIME/menu.vim"
fall-back for $VIM: "/usr/local/vim8/share/vim"