Текстовые редакторы

Зачем мне может потребоваться редактор?

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

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

Какой редактор лучше использовать?

Мы делаем упор на текстовые редакторы, которые помимо прочего могут быть использованы в системах без графической среды и в терминальных окнах. Дополнительное преимущество освоения текстового редактора заключается в использовании его на удаленной машине. Поскольку вам не нужно передавать всю графическую среду по сети, работа с текстовыми редакторами чрезвычайно повышает скорость работы сети.

Как обычно, существует несколько способов решения проблемы. Давайте посмотрим, какие редакторы обычно доступны:

GNU Emacs

Emacs является расширяемым, настраиваемым, самодокументируемым, отображающим в реальном времени редактором, известным во многих UNIX и других системах. Редактируемый текст отображается на экране и обновляется автоматически при вводе команд. Это и есть редактор реального времени, т.к. экран обновляется очень часто, обычно после каждого символа или пары введенных вами символов. Это минимизирует то количество информации, которую вы должны держать в голове при редактировании. Emacs называется продвинутым, т.к. он предоставляет возможности, выходящие за рамки простой вставки и удаления: контроль субпроцессов; автоматический отступ в программном коде; просмотр двух или более файлов за один раз; редактирование форматированного текста; и "разбирается" в значениях символов, слов, строк, предложений, абзацев и страниц, также как в выражениях и комментариях ряда языков программирования.

Самодокументируемый означает, что в любой момент вы можете ввести специальную комбинацию Ctrl + H, чтобы узнать, какие у вас есть опции. Вы можете также использовать это для выяснения, что делает какая-нибудь команда, или найти все команды, которые относятся к какой-нибудь теме. Настраиваемый означает, что вы достаточно легко можете изменить определения команд Emacs. Например, если вы используете язык программирования, в котором комментарии начинаются с "<**" и заканчиваются "**>", то можете сообщить Emacs команды манипуляции с комментарием при использовании этих строк. Другим видом настройки является перестройка набора команд. Например, если вы предпочитаете четыре основные команды движения курсора (вверх, вниз, влево и вправо) на клавишах клавиатуры, то существует способ переопределить клавиши.

Расширяемый означает, что вы можете выйти за рамки простой настройки и писать совершенно новые команды, программы на языке Lisp; интерпретатор Lisp входит в состав Emacs. Emacs является онлайн-расширяемой системой, это означает, что он разделен на множество функций, которые вызывают друг друга, и любая из которых может быть переопределена в середине сеанса редактирования. Почти любая часть Emacs может быть заменена без создания отдельной копии всего Emacs. Большинство команд редактирования Emacs уже написаны на Lisp; за некоторыми исключениями могли бы быть написаны в Lisp, но написанный на C для повышения эффективности. Хотя только программист может написать расширение, кто-нибудь может использовать его позже.

При запуске под X Window System (запускается как xemacs) Emacs предоставляет собственные меню и удобные привязки к кнопкам мыши. Но Emacs может обеспечить многие из преимуществ оконной системы исключительно в текстовом терминале. Например, вы можете просматривать или редактировать несколько файлов одновременно, перемещать текст между файлами и редактировать файлы во время работы команд оболочки.

Vi(m)

Vim означает "Vi IMproved" ("Vi Улучшенный"). Раньше считалось "Vi IMitation" ("Vi Подражание"), но существует так много улучшений, что изменение названия стало необходимостью. Vim является текстовым редактором, который включает в себя почти все команды от UNIX программы vi и множество новых.

Команды в редакторе vi вводятся только с помощью клавиатуры; в этом есть преимущество, т.к. ваши пальцы могут оставаться на клавиатуре, а глаза на экране, вместо того, чтобы перемещать руку несколько раз на мышь. Для тех, кому это нравится, могут быть активированы поддержка мыши и GUI версия с полосами прокрутки и меню.

В этой книге при редактировании файлов мы будем ссылаться на vi или vim, а вы, конечно, можете использовать редактор по вашему выбору. Тем не менее, мы рекомендуем, по крайней мере, изучить основы vi, потому что это стандартный текстовый редактор почти на всех системах UNIX, в то время как emacs может быть дополнительным пакетом. Могут быть небольшие различия между различными компьютерами и терминалами, но главным остается то, что если вы можете работать с vi, то сможете выжить в любой системе UNIX.

Помимо команды vim, пакеты vIm могут также предоставлять gvim, Gnome-версию vim. Начинающие пользователи могут найти, что он проще в использовании, так как в меню предоставляется помощь, на случай, если вы забыли или не знаете, как выполнять определенную задачу редактирования, используя стандартные команд vim.

Создано