summaryrefslogtreecommitdiff
path: root/runtime/tutor/tutor.ru
blob: 6fd74cf085df8b2ac318783e1d532849e05892e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
===============================================================================
=    Д о б р о   п о ж а л о в а т ь   в   у ч е б н и к   VIM  -  Версия 1.5 =
===============================================================================
     Vim --- это очень мощный редактор, имеющий множество команд, слишком
     много для того, чтобы их все можно было описать в таком учебнике, как
     этот. Этот учебник призван объяснить достаточное число команд для того,
     чтобы Вы могли с легкостью использовать Vim в качестве редактора общего
     назначения.

     Вам потребуется приблизительно 25-30 минут на освоение данного учебника в
     зависимости от того, сколько времени Вы потратите на эксперименты.

     Команды в уроках будут модифицировать текст. Создайте копию этого файла,
     чтобы попрактиковаться на ней (если Вы запустили "vimtutor", то это уже
     копия).

     Важно помнить, что этот учебник предназначен для обучения в процессе
     использования. Это означает, что Вы должны запускать команды для того,
     чтобы как следует их изучить. Если Вы просто прочитаете текст, то
     забудете команды!

     Теперь убедитесь в том, что клавиша CapsLock не включена и нажмите
     клавишу   j   несколько раз, так, чтобы Урок 1.1 полностью поместился на
     экране.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			Урок 1.1:  ПЕРЕМЕЩЕНИЕ КУРСОРА

** Для перемещения курсора нажмите клавиши h,j,k,l так, как показано ниже. **
	     ^
	     k		Советы:	Клавиша h находится слева и перемещает влево.
       < h	 l >		Клавиша l находится справа и перемещает вправо.
	     j			Клавиша j похожа на стрелку `вниз'.
	     v
  1. Подвигайте курсор по экрану, пока не почувствуете себя уверенно.

  2. Надавите клавишу `вниз' (j) пока она не начнет повторяться.
