blob: 248d696e842cb99a5b6d0f4dcdd8d71a038c00ae [file] [log] [blame]
Bram Moolenaar2971ce02008-06-25 00:42:29 +00001===============================================================================
2= V I M 教 本 (チュートリアル) へ よ う こ そ - Version 1.7 =
3===============================================================================
4
5 Vim は、このチュートリアルで説明するには多すぎる程のコマンドを備えた非常
6 に強力なエディターです。このチュートリアルは、あなたが Vim を万能エディ
7 ターとして使いこなせるようになるのに十分なコマンドについて説明をするよう
8 なっています。
9
10 チュートリアルを完了するのに必要な時間は、覚えたコマンドを試すのにどれだ
11 け時間を使うのかにもよりますが、およそ25から30分です。
12
13 ATTENTION:
14 以下の練習用コマンドにはこの文章を変更するものもあります。練習を始める前
15 にコピーを作成しましょう("vimtutor"したならば、既にコピーされています)。
16
17 このチュートリアルが、使うことで覚えられる仕組みになっていることを、心し
18 ておかなければなりません。正しく学習するにはコマンドを実際に試さなければ
19 ならないのです。文章を読んだだけならば、きっと忘れてしまいます!。
20
21 さぁ、Capsロック(Shift-Lock)キーが押されていないことを確認した後、画面に
22 レッスン1.1 が全部表示されるところまで、j キーを押してカーソルを移動しま
23 しょう。
24~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25 レッスン 1.1: カーソルの移動
26
27
28 ** カーソルを移動するには、示される様に h,j,k,l を押します **
29 ^
30 k ヒント: h キーは左方向に移動します。
31 < h l > l キーは右方向に移動します。
32 j j キーは下矢印キーのようなキーです。
33 v
34 1. 移動に慣れるまで、スクリーンでカーソル移動させましょう。
35
36 2. 下へのキー(j)を押しつづけると、連続して移動できます。
37 これで次のレッスンに移動する方法がわかりましたね。
38
39 3. 下へのキーを使って、レッスン1.2 に移動しましょう。
40
41Note: 何をタイプしているか判らなくなったら、<ESC>を押してノーマルモードにし
42 ます。それから入力しようとしていたコマンドを再入力しましょう。
43
44Note: カーソルキーでも移動できます。しかし hjkl に一度慣れてしまえば、はるか
45 に速く移動することができるでしょう。いやマジで!
46
47~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
48 レッスン 1.2: VIM の起動と終了
49
50
51 !! NOTE: 以下のあらゆるステップを行う前に、このレッスンを読みましょう!!
52
53 1. <ESC>キーを押しましょう。(確実にノーマルモードにするため)
54
55 2. 次のようにタイプ: :q! <ENTER>
56 これにより編集した内容を保存せずにエディタが終了します。
57
58 3. シェルプロンプトが出てきたら、このチュートリアルを始める為ににコマンド
59 をタイプします。
60 そのコマンドは: vimtutor <ENTER>
61
62 4. これまでのステップを覚え自信がついたならば、ステップ 1 から 3 までを実
63 際に試して、Vim を1度終了してから再び起動しましょう。
64
65NOTE: :q! <ENTER> は全ての変更を破棄します。レッスンにて変更をファイルに保
66 存する方法についても勉強していきましょう。
67
68 5. 1.3までカーソルを移動させましょう。
69
70~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
71 レッスン 1.3: テキスト編集 - 削除
72
73
74 ** ノーマルモードにてカーソルの下の文字を削除するには x を押します **
75
76 1. 以下の ---> と示された行にカーソルを移動しましょう。
77
78 2. 間違いを修正するために、削除する最初の文字までカーソルを移動します。
79
80 3. 不必要な文字を x を押して削除しましょう。
81
82 4. 文が正しくなるまで ステップ 2 から 4 を繰り返しましょう。
83
84---> その ううさぎ は つつきき を こええてて とびはねたた
85
86 5. 行が正しくなったら、レッスン 1.4 へ進みましょう。
87
88NOTE: 全てのレッスンを通じて、覚えようとするのではなく実際にやってみましょう。
89
90
91
92
93~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
94 レッスン 1.4: テキスト編集 - 挿入
95
96
97 ** ノーマルモードにてテキストを挿入するには i を押します **
98
99 1. 以下の ---> と示された最初の行にカーソルを移動しましょう。
100
101 2. 1行目を2行目と同じ様にするために、テキストを挿入しなければならない位置
102 の次の文字にカーソルを移動します。
103
104 3. i キーを押してから、追加が必要な文字をタイプしましょう。
105
106 4. 間違いを修正したら <ESC> を押してコマンドモードに戻り、正しい文になる様
107 にステップ 2 から 4 を繰り返しましょう。
108
109---> この には 足りない テキスト ある。
110---> この 行 には 幾つか 足りない テキスト が ある。
111
112 5. 挿入の方法がわかったら下のレッスン1の要約を見ましょう。
113
114
115
116~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
117 レッスン 1.5: テキスト編集 - 追加
118
119
Bram Moolenaar97cc2382012-10-03 21:46:54 +0200120 ** テキストを追加するには A を押しましょう **
Bram Moolenaar2971ce02008-06-25 00:42:29 +0000121
122 1. 以下の ---> と示された最初の行にカーソルを移動しましょう。
123 カーソルがその文字上にあってもかまいません。
124
125 2. 追加が必要な場所で A をタイプしましょう。
126
127 3. テキストを追加し終えたら、 <ESC> を押してノーマルモードに戻りましょう。
128
129 4. 2行目の ---> と示された場所へ移動し、ステップ 2 から 3 繰り返して文法を
130 修正しましょう。
131
132---> ここには間違ったテキストがあり
133 ここには間違ったテキストがあります。
134---> ここにも間違ったテキス
135 ここにも間違ったテキストがあります。
136
137 5. テキストの追加が軽快になってきたらレッスン 1.6 へ進みましょう。
138
139~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
140 レッスン 1.6: ファイルの編集
141
142
143 ** ファイルを保存して終了するには :wq とタイプします **
144
145 !! NOTE: 以下のステップを実行する前に、まず全体を読んでください!!
146
147 1. レッスン 1.2 でやったように :q! をタイプして、このチュートリアルを終了
148 します。
149
150 2. シェルプロンプトでこのコマンドをタイプします: vim tutor <ENTER>
151 'vim'が Vim エディタを起動するコマンド、'tutor' は編集したいファイルの
152 名前です。変更してもよいファイルを使いましょう。
153
154 3. 前のレッスンで学んだように、テキストを挿入、削除します。
155
156 4. 変更をファイルに保存します: :wq <ENTER>
157
158 5. vimtutor を再度起動し、以下の要約へ進みましょう。
159
160 6. 以上のステップを読んで理解した上でこれを実行しましょう。
161
162~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
163 レッスン 1 要約
164
165
166 1. カーソルは矢印キーもしくは hjkl キーで移動します。
167 h (左) j (下) k (上) l (右)
168
169 2. Vim を起動するにはプロンプトから vim ファイル名 <ENTER> とタイプします。
170
171 3. Vim を終了するには <ESC> :q! <ENTER> とタイプします(変更を破棄)。
172 もしくは <ESC> :wq <ENTER> とタイプします(変更を保存)。
173
174 4. カーソルの下の文字を削除するには、ノーマルモードで x とタイプします。
175
176 5. カーソルの位置に文字を挿入するには、ノーマルモードで i とタイプします。
177 i テキストのタイプ <ESC> カーソル位置に追加
178 A テキストの追加 <ESC> 行末に追加
179
180NOTE: <ESC> キーを押すとノーマルモードに移行します。その際、間違ったり入力途
181 中のコマンドを取り消すことができます。
182
183さて、続けてレッスン 2 を始めましょう。
184
185~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
186 レッスン 2.1: 削除コマンド
187
188
189 ** 単語の末尾までを削除するには dw とタイプしましょう **
190
191 1. ノーマルモードであることを確認するために <ESC> を押しましょう。
192
193 2. 以下の ---> と示された行にカーソルを移動しましょう。
194
195 3. 消したい単語の先頭にカーソルを移動しましょう。
196
197 4. 単語を削除するために dw とタイプしましょう。
198
199 NOTE: タイプすると、dw という文字がスクリーンの最下行に現われます。
200 タイプを間違ってしまった時には <ESC> を押してやり直しましょう。
201
202---> この 文 紙 には いくつかの たのしい 必要のない 単語 が 含まれて います。
203
204 5. 3 から 4 までを文が正しくなるまで繰り返し、レッスン 2.2 へ進みましょう。
205
206
207
208~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
209 レッスン 2.2: その他の削除コマンド
210
211
212 ** 行の末尾までを削除するには d$ とタイプしましょう **
213
214 1. ノーマルモードであることを確認するのに <ESC> を押しましょう。
215
216 2. 以下の ---> と示された行にカーソルを移動しましょう。
217
218 3. 正しい文の末尾へカーソルを移動しましょう(最初の . の後です)。
219
220 4. 行末まで削除するのに d$ とタイプしましょう。
221
222---> 誰かがこの行の最後を2度タイプしました。 2度タイプしました。
223
224
225 5. どういうことか理解するために、レッスン 2.3 へ進みましょう。
226
227
228
229
230
231~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 レッスン 2.3: オペレータとモーション
233
234
Bram Moolenaar97cc2382012-10-03 21:46:54 +0200235 多くのコマンドはオペレータとモーションからテキストに変更を加えます。
Bram Moolenaar2971ce02008-06-25 00:42:29 +0000236 削除コマンド d のオペレータは次の様になっています:
237
238 d モーション
239
240 それぞれ:
241 d - 削除コマンド。
242 モーション - 何に対して働きかけるか(以下に挙げます)。
243
244 オペレータの一部一覧:
245 w - カーソル位置から空白を含む単語の末尾まで。
246 e - カーソル位置から空白を含まない単語の末尾まで。
247 $ - カーソル位置から行末まで。
248
249 つまり de とタイプすると、カーソル位置から単語の終わりまでを削除します。
250
251NOTE: 冒険したい人は、ノーマルモードにてコマンドなしにモーションを押して
252 みましょう。カーソルが目的語一覧で示される位置に移動するはずです。
253
254~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
255 レッスン 2.4: モーションにカウントを使用する
256
257
258 ** 何回も行いたい繰り返しのモーションの前に数値をタイプします。 **
259
Bram Moolenaar5c736222010-01-06 20:54:52 +0100260 1. 以下の ---> と示された行の先頭にカーソルを移動します。
Bram Moolenaar2971ce02008-06-25 00:42:29 +0000261
Bram Moolenaar97cc2382012-10-03 21:46:54 +0200262 2. 2dw をタイプして単語2つ分削除します。
Bram Moolenaar2971ce02008-06-25 00:42:29 +0000263
264 3. 3e をタイプして3つ目の単語の終端に移動します。
265
266 4. 0 (ゼロ)をタイプして行頭に移動します。
267
268 5. ステップ 2 と 3 を違う数値と使って繰り返します。
269
270---> This is just a line with words you can move around in.
271
272 6. レッスン 2.5 に進みましょう。
273
274
275
276
277~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
278 レッスン 2.5: より多くを削除するためにカウントを使用する
279
280
281 ** オペレータとカウントをタイプすると、その操作が複数回繰り返されます。 **
282
283 既述の削除のオペレータとモーションの組み合わせにカウントを追加することで、
284 より多くの削除が行えます:
285 d 数値 モーション
286
287 1. ---> と示された行の行頭部分にカーソルを移動しましょう。
288
289 2. UPPER CASE の単語2つを 2dw とタイプして削除します。
290
291 3. UPPER CASE という連続した単語を、1つのコマンドと異なるカウントを指定し、
292 ステップ 1 と 2 を繰り返します。
293
294---> このABC DE行のFGHI JK LMN OP単語はQ RS TUV綺麗になった。
295
296NOTE: オペレータ d とモーションの間にカウントを使った場合、オペレータのない
297 場合のモーションのように動作します。
298 例: 3dw と d3w は同等で、3w を削除します。
299
300~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
301 レッスン 2.6: 行の操作
302
303
304 ** 行全体を削除するには dd とタイプします **
305
306 行全体を削除する頻度が多いので、Viのデザイナーは行の削除を d の2回タイプと
307 いう簡単なものに決めました。
308
309 1. 以下の句の2行目にカーソルを移動します。
310 2. dd とタイプして行を削除します。
311 3. さらに4行目に移動します。
312 4. 2dd とタイプして2行を削除します。
313
314---> 1) バラは赤い、
315---> 2) つまらないものは楽しい、
316---> 3) スミレは青い、
317---> 4) 私は車をもっている、
318---> 5) 時計が時刻を告げる、
319---> 6) 砂糖は甘い
320---> 7) オマエモナー
321
322
323~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
324 レッスン 2.7: やり直しコマンド
325
326
327 ** 最後のコマンドを取り消すには u を押します。U は行全体の取消です。 **
328
Bram Moolenaar97cc2382012-10-03 21:46:54 +0200329 1. 以下の ---> と示された行にカーソルを移動し、最初の間違いにカーソル
330 を移動しましょう。
Bram Moolenaar2971ce02008-06-25 00:42:29 +0000331 2. x をタイプしていらない先頭の文字を削除しましょう。
332 3. さぁ、u をタイプして最後に実行したコマンドを取り消しましょう。
333 4. 今度は、x を使用して誤りを全て修正しましょう。
334 5. 大文字の U をタイプして、行を元の状態に戻しましょう。
335 6. u をタイプして直前の U コマンドを取消しましょう。
336 7. ではコマンドを再実行するのに CTRL-R (CTRL を押したまま R を打つ)を数回
337 タイプしてみましょう(取消の取消)。
338
339---> このの行のの間違いを修正々し、後でそれらの修正をを取消しまますす。
340
341 8. これはとても便利なコマンドです。さぁレッスン 2 要約へ進みましょう。
342
343
344
345
346~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
347 レッスン 2 要約
348
349
350 1. カーソル位置から単語の末尾までを削除するには dw とタイプします。
351 2. カーソル位置から行の末尾までを削除するには d$ とタイプします。
352 3. 行全体を削除するには dd とタイプします。
353
354 4. モーションを繰り返すには数値を付与します: 2w
355 5. 変更に用いるコマンドの形式は
356 オペレータ [数値] モーション
357
358 それぞれ:
359 オペレータ - 削除 d の類で何をするか。
360 数値 - そのコマンドを何回繰り返すか。
361 モーション - w (単語)や $ (行末)などの類で、テキストの何に対して働きか
362 けるか。
363
364 6. 行の先頭に移動するにはゼロを使用します: 0
365
366 7. 前回の動作を取消す: u (小文字 u)
367 行全体の変更を取消す: U (大文字 U)
368 取消しの取消し: CTRL-R
369~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
370 レッスン 3.1: 貼り付けコマンド
371
372
373 ** 最後に削除された行をカーソルの後に貼り付けるには p をタイプします **
374
375 1. 以下の段落の最初の行にカーソルを移動しましょう。
376
377 2. dd とタイプして行を削除し、Vim のバッファに格納しましょう。
378
379 3. 削除した行が本来あるべき位置の上の行まで、カーソルを移動させましょう。
380
381 4. ノーマルモードで p をタイプして格納した行を画面に戻します。
382
383 5. 順番が正しくなる様にステップ 2 から 4 を繰り返しましょう。
384
385 d) 貴方も学ぶことができる?
386 b) スミレは青い、
387 c) 知恵とは学ぶもの、
388 a) バラは赤い、
389
390
391
392~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
393 レッスン 3.2: 置き換えコマンド
394
395
396 ** カーソルの下の文字を置き換えるには r をタイプします **
397
398 1. 以下の ---> と示された最初の行にカーソルを移動しましょう。
399
400 2. 最初の間違いの先頭にカーソルを移動しましょう。
401
402 3. r とタイプし、間違っている文字を置き換える、正しい文字をタイプしましょう。
403
404 4. 最初の行が正しくなるまでステップ 2 から 3 を繰り返しましょう。
405
406---> この合を人力した時ね、その人は幾つか問違ったキーを押しもした!
407---> この行を入力した時に、その人は幾つか間違ったキーを押しました!
408
409 5. さぁ、レッスン 3.2 へ進みましょう。
410
411NOTE: 実際に試しましょう。決して覚えるだけにはしないこと。
412
413
414
415~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
416 レッスン 3.3: 変更コマンド
417
418
419 ** 単語の一部、もしくは全体を変更するには cw とタイプします **
420
421 1. 以下の ---> と示された最初の行にカーソルを移動しましょう。
422
423 2. lubw の u の位置にカーソルを移動しましょう。
424
425 3. cw とタイプし、正しい単語をタイプしましょう(この場合 'ine' とタイプ)。
426
427 4. 次の間違い(変更すべき文字の先頭)に移動するために <ESC> をタイプします。
428
429 5. 最初の行が次の行の様になるまでステップ 3 と 4 を繰り返します。
430
431---> This lubw has a few wptfd that mrrf changing usf the change command.
432---> This line has a few words that need changing using the change command.
433
434cw は単語を変更するだけでなく、挿入も行えることに注意しましょう。
435
436
437
438~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
439 レッスン 3.4: c を使用したその他の変更
440
441
442 ** 変更コマンドは、削除コマンドと同じ様にオブジェクトを使用します **
443
444 1. 変更コマンドは、削除コマンドと同じような動作をします。その形式は
445
446 c [数値] モーション
447
448 2. オブジェクトも同じで、w は単語、 $ は行末などといったものです。
449
450 3. 以下の ---> と示された行にカーソルを移動しましょう。
451
452 4. 最初の間違いへカーソルを移動しましょう。
453
454 5. c$ とタイプして行の残りを2行目の様にし、<ESC> を押しましょう。
455
456---> The end of this line needs some help to make it like the second.
457---> The end of this line needs to be corrected using the c$ command.
458
459NOTE: タイプ中の間違いはバックスペースキーを使って直すこともできます。
460
461~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
462 レッスン 3 要約
463
464
465 1. 既に削除されたテキストを再配置するには、p をタイプします。これは削除さ
466 れたテキストをカーソルの後に挿入します(行単位で削除されたのならば、カー
467 ソルのある次の行に挿入されます)。
468
469 2. カーソルの下の文字を置き換えるには、r をタイプした後、それを置き換える
470 文字をタイプします。
471
472 3. 変更コマンドではカーソル位置から特定のモーションで指定される終端までを変
473 更することが可能です。例えば cw ならばカーソル位置から単語の終わりまで、
474 c$ ならば行の終わりまでを変更します。
475
476 4. 変更コマンドの形式は
477
478 c [数値] モーション
479
480さぁ、次のレッスンへ進みましょう。
481
482
483
484~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
485 レッスン 4.1: 位置とファイルの情報
486
487 ** ファイル内での位置とファイルの状態を表示するには CTRL-G をタイプします。
488 ファイル内のある行に移動するには G をタイプします **
489
490 NOTE: ステップを実行する前に、このレッスン全てに目を通しましょう!!
491
492 1. CTRL を押したまま g を押しましょう。この操作を CTRL-G と呼んでいます。
493 ページの一番下にファイル名と行番号が表示されるはずです。 ステップ 3のため
494 に行番号を覚えておきましょう。
495
496NOTE: 画面の右下隅にカーソルの位置が表示されているかもしれません。これは
497 'ruler' オプション(レッスン6で説明)を設定することで表示されます。
498
499 2. 最下行に移動するために G をタイプしましょう。
500 ファイルの先頭に移動するには gg とタイプしましょう。
501
502 3. 先ほどの行の番号をタイプし G をタイプしましょう。最初に CTRL-G を押した行
503 に戻って来るはずです。
504
505 4. 自信が持てたらステップ 1 から 3 を実行しましょう。
506
507~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
508 レッスン 4.2: 検索コマンド
509
510
511 ** 語句を検索するには / と、前方検索する語句をタイプします。**
512
513 1. ノーマルモードで / という文字をタイプします。画面一番下に : コマンドと
514 同じ様に / が現れることに気づくでしょう。
515
516 2. では、'errroor' <ENTER> とタイプしましょう。これが検索したい単語です。
517
518 3. 同じ語をもう一度検索するときは 単に n をタイプします。
519 逆方向に語句を検索するときは N をタイプします。
520
521 4. 逆方向に語句を検索する場合は、/ の代わりに ? コマンドを使用します。
522
523 5. 元の場所に戻るには CTRL-O (Ctrl を押し続けながら o 文字タイプ)をタイプし
524 ます。さらに戻るにはこれを繰り返します。CTRL-I は前方向です。
525
526Note: "errroor" は error とスペルが違います; errroor はいわゆる error です。
527Note: 検索がファイルの終わりに達すると、オプション 'wrapscan' が設定されている
528 場合は、ファイルの先頭から検索を続行します。
529
530~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
531 レッスン 4.3: 対応する括弧を検索
532
533
534 ** 対応する ),] や } を検索するには % をタイプします **
535
536 1. 下の ---> で示された行で (,[ か { のどれかにカーソルを移動しましょう。
537
538 2. そこで % とタイプしましょう。
539
540 3. カーソルは対応する括弧に移動するはずです。
541
542 4. 最初の括弧に移動するには % とタイプしましょう。
543
544 5. 他の (,),[,],{ or } でカーソルを移動し、% が何をしているか確認しましょう。
545
546---> This ( is a test line with ('s, ['s ] and {'s } in it. ))
547
548
549NOTE: この機能は括弧が一致していないプログラムをデバッグするのにとても役立ち
550 ます。
551
552
553~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
554 レッスン 4.4: 間違いを変更する方法
555
556
557 ** 'old' を 'new' に置換するには :s/old/new/g とタイプします **
558
559 1. 以下の ---> と示された行にカーソルを移動しましょう。
560
561 2. :s/thee/the <ENTER> とタイプしましょう。このコマンドはその行で最初に見
562 つかったものにだけ行なわれることに気をつけましょう。
563
564 3. では :s/thee/the/g とタイプしましょう。行全体を置換することを意味します。
565 この変更はその行で見つかった全ての箇所に対して行なわれます。
566
567---> thee best time to see thee flowers is in thee spring.
568
569 4. 複数行から見つかる文字を変更するには
570 :#,#s/old/new/g #,# には置き換える範囲の開始と終了の行番号を指定しま
571 す。
572 :%s/old/new/g ファイル全体で見つかるものに対して変更する。
573 :%s/old/new/gc ファイル全体で見つかるものに対して、1つ1つ確認をとりな
574 がら変更する。
575
576~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
577 レッスン 4 要約
578
579
580 1. CTRL-G はファイルでの位置とファイルの詳細を表示します。
581 G はファイルの最下行に移動します。
582 数値 G はその行に移動します。
583 gg は先頭行に移動します。
584
585 2. / の後に語句をタイプすると前方に語句を検索します。
586 ? の後に語句をタイプすると後方に語句を検索します。
587 検索の後の n は同じ方向の次の検索を、N は逆方向の検索をします。
588 CTRL-O は場所を前に移し、CTRL-I は場所を次に移動します。
589
590 3. (,),[,],{, もしくは } 上にカーソルがある状態で % をタイプすると対になる文
591 字へ移動します。
592
593 4. 現在行の最初の old を new に置換する。 :s/old/new
594 現在行の全ての old を new に置換する。 :s/old/new/g
595 2つの # 間で語句を置換する。 :#,#s/old/new/g
596 ファイルの中の全ての検索語句を置換する。 :%s/old/new/g
597 'c' を加えると置換の度に確認を求める。 :%s/old/new/gc
598
599~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
600 レッスン 5.1: 外部コマンドを実行する方法
601
602
603 ** :! の後に実行する外部コマンドをタイプします **
604
605 1. 画面の最下部にカーソルが移動するよう、慣れ親しんだ : をタイプしましょう。
606 これでコマンドがタイプできる様になります。
607
608 2. ここで ! という文字(感嘆符)をタイプしましょう。
609 これで外部シェルコマンドが実行できる様になります。
610
611 3. 例として ! に続けて ls とタイプし <ENTER> を押しましょう。
612 シェルプロンプトのようにディレクトリの一覧が表示されるはずです。
613 もしくは ls が動かないならば :!dir を使用しましょう。
614
615Note: この方法によってあらゆるコマンドが実行することができます。もちろん引数
616 も与えられます。
617
618Note: 全ての : コマンドは <ENTER> を押して終了しなければなりません。
619 以降ではこのことに言及しません。
620
621
622~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
623 レッスン 5.2: その他のファイルへ書き込み
624
625
626 ** ファイルへ変更を保存するには :w ファイル名 とタイプします **
627
628 1. ディレクトリの一覧を得るために :!dir もしくは :!ls とタイプしましょう。
629 このあと <ENTER> を押すのは既にご存知ですね。
630
631 2. TEST のように、そのディレクトリに無いファイル名を一つ選びます。
632
633 3. では :w TEST とタイプしましょう (TEST は、選んだファイル名です)。
634
635 4. これによりファイル全体が TEST という名前で保存されます。
Bram Moolenaar0c5fa7d2012-10-05 22:26:30 +0200636 もう一度 :!dir もしくは :!ls とタイプして確認してみましょう。
Bram Moolenaar2971ce02008-06-25 00:42:29 +0000637
638Note: ここで Vim を終了し、ファイル名 TEST と共に起動すると、保存した時の
639 チュートリアルの複製ができ上がるはずです。
640
641 5. さらに、次のようにタイプしてファイルを消しましょう(MS-DOS): :!del TEST
642 もしくは(Unix): :!rm TEST
643
644
645~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
646 レッスン 5.3: 選択した書き込み
647
648
649** ファイルの位置を保存するには、v モーションと :w FILENAME をタイプします。 **
650
651 1. この行にカーソルを移動します。
652
653 2. v を押し、以下の第5項目にカーソルを移動します。テキストが強調表示されるの
654 に注目して下さい。
655
656 3. 文字 : を押すと、画面の最下部に :'<,'> が現れます。
657
658 4. w TEST (TESET は存在しないファイル名)をタイプします。
659 Enter を押す前に :'<,'>w TEST となっていることを確認して下さい。
660
661 5. Vim は TEST というファイルに選択された行を書き込むでしょう。
662 !dir もしくは !ls でそれを確認します。
663 それは削除しないでおいて下さい。次のレッスンで使用します。
664
665NOTE: v を押すと、Visual 選択が始まります。カーソルを動かすことで、選択範囲を
666 大きくも小さくもできます。さらに、その選択範囲に対してオペレータを適用
667 きます。例えば d はテキストを削除します。
668
669~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
670 レッスン 5.4: ファイルの取込と合併
671
672
673 ** ファイルの中身を挿入するには :r ファイル名 とタイプします **
674
675 1. カーソルを以下の行に合わせます。
676
677NOTE: ステップ 2 の実行後、レッスン 5.3 のテキストが現れます。下に下がってこ
678 のレッスンに移動しましょう。
679
680 2. では TEST というファイルを :r TEST というコマンドで読み込みましょう。
681 ここでいう TEST は使うファイルの名前のことです。
682 読み込まれたファイルは、カーソル行の下にあります。
683
684 3. 取込んだファイルを確認してみましょう。カーソルを戻すと、レッスン5.3 の
685 オリジナルとファイルによるものの2つがあることがわかります。
686
687NOTE: 外部コマンドの出力を読み込むことも出来ます。例えば、
688 :r !ls は ls コマンドの出力をカーソル以下に読み込みます。
689
690
691
692~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
693 レッスン 5 要約
694
695
696 1. :!command によって 外部コマンドを実行します。
697
698 よく使う例:
699 (MS-DOS) (Unix)
700 :!dir :!ls - ディレクトリ内の一覧を見る。
701 :!del FILENAME :!rm FILENAME - ファイルを削除する。
702
703 2. :w ファイル名 によってファイル名というファイルがディスクに書き込まれる。
704
705 3. v モーションで :w FILENAME とすると、ビジュアル選択行がファイルに保存さ
706 れる。
707
708 4. :r ファイル名 によりファイル名というファイルがディスクより取込まれ、
709 カーソル位置の下に挿入される。
710
711 5. :r !dir は dir コマンドの出力をカーソル位置以下に読み込む。
712
713
714
715~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
716 レッスン 6.1: オープンコマンド
717
718
719 ** o をタイプすると、カーソルの下の行が開き、挿入モードに入ります **
720
721 1. 以下の ---> と示された行にカーソルを移動しましょう。
722
723 2. o (小文字) をタイプして、カーソルの下の行を開き、挿入モードに入ります。
724
725 3. さらに挿入モードを終了する為に <ESC> をタイプします。
726
727---> o をタイプするとカーソルは開いた行へ移動し挿入モードに入ります。
728
729 4. カーソルの上の行に挿入するには、小文字の o ではなく、単純に大文字の O
730 をタイプします。次の行で試してみましょう。
731
732---> この行の上へ挿入するには、この行へカーソルを置いて O をタイプします。
733
734
735
736
737
738~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
739 レッスン 6.2: 追加コマンド
740
741
742 ** カーソルの次の位置からテキストを追加するには a とタイプします **
743
Bram Moolenaar5c736222010-01-06 20:54:52 +0100744 1. カーソルを ---> で示された行へ移動しましょう。
Bram Moolenaar2971ce02008-06-25 00:42:29 +0000745
746 2. e を押して li の終端部までカーソルを移動します。
747
748 3. カーソルの後ろにテキストを追加するために a (小文字) をタイプします。
749
750 4. その下の行ののような単語に完成させます。挿入モードを抜ける為に <ESC> に押
751 します。
752
753 5. e を使って次の不完全な単語へ移動し、ステップ 3 と 4 を繰り返します。
754
755---> This li will allow you to pract appendi text to a line.
756---> This line will allow you to practice appending text to a line.
757
758Note: a, i と A は同じ挿入モードへ移りますが、文字が挿入される位置だけが異なり
759 ます。
760
761~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
762 レッスン 6.3: その他の置換方法
763
764
765 ** 1文字以上を置き換えるには大文字の R とタイプしましょう **
766
Bram Moolenaar5c736222010-01-06 20:54:52 +0100767 1. 以下の ---> と示された行にカーソルを移動します。最初の xxx の先頭に移動し
Bram Moolenaar2971ce02008-06-25 00:42:29 +0000768 ます。
769
770 2. R を押して、2行目の数値をタイプすることで、xxx が置換されます。
771
772 3. 置換モードを抜けるには <ESC> を押します。行の残りが変更されていないままに
773 なることに注意してください。
774
775 5. 残った xxx をステップを繰り返して置換しましょう。
776
777---> Adding 123 to xxx gives you xxx.
778---> Adding 123 to 456 gives you 579.
779
780NOTE: 置換モードは挿入モードに似ていますが、全てのタイプされた文字は既存の文字
781 を削除します。
782
783
784~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
785 レッスン 6.4: テキストのコピーとペースト
786
787
788 ** テキストのコピーにはオペレータ y を、ペーストには p を使います **
789
790 1. ---> と示された行へ移動し、カーソルを "a)" の後に置いておきます。
791
792 2. v でビジュアルモードを開始し、"first"の手前までカーソルを移動します。
793
794 3. y をタイプして強調表示されたテキストを yank (コピー)します。
795
796 4. 次の行の行末までカーソルを移動します: j$
797
798 5. p を押して貼り付け(put)てから、次をタイプします: a second <ESC>
799
800 6. ビジュアルモードで " item." を選択し、y でヤンク、次の行の行末まで j$ で
801 移動し、 p でテキストをそこに put します。
802
803---> a) this is the first item.
804 b)
805
806 Note: 単語を1つ yank するのに y をオペレータとして yw とすることも出来ます。
807~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
808 レッスン 6.5: オプションの設定
809
810
811 ** 検索や置換の際に大文字/小文字を無視するには、オプションを設定します **
812
813 1. 次の様に入力して 'ignore' を検索しましょう: /ignore <ENTER>
814 n を押して何度か検索を繰り返します。
815
816 2. 次の様に入力して 'ic' (Ignore Case の略) オプションを設定します: :set ic
817
818 3. では n によってもう1度 'ignore' を検索します。
819 n を押してさらに数回検索を繰り返しましょう。
820
821 4. 'hlsearch' と 'incsearch' オプションを設定しましょう: :set hls is
822
823 5. 検索コマンドを再入力して、何が起こるか見てみましょう: /ignore <ENTER>
824
825 6. 大文字小文字の区別を無効にするには次の様に入力します: :set noic
826
827Note: マッチの強調表示をやめるには次の様に入力します: :nohlsearch
828Note: 1つの検索コマンドだけ大文字小文字の区別をやめたいならば、フレーズに \c
829 を使用します: /ignore\c <ENTER>
830~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
831 レッスン 6 要約
832
833 1. o をタイプするとカーソルの下の行を開けて、そこで挿入モードになる。
834 O (大文字) をタイプするとカーソルの上の行で挿入モードになる。
835
836 2. カーソル上の文字の次からテキストを追加するには a とタイプする。
837 行末に自動でテキストを挿入するには大文字 A をタイプする。
838
839 3. e コマンドは単語の終端部カーソルを移動する。
840
841 4. y オペレータはテキストを yank (コピー)し、p はそれを put (ペースト)する。
842
843 5. 大文字の R をタイプすると置換モードに入り、<ESC>を押すと抜ける。
844
845 6. ":set xxx" とタイプするとオプション "xxx" が設定される。
846 'ic' 'ignorecase' 検索時に大文字小文字の区別しない
847 'is' 'incsearch' 検索フレーズに部分マッチしている部分を表示する
848 'hls' 'hlsearch' マッチするすべを強調表示する
849 長い方、短い方、どちらのオプション名でも使用できます。
850
851 7. "no" を付与し、オプションを無効にします: :set noic
852
853~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
854 レッスン 7.1: オンラインヘルプコマンド
855
856
857 ** オンラインヘルプを使用しましょう **
858
859 Vim には広範にわたるオンラインヘルプシステムがあります。
860 ヘルプを開始するには、これら3つのどれか1つを試してみましょう:
861 - ヘルプキー <HELP> を押す(もしあるならば)。
862 - <F1> キーを押す(もしあるならば)。
863 - :help <ENTER> とタイプする。
864
865 ヘルプウィンドウのテキストを読むと、ヘルプの動作が理解できます。
866 CTRL-W CTRL-W とタイプすると ヘルプウィンドウへジャンプします。
867 :q <ENTER> とタイプすると ヘルプウィンドウが閉じられます。
868
869 ":help" コマンドに引数を与えることにより、あらゆる題名のヘルプを見つけること
870 ができます。これらを試してみましょう(<ENTER> をタイプし忘れないように):
871
872 :help w
873 :help c_<T
874 :help insert-index
875 :help user-manual
876~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
877 レッスン 7.2: 起動スクリプトの作成
878
879 ** Vim の特徴を発揮する **
880
881 Vim には Vi よりも多くの特徴を踏まえていまが、そのほとんどは初期状態にて
882 使用不可となっています。より多くの特徴を使いはじめるには "vimrc" ファイル
883 を作成します。
884
885 1. "vimrc" ファイルの編集を開始する。これはシステムに依存します。
886 :edit ~/.vimrc UNIX 向け
887 :edit $VIM/_vimrc MS-Windows 向け
888
889 2. ここでサンプルの "vimrc" を読み込みます。
890 :read $VIMRUNTIME/vimrc_example.vim
891
892 3. 以下のようにファイルへ書き込みます。
893 :write
894
895 次回 Vim を起動すると、色づけ構文が使えるようになるでしょう。
896 この "vimrc" ファイルへ、お好みの設定を追加することができます。
897 より多くの情報を得るには :help vimrc-intro とタイプします。
898
899~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
900 レッスン 7.3: 補完
901
902
903 ** CTRL-D と <TAB> でコマンドラインを補完する **
904
905 1. コンパチモードでないことを確認します: :set nocp
906
907 2. 現在のディレクトリに在るファイルを :!ls か :!dir で確認します。
908
909 3. コマンドの開始をタイプします: :e
910
911 4. CTRL-D を押すと Vim は "e" から始まるコマンドの一覧を表示します。
912
913 5. <TAB> を押すと Vim は ":edit" というコマンド名を補完します。
914
915 6. さらに空白と、既存のファイル名の始まりを加えます: :edit FIL
916
917 7. <TAB> を押すと Vim は名前を補完します。(もし一つしか無かった場合)
918
919NOTE: 補完は多くのコマンドで動作します。そして CTRL-D と <TAB> 押してみてくだ
920 さい。特に :help の際に役立ちます。
921
922~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
923 レッスン 7 要約
924
925
926 1. ヘルプウィンドウを開くには :help とするか <F1> もしくは <Help> を押す。
927
928 2. コマンド(cmd)のヘルプを検索するには :help cmd とタイプする。
929
930 3. 別のウィンドウへジャンプするには CTRL-W CTRL-W とタイプする。
931
932 4. ヘルプウィンドウを閉じるには :q とタイプする。
933
934 5. お好みの設定を保つには vimrc 起動スクリプトを作成する。
935
936 6. : command で可能な補完を見るには CTRL-D をタイプする。
937 補完を使用するには <TAB> を押す。
938
939
940
941
942
943
944
945~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
946
947 これにて Vim のチュートリアルを終わります。エディタを簡単に、しかも充分に
948 使うことができるようにと、Vim の持つ概念の要点のみを伝えようとしました。
949 Vim にはさらに多くのコマンドがあり、ここで全てを説明することはできません。
950 以降はユーザマニュアルを参照ください: "help :user-manual"
951
952 これ以後の学習のために、次の本を推薦します。
953 Vim - Vi Improved - by Steve Oualline
954 出版社: New Riders
955 最初の本は完全に Vim のために書かれました。とりわけ初心者にはお奨めです。
956 多くの例題や図版が掲載されています。
957 次のURLを参照して下さい http://iccf-holland.org/click5.html
958
959 次は Vim よりも Vi について書かれた古い本ですが推薦します:
960 Learning the Vi Editor - by Linda Lamb
961 出版社: O'Reilly & Associates Inc.
962 Vi でやりたいと思うことほぼ全てを知ることができる良書です。
963 第6版では、Vim についての情報も含まれています。
964
965 このチュートリアルは Colorado State University の Charles Smith のアイデア
966 を基に、Colorado School of Mines の Michael C. Pierce と Robert K. Ware の
967 両名によって書かれました。 E-mail: bware@mines.colorado.edu.
968
969 Modified for Vim by Bram Moolenaar.
970
971 日本語訳 松本 泰弘 <mattn_jp@hotmail.com>
972 監修 村岡 太郎 <koron@tka.att.ne.jp>
973
974~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
975 vi:set ts=8 sts=4 sw=4 tw=78: