source: postlfs/editors/vim.xml@ 2202183

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 2202183 was 2202183, checked in by Ag Hatzimanikas <ag@…>, 16 years ago

Added a command in Vim to regenerate the tags file

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@7348 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 12.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY vim-download-http "http://ftp.at.vim.org/pub/vim/unix/vim-&vim-version;.tar.bz2">
8 <!ENTITY vim-download-ftp "ftp://ftp.vim.org/pub/vim/unix/vim-&vim-version;.tar.bz2">
9 <!ENTITY vim-md5sum "44c6b4914f38d6f9aa959640b89da329">
10 <!ENTITY vim-size "6.6 MB">
11 <!ENTITY vim-buildsize "75 MB">
12 <!ENTITY vim-time "0.8 SBU">
13]>
14
15<sect1 id="vim" xreflabel="Vim-&vim-version;">
16 <?dbhtml filename="vim.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Vim-&vim-version;</title>
24
25 <indexterm zone="vim">
26 <primary sortas="a-Vim">Vim</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Vim</title>
31
32 <para>The <application>Vim</application> package, which is an
33 abbreviation for VI IMproved, contains a <command>vi</command>
34 clone with extra features as compared to the original
35 <command>vi</command>.</para>
36
37 <para>The default LFS instructions install <application>vim</application>
38 as a part of the base system. If you would prefer to link
39 <application>vim</application> against <application>X</application>,
40 you should recompile <application>vim</application> to enable GUI mode.
41 There is no need for special instructions since
42 <application>X</application> support is automatically detected.</para>
43
44 <bridgehead renderas="sect3">Package Information</bridgehead>
45 <itemizedlist spacing="compact">
46 <listitem>
47 <para>Download (HTTP): <ulink url="&vim-download-http;"/></para>
48 </listitem>
49 <listitem>
50 <para>Download (FTP): <ulink url="&vim-download-ftp;"/></para>
51 </listitem>
52 <listitem>
53 <para>Download MD5 sum: &vim-md5sum;</para>
54 </listitem>
55 <listitem>
56 <para>Download size: &vim-size;</para>
57 </listitem>
58 <listitem>
59 <para>Estimated disk space required: &vim-buildsize;</para>
60 </listitem>
61 <listitem>
62 <para>Estimated build time: &vim-time;</para>
63 </listitem>
64 </itemizedlist>
65
66 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
67 <itemizedlist spacing='compact'>
68 <listitem>
69 <para>Required Patch: <ulink
70 url="&patch-root;/vim-&vim-version;-mandir-1.patch"/></para>
71 </listitem>
72 <listitem>
73 <para>Required Patch: <ulink
74 url="&patch-root;/vim-&vim-version;-fixes-6.patch"/></para>
75 </listitem>
76 <listitem>
77 <para>Translated Vim messages: <ulink
78 url="http://ftp.at.vim.org/pub/vim/extra/vim-&vim-version;-lang.tar.gz"/>
79 </para>
80 </listitem>
81 </itemizedlist>
82
83 <bridgehead renderas="sect3">Vim Dependencies</bridgehead>
84
85 <bridgehead renderas="sect4">Recommended</bridgehead>
86 <para role="recommended"><xref linkend="x-window-system"/></para>
87
88 <bridgehead renderas="sect4">Optional</bridgehead>
89 <para role="optional"><xref linkend="gtk2"/> or
90 <xref linkend="lesstif"/> or
91 <xref linkend="GTK"/>,
92 <xref linkend="python"/>,
93 <xref linkend="tcl"/>,
94 <xref linkend="ruby"/>, and
95 <xref linkend="gpm"/></para>
96 <!-- mentioned below as a runtime dependency
97 <xref linkend="rsync"/> (to update the runtime files)
98 -->
99
100 <para condition="html" role="usernotes">User Notes:
101 <ulink url="&blfs-wiki;/vim"/></para>
102
103 </sect2>
104
105 <sect2 role="installation">
106 <title>Installation of Vim</title>
107
108 <note>
109 <para>If you recompile <application>Vim</application> to link against
110 <application>X</application>, and your <application>X</application>
111 libraries are not on the root partition, you will no longer have an editor
112 for use in emergencies. You may choose to install an additional editor,
113 not link <application>Vim</application> against
114 <application>X</application>, or move the current <command>vim</command>
115 executable to the <filename class="directory">/bin</filename> directory
116 under a different name such as <filename>vi</filename>.</para>
117 </note>
118
119 <para>If desired, unpack the translated messages archive:</para>
120
121<screen><userinput>tar -xf ../vim-&vim-version;-lang.tar.gz --strip-components=1</userinput></screen>
122
123 <para>Install <application>Vim</application> by running the following
124 commands:</para>
125
126<screen><userinput>patch -Np1 -i ../vim-&vim-version;-mandir-1.patch &amp;&amp;
127patch -Np1 -i ../vim-&vim-version;-fixes-3.patch &amp;&amp;
128echo '#define SYS_VIMRC_FILE "/etc/vimrc"' &gt;&gt; src/feature.h &amp;&amp;
129echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' &gt;&gt; src/feature.h &amp;&amp;
130./configure --prefix=/usr --with-features=huge &amp;&amp;
131make</userinput></screen>
132
133 <para>To test the results, issue: <command>make test</command>.
134 The <application>vim</application> test suite outputs a lot of binary
135 data to the screen, which can cause issues with the settings of the
136 current terminal. This can be resolved by redirecting the output to a
137 log file. Even if one of the tests fails to produce the file
138 <filename>test.out</filename> in <filename
139 class="directory">src/testdir</filename>, the remaining tests will still
140 be executed. If all goes well,the final message in the log file will be
141 <literal>ALL DONE</literal>. <emphasis>Note</emphasis>: Some color tests
142 expect to be executed under the <command>xterm</command> terminal
143 emulator.</para>
144
145 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
146
147<screen role="root"><userinput>make install</userinput></screen>
148
149 <para>By default, Vim's documentation is installed in <filename
150 class="directory">/usr/share/vim</filename>. The following symlink allows
151 the documentation to be accessed via <filename
152 class="directory">/usr/share/doc/vim-&vim-version;</filename>, making it
153 consistent with the location of documentation for other packages:</para>
154
155<!-- When updating, be sure to change the line below for the proper 'vimxx' unpacked
156 directory -->
157
158<screen role="root"><userinput>ln -snfv ../vim/vim71/doc /usr/share/doc/vim-&vim-version;</userinput></screen>
159
160 <para>If you wish to update the runtime files, issue the
161 following command (requires <xref linkend="rsync"/>):</para>
162
163<screen><userinput>rsync -avzcP --delete --exclude="/dos/" --exclude="/spell/" ftp.nluug.nl::Vim/runtime/ ./runtime/</userinput></screen>
164
165 <para>To install the runtime files and to regenerate the
166 <filename>tags</filename> file, run as the
167 <systemitem class="username">root</systemitem> user:</para>
168
169<screen role="root"><userinput>make -C src installruntime &amp;&amp;
170vim -c ":helptags /usr/share/doc/vim-&vim-version;" -c ":q"</userinput></screen>
171
172 </sect2>
173
174 <sect2 role="commands">
175 <title>Command Explanations</title>
176
177 <para><command>patch &hellip;</command>: These patches are the same as LFS
178 and update the package with upstream patches and ensure the man pages
179 are placed in the proper locations.</para>
180
181 <para><parameter>--with-features=huge</parameter>: This switch enables all
182 the additional features available in <application>Vim</application>.</para>
183
184 <para><option>--enable-gui=no</option>: This will prevent compilation of the
185 GUI. <application>Vim</application> will still link against
186 <application>X</application>, so that some features such as the client-server
187 model or the x11-selection (clipboard) are still available.</para>
188
189 <para><option>--without-x</option>: If you prefer not to link
190 <application>Vim</application> against <application>X</application>, use
191 this switch.</para>
192
193 <para><option>--enable-perlinterp</option>, <option>--enable-pythoninterp</option>,
194 <option>--enable-tclinterp</option>, <option>--enable-rubyinterp</option>:
195 These options include the Perl, Python, Tcl, or Ruby interpreters that allow
196 using other application code in <application>vim</application> scripts.</para>
197
198 </sect2>
199
200 <sect2 role="configuration">
201 <title>Configuring Vim</title>
202
203 <sect3 id='vim-config'>
204 <title>Config Files</title>
205
206 <para><filename>/etc/vimrc</filename> and
207 <filename>~/.vimrc</filename></para>
208
209 <indexterm zone="vim vim-config">
210 <primary sortas="e-etc-vimrc">/etc/vimrc</primary>
211 </indexterm>
212
213 <indexterm zone="vim vim-config">
214 <primary sortas="e-AA.vimrc">~/.vimrc</primary>
215 </indexterm>
216
217 </sect3>
218
219 <sect3 id='vim-init'>
220 <title>Configuration Information</title>
221
222 <para><application>Vim</application> has an integrated spell checker
223 which you can enable it if you issue the following in a vim window:
224 </para>
225
226<screen><literal>:setlocal spell spelllang=ru</literal></screen>
227
228 <para>This setting will enable spell checking for the Russian
229 language for the current session.</para>
230
231 <para>By default, <application>Vim</application> only installs spell
232 files for the English language. If a spell file is not available for
233 a language, then <application>Vim</application> will call the
234 <filename>$VIMRUNTIME/plugin/spellfile.vim</filename> plugin and will try
235 to obtain the *.spl and optionally *.sug from the vim ftp server,
236 by using the <filename>$VIMRUNTIME/plugin/netrwPlugin.vim</filename>
237 plugin.</para>
238
239 <para>Alternatively you can manually download the *.spl and *.sug files
240 from: <ulink url="ftp://ftp.vim.org/pub/vim/runtime/spell/"/> and save
241 them to <filename class="directory"> ~/.vim/spell </filename> or in
242 <filename class="directory">/usr/share/vim/vim71/spell/</filename>.</para>
243
244 <para>To find out what's new in <application>Vim-&vim-version;</application>
245 issue the following command:</para>
246
247<screen><literal>:help version-&vim-version;</literal></screen>
248
249 <para>For additional information on setting up
250 <application>Vim</application> configuration files, see <xref
251 linkend="postlfs-config-vimrc"/> and <ulink
252 url='http://www.vi-improved.org/vimrc.php'/>.</para>
253
254 </sect3>
255
256 </sect2>
257
258 <sect2 role="content">
259 <title>Contents</title>
260
261 <para>A list of the reinstalled files, along with their short
262 descriptions can be found in the <ulink
263 url="&lfs-root;/chapter06/vim.html#contents-vim">LFS Vim Installation
264 Instructions</ulink></para>
265
266 <segmentedlist>
267 <segtitle>Installed Programs</segtitle>
268 <segtitle>Installed Libraries</segtitle>
269 <segtitle>Installed Directory</segtitle>
270
271 <seglistitem>
272 <seg>gview, gvim, gvimdiff, rgview, and rgvim</seg>
273 <seg>None</seg>
274 <seg>/usr/share/vim</seg>
275 </seglistitem>
276 </segmentedlist>
277
278 <variablelist>
279 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
280 <?dbfo list-presentation="list"?>
281 <?dbhtml list-presentation="table"?>
282
283 <varlistentry id="gview">
284 <term><command>gview</command></term>
285 <listitem>
286 <para>starts <command>gvim</command> in read-only mode.</para>
287 <indexterm zone="vim gview">
288 <primary sortas="b-gview">gview</primary>
289 </indexterm>
290 </listitem>
291 </varlistentry>
292
293 <varlistentry id="gvim">
294 <term><command>gvim</command></term>
295 <listitem>
296 <para>is the editor that runs under <application>X</application>
297 and includes a GUI.</para>
298 <indexterm zone="vim gvim">
299 <primary sortas="b-gvim">gvim</primary>
300 </indexterm>
301 </listitem>
302 </varlistentry>
303
304 <varlistentry id="gvimdiff">
305 <term><command>gvimdiff</command></term>
306 <listitem>
307 <para>edits two or three versions of a file with
308 <command>gvim</command> and shows the differences.</para>
309 <indexterm zone="vim gvimdiff">
310 <primary sortas="b-gvimdiff">gvimdiff</primary>
311 </indexterm>
312 </listitem>
313 </varlistentry>
314
315 <varlistentry id="rgview">
316 <term><command>rgview</command></term>
317 <listitem>
318 <para>is a restricted version of <command>gview</command>.</para>
319 <indexterm zone="vim rgview">
320 <primary sortas="b-rgview">rgview</primary>
321 </indexterm>
322 </listitem>
323 </varlistentry>
324
325 <varlistentry id="rgvim">
326 <term><command>rgvim</command></term>
327 <listitem>
328 <para>is a restricted version of <command>gvim</command>. </para>
329 <indexterm zone="vim gvim">
330 <primary sortas="b-gvim">gvim</primary>
331 </indexterm>
332 </listitem>
333 </varlistentry>
334
335 </variablelist>
336
337 </sect2>
338
339</sect1>
Note: See TracBrowser for help on using the repository browser.