О редакторе текста Vi (Visual)

Автор Itworkroom

О редакторе текста Vi (Visual)

В данном редакторе одни и те же клавиши в разных режимах работы выполняют разные действия. Есть два основных режима: командный режим и режим вставки. По умолчанию, работа начинается в командном режиме.

Часто используемые команды

  • /str — Поиск строки str вперед. str может быть регулярным выражением
  • ?str — Поиск строки str назад
  • n — Повторить поиск в том же направлении
  • N — Повторить поиск в обратном направлении
  • :[range]s/old/new/[g] — Заменить old на new в указанном диапазоне строк range. new и old могут быть регулярными выражениями, а range задается аналогично диапазону строк в редакторе ed. Например, для диапазона строк с 32 по 64 range будет 32,64, первая строка соответствует 1, последняя задается через символ $. Суффикс g означает заменить все вхождения old в строке, а не только первое.
  • :e! — перезагрузить текущий файл
  • :33 — перепрыгнуть на 33-ю строку текстового файла
  • i — перейти в режим редактирования
  • a — перейти в режим редактирования после текущего символа
  • u — отменить последнее действие
  • . — повторить последнее действие
  • x — удалить символ под курсором
  • dd — удалить всю строку
  • :w — сохранить файл на диске
  • :wq — выход с сохранением файла
  • :q — выход
  • :q! — выход без сохранения файла
  • :r — вставить в документ другой файл

Чтобы получить подробную помощь по редактору vi, выполните команду man vi в Unix shell (q — выход из справки).

Использование регулярных выражений

  • /^$/ — пустая строка, т.е. только конец строки
  • /./ — непустая строка, по крайней мере один символ
  • /^/ — все строки
  • /thing/ — thing где-либо в строке
  • /^thing/ — thing в начале строки
  • /thing$/ — thing в конце строки
  • /^thing$/ — строка, состоящая лишь из thing
  • /thing.$/ — thing плюс любой символ в конце строки
  • /\/thing\// — /thing/ где-либо в строке
  • /[tT]hing/ — thing или Thing где-либо в строке
  • /thing[0-9]/ — thing, за которой идет одна цифра
  • /thing[^0-9]/ — thing, за которой идет не цифра
  • /thing1.*thing2/ — thing1, затем любая строка, затем thing2
  • /^thing1.*thing2$/ — thing1 в начале и thing2 в конце

Чтобы манипулировать не только целыми фрагментами, выбираемыми регулярными выражениями, но и их частями, используются помеченные регулярные выражения: если конструкция \(…\) появляется в регулярном выражении, то часть соответствующего ей фрагмента доступна как \1. Допускается использование до девяти помеченных выражений, на которые ссылаются \1, \2 и так далее.

Вот ряд примеров использования помеченных регулярных выражений:

  • s/\(…\)\(.*\)/\2\1/ — Поместить 3 первых символа в конец строки
  • /\(..*\)\1/ — Найти строки, содержащие повторяющиеся смежные цепочки символов
  • s/^\(..*\)\.\(..*\)/\1.\\2/ — Перенести остаток строки после первой точки на следующую строку

3 comments on “О редакторе текста Vi (Visual)

  1. Это интересно и познавательно и поэтому я с удовольствием пойду дальше в развитии этой темы

  2. P.S. Сайт, кстати, у вас прикольно сверстан

  3. Распечатываю… на стенку в самое видное место!!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *