Редактор Vi/Vim Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
wiki:vim [2011/10/30 16:16]
[Save(сохранить) и save as...(сохранить как...)]
wiki:vim [2021/01/06 01:32] (текущий)
заменён тег Редакторы_текста на Текстовый_редактор
Строка 1: Строка 1:
 ======Редактор Vi/​Vim====== ======Редактор Vi/​Vim======
-=====Позвольте представить — Vim===== 
- 
 {{:​wiki:​снимок-1.png?​350 }} {{:​wiki:​снимок-1.png?​350 }}
- 
 Существует множество версий Vi. Я представлю вам версию Vi, называемую "​Vim"​. Vim очень популярен,​ так как у него есть несколько дополнений,​ делающих Vi немного приятнее (когда будут демонстрироваться специфичные для Vim команды,​ я это отмечу). Здесь приведена картинка GVim из моей системы. Существует множество версий Vi. Я представлю вам версию Vi, называемую "​Vim"​. Vim очень популярен,​ так как у него есть несколько дополнений,​ делающих Vi немного приятнее (когда будут демонстрироваться специфичные для Vim команды,​ я это отмечу). Здесь приведена картинка GVim из моей системы.
-Если вам нужно установить Vim, вы можете получить ​его на http://​www.vim.org ​или ​установить через консоль  +<style float-left>​[[app>​vim|Vim]]</​style>​ 
-<​code>​apt-get install vim</​code>​ +Для того, чтобы ​установить Vim перейдите по ссылке слева или ​выполните в терминале: 
-Хотя в большинстве ​Линукс-дистрибутивов он уже установлен по умолчанию. В придачу к улучшенному консольному Vi, Vim доступен также в виде GVim — прекрасного графического редактора,​ который может быть сконфигурирован для использования с великолепной библиотекой GUI (графического интерфейса пользователя) GTK+. +<​code ​bash>sudo apt-get install vim</​code>​ 
-<​code>​apt-get install vim-gtk</​code>​ +Хотя в большинстве дистрибутивов ​Linux он уже установлен по умолчанию. В придачу к улучшенному консольному Vi, Vim доступен также в виде GVim — прекрасного графического редактора,​ который может быть сконфигурирован для использования с великолепной библиотекой GUI (графического интерфейса пользователя) GTK+. 
- +<​code ​bash>sudo apt-get install vim-gtk</​code>​
  
 Если Vi вам в новинку,​ попробуйте установить в своей системе GVim. Использование Vi в графической оболочке может кое в чем облегчить новичкам жизнь. Если Vi вам в новинку,​ попробуйте установить в своей системе GVim. Использование Vi в графической оболочке может кое в чем облегчить новичкам жизнь.
  
 Также можно запустить обучающую программу,​ набрав в терминале команду Также можно запустить обучающую программу,​ набрав в терминале команду
-<​code>​vimtutor</​code>​+<​code ​bash>​vimtutor</​code>​
 или ​ или ​
-<​code>​gvimtutor</​code>​+<​code ​bash>​gvimtutor</​code>​
 Это небольшая обучающая программа поможет за 25-30 минут освоиться в этом необычном для новичка редакторе. Это небольшая обучающая программа поможет за 25-30 минут освоиться в этом необычном для новичка редакторе.
- 
  
 =====Открываем файл===== =====Открываем файл=====
- 
 Перед использование Vi для редактирования файлов вам следует узнать,​ как в Vi перемещаться по файлу. У Vi множество команд перемещения,​ многие из них мы сейчас рассмотрим. Для этой части обучения найдите какой-нибудь малоценный текстовый файл (TODO: лучше на английском) и загрузите его в Vi напечатав:​ Перед использование Vi для редактирования файлов вам следует узнать,​ как в Vi перемещаться по файлу. У Vi множество команд перемещения,​ многие из них мы сейчас рассмотрим. Для этой части обучения найдите какой-нибудь малоценный текстовый файл (TODO: лучше на английском) и загрузите его в Vi напечатав:​
- +<​code ​bash>vi myfile.txt</​code>​
-<​code>​vi myfile.txt</​code>​+
  
 Если у вас установлен Vim, наберите в консоли:​ Если у вас установлен Vim, наберите в консоли:​
- +<​code ​bash>vim myfile.txt</​code> ​
-<​code>​vim myfile.txt</​code> ​+
  
 Если вы предпочитаете использовать GVim:  Если вы предпочитаете использовать GVim: 
 +<code bash>​gvim myfile.txt</​code> ​
  
-<​code>​$ gvim myfile.txt<​/code>  +//myfile.txt// должно быть именем текстового файла в вашей системе.
- +
-myfile.txt должно быть именем текстового файла в вашей системе.+
  
 ====Внутри Vi==== ====Внутри Vi====
- 
 После загрузки Vi, на экране вы должны увидеть часть загруженного вами текстового файла. Поздравляю — вы уже в Vi! В отличии от большинства редакторов,​ загрузившись,​ Vi находится в специальном режиме,​ называемом **"​командным режимом"​**. Это значит,​ что если вы нажмете клавишу **<​l>​(строчная L)**, вместо появления "​l"​ на месте курсора вы увидите,​ что курсор всего лишь сдвинулся на один символ вправо. В командном режиме знаки, набираемые на клавиатуре,​ используются как команды для Vi, а не как помещаемые в текст символы. Один из наиболее важных типов команд — это команды перемещения. Давайте рассмотрим некоторые из них. После загрузки Vi, на экране вы должны увидеть часть загруженного вами текстового файла. Поздравляю — вы уже в Vi! В отличии от большинства редакторов,​ загрузившись,​ Vi находится в специальном режиме,​ называемом **"​командным режимом"​**. Это значит,​ что если вы нажмете клавишу **<​l>​(строчная L)**, вместо появления "​l"​ на месте курсора вы увидите,​ что курсор всего лишь сдвинулся на один символ вправо. В командном режиме знаки, набираемые на клавиатуре,​ используются как команды для Vi, а не как помещаемые в текст символы. Один из наиболее важных типов команд — это команды перемещения. Давайте рассмотрим некоторые из них.
  
Строка 43: Строка 34:
  
 ====Перемещения в Vi, часть 1==== ====Перемещения в Vi, часть 1====
- 
 Находясь в командном режиме,​ вы можете использовать клавиши <​h>,<​j>,<​k>​ и <l> для перемещения курсора влево, вниз, вверх и вправо соответственно. Если вы используете современную версию Vi, вы можете также с этой целью использовать клавиши со стрелками. Клавиши <​h>,<​j>,<​k>​ и <l> предпочтительнее,​ так как освоившись с ними вы сможете перемещаться по файлу, не размахивая руками над клавиатурой. Для перемещения по текстовому файлу используйте следующие клавиши:​ Находясь в командном режиме,​ вы можете использовать клавиши <​h>,<​j>,<​k>​ и <l> для перемещения курсора влево, вниз, вверх и вправо соответственно. Если вы используете современную версию Vi, вы можете также с этой целью использовать клавиши со стрелками. Клавиши <​h>,<​j>,<​k>​ и <l> предпочтительнее,​ так как освоившись с ними вы сможете перемещаться по файлу, не размахивая руками над клавиатурой. Для перемещения по текстовому файлу используйте следующие клавиши:​
- 
   * **j** -- перемещает курсор вниз;   * **j** -- перемещает курсор вниз;
   * **k** -- перемещает курсор вверх;   * **k** -- перемещает курсор вверх;
   * **h** -- перемещает курсор вправо;​   * **h** -- перемещает курсор вправо;​
   * **l** -- перемещает курсор влево.   * **l** -- перемещает курсор влево.
- 
 Попробуйте использовать <h> пока не дойдете до начала строки. Отметьте,​ что Vi не даст вам перескочить на предыдущую строку,​ нажимая <h>, если вы находитесь в начале строки. Точно также он не позволит вам перескочить на следующую строку,​ нажимая <l> в конце строки. Попробуйте использовать <h> пока не дойдете до начала строки. Отметьте,​ что Vi не даст вам перескочить на предыдущую строку,​ нажимая <h>, если вы находитесь в начале строки. Точно также он не позволит вам перескочить на следующую строку,​ нажимая <l> в конце строки.
  
 ====Перемещения в Vi, часть 2==== ====Перемещения в Vi, часть 2====
