| vi | |
|---|---|
| vi, редактирующий программу Hello, world! на языке Си. Тильды обозначают строки, отсутствующие в файле. | |
| Тип | Текстовый редактор |
| Автор | Билл Джой |
| Разработчик | Билл Джой |
| Написана на | Си[1] |
| Операционная система | Unix-подобные |
| Первый выпуск | 1976-03-2 |
| Последняя версия | |
| Лицензия | Лицензия BSD или CDDL |
| Сайт | ex-vi.sourceforge.net |
vi (visual) — серия текстовых редакторов операционных систем семейства UNIX.
Первая версия была написана Биллом Джоем в 1976 году.
В то время наиболее распространённым был редактор ed. Поскольку он был довольно сложным для «простого смертного», George Coulouris разработал редактор em (editor for mortals — редактор для смертных). Билл Джой модифицировал редактор em и назвал его en, а позднее — он получил название ex, на котором и основан vi[3].
Редактор писался для терминала ADM-3A[en], имевшего ограниченную клавиатуру: на ней не было клавиш-стрелок, а из модификаторов доступны только ⇧ Shift и Ctrl. Эти обстоятельства повлияли на выбор используемых в редакторе клавиш.
В отличие от многих привычных редакторов, vi имеет модальный интерфейс. Это означает, что одни и те же клавиши в разных режимах работы выполняют разные действия. В редакторе vi есть два основных режима: командный режим и режим вставки. По умолчанию работа начинается в командном режиме.
В режиме вставки клавиатура используется для набора текста. Для выхода в командный режим используется клавиша Esc или комбинация Ctrl+c.
В командном режиме алфавитные клавиши соответствуют командам перемещения и изменения текста. Так, команды h, j, k, l перемещают курсор на одну позицию влево, вниз, вверх, вправо соответственно, команда x удаляет один символ и т. д. Это позволяет работать без необходимости использования дополнительной клавиатуры и клавиш-модификаторов, таких, как Ctrl, Alt и т. д. Более сложные операции редактирования получаются комбинацией простых, например, 2dw удаляет два слова. Для полнотекстовых операций имеется возможность задавать команды ex в подобии командной строки, например, :1,.s/wiki/[[wiki]]/g заключит все вхождения последовательности символов wiki от начала текста до текущей позиции в двойные квадратные скобки.
/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 — вырезать символ под курсоромyy — копировать строкуdd — вырезать строкуp — вставитьJ — склеить две строки:w — сохранить файл на диске:wq — выход с сохранением файла (shift + zz):q — выход:q! — выход без сохранения файла (shift + zq):r — вставить в документ другой файлЧтобы получить подробную помощь по редактору vi, выполните команду man vi в Unix shell (q — выход из справки).
Этот раздел не завершён. |
Спор между сторонниками vi и emacs является классическим примером «религиозных войн».
Существуют клоны редактора vi с расширенной функциональностью:
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .