1===============================================================================
2=    Д о б р о   п о ж а л о в а т ь   в   у ч е б н и к   VIM  -  Версия 1.5 =
3===============================================================================
4     Vim --- это очень мощный редактор, имеющий множество команд, слишком
5     много для того, чтобы их все можно было описать в таком учебнике, как
6     этот. Этот учебник призван объяснить достаточное число команд для того,
7     чтобы Вы могли с легкостью использовать Vim в качестве редактора общего
8     назначения.
9
10     Вам потребуется приблизительно 25-30 минут на освоение данного учебника в
11     зависимости от того, сколько времени Вы потратите на эксперименты.
12
13     Команды в уроках будут модифицировать текст. Создайте копию этого файла,
14     чтобы попрактиковаться на ней (если Вы запустили "vimtutor", то это уже
15     копия).
16
17     Важно помнить, что этот учебник предназначен для обучения в процессе
18     использования. Это означает, что Вы должны запускать команды для того,
19     чтобы как следует их изучить. Если Вы просто прочитаете текст, то
20     забудете команды!
21
22     Теперь убедитесь в том, что клавиша CapsLock не включена и нажмите
23     клавишу   j   несколько раз, так, чтобы Урок 1.1 полностью поместился на
24     экране.
25~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
26			Урок 1.1:  ПЕРЕМЕЩЕНИЕ КУРСОРА
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
41Замечание: Если вы пока не уверены в том, что набираете, нажмите <ESC> для
42	   перехода в обычный режим (Normal mode). После этого перенаберите
43	   требуемую команду.
44
45Замечание: Обычные клавиши управления курсором (стрелки) также должны
46	   работать. Однако, клавиши hjkl позволят Вам перемещаться
47	   значительно быстрее, как только Вы научитесь ими пользоваться.
48~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
49		  Урок 1.2: ЗАПУСК И ЗАВЕРШЕНИЕ РАБОТЫ С VIM
50
51!! ВНИМАНИЕ! Прежде, чем выполнять любой из описанных ниже шагов, прочтите
52			       урок целиком !!
53
54  1. Нажмите клавишу <ESC> (для того, чтобы удостовериться, что Вы в обычном
55     режиме (Normal mode)).
56
57  2. Наберите:			:q! <ENTER>.
58
59---> Это позволит Вам выйти из редактора БЕЗ СОХРАНЕНИЯ любых сделанных
60     изменений. Если Вы хотите сохранить изменения и выйти:
61				:wq  <ENTER>
62
63  3. Когда Вы увидите приглашение командной оболочки, наберите команду,
64     которая привела Вас в этот учебник. Это может быть
65				vimtutor ru <ENTER>
66     Обычно можно использовать:	vim tutor.ru <ENTER>
67
68---> 'vim' позволяет запустить редактор vim, 'tutor.ru' --- это файл, который
69     Вы будете редактировать.
70
71  4. Если Вы уверены в том, что запомнили эти шаги, выполните шаги от 1 до 3
72     чтобы выйти снова запустить редактор. Затем переместите курсор вниз к
73     Уроку 1.3.
74~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
75		  Урок 1.3: РЕДАКТИРОВАНИЕ ТЕКСТА - УДАЛЕНИЕ
76
77
78** Находясь в обычном режиме нажмите x, чтобы удалить символ под курсором. **
79
80  1. Переместите курсор к строке внизу, помеченной --->.
81
82  2. Для исправления ошибок, переместите курсор, пока он не окажется над
83     удаляемым символом.
84
85  3. Нажмите клавишу x для удаления требуемого символа.
86
87  4. Повторите шаги 2--4 пока строка не будет исправлена.
88
89---> От тттопота копытт пппыль ппо ппполю леттитт.
90
91  5. Теперь, когда строка откорректирована, переходите к уроку 1.4.
92
93ЗАМЕЧАНИЕ: В ходе освоения этого учебника не пытайтесь запоминать, учите
94	   в процессе использования.
95
96
97~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
98		  Урок 1.4: РЕДАКТИРОВАНИЕ ТЕКСТА - ВСТАВКА
99
100
101 ** Находясь в обычном режиме (Normal mode), нажмите i для вставки текста. **
102
103  1. Переместите курсор к первой строке внизу, помеченной --->.
104
105  2. Для того, чтобы сделать первую строку идентичной второй, поместите
106     курсор на символ ПЕРЕД которым следует вставить текст.
107
108  3. Нажмите i и наберите требуемые добавления.
109
110  4. После исправления всех ошибок нажмите <ESC> для возврата в обычный режим.
111     Повторите шаги 2--4, пока фраза не будет исправлена полностью.
112
113---> Часть текста в строке беследно .
114---> Часть текста в этой строке бесследно пропала.
115
116  5. Когда освоите вставку текста, переходите дальше к Резюме.
117
118
119
120~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
121				РЕЗЮМЕ УРОКА 1
122
123  1. Курсор перемещается либо клавишами со стрелками, либо клавишами hjkl.
124	 h (влево)	j (вниз)       k (вверх)	    l (вправо)
125
126  2. Для запуска Vim (из приглашения % командной оболочки) наберите:
127     vim ИМЯ_ФАЙЛА <ENTER>
128
129  3. Для завершения работы с Vim наберите:
130     <ESC>   :q!	 <ENTER>  чтобы отказаться от сохранения изменений.
131     Или наберите:
132     <ESC>   :wq	 <ENTER>  чтобы сохранить изменения.
133
134  4. Для удаления символа под курсором в обычном режиме, наберите: x
135
136  5. Чтобы вставить текст перед курсором в обычном режиме, наберите:
137	 i     вводите текст	<ESC>
138
139ЗАМЕЧАНИЕ: Нажатие <ESC> переместит Вас в обычный режим (Normal mode) либо
140	   прервет нежелательную и частично завершенную команду.
141
142Теперь переходим к Уроку 2.
143
144~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
145			  Урок 2.1: КОМАНДЫ УДАЛЕНИЯ
146
147
148	** Наберите dw для удаления участка текста до конца слова. **
149
150  1. Нажмите <ESC>, чтобы перейти в обычный режим.
151
152  2. Переместите курсор вниз, к строке, помеченной --->.
153
154  3. Переместите курсор в начало слова, которое следует удалить.
155
156  4. Наберите  dw , чтобы удалить это слово.
157
158ЗАМЕЧАНИЕ: Во время набора буквы dw появятся в последней строке экрана. Если
159	   Вы что-то наберете неправильно, нажмите <ESC> и начните сначала.
160
161---> Несколько слов рафинад в этом предложении автокран излишни.
162
163  5. Повторите шаги 3 и 4, пока не исправите все ошибки и переходите к
164     Уроку 2.2.
165
166
167~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
168		  Урок 2.2: ДОПОЛНИТЕЛЬНЫЕ КОМАНДЫ УДАЛЕНИЯ
169
170
171	    ** Наберите d$ для удаления текста до конца строки. **
172
173  1. Нажмите <ESC>, чтобы перейти в обычный режим.
174
175  2. Переместите курсор вниз, к строке, помеченной --->.
176
177  3. Переместите курсор к концу правильной строки (ПОСЛЕ первой . ).
178
179  4. Чтобы удалить остаток строки, наберите  d$ .
180
181---> Кто-то набрал окончание этой строки дважды. окончание этой строки дважды.
182
183
184  5.Чтобы лучше разобраться в этом, переходите к Уроку 2.3.
185
186
187
188
189
190~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
191			 Урок 2.3: КОМАНДЫ И ОБЪЕКТЫ
192
193
194  Формат команды `удаление' d таков:
195
196	 [число]   d	объект	    ИЛИ	     d	 [число]   объект
197  Здесь:
198    число  - сколько раз исполнить команду (необязательно, по умолчанию=1).
199    d      - команда удаления.
200    объект - с чем команда должна быть выполнена (перечислено ниже).
201
202  Краткий список объектов:
203    w - от курсора до конца слова, включая завершающий пробел.
204    e - от курсора до конца слова, НЕ включая завершающий пробел.
205    $ - от курсора до конца строки.
206    ^ - от курсора до начала строки.
207
208ЗАМЕЧАНИЕ: Простое нажатие на символ объекта в обычном режиме (Normal mode)
209	   без дополнительных команд передвинет курсор так, как указано в
210	   списке объектов.
211
212
213
214~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
215	       Урок 2.4: ИСКЛЮЧЕНИЕ ИЗ ПРАВИЛА `КОМАНДА-ОБЪЕКТ'
216
217
218		 ** Наберите dd для удаления всей строки. **
219
220  Вследствие частого применения операции удаления всей строки, разработчики
221  Vim решили, что для этого проще всего просто набрать d дважды.
222
223  1. Переместите курсор вниз, ко второй строке фразы.
224  2. Наберите dd для удаления строки.
225  3. Теперь переместитесь к четвертой строке.
226  4. Наберите 2dd (вспомните правило `число-команда-объект'), чтобы удалить
227     две строки.
228
229      1)  Летом я хожу на стадион,
230      2)  О, как внезапно кончился диван!
231      3)  Я болею за ``Зенит'', ``Зенит'' --- чемпион!
232      4)  Печально я гляжу на наше поколение!
233      5)  Его грядущее иль пусто иль темно...
234      6)  Я сижу на скамейке в ложе `Б'
235      7)  И играю на большой жестяной трубе.
236
237~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
238			  Урок 2.5: КОМАНДА `ОТКАТ'
239
240
241  ** Нажмите u	для отмены результата работы предыдущей команды, U для отмены
242			исправлений во всей строке. **
243
244  1. Переместите курсор вниз, к строке, помеченной ---> и установите его на
245     первую ошибку.
246  2. Нажмите x для удаления первого неправильного символа.
247  3. Теперь нажмите u для отмены (отката) последней выполненной команды.
248  4. Исправьте все ошибки в строке, используя команду x .
249  5. Теперь нажмите заглавную U для того, чтобы вернуть всю строку в исходное
250     состояние.
251  6. Нажмите u несколько раз для отмены команды U и предыдущих команд.
252  7. Нажмите теперь CTRL-R (удерживайте клавишу CTRL нажатой в момент нажатия
253  R)     несколько раз для возврата команд (откат отката).
254
255---> Испрравьте оошибки в этойй строке и вернитте их сс помощьью `отката'.
256
257  8. Это были очень полезные команды. Далее переходите к Резюме Урока 2.
258
259
260~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
261				РЕЗЮМЕ УРОКА 2
262
263
264  1. Для удаления текста от курсора до конца слова наберите:    dw
265
266  2. Для удаления текста от курсора до конца строки наберите:    d$
267
268  3. Для удаления всей строки наберите:    dd
269
270  4. Формат команды в обычном режиме имеет вид:
271
272       [число]   команда   объект     ИЛИ     команда	[число]   объект
273     где:
274       число   - сколько раз повторить выполнение команды
275       команда - что выполнить, например d для удаления
276       объект  - на что должна воздействовать команда, например w (слово),
277		$ (до конца строки), и т.д.
278
279  5. Для отмены (отката) предшествующих действий наберите:  u (строчная u)
280     Для отмены (отката) всех изменений в строке наберите:  U (прописная U)
281     Для отмены отката наберите:  CTRL-R
282
283~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
284			  Урок 3.1: КОМАНДА ВСТАВКИ
285
286
287   ** Наберите p для вставки последнего удаленного текста после курсора. **
288
289  1. Переместите курсор вниз к последней строке из набора.
290
291  2. Наберите dd для удаления строки и ее сохранения в буфере Vim'а.
292
293  3. Переместите курсор к строке НАД тем местом, куда следует вставить
294     удаленную строку.
295
296  4. Находясь в обычном режиме наберите p для замены строки.
297
298  5. Повторите шаги 2--4, пока не расставите все строки в нужном порядке.
299
300     г) И лучше выдумать не мог.
301     б) Когда не в шутку занемог,
302     в) Он уважать себя заставил
303     а) Мой дядя самых честных правил
304
305
306~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
307		       Урок 3.2: КОМАНДА ЗАМЕНЫ
308
309
310	  ** Наберите r и символ, заменяющий символ под курсором. **
311
312  1. Переместите курсор вниз, к строке, помеченной --->.
313
314  2. Установите курсор так, чтобы он находился над первой ошибкой.
315
316  3. Наберите r	и затем символ, исправляющий ошибку.
317
318  4. Повторите шаги 2 и 3, пока первая строка не будет исправлена.
319
320--->  В момегт набтра этой чтроки кое0кто с трудом попвдал по клваишам!
321--->  В момент набора этой строки кое-кто с трудом попадал по клавишам!
322
323  5. Теперь переходите к Уроку 3.2.
324
325ЗАМЕЧАНИЕ: Помните, что вы должны учиться в процессе работы, а не просто
326	   запоминая.
327
328
329~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
330			 Урок 3.3: КОМАНДА ИЗМЕНЕНИЯ
331
332
333		** Для изменения части слова наберите cw . **
334
335  1. Переместите курсор вниз, к строке, помеченной --->.
336
337  2. Расположите курсор над буквой `o' в слове `сола'.
338
339  3. Наберите cw и исправьте слово (в данном случае, наберите `лов'.)
340
341  4. Нажмите <ESC> и переходите к следующей ошибке (к первому символу, который
342     надо изменить.)
343
344  5. Повторите шаги 3--4 пока первое предложение не станет идентичным второму.
345
346---> Несколько сола в эьгц строке тпгшцбь редалзкуюиесвх.
347---> Несколько слов в этой строке требуют редактирования.
348
349Обратите внимание, что cw не только заменяет слово, но и переводит вас в режим
350вставки.
351
352
353~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
354		  Урок 3.4: ПРОДОЛЖАЕМ ИЗМЕНЯТЬ С КОМАНДОЙ c
355
356
357** Команда замены используется с теми же объектами, что и команда удаления. **
358
359  1. Команда изменения применяется таким же образом, как и команда удаления.
360     Ее формат таков:
361
362       [число]   c   объект	   ИЛИ	    c	[число]   объект
363
364  2. Объекты также совпадают: w (слово), $ (конец строки) и т.п.
365
366  3. Переместите курсор вниз, к строке, помеченной --->.
367
368  4. Перейдите к первой ошибке.
369
370  5. Наберите c$ и отредактируйте первую строку так, чтобы она совпадала со
371     второй, после чего нажмите <ESC>.
372
373---> Конец этой строки нуждается в помощи, чтобы стать похожим на второй.
374---> Конец этой строки нуждается в помощи команды c$ .
375
376
377~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
378				РЕЗЮМЕ УРОКА 3
379
380
381  1. Для вставки текста, который только что был удален, наберите p . Эта
382     команда вставит удаленный текст ПОСЛЕ курсора (если была удалена строка,
383     то она будет помещена в строке под курсором).
384
385  2. Для замены символа под курсором наберите r и затем заменяющий символ.
386
387  3. Команда изменения позволяет Вам изменить указанный объект от курсора до
388     конца этого объекта. Например, наберите cw для замены от курсора до
389     конца слова, c$ для изменения до конца строки.
390
391  4. Формат команды изменения таков:
392
393	 [число]   c	объект	      ИЛИ	c   [число]   объект
394
395Теперь отправляйтесь к следующему уроку.
396
397
398
399
400
401~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
402	      Урок 4.1: ИНФОРМАЦИЯ О ФАЙЛЕ И РАСПОЛОЖЕНИЕ В НЕМ
403
404
405 ** Наберите CTRL-g чтобы увидеть Ваше месторасположение в файле и информацию
406				    о нем.
407	Наберите SHIFT-G для перемещения к заданной строке в файле. **
408
409  Замечание: Прочитайте весь урок прежде чем выполнять любые команды!!
410
411  1. Удерживая клавишу Ctrl нажмите g . Внизу экрана появится строка статуса с
412     именем файла и номером строки, в которой Вы находитесь. Запомните номер
413     строки, он потребуется на Шаге 3.
414
415  2. Нажмите shift-G для перемещения к концу файла.
416
417  3. Наберите номер строки, в которой вы находились и затем shift-G. Это
418     вернет Вас к строке, в которой Вы были, когда в первый раз нажали Ctrl-g.
419     (Когда Вы будете набирать цифры, они НЕ отобразятся на экране.)
420
421  4. Если Вы запомнили все вышесказанное, выполните шаги 1--3.
422
423
424~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
425			   Урок 4.2: КОМАНДА ПОИСКА
426
427	      ** Наберите  /  и затем введите искомую фразу. **
428
429  1. В обычном режиме (Normal mode) наберите символ  / . Обратите внимание,
430     что он вместе с курсором появится внизу экрана, как это происходит с
431     командой :	.
432
433  2. Теперь наберите 'ошшшибка' <ENTER>. Это то слово, которое Вы будете
434     искать.
435
436  3. Для того, чтобы повторить поиск, просто нажмите n .
437     Для поиска этой фразы в обратном направлении, нажмите Shift-N .
438
439  4. Если Вы желаете сразу искать в обратном направлении, используйте
440     команду ? вместо / .
441
442---> Когда Вы при поиске достигнете конца файла, поиск будет продолжен с
443     начала.
444
445  "ошшшибка" это не способ произнесения слова `ошибка';  ошшшибка это ошибка.
446
447~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
448			Урок 4.3: ПОИСК ПАРНЫХ СКОБОК
449
450
451		** Наберите % для поиска парных ),] или } . **
452
453  1. Поместите курсор над любой из (, [ или { в строке внизу, помеченной --->.
454
455  2. Теперь наберите символ % .
456
457  3. Курсор должен перескочить на парную скобку.
458
459  4. Наберите % для возврата курсора назад к первой скобке.
460
461---> Это ( строка, содержащая такие (, такие [ ] и такие { } скобки. ))
462
463Замечание: Это очень удобно при отладке программ с пропущенными скобками!
464
465
466
467
468
469
470~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
471		      Урок 4.4: СПОСОБ ИСПРАВЛЕНИЯ ОШИБОК
472
473
474	 ** Наберите :s/было/стало/g для замены 'было' на 'стало'. **
475
476  1. Переместите курсор вниз, к строке, помеченной --->.
477
478  2. Наберите :s/уводю/увожу <ENTER> . Обратите внимание на то, что эта команда
479     заменит только первое найденное вхождение в строке.
480
481  3. Теперь наберите :s/уводю/увожу/g , означающее подстановку глобально во
482     всей строке. Это заменит все найденные в строке вхождения.
483
484---> Я уводю к отверженным селеньям, я уводю сквозь вековечный стон, я уводю к
485     забытым поколеньям.
486
487  4. Для замены всех вхождений последовательности символов между двумя
488     строками,
489     наберите :#,#s/было/стало/g  где #,# --- номера этих строк.
490     Наберите :%s/было/стало/g    для замены всех вхождений во всем файле.
491
492
493~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
494				РЕЗЮМЕ УРОКА 4
495  1. Ctrl-g показывает ваше положение в файле и информацию о нем.
496     Shift-G перемещает Вас в конец файла. Номер, за которым следует Shift-G
497     позволяет перейти к строке с этим номером.
498
499  2. Нажатие / и затем ввод строки позволяет произвести поиск этой строки
500     ВПЕРЕД по тексту.
501     Нажатие ? и затем ввод строки позволяет произвести поиск этой строки
502     НАЗАД по тексту.
503     После поиска наберите n для перехода к следующему вхождению искомой
504     строки в том же направлении или Shift-N для перехода в противоположном
505     направлении.
506
507  3. Нажатие % , когда курсор находится на (,),[,],{, или } позволяет найти
508     парную скобку.
509
510  4. Для подстановки `стало' вместо первого `было' в строке, наберите
511     :s/old/new
512     Для подстановки `стало' вместо всех `было' в строке, наберите
513     :s/old/new/g
514     Для замены в интервале между двумя строками, наберите
515     :#,#s/old/new/g
516     Для замены всех вхождений `было' на `стало' в файле, наберите
517     :%s/old/new/g
518     Чтобы редактор каждый раз запрашивал подтверждение, добавьте 'c'
519     :%s/old/new/gc
520~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
521		   Урок 5.1: КАК ВЫПОЛНИТЬ ВНЕШНЮЮ КОМАНДУ
522
523
524    ** Наберите :! и затем внешнюю команду, которую следует выполнить. **
525
526  1. Наберите уже знакомую Вам команду : для установки курсора в командную
527     строку редактора. Это позволит Вам ввести команду.
528
529  2. Теперь наберите символ ! (восклицательный знак). Теперь можно исполнить
530     внешнюю команду, используя командную оболочку.
531
532  3. Для примера наберите ls после ! и нажмите <ENTER>. Эта команда выведет
533     список файлов в текущем каталоге, точно также, как если бы Вы ввели эту
534     команду в приглашении оболочки. Или попробуйте :!dir , если предыдущая
535     команда не сработала.
536
537---> Замечание: Таким способом можно выполнить любую внешнюю команду.
538
539---> Замечание: Все команды, начинающиеся с : , должны завершаться нажатием
540     <ENTER>.
541
542
543~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
544			 Урок 5.2: КАК ЗАПИСАТЬ ФАЙЛ
545
546
547** Для сохранения изменений, произведенных в файле, наберите :w ИМЯ_ФАЙЛА. **
548
549  1. Наберите :!dir или :!ls для получения списка файлов в текущем каталоге.
550     Как Вам уже известно, Вы должны нажать <ENTER> после ввода этих команд.
551
552  2. Придумайте название для файла, которое еще не существует, например TEST.
553
554  3. Теперь наберите :w TEST (где TEST --- это имя файла, придуманное Вами.)
555
556  4. Эта команда сохранит весь файл (Учебник по Vim) под именем TEST. Чтобы
557     удостовериться в этом, снова наберите :!dir и просмотрите каталог.
558
559---> Заметьте, что если Вы выйдете из Vim и затем запустите его снова с
560     файлом TEST, этот файл будет точной копией учебника в тот момент, когда
561     Вы его сохранили.
562
563  5. Теперь удалите этот файл, набрав :!del TEST
564
565
566~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
567		       Урок 5.3: ВЫБОРОЧНОЕ СОХРАНЕНИЕ
568
569
570	 ** Для сохранения части файла, наберите :#,# w ИМЯ_ФАЙЛА **
571
572  1. Еще раз наберите :!dir или :!ls для получения списка файлов в текущем
573     каталоге и выберите подходящее имя, например TEST.
574
575  2. Переместите курсор к началу этой страницы и нажмите Ctrl-g для нахождения
576     номера строкиto. ЗАПОМНИТЕ ЭТОТ НОМЕР!
577
578  3. Теперь переместитесь в конец страницы и вновь наберите Ctrl-g. ЗАПОМНИТЕ
579     И ЭТОТ НОМЕР ТОЖЕ!
580
581  4. Для сохранения ТОЛЬКО ЧАСТИ файла наберите :#,# w TEST , где #,# --- это
582     номера, которые Вы запомнили (начало, конец), а TEST --- имя вашего файла.
583
584  5. Как и прежде, убедитесь в наличии этого файла командой :!dir , но НЕ
585     УДАЛЯЙТЕ его.
586
587
588
589~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
590		    Урок 5.4: ЧТЕНИЕ И ОБЪЕДИНЕНИЕ ФАЙЛОВ
591
592	  ** Для вставки содержимого файла, наберите  :r FILENAME **
593
594  1. Наберите :!dir для того, чтобы убедиться в том, что файл TEST все еще
595     существует.
596
597  2. Установите курсор в верхней части этой страницы.
598
599Замечание: После выполнения шага 3 Вы увидите Урок 5.3.	После этого
600	   перемещайтесь ВНИЗ, снова к этому уроку.
601
602  3. Теперь прочитайте Ваш файл TEST, используя команду :r TEST , где
603     TEST --- это имя файла.
604
605Замечание: Прочитанный Вами файл будет вставлен в том месте, где находится
606	   курсор.
607
608  4. Чтобы убедиться в том, что файл прочитан, переместитесь немного назад по
609     тексту и [A[Bзаметьте, что теперь существуют две копии Урока 5.3, исходная
610     и полученная из файла.
611
612~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
613				РЕЗЮМЕ УРОКА 5
614
615
616  1.  :!команда  исполняет внешнюю команду.
617
618      Некоторые полезные примеры:
619	  :!dir --- выводит список файлов в каталоге.
620	  :!del FILENAME --- удаляет файл FILENAME.
621
622  2.  :w FILENAME записывает текущий редактируемый файл на диск
623      под именем FILENAME.
624
625  3.  :#,#w FILENAME сохраняет строки от # до # в файл FILENAME.
626
627  4.  :r FILENAME считывает с диска файл FILENAME и помещает его в текущий
628      файл следом за позицией курсора.
629
630
631
632
633
634
635
636~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
637			  Урок 6.1: КОМАНДА СОЗДАНИЯ
638
639
640 ** Наберите o чтобы создать пустую строку под курсором и перейти в режим
641			   вставки (Insert mode) **
642
643  1. Переместите курсор вниз, к строке, помеченной --->.
644
645  2. Наберите o (в нижнем регистре) для того, чтобы создать пустую строку
646     НИЖЕ курсора и перейти в режим вставки (Insert mode).
647
648  3. Теперь скопируйте помеченную ---> строку и нажмите <ESC> для выхода из
649     режима вставки.
650
651---> После нажатия o курсор перейдет на новую пустую строку в режиме вставки.
652
653  4. Для создания строки ВЫШЕ курсора, просто наберите заглавную O, вместо
654     строчной o. Попробуйте проделать это с нижеследующей строкой.
655Создайте новую строку над этой, нажав Shift-O, поместив курсор на эту строку.
656
657
658
659
660~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
661			 Урок 6.2: КОМАНДА ДОБАВЛЕНИЯ
662
663	    ** Наберите a , чтобы вставить текст ПОСЛЕ курсора. **
664
665  1. Переместите курсор вниз, в конец первой строки, помеченной ---> ,
666     набрав $ в обычном режиме (Normal mode).
667
668  2. Наберите a (в нижнем регистре) для добавления текста ПОСЛЕ символа,
669     находящегося под курсором. (Заглавная A позволяет добавить в конец
670     строки.)
671
672Замечание: Это позволяет избежать нажатия i , последнего символа, текста для
673	   вставки, <ESC>, курсор-вправо, и, наконец, x , просто для того,
674	   чтобы добавить тест в конец строки!
675
676  3. Теперь завершите первую строку. Заметьте также, что добавление это в
677     точности то же самое, что и режим вставки, за исключением позиции, в
678     которую будет вставлен текст.
679
680---> Эта строчка позволит Вам попрактиковаться
681---> Эта строчка позволит Вам попрактиковаться в добавлении текста в конец
682     строки.
683~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
684		       Урок 6.3: ЕЩЕ ОДИН СПОСОБ ЗАМЕНЫ
685
686
687       ** Наберите заглавную R для замены более, чем одного символа. **
688
689  1. Переместите курсор вниз, к строке, помеченной --->.
690
691  2. Расположите курсор в начале первого слова, отличающегося от
692     соответствующего в следующей строке, помеченной ---> (слово 'последней').
693
694  3. Теперь наберите R и замените остаток текста в первой строке, набрав
695     поверх старого текста так, чтобы обе строки стали одинаковыми.
696
697---> Первую строку можно сравнять с последней, используя клавиши.
698---> Первую строку можно сравнять с второй, используя R и набрав новый текст.
699
700  4. Обратите внимание, что при нажатии <ESC> для завершения, любой
701     не измененный текст сохранится.
702
703
704
705
706~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
707			Урок 6.4: УСТАНОВКА ПАРАМЕТРОВ
708
709
710** Установим параметры так, чтобы игнорировать регистр при поиске или замене **
711
712
713  1. Поищите слово 'игнорировать', набрав:
714     /игнорировать
715     Повторите поиск несколько раз, нажимая клавишу n
716
717  2. Включите параметр 'ic' (Игнорировать регистр), набрав:
718     :set ic
719
720  3. Теперь снова сделайте поиск слова 'игнорировать', нажав: n
721     Повторите поиск несколько раз, нажимая клавишу n
722
723  4. Включите параметры 'hlsearch' и 'incsearch':
724     :set hls is
725
726  5. Теперь опять введите команду поиска и посмотрите, что получится:
727     /игнорировать
728
729
730
731~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
732				РЕЗЮМЕ УРОКА 6
733
734
735  1. Нажатие o создает строку НИЖЕ курсора и перемещает курсор в нее в режиме
736     вставки.
737     Нажатие заглавной O создает строку ВЫШЕ строки, в которой находится
738     курсор.
739
740  2. Наберите a для вставки текста ПОСЛЕ символа, на котором находится курсор.
741     Нажатие заглавной A автоматически перемещает Вас для добавления текста
742     в конец строки.
743
744  3. Нажатие заглавной R переводит Вас в режим замены до тех пор, пока не
745     будет нажата клавиша <ESC> для завершения.
746
747  4. Набрав ":set xxx" вы сможете включить параметр "xxx"
748
749
750
751
752
753
754
755~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
756		 Урок 7: КОМАНДЫ ПОЛУЧЕНИЯ ВСТРОЕННОЙ СПРАВКИ
757
758	       ** Используйте встроенную справочную систему **
759
760  Vim обладает мощной встроенной справочной системой. Для начала попробуйте
761  один из трех вариантов:
762	- нажмите клавишу <HELP> (если таковая имеется на клавиатуре)
763	- нажмите клавишу <F1> (если таковая имеется на клавиатуре)
764	- наберите   :help <ENTER>
765
766  Наберите   :q <ENTER>   чтобы закрыть окно справки.
767
768  Вы можете найти справку для любого понятия или команды, просто задав
769  соответствующий аргумент команде ":help". Попробуйте следующее (не забудьте
770  нажать <ENTER>):
771
772  :help w
773  :help c_<T
774  :help insert-index
775
776
777
778
779
780~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
781		     Урок 8: СОЗДАНИЕ СТАРТОВОГО СКРИПТА
782
783			** Включим возможности Vim **
784
785  Vim имеет намного больше возможностей, чем Vi, однако большинствао из них
786  выключены по умолчанию. Для того, чтобы начать использовать новые
787  возможности Вам следует создать файл "vimrc".
788
789  1. Отредактируйте файл "vimrc", его расположение зависит от используемой
790     системы:
791
792       :edit ~/.vimrc			для Unix
793       :edit $VIM/_vimrc		для MS-Windows
794
795  2. Теперь прочитайте пример файла "vimrc":
796
797       :read $VIMRUNTIME/vimrc_example.vim
798
799  3. Запишите файл:
800
801       :write
802
803  Теперь при следующем запуске Vim будет включена подсветка синтаксиса. Все
804  настройки, предпочитаемые Вами, могут быть добавлены в файл "vimrc".
805
806~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
807  На этом завершается Учебник Vim. Он был предназначен для того, чтобы дать
808  общее представление о редакторе Vim, достаточное для того, чтобы с легкостью
809  использовать его. Учебник далек от полноты, поскольку Vim имеет очень много
810  команд. Прочитайте теперь руководство пользователя: ":help user-manual".
811
812  Для дальнейшего чтения рекомендуется книга:
813	Vim - Vi Improved - Автор: Steve Oualline
814	Издатель: New Riders
815  Эта книга полностью посвящена Vim. Особенно полезна новичкам. Содержит
816  множество примеров и иллюстраций.
817  Взгляните на See http://iccf-holland.org/click5.html
818
819  Следующая книга более почтенного возраста и посвящена больше Vi, чем Vim,
820  однако также рекомендуется:
821	Learning the Vi Editor - Автор: Linda Lamb
822	Издатель: O'Reilly & Associates Inc.
823  Это хорошая книга для того, чтобы узнать все, что только можно проделывать с
824  Vi. Шестое издание также включает информацию о Vim.
825
826  Этот учебник был написан Michael C. Pierce и Robert K. Ware, Colorado School
827  of Mines с использованием идей, предложенных Charles Smith, Colorado State
828  University. E-mail: bware@mines.colorado.edu.
829
830  Доработано для Vim Bram Moolenaar.
831
832  Перевод: Андрей Киселев <a_kissel@eudoramail.com>, 2002.
833  Translator: Andrey Kiselev <a_kissel@eudoramail.com>, 2002.
834~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
835