vim 9.0 源码包编译安装

当你看到本篇教程时,vim 可能已经更新到了 vim 9.1.x 或者更高版本。

在上一篇 《vim入门实战》 篇,我并没有介绍 Linux 平台源码包形式安装以及基础运用。

本篇教程,以源码包形式部署vim 9.0,演示 Rocky Linux 9 平台安装 vim 9.0.1523,目前最新版为vim 9.1.x

如下演示均以 root 身份进行。为了安全考虑,默认禁用 root 用户远程ssh登录权限,以普通用户作为跳板切换为 root 用户。

vim 9.0 部署准备环境

打包好的 Windows 和 Linux 平台 vim、nvim 安装包、PDF教程以及相关插件。

链接: https://pan.baidu.com/s/1QWyTn1H20I7c3KBKaXKXQA?pwd=8888
提取码: 8888


借助终端管理工具,通过 ssh 登录到终端管理界面(普通用户):

1
2
PS D:\work> ssh wzgy@192.168.245.133           
wzgy@192.168.245.133's password:

切换为 root 用户:

1
su root

获取 vim 9.0 源码包:

1
wget https://github.com/vim/vim/archive/refs/tags/v9.0.1523.tar.gz

如果没有安装 wget 工具,Rocky Linux 9 可以执行如下命令进行安装:

1
dnf -y install wget

安装前,确认环境,是否安装 make gcc cmake:

1
[root@localhost soft]# dnf -y install make gcc cmake

根据实际情况而定,可能有的源码包设定需要 cmake 编译。

减少干扰,卸载 Rocky Linux 9 自带的 vim8:

1
[root@localhost soft]# dnf remove vim

友情提示:实际工作中,你的硬件(CPU、内存、硬盘)不是无限大。以二进制包、源码包、rpm、deb包等等形式安装软件,保留其中一种即可。减少服务器资源争抢,便于管理维护。

vim 9.0 源码包正式部署

正式部署vim9,首先解压 vim:

1
[root@localhost soft]# tar -zxvf v9.0.1523.tar.gz

进入 src 目录:

1
[root@localhost soft]# cd vim-9.0.1523/src/

编译:

1
[root@localhost src]# make

注意事项:看到提示别慌,仔细发现提醒需要 ncurses 依赖。

1
2
3
4
5
6
checking for tgetent()... configure: error: NOT FOUND!
You need to install a terminal library; for example ncurses.
On Linux that would be the libncurses-dev package.
Or specify the name of the library with --with-tlib.
Makefile:291: auto/config.mk: 没有那个文件或目录
make: *** [Makefile:1972:auto/config.mk] 错误 1

在 Rocky Linux 9.1 (RHEL9 系列应该均适用)中可以执行:

1
dnf -y install ncurses

如果提示:
软件包 ncurses-6.2-8.20210508.el9.x86_64 已安装。
依赖关系解决。
无需任何处理。
完毕!

再次执行 dnf -y install ncurses-devel-6.2-8.20210508.el9:

1
dnf -y install ncurses-devel-6.2-8.20210508.el9

会继续安装如下两个库文件:
ncurses-c++-libs-6.2-8.20210508.el9.x86_64.rpm
ncurses-devel-6.2-8.20210508.el9.x86_64.rpm

可能你会有疑问,实际过程中,如何判断安装包是哪一个 Linux 具体发行版本?其实可以根据安装包命名规则区分,可以看到以上安装包中都含有 el9 ,代表所处 Linux 发行版平台为 RHEL9 系列。

继续编译:

1
[root@localhost src]# make

安装:

1
make install

如果直接执行 vim:

1
vim

输出结果:会进入一个含有 vim 当前版本以及维护人的信息。当然还含有公益广告,开源软件可以自行选择删除或者保留。

vim 9.0 初体验

执行 vim file.txt 进行编辑,输入一段内容 hello vim 9.0.1523:

1
vim test.txt

按下快捷键:i ,插入如下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
*
**
***
*****
*******
*************************
采用源码包形式编译安装!
hello vim 9.0.1523
*************************
*******
*****
***
**
*

test.txt 代表你需要编辑的文件。

使用快捷键: a i o 即可插入内容,使用 :wq 进行保存并退出当前文件。

终端展示输出文件 test.txt 内容:

1
cat test.txt

如果你有足够的英语词汇量,使用 vim 自带帮助命令效率会很高。

继续编辑 test.txt 文件:

1
vim test.txt

示例使用 vim 帮助命令,含义直接写入代码块注释中:

1
2
3
:help  		#查看全局帮助命令文档
:help vs #查看局部水平分屏命令文档
:help sp #查看局部垂直分屏命令文档

关闭所有窗口,强制(加上!符号)不保存退出,使用快捷键: :qa!,保存退出所有窗口: :wqa 。
更多 vim 快捷键使用方法,可以在公众号或者站内搜索:vim入门实战。

默认安装后相关配置文件路径:

1
2
[root@localhost src]# ls /usr/local/share/
applications info man vim

默认 vim 脚本文件路径:

1
ls  /usr/local/bin/vim

vim 脚本会去寻找 defaults.vim,默认所在路径:/usr/local/share/vim/vim90/defaults.vim,也就是源码包经过编译、安装后生成的文件。

plug-vim 安装插件

初次使用,插件不在多,在于对你的操作有所提升。可以一步步尝试安装插件,对比哪些对你的日常工作有帮助。

查看 Windows 平台 git 环境自带 vim 版本:

1
2
3
4
5
6
$ git --version && vim --version | grep VIM
git version 2.41.0.windows.1
VIM - Vi IMproved 9.0 (2022 Jun 28, 编译于 Mar 13 2023 19:52:41)
defaults 文件: "$VIMRUNTIME/defaults.vim"
$VIM 预设值: "/etc"
$VIMRUNTIME 预设值: "/usr/share/vim/vim90"
  • vim-plug :用于管理插件。比如我在 Windows 平台使用的 git 环境自带 vim,复制下载的 plug.vimD:\software\Git\usr\share\vim\vim90\autoload\ 路径下即可。
  • NERDTree :用于增强目录树插件。
  • TagBar :用于显示标签插件(需要 ctags 支撑,Windows平台将 ctags.exe 文件置于vim根目录同级即可使用) 例如:个人解压后 gvim 路径:D:\gvim_9.0.1075_x64\vim90\,将 ctags.exe 放入 vim90 目录即可。如果你使用的是 nvim,可以将 ctags.exe 复制到 \nvim-win64\bin\ 路径下。

友情提醒:如果你获取 ctags.exe 和 plug.vim 实在有困难,我已经上传了资源,可在文初和文末找到。

Rocky 9 Linux 平台如下操作

1
2
wget https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim 
--directory-prefix=/usr/local/share/vim/vim90/autoload/

下载文件,如何指定保存路径?通过帮助文档查询:

1
2
[root@localhost ~]# wget --help | grep "保存文件"
-P, --directory-prefix=前缀 保存文件到 <前缀>/..

如果没有 wget 工具,请先安装:

1
dnf -y install wget

安装 vim-plug 插件后,加入如下内容即可安装 nerdtree 和 tagbar 插件:

1
2
3
4
5
set number
call plug#begin()
Plug 'preservim/nerdtree'
Plug 'preservim/tagbar'
call plug#end()

个人认为,这两个插件还是很实用的,尤其是浏览代码。

如果想 tagbar 正常运行,还需安装:

1
dnf -y install ctags

执行插件安装命令:

1
:PlugInstall

插件安装后,重启vim即可生效。

安装插件效果展示,最左侧是nerdtree效果,最右侧是tagbar效果。

示例:

1
2
3
vim Test.java
:NERDTree
:Tagbar

pp9CYh6.jpg

打包好的 Windows 和 Linux 平台 vim、nvim 安装包、PDF教程以及相关插件。

链接: https://pan.baidu.com/s/1QWyTn1H20I7c3KBKaXKXQA?pwd=8888
提取码: 8888

以上总结,仅供参考哟,希望对你的工作有所帮助!

—END—