---> Теперь Вы знаете, как перейти к следующему уроку.

  3. Используя клавишу `вниз' перейдите к Уроку 1.2.

Замечание: Если вы пока не уверены в том, что набираете, нажмите <ESC> для
	   перехода в обычный режим (Normal mode). После этого перенаберите
	   требуемую команду.

Замечание: Обычные клавиши управления курсором (стрелки) также должны
	   работать. Однако, клавиши hjkl позволят Вам перемещаться
	   значительно быстрее, как только Вы научитесь ими пользоваться.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		  Урок 1.2: ЗАПУСК И ЗАВЕРШЕНИЕ РАБОТЫ С VIM

!! ВНИМАНИЕ! Прежде, чем выполнять любой из описанных ниже шагов, прочтите
			       урок целиком !!

  1. Нажмите клавишу <ESC> (для того, чтобы удостовериться, что Вы в обычном
     режиме (Normal mode)).

  2. Наберите:			:q! <ENTER>.

---> Это позволит Вам выйти из редактора БЕЗ СОХРАНЕНИЯ любых сделанных
     изменений. Если Вы хотите сохранить изменения и выйти:
				:wq  <ENTER>

  3. Когда Вы увидите приглашение командной оболочки, наберите команду,
     которая привела Вас в этот учебник. Это может быть
				vimtutor ru <ENTER>
     Обычно можно использовать:	vim tutor.ru <ENTER>

---> 'vim' позволяет запустить редактор vim, 'tutor.ru' --- это файл, который
     Вы будете редактировать.

  4. Если Вы уверены в том, что запомнили эти шаги, выполните шаги от 1 до 3
     чтобы выйти снова запустить редактор. Затем переместите курсор вниз к
     Уроку 1.3.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		  Урок 1.3: РЕДАКТИРОВАНИЕ ТЕКСТА - УДАЛЕНИЕ


** Находясь в обычном режиме нажмите x, чтобы удалить символ под курсором. **

  1. Переместите курсор к строке внизу, помеченной --->.

  2. Для исправления ошибок, переместите курсор, пока он не окажется над
     удаляемым символом.

  3. Нажмите клавишу x для удаления требуемого символа.

  4. Повторите шаги 2--4 пока строка не будет исправлена.

---> От тттопота копытт пппыль ппо ппполю леттитт.

  5. Теперь, когда строка откорректирована, переходите к уроку 1.4.

ЗАМЕЧАНИЕ: В ходе освоения этого учебника не пытайтесь запоминать, учите
	   в процессе использования.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		  Урок 1.4: РЕДАКТИРОВАНИЕ ТЕКСТА - ВСТАВКА


 ** Находясь в обычном режиме (Normal mode), нажмите i для вставки текста. **

  1. Переместите курсор к первой строке внизу, помеченной --->.

  2. Для того, чтобы сделать первую строку идентичной второй, поместите
     курсор на символ ПЕРЕД которым следует вставить текст.

  3. Нажмите i и наберите требуемые добавления.

  4. После исправления всех ошибок нажмите <ESC> для возврата в обычный режим.
     Повторите шаги 2--4, пока фраза не будет исправлена полностью.

---> Часть текста в строке беследно .
---> Часть текста в этой строке бесследно пропала.

  5. Когда освоите вставку текста, переходите дальше к Резюме.



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
				РЕЗЮМЕ УРОКА 1

  1. Курсор перемещается либо клавишами со стрелками, либо клавишами hjkl.
	 h (влево)	j (вниз)       k (вверх)	    l (вправо)

  2. Для запуска Vim (из приглашения % командной оболочки) наберите:
     vim ИМЯ_ФАЙЛА <ENTER>

  3. Для завершения работы с Vim наберите:
     <ESC>   :q!	 <ENTER>  чтобы отказаться от сохранения изменений.
     Или наберите:
     <ESC>   :wq	 <ENTER>  чтобы сохранить изменения.

  4. Для удаления символа под курсором в обычном режиме, наберите: x

  5. Чтобы вставить текст перед курсором в обычном режиме, наберите:
	 i     вводите текст	<ESC>

ЗАМЕЧАНИЕ: Нажатие <ESC> переместит Вас в обычный режим (Normal mode) либо
	   прервет нежелательную и частично завершенную команду.

Теперь переходим к Уроку 2.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			  Урок 2.1: КОМАНДЫ УДАЛЕНИЯ


	** Наберите dw для удаления участка текста до конца слова. **

  1. Нажмите <ESC>, чтобы перейти в обычный режим.

  2. Переместите курсор вниз, к строке, помеченной --->.

  3. Переместите курсор в начало слова, которое следует удалить.

  4. Наберите  dw , чтобы удалить это слово.

ЗАМЕЧАНИЕ: Во время набора буквы dw появятся в последней строке экрана. Если
	   Вы что-то наберете неправильно, нажмите <ESC> и начните сначала.

---> Несколько слов рафинад в этом предложении автокран излишни.

  5. Повторите шаги 3 и 4, пока не исправите все ошибки и переходите к
     Уроку 2.2.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		  Урок 2.2: ДОПОЛНИТЕЛЬНЫЕ КОМАНДЫ УДАЛЕНИЯ


	    ** Наберите d$ для удаления текста до конца строки. **

  1. Нажмите <ESC>, чтобы перейти в обычный режим.

  2. Переместите курсор вниз, к строке, помеченной --->.

  3. Переместите курсор к концу правильной строки (ПОСЛЕ первой . ).

  4. Чтобы удалить остаток строки, наберите  d$ .

---> Кто-то набрал окончание этой строки дважды. окончание этой строки дважды.


  5.Чтобы лучше разобраться в этом, переходите к Уроку 2.3.





~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			 Урок 2.3: КОМАНДЫ И ОБЪЕКТЫ


  Формат команды `удаление' d таков:

	 [число]   d	объект	    ИЛИ	     d	 [число]   объект
  Здесь:
    число  - сколько раз исполнить команду (необязательно, по умолчанию=1).
    d      - команда удаления.
    объект - с чем команда должна быть выполнена (перечислено ниже).

  Краткий список объектов:
    w - от курсора до конца слова, включая завершающий пробел.
    e - от курсора до конца слова, НЕ включая завершающий пробел.
    $ - от курсора до конца строки.
    ^ - от курсора до начала строки.

