Linux для пользователя
Шрифт:
Исходя из этих рассуждений нижеследующее изложение разбито на три больших части, каждая из которых посвящена одному из выделенных типов редакторов. Первый вариант раздела с описанием каждого рассматриваемого ниже редактора был создан в том самом редакторе, который в этом разделе описан (эти первые варианты размещались мной на сайте [24] . Я надеюсь, что после чтения этих разделов вы сможете определиться с выбором текстовых редакторов. Конечно, критерии выбора могут у каждого оказаться свои. Но думаю, что для нас, русскоязычных пользователей, немаловажным фактором является возможность вводить и редактировать тексты на русском языке. Желательно также, чтобы пункты меню и сообщения программы тоже были русифицированы (правда, до некоторой степени
24
В настоящее время сайтне поддерживается, а все его содержание перенесено на сайтгде на моей персональной страничке вы найдете и упомянутые заметки.
12.5. Консольные редакторы ASCII-файлов
Начнем с рассмотрения редакторов текстового режима, т. е. работающих в консоли. Говоря о таких редакторах просто нельзя не упомянуть о редакторах vi и Emacs, но более основательно будет рассмотрен встроенный редактор оболочки Midnight Commander - Cooledit.
12.5.1 Редакторы типа vi
Редактор vi (или его несколько доработанные потомки) по умолчанию включается в любую UNIX-подобную систему, в том числе и во все дистрибутивы Linux. Все приверженцы UNIX, имеющие значительный стаж работы с этими ОС, знают и используют этот редактор. Описание редактора vi вы сможете найти если не в любой, то уж точно в большинстве книг, посвященных UNIX. У редактора vi имеется несколько потомков, которые в чем-то его улучшают и усовершенствуют. Это такие редакторы как Vim, bvi, Nvi, Elvis, Levee, vile, Wily (редактор Vim даже вызывается в Linux по команде vi). Краткий обзор редакторов этого класса вы можете найти в статье А. Фомичева "Текстовые редакторы для ОС UNIX" (Открытые системы, N 4, 1994 г.). Однако для тех пользователей, которые мигрировали в Linux из среды Windows, все эти редакторы вряд-ли покажутся удобными. Причина в том, что в этих редакторах нет привычных меню и подсказок (насколько можно судить по Vim версии 5.3) и надо запомнить множество клавиатурных комбинаций для ввода команд. При этом работа в редакторе организована в виде двух раздельных режимов - ввода текста и ввода команд, и новичок часто просто путает режимы. В общем без печатного руководства за освоение редакторов этого типа я бы вам браться не рекомендовал. И хотя те, кто освоил vi, часто прибегают к его помощи для редактировании простых файлов (особенно, конфигурационных файлов и скриптов), я считаю, что есть более удобные средства, а поэтому не рассматриваю редакторы типа vi (хотя не упомянуть о них не мог).
12.5.2 Редактор Emacs
Наибольшую известность среди редакторов, используемых в Linux, имеет Emacs. Он существует как в варианте для текстового режима, так и в варианте для графической оболочки. Некоторые даже говорят, что Emacs– это не редактор, а образ жизни, а в другом источнике его называют религией. Если вы хотите ближе познакомиться с Emacs, я могу рекомендовать вам недавно вышедший русский перевод книги Р.Столлмана о нем; поищите эту книгу, например, в виртуальном магазине "Болеро". Прекрасное вводное описание этого редактора вы найдете в книге А.Федорчука "Офис, графика, Web в Linux". Я, однако, считаю, что начинающим пользователям для редактирования ASCII-файлов целесообразно использовать CoolEdit– встроенный редактор файлового менеджера Midnight Commander.
12.5.3 CoolEdit - встроенный редактор программы Midnight Commander
CoolEdit– это простая в использовании программа с привычными для большинства пользователей (особенно для тех, кто работал с Norton Commander под DOS или с FAR под WINDOWS) комбинациями управляющих клавиш. Кроме того, надо учитывать, что обычно любая работа с файлом начинается с файлового менеджера, поскольку вначале нужно, как минимум, найти файл. Midnight Commander как раз и является таким файловым менеджером, причем переход к редактированию осуществляется простым нажатием клавиши ‹F4› после установки подсветки на имя найденного файла. Это мелочь, но удобно. Учитывая изложенные соображения, я начну подробный рассказ о текстовых редакторах именно с CoolEdit.
Встроенный редактор Midnight Commander (рис.12.7) вызывается во время работы в этой программе нажатием клавиши ‹F4› при условии, что в инициализационном файле Midnight Commander установлена в 1 опция "use_internal_edit". Его также можно вызвать независимо от Midnight Commander просто из командной строки, командой mcedit. Однако его истинное имя все же CoolEdit, в этом вы можете убедиться, если в режиме редактирования нажмете клавишу ‹F9› и откроете пункт меню Файл | Об авторах.
Рис. 12.7. Внешний вид окна редактора Cooledit
Этот редактор обеспечивает выполнение большинства функций редактирования, присущих полноэкранным редакторам текста. С его помощью можно редактировать файлы практически любого размера, поскольку верхняя граница для размера редактируемого файла составляет 16 Мбайт. Обеспечивается редактирование исполняемых (двоичных) файлов без потери данных.
Поддерживаются следующие возможности:
• копирование, перемещение, удаление, вырезание и вставка блоков текста;
• отмена предыдущих операций (по комбинации клавиш ‹Ctrl›+‹U›);
• выпадающие меню;
• вставка файлов;
• макро-определения;
• поиск и замена по регулярным выражениям (другими словами, по шаблонам, сформированным с использованием специальных символов), а также собственный вариант операций поиска и замены, основанный на функциях scanf-printf;
• выделение текста комбинацией клавиш ‹Shift›+‹стрелки› в стиле MS Windows - MAC (только для linux-консоли);
• переключение между режимами вставки-замены символа.
Редактор очень прост и практически не требует обучения (тем более, что можно найти версии, в которых основная часть пунктов меню русифицирована, такая версия была включена, например, в дистрибутив Black Cat 5.2). Для того, чтобы узнать, какие клавиши вызывают выполнение определенных действий, достаточно просмотреть выпадающие меню, вызываемые нажатием клавиши ‹F9› в окне редактора (рис. 12.8).
Рис. 12.8. Выход в меню Cooledit по клавише ‹F9›
Если вы работаете в консоли Linux, для работы с блоками текста можно использовать следующие комбинации клавиш: ‹
• Shift›+‹клавиши стрелок› - выделение блока текста;
• ‹Ctrl›+‹Ins› - копирует блок в файл cooledit.clip;
• ‹Shift›+‹Ins› - производит вставку последнего скопированного в cooledit.clip блока в позицию курсора;
• ‹Shift›+‹Del› - удаляет выделенный блок текста, запоминая его в файле cooledit.clip.
Если у вас установлена программа gpm– драйвер мыши для консоли, то вы можете нажать на левую кнопку мыши в начале выделяемого блока, перенести курсор в конец блока и отпустить кнопку (тем самым выделить текст), а затем перенести курсор туда, куда надо вставить фрагмент, и нажать на правую кнопку мыши для вставки выделенного текста.
Редактор поддерживает макросы. Для того, чтобы определить макрос, нажмите ‹Ctrl›+‹R›, после чего введите строки команд, которые должны быть выполнены. После завершения ввода команд снова нажмите ‹Ctrl›+‹R› и свяжите макрос с какой-нибудь клавишей или комбинацией клавиш, нажав эту клавишу (комбинацию). Макрос будет вызываться нажатием ‹Ctrl›+‹A› и назначенной для него клавиши. Макрос можно также вызвать нажатием любой из клавиш ‹Alt›, ‹Ctrl› или ‹Esc› и назначенной макросу клавиши, при условии, что данная комбинация не используется для вызова какой-либо другой функции.