Vim技能修煉教程(17) - 編譯自己的Vim

編譯自己的Vim

前面我們已經(jīng)對Vim有比較豐富的了解了。我們也知道Vim有很多編譯時的選項,很多功能依賴于這些編譯選項。其中最重要的就是腳本語言的支持,很多發(fā)行版本是不全的。為了支持我們所需要的功能,我們需要編譯自己的Vim.

首先我們要下載Vim的源代碼:

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

Linux上編譯Vim

以Ubuntu為例,首先要安裝一些庫的開發(fā)包,例:

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 ruby-dev mercurial

圖形化界面支持

GUI已經(jīng)統(tǒng)治世界了,GUI會給用戶帶來方便,我們后面也會講菜單的用法。首先,我們需要能編譯出帶GUI的版本。

enable-gui支持下面一些選項:

  • auto: 由vim自動選擇
  • no: 沒有g(shù)ui
  • gtk2
  • gtk3
  • gnome2
  • motif
  • athena
  • neXtaw
  • photon
  • carbon

我們首先試試使用motif庫的效果:

motif

實現(xiàn)步驟:

  1. 首先安裝motif庫。
  2. 然后安裝motif-dev庫。
  3. configure --enable-gui=motif

如何安裝motif庫呢,我們以ubuntu 12.04為例,首先啟動vim,執(zhí)行下面的命令

:read !apt-cache search motif

然后我們在結(jié)果里面看到了libmotif4和libmotif-dev,分別用:!sudo apt-get install去安裝它們就好。
然后執(zhí)行:

configure --enable-gui=motif
make

運行src/vim -g,就可以看到motif界面的vim啦。

同樣的方法,我們可以用來生成gtk2,gtk3, gnome2等界面風格。

擴展語言的支持

Vim目前一共支持7種擴展語言:

  • lua: Lua語言
  • perl:Perl語言
  • python:Python語言2.x版本
  • python3:Python語言3.x版本
  • tcl:Tcl語言。
  • ruby: Ruby語言
  • mzscheme: Racket語言,是Scheme語言的一種方言。

支持這些語言需要三步曲:

  1. 安裝語言本身。要支持一門語言,連語言都不安裝說不過去哈
  2. 安裝語言的開發(fā)包。vim需要頭文件和開發(fā)庫
  3. configuration打開支持選項

對于需要指定語言路徑的,可能還需要第4步。

我們以perl為例來說明:
第一步,安裝perl:

sudo apt-get install perl

sudo apt-get install perl6

第二步,安裝perl的開發(fā)庫:

sudo apt-get install libperl-dev

第三步,重新配置并編譯

./configure --enable-perlinterp

這些都配好了之后,我們就可以編譯出一版基本上全功能的版本了:

Gtk3全功能

編譯命令示例:

./configure --enable-gui=gtk3 --enable-python3interp --enable-pythoninterp --enable-rubyinterp --enable-luainterp --enable-mzschemeinterp --enable-perlinterp --with-vim-name=vim8

Mac上編譯vim

在Mac上,我們需要一個定制的版本MacVim:https://github.com/macvim-dev/macvim。

enable-gui時不用指定,默認就好。
命令例:

./configure --enable-gui --enable-pythoninterp --enable-python3interp --enable-perlinterp --enable-mzschemeinterp --enable-rubyinterp --enable-cscope --enable-tclinterp --enable-luainterp --with-lua-prefix=/usr/local/Cellar/lua/5.2.4_4/ ```

編譯之后會生成Vim.app,帶圖形界面:

![macvim](http://upload-images.jianshu.io/upload_images/1638145-8a89e3c93f6836f2.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

在mac上缺什么模塊就用Homebrew來安裝,一般不用指定,都可找到。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容