mirror of
				https://github.com/vim/vim.git
				synced 2025-10-30 09:47:20 -04:00 
			
		
		
		
	Problem:  translation(ru): missing Russian translation for the new tutor
Solution: include new Russian translation, update the Makefile for
          installing the new translations (RestorerZ)
closes: #16901
Signed-off-by: RestorerZ <restorer@mail2k.ru>
Signed-off-by: Christian Brabandt <cb@256bit.org>
		
	
		
			
				
	
	
		
			1195 lines
		
	
	
		
			66 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			1195 lines
		
	
	
		
			66 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #	       ДОБРО  ПОЖАЛОВАТЬ  НА  ЗАНЯТИЯ  ПО  РЕДАКТОРУ  Vim
 | ||
| 
 | ||
| ##				ГЛАВА ПЕРВАЯ
 | ||
| 
 | ||
|    Программа Vim — это очень мощный текстовый редактор, имеющий множество
 | ||
|    команд, и все их просто невозможно описать в рамках этого учебника.
 | ||
|    Данный же учебник призван объяснить те команды, которые позволят вам с
 | ||
|    лёгкостью использовать программу Vim в качестве редактора общего назначения.
 | ||
| 
 | ||
|    Важно помнить, что этот учебник предназначен для практического обучения.
 | ||
|    Это означает, что вы должны применять команды для того, чтобы как следует
 | ||
|    их изучить. Если вы просто прочитаете этот текст, то не запомните команды!
 | ||
| 
 | ||
|    Теперь, убедившись, что не включена клавиша `<CapsLock>`{normal},
 | ||
|    нажмите клавишу `j`{normal} несколько раз, так, чтобы урок 0 полностью
 | ||
|    поместился на экране.
 | ||
| 
 | ||
| #	    ВВОДНАЯ ЧАСТЬ
 | ||
| 
 | ||
| **Важно!**
 | ||
|     Выполняя задания уроков, вы будете изменять некоторый текст этих заданий,
 | ||
|     но эти изменения не будут сохранятся в файле. Так что не бойтесь что что‐то
 | ||
|     испортится; просто помните, что нажав клавишу [<ESC>](<Esc>) и затем клавишу
 | ||
|     [u](u) можно отменить последние сделанные изменения.
 | ||
| 
 | ||
| Это интерактивный учебник, и есть несколько важных моментов, о которых надо знать.
 | ||
| ‑ Если нажать клавишу [<ENTER>](<Enter>) когда каретка находится
 | ||
|   на [такой ссылке](holy-grail), то будет открыт связанный с ней раздел
 | ||
|   документации.
 | ||
| ‑ К тому же, если нажать клавишу [K](K) на любом слове, то будет выполнен поиск
 | ||
|   этого слова в документации.
 | ||
| - Также в ходе урока вам потребуется изменять текст, например,
 | ||
| как этот
 | ||
|   Если задание будет выполнено правильно, то значок ✗  справа изменится на ✓.
 | ||
|   Надеюсь, вы уже начинаете понимать насколько удобным может быть редактора Vim.
 | ||
| - Либо может быть предложено набрать команду, похожую на эту (объяснение далее):
 | ||
| ~~~ cmd
 | ||
| 	:help <ENTER>
 | ||
| ~~~
 | ||
| или нажать последовательность клавиш
 | ||
| ~~~ normal
 | ||
| 	<ESC>0f<SPACE>d3wP$P
 | ||
| ~~~
 | ||
| Текст, заключённый в угловые скобки (вроде `<ENTER>`{normal}), означает клавиши,
 | ||
| которые надо нажать на клавиатуре, а не текст который надо набирать.
 | ||
| 
 | ||
| Ну что ж, переходим к следующему уроку (используйте для этого клавишу `j`{normal}
 | ||
| для прокрутки окна вниз).
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.1.1. ПЕРЕМЕЩЕНИЕ КАРЕТКИ
 | ||
| 
 | ||
| ** Чтобы перемещать каретку в указанных направлениях, нажмите клавиши
 | ||
| 			`h`, `j`, `k`, `l`**
 | ||
| 
 | ||
|            ↑        *Подсказка.*
 | ||
|            k         Клавиша `h`{normal} слева и удобна для перемещения влево.
 | ||
|        ← h   l →     Клавиша `l`{normal} справа и удобна для перемещения вправо.
 | ||
|            j         Клавиша `j`{normal} похожа на стрелку »вниз».
 | ||
|            ↓
 | ||
|   1. Перемещайте каретку в разных направлениях, пока не ощутите уверенность.
 | ||
| 
 | ||
|   2. Удерживайте нажатой клавишу «вниз» (`j`{normal}) для беспрерывного
 | ||
|     перемещения каретки. Теперь вы знаете, как перейти к следующему уроку.
 | ||
| 
 | ||
|   3. Используя клавишу «вниз», то есть `j`{normal}, перейдите к уроку 1.1.2
 | ||
| 
 | ||
| **Совет.**
 | ||
|     Если вы не уверены в правильности набранного текста, нажмите клавишу
 | ||
|     `<ESC>`{normal}, чтобы переключить редактор в режим команд.
 | ||
|     После этого повторите набор.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Клавиши управления курсором (стрелки) также должны работать.
 | ||
|     Но учтите, что немного потренировавшись вы поймёте, что намного быстрее
 | ||
|     перемещать каретку клавишами  `h`{normal} `j`{normal} `k`{normal} `l`{normal} 
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.1.2. ЗАВЕРШЕНИЕ РАБОТЫ ПРОГРАММЫ  *1-1-2*
 | ||
| 
 | ||
| **ВНИМАНИЕ!** Перед выполнением описанных ниже действий, прочтите урок полностью!
 | ||
| 
 | ||
|   1. Нажмите клавишу `<ESC>`{normal} (чтобы убедиться, что включен режим команд).
 | ||
| 
 | ||
|   2. Наберите
 | ||
| 
 | ||
| 	`:q!`{vim} `<ENTER>`{normal}
 | ||
| 
 | ||
|      Это означает, что надо набрать три символа  : q ! и нажать клавишу <ВВОД>
 | ||
|      Исполнение этой команды вызовет завершение работы редактора БЕЗ СОХРАНЕНИЯ
 | ||
|      любых сделанных изменений.
 | ||
| 
 | ||
|   3. Снова запустите редактор Vim и повторно наберите команду, через которую вы
 | ||
|      открыли этот учебник. Это может быть
 | ||
| 
 | ||
| 	`:Tutor`{vim} `<ENTER>`{normal}
 | ||
| 
 | ||
|   4. Если уверены в том, что поняли смысл вышесказанного, выполните шаги
 | ||
|      с 1 до 3, чтобы завершить работу и снова запустить редактор.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     По команде [:q!](:q) `<ENTER>`{normal} будут сброшены сделанные изменения.
 | ||
|     Через несколько уроков вы узнаете как сохранять изменения в файл.
 | ||
| 
 | ||
|   5. Переместите каретку вниз к уроку [1.1.3](*1-1-3*).
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.1.3. РЕДАКТИРОВАНИЕ — УДАЛЕНИЕ ТЕКСТА  *1-1-3*
 | ||
| 
 | ||
| ** Чтобы удалить символ под кареткой, нажмите клавишу `x`{normal} **
 | ||
| 
 | ||
|   1. Переместите каретку к строке помеченной ✗.
 | ||
| 
 | ||
|   2. Чтобы исправить ошибки, перемещайте каретку, пока она не окажется над
 | ||
|      удаляемым символом.
 | ||
| 
 | ||
|   3. Нажмите клавишу [x](x) для удаления требуемого символа.
 | ||
| 
 | ||
|   4. Повторите шаги со 2 по 4, пока строка не будет исправлена.
 | ||
| 
 | ||
| От тттопота копытт пппыль ппо ппполю леттитт.
 | ||
| 
 | ||
|   5. Теперь, когда строка исправлена, переходите к уроку [1.1.4](*1-1-4*).
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     В ходе этих занятий не пытайтесь сразу всё запоминать, учитесь в процессе
 | ||
|     работы.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.1.4. РЕДАКТИРОВАНИЕ — ВСТАВКА ТЕКСТА  *1-1-4*
 | ||
| 
 | ||
| ** Чтобы вставить текст, нажмите клавишу `i`{normal} **
 | ||
