OSDN Git Service

031b2542e0cfa7b0192e62a03034597361d58140
[linuxjf/JF.git] / docs / LFS-BOOK / chapter06 / vim.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
4   <head>
5     <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
6     <title>
7       6.59. Vim-7.2
8     </title>
9     <link rel="stylesheet" href="../stylesheets/lfs.css" type="text/css" />
10     <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
11     <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
12     "text/css" media="print" />
13   </head>
14   <body class="lfs" id="lfs-6.6">
15     <div class="navheader">
16       <h4>
17         Linux From Scratch - Version 6.6
18       </h4>
19       <h3>
20         第6章 基本的なソフトウェアのインストール
21       </h3>
22       <ul>
23         <li class="prev">
24           <a accesskey="p" href="udev.html" title="Udev-151">前のページ</a>
25           <p>
26             Udev-151
27           </p>
28         </li>
29         <li class="next">
30           <a accesskey="n" href="aboutdebug.html" title=
31           "デバッグシンボルについて">次のページ</a>
32           <p>
33             デバッグシンボルについて
34           </p>
35         </li>
36         <li class="up">
37           <a accesskey="u" href="chapter06.html" title=
38           "第6章 基本的なソフトウェアのインストール">上に戻る</a>
39         </li>
40         <li class="home">
41           <a accesskey="h" href="../index.html" title=
42           "Linux From Scratch - Version 6.6">ホーム</a>
43         </li>
44       </ul>
45     </div>
46     <div class="wrap" lang="ja" xml:lang="ja">
47       <h1 class="sect1">
48         <a id="ch-system-vim" name="ch-system-vim"></a>6.59. Vim-7.2
49       </h1>
50       <div class="package" lang="ja" xml:lang="ja">
51         <p>
52           Vim パッケージは強力なテキストエディタを提供します。
53         </p>
54         <div class="segmentedlist">
55           <div class="seglistitem">
56             <div class="seg">
57               <strong class="segtitle">概算ビルド時間:</strong> <span class=
58               "segbody">1.0 SBU</span>
59             </div>
60             <div class="seg">
61               <strong class="segtitle">必要ディスク容量:</strong> <span class=
62               "segbody">79 MB</span>
63             </div>
64           </div>
65         </div>
66         <div class="admon tip">
67           <img alt="[ティップ]" src="../images/tip.png" />
68           <h3>
69             Vim の代替ソフトウェア
70           </h3>
71           <p>
72             もし Emacs、Joe、Nano など他のエディタを用いたい場合は <a class="ulink" href=
73             "http://www.linuxfromscratch.org/blfs/view/svn/postlfs/editors.html">
74             http://www.linuxfromscratch.org/blfs/view/svn/postlfs/editors.html</a>
75             に示される手順に従ってインストールしてください。
76           </p>
77         </div>
78       </div>
79       <div class="installation" lang="ja" xml:lang="ja">
80         <h2 class="sect2">
81           6.59.1. Vim のインストール
82         </h2>
83         <p>
84           まず2つのアーカイブ <code class="filename">vim-7.2.tar.bz2</code>、
85           <code class="filename">vim-7.2-lang.tar.gz</code> を同一ディレクトリに解凍します。
86           (2つめのアーカイブを用いるのは任意です。)
87         </p>
88         <p>
89           Vim-7.2 の初期版リリース以降に開発者によって発見された種々の問題を解消するために、以下のパッチを適用します。
90         </p>
91         <pre class="userinput">
92 <kbd class="command">patch -Np1 -i ../vim-7.2-fixes-5.patch</kbd>
93 </pre>
94         <p>
95           設定ファイル <code class="filename">vimrc</code> がインストールされるデフォルトディレクトリを
96           <code class="filename">/etc</code> に変更します。
97         </p>
98         <pre class="userinput">
99 <kbd class=
100 "command">echo '#define SYS_VIMRC_FILE "/etc/vimrc"' &gt;&gt; src/feature.h</kbd>
101 </pre>
102         <p>
103           Vim をコンパイルするための準備をします。
104         </p>
105         <pre class="userinput">
106 <kbd class="command">./configure --prefix=/usr --enable-multibyte</kbd>
107 </pre>
108         <div class="variablelist">
109           <p class="title">
110             <b>configure オプションの意味:</b>
111           </p>
112           <dl>
113             <dt>
114               <span class="term"><em class=
115               "parameter"><code>--enable-multibyte</code></em></span>
116             </dt>
117             <dd>
118               <p>
119                 このオプションは、マルチバイトエンコーディングによるファイルの編集をサポートする指示を行います。
120                 マルチバイト文字を用いるロケールにとってはこれが必要です。 例えば Fedora Core のようにデフォルトで
121                 UTF-8 を採用している Linux
122                 ディストリビューションにおいては、新規に生成するテキストファイルを編集できるようにするために、このオプションを指定することが有用です。
123               </p>
124             </dd>
125           </dl>
126         </div>
127         <p>
128           パッケージをコンパイルします。
129         </p>
130         <pre class="userinput">
131 <kbd class="command">make</kbd>
132 </pre>
133         <p>
134           コンパイル結果をテストするには以下を実行します。
135         </p>
136         <pre class="userinput">
137 <kbd class="command">make test</kbd>
138 </pre>
139         <p>
140           このテストスイートは数多くのバイナリデータを端末画面上に出力します。 これは端末画面の設定によっては問題を引き起こします。
141           これを避けるには出力をリダイレクトしてログファイルに出力するようにしてください。
142         </p>
143         <p>
144           パッケージをインストールします。
145         </p>
146         <pre class="userinput">
147 <kbd class="command">make install</kbd>
148 </pre>
149         <p>
150           たいていのユーザーは <span class="command"><strong>vim</strong></span> ではなく
151           <span class="command"><strong>vi</strong></span> を使うようです。
152           <span class="command"><strong>vi</strong></span> を入力しても
153           <span class="command"><strong>vim</strong></span>
154           が実行されるように、実行モジュールに対するシンボリックリンクを作成します。 さらに指定された言語による man
155           ページへのシンボリックリンクも作成します。
156         </p>
157         <pre class="userinput">
158 <kbd class="command">ln -sv vim /usr/bin/vi
159 for L in  /usr/share/man/{,*/}man1/vim.1; do
160     ln -sv vim.1 $(dirname $L)/vi.1
161 done</kbd>
162 </pre>
163         <p>
164           デフォルトでは Vim のドキュメントが <code class="filename">/usr/share/vim</code>
165           にインストールされます。 以下のようなシンボリックリンクを生成することで <code class=
166           "filename">/usr/share/doc/vim-7.2</code>
167           へアクセスしてもドキュメントが参照できるようにし、他のパッケージが配置するドキュメントの場所と整合を取ります。
168         </p>
169         <pre class="userinput">
170 <kbd class="command">ln -sv ../vim/vim72/doc /usr/share/doc/vim-7.2</kbd>
171 </pre>
172         <p>
173           LFS システムに対して X ウィンドウシステムをインストールする場合 X のインストールの後で Vim
174           を再コンパイルする必要があります。 Vim には GUI 版があり X や他のライブラリがインストールされていて
175           初めて構築できるためです。 この作業の詳細については Vim のドキュメントと BLFS ブックの <a class="ulink"
176           href=
177           "http://www.linuxfromscratch.org/blfs/view/svn/postlfs/editors.html#postlfs-editors-vim">
178           http://www.linuxfromscratch.org/blfs/view/svn/postlfs/editors.html#postlfs-editors-vim</a>
179           に示されている Vim のインストール説明のページを参照してください。
180         </p>
181       </div>
182       <div class="configuration" lang="ja" xml:lang="ja">
183         <h2 class="sect2">
184           <a id="conf-vim" name="conf-vim"></a>6.59.2. Vim の設定
185         </h2>
186         <p>
187           デフォルトで <span class="command"><strong>vim</strong></span> は Vi
188           非互換モード (vi-incompatible mode) で起動します。
189           他のエディタを使ってきたユーザーにとっては、よく分からないものかもしれません。 以下の設定における 「<span class=
190           "quote">nocompatible</span>」 (非互換) は、Vi の新しい機能を利用することを意味しています。 もし
191           「<span class="quote">compatible</span>」 (互換)
192           モードに変更したい場合は、この設定ファイルの冒頭にて行っておくことが必要です。
193           このモード設定は他の設定を置き換えるものとなることから、まず初めに行っておかなければならないものだからです。 以下のコマンドを実行して
194           <span class="command"><strong>vim</strong></span> の設定ファイルを生成します。
195         </p>
196         <pre class="userinput">
197 <kbd class="command">cat &gt; /etc/vimrc &lt;&lt; "EOF"
198 <code class="literal">" Begin /etc/vimrc
199
200 set nocompatible
201 set backspace=2
202 syntax on
203 if (&amp;term == "iterm") || (&amp;term == "putty")
204   set background=dark
205 endif
206
207 " End /etc/vimrc</code>
208 EOF</kbd>
209 </pre>
210         <p>
211           <em class="parameter"><code>set nocompatible</code></em> と設定しておくと
212           vi 互換モードでの動作に比べて有用な動作となります。 (これがデフォルトになっています。) その設定の記述から
213           「<span class="quote">no</span>」 の文字を取り除けば、旧来の <span class=
214           "command"><strong>vi</strong></span> コマンドの動作となります。 <em class=
215           "parameter"><code>set backspace=2</code></em>
216           を設定しておくと、行を超えてもバックスペースキーによる編集が可能となります。
217           またインデントが自動的に行われ、コマンド起動時には自動的に挿入モードとなります。 <em class=
218           "parameter"><code>syntax on</code></em> パラメータを指定すれば vim の文法ハイライト
219           (syntax highlighting) 機能が有効になります。 最後にある <span class=
220           "emphasis"><em>if</em></span> 文は、<em class="parameter"><code>set
221           background=dark</code></em> を指定した場合に、特定の端末エミュレータ上において <span class=
222           "command"><strong>vim</strong></span> が背景色を誤って認識しないようにするためのものです。
223           エミュレータの背景色が黒色であった場合に、より適切なハイライトが実現できます。
224         </p>
225         <p>
226           この他に利用できるオプションについては、以下のコマンドを実行することで出力される説明を参照してください。
227         </p>
228         <pre class="userinput">
229 <kbd class="command">vim -c ':options'</kbd>
230 </pre>
231         <div class="admon note">
232           <img alt="[注記]" src="../images/note.png" />
233           <h3>
234             注記
235           </h3>
236           <p>
237             Vim がインストールするスペルファイル (spell files) はデフォルトでは英語に対するものだけです。
238             必要とする言語のスペルファイルをインストールするなら <a class="ulink" href=
239             "ftp://ftp.vim.org/pub/vim/runtime/spell/">ftp://ftp.vim.org/pub/vim/runtime/spell/</a>
240             から、特定の言語、エンコーディングによる <code class="filename">*.spl</code>
241             ファイル、またオプションとして <code class="filename">*.sug</code>
242             ファイルをダウンロードしてください。 そしてそれらのファイルを <code class=
243             "filename">/usr/share/vim/vim72/spell/</code> ディレクトリに保存してください。
244           </p>
245           <p>
246             スペルファイルを利用するには <code class="filename">/etc/vimrc</code>
247             ファイルにて、例えば以下のような設定が必要になります。
248           </p>
249           <pre class="screen">
250 <code class="literal">set spelllang=en,ru
251 set spell</code>
252 </pre>
253           <p>
254             詳しくは、上で説明した URL にて提供されている README ファイルを参照してください。
255           </p>
256         </div>
257       </div>
258       <div class="content" lang="ja" xml:lang="ja">
259         <h2 class="sect2">
260           <a id="contents-vim" name="contents-vim"></a>6.59.3. Vim の構成
261         </h2>
262         <div class="segmentedlist">
263           <div class="seglistitem">
264             <div class="seg">
265               <strong class="segtitle">インストールプログラム:</strong> <span class=
266               "segbody">ex (vim へのリンク), rview (vim へのリンク), rvim (vim へのリンク),
267               vi (vim へのリンク), view (vim へのリンク), vim, vimdiff (vim へのリンク),
268               vimtutor, xxd</span>
269             </div>
270           </div>
271         </div>
272         <div class="variablelist">
273           <h3>
274             概略説明
275           </h3>
276           <table border="0">
277             <col align="left" valign="top" />
278             <tbody>
279               <tr>
280                 <td>
281                   <p>
282                     <a id="ex" name="ex"></a><span class="term"><span class=
283                     "command"><strong>ex</strong></span></span>
284                   </p>
285                 </td>
286                 <td>
287                   <p>
288                     <span class="command"><strong>vim</strong></span> を ex
289                     モードで起動します。
290                   </p>
291                 </td>
292               </tr>
293               <tr>
294                 <td>
295                   <p>
296                     <a id="rview" name="rview"></a><span class=
297                     "term"><span class=
298                     "command"><strong>rview</strong></span></span>
299                   </p>
300                 </td>
301                 <td>
302                   <p>
303                     <span class="command"><strong>view</strong></span>
304                     の機能限定版。 シェルは起動できず、サスペンドも行うことはできません。
305                   </p>
306                 </td>
307               </tr>
308               <tr>
309                 <td>
310                   <p>
311                     <a id="rvim" name="rvim"></a><span class=
312                     "term"><span class=
313                     "command"><strong>rvim</strong></span></span>
314                   </p>
315                 </td>
316                 <td>
317                   <p>
318                     <span class="command"><strong>vim</strong></span> の機能限定版。
319                     シェルは起動できず、サスペンドも行うことはできません。
320                   </p>
321                 </td>
322               </tr>
323               <tr>
324                 <td>
325                   <p>
326                     <a id="vi" name="vi"></a><span class="term"><span class=
327                     "command"><strong>vi</strong></span></span>
328                   </p>
329                 </td>
330                 <td>
331                   <p>
332                     <span class="command"><strong>vim</strong></span> へのリンク。
333                   </p>
334                 </td>
335               </tr>
336               <tr>
337                 <td>
338                   <p>
339                     <a id="view" name="view"></a><span class=
340                     "term"><span class=
341                     "command"><strong>view</strong></span></span>
342                   </p>
343                 </td>
344                 <td>
345                   <p>
346                     <span class="command"><strong>vim</strong></span>
347                     を読み込み専用モード (read-only mode) で起動します。
348                   </p>
349                 </td>
350               </tr>
351               <tr>
352                 <td>
353                   <p>
354                     <a id="vim" name="vim"></a><span class=
355                     "term"><span class="command"><strong>vim</strong></span></span>
356                   </p>
357                 </td>
358                 <td>
359                   <p>
360                     エディタ。
361                   </p>
362                 </td>
363               </tr>
364               <tr>
365                 <td>
366                   <p>
367                     <a id="vimdiff" name="vimdiff"></a><span class=
368                     "term"><span class=
369                     "command"><strong>vimdiff</strong></span></span>
370                   </p>
371                 </td>
372                 <td>
373                   <p>
374                     <span class="command"><strong>vim</strong></span>
375                     により、同一ファイルにおける2つまたは3つの版を同時に編集し、差異を表示します。
376                   </p>
377                 </td>
378               </tr>
379               <tr>
380                 <td>
381                   <p>
382                     <a id="vimtutor" name="vimtutor"></a><span class=
383                     "term"><span class=
384                     "command"><strong>vimtutor</strong></span></span>
385                   </p>
386                 </td>
387                 <td>
388                   <p>
389                     <span class="command"><strong>vim</strong></span>
390                     の基本的なキー操作とコマンドについて教えてくれます。
391                   </p>
392                 </td>
393               </tr>
394               <tr>
395                 <td>
396                   <p>
397                     <a id="xxd" name="xxd"></a><span class=
398                     "term"><span class="command"><strong>xxd</strong></span></span>
399                   </p>
400                 </td>
401                 <td>
402                   <p>
403                     指定されたファイルの内容を 16進数ダンプとして変換します。
404                     逆の変換も行うことができるため、バイナリパッチにも利用されます。
405                   </p>
406                 </td>
407               </tr>
408             </tbody>
409           </table>
410         </div>
411       </div>
412     </div>
413     <div class="navfooter">
414       <ul>
415         <li class="prev">
416           <a accesskey="p" href="udev.html" title="Udev-151">前のページ</a>
417           <p>
418             Udev-151
419           </p>
420         </li>
421         <li class="next">
422           <a accesskey="n" href="aboutdebug.html" title=
423           "デバッグシンボルについて">次のページ</a>
424           <p>
425             デバッグシンボルについて
426           </p>
427         </li>
428         <li class="up">
429           <a accesskey="u" href="chapter06.html" title=
430           "第6章 基本的なソフトウェアのインストール">上に戻る</a>
431         </li>
432         <li class="home">
433           <a accesskey="h" href="../index.html" title=
434           "Linux From Scratch - Version 6.6">ホーム</a>
435         </li>
436       </ul>
437     </div>
438   </body>
439 </html>