ЗАМЕЧАНИЕ: Простое нажатие на символ объекта в обычном режиме (Normal mode)
	   без дополнительных команд передвинет курсор так, как указано в
	   списке объектов.



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	       Урок 2.4: ИСКЛЮЧЕНИЕ ИЗ ПРАВИЛА `КОМАНДА-ОБЪЕКТ'


		 ** Наберите dd для удаления всей строки. **

  Вследствие частого применения операции удаления всей строки, разработчики
  Vim решили, что для этого проще всего просто набрать d дважды.

  1. Переместите курсор вниз, ко второй строке фразы.
  2. Наберите dd для удаления строки.
  3. Теперь переместитесь к четвертой строке.
  4. Наберите 2dd (вспомните правило `число-команда-объект'), чтобы удалить
     две строки.

      1)  Летом я хожу на стадион,
      2)  О, как внезапно кончился диван!
      3)  Я болею за ``Зенит'', ``Зенит'' --- чемпион!
      4)  Печально я гляжу на наше поколение!
      5)  Его грядущее иль пусто иль темно...
      6)  Я сижу на скамейке в ложе `Б'
      7)  И играю на большой жестяной трубе.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			  Урок 2.5: КОМАНДА `ОТКАТ'


  ** Нажмите u	для отмены результата работы предыдущей команды, U для отмены
			исправлений во всей строке. **

  1. Переместите курсор вниз, к строке, помеченной ---> и установите его на
     первую ошибку.
  2. Нажмите x для удаления первого неправильного символа.
  3. Теперь нажмите u для отмены (отката) последней выполненной команды.
  4. Исправьте все ошибки в строке, используя команду x .
  5. Теперь нажмите заглавную U для того, чтобы вернуть всю строку в исходное
     состояние.
  6. Нажмите u несколько раз для отмены команды U и предыдущих команд.
  7. Нажмите теперь CTRL-R (удерживайте клавишу CTRL нажатой в момент нажатия
  R)     несколько раз для возврата команд (откат отката).