| 
 | ||
|   1. Переместите каретку к первой строке помеченной ✗.
 | ||
| 
 | ||
|   2. Чтобы сделать первую строку идентичной второй, установите каретку на тот
 | ||
|      символ, ПЕРЕД которым следует вставить текст.
 | ||
| 
 | ||
|   3. Нажмите клавишу [i](i) и наберите текст, который требуется вставить.
 | ||
| 
 | ||
|   4. После исправления каждого ошибочного слова, нажмите клавишу `<ESC>`{normal}
 | ||
|      для переключения в режим команд.
 | ||
| 
 | ||
|      Повторите шаги со 2 по 4, пока предложение не будет исправлено полностью.
 | ||
| 
 | ||
| Часть текта в строке бесследно .
 | ||
| Часть текста в этой строке бесследно пропало.
 | ||
| 
 | ||
|   5. Когда освоите вставку текста, переходите к уроку [1.1.5](*1-1-5*).
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.1.5. РЕДАКТИРОВАНИЕ — ДОБАВЛЕНИЕ ТЕКСТА  *1-1-5*
 | ||
| 
 | ||
| ** Чтобы добавить текст, нажмите клавишу `A`{normal} **
 | ||
| 
 | ||
|   1. Переместите каретку к первой строке помеченной ✗.
 | ||
|      Сейчас неважно, на каком символе расположена каретка в этой строке.
 | ||
| 
 | ||
|   2. Нажмите клавишу [A](A) и наберите текст, который требуется добавить.
 | ||
| 
 | ||
|   3. После добавления текста нажмите клавишу `<ESC>`{normal} для возврата
 | ||
|      в режим команд.
 | ||
| 
 | ||
|   4. Переместите каретку на следующую строку, помеченную ✗
 | ||
|      и повторите шаги со 2 по 3 для исправления этой строки.
 | ||
| 
 | ||
| Часть текста в этой строке бессле
 | ||
| Часть текста в этой строке бесследно пропало.
 | ||
| Здесь также недостаёт час
 | ||
| Здесь также недостаёт части текста.
 | ||
| 
 | ||
|   5. Когда освоите добавление текста, переходите к уроку [1.1.6](*1-1-6*).
 | ||
| 
 | ||
| 
 | ||
| #	    УРОК 1.1.6. РЕДАКТИРОВАНИЕ И ЗАПИСЬ ФАЙЛА  *1-1-6*
 | ||
| 
 | ||
|  ** Чтобы сохранить файл и закрыть редактор, используйте команды `:wq`{vim} **
 | ||
| 
 | ||
|  **ВНИМАНИЕ!** Перед выполнением описанных ниже действий, прочтите урок полностью!
 | ||
| 
 | ||
|   1. Завершите работу редактора Vim, как указано в уроке [1.1.2](*1-1-2*)
 | ||
|      `:q!`{vim}
 | ||
|      Если есть доступ к другому терминалу, то там можете сделать следующее:
 | ||
| 
 | ||
|   2. В приглашении командной оболочки введите команду
 | ||
| ~~~ sh
 | ||
|     $ vim tutor
 | ||
| ~~~
 | ||
|      где vim - команда для запуска редактора Vim, а tutor - наименование
 | ||
|      файла для редактирования. Укажите такой файл, который можно изменять.
 | ||
| 
 | ||
|   3. Вставляйте и удаляйте текст, как описано в предыдущих уроках.
 | ||
| 
 | ||
|   4. Сохраните этот изменённый файл и завершите работу программы Vim,
 | ||
|      набрав команду
 | ||
| ~~~ cmd
 | ||
|     :wq
 | ||
| ~~~
 | ||
|   5. Если вы вышли из vimtutor на шаге 1, перезапустите vimtutor и переходите
 | ||
|      далее к резюме.
 | ||
| 
 | ||
|   6. После того как вы прочли и поняли вышесказанное, выполните описанные шаги.
 | ||
| 
 | ||
| 
 | ||
| #	    РЕЗЮМЕ УРОКА 1.1
 | ||
| 
 | ||
|   1. Каретку можно перемещать либо клавишами со стрелками, либо клавишами hjkl.
 | ||
| 	h (влево)	j (вниз)	k (вверх)	l (вправо)
 | ||
| 
 | ||
|   2. Чтобы запустить редактор Vim из приглашения командной оболочки, наберите
 | ||
| ~~~ sh
 | ||
|     $ vim ФАЙЛ
 | ||
| ~~~
 | ||
|   3. Чтобы завершить работу редактора Vim, выполните одно из следующих:
 | ||
| 	`<ESC>`{normal} `:q!`{vim} `<ENTER>`{normal}
 | ||
|     по этой команде не будут сохранены изменения;
 | ||
| 			или
 | ||
| 	`<ESC>`{normal} `:wq`{vim} `<ENTER>`{normal}
 | ||
|     по этой команде будут сохранены изменения.
 | ||
| 
 | ||
|   4. Чтобы удалить символ под кареткой, нажмите клавишу `x`{normal}.
 | ||
| 
 | ||
|   5. Чтобы вставить текст перед кареткой:
 | ||
| 	`i`{normal} вставляемый текст `<ESC>`{normal}
 | ||
|      Чтобы добавить текст в конце строки:
 | ||
| 	`A`{normal} добавляемый текст `<ESC>`{normal}
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     По нажатию клавиши `<ESC>`{normal} будет выполнено переключение редактора
 | ||
|     в режим команд с прерыванием обработки любой ранее набранной команды.
 | ||
| 
 | ||
| Теперь переходите к уроку [1.2](*1-2-1*).
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.2.1. КОМАНДЫ УДАЛЕНИЯ  *1-2-1*
 | ||
| 
 | ||
|      ** Чтобы удалить слово под кареткой, используйте команду `dw`{vim} **
 | ||
| 
 | ||
|   1. Переключите редактор в режим команд, нажав клавишу `<ESC>`{normal}.
 | ||
| 
 | ||
|   2. Переместите каретку к строке помеченной ✗
 | ||
| 
 | ||
|   3. Установите каретку на начало слова, которое следует удалить.
 | ||
| 
 | ||
|   4. Наберите [dw](dw) для удаления этого слова.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     При наборе оператора `d`{normal} он отобразится в самой нижней строке справа,
 | ||
|     и программа будет ожидать ввода следующей команды,
 | ||
|     в данном случае - `w`{normal} (объект слово).
 | ||
|     Если что-то не получается, нажмите клавишу `<ESC>`{normal} и начните сначала.
 | ||
| 
 | ||
| Несколько слов рафинад в этом предложении автокран излишни.
 | ||
| 
 | ||
|   5. Повторите шаги 3 и 4, пока не исправите все ошибки, и переходите
 | ||
|      к уроку [1.2.2](*1-2-2*).
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.2.2. ЕЩЁ ОДНА КОМАНДА УДАЛЕНИЯ  *1-2-2*
 | ||
| 
 | ||
| ** Чтобы удалить текст до конца строки, используйте команду `d$`{vim} **
 | ||
| 
 | ||
|   1. Переключите редактор в режим команд, нажав клавишу `<ESC>`{normal}.
 | ||
| 
 | ||
|   2. Переместите каретку к строке помеченной ✗
 | ||
| 
 | ||
|   3. Установите каретку после корректного предложения (ПОСЛЕ первой точки).
 | ||
| 
 | ||
|   4. Наберите [d$](d$) для удаления остатка строки.
 | ||
| 
 | ||
| Кто-то набрал окончание этой строки дважды. окончание этой строки дважды.
 | ||
| 
 | ||
|   5. Чтобы лучше разобраться в том как это происходит,
 | ||
|      обратитесь к уроку [1.2.3](*1-2-3*).
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.2.3. ОПЕРАТОРЫ И ОБЪЕКТЫ  *1-2-3*
 | ||
| 
 | ||
|   Многие команды, изменяющие текст, являются составными и формируются
 | ||
|   из [оператора](operator) и [объекта](navigation), к которому применяется
 | ||
|   этот оператор.
 | ||
|   Так, например, формат команды удаления с оператором [d](d) следующий:
 | ||
| 
 | ||
|   	d   объект
 | ||
|   где
 | ||
|     d      - оператор удаления;
 | ||
|     объект - область текста (указаны ниже), к которой будет применён оператор.
 | ||