- 
 Vi предоставляет специальные команды для прыжков в начало и конец текущей строки:​ Vi предоставляет специальные команды для прыжков в начало и конец текущей строки:​
- 
   * **0 (ноль)** -- перескочить на первый символ в строке;​   * **0 (ноль)** -- перескочить на первый символ в строке;​
   * **$** -- перескочить на последний символ в строке. ​   * **$** -- перескочить на последний символ в строке. ​
- 
 Поскольку у Vi так много команд перемещения,​ его можно использовать в качестве великолепного инструмента просмотра — "​pager"​а (как команды more или less). Используя Vi для просмотра,​ вы очень быстро запомните все команды перемещения. Поскольку у Vi так много команд перемещения,​ его можно использовать в качестве великолепного инструмента просмотра — "​pager"​а (как команды more или less). Используя Vi для просмотра,​ вы очень быстро запомните все команды перемещения.
  
 Вы также можете использовать **<​C-F>​ и <C-B> для перемещения вперед и назад** сразу на страницу. Современные версии Vi (такие как Vim) могут позволить использовать для этих целей клавиши <​PageUp>​ и <​PageDown>​. Вы также можете использовать **<​C-F>​ и <C-B> для перемещения вперед и назад** сразу на страницу. Современные версии Vi (такие как Vim) могут позволить использовать для этих целей клавиши <​PageUp>​ и <​PageDown>​.
  
-**Примечание.** ​Комбинация <C-F> означает комбинацию клавиш <​Ctrl>​+<​F>​. Во многих источниках про Vim можно встретить именно такое обозначение комбинация клавиш. Часто еще можно встретить и такое обозначение:​ **^F**+<​note>​Комбинация <C-F> означает комбинацию клавиш <​Ctrl>​+<​F>​. Во многих источниках про Vim можно встретить именно такое обозначение комбинация клавиш. Часто еще можно встретить и такое обозначение:​ **^F**</​note>​
  
 ====Перемещение по словам,​ часть 1==== ====Перемещение по словам,​ часть 1====
- 
 Vi также позволяет вам перемещаться влево и вправо по словам:​ Vi также позволяет вам перемещаться влево и вправо по словам:​
- 
   * **w** -- перемещения на первый символ следующего слова нажмите; ​   * **w** -- перемещения на первый символ следующего слова нажмите; ​
   * **e** -- передвинуться на следующий последний символ слова нажмите; ​   * **e** -- передвинуться на следующий последний символ слова нажмите; ​
Строка 75: Строка 58:
  
 ====Перемещение по словам,​ часть 2==== ====Перемещение по словам,​ часть 2====
- 
 Позабавившись с командами перемещения по словам,​ вы могли заметить,​ что Vi считает слова типа "​foo-bar-oni"​ пятью различными словами! Это происходит потому,​ что Vi по умолчанию разделяет слова пробелами или знаками пунктуации (которые тоже считает словами). Поэтому foo-bar-oni считается пятью словами:​ "​foo","​-","​bar","​-"​ и "​oni"​. Позабавившись с командами перемещения по словам,​ вы могли заметить,​ что Vi считает слова типа "​foo-bar-oni"​ пятью различными словами! Это происходит потому,​ что Vi по умолчанию разделяет слова пробелами или знаками пунктуации (которые тоже считает словами). Поэтому foo-bar-oni считается пятью словами:​ "​foo","​-","​bar","​-"​ и "​oni"​.
  
Строка 81: Строка 63:
  
 ====Перемещение по словам,​ часть 3==== ====Перемещение по словам,​ часть 3====
- 
 Чтобы переместиться на следующее или предыдущее большое слово, вы можете использовать "​заглавные"​ команды перемещения по словам. Нажав следующие клавиши,​ вы попадете на: Чтобы переместиться на следующее или предыдущее большое слово, вы можете использовать "​заглавные"​ команды перемещения по словам. Нажав следующие клавиши,​ вы попадете на:
- 
   * **W** — первый символ следующего большого слова;   * **W** — первый символ следующего большого слова;
   * **E** — следующий последний символ большого слова;   * **E** — следующий последний символ большого слова;
Строка 89: Строка 69:
  
 ====Дальние переходы==== ====Дальние переходы====
- 
 Осталось рассмотреть еще несколько команд,​ и можно будет начинать их записывать на шпаргалку. Вы можете использовать скобки:​ Осталось рассмотреть еще несколько команд,​ и можно будет начинать их записывать на шпаргалку. Вы можете использовать скобки:​
- 
   * **(** и **)**  чтобы перейти на начало предыдущего и следующего предложения.   * **(** и **)**  чтобы перейти на начало предыдущего и следующего предложения.
   * **{** или **}** (фигурные скобки) -- Позволят перескочить в начало параграфа. ​   * **{** или **}** (фигурные скобки) -- Позволят перескочить в начало параграфа. ​
  
 =====Выход===== =====Выход=====
- 
 Мы рассмотрели основные команды перемещения,​ однако осталась еще пара команд,​ которые вам необходимо знать. Напечатав:​ Мы рассмотрели основные команды перемещения,​ однако осталась еще пара команд,​ которые вам необходимо знать. Напечатав:​
- 
   * **:q** вы должны выйти из Vi. Если не получиться,​ значит вы каким-то образом ухитрились изменить файл; ​   * **:q** вы должны выйти из Vi. Если не получиться,​ значит вы каким-то образом ухитрились изменить файл; ​
   * **:​q!** ​ выйти отбросив изменения следует командой. ​   * **:​q!** ​ выйти отбросив изменения следует командой. ​
Строка 104: Строка 80:
 Теперь вы должны оказаться в командной строке системы. Теперь вы должны оказаться в командной строке системы.
  
-**Любая команда в Vi, начинающаяся с двоеточия (":"​),​ называется командой ex-режима (an ex-mode command).** Это из-за того, что Vi имеет встроенный не экранный редактор,​ зовущийся **ex**. Он может использоваться подобно sed для выполнения операций редактирования,​ ориентированных на строки. Дополнительно,​ как мы только что видели,​ он может использоваться для завершения работы. Если вы случайно нажмете <Q>, находясь в командном режиме,​ то можете оказаться в ex-режиме. В этом случае вы столкнетесь с приглашением ":",​ и нажатие на Enter будет сдвигать вверх содержимое экрана. Для возврата к привычному vi-режиму просто наберите vi и нажмите <​Enter>​.+**Любая команда в Vi, начинающаяся с двоеточия (":"​),​ называется командой ex-режима (an ex-mode command).** Это из-за того, что Vi имеет встроенный не экранный редактор,​ зовущийся **ex**. Он может использоваться подобно sed для выполнения операций редактирования,​ ориентированных на строки. Дополнительно,​ как мы только что видели,​ он может использоваться для завершения работы. Если вы случайно нажмете <Q>, находясь в командном режиме,​ то можете оказаться в ex-режиме. В этом случае вы столкнетесь с приглашением ":",​ и нажатие на Enter будет сдвигать вверх содержимое экрана. Для возврата к привычному vi-режиму просто наберите ​**vi** и нажмите <​Enter>​.
  
-=====Сохранение и Редактирование===== +=====Сохранение и редактирование=====
- +
-====Save(сохранить) и save as...(сохранить как...)====+
  
 +====Save(сохранить) и Save as...(сохранить как...)====
 Мы уже видели,​ как используя ex-команду **:q** выйти из vi.  Мы уже видели,​ как используя ex-команду **:q** выйти из vi. 
- +  ​* **:w** -- записать или сохранить файл;
-  ​* **:w** -- записать или сохранить фаил;+
   * **:w filename** -- для сохранение под другим именем;​   * **:w filename** -- для сохранение под другим именем;​
   * **:x** или **:wq** -- сохранить и выйти.   * **:x** или **:wq** -- сохранить и выйти.
- +В Vim (и других потомках ​Vi, типа elvis), вы можете держать открытыми одновременно несколько буферов. Введите команду ​
-В Мim (и других потомках ​Мi, типа elvis), вы можете держать открытыми одновременно несколько буферов. Введите команду ​ +
   * **:sp filename.txt** для открытия файла filename.txt в новом окне;   * **:sp filename.txt** для открытия файла filename.txt в новом окне;
   * **:sp** (без имени файла) откроет дополнительное окно для активного буфера. ​   * **:sp** (без имени файла) откроет дополнительное окно для активного буфера. ​
Строка 124: Строка 96:
  
 ====Простое редактирование==== ====Простое редактирование====
- 
 Вот и подошло время заняться изучением простых команд редактирования. Рассматриваемые здесь команды считаются "​простыми"​ из-за того, что оставляют вас в командном режиме. Более сложные команды автоматически переводят вас в режим ввода текста,​ позволяющий добавлять в буфер символьную информацию,​ набираемую на клавиатуре;​ их рассмотрим позднее. Вот и подошло время заняться изучением простых команд редактирования. Рассматриваемые здесь команды считаются "​простыми"​ из-за того, что оставляют вас в командном режиме. Более сложные команды автоматически переводят вас в режим ввода текста,​ позволяющий добавлять в буфер символьную информацию,​ набираемую на клавиатуре;​ их рассмотрим позднее.
  
Строка 133: Строка 104:
  
 ====Повторение и удаление==== ====Повторение и удаление====
 +Повторить любую команду редактирования вы можете нажимая клавишу <​**.**>​ (точка). Если попробуете,​ то можете увидеть,​ что печать **dd...** удалит 4 строки,​ а **J......** объединит семь строк. Как обычно,​ Vi обеспечивает вас различными удобными средствами сокращения трудозатрат.
  
-Повторить любую команду редактирования вы можете нажимая клавишу . (точка). Если попробуете,​ то можете увидеть,​ что печать **dd... удалит 4 строки**,​ а **J...... объединит семь строк**. Как обычно,​ Vi обеспечивает вас различными удобными средствами сокращения трудозатрат. +Удалять текст вы можете также комбинируя команду **d** с любыми командами перемещения. Например,​ **dw** удалит часть текста от текущей позиции курсора до начала следующего слова; ​**d)** удалит вплоть до следующего конца предложения,​ и **d}** удалит весь остаток абзаца. Поэкспериментируйте с командой **d** и другими командами редактирования,​ пока не почувствуете себя с ними уверенно.
- +
-Удалять текст вы можете также комбинируя команду **d** с любыми командами перемещения. Например,​ **dw** удалит часть текста от текущей позиции курсора до начала следующего слова; d) удалит вплоть до следующего конца предложения,​ и d} удалит весь остаток абзаца. Поэкспериментируйте с командой **d** и другими командами редактирования,​ пока не почувствуете себя с ними уверенно.+
  
 =====Режим ввода текста===== =====Режим ввода текста=====
 +Мы уже рассмотрели,​ как в vi перемещаться,​ выполнять чтение\запись файлов и основные операции редактирования. Однако,​ я еще не объяснил,​ как напечатать произвольный текст! Сделано это было умышленно,​ так как поначалу режим ввода текста в Vi малость сложноват. Тем не менее, после того, как вы станете спокойно себя чувствовать в режиме ввода текста,​ эта сложность (и гибкость) станет настоящей ценностью.
  
-Мы уже рассмотреликак ​в vi перемещаться, выполнять чтение\запись файлов и основные ​операции редактирования. Однако, я еще ​не объяснил, как ​напечатать произвольный текст! Сделано ​это было умышленно,​ так ​как поначалу ​режим ввода текста в vi малость сложноватТем не менее, после того, как вы станете спокойно себя чувствовать в режиме ввода ​текста, эта сложность (и гибкость) станет настоящей ценностью.+В Vi, в режиме ввода текста, вы можете вводить текст "прямо на экран", как в большинстве других ​экранных ​редакторов. Сделав свои изменениявы можете ​нажать ​
  
-В vi, в режиме ввода текста, вы можете вводить текст "​прямо на экран",​ как в большинстве других экранных редакторов. Сделав ​свои изменения, ​вы можете нажать ​+  * **Esc** --  ​вернуться ​в командный режим
 +  * **i** или **a** -- вернуться/войти в режим ввода
  
-  * **Escape** --  вернуться в командный режим;​ +<​note>​Не забудьте,​ введя свой текст, нажать <ESC> для возврата в режим команд.</​note>​
-  * **i или a** -- вернуться/​войти в режим ввода.  +
- +
-**Не забудьте,​ введя свой текст, нажать <ESC> для возврата в режим команд.**+
  
 =====Комбинированные команды===== =====Комбинированные команды=====
 +Vi действительно становиться мощным,​ когда вы начинаете использовать совмещенные (или комбинированные) команды,​ типа **d{** и **cw**. Дополнительно к таким командам,​ вы также можете совмещать числа с любыми командами перемещения,​ как **3w**, которая сообщает Vi о необходимости проскочить вперед на три слова. Вот еще несколько примеров таких комбинированных команд:​ **12b**, **4j**.
  
-Vi действительно становиться мощным,​ когда вы начинаете использовать совмещенные (или комбинированные) команды,​ типа d{ и cw. Дополнительно к таким командам,​ вы также можете совмещать числа с любыми командами перемещения,​ как 3w, которая сообщает Vi о необходимости проскочить вперед на три слова. Вот еще несколько примеров таких комбинированных команд:​ **12b, 4j**. +Разрешая комбинации (число)(команда перемещения),​ Vi позволяет еще совмещать команды ​**d** или ​**c** с числами или командами перемещения. Так **d3w** удалит следующие три слова, ​**d2j** удалит текущую и две следующие строки,​ и т.д. Попробуйте немного поэкспериментировать с командами ​**c** и **d**, совмещенными с перемещениями,​ чтобы почувствовать,​ каким мощным и лаконичным может быть редактирование в Vi. Когда эти команды станут вашей второй натурой,​ вы сможете редактировать файлы с невероятной скоростью.
- +
-Разрешая комбинации (число)(команда перемещения),​ Vi позволяет еще совмещать команды d или c с числами или командами перемещения. Так **d3w удалит следующие три слова, d2j удалит текущую и две следующие строки**, и т.д. Попробуйте немного поэкспериментировать с командами c и d, совмещенными с перемещениями,​ чтобы почувствовать,​ каким мощным и лаконичным может быть редактирование в Vi. Когда эти команды станут вашей второй натурой,​ вы сможете редактировать файлы с невероятной скоростью.+
  
 =====Увеличение производительности===== =====Увеличение производительности=====
- 
 Только что мы рассмотрели,​ как перемещаться,​ сохранять и завершать работу,​ выполнять простое редактирование и удаление,​ пользоваться режимом ввода текста. С этим багажом знаний (только что показанным на шпаргалке) вы уже способны,​ используя Vi, справиться практически с любой задачей. Только что мы рассмотрели,​ как перемещаться,​ сохранять и завершать работу,​ выполнять простое редактирование и удаление,​ пользоваться режимом ввода текста. С этим багажом знаний (только что показанным на шпаргалке) вы уже способны,​ используя Vi, справиться практически с любой задачей.
  
Строка 162: Строка 129:
  
 =====Экранный режим===== =====Экранный режим=====
- 
 {{ :​wiki:​vihighlight-ru.png?​350}} {{ :​wiki:​vihighlight-ru.png?​350}}
- 
 Лучшим способом вырезать и вставлять фрагменты текста является использование экранного режима,​ специального режима,​ добавленного в современных версиях Vi, таких как Vim и elvis. Вы можете представлять себе экранный режим как режим "​подсвечивания текста"​. Выделенный текст может быть скопирован или удален,​ а затем вставлен. Если вы используете GVim, выделить кусок текста вы можете просто нажав левую кнопку мышки и протащив курсор по нужной области. Лучшим способом вырезать и вставлять фрагменты текста является использование экранного режима,​ специального режима,​ добавленного в современных версиях Vi, таких как Vim и elvis. Вы можете представлять себе экранный режим как режим "​подсвечивания текста"​. Выделенный текст может быть скопирован или удален,​ а затем вставлен. Если вы используете GVim, выделить кусок текста вы можете просто нажав левую кнопку мышки и протащив курсор по нужной области.
 Войти в экранный режим вы еще можете нажав v (это может быть вашей единственной возможностью,​ если вы используете Vi в консоли). Затем, двигая курсор командами перемещения (обычно стрелками),​ вы можете выделить область текста. Закончив выделение,​ вы уже готовы вырезать либо копировать текст. Войти в экранный режим вы еще можете нажав v (это может быть вашей единственной возможностью,​ если вы используете Vi в консоли). Затем, двигая курсор командами перемещения (обычно стрелками),​ вы можете выделить область текста. Закончив выделение,​ вы уже готовы вырезать либо копировать текст.
  
-Для копирования текста нажмите y (от слова "​yank"​). Чтобы вырезать текст нажмите d. Вы будете переведены назад в командный режим. Теперь переместитесь в то место, где вы хотите вставить вырезанный или скопированный текст, и нажмите P (заглавная) для вставки перед курсором или p (строчная) для вставки за курсором. Всё, копирование\вырезание и вставка выполнены! А теперь проделайте еще несколько раз процедуру копирования\вырезания и вставки перед тем, как перейти к следующему разделу.+Для копирования текста нажмите ​**y** (от слова "​yank"​). Чтобы вырезать текст нажмите ​**d**. Вы будете переведены назад в командный режим. Теперь переместитесь в то место, где вы хотите вставить вырезанный или скопированный текст, и нажмите ​**P** (заглавная) для вставки перед курсором или ​**p** (строчная) для вставки за курсором. Всё, копирование\вырезание и вставка выполнены! А теперь проделайте еще несколько раз процедуру копирования\вырезания и вставки перед тем, как перейти к следующему разделу
 + 
 +Для того, чтобы вставить в редактор содержимое буфера обмена (в который Вы скопировали информацию по **<​Ctrl>​**+**<​C>​**) необходимо установить утилиту xclip  
 +<code bash>​apt-get install xclip</​code>​ 
 +и скопировав нужный текст выполнить в командном режиме редактора  
 + 
 +**:r! xclip -o** и нажмите **<​ENTER>​**.
  
 =====Замена текста===== =====Замена текста=====
- 
 Для замены образцов текста мы используем ex-режим. Если вы хотите заменить первый попавшийся в текущей строке образчик,​ наберите: ​ Для замены образцов текста мы используем ex-режим. Если вы хотите заменить первый попавшийся в текущей строке образчик,​ наберите: ​
  
-**:​s/<​regexp>/<​replacement>/​ и нажмите <​ENTER>,​ где <​regexp>​ - что хотите заменить,​ и <​replacement>​ - на что.** +**:​s/<​regexp>/<​replacement>/​** и нажмите ​**<​ENTER>​**, где <​regexp>​ - что хотите заменить,​ и <​replacement>​ - на что. ​
  
 Для замены всех совпадений с эталоном в текущей строке используйте команду:​ Для замены всех совпадений с эталоном в текущей строке используйте команду:​
  
-  * **:​s/<​regexp>/<​replacement>/​g** -- замена каждого вхождения образца во всем файле (что обычно и требуется);​+  * **:%s/<​regexp>/<​replacement>/​g** -- замена каждого вхождения образца во всем файле (что обычно и требуется);​
   * **:​%s/<​regexp>/<​replacement>/​gc** -- подтверждение потребность замены в каждом конкретном случае при выполнении глобального замещения (здесь "​c"​ означает "​confirm"​). ​   * **:​%s/<​regexp>/<​replacement>/​gc** -- подтверждение потребность замены в каждом конкретном случае при выполнении глобального замещения (здесь "​c"​ означает "​confirm"​). ​
  
Строка 184: Строка 154:
  
 =====Выделение===== =====Выделение=====
- 
 Vi поддерживает автоматический отступ при редактировании вами исходников (текстов программ). Большинство современных версий Vi (таких,​ как Vim) могут самостоятельно включать абзацный авто отступ при редактировании вами исходников (например,​ файлов типа .c). Vi поддерживает автоматический отступ при редактировании вами исходников (текстов программ). Большинство современных версий Vi (таких,​ как Vim) могут самостоятельно включать абзацный авто отступ при редактировании вами исходников (например,​ файлов типа .c).
- 
   * **:set autoindent** -- включить авто отступ;​   * **:set autoindent** -- включить авто отступ;​
   * **:set tabstop=(число)** -- установить авто табуляцию (где число есть число символов табуляции).   * **:set tabstop=(число)** -- установить авто табуляцию (где число есть число символов табуляции).
 +Если авто отступ включен,​ вы можете использовать **<​C-d>​ ** для уменьшения и **<​C-t>​** для увеличения уровня отступа.
  
- ​Если авто отступ включен,​ вы можете использовать **<​C-d>​ ** для уменьшения и **<​C-t>​** для увеличения уровня отступа. +=====Ссылки=====
- +
---------- +
-=====Ресурсы===== +
 Означенные здесь ресурсы могут быть полезны желающим продолжить изучение vi далее. (Правда,​ на английском):​ Означенные здесь ресурсы могут быть полезны желающим продолжить изучение vi далее. (Правда,​ на английском):​
- +  ​* Прекрасный ресурс о всех деталях vi -- http://​thomer.com/​vi/​vi.html;​
-  ​* Прекрасный ресурс о всех деталях vi -- http://​thomer.com//​vi/​vi.html;​+
   * Место, где есть все нужное вам для vim -- http://​www.vim.org/​   * Место, где есть все нужное вам для vim -- http://​www.vim.org/​
   * Если вы ищите хорошую,​ старомодную бумажную книгу, http://​oreilly.com/​catalog/​9781565924260/​ может стать прекрасным выбором. Содержит хороший обзор самого vi и его клонов;​   * Если вы ищите хорошую,​ старомодную бумажную книгу, http://​oreilly.com/​catalog/​9781565924260/​ может стать прекрасным выбором. Содержит хороший обзор самого vi и его клонов;​
   * Статья взята с http://​www.gentoo.org/​doc/​ru/​vi-guide.xml .   * Статья взята с http://​www.gentoo.org/​doc/​ru/​vi-guide.xml .
-  * [[http://​www.michurin.com.ru/​vi-guide.shtml|Команды vi (неплохая шпаргалка)]] 
   * Отображение команд Vim(GVim) на клавиатуре -- http://​www.viemu.com/​a_vi_vim_graphical_cheat_sheet_tutorial.html   * Отображение команд Vim(GVim) на клавиатуре -- http://​www.viemu.com/​a_vi_vim_graphical_cheat_sheet_tutorial.html
  
--------------+====== Полезное ====== 
 + 
 +=====Обои с описанием клавиатурных сокращений и команд. ===== 
 +Размер:​ 1366х768\\ 
 +Для загрузки нажмите на изображение,​ в появившемся окне нажмите на изображение ещё раз для увеличения и нажмите правой кнопкой "​Сохранить изображение как..."​ 
 +{{ :​wiki:​vim:​vim.png?​500 }} 
 +{{:​wiki:​vim:​vim.tar.gz|Исходник в формате .xcf}}\\ 
 +Взято с [[http://​habrahabr.ru/​post/​149220/​|хабра]]\\ 
 + 
 +====== Статьи про Vi ====== 
 +{{topic> Vi Vim GVim vi vim gvim}} 
 + 
 +<style float-right>//​[[terms:​теги#​как_узнать_какой_тег_соответствует_той_или_иной_категории|Если хотите,​ чтобы ваша статья появилась на этой странице,​ поставьте тег: vim]]//</​style>​
  
-{{tag>howto Консоль Система ​Редакторы_текста}}+{{tag>Индексная_статья ​Консоль Система ​Текстовый_редактор}}