VIM: Ключ к совершенству j1m (j1m@list.ru) Хакер, номер #076, стр. 076-100-2 Для перемещения по тексту в vim служат клавиши 'h' (влево), 'j' (вниз), 'k' (вверх) и 'l' (вправо). Но это очень примитивный способ навигации по документу, иногда бывает удобнее прыгать между целыми словами, и здесь нам поможет команда 'w' (word). Она передвинет курсор на следующее по тексту слово. Вернуться обратно можно нажав 'b' (back). Так ты отправишь курсор к началу предыдущего слова. Если необходимо просто перейти к концу слова, то нажимай 'e' (end). Как и большинство других команд vim, эти команды принимают числовой префикс, указывающий на количество выполнений команды. К примеру, введя "3w", ты попадешь к началу третьего слова. Быстро вернуться к началу текста можно набрав "gg", а команда 'G' (go) "закинет" курсор в конец текста. Вообще-то 'G' чаще используется для перемещения к заданной строке, для этого необходимо предварительно указать номер строки, например, "92G" - перейти к 92 строке. Vim предоставляет пользователю две основные команды для удаления текста: 'x' и 'd' (delete). Первая затирает один символ под курсором и эквивалентна одиночному нажатию клавиши <DELETE>. Вторая предназначена для использования в связке с командами перемещения (т.е. является оператором). Например, "dw" - удалить все символы, начиная с позиции курсора и до начала следующего слова. Так как команды перемещения принимают числовой префикс, появляется возможность удалять сразу несколько слов: "d2w" - стереть два 2 слова. Удаленный текст не уничтожается безвозвратно, позже его можно вставить в любое место командой 'p' (put). Случайно удаленный текст можно восстановить при помощи команды 'u' (undo). Еще один родственник 'd' - команда 'y' (yanking). Она очень похожа на 'd', но используется для копирования текста. Как было сказано выше, удаленный текст можно позже восстановить, используя 'p'. Команда копирования используется так же, но текст она не удаляет. Полезности В этом разделе я кратко опишу некоторые полезные возможности vim. Поиск - неотъемлемая часть любого редактора. В vim поиск выполняется по регулярным выражениям. Все что нужно - ввести команду '/' и регулярное выражение, по которому будет происходить поиск. Не менее важной является функция замены, когда редактор проходит по тексту и меняет все слова, совпавшие с шаблоном. В vim такую операцию проделывает команда: ":[диапазон]s/шаблон/замена/[флаги]". В качестве шаблона используется регулярное выражение. Диапазон - это диапазон строк (весь текст - символ '%'), а флаги просто управляют поведением команды. По умолчанию заменяется только первое совпадение в строке, это можно изменить, указав флаг 'g'. Как и положено, возможность записи макросов тоже присутствует. Использовать эту фичу довольно просто, нажимаешь "qx", где 'x' - любая буква латинского алфавита. Теперь вводишь любые команды, снова нажимаешь 'q'. Все, макрос записан, для воспроизведения нажимай "@x" ('x' - это опять же буква). Vim умеет работать в визуальном режиме, для входа в который достаточно нажать 'v'. В этом режиме можно выделить блок текста, используя клавиши "hjkl", а затем удалить ('d'), копировать ('y') или произвести поиск и замену. |