953
|
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 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|