Наши партнеры

UnixForum






Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Тематический каталог -> Работа в консоли Linux

Лучший редактор для программистов

Автор: Roxana Popa
Оригинал: Programmer's best editor
Перевод: Костромин В.А.
Дата перевода: 18 октября 2007

При копировании материала обязательны указание автора, переводчика и ссылки на оригинал статьи и настоящую страницу как первоисточник перевода!

Когда речь заходит о текстовых редакторах, то никто не станет утверждать, что выбрать не из чего. Простейший поиск в Wikipedia даст вам впечатляющий список по крайней мере из 34 таких редакторов, от ориентированных на терминал Joe или Nano до более усовершенствованных разработок, таких как Emacs или gPHPedit. В общем, вы найдете длинный ряд редакторов, каждый из которых создавался с целью наиболее полного удовлетворения запросов той или иной группы пользователей.

Vim стоит особняком в этом ряду. Он может стать очень мощным инструментом в руках умелого программиста. Да, я именно это имею в виду... "программиста", поскольку Vim ориентирован в основном на этот класс пользователей и часто его называют редактором для программистов. Хотя это не является строгим правилом. Обычный пользователь тоже может попытаться использовать Vim, но он должен будет предварительно пройти небольшой курс обучения, а я не думаю, что кто-то будет начинать изучать достаточно сложный инструментарий, если требуется всего-навсего выполнить какие-то простые операции, для выполнения которых существуют гораздо более простые решения. Однако для тех, кто заинтересуется Vim, его создатель выпустил руководство, которое призвано помочь изучающим. Имеется и учебник по Vim для начинающих, который можно открыть, набрав vimtutor в командной строке Unix. И, если в начале обучения процесс освоения Vim идет достаточно медленно, после того, как пользователь освоит основы работы в редакторе, дальнейший прогресс проходит очень быстро и процесс редактирования становится значительно более эффективным.

Из-за довольно специфичного интерфейса Vim не похож по внешнему виду на другие редакторы общего назначения. Его можно сравнить разве что с его предшественником, vi, и то до известной степени; в остальном же присущие Vim качества трудно найти в других редакторах. Редактор vi первоначально был написан Биллом Джоем (Bill Joy) в 1976 году для одного из первых релизов BSD. Преимуществом vi являлось то, что он имел несколько режимов работы, то есть был многорежимным или модальным редактором (a modal editor) и вследствии этого одна и та же клавиша или последовательность клавиш получала разные значения в зависимости от того, в каком режиме находился редактор. Тот факт, что vi запускался гораздо быстрее, чем существовавшие в то время версии Emacs, и требовал гораздо меньше памяти, сделало его популярным среди пользователей Unix. В соответствии с опросом, проведенным в 1991 году, половина опрошенных ответила, что они используют vi, что является очень высоким процентом. Vim, который является улучшенной версией vi, унаследовал всю функциональность последнего и приобрел еще некоторые дополнительные качества. VIM (его название является сокращением от Vi IMproved) включает, кроме многих других, такие возможности как история команд, автодополнение имен файлов, несколько буферов редактирования , подсветку синтаксиса, поддержку мыши, графические версии, визуальный режим (visual mode), возможность разделения окна (как вертикально, так и горизонтально) и множество новых команд редактирования. Он стал стандартной версией vi в большинстве Linux-систем.

Тот факт, что многие из свойств, присущих Vim, очень полезны при редактировании исходных кодов программ, делает его в высшей степени популярным среди программистов и разработчиков. В качестве маленького примера можно привести подсветку синтаксиса, которая доступна для очень широкого спектра типов файлов. Следует также упомянуть, что хотя Vim является мощным текстовым редактором, он не является текстовым процессором.

