📄 vim.html
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=gb2312" />
<title>
6.23. Vim-6.3
</title>
<link rel="stylesheet" href="../stylesheets/lfs.css" type="text/css" />
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1" />
<link rel="stylesheet" href="../stylesheets/lfs-print.css" type="text/css" media="print" />
</head>
<body id="lfs" class="6.1">
<div class="navheader">
<div class="headertitles">
<h4>
Linux From Scratch - Version 6.1
</h4>
<h3>
Chapter 6. 安装系统基础软件
</h3>
</div>
<ul class="headerlinks">
<li class="prev">
<a accesskey="p" href="readline.html" title="Readline-5.0">后退</a>
<p>
Readline-5.0
</p>
</li>
<li class="next">
<a accesskey="n" href="m4.html" title="M4-1.4.3">前进</a>
<p>
M4-1.4.3
</p>
</li>
<li class="up">
<a accesskey="u" href="chapter06.html" title="Chapter 6. 安装系统基础软件">上一级</a>.
</li>
<li class="home">
<a accesskey="h" href="../index.html" title="Linux From Scratch - Version 6.1">回首页</a>
</li>
</ul>
</div>
<div class="wrap" lang="zh_cn" xml:lang="zh_cn">
<div class="titlepage">
<h1 class="sect1">
6.23. Vim-6.3
</h1>
</div>
<div class="package" lang="zh_cn" xml:lang="zh_cn">
<p>Vim 软件包包含一个强大的文本编辑器。
</p>
<div class="segmentedlist">
<div class="seglistitem">
<div class="seg">
<strong><span class="segtitle">预计编译时间:</span></strong> <span class="seg">0.4 SBU</span>
</div>
<div class="seg">
<strong><span class="segtitle">所需磁盘空间:</span></strong> <span class="seg">38.0 MB</span>
</div>
</div>
</div>
<div class="segmentedlist">
<div class="seglistitem">
<div class="seg">
<strong><span class="segtitle">安装依赖于:</span></strong> <span class="seg">Bash, Binutils, Coreutils, Diffutils, GCC, Glibc, Grep, Make, Ncurses, Sed</span>
</div>
</div>
</div>
<div class="tip">
<div class="admonhead">
<img alt="[Tip]" src="../images/tip.png" />
<h3 class="admontitle">
可以替代 Vim 的其他选择
</h3>
</div>
<div class="admonbody">
<p>如果你喜欢使用其他的编辑器,比如Emacs, Joe, Nano,请参考这里:<a href="http://www.linuxfromscratch.org/blfs/view/svn/postlfs/editors.html"><i>http://www.linuxfromscratch.org/blfs/view/svn/postlfs/editors.html</i></a> 获取安装方法。
</p>
</div>
</div>
</div>
<div class="installation" lang="zh_cn" xml:lang="zh_cn">
<div class="titlepage">
<h2 class="sect2">
6.23.1. 安装 Vim
</h2>
</div>
<p>首先,将 <tt class="filename">vim-6.3.tar.bz2</tt> 和 <tt class="filename">vim-6.3-lang.tar.bz2</tt>(可选) 解包到同一个目录下。然后把 <tt class="filename">vimrc</tt> 和 <tt class="filename">gvimrc</tt> 配置文件的默认位置修改到<tt class="filename">/etc</tt> 目录中:
</p>
<pre class="userinput"><kbd class="command">echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >> src/feature.h
echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' >> src/feature.h</kbd></pre>
<p>
Vim 存在一个安全漏洞,下面的补丁可以修正这个问题:
</p>
<pre class="userinput"><kbd class="command">patch -Np1 -i ../vim-6.3-security_fix-1.patch</kbd></pre>
<p>准备编译 Vim:
</p>
<pre class="userinput"><kbd class="command">./configure --prefix=/usr --enable-multibyte</kbd></pre>
<p>我们强烈推荐你启用 <em class="parameter"><tt>--enable-multibyte</tt></em> 选项(虽然它是可选的),因为它使得 Vim 可以支持使用多字节编码字符集的文件,在一个使用多字节字符集的 locale 上,这是必需的。另外该选项还有助于编辑在默认使用 UTF-8 字符集的其它 Linux 发行版(如 Fedora Core)上创建的文本文件。 </p>
<p>编译软件包:</p>
<pre class="userinput"><kbd class="command">make</kbd></pre>
<p>
要测试结果,请运行:<strong class="userinput"><tt>make test</tt></strong> 。注意,Vim 的测试套件会输出一大堆混乱的字符到屏幕上,有时会把终端搞乱,所以不运行也没什么关系。
</p>
<p>
安装软件包:
</p>
<pre class="userinput"><kbd class="command">make install</kbd></pre>
<p>许多用户习惯于使用 <span><strong class="command">vi</strong></span> 而不是 <span><strong class="command">vim</strong></span>,下面的命令为适应这种习惯创建一个符号链接:
</p>
<pre class="userinput"><kbd class="command">ln -s vim /usr/bin/vi</kbd></pre>
<p>如果您计划在您的 LFS 系统上安装 X Window 系统,那么您可能必须在安装 X 之后重新编译 Vim。Vim 有带有图形用户接口的版本,但需要安装 X 和其它一些库。要了解更多关于这方面的信息请参考 Vim 的安装手册和 BLFS 中有关 Vim 安装指导的页面:<a href="http://www.linuxfromscratch.org/blfs/view/svn/postlfs/editors.html#postlfs-editors-vim"><i>http://www.linuxfromscratch.org/blfs/view/svn/postlfs/editors.html#postlfs-editors-vim</i></a>
</p>
</div>
<div class="configuration" lang="zh_cn" xml:lang="zh_cn">
<div class="titlepage">
<a id="conf-vim" name="conf-vim"></a>
<h2 class="sect2">
6.23.2. 配置 Vim
</h2>
</div>
<p>在默认情况下, <span><strong class="command">vim</strong></span> 是以与 vi 兼容的模式运行,这可能对使用过其它文本编辑器的人来说感到陌生。有些人可能喜欢这种模式,但是我们强烈建议使用 vim 模式运行 vim。下面的配置文件明确的设置了 “<span class="quote">nocompatible</span>” 模式(也可以改用 “<span class="quote">compatible</span>” 模式),这是必要的,因为如果要改变或覆盖其它设置,必须要在这个设置之后。使用下面的命令创建一个默认的 <span><strong class="command">vim</strong></span> 配置文件: </p>
<pre class="userinput"><kbd class="command">cat > /etc/vimrc << "EOF"
<tt class="literal">" Begin /etc/vimrc
set nocompatible
set backspace=2
syntax on
if (&term =="iterm") || (&term =="putty")
set background=dark
endif
" End /etc/vimrc</tt>
EOF</kbd></pre>
<p><em class="parameter"><tt>set nocompatible</tt></em> 将使 <span><strong class="command">vim</strong></span> 以比默认的 vi 兼容模式功能更强的方式运行。你可以去掉 “<span class="quote">no</span>” 来保持默认的 <span><strong class="command">vi</strong></span> 模式。<em class="parameter"><tt>set backspace=2</tt></em> 让退格键能跨行、自动缩进、插入。<em class="parameter"><tt>syntax on</tt></em> 打开了 vim 的语法高亮功能。最后,带有 <em class="parameter"><tt>set background=dark</tt></em> 的 <span class="emphasis"><em>if</em></span> 语句纠正了 <span><strong class="command">vim</strong></span> 对于终端背景颜色的猜测。对于那些使用黑色背景的用户这是一个较好的配色方案。 </p>
<p>使用下面的命令可以得到其它可以使用的选项的说明文档:
</p>
<pre class="userinput"><kbd class="command">vim -c ':options'</kbd></pre>
</div>
<div class="content" lang="zh_cn" xml:lang="zh_cn">
<div class="titlepage">
<a id="contents-vim" name="contents-vim"></a>
<h2 class="sect2">
6.23.3. Vim 的内容
</h2>
</div>
<div class="segmentedlist">
<div class="seglistitem">
<div class="seg">
<strong><span class="segtitle">安装的程序:</span></strong> <span class="seg">efm_filter.pl, efm_perl.pl, ex(链接到 vim), less.sh, mve.awk, pltags.pl, ref, rview(链接到 vim), rvim(链接到 vim), shtags.pl, tcltags, vi(链接到 vim), view(链接到 vim), vim, vim132, vim2html.pl, vimdiff(链接到 vim), vimm, vimspell.sh, vimtutor, xxd</span>
</div>
</div>
</div>
<div class="variablelist">
<h3>
<a id="id3322515" name="id3322515"></a>简要描述</h3>
<table border="0">
<col align="left" valign="top" />
<tbody>
<tr>
<td>
<a id="efm_filter.pl" name="efm_filter.pl"></a><span class="term"><span><strong class="command">efm_filter.pl</strong></span></span>
</td>
<td>
<p>能读取 <span><strong class="command">vim</strong></span> 产生的错误的一个过滤器。
</p>
</td>
</tr>
<tr>
<td>
<a id="efm_perl.pl" name="efm_perl.pl"></a><span class="term"><span><strong class="command">efm_perl.pl</strong></span></span>
</td>
<td>
<p>将 perl 解释器的错误信息重新格式化以用于 <span><strong class="command">vim</strong></span> 的“<span class="quote">quickfix</span>”模式。
</p>
</td>
</tr>
<tr>
<td>
<a id="ex" name="ex"></a><span class="term"><span><strong class="command">ex</strong></span></span>
</td>
<td>
<p>以 ex 模式启动 <span><strong class="command">vim</strong></span>
</p>
</td>
</tr>
<tr>
<td>
<a id="less.sh" name="less.sh"></a><span class="term"><span><strong class="command">less.sh</strong></span></span>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -