Статьи и доки
Меню сайта





Категории каталога
manpages [3]
Описания некоторых манов
APACHE [0]
Заметки по Apache
Scripting [5]
Что есть по скриптам
DNS [0]
bind etc.
EXIM [2]
Почтовый веб-сервер. Несколько примеров
SQUID [0]
Прокси-сервер
Общее [4]
Общее


Форма входа


Поиск


Друзья сайта



Приветствую Вас, Гость · RSS 29.03.2024, 12:55
Главная » Статьи » FreeBSD » manpages

Кратенький справочник по VI (хардкор :)
10. Справочник по командам vi

10.1 Режимы Vi
Vi имеет 3 режима:

командный режим - Включается при запуске vi; для перехода в командный режим из других режимов (используйте ESC)
режим ввода - активируется специальными командами a i A I o O c C s S R и выключается при помощи ESC или в случае ошибки.
линейный режим - т.е. ожидание ввода команд после нажатия : , / , ? или ! (выключается с CR, обрывается с помощью CTRL-c). CTRL это клавиша control: CTRL-c означает "control c"

10.2 Команды Shell

TERM= code Помещает имя вашего терминала в переменную TERM
export TERM Передаёт значение переменной TERM (код терминала) любой программе в UNIX системе.
tput init Инициализирует терминал таким образом, чтобы он функционировал правильно с различными UNIX программами.
vi filename Запускает vi и загружает на редактирование указанный файл.
vi file1 file2 file3 Записывает в буфер vi три файла для последующего их редактирования. Эти файлы file1, file2, и file3.
view file Загружает файл file в режиме только-для-чтения.
vi -R file Аналогично преведущей команде.
vi -r file Восстанавливает file и последние изменения после краха системы.

10.3 Установка параметров

:set опция Активизирует опцию
:set опция=значение Назначает значение для опции
:set no опция Деактивирует опцию
:set Показывает опции установленные пользователем.
:set all Показывает все опции, как установленные пользователем, так и опции "по умолчанию".
:set опцию? Показывает значение опции

10.4 Используемые обозначения

CTRL-c CTRL Это клавиша control: CTRL-c означает "control c"
CR символ возврата каретки (клавиша ENTER)

10.5 Обрывание и отмена

ESC Обрывает ввод неправильно или неполностью введенной команды
CTRL-? CTRL это клавиша control : CTRL-? означает "control ?" удаляет или стирает прерывание.
CTRL-l обновляет экран если CTRL-? замусорила его.

10.6 Манипуляции с файлами

ZZ Сохраняет файл и выходит из vi
:wq Сохраняет файл и выходит из vi
:w Записывает файл
:w! Записывает файл даже если он защищен от записи
:wимя Записывает файл по именем имя
:q Выходит из vi
:q! Выходит из vi (независимо от того были ли внесены изменения)
:e имя Загружает для редактирования файл под именем имя
:e! Перезагрузить файл,стирая любые изменения которые были внесены
:e + name Загружает для редактирования файл под именем имя, начиная с конца.
:e + n Начинает редактирование со строки номер n
:e # Редактирует альтернативный файл
:n Редактирует следующий файл в списке файлов
:args Показывает файлы в текущем списке файлов
:rew Обновить текущий список файлов и начать редактировать первый файл.
:n args Указать новый список файлов
:f Показывает имя текущего файла и номер строки
CTRL-G Синоним для :f
:ta tag to tag file entry tag
CTRL-] :ta, следующее слово - тэг

10.7 Перемещение

Arrows Перемещают курсор
CTRL-d Скроллирует полстраницы вниз
CTRL-u Скроллирует полстраницы вверх
CTRL-f Скроллирует целую страницу вниз
CTRL-b Скроллирует целую страницу вверх
:0 Переходит к началу файла
:n Переходит к строке номер n
:$ Переходит к концу файла
0 Переходит к началу строки
^ Переходит к первому символу, не пробелу
$ Переходит к концу строки
CR Переходит к началу следующей строки
- Переходит к началу преведущей строки
% Находит соответствующую скобку
G Переходит к строке (по умолчанию - к последней строке)
]] Следующая секция/функция
[[ Преведущая секция/функция

10.8 Позиционирование по строкам

H Первая строка экрана
L Последняя строка экрана
M Средняя строка экрана
+ Следующая строка, первый символ не являющийся пробелом
- Предшествующая строка, первый символ не являющийся пробелом
CR возврат, тоже что и +
j Следующая строка, таже колонка
k Преведущая строка, таже колонка

10.9 Позиционирование по символам

0 Начало строки
$ Конец строки
h Вперед
l Назад
SPACE Тоже что и l
fx Найти x вперед по тексту
Fx Найти x назад по тексту
; Повторить последнюю операцию f F
, Инверсно ;
| К специфицированной колонке
% Найти соответствующий символ { или }

10.10 Слова, предложения параграфы

w Слово вперед
b Слово назад
e Конец слова
) К следующему предложению
( К преведущему предложению
} К следующему параграфу
{ К преведущему параграфу
W К концу большого слова, включая пробел на его конце
B Назад на большое слово W
E К концу большого слова W

10.11 Установка отметок и возврат к ним

`` (дважды нажмите клавишу `) К преведущей отметки
'' (press twice the single-quote ` key) Последняя отметка, первый не пробел в строке
mx Установка отметки с именем x
`x (обратная кавычка и x) перейти к отметке x
'x Перейти к отметке x, на первый не пробел в строке

10.12 Коррекция во время ввода текста

CTRL-h Удаляет последний символ
CTRL-w Удаляет последнее слово
erase Нажмите DELETE, тоже что и CTRL-h
kill Ваша клавиша kill, стирает ввод сделанный на этой строке
\ Экранирует CTRL-h, DELETE и kill
ESC Окончить ввод, назад в командный режим
CTRL-? Прервать, терминирует ввод
CTRL-d Обратная табуляции на autoindent пробелов
CTRL-v Экранирует непечатный символ

10.13 Обновления экрана

CTRL-l Очистить и перерисовать
CTRL-r перенабор, убирает @строки
z-CR перерисовать, текущую строку на вершине окна
z- перерисовать, текущую строку на краю окна
z. перерисовать, текущую строку в центре экрана
/pat/z- сгладить край строки
tn Использовать экран с строкой n
CTRL-e Скроллировать окно вниз на 1 строку
CTRL-y Скроллировать окно вверх на 1 строку

10.14 Удаление

x Удаляет символ под курсором
X Удаляет символ перед курсором
D Удаляет до конца строки
d^ Удаляет до начала строки
dd Удаляет текущую строку
ndd Удаляет n строк начиная с текущей
dnw Удаляет n слов начиная с положения курсора

10.15 Вставка, замена

i Входит в режим вставки (с вставкой перед курсором)
I Входит в режим вставки (перед первым не пробелом)
a Входит в режим вставки (вставка после курсора)
A Входит режим вставки (вставка после конца текущей строки)
o Создать новую строку после текущей и перейти в режим вставки
O Создает новую строку перед текущей и входит в режим вставки
r Заменить символ под курсором не переходя в режим вставки
R Войти в режим замены
C shift-c. Изменить остаток строки
D shift-d. Удалить остаток строки
s Заменить символы
S Заменить строки
J Объединить строки

10.16 Копирование и вставка
"Буфер копирования" заполняется КАЖДОЙ командой удаления,или с помощью Y и yy.

Y Копирует текущую строку в буфер
nyy Копирует n строк начиная с текущей в буфер копирования
p Вставляет содержимое буфера копирования после курсора (или перед текущей строкой)
P Вставляет содержимое буфера обмена перед курсором (или перед текущей строкой)
"xp Вставить из буфера x
"xy Скопировать в буфер x
"xd Удалить в буфер x

10.17 Операции (для применения к строкам вводятся дважды)

d удалить
c изменить
< сдвинуть влево
> сдвинуть вправо
! отфильтровать через команду
= отдать для LISP
y скопировать текст в буфер

10.18 Поиск и замена

/text Искать вперед образец text
?text Искать назад образец text
n Повторить последний поиск в том же направлении
N Повторить последний поиск в обратном направлении
/ Повторить последний поиск вперед
? Повторить последний поиск назад
[ addr ] s/from/to/ [ g ] Искать from и заменить его на to в текущей строке, или в указанном диапазоне addr (два номера строки разделенные командой; 1,$ весь файл). Заменить одно совпадение на строку либо все совпадения если g указано. Например, :3,20s/someword/anotherword/g. Заменит "someword" на "anotherword" начиная от строки номер 3 до строки 20. 'g' - означает замену всех совпадений.

10.19 Общие

:sh Вызывает shell (выход по CTRL-d)
:!команда Вызывает shell для исполнения команды
:set number Включает нумерацию строк
:set nonumber Выключает нумерацию строк

10.20 Команды линейного редактора

: Говорит vi что следующая введенная команда является командой линейного редактора.
:sh Временный выход в shell чтобы исполнить какие либо команды не покидая vi.
CTRL-d Выходит из shell запущенного преведущей командой в vi.
:n Переходит к строке номер nth текущего буфера.
:x,zw filename Записывает строки от x до z в новый файл называемый filename.
:$ Передвигает курсор к началу последней строки буфера.
:.,$d Удаляет все строки от текущей до последней.
:r filename Вставляет содержимое файла filename после текущей строки буфера.
:s/text/new_text/ Заменяет первый встреченный образец text на текущей строке на new_text
:s/text/new_text/g Заменяет все образцы text на текущей строке на new_text
:g/text/s//new_text/g Заменяет все встреченный в буфере образцы text на new_text.

10.21 Другие команды

u Отменить последнее изменение
U Восстановить текущую строку
~ Изменить регистр
J Соединить текущую строку со следующей
. Повторить последнюю команду изменения текста
CTRL-g Показать имя файла и номер строки

Гыгыгы smile Удачи в VI. Юзайте ee smile

Категория: manpages | Добавил: jsand (12.02.2009)
Просмотров: 1867 | Комментарии: 3 | Рейтинг: 0.0/0 |
Всего комментариев: 1
1 oGr  
0
Пробежал взглюдом между строк, но это на БДСМ смахивает ИМХО. For true nix users only )))

Имя *:
Email *:
Код *:
Сайт управляется системой uCoz