Как было сказано выше, Vim является многорежимным редактором. Это означает, что он имеет несколько режимов работы, которые отличаются по своей функциональности. Режимом, используемым по умолчанию, является режим Нормальный (Normal), в котором пользователь может вводить такие команды редактирования, как перемещение курсора, удаление текста и так далее. Другое интересное свойство Vim заключается в том, что в нем все действия могут быть легко выполнены с использованием одной только клавиатуры, что позволяет сэкономить массу времени и обеспечивает более быстрый способ выполнения различных задач. Режим Визуальный (Visual) очень похож на Нормальный, но команды перемещения вызывают подсветку (выделение) текста. Можно задать выделение символа, строки или блока текста. Режим Вставки (.Insert) используется при вводе текста. Ему подобен и режим Замещения (Replace). Разница между этими двумя режимами состоит в том, что режиме Замещения вводимый символ заменяет в буфере существующий символ. В режиме Выбор (Select) вы можете делать выделение текста. Выделенная область будет автоматически заменена на введенный символ, причем это приведет к переходу Vim в режим вставки. Кроме этих "стандартных" режимов существуют еще различные "гибридные", такие как Визуальная вставка (Insert Visual), Выбор и вставка (Insert Select) или Нормальная вставка (Insert Normal). И если вы думаете, что это все, вы ошибаетесь. Создатель добавил в набор режимов еще режимы Командной строки (Command-line), режим редактора Ex и режим редактора Evim.

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

Плюсы

Vim - это профессиональный текстовый редактор, ориентированный в первую очередь на программистов. Однако он может быть с успехом использован любыми другими пользователями. Vim был назван читателями журнала Linux Journal лучшим текстовым редактором в 2001, 2002, 2003, 2004 и 2005 годах, я думаю, это много говорит о его эффективности.

Минусы

Неприятная для большинства пользователей сторона Vim заключается в том, что для его использования надо осилить первоначальный курс обращения с ним. Однако, если вы преодолели это препятствие, вы получите значительные преимущества, так что я полагаю, это стоит затраченных усилий.

Итог

Vim - это мультиплатформенный текстовый редактор, что означает, что вы можете использовать его независимо от того, какая операционная система управляет вашим компьютером. Полностью совместимый с vi, Vim обладает всей функциональностью обычного текстового редактора, включая проверку правописания, поддержку Unicode, возможность отмены большинства последних операций редатирования, встроенную подсказку и так далее. Вместе с тем, он имеет дополнительные функции и возможности, что делает его мощным и надежным инструментом в руках умелого пользователя.

Вы можете просмотреть приводимые ниже картинки для того, чтобы составить более полное представление о Vim (щелкните по картинке, чтобы увеличить ее).

Просмотр изображения Просмотр изображения Просмотр изображения Просмотр изображения

Просмотр изображения Просмотр изображения Просмотр изображения Просмотр изображения


Дополнение от переводчика:

Должен признаться, что долгое время я не признавал необходимости осваивать Vim, поскольку вполне обходился встроенным редактором файлового менеджера Midnight Commander. Однако в один "прекрасный момент", как это принято говорить, я оказался в ситуации, когда в моей Linux-системе что-то сломалось, я смог загрузиться только в однопользовательский режим, причем оказался в чистой оболочке и Midnight Commander тоже был недоступен. А вот Vim успешно запустился (может это был и vi, не могу точно утверждать). Тут я и понял, что освоить этот редактор просто необходимо, чтобы иметь возможность в любой ситуации подправить конфигурационные файлы. И не зря все опытные администраторы всегда предпочитают для выполнения каких-то настроек в системе использовать именно Vim.

Как оказалось, приобрести первоначальные навыки работы с Vim не так уж и сложно. Не могу сказать, что я овладел им основательно, но поправить пару строк в файле мне уже под силу. Тем более, если воспользоваться одной из кратких сводок команд, которые легко найти в сети Интернет (как на русском, так и на английском).

Если вы пока еще не освоили Vim, рекомендую заняться этим не откладывая. Помощь в освоении вам окажут многочисленные статьи (вполне себе на русском языке), часть которых можно найти с помощью моего каталога ссылок или обычного поиска в Интернет с помощью вашей любимой поисковой системы.