|
Редактирование в Linux - текстовый редактор vi - стр.2
|
|
|
Функции редактора vi:
Перемещение курсора
Перемещение курсора в командном режиме выполняется алфавитно-цифровыми клавишами.
h, j, k, I - на один символ (одну строку), влево, вниз, вверх и вправо соответственно
^ или 0 - в начало текущей строки
$ - в конец текущей строки
w - на слово вправо
b - на слово влево
} - на параграф вперед (параграф - это блок текста, отделенный пустой строкой)
{- на параграф назад
Ctrl+f - на страницу вперед
Ctrl+b - на страницу назад
mметка - установить метку (метка задается одной латинской буквой)
'метка - перейти к метке
G - переход на последнюю или заданную строку
Кнопки стрелочной клавиатуры на большинстве терминалов также позволяют перемещаться по тексту.
Вставка и удаление текста
Основная функция редактора текстов. Пользователь должен иметь возможность вводить и удалять символы.
i - переход в режим набора методом вставки перед текущим символом
а - переход в режим набора методом вставки за текущим символом
R - переход в режим замены
о - вставка новой строки и переход в режим набора в этой строке
r - замена одного символа
х - удаляет символ справа от курсора
dd - удаляет строку
cc - заменяет строку
J - слияние текущей строки со следующей
Управляющие команды
u - отмена последней команды
. - повтор последней команды
: - переход в режим командной строки
Команды режима последней строки вводятся после нажатия ":" в командном режиме. Все символы вводимой команды отображаются в последней строке экрана. Далее для указания, что команда вводится в режиме последней строки перед командой приводится двоеточие.
Управление редактором
:set nu - включить нумерацию строк
:set nonu - отключить нумерацию строк
:set sm - включить указание парных скобок
:set nosm - отключить указание парных скобок
:!command - выполнить команду UNIX не покидая редактора
:q или :q! - выход из редактора без сохранения изменений
Считывание и запись файлов
Редактор vi позволяет сохранить введенный текст во внешний файл. При необходимости изменить содержимое существующего файла, редактор считывает его с диска. Текстовые редакторы распознают ASCII коды, это позволяет редактировать файл, созданный в одном редакторе, с помощью другого. Так emacs поддерживает работу с файлами, созданными в редакторе vi, и наоборот. Традиционно, для записи русских букв в Unix используется кодовая таблица KOI8-R, отличающаяся от кодировки принятой в MS-DOS или Windows. Команды считывания/записи выполняются в режиме последней строки.
:х - выход из редактора с записью, если файл был модифицирован
:w или w filename или w! filename - запись файла и возвращение в командный режим
:е filename или :е! filename - загрузка файла filename
:г filename - добавить содержимое указанного файла к редактируемому сразу за текущей строкой
Поиск текста
Одной из наиболее важных функций любого тестового редактора является возможность автоматического поиска вхождения в текст заданной последовательности символов. Редактор vim обладает расширенными возможностями поиска, поддерживая поиск как фиксированной строки символов, так и использование регулярных выражений (регэксп, regular expressions).
/pattern - поиск по образцу вперед
?pattern - поиск по образцу назад
n - повтор последнего поиска
Vim позволяет также осуществлять и поиск с заменой, при котором выполнив лишь одну команду, возможно изменить все вхождения заданной последовательности в тексте.
:1, $ s/образец/текст/g - поиск образца и его замена по всему тексту
Регулярные выражения включают метасимволы (., ?, *), позволяющие определить диапазон выражений для поиска.
Копирование и перемещение текста
Vim позволяет копировать, переносить, вырезать и вставлять фрагменты текста различного размера - от нескольких символов, до целых страниц.
yy или Y - копирует в первый буфер текущую строку
yw - копирует в первый буфер текущее слово
yG - копирует часть текста после курсора
y'метка - копирует в буфер текст от курсора до метки
p - вставляет текст из буфера
Редактирование буферов
Буферами называются области памяти для временного хранения данных до их сохранения на диске. Так, при создании нового файла, все вводимые данные помещаются в буфер, где и находятся до тех пор, пока файл не будет записан на диск. При выходе из редактора без сохранения файла содержимое буфера теряется. Все операции копирования и переноса фрагментов текста также осуществляются через буфер. При сохранении файла, все данные буфера записываются во внешний файл на диске.
|
|
|
|
|