- BEST_PEOPLE (2:5077/15.22) ------------------------- BEST_PEOPLE (RU.LINUX) -
From : Igor Nikolaev 2:5030/266 25 Jul 00 07:43:58
Subj : vi - viminifaq
-------------------------------------------------------------------------------
* Forwarded from area 'RU.LINUX'
Dmitry Mikhailov <Dmitry_Mikhailov@p18.f97.n464.z2.fidonet.org> wrote:
> Как в сабже скопировать словостроку ? а то удалять, а потом вставлять
> вроде неудобно.
Вот мой древний viminifaq, влезает на печатную страницу:
===
vim - мощный красивый редактор. Знает мышь и X. Больше чем vi,
а внутри того ed. Есть режим команд, режим текста и режим ed'а.
Знание vi полезно для жизни. Имеет массу функций здесь не описанных.
переходы между режимами: текст --'esc'-> команды
команды --':'-> ed (выполняется одна команда)
Основные команды режима ed
:q выход
:q! аварийный выход
:w [имя] записать в файл, не указан - в текущий
:r имя прочитать сюда файл
если имя начинается с ! то это команда shell'а
Таким образом обычный выход из редактора это ':wq'
:s/образец/замена/g заменить в текущей строке,
если без 'g' то только один раз, 'с' спрашивает подтверждения
:s1,$/образец/замена/g заменить с первой до последней строки
:d10,20 сожрать строки от 10 до 20
:15 встать на 15 строку
.,$-10 это от текущей строки до (последней минус десять) строки
:set работа с параметрами :help помощь
Основные команды vi: работают стрелочки, можно без них:
^
< h j k l > Те: 'h' влево, 'j' вниз, 'k' вверх, 'l' вправо.
v
Перед любой командой можно повторитель, '20j' это 20 строчек вниз.
'w' и 'W' слово вправо, 'b' и 'B' слово влево.
У 'W' и 'B' разделители только пробелы и табы.
'e' как 'w' но до пробелов, '$' в конец строки, '0' в начало.
'^F' и '^B' это pagedown и pageup, 'x' и 'X' это delete и backspace
'u' это undo, 'U' undo строки в исходное состояние.
В vim есть '^r' redo, '^g' - статус файла.
'dперемещение' это cut, 'dw' ест слово, 'dd' строку, 'D' cut до eol,
'y' - copy, 'p' и 'P' paste до/после курсора.
Печатать текст: 'i' или 'a' (до/за курсором). Конец 'esc' или '^C'.
'^Vсимвол' вставить управляющий символ
'c' это change, после c указываем перемещение - работает как d,
но тут же входит в режим текста. 'rсимвол' заменить один символ.
'j' объединяет (join) две строки в одну через пробел.
'/образец' и '?образец' поиск вперёд/назад, 'n' и 'N' снова
'%' встать на другую скобку '~' поменять регистр символа
vim знает мышку, в xterm жмём shift чтобы получить обычную мышку,
настройка xterm в конце файла /usr/local/share/vim/doc/syntax.txt
Файл ~/.vimrc:
syntax on
set mouse=a
set tabstop=4
--
Игорь Hиколаев
--- ifmail v.2.12.os.sensi
* Origin: http://knot.pu.ru/faq/vim/viminifaq.html (2:5030/266@fidonet)