zl程序教程

您现在的位置是:首页 >  工具

当前栏目

Vim技能修炼教程(17) - 编译自己的Vim

Vim教程 编译 自己 技能 17 修炼
2023-09-11 14:21:15 时间
编译自己的Vim

前面我们已经对Vim有比较丰富的了解了。我们也知道Vim有很多编译时的选项,很多功能依赖于这些编译选项。其中最重要的就是脚本语言的支持,很多发行版本是不全的。为了支持我们所需要的功能,我们需要编译自己的Vim.

首先我们要下载Vim的源代码:

git clone https://github.com/vim/vim.git
Linux上编译Vim

以Ubuntu为例,首先要安装一些库的开发包,例:

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已经统治世界了,GUI会给用户带来方便,我们后面也会讲菜单的用法。首先,我们需要能编译出带GUI的版本。

enable-gui支持下面一些选项:

auto: 由vim自动选择 no: 没有gui gnome2 motif athena neXtaw photon carbon

我们首先试试使用motif库的效果:

motif

实现步骤:

首先安装motif库。 然后安装motif-dev库。 configure --enable-gui=motif

如何安装motif库呢,我们以ubuntu 12.04为例,首先启动vim,执行下面的命令

:read !apt-cache search motif

然后我们在结果里面看到了libmotif4和libmotif-dev,分别用:!sudo apt-get install去安装它们就好。
然后执行:

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语言的一种方言。

支持这些语言需要三步曲:

安装语言本身。要支持一门语言,连语言都不安装说不过去哈 安装语言的开发包。vim需要头文件和开发库 configuration打开支持选项

对于需要指定语言路径的,可能还需要第4步。

我们以perl为例来说明:
第一步,安装perl:

sudo apt-get install perl

sudo apt-get install perl6

第二步,安装perl的开发库:

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](https://yqfile.alicdn.com/625c9bf33baab9476ee975cdaa2c3a66bdd7ed81.png)


教程 | Vim 教程【命令-操作-快捷键】 命令历史以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。 启动vim在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim并创建名为filename的文件 文件命令打开单个文件 vim file 同时打开多个文件 vim file1 file2 file3 ... 在vim窗口中打开一个新文件 :open file 在新窗口中打开文件 :split file 切换到下一个文件 切换到上一个文件 查看当前打开的文件列表,当前正在编辑的文件会用[]括起来。
lusing 刘子瑛,阿里系统框架专家。工作十余年,一直对新编程语言、新开发方法、数学与算法相关和并发等相关领域保持浓厚的兴趣。乐于通过技术分享促进新技术。