| 
 | ||
|   Краткий перечень объектов:
 | ||
|     [w](w) - от позиции каретки до конца слова, включая последующий пробел;
 | ||
|     [e](e) - от позиции каретки до конца слова, исключая последующий пробел;
 | ||
|     [$]($) - от позиции каретки до конца строки, включая последний символ.
 | ||
| 
 | ||
|   Таким образом, ввод команды `de`{normal} вызывает удаление текста
 | ||
|   от позиции каретки до конца слова.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Если в режиме команд, без ввода оператор, нажать клавишу с символом,
 | ||
|     с которым ассоциирован объект, то каретка будет перемещена так, как
 | ||
|     указано в перечне объектов.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.2.4. ПРИМЕНЕНИЕ СЧЁТЧИКА СОВМЕСТНО С ОБЪЕКТАМИ
 | ||
| 
 | ||
| ** Чтобы перемещение каретка выполнялось необходимое количество раз,
 | ||
| 		укажите перед объектом требуемое число **
 | ||
| 
 | ||
|   1. Установите каретку на начало строки помеченной ✓
 | ||
| 
 | ||
|   2. Наберите `2w`{normal} для перемещения каретки вперёд к началу второго слова.
 | ||
| 
 | ||
|   3. Наберите `3e`{normal} для перемещения каретки вперёд к концу третьего слова.
 | ||
| 
 | ||
|   4. Наберите `0`{normal} ([ноль](0)) для перемещения каретки к началу строки.
 | ||
| 
 | ||
|   5. Повторите шаги 2 и 3 с различными значениями чисел.
 | ||
| 
 | ||
| Обычная строка из слов, чтобы вы на ней потренировались перемещать каретку.
 | ||
| 
 | ||
|   6. Когда освоите это, переходите к уроку [1.2.5.](*1-2-5*)
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.2.5. ПРИМЕНЕНИЕ СЧЁТЧИКА ДЛЯ МНОЖЕСТВЕННОГО УДАЛЕНИЯ  *1-2-5*
 | ||
| 
 | ||
| ** Чтобы применить оператор несколько раз, укажите число требуемых повторов **
 | ||
| 
 | ||
|   Используя приведённые ранее составные команды удаления и перемещения,
 | ||
|   укажите перед объектом число повторов выполнения операции удаления.
 | ||
| 
 | ||
| 	 d   число   объект
 | ||
| 
 | ||
|   1. Установите каретку на первом слове из прописных букв в строке ✗
 | ||
| 
 | ||
|   2. Наберите `d2w`{normal} для удаления двух идущих друг за другом слов
 | ||
|      из прописных букв.
 | ||
| 
 | ||
|   3. Повторите шаги 1 и 2 с указанием других числовых значений, чтобы удалить
 | ||
|      группы слов из прописных букв одной командой.
 | ||
| 
 | ||
| Эта АБВ ГД строка ЕЖЗИ КЛ МНО очищена от П РС ТУФ лишних слов.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.2.6. ОПЕРАЦИИ СО СТРОКАМИ
 | ||
| 
 | ||
| ** Чтобы удалить строку целиком, используйте команду `dd`{normal} **
 | ||
| 
 | ||
|   Так как часто требуется выполнять удаление всей строки целиком, создатели
 | ||
|   редактора решили облегчить этот процесс, и предложили для этого просто
 | ||
|   дважды нажать на клавишу с буквой d.
 | ||
| 
 | ||
|   1. Переместите каретку к строке номер два.
 | ||
|   2. Наберите [dd](dd) для удаления строки.
 | ||
|   3. Теперь переместите каретку к строке номер четыре.
 | ||
|   4. Наберите `2dd`{normal} для удаления двух строк подряд.
 | ||
| 
 | ||
| 1)  Летом я хожу на стадион,
 | ||
| 2)  О, как внезапно кончился диван!
 | ||
| 3)  Я болею за «Зенит», «Зенит» — чемпион!
 | ||
| 4)  Печально я гляжу на наше поколенье!
 | ||
| 5)  Его грядущее — иль пусто, иль темно...
 | ||
| 6)  Я сижу на скамейке в ложе «Б»
 | ||
| 7)  И играю на большой жестяной трубе
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
|   Дублирование оператора для обработки целой строки применяется и с другими
 | ||
|   операторами, о которых говорится далее.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.2.7. КОМАНДА ОТМЕНЫ
 | ||
| 
 | ||
| ** Чтобы отменить результат предыдущей команды, нажмите клавишу `u`{normal}
 | ||
|  Чтобы отменить правки для всей строки, нажмите клавишу `U`{normal} **
 | ||
| 
 | ||
|   1. Установите каретку на первой ошибке, в строке помеченной ✗
 | ||
| 
 | ||
|   2. Нажмите клавишу `x`{normal} для удаления первого ошибочного символа.
 | ||
| 
 | ||
|   3. Теперь нажмите клавишу `u`{normal} для отмены последней выполненной команды.
 | ||
| 
 | ||
|   4. Исправьте все ошибки в строке, используя команду `x`{normal}.
 | ||
| 
 | ||
|   5. Теперь нажмите клавишу `U`{normal}, чтобы вернуть всю строку
 | ||
|      в исходное состояние.
 | ||
| 
 | ||
|   6. Нажмите клавишу `u`{normal} несколько раз для отмены команды `U`{normal}
 | ||
|      и предыдущих команд.
 | ||
| 
 | ||
|   7. Теперь нажмите клавиши `<CTRL-r>`{normal} (т. е. удерживая клавишу `<CTRL>`,
 | ||
|      нажмите клавишу `r`) несколько раз для возврата действий команд.
 | ||
| 
 | ||
| Испрравьте оошибки в этойй строке и вернитте их сс помощьью команды «отмена».
 | ||
| 
 | ||
|   8. Это очень нужные и полезные команды.
 | ||
| 
 | ||
| Далее переходите к резюме урока [1.2](*1-2*).
 | ||
| 
 | ||
| 
 | ||
| #	    РЕЗЮМЕ УРОКА 1.2
 | ||
| 
 | ||
|   1. Чтобы удалить слово, установите каретку в его начало и наберите  `dw`{normal}
 | ||
| 
 | ||
|   2. Чтобы удалить текст от позиции каретки до конца слова, наберите  `de`{normal}
 | ||
| 
 | ||
|   3. Чтобы удалить текст от позиции каретки до конца строки, наберите `d$`{normal}
 | ||
| 
 | ||
|   4. Чтобы удалить всю строку целиком, наберите			      `dd`{normal}
 | ||
| 
 | ||
|   5. Чтобы переместить каретку за один раз на некоторое количество объектов,
 | ||
|      укажите их число, например, `2w`{normal}
 | ||
| 
 | ||
|   6. Формат команд изменения:
 | ||
|             оператор	[число]   объект
 | ||
|      где
 | ||
|       оператор - необходимые действия, например, [d](d) для удаления;
 | ||
|       [число]  - количество подпадающих под действие оператора объектов,
 | ||
| 		 если не указано, то один объект;
 | ||
|       объект   - на что воздействует оператор, например, [w](w) (слово),
 | ||
| 		 [$]($) (всё, что есть до конца строки) и т. п.
 | ||
| 
 | ||
|   7. Чтобы переместить каретку к началу строки, нажмите клавишу [0](0) (ноль)
 | ||
| 
 | ||
|   8. Чтобы отменить предшествующие действие, нажмите `u`{normal}  (строчная u)
 | ||
|      Чтобы отменить все изменения в строке, нажмите  `U`{normal}  (прописная U)
 | ||
|      Чтобы вернуть отменённые изменения, нажмите     `<CTRL-r>`{normal}
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.3.1. КОМАНДА ВСТАВКИ
 | ||
| 
 | ||
| ** Чтобы вставить последний удалённый текст, наберите команду `p`{normal} **
 | ||
| 
 | ||
|   1. Переместите каретку к первой строке помеченной ✓
 | ||
| 
 | ||
|   2. Наберите `dd`{normal}, чтобы удалить строку, при этом она будет
 | ||
|      автоматически помещена в специальный регистр редактора Vim.
 | ||
| 
 | ||
|   3. Установите каретку на строку ВЫШЕ той, в которой следует вставить
 | ||
|      удалённую строку.
 | ||
| 
 | ||
|   4. Убедитесь, что программа в режиме команд и нажмите клавишу [p](p)
 | ||
|      для вставки строки ниже позиции каретки.
 | ||
| 
 | ||
|   5. Повторите шаги со 2 по 4, пока не расставите все строки в нужном порядке.
 | ||
| 
 | ||
| г) И лучше выдумать не мог.
 | ||
| б) Когда не в шутку занемог,
 | ||
| в) Он уважать себя заставил
 | ||
| а) Мой дядя самых честных правил
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.3.2. КОМАНДА ЗАМЕНЫ
 | ||
| 
 | ||
| ** Чтобы заменить символ под кареткой, наберите `r`{normal} и заменяющий символ **
 | ||
| 
 | ||
|   1. Переместите каретку к первой строке помеченной ✗
 | ||
| 
 | ||
|   2. Установите каретку так, чтобы она находилась над первым ошибочным символом.
 | ||
| 
 | ||
|   3. Нажмите клавишу [r](r) и затем наберите символ, исправляющий ошибку.
 | ||
| 
 | ||
|   4. Повторите шаги 2 и 3, пока первая строка не будет соответствовать второй.
 | ||
| 
 | ||
| В момегт набтра этой чтроки кое0кто с трудом попвдал по клваишам!
 | ||
| В момент набора этой строки кое-кто с трудом попадал по клавишам!
 | ||
| 
 | ||
|   5. Теперь переходите к уроку [1.3.3](*1-3-3*).
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Помните, что вы должны учиться в процессе работы, а не просто зубрить.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.3.3. ОПЕРАТОР ИЗМЕНЕНИЯ  *1-3-3*
 | ||
| 
 | ||
| ** Чтобы изменить окончание слова, наберите команду `ce`{normal} **
 | ||
| 
 | ||
|   1. Переместите каретку к первой строке помеченной ✗
 | ||
| 
 | ||
|   2. Установите каретку над буквой «o» в слове «сола».
 | ||
| 
 | ||
|   3. Наберите команду `ce`{normal}  и исправьте слово
 | ||
|      (в данном случае, наберите «лов»).
 | ||
| 
 | ||
|   4. Нажмите клавишу `<ESC>`{normal} и переместите каретку к следующей ошибке
 | ||
|      (к первому символу, начиная с которого надо изменить окончание слова).
 | ||
| 
 | ||
|   5. Повторите шаги 3 и 4 пока первая строка не будет соответствовать второй.
 | ||
| 
 | ||
| Несколько сола в эьгц строке тпгшцбь истравыиться.
 | ||
| Несколько слов в этой строке требуется исправить.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Обратите внимание, что по команде `ce`{normal} не только удаляется часть
 | ||
|     слова, но и происходит переключение редактора в режим вставки.
 | ||
|     По команде `cc`{normal} будет выполнятся то же самое, но для целой строки.
 | ||
| 
 | ||
| 
 | ||
| # УРОК 1.3.4. ЕЩЁ НЕСКОЛЬКО СПОСОБОВ РАБОТЫ С ОПЕРАТОРОМ ИЗМЕНЕНИЯ `c`{normal}
 | ||
| 
 | ||
| ** К оператору изменения применимы те же объекты, что и к оператору удаления **
 | ||
| 
 | ||
|   1. Оператор изменения работает аналогично оператору удаления. Формат команды:
 | ||
| 
 | ||
|        c   [число]   объект
 | ||
| 
 | ||
|   2. Объекты - это то же самое, что и ранее: `w`{normal} (слово),
 | ||
|      `$`{normal} (конец строки) и т. п.
 | ||
| 
 | ||
|   3. Переместите каретку к первой строке помеченной ✗
 | ||
| 
 | ||
|   4. Установите каретку на первой ошибке.
 | ||
| 
 | ||
|   5. Наберите `c$`{normal} и отредактируйте первую строку так, чтобы она
 | ||
|      совпадала со второй, после чего нажмите клавишу `<ESC>`{normal}.
 | ||
| 
 | ||
| Окончание этой строки нужно сделать похожим как во второй строке.
 | ||
| Окончание этой строки нужно исправить через команду c$.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Клавиша `<BACKSPACE>`{normal} используется для исправления при наборе текста.
 | ||
| 
 | ||
| 
 | ||
| #	    РЕЗЮМЕ УРОКА 1.3
 | ||
| 
 | ||
|   1. Чтобы вставить текст, который был только что удалён, наберите команду [p](p).
 | ||
|      Текст будет вставлен ПОСЛЕ позиции каретки (если была удалена строка,
 | ||
|      то она будет помещена в строке ниже строки с кареткой).
 | ||
| 
 | ||
|   2. Чтобы заменить символ под кареткой, наберите команду [r](r) и затем
 | ||
|      заменяющий символ.
 | ||
| 
 | ||
|   3. [Операторы изменения](c) изменяют указанный объект текста от позиции каретки
 | ||
|      до конечной точки перемещения.
 | ||
|      Например, по команде `ce`{normal} можно изменить текст от позиции каретки
 | ||
|      до конца слова, а по команде `c$`{normal} - до конца строки.
 | ||
| 
 | ||
|   4. Формат команд изменения:
 | ||
| 
 | ||
| 	 c   [число]   объект
 | ||
| 
 | ||
|      где c - оператор изменения;
 | ||
| 	 [число] - количество изменяемых объектов (необязательная часть);
 | ||
|          объект - объект текста, который будет изменён.
 | ||
| 
 | ||
| Теперь переходите к следующему уроку.
 | ||
| 
 | ||
| 
 | ||
| #	    УРОК 1.4.1. ИНФОРМАЦИЯ О ФАЙЛЕ И ПОЗИЦИЯ КАРЕТКИ
 | ||
| 
 | ||
| ** Чтобы получить информацию о файле и позиции каретки, нажмите `<CTRL-g>`{normal}
 | ||
|  Чтобы переместить каретку к заданной строке в файле, нажмите `G`{normal} **
 | ||
| 
 | ||
|   **ВНИМАНИЕ!** Прочитайте весь урок, прежде чем выполнять любые действия!
 | ||
| 
 | ||
|   1. Удерживая клавишу `<CTRL>`{normal}, нажмите клавишу `g`{normal}.
 | ||
|      Внизу экрана появится сообщение с наименованием файла и номером строки,
 | ||
|      в которой находится каретка. Запомните этот номер строки,
 | ||
|      он потребуется на шаге 3.
 | ||
| 
 | ||
|   **Примечание.**
 | ||
|     Позиция каретки может отображаться в правом нижнем углу окна программы,
 | ||
|     если установлен параметр ['ruler']('ruler').
 | ||
| 
 | ||
|   2. Нажмите клавишу [G](G) для перемещения каретки на последнюю строку файла.
 | ||
|      Теперь наберите [gg](gg) для перемещения каретки на первую строку файла.
 | ||
| 
 | ||
|   3. Наберите номер строки, которой был получен на шаге 1, и нажмите клавишу
 | ||
|      `G`{normal}. Каретка будет перемещена в ту строку, где она находилась,
 | ||
|      когда в первый раз были нажаты клавиши `<CTRL-g>`{normal}.
 | ||
| 
 | ||
|   4. Если вы запомнили всё вышесказанное, выполните шаги с 1 по 3.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.4.2. КОМАНДЫ ПОИСКА
 | ||
| 
 | ||
| ** Чтобы что-то найти, наберите команду `/`{normal} и введите искомую фразу **
 | ||
| 
 | ||
|   1. В режиме команд наберите символ `/`{normal}.
 | ||
|      Обратите внимание, что этот символ будет отображаться внизу экрана. Так же,
 | ||
|      как и при наборе команды `:`{normal}
 | ||
| 
 | ||
|   2. Теперь наберите ошшшибка `<ENTER>`{normal}.
 | ||
|      Это то слово, которое требуется найти.
 | ||
| 
 | ||
|   3. Чтобы повторить поиск искомого слова, просто нажмите клавишу [n](n).
 | ||
|      Чтобы искать это слово в обратном направлении, нажмите клавиши [N](N).
 | ||
| 
 | ||
|   4. Если требуется сразу выполнить поиск в обратном направлении, используйте
 | ||
|      команду [?](?) вместо команды `/`{normal}.
 | ||
| 
 | ||
|   5. Чтобы вернуться туда, откуда был начат поиск, нажмите несколько раз
 | ||
|      клавиши `<CTRL-o>`{normal}.
 | ||
|      Для перехода вперёд, используйте команду `<CTRL-i>`{normal}.
 | ||
| 
 | ||
| "ошшшибка" это не способ написания слова "ошибка";  ошшшибка — это ошибка.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Если будет достигнут конец файла, то поиск будет продолжен от начала файла.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.4.3. ПОИСК ПАРНЫХ СКОБОК
 | ||
| 
 | ||
| ** Чтобы найти парную скобку для (, [ или {, наберите команду `%`{normal} **
 | ||
| 
 | ||
|   1. Поместите каретку на любой из скобок (, [ или { в строке помеченной ✓
 | ||
| 
 | ||
|   2. Теперь нажмите на клавиатуре клавишу с символом [%](%).
 | ||
| 
 | ||
|   3. Каретка будет перемещена на парную скобку для той скобки, на которой
 | ||
|      установлена каретка.
 | ||
| 
 | ||
|   4. Наберите `%`{normal} для возврата каретки назад к первой парной скобке.
 | ||
| 
 | ||
| В этой ( строке есть такие (, такие [ ] и { такие } скобки. ))
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Это очень удобно при отладке программ, когда в коде пропущены скобки!
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.4.4. СПОСОБ ЗАМЕНЫ СЛОВ
 | ||
| 
 | ||
| ** Чтобы «что-то» заменить «чем-то», наберите команду `:s/что/чем/g`{vim} **
 | ||
| 
 | ||
|   1. Переместите каретку к строке помеченной ✗
 | ||
| 
 | ||
|   2. Наберите
 | ||
| ~~~ cmd
 | ||
| 	:s/уводю/увожу/
 | ||
| ~~~
 | ||
|      Обратите внимание на то, что по этой команде будет замена только первого
 | ||
|      найденного вхождение в строке.
 | ||
| 
 | ||
|   3. Теперь наберите
 | ||
| ~~~ cmd
 | ||
| 	:s/уводю/увожу/g
 | ||
| ~~~
 | ||
|      Здесь добавленный [флаг](:s_flags) 'g' означает замена во всей строке.
 | ||
|      Будет выполнена замена всех найденных в строке совпадений.
 | ||
| 
 | ||
| Я уводю к отверженным селеньям, я уводю сквозь вековечный стон, я уводю к забытым поколеньям.
 | ||
| 
 | ||
|   4. Чтобы заменить все вхождения искомого слова в каком-то диапазоне строк,
 | ||
|      наберите
 | ||
| ~~~ cmd
 | ||
| 	:#,#s/что/чем/g
 | ||
| ~~~
 | ||
|      где #,# - номер начальной и конечной строки диапазона,
 | ||
|      в котором будет выполнена замена.
 | ||
| 
 | ||
|      Наберите
 | ||
| ~~~ cmd
 | ||
| 	:%s/что/чем/g
 | ||
| ~~~
 | ||
|      чтобы заменить все вхождения во всём файле.
 | ||
| 
 | ||
|      Наберите
 | ||
| ~~~ cmd
 | ||
| 	:%s/что/чем/gc
 | ||
| ~~~
 | ||
|      чтобы выдавался запрос подтверждения перед каждой заменой.
 | ||
| 
 | ||
| 
 | ||
| #	    РЕЗЮМЕ УРОКА 1.4
 | ||
| 
 | ||
|   1. По приведённым ниже командам будет выполнено:
 | ||
|      `<CTRL-g>`{normal} - вывод информации о файле и текущей позиции каретки
 | ||
|      в этом файле
 | ||
|      `G`{normal} - переход на последнюю строку файла
 | ||
|      номер и `G`{normal} - переход на строку с указанным номером
 | ||
|      `gg`{normal} - переход на первую строку файла
 | ||
| 
 | ||
|   2. При вводе символа `/`{normal} с последующим набором слова, будет выполнен
 | ||
|      поиск этого слова ВПЕРЁД по тексту.
 | ||
|      При вводе символа `?`{normal} с последующим набором слова, будет выполнен
 | ||
|      поиск этого слова НАЗАД по тексту.
 | ||
|      После показа первого совпадения, нажмите `n`{normal} для перехода
 | ||
|      к следующему слову в том же направлении поиска или `N`{normal} для поиска
 | ||
|      в противоположном направлении.
 | ||
|      При нажатии клавиш `<CTRL-o>`{normal} будет возврат к предыдущему слову,
 | ||
|      а при нажатии клавиш `<CTRL-i>`{normal} будет переход к ранее найденному
 | ||
|      слову.
 | ||
| 
 | ||
|   3. При нажатии `%`{normal}, когда каретка на одной из скобок ( ), [ ] или { },
 | ||
|      будет найдена её парная скобка.
 | ||
| 
 | ||
|   4. Чтобы заменить первое найденное слово в строке, наберите
 | ||
| ~~~ cmd
 | ||
| 	:s/что/чем
 | ||
| ~~~
 | ||
|      Чтобы заменить все найденные слова в строке, наберите
 | ||
| ~~~ cmd
 | ||
| 	:s/что/чем/g
 | ||
| ~~~
 | ||
|      Чтобы заменить в указанными диапазоне строк, наберите
 | ||
| ~~~ cmd
 | ||
| 	:#,#s/что/чем/g
 | ||
| ~~~
 | ||
|      Чтобы заменить все найденные слова в файле, наберите
 | ||
| ~~~ cmd
 | ||
| 	:%s/что/чем/g
 | ||
| ~~~
 | ||
|      Чтобы запрашивалось подтверждение для каждой замены, добавьте флаг 'c'
 | ||
| ~~~ cmd
 | ||
| 	:%s/что/чем/gc
 | ||
| ~~~
 | ||
| 
 | ||
| #	    Урок 1.5.1. КАК ВЫЗВАТЬ ИЗ РЕДАКТОРА ВНЕШНЮЮ КОМАНДУ
 | ||
| 
 | ||
| ** Чтобы вызвать команду командной оболочки, наберите в редакторе `:!`{vim} **
 | ||
| 
 | ||
|   1. Наберите уже знакомую команду `:`{normal}, чтобы каретка была установлена
 | ||
|      в командной строке редактора и можно было ввести необходимую команду.
 | ||
| 
 | ||
|   2. Теперь наберите символ [!](!cmd) (восклицательный знак). По этой команде
 | ||
|      будет вызвана указанная следующей внешняя команда командной оболочки.
 | ||
| 
 | ||
|   3. Например, наберите "ls" сразу после "!" и нажмите `<ENTER>`{normal}.
 | ||
|      Будет выведен перечень файлов в текущем каталоге. То есть будет выполнено
 | ||
|      точно то же самое, как если бы ввести команду `ls` в приглашении командной
 | ||
|      оболочки.
 | ||
|      Если в системе неподдерживается команда `ls`, наберите команду `:!dir`{vim}
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Таким способом можно выполнить любую внешнюю команду,
 | ||
|     в том числе и с указанием необходимых аргументов этой команды.
 | ||
| 
 | ||
| **Важно.**
 | ||
|     После ввода команды, начинающейся с `:`{vim}, должна быть нажата клавиша
 | ||
|     `<ENTER>`{normal}.
 | ||
|     В дальнейшем это может не указываться отдельно, но подразумеваться.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.5.2. КАК ЗАПИСАТЬ ФАЙЛ
 | ||
| 
 | ||
| ** Чтобы сохранить файл со всеми изменениями в тексте, наберите `:w`{vim} ФАЙЛ **
 | ||
| 
 | ||
|   1. Наберите `:!dir`{vim} или `:!ls`{vim} для получения перечня файлов
 | ||
|      в текущем каталоге.
 | ||
|      Как вы помните, после набора команды нажмите клавишу `<ENTER>`{normal}
 | ||
| 
 | ||
|   2. Придумайте название для файла, которое ещё не существует, например, «TEST».
 | ||
| 
 | ||
|   3. Теперь наберите
 | ||
| ~~~ cmd
 | ||
| 	:w TEST
 | ||
| ~~~
 | ||
|      (здесь TEST - это придуманное вами название файла).
 | ||
| 
 | ||
|   4. По этой команде будет полностью сохранён текущий файл («tutor») под новым
 | ||
|      название «TEST». Чтобы проверить это, снова наберите команду `:!dir`{vim}
 | ||
|      или `:!ls`{vim}  и просмотрите содержимое каталога.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Если завершить работу редактора Vim и затем запустить его снова с файлом
 | ||
|     TEST (т. е. набрать команду `vim TEST`), этот файл будет точной копией
 | ||
|     учебника в тот момент, когда он был сохранён.
 | ||
| 
 | ||
|   5. Теперь удалите этот файл, набрав в редакторе команду
 | ||
| ~~~ cmd
 | ||
| 	:!del TEST
 | ||
| ~~~
 | ||
|      (для ОС Windows) или
 | ||
| ~~~ cmd
 | ||
| 	:!rm TEST
 | ||
| ~~~
 | ||
|      (для UNIX-подобных ОС)
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.5.3. ВЫБОРОЧНАЯ ЗАПИСЬ СТРОК
 | ||
| 
 | ||
| ** Чтобы сохранить часть файла, нажмите клавишу `v`{normal}, выделите строки
 | ||
| 			 и наберите команду `:w ФАЙЛ`{vim} **
 | ||
| 
 | ||
|   1. Переместите каретку на эту строку.
 | ||
| 
 | ||
|   2. Нажмите клавишу [v](v) и переместите каретку ниже к строке с пятым пунктом.
 | ||
|      Обратите внимание, что текст подсвечен.
 | ||
| 
 | ||
|   3. Нажмите клавишу с символом `:`{normal} и внизу экрана появится
 | ||
| 
 | ||
| 	`:'<,'>`{vim}
 | ||
| 
 | ||
|   4. Наберите команду
 | ||
| 
 | ||
| 	`w TEST`{vim}
 | ||
| 
 | ||
|      (здесь TEST - наименование файла, который ещё не существует).
 | ||
|      В командной строке должно быть
 | ||
| 
 | ||
| 	`:'<,'>w TEST`{vim}
 | ||
| 
 | ||
|      и нажмите клавишу <ENTER>
 | ||
| 
 | ||
|   5. По этой команде выбранные строки будут записаны в файл «TEST». Убедитесь в
 | ||
|      наличии этого файла, воспользовавшись командой `:!dir`{vim} или `:!ls`{vim}.
 | ||
|      Не удаляйте этот файл, он потребуется на следующем уроке.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     По нажатию клавиши [v](v) выполняется переключение в визуальный режим.
 | ||
|     Чтобы изменить размер выбранной области, нужно переместить каретку.
 | ||
|     К выделенному фрагменту можно применить любой оператор, например, `d`{normal}
 | ||
|     для его удаления.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.5.4. СЧИТЫВАНИЕ И ОБЪЕДИНЕНИЕ ФАЙЛОВ
 | ||
| 
 | ||
| ** Чтобы вставить содержащийся в файле текст, наберите `:r ФАЙЛ`{vim} **
 | ||
| 
 | ||
|   1. Установите каретку над этой строкой.
 | ||
| 
 | ||
| **Внимание!**
 | ||
|     После выполнения описанного в пункте 2 вы увидите текст из урока 1.5.3.
 | ||
|     Переместите каретку вниз по тексту до текущего урока.
 | ||
| 
 | ||
|   2. Теперь считайте содержимое файла TEST, используя команду
 | ||
| 
 | ||
| 	`:r TEST`{vim}
 | ||
| 
 | ||
|      здесь TEST - это наименование файла.
 | ||
|      Файл будет считан, и его содержимое помещено ниже строки с кареткой.
 | ||
| 
 | ||
|   3. Для проверки, что содержимое файла было вставлено, переместите каретку
 | ||
|      вверх по тексту и удостоверьтесь, что теперь здесь два урока 1.5.3. -
 | ||
|      исходный и из файла TEST.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Вставить можно и результат внешней команды. Например, по команде
 | ||
| 
 | ||
| 	`:r !ls`{vim}
 | ||
| 
 | ||
|     будет получен вывод команды `ls` и вставлен ниже позиции каретки.
 | ||
| 
 | ||
| 
 | ||
| #	    РЕЗЮМЕ УРОКА 1.5
 | ||
| 
 | ||
|   1. По команде [:!command](:!cmd) будет исполнена указанная внешняя команда.
 | ||
| 
 | ||
|       Некоторые полезные примеры:
 | ||
|    (Windows)		(UNIX)
 | ||
|     `:!dir`{vim}	 `:!ls`{vim}      - вывести перечень файлов в каталоге;
 | ||
|     `:!del ФАЙЛ`{vim}	 `:!rm ФАЙЛ`{vim} - удалить файл с указанным названием.
 | ||
| 
 | ||
|   2. По команде [:w](:w) ФАЙЛ — текущий редактируемый файл будет записан
 | ||
|      с указанным наименованием.
 | ||
| 
 | ||
|   3. Используя команды [v](v), перемещение каретки и `:w ФАЙЛ`{vim} — можно
 | ||
|      сохранить визуально выделенные строки в файл с указанным наименованием.
 | ||
| 
 | ||
|   4. По команде [:r](:r) ФАЙЛ — будет прочитан файл с указанным наименованием
 | ||
|      и его содержимое помещено ниже позиции каретки.
 | ||
| 
 | ||
|   5. По команде [:r !dir](:r!) — будет получен вывод команды `dir` и помещён
 | ||
|      ниже позиции каретки.
 | ||
| 
 | ||
| 
 | ||
| #	    УРОК 1.6.1. КОМАНДЫ ДЛЯ СОЗДАНИЯ СТРОК
 | ||
| 
 | ||
| ** Чтобы открыть новую строку с переходом в режим вставки, наберите `o`{normal} **
 | ||
| 
 | ||
|   1. Переместите каретку вниз, к первой строке помеченной ✓
 | ||
| 
 | ||
|   2. Нажмите клавишу `o`{normal} для того, чтобы создать [пустую строку](o) НИЖЕ
 | ||
|      позиции каретки и переключить редактор в режим вставки.
 | ||
| 
 | ||
|   3. Теперь наберите какой-нибудь текст и нажмите клавишу `<ESC>`{normal} для
 | ||
|      выхода из режима вставки.
 | ||
| 
 | ||
| При нажатии `o`{normal}, ниже будет открыта новая пустая строка в режиме вставки.
 | ||
| 
 | ||
|   4. Для создания строки ВЫШЕ позиции каретки, наберите прописную букву [O](O),
 | ||
|      вместо строчной буквы `o`{normal}. Попробуйте это сделать для строки ниже.
 | ||
| 
 | ||
| Создайте новую строку над этой, поместив сюда каретку и нажав клавишу `O`{normal}.
 | ||
| 
 | ||
| 
 | ||
| #	    УРОК 1.6.2. КОМАНДА ДЛЯ ДОБАВЛЕНИЯ ТЕКСТА
 | ||
| 
 | ||
| ** Чтобы вставить текст после позиции каретки, наберите `a`{normal} **
 | ||
| 
 | ||
|   1. Переместите каретку вниз, в начало первой строки помеченной ✗
 | ||
| 
 | ||
|   2. Нажмите клавишу `e`{normal}, пока каретка не окажется на последнем символе
 | ||
|      слова «стро».
 | ||
| 
 | ||
|   3. Нажмите клавишу `a`{normal} для [добавления](a) текста ПОСЛЕ символа,
 | ||
|      находящегося под кареткой.
 | ||
| 
 | ||
|   4. Допишите слово как в строке ниже. Нажмите клавишу `<ESC>`{normal} для выхода
 | ||
|      из режима вставки.
 | ||
| 
 | ||
|   5. Используйте клавишу `e`{normal} для перехода к следующему незавершённому
 | ||
|      слову и повторите действия, описанные в пунктах 3 и 4.
 | ||
| 
 | ||
| На этой стро вы можете попрактиков в добавле текста.
 | ||
| На этой строке вы можете попрактиковаться в добавлении текста.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     По команде [a](a), [i](i) и [A](A) будет выполнено переключение в один
 | ||
|     и тотже режим вставки, различие только в том, где вставляются символы.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.6.3. ЕЩЁ ОДИН СПОСОБ ЗАМЕНЫ
 | ||
| 
 | ||
| ** Чтобы заменить несколько символов в строке, наберите `R`{normal} **
 | ||
| 
 | ||
|   1. Переместите каретку в начало первого слова «xxx» в строке помеченной ✗
 | ||
| 
 | ||
|   2. Теперь нажмите [R](R) и введите число, указанное ниже во второй строке,
 | ||
|      чтобы заменить символы «xxx».
 | ||
| 
 | ||
|   3. Нажмите клавишу `<ESC>`{normal} для выхода из режима замены. Заметьте,
 | ||
|      что остаток строки не был изменён.
 | ||
| 
 | ||
|   4. Повторите эти шаги для замены оставшихся слов «xxx».
 | ||
| 
 | ||
| При сложении числа 123 с числом xxx сумма будет xxx.
 | ||
| При сложении числа 123 с числом 456 сумма будет 579.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Режим замены похож на режим вставки, но каждый введённый символ удаляет
 | ||
|     существующий символ в строке.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.6.4. КОПИРОВАНИЕ И ВСТАВКА ТЕКСТА
 | ||
| 
 | ||
| ** Чтобы копировать текст, используйте оператор `y`{normal},
 | ||
| 	чтобы вставить — команду `p`{normal} **
 | ||
| 
 | ||
|   1. Установите каретку после символов «а)» в строке помеченной ✓
 | ||
| 
 | ||
|   2. Переключите редактор в визуальный режим командой `v`{normal} и переместите
 | ||
|      каретку вперёд до слова «первый».
 | ||
| 
 | ||
|   3. Нажмите клавишу `y`{normal} для [копирования](yank) подсвеченного текста.
 | ||
| 
 | ||
|   4. Переместите каретку в конец следующей строки, набрав команду `j$`{normal}.
 | ||
| 
 | ||
|   5. Нажмите клавишу `p`{normal} для [вставки](put) текста.
 | ||
| 
 | ||
|   6. Затем наберите команду `a`{normal}, напечатайте слово "второй"
 | ||
|      и нажмите клавишу `<ESC>`{normal}.
 | ||
| 
 | ||
|   7. Повторите шаги с 1 по 4, только установите каретку после слова «первый»,
 | ||
|      выделите, скопируйте и вставьте слово « пункт.»
 | ||
| 
 | ||
| а) Это первый пункт.
 | ||
| б)
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Для копирования одного слова можно использовать команду `yw`{normal}
 | ||
|     (оператор `y`{normal} и объект `w`{normal}).
 | ||
|     По команде `yy`{normal} будет скопирована целая строка, а по команде
 | ||
|     `p`{normal} вставлена.
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.6.5. УСТАНОВКА ПАРАМЕТРОВ
 | ||
| 
 | ||
| ** Чтобы при поиске или замене не учитывался регистр символов,
 | ||
| 		      задайте соответствующие настройки **
 | ||
| 
 | ||
|   1. Найдите слово «игнорировать», набрав команду `/игнорировать`{normal}.
 | ||
|      Повторите поиск несколько раз, нажимая клавишу `n`{normal} .
 | ||
| 
 | ||
|   2. Установите параметр 'ic' (игнорировать регистр), набрав команду
 | ||
| ~~~ cmd
 | ||
| 	:set ic
 | ||
| ~~~
 | ||
|   3. Ещё раз повторите поиск слова «игнорировать», нажимая клавишу `n`{normal}
 | ||
|      Заметьте, что теперь будут найдены слова «Игнорировать» и «ИГНОРИРОВАТЬ».
 | ||
| 
 | ||
|   4. Установите параметры 'hlsearch' и 'incsearch' командой
 | ||
| ~~~ cmd
 | ||
| 	:set hls is
 | ||
| ~~~
 | ||
|   5. Повторно введите команду поиска `/игнорировать` и посмотрите, что получится
 | ||
| 
 | ||
|   6. Для возврата учёта регистра символов при поиске, введите команду
 | ||
| ~~~ cmd
 | ||
| 	:set noic
 | ||
| ~~~
 | ||
| **Примечание.**
 | ||
|     Для отключения подсветки совпадений, наберите команду
 | ||
| ~~~ cmd
 | ||
| 	:nohlsearch
 | ||
| ~~~
 | ||
| **Примечание.**
 | ||
|     Если требуется не учитывать регистр символов только единоразово, используйте
 | ||
|     ключ [\c](/\c) в команде поиска, например, `/игнорировать\c``<ENTER>`{normal}
 | ||
| 
 | ||
| 
 | ||
| #	    РЕЗЮМЕ УРОКА 1.6
 | ||
| 
 | ||
|   1. По команде `o`{normal} будет создана пустая строка ниже строки с кареткой
 | ||
|      и редактор будет переключен в режим вставки
 | ||
|      По команде `O`{normal} будет создана пустая строка выше строки с кареткой
 | ||
|      и редактор будет переключен в режим вставки
 | ||
| 
 | ||
|   2. По команде `a`{normal} выполняется вставки текста ПОСЛЕ позиции каретки.
 | ||
|      По команде `A`{normal} выполняется вставки текста в конце строки.
 | ||
| 
 | ||
|   3. По команде `e`{normal} выполняется установка каретки в конце слова.
 | ||
| 
 | ||
|   4. Оператор `y`{normal} используется для копирования текста,
 | ||
|      а по команде `p`{normal} происходит вставка скопированного текста.
 | ||
| 
 | ||
|   5. При нажатии клавиш `R`{normal} выполняется переключение в режим замены,
 | ||
|      а отключение - нажатием клавиши `<ESC>`{normal}.
 | ||
| 
 | ||
|   6. Наберите [:set](:set) xxx для установки параметра 'xxx'.
 | ||
| 
 | ||
|  Вот некоторые параметры (можно указывать полные или сокращённые наименования):
 | ||
| 	'ic'	'ignorecase'	игнорирование регистра символов при поиске
 | ||
| 	'is'	'incsearch'	отображение частичных совпадений при поиске
 | ||
| 	'hls'	'hlsearch'	подсветка всех совпадений при поиске
 | ||
| 
 | ||
|   7. Для сброса параметра, добавьте приставку "no" к его названию
 | ||
| ~~~ cmd
 | ||
| 	:set noic
 | ||
| ~~~
 | ||
|   8. Для переключения состояния параметра, добавьте приставку "inv" к названию
 | ||
| ~~~ cmd
 | ||
| 	:set invic
 | ||
| ~~~
 | ||
| 
 | ||
| #	    УРОК 1.7.1. ВСТРОЕННАЯ СПРАВОЧНАЯ СИСТЕМА
 | ||
| 
 | ||
| ** Используйте встроенную справочную систему **
 | ||
| 
 | ||
|   В редакторе Vim имеется мощная встроенная справочная система, и чтобы начать
 | ||
|   ей пользоваться, попробуйте один из трёх вариантов:
 | ||
|     - нажмите клавишу `<HELP>`{normal} (если она есть на клавиатуре)
 | ||
|     - нажмите клавишу `<F1>`{normal} (если она есть на клавиатуре)
 | ||
|     - наберите
 | ||
| 	`:help`{vim}
 | ||
| 
 | ||
|   Ознакомьтесь с информацией в окне справочной системы, чтобы получить
 | ||
|   представление о том как работать с документацией.
 | ||
| 
 | ||
|   Нажмите `<CTRL-w><CTRL-w>`{normal} для перемещения каретки из одного окна
 | ||
|   в другое окно.
 | ||
|   Наберите `:q`{normal}, чтобы закрыть окно справочной системы (когда каретка
 | ||
|   находится в этом окне).
 | ||
| 
 | ||
|   Можно найти описание для любого понятия или команды, задав соответствующий
 | ||
|   аргумент команде `:help`{vim}.
 | ||
|   Попробуйте следующее (не забудьте нажать `<ENTER>`{normal}):
 | ||
| ~~~ cmd
 | ||
| 	:help w
 | ||
| 	:help c_CTRL-D
 | ||
| 	:help insert-index
 | ||
| 	:help user-manual
 | ||
| ~~~
 | ||
| 
 | ||
| #	    Урок 1.7.2. СОЗДАНИЕ СТАРТОВОГО КОМАНДНОГО ФАЙЛА
 | ||
| 
 | ||
| ** Включим все возможности редактора Vim **
 | ||
| 
 | ||
|   Редактор Vim более функционален по сравнению с редактором Vi, но большинство
 | ||
|   из этих возможностей отключены при запуске программы. Чтобы активировать
 | ||
|   весь потенциала редактора, необходимо создать файл «vimrc».
 | ||
| 
 | ||
|   1. Создайте новый файл "vimrc". Его местонахождение зависит от используемой
 | ||
|      системы:
 | ||
| ~~~ cmd
 | ||
| 	:e ~/.vimrc
 | ||
| ~~~
 | ||
|      для UNIX-подобных систем
 | ||
| ~~~ cmd
 | ||
| 	:e $VIM\_vimrc
 | ||
| ~~~
 | ||
|      для MS Windows
 | ||
| 
 | ||
|   2. Теперь добавьте в этот файл содержимое шаблонного файла «vimrc»
 | ||
| ~~~ cmd
 | ||
| 	:r $VIMRUNTIME/vimrc_example.vim
 | ||
| ~~~
 | ||
|   3. Запишите созданный вами файл «vimrc»
 | ||
| 	`:w`{vim}
 | ||
| 
 | ||
|   Теперь при следующем запуске редактора Vim будет включена подсветка синтаксиса.
 | ||
| 
 | ||
|   Все необходимые вам настройки могут быть добавлены в файл «vimrc».
 | ||
|   Чтобы получить подробную информацию, наберите `:help vimrc-intro`{vim}
 | ||
| 
 | ||
| 
 | ||
| #	    Урок 1.7.3. ПОДСТАНОВКА КОМАНД
 | ||
| 
 | ||
| ** Подстановка в командной строке выполняется при помощи следующих клавиш
 | ||
| 			`<CTRL-D>`{normal} и `<TAB>`{normal}**
 | ||
| 
 | ||
|   1. Отключите совместимость с редактором Vi
 | ||
| ~~~ cmd
 | ||
| 	:set nocp
 | ||
| ~~~
 | ||
|   2. Посмотрите, какие файлы есть в каталоге, набрав команду
 | ||
| 	`:!ls`{vim}  или  `:!dir`{vim}
 | ||
| 
 | ||
|   3. Наберите начало команды для открытия файла на редактирование `:e`{vim}
 | ||
| 
 | ||
|   4. Нажмите клавиши `<CTRL-D>`{normal}, и будет показан перечень команд
 | ||
|      редактора Vim начинающихся с буквы «e».
 | ||
| 
 | ||
|   5. Нажмите клавиши `d<TAB>`{normal}, и будет подставлено полное название
 | ||
|      команды `:edit`{vim}.
 | ||
| 
 | ||
|   6. Теперь напечатайте пробел и начало наименования существующего файла
 | ||
| 	`:edit TE`{vim}
 | ||
| 
 | ||
|   7. Нажмите клавишу `<TAB>`{normal} и будет подставлено наименование файла,
 | ||
|      если оно уникальное.
 | ||
| 
 | ||
| **Примечание.**
 | ||
|     Подстановка работает для множества команд. Просто попробуйте нажать клавиши
 | ||
|     `<CTRL-D>`{normal} и `<TAB>`{normal} для любой из команд редактора.
 | ||
|     Это особенно полезно для команды `:help`{vim}.
 | ||
| 
 | ||
| 
 | ||
| #	    РЕЗЮМЕ УРОКА 1.7
 | ||
| 
 | ||
|   1. Чтобы открыть встроенную справочную систему редактора, наберите команду
 | ||
|      `:help`{vim} или нажмите клавишу `<F1>`{normal}, или `<HELP>`{normal}.
 | ||
| 
 | ||
|   2. Чтобы найти справочную информацию о какой-либо команде,
 | ||
|      наберите `:help cmd`{vim} (вместо «cmd» укажите наименование команды).
 | ||
| 
 | ||
|   3. Чтобы переместить каретку в другое окно, нажмите клавиши
 | ||
|      `<CTRL-w><CTRL-w>`{normal}.
 | ||
| 
 | ||
|   4. Чтобы закрыть окна справочной системы (если оно активно), наберите `:q`{vim}.
 | ||
| 
 | ||
|   5. Чтобы при запуске всегда применялись необходимые вам настройки, создайте
 | ||
|      стартовый командный файл vimrc.
 | ||
| 
 | ||
|   6. При наборе команды, начинающейся с символа `:`{normal}, нажмите клавиши
 | ||
|      `<CTRL-D>`{normal}, чтобы просмотреть возможные варианты подстановки.
 | ||
|      Нажмите клавишу `<TAB>`{normal} для подстановки необходимого варианта.
 | ||
| 
 | ||
| 
 | ||
| #	    ЗАКЛЮЧЕНИЕ
 | ||
| 
 | ||
|   На этом можно завершить первую часть занятий, посвящённые редактору Vim.
 | ||
|   Далее вы можете пройти [вторую часть](@tutor:vim-02-beginner) занятий.
 | ||
| 
 | ||
|   Целью данного курса было дать краткий обзор редактора Vim, достаточный для
 | ||
|   того, чтобы не возникало сложностей при его использовании. Это далеко не
 | ||
|   полный обзор, поскольку в редакторе Vim есть ещё много-много команд.
 | ||
| 
 | ||
|   Чтобы расширить свои познания, ознакомьтесь с руководством пользователя,
 | ||
|   набрав команду `:help user-manual`{vim}.
 | ||
| 
 | ||
|   Для дальнейшего чтения рекомендуется книга
 | ||
| 	«*Vim - Vi Improved*», автор Steve Oualline, издательство New Riders.
 | ||
|   Она полностью посвящена редактору Vim и будет особенно полезна новичкам.
 | ||
|   В книге имеется множество примеров и иллюстраций.
 | ||
|   См. https://iccf-holland.org/click5.html
 | ||
| 
 | ||
|   Также рекомендуется книга «*Practical Vim*», автор Drew Neil,
 | ||
| 				издательство Pragmatic Bookshelf.
 | ||
|   См. https://pragprog.com/titles/dnvim2/practical-vim-second-edition/
 | ||
| 
 | ||
|   Ещё одна книга более почтенного возраста и посвящена больше редактору Vi,
 | ||
|   чем редактору Vim, однако также рекомендуется к прочтению
 | ||
| 	«*Learning the Vi Editor*», автор Linda Lamb,
 | ||
| 				издательство O'Reilly & Associates Inc.
 | ||
|   Это хорошая книга, чтобы узнать всё, что только можно сделать в редакторе Vi.
 | ||
|   Шестое издание этой книги включает информацию о редакторе Vim.
 | ||
| 
 | ||
|   К томуже в Интернет есть множество ресурсов, где можно узнать многое
 | ||
|   о редакторе Vim. Вот некоторые из них:
 | ||
| 
 | ||
|   - *Learn Vim Progressively*:
 | ||
|     http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/
 | ||
|   - *Learning Vim in 2014*:
 | ||
|     http://benmccormick.org/learning-vim-in-2014/
 | ||
|   - *Vimcasts*:
 | ||
|     http://vimcasts.org/
 | ||
|   - *Vim Video-Tutorials by Derek Wyatt*:
 | ||
|     http://derekwyatt.org/vim/tutorials/
 | ||
|   - *Learn Vimscript the Hard Way*:
 | ||
|     http://learnvimscriptthehardway.stevelosh.com/
 | ||
|   - *7 Habits of Effective Text Editing*:
 | ||
|     http://www.moolenaar.net/habits.html
 | ||
|   - *vim-galore*:
 | ||
|     https://github.com/mhinz/vim-galore
 | ||
| 
 | ||
|   Эти уроки были составлены Michael C. Pierce и Robert K. Ware из Colorado
 | ||
|   School of Mines с учётом идей, предложенных Charles Smith из Colorado State
 | ||
|   University. E-mail: bware@mines.colorado.edu (теперь недоступен).
 | ||
| 
 | ||
|   Уроки доработаны Bram Moolenaar для использования в редакторе Vim.
 | ||
|   Уроки доработаны Felipe Morales для обучающего режима редактора Vim.
 | ||
| 
 | ||
|     Андрей Киселёв, перевод на русский язык, 2002, a_kissel@eudoramail.com
 | ||
|     Сергей Алёшин, перевод на русский язык, 2014, alyoshin.s@gmail.com
 | ||
|     Restorer, редактура, 2022, restorer@mail2k.ru
 |