source: chapter06/vim.xml@ df8334f

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 6.0 6.1 6.1.1 6.3 6.4 6.5 6.6 6.7 6.8 7.0 7.1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since df8334f was df8334f, checked in by Manuel Canales Esparcia <manuel@…>, 20 years ago

HEAD: Retaged the command explanations in Chapter 6.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3646 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 10.5 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
3 <!ENTITY % general-entities SYSTEM "../general.ent">
4 %general-entities;
5]>
6<sect1 id="ch-system-vim" xreflabel="Vim" role="wrap">
7<title>Vim-&vim-version;</title>
8<?dbhtml filename="vim.html"?>
9
10<indexterm zone="ch-system-vim"><primary sortas="a-Vim">Vim</primary></indexterm>
11
12<sect2 role="package"><title/>
13<para>The Vim package contains a powerful text editor.</para>
14
15<segmentedlist>
16<segtitle>&buildtime;</segtitle>
17<segtitle>&diskspace;</segtitle>
18<seglistitem><seg>0.4 SBU</seg><seg>34 MB</seg></seglistitem>
19</segmentedlist>
20
21<segmentedlist>
22<segtitle>Vim installation depends on</segtitle>
23<seglistitem><seg>Bash, Binutils, Coreutils, Diffutils,
24GCC, Glibc, Grep, Make, Ncurses, Sed</seg></seglistitem>
25</segmentedlist>
26
27<tip>
28<title>Alternatives to Vim</title>
29<para>If you prefer another editor -- like Emacs, Joe, or Nano -- to Vim,
30have a look at <ulink url="&blfs-root;view/stable/postlfs/editors.html"/> for
31suggested installation instructions.</para>
32</tip>
33</sect2>
34
35<sect2 role="installation">
36<title>Installation of Vim</title>
37
38<para>First change the default locations of the <filename>vimrc</filename> and
39<filename>gvimrc</filename> configuration files to <filename class="directory">/etc</filename>.</para>
40
41<screen><userinput>echo '#define SYS_VIMRC_FILE "/etc/vimrc"' &gt;&gt; src/feature.h
42echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' &gt;&gt; src/feature.h</userinput></screen>
43
44<para>Now prepare Vim for compilation:</para>
45
46<screen><userinput>./configure --prefix=/usr --enable-multibyte</userinput></screen>
47
48<para>The optional <userinput>--enable-multibyte</userinput> switch
49includes multibyte editing support into
50vim. It is only needed for those people who ignore our recommendation not to
51use LFS in locales with multibyte character sets, but it does not hurt
52others.</para>
53
54<para>Compile the package:</para>
55
56<screen><userinput>make</userinput></screen>
57
58<para>To test the results, you can issue:
59<userinput>make test</userinput>. However, this test suite outputs a lot of
60seemingly garbage characters to the screen, and this can wreak havoc with the
61settings of the current terminal. Therefore the running of the test suite here
62is strictly optional.</para>
63
64<para>Now install the package:</para>
65
66<screen><userinput>make install</userinput></screen>
67
68<para>Many users are used to using <command>vi</command>, instead of
69<command>vim</command>. To let them execute <command>vim</command> when
70they habitually enter <command>vi</command>, create a symlink:</para>
71
72<screen><userinput>ln -s vim /usr/bin/vi</userinput></screen>
73
74<para>If you are going to install the X Window system on your LFS system, you
75may want to re-compile Vim after having installed X. Vim comes with a nice GUI
76version of the editor that requires X and a few other libraries to be
77installed. For more information read the Vim documentation.</para>
78
79</sect2>
80
81
82<sect2 id="conf-vim" role="configuration"><title>Configuring Vim</title>
83<indexterm zone="conf-vim"><primary sortas="e-/etc/vim">/etc/vim</primary></indexterm>
84
85<para>By default, <command>vim</command> runs in vi-incompatible mode. Some
86people might not like this, but we prefer to run <command>vim</command> in its
87own mode (else we wouldn't have included it in this book, but the original
88<command>vi</command>). We've included the setting of "nocompatible"
89below to high-light the fact that the new behavior is being used. It
90also reminds those who would change to "compatible" mode that it should
91appear first because it changes other settings and overrides must come
92after this setting. Create a default vim configuration file by running
93the following:</para>
94
95<screen><userinput>cat &gt; /etc/vimrc &lt;&lt; "EOF"</userinput>
96" Begin /etc/vimrc
97
98set nocompatible
99set backspace=2
100syntax on
101
102" End /etc/vimrc
103<userinput>EOF</userinput></screen>
104
105<para>The <emphasis>set nocompatible</emphasis> makes
106<command>vim</command> behave in a more useful way (the default) than the
107vi-compatible manner. Remove the "no" if you want the old <command>vi</command>
108behavior. The <emphasis>set backspace=2</emphasis> allows
109backspacing over line breaks, autoindents and the start of insert. The
110<emphasis>syntax on</emphasis> enables <command>vim</command>'s
111semantic coloring.</para>
112
113<para>Documentation for other available options can be obtained by running
114the following command:</para>
115
116<screen><userinput>vim -c ':options'</userinput></screen>
117
118</sect2>
119
120
121<sect2 id="contents-vim" role="content"><title>Contents of Vim</title>
122
123<segmentedlist>
124<segtitle>Installed programs</segtitle>
125<seglistitem><seg>efm_filter.pl, efm_perl.pl, ex (link to vim), less.sh, mve.awk,
126pltags.pl, ref, rview (link to vim), rvim (link to vim), shtags.pl, tcltags, vi (link to vim),
127view (link to vim), vim, vim132, vim2html.pl, vimdiff (link to vim), vimm, vimspell.sh,
128vimtutor and xxd</seg></seglistitem>
129</segmentedlist>
130
131<variablelist><title>Short descriptions</title>
132
133<varlistentry>
134<term id="efm_filter.pl"><command>efm_filter.pl</command></term>
135<listitem>
136<indexterm zone="ch-system-vim efm_filter.pl"><primary sortas="b-efm_filter.pl">efm_filter.pl</primary></indexterm>
137<para>is a filter for creating an error file that can be read by vim.</para>
138</listitem>
139</varlistentry>
140
141<varlistentry>
142<term id="efm_perl.pl"><command>efm_perl.pl</command></term>
143<listitem>
144<indexterm zone="ch-system-vim efm_perl.pl"><primary sortas="b-efm_perl.pl">efm_perl.pl</primary></indexterm>
145<para>reformats the error messages of the
146Perl interpreter for use with the <quote>quickfix</quote> mode of vim.</para>
147</listitem>
148</varlistentry>
149
150<varlistentry>
151<term id="ex"><command>ex</command></term>
152<listitem>
153<indexterm zone="ch-system-vim ex"><primary sortas="b-ex">ex</primary></indexterm>
154<para>starts vim in ex mode.</para>
155</listitem>
156</varlistentry>
157
158<varlistentry>
159<term id="less.sh"><command>less.sh</command></term>
160<listitem>
161<indexterm zone="ch-system-vim less.sh"><primary sortas="b-less.sh">less.sh</primary></indexterm>
162<para>is a script that starts vim with less.vim.</para>
163</listitem>
164</varlistentry>
165
166<varlistentry>
167<term id="mve.awk"><command>mve.awk</command></term>
168<listitem>
169<indexterm zone="ch-system-vim mve.awk"><primary sortas="b-mve.awk">mve.awk</primary></indexterm>
170<para>processes vim errors.</para>
171</listitem>
172</varlistentry>
173
174<varlistentry>
175<term id="pltags.pl"><command>pltags.pl</command></term>
176<listitem>
177<indexterm zone="ch-system-vim pltags.pl"><primary sortas="b-pltags.pl">pltags.pl</primary></indexterm>
178<para>creates a tags file for perl code, for use by vim.</para>
179</listitem>
180</varlistentry>
181
182<varlistentry>
183<term id="ref"><command>ref</command></term>
184<listitem>
185<indexterm zone="ch-system-vim ref"><primary sortas="b-ref">ref</primary></indexterm>
186<para>checks the spelling of arguments.</para>
187</listitem>
188</varlistentry>
189
190<varlistentry>
191<term id="rview"><command>rview</command></term>
192<listitem>
193<indexterm zone="ch-system-vim rview"><primary sortas="b-rview">rview</primary></indexterm>
194<para>is a restricted version of view: no shell
195commands can be started and view can't be suspended.</para>
196</listitem>
197</varlistentry>
198
199<varlistentry>
200<term id="rvim"><command>rvim</command></term>
201<listitem>
202<indexterm zone="ch-system-vim rvim"><primary sortas="b-rvim">rvim</primary></indexterm>
203<para>is a restricted version of vim: no shell
204commands can be started and vim can't be suspended.</para>
205</listitem>
206</varlistentry>
207
208<varlistentry>
209<term id="shtags.pl"><command>shtags.pl</command></term>
210<listitem>
211<indexterm zone="ch-system-vim shtags.pl"><primary sortas="b-shtags.pl">shtags.pl</primary></indexterm>
212<para>generates a tag file for perl scripts.</para>
213</listitem>
214</varlistentry>
215
216<varlistentry>
217<term id="tcltags"><command>tcltags</command></term>
218<listitem>
219<indexterm zone="ch-system-vim tcltags"><primary sortas="b-tcltags">tcltags</primary></indexterm>
220<para>generates a tag file for TCL code.</para>
221</listitem>
222</varlistentry>
223
224<varlistentry>
225<term id="view"><command>view</command></term>
226<listitem>
227<indexterm zone="ch-system-vim view"><primary sortas="b-view">view</primary></indexterm>
228<para>starts vim in read-only mode.</para>
229</listitem>
230</varlistentry>
231
232<varlistentry>
233<term id="vim"><command>vim</command></term>
234<listitem>
235<indexterm zone="ch-system-vim vim"><primary sortas="b-vim">vim</primary></indexterm>
236<para>is the editor.</para>
237</listitem>
238</varlistentry>
239
240<varlistentry>
241<term id="vim132"><command>vim132</command></term>
242<listitem>
243<indexterm zone="ch-system-vim vim132"><primary sortas="b-vim132">vim132</primary></indexterm>
244<para>starts vim with the terminal in 132-column mode.</para>
245</listitem>
246</varlistentry>
247
248<varlistentry>
249<term id="vim2html.pl"><command>vim2html.pl</command></term>
250<listitem>
251<indexterm zone="ch-system-vim vim2html.pl"><primary sortas="b-vim2html.pl">vim2html.pl</primary></indexterm>
252<para>converts vim documentation to HTML.</para>
253</listitem>
254</varlistentry>
255
256<varlistentry>
257<term id="vimdiff"><command>vimdiff</command></term>
258<listitem>
259<indexterm zone="ch-system-vim vimdiff"><primary sortas="b-vimdiff">vimdiff</primary></indexterm>
260<para>edits two or three versions of a file with vim and show differences.</para>
261</listitem>
262</varlistentry>
263
264<varlistentry>
265<term id="vimm"><command>vimm</command></term>
266<listitem>
267<indexterm zone="ch-system-vim vimm"><primary sortas="b-vimm">vimm</primary></indexterm>
268<para>enables the DEC locator input model on a remote terminal.</para>
269</listitem>
270</varlistentry>
271
272<varlistentry>
273<term id="vimspell.sh"><command>vimspell.sh</command></term>
274<listitem>
275<indexterm zone="ch-system-vim vimspell.sh"><primary sortas="b-vimspell.sh">vimspell.sh</primary></indexterm>
276<para>is a script which spells a file and generates the syntax statements necessary
277to highlight in vim. This script requires the old Unix <command>spell</command>
278command, which is provided neither in LFS nor in BLFS.</para>
279</listitem>
280</varlistentry>
281
282<varlistentry>
283<term id="vimtutor"><command>vimtutor</command></term>
284<listitem>
285<indexterm zone="ch-system-vim vimtutor"><primary sortas="b-vimtutor">vimtutor</primary></indexterm>
286<para>teaches you the basic keys and commands of vim.</para>
287</listitem>
288</varlistentry>
289
290<varlistentry>
291<term id="xxd"><command>xxd</command></term>
292<listitem>
293<indexterm zone="ch-system-vim xxd"><primary sortas="b-xxd">xxd</primary></indexterm>
294<para>makes a hex dump of the given file. It can
295also do the reverse, so it can be used for binary patching.</para>
296</listitem>
297</varlistentry>
298</variablelist>
299
300</sect2>
301
302</sect1>
Note: See TracBrowser for help on using the repository browser.