---> Испрравьте оошибки в этойй строке и вернитте их сс помощьью `отката'.

  8. Это были очень полезные команды. Далее переходите к Резюме Урока 2.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
				РЕЗЮМЕ УРОКА 2


  1. Для удаления текста от курсора до конца слова наберите:    dw

  2. Для удаления текста от курсора до конца строки наберите:    d$

  3. Для удаления всей строки наберите:    dd

  4. Формат команды в обычном режиме имеет вид:

       [число]   команда   объект     ИЛИ     команда	[число]   объект
     где:
       число   - сколько раз повторить выполнение команды
       команда - что выполнить, например d для удаления
       объект  - на что должна воздействовать команда, например w (слово),
		$ (до конца строки), и т.д.

  5. Для отмены (отката) предшествующих действий наберите:  u (строчная u)
     Для отмены (отката) всех изменений в строке наберите:  U (прописная U)
     Для отмены отката наберите:  CTRL-R

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			  Урок 3.1: КОМАНДА ВСТАВКИ


   ** Наберите p для вставки последнего удаленного текста после курсора. **

  1. Переместите курсор вниз к последней строке из набора.

  2. Наберите dd для удаления строки и ее сохранения в буфере Vim'а.

  3. Переместите курсор к строке НАД тем местом, куда следует вставить
     удаленную строку.

  4. Находясь в обычном режиме наберите p для замены строки.

  5. Повторите шаги 2--4, пока не расставите все строки в нужном порядке.

     г) И лучше выдумать не мог.
     б) Когда не в шутку занемог,
     в) Он уважать себя заставил
     а) Мой дядя самых честных правил


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		       Урок 3.2: КОМАНДА ЗАМЕНЫ


	  ** Наберите r и символ, заменяющий символ под курсором. **

  1. Переместите курсор вниз, к строке, помеченной --->.

  2. Установите курсор так, чтобы он находился над первой ошибкой.

  3. Наберите r	и затем символ, исправляющий ошибку.

  4. Повторите шаги 2 и 3, пока первая строка не будет исправлена.

--->  В момегт набтра этой чтроки кое0кто с трудом попвдал по клваишам!
--->  В момент набора этой строки кое-кто с трудом попадал по клавишам!

  5. Теперь переходите к Уроку 3.2.

ЗАМЕЧАНИЕ: Помните, что вы должны учиться в процессе работы, а не просто
	   запоминая.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			 Урок 3.3: КОМАНДА ИЗМЕНЕНИЯ


		** Для изменения части слова наберите cw . **

  1. Переместите курсор вниз, к строке, помеченной --->.

  2. Расположите курсор над буквой `o' в слове `сола'.

  3. Наберите cw и исправьте слово (в данном случае, наберите `лов'.)

  4. Нажмите <ESC> и переходите к следующей ошибке (к первому символу, который
     надо изменить.)

  5. Повторите шаги 3--4 пока первое предложение не станет идентичным второму.

---> Несколько сола в эьгц строке тпгшцбь редалзкуюиесвх.
---> Несколько слов в этой строке требуют редактирования.

Обратите внимание, что cw не только заменяет слово, но и переводит вас в режим
вставки.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		  Урок 3.4: ПРОДОЛЖАЕМ ИЗМЕНЯТЬ С КОМАНДОЙ c


** Команда замены используется с теми же объектами, что и команда удаления. **

  1. Команда изменения применяется таким же образом, как и команда удаления.
     Ее формат таков:

       [число]   c   объект	   ИЛИ	    c	[число]   объект

  2. Объекты также совпадают: w (слово), $ (конец строки) и т.п.

  3. Переместите курсор вниз, к строке, помеченной --->.

  4. Перейдите к первой ошибке.

  5. Наберите c$ и отредактируйте первую строку так, чтобы она совпадала со
     второй, после чего нажмите <ESC>.

---> Конец этой строки нуждается в помощи, чтобы стать похожим на второй.
---> Конец этой строки нуждается в помощи команды c$ .


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
				РЕЗЮМЕ УРОКА 3


  1. Для вставки текста, который только что был удален, наберите p . Эта
     команда вставит удаленный текст ПОСЛЕ курсора (если была удалена строка,
     то она будет помещена в строке под курсором).

  2. Для замены символа под курсором наберите r и затем заменяющий символ.

  3. Команда изменения позволяет Вам изменить указанный объект от курсора до
     конца этого объекта. Например, наберите cw для замены от курсора до
     конца слова, c$ для изменения до конца строки.

  4. Формат команды изменения таков:

	 [число]   c	объект	      ИЛИ	c   [число]   объект

Теперь отправляйтесь к следующему уроку.





~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	      Урок 4.1: ИНФОРМАЦИЯ О ФАЙЛЕ И РАСПОЛОЖЕНИЕ В НЕМ


 ** Наберите CTRL-g чтобы увидеть Ваше месторасположение в файле и информацию
				    о нем.
	Наберите SHIFT-G для перемещения к заданной строке в файле. **

  Замечание: Прочитайте весь урок прежде чем выполнять любые команды!!

  1. Удерживая клавишу Ctrl нажмите g . Внизу экрана появится строка статуса с
     именем файла и номером строки, в которой Вы находитесь. Запомните номер
     строки, он потребуется на Шаге 3.

  2. Нажмите shift-G для перемещения к концу файла.

  3. Наберите номер строки, в которой вы находились и затем shift-G. Это
     вернет Вас к строке, в которой Вы были, когда в первый раз нажали Ctrl-g.
     (Когда Вы будете набирать цифры, они НЕ отобразятся на экране.)

  4. Если Вы запомнили все вышесказанное, выполните шаги 1--3.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			   Урок 4.2: КОМАНДА ПОИСКА

	      ** Наберите  /  и затем введите искомую фразу. **

  1. В обычном режиме (Normal mode) наберите символ  / . Обратите внимание,
     что он вместе с курсором появится внизу экрана, как это происходит с
     командой :	.

  2. Теперь наберите 'ошшшибка' <ENTER>. Это то слово, которое Вы будете
     искать.

  3. Для того, чтобы повторить поиск, просто нажмите n .
     Для поиска этой фразы в обратном направлении, нажмите Shift-N .

  4. Если Вы желаете сразу искать в обратном направлении, используйте
     команду ? вместо / .

---> Когда Вы при поиске достигнете конца файла, поиск будет продолжен с
     начала.

  "ошшшибка" это не способ произнесения слова `ошибка';  ошшшибка это ошибка.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			Урок 4.3: ПОИСК ПАРНЫХ СКОБОК


		** Наберите % для поиска парных ),] или } . **

  1. Поместите курсор над любой из (, [ или { в строке внизу, помеченной --->.

  2. Теперь наберите символ % .

  3. Курсор должен перескочить на парную скобку.

  4. Наберите % для возврата курсора назад к первой скобке.

---> Это ( строка, содержащая такие (, такие [ ] и такие { } скобки. ))

Замечание: Это очень удобно при отладке программ с пропущенными скобками!






~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		      Урок 4.4: СПОСОБ ИСПРАВЛЕНИЯ ОШИБОК


	 ** Наберите :s/было/стало/g для замены 'было' на 'стало'. **

  1. Переместите курсор вниз, к строке, помеченной --->.

  2. Наберите :s/уводю/увожу <ENTER> . Обратите внимание на то, что эта команда
     заменит только первое найденное вхождение в строке.

  3. Теперь наберите :s/уводю/увожу/g , означающее подстановку глобально во
     всей строке. Это заменит все найденные в строке вхождения.

---> Я уводю к отверженным селеньям, я уводю сквозь вековечный стон, я уводю к
     забытым поколеньям.

  4. Для замены всех вхождений последовательности символов между двумя
     строками,
     наберите :#,#s/было/стало/g  где #,# --- номера этих строк.
     Наберите :%s/было/стало/g    для замены всех вхождений во всем файле.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
				РЕЗЮМЕ УРОКА 4
  1. Ctrl-g показывает ваше положение в файле и информацию о нем.
     Shift-G перемещает Вас в конец файла. Номер, за которым следует Shift-G
     позволяет перейти к строке с этим номером.

  2. Нажатие / и затем ввод строки позволяет произвести поиск этой строки
     ВПЕРЕД по тексту.
     Нажатие ? и затем ввод строки позволяет произвести поиск этой строки
     НАЗАД по тексту.
     После поиска наберите n для перехода к следующему вхождению искомой
     строки в том же направлении или Shift-N для перехода в противоположном
     направлении.

  3. Нажатие % , когда курсор находится на (,),[,],{, или } позволяет найти
     парную скобку.

  4. Для подстановки `стало' вместо первого `было' в строке, наберите
     :s/old/new
     Для подстановки `стало' вместо всех `было' в строке, наберите
     :s/old/new/g
     Для замены в интервале между двумя строками, наберите
     :#,#s/old/new/g
     Для замены всех вхождений `было' на `стало' в файле, наберите
     :%s/old/new/g
     Чтобы редактор каждый раз запрашивал подтверждение, добавьте 'c'
     :%s/old/new/gc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		   Урок 5.1: КАК ВЫПОЛНИТЬ ВНЕШНЮЮ КОМАНДУ


    ** Наберите :! и затем внешнюю команду, которую следует выполнить. **

  1. Наберите уже знакомую Вам команду : для установки курсора в командную
     строку редактора. Это позволит Вам ввести команду.

  2. Теперь наберите символ ! (восклицательный знак). Теперь можно исполнить
     внешнюю команду, используя командную оболочку.

  3. Для примера наберите ls после ! и нажмите <ENTER>. Эта команда выведет
     список файлов в текущем каталоге, точно также, как если бы Вы ввели эту
     команду в приглашении оболочки. Или попробуйте :!dir , если предыдущая
     команда не сработала.

---> Замечание: Таким способом можно выполнить любую внешнюю команду.

---> Замечание: Все команды, начинающиеся с : , должны завершаться нажатием
     <ENTER>.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			 Урок 5.2: КАК ЗАПИСАТЬ ФАЙЛ


** Для сохранения изменений, произведенных в файле, наберите :w ИМЯ_ФАЙЛА. **

  1. Наберите :!dir или :!ls для получения списка файлов в текущем каталоге.
     Как Вам уже известно, Вы должны нажать <ENTER> после ввода этих команд.

  2. Придумайте название для файла, которое еще не существует, например TEST.

  3. Теперь наберите :w TEST (где TEST --- это имя файла, придуманное Вами.)

  4. Эта команда сохранит весь файл (Учебник по Vim) под именем TEST. Чтобы
     удостовериться в этом, снова наберите :!dir и просмотрите каталог.

---> Заметьте, что если Вы выйдете из Vim и затем запустите его снова с
     файлом TEST, этот файл будет точной копией учебника в тот момент, когда
     Вы его сохранили.

  5. Теперь удалите этот файл, набрав :!del TEST


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		       Урок 5.3: ВЫБОРОЧНОЕ СОХРАНЕНИЕ


	 ** Для сохранения части файла, наберите :#,# w ИМЯ_ФАЙЛА **

  1. Еще раз наберите :!dir или :!ls для получения списка файлов в текущем
     каталоге и выберите подходящее имя, например TEST.

  2. Переместите курсор к началу этой страницы и нажмите Ctrl-g для нахождения
     номера строкиto. ЗАПОМНИТЕ ЭТОТ НОМЕР!

  3. Теперь переместитесь в конец страницы и вновь наберите Ctrl-g. ЗАПОМНИТЕ
     И ЭТОТ НОМЕР ТОЖЕ!

  4. Для сохранения ТОЛЬКО ЧАСТИ файла наберите :#,# w TEST , где #,# --- это
     номера, которые Вы запомнили (начало, конец), а TEST --- имя вашего файла.

  5. Как и прежде, убедитесь в наличии этого файла командой :!dir , но НЕ
     УДАЛЯЙТЕ его.



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		    Урок 5.4: ЧТЕНИЕ И ОБЪЕДИНЕНИЕ ФАЙЛОВ

	  ** Для вставки содержимого файла, наберите  :r FILENAME **

  1. Наберите :!dir для того, чтобы убедиться в том, что файл TEST все еще
     существует.

  2. Установите курсор в верхней части этой страницы.

Замечание: После выполнения шага 3 Вы увидите Урок 5.3.	После этого
	   перемещайтесь ВНИЗ, снова к этому уроку.

  3. Теперь прочитайте Ваш файл TEST, используя команду :r TEST , где
     TEST --- это имя файла.

Замечание: Прочитанный Вами файл будет вставлен в том месте, где находится
	   курсор.

  4. Чтобы убедиться в том, что файл прочитан, переместитесь немного назад по
     тексту и заметьте, что теперь существуют две копии Урока 5.3, исходная
     и полученная из файла.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
				РЕЗЮМЕ УРОКА 5


  1.  :!команда  исполняет внешнюю команду.

      Некоторые полезные примеры:
	  :!dir --- выводит список файлов в каталоге.
	  :!del FILENAME --- удаляет файл FILENAME.

  2.  :w FILENAME записывает текущий редактируемый файл на диск
      под именем FILENAME.

  3.  :#,#w FILENAME сохраняет строки от # до # в файл FILENAME.

  4.  :r FILENAME считывает с диска файл FILENAME и помещает его в текущий
      файл следом за позицией курсора.







~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			  Урок 6.1: КОМАНДА СОЗДАНИЯ


 ** Наберите o чтобы создать пустую строку под курсором и перейти в режим
			   вставки (Insert mode) **

  1. Переместите курсор вниз, к строке, помеченной --->.

  2. Наберите o (в нижнем регистре) для того, чтобы создать пустую строку
     НИЖЕ курсора и перейти в режим вставки (Insert mode).

  3. Теперь скопируйте помеченную ---> строку и нажмите <ESC> для выхода из
     режима вставки.

---> После нажатия o курсор перейдет на новую пустую строку в режиме вставки.

  4. Для создания строки ВЫШЕ курсора, просто наберите заглавную O, вместо
     строчной o. Попробуйте проделать это с нижеследующей строкой.
Создайте новую строку над этой, нажав Shift-O, поместив курсор на эту строку.




~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			 Урок 6.2: КОМАНДА ДОБАВЛЕНИЯ

	    ** Наберите a , чтобы вставить текст ПОСЛЕ курсора. **

  1. Переместите курсор вниз, в конец первой строки, помеченной ---> ,
     набрав $ в обычном режиме (Normal mode).

  2. Наберите a (в нижнем регистре) для добавления текста ПОСЛЕ символа,
     находящегося под курсором. (Заглавная A позволяет добавить в конец
     строки.)

Замечание: Это позволяет избежать нажатия i , последнего символа, текста для
	   вставки, <ESC>, курсор-вправо, и, наконец, x , просто для того,
	   чтобы добавить тест в конец строки!

  3. Теперь завершите первую строку. Заметьте также, что добавление это в
     точности то же самое, что и режим вставки, за исключением позиции, в
     которую будет вставлен текст.

---> Эта строчка позволит Вам попрактиковаться
---> Эта строчка позволит Вам попрактиковаться в добавлении текста в конец
     строки.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		       Урок 6.3: ЕЩЕ ОДИН СПОСОБ ЗАМЕНЫ


       ** Наберите заглавную R для замены более, чем одного символа. **

  1. Переместите курсор вниз, к строке, помеченной --->.

  2. Расположите курсор в начале первого слова, отличающегося от
     соответствующего в следующей строке, помеченной ---> (слово 'последней').

  3. Теперь наберите R и замените остаток текста в первой строке, набрав
     поверх старого текста так, чтобы обе строки стали одинаковыми.

---> Первую строку можно сравнять с последней, используя клавиши.
---> Первую строку можно сравнять с второй, используя R и набрав новый текст.

  4. Обратите внимание, что при нажатии <ESC> для завершения, любой
     не измененный текст сохранится.




~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			Урок 6.4: УСТАНОВКА ПАРАМЕТРОВ


** Установим параметры так, чтобы игнорировать регистр при поиске или замене **


  1. Поищите слово 'игнорировать', набрав:
     /игнорировать
     Повторите поиск несколько раз, нажимая клавишу n

  2. Включите параметр 'ic' (Игнорировать регистр), набрав:
     :set ic

  3. Теперь снова сделайте поиск слова 'игнорировать', нажав: n
     Повторите поиск несколько раз, нажимая клавишу n

  4. Включите параметры 'hlsearch' и 'incsearch':
     :set hls is

  5. Теперь опять введите команду поиска и посмотрите, что получится:
     /игнорировать



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
				РЕЗЮМЕ УРОКА 6


  1. Нажатие o создает строку НИЖЕ курсора и перемещает курсор в нее в режиме
     вставки.
     Нажатие заглавной O создает строку ВЫШЕ строки, в которой находится
     курсор.

  2. Наберите a для вставки текста ПОСЛЕ символа, на котором находится курсор.
     Нажатие заглавной A автоматически перемещает Вас для добавления текста
     в конец строки.

  3. Нажатие заглавной R переводит Вас в режим замены до тех пор, пока не
     будет нажата клавиша <ESC> для завершения.

  4. Набрав ":set xxx" вы сможете включить параметр "xxx"







~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		 Урок 7: КОМАНДЫ ПОЛУЧЕНИЯ ВСТРОЕННОЙ СПРАВКИ

	       ** Используйте встроенную справочную систему **

  Vim обладает мощной встроенной справочной системой. Для начала попробуйте
  один из трех вариантов:
	- нажмите клавишу <HELP> (если таковая имеется на клавиатуре)
	- нажмите клавишу <F1> (если таковая имеется на клавиатуре)
	- наберите   :help <ENTER>

  Наберите   :q <ENTER>   чтобы закрыть окно справки.

  Вы можете найти справку для любого понятия или команды, просто задав
  соответствующий аргумент команде ":help". Попробуйте следующее (не забудьте
  нажать <ENTER>):

  :help w
  :help c_<T
  :help insert-index





~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		     Урок 8: СОЗДАНИЕ СТАРТОВОГО СКРИПТА

			** Включим возможности Vim **

  Vim имеет намного больше возможностей, чем Vi, однако большинствао из них
  выключены по умолчанию. Для того, чтобы начать использовать новые
  возможности Вам следует создать файл "vimrc".

  1. Отредактируйте файл "vimrc", его расположение зависит от используемой
     системы:

       :edit ~/.vimrc			для Unix
       :edit $VIM/_vimrc		для MS-Windows

  2. Теперь прочитайте пример файла "vimrc":

       :read $VIMRUNTIME/vimrc_example.vim

  3. Запишите файл:

       :write

  Теперь при следующем запуске Vim будет включена подсветка синтаксиса. Все
  настройки, предпочитаемые Вами, могут быть добавлены в файл "vimrc".

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  На этом завершается Учебник Vim. Он был предназначен для того, чтобы дать
  общее представление о редакторе Vim, достаточное для того, чтобы с легкостью
  использовать его. Учебник далек от полноты, поскольку Vim имеет очень много
  команд. Прочитайте теперь руководство пользователя: ":help user-manual".

  Для дальнейшего чтения рекомендуется книга:
	Vim - Vi Improved - Автор: Steve Oualline
	Издатель: New Riders
  Эта книга полностью посвящена Vim. Особенно полезна новичкам. Содержит
  множество примеров и иллюстраций.
  Взгляните на See http://iccf-holland.org/click5.html

  Следующая книга более почтенного возраста и посвящена больше Vi, чем Vim,
  однако также рекомендуется:
	Learning the Vi Editor - Автор: Linda Lamb
	Издатель: O'Reilly & Associates Inc.
  Это хорошая книга для того, чтобы узнать все, что только можно проделывать с
  Vi. Шестое издание также включает информацию о Vim.

  Этот учебник был написан Michael C. Pierce и Robert K. Ware, Colorado School
  of Mines с использованием идей, предложенных Charles Smith, Colorado State
  University. E-mail: bware@mines.colorado.edu.

  Доработано для Vim Bram Moolenaar.

  Перевод: Андрей Киселев <a_kissel@eudoramail.com>, 2002.
  Translator: Andrey Kiselev <a_kissel@eudoramail.com>, 2002.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~