Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #76, АПРЕЛЬ 2005 г.

VIM: Ключ к совершенству

j1m (j1m@list.ru)

Хакер, номер #076, стр. 076-100-3


Когда работаешь сразу с несколькими файлами, удобно видеть их одновременно на экране. Vim предоставляет такую возможность, позволяя разбить экран на несколько окон. Команда ":split" делит текущее окно пополам по горизонтали, а ":vsplit" - по вертикали. Переход между окнами - комбинация "Ctrl+w". "Убивает" окно стандартная команда ":q".

Наверное, тебя уже достало все время работать с файлами в разных кодировках. Тем более неудобно такие файлы редактировать. Не беспокойся, vim тебе поможет. Просто открывай файл так: ":e ++enc=кодировка сам_файл".

Еще одна полезная особенность команды ":e" - если вместо имени файла указать каталог, то на экране появиться его содержимое, и ты сам сможешь выбрать нужный файл.

Очень часто требуется вставить в текст содержимое другого файла или вообще результат выполнения команды. Такая потребность чаще всего возникает во время почтовой переписки для вставки в письмо каких-либо логов. Итак, допустим, у нас есть лог с именем log.txt, и нам нужно скопировать его содержимое в текст, выполняем команду ":r log.txt", и содержимое файла появляется прямо под курсором. Вставить строки, выдаваемые командой не сложнее, вот так, например, можно поместить в текст текущую дату: ":r !date".

В vim есть пара операторов, меняющих регистр символов: "gu" (перевести в нижний регистр) и "gU" (перевести в верхний регистр).

Делай с ним, что хочешь

Vim можно настроить для любых ситуаций и вкусов, он позволяет изменять практически все свои параметры. Я приведу небольшой (для vim) пример довольно стандартного конфига на все случаи жизни. Единственное, что следует запомнить, все конфигурационные опции можно менять во время работы vim в режиме командной строки. Кстати, комментарии в конфиге vim начинаются со знака ".

$ vi ~/.vimrc

" Отключить режим совместимости с vi. Позволяет использовать полезные свойства редактора, отсутствующие в оригинальном vi.

set nocompatible

" Подсветка при поиске.

set hlsearch

" Игнорировать регистр при поиске.

set ignorecase

" Визуально показывать перенос длинных строк. Перенесенные строки будут начинаться с символа '+'.

set showbreak=+

" Автоматическая табуляция. Если текущая строка начинается с TAB, то и следующая тоже.

set autoindent

" Показывать в правом нижнем углу экрана координаты курсора.

set ruler

" Показывать подсказку при вводе длинных команд

set showcmd

" Цветовая тема. Описание бери в каталоге /usr/share/vim/vim63/colors

colors default

" Язык справки. Только если установлен пакет ruvim.

set helplang=ru

" Подсветка синтаксиса. Очень поможет программистам, и не только.

syntax enable

" Подключать специфические модули для разных языков программирования.

filetype plugin on

Зачем нам IDE?

Ты никогда не слышал, что отвечают бывалые UNIX-кодеры на вопрос о среде программирования. В ответ они говорят о том, что *nix сама по себе интегрированная среда разработки, и рекомендуют пользоваться одним из двух редакторов: vim или emacs. После этого начинается жесткий флейм между поклонниками этих редакторов :). К чему это я? К тому, что vim обладает большими возможностями для редактирования исходных текстов программ, о которых я бы хотел рассказать в этой части статьи.

Назад на стр. 076-100-2  Содержание  Вперед на стр. 076-100-4