Алексей Федорчук
Написано: 2002, конец года
Последняя модификация: 2004.08,21
Редакторов для Unix-систем существует немало. Если ограничиться только
программами консольными, тут можно найти и таких монстров, как vim и emacs, и простые редакторы типа ee или pico, и промежуточные решения вроде joe (моя любовь) или jed. А если обратиться к редакторам для X Window - список для любой категории приобретает длину немерянную. Что выбрать?
Как известно, всякому овощу - свой фрукт. И если стоит задача достижения максимальной функциональности - с emacs или vim мало кто в состоянии конкурировать (не зря же emacs удостоился звания операционной среды - того же титула, который некогда присвоила Microsoft своему перлу - Windows 3.x). При потребностях более скромных (и преимущественно - не программерских) есть смысл присмотреться к редакторам промежуточной группы. А вот если основная задача выбираемого редактора - правка конфигурационных файлов,
возникает вопрос - а почему бы не ограничиться программами легчайшей весовой категории?
К тому же проблема выбора редактора, как и все в жизни, имеет оборотную сторону: чем богаче возможности, тем больше времени требуется на их освоение. А если претензии на первое время невелики, но это самое первое время - ограничено, выбор редакторов-легковесов как бы напрашивается.
И тут редактор nano вполне может сыграть роль своего рода амортизатора. Да, это не emacs, и даже не joe.
Но с задачей конфигурирования справляется успешно. А в освоении и`обращении - прост, как грабли. Не случайно во многих`Source Based дистрибутивах он, в числе прочих, предлагается в качестве общесистемного. В Gentoo Linux же, где при установке необходимость в ручном редактировании конфигурационных файлов возникает
весьма часто - так это просто единственный редактор, доступный на стадии инсталляции системы.
Итак, представляю: редактор nano, или, точнее, GNU nano. Официальным местопребыванием имеет - http://www.nano-editor.org. Генетически связан с pico - текстовым редактором, входящим в почтовый пакет pine, но, в отличие от него, распространяется на условиях лицензии GPL (и, что немаловажно, не тянет за собой почтовой системы - возможно, не всем нужной). Характеризуется авторами как маленький и дружелюбный. Что в целом
соответствует истине.
Запускается nano одноименной командой, можно - с
указанием имени файла, существующего или нового (в последнем случае,
как обычно, файл с таким именем будет создан). Поддерживается несколько
опций командной строки, как то: -T #, устанавливающей величину (в символах) табуляции, -i, включающей автоматические отступы, -w, отключающей режим переноса строк на границе экрана (что очень важно при редактировании конфигурационных файлов), и так далее. Полный их список можно посмотреть посредством
$ man 1 nano
После запуска nano перед глазами возникает нечто вроде следующего. Верху - титульная строка, в которой выводятся номер версии программы, имя открытого файла и, в правом углу, сообщение о том, что файл был изменен. В нижней части экрана можно видеть зону подсказки - список основных из управляющих клавишных последовательностей (образованных сочетанием Control+литера) с пояснениями на языке установленной локали.
Область между титульной строкой и зоной подсказки - рабочая, в ней осуществляется ввод и редактирование текста. В nano предусмотрен (в отличие, например, от vi и vim) только один режим работы. То есть текст вводится обычным образом, а для вызова команд предусмотрены управляющие последовательности.
В nano существует два вида управляющих последовательностей - Control+литера и Meta+литера. Посредством первых (частично дублируемых функциональными клавишами F1-F12) осуществляется редактирование текста и операции с файлами. Meta-последовательности предназначены для изменения настроек редактора (тот же результат достигается и опциями командной строки).
Напомню, что на клавиатуре PC роль Meta-клавиши выполняет обычно нажатие клавиши Alt (в некоторых раскладках - конкретно Alt'а правого, или, напротив, левого), или нажатие и отпуск клавиши Escape.
Control-последовательности - следующие (в скобках - дублирующие функциональные клавиши и, иногда, Meta-последовательности):
[ строка 4 из 81 (4%), символ 117 из 3092 (3%) ]
ispell);
Meta-последовательности работают обычно как переключатели. С их помощью выполняются следующие действия:
pico;gpm;Собственно, это и все. Функциональные возможности отнюдь не кажутся
исключительным богачеством. Однако со своей ролью - несложной правкой небольших конфигурационных файлов, - nano вполне справляется. И, к тому же, в нем предусмотрено еще и внешнее средство конфигурирования - rc-файл. Выполнив в нем некоторые манипуляции, можно несколько расширить функциональность редактора, в частности, обеспечить
подсветку синтаксиса.