Работа с текстами

Алексей Дьяченко, Виталий Липатов, Алексей Отт

Данный раздел включает описание только некоторых из доступных в дистрибутиве ALT Linux 2.4 Master средства обработки текста: редакторов, средств перекодировки и проверки орфографии, потоковой обработки текста, словарей, шрифтов, средств форматирования и подготовки электронных и бумажных изданий.

Emacs для начинающих

Алексей Отт

Что такое emacs?

emacs — один из наиболее мощных и широко распространённых редакторов, используемых в мире UNIX. По популярности он соперничает с редактором vi и его клонами.

В зависимости от ситуации, emacs может быть:

  • текстовым редактором;

  • программой для чтения почты и новостей Usenet;

  • интегрированной средой разработки (IDE);

  • операционной системой;

  • всем, чем угодно.

Всё это разнообразие достигается благодаря архитектуре emacs, которая позволяет расширять возможности редактора при помощи языка Emacs Lisp. На языке C написаны лишь самые базовые и низкоуровневые части emacs, включая полнофункциональный интерпретатор языка Lisp. Таким образом, emacs имеет встроенный язык программирования, который может использоваться для настройки, расширения и изменения поведения редактора. В действительности, большая часть того редактора, с которым пользователи emacs работают в наши дни, написана на языке Lisp.

Первая версия редактора emacs была написана в 70-х годах 20-го столетия Richard Stallman (Ричардом Столманом) как набор макросов для редактора TECO. В дальнейшем, уже будучи основателем Фонда Свободного программного обеспечения Free Software Foundation и проекта GNU, Столман разработал GNU Emacs в развитие оригинального emacs и до сих пор сопровождает эту программу. Вы можете подробнее ознакомиться с историей редактора, прочитав статью, располагающуюся по адресу http://www.wikipedia.org/wiki/Emacs.

emacs является одним из старейших редакторов. Он использовался тысячами программистов на протяжении последних 20 с лишним лет, для него создано много дополнительных пакетов расширений. Эти дополнения позволяют делать с помощью emacs такие вещи, которые Столман, вероятно, даже не считал возможными в начале своей работы над редактором. Более подробно я расскажу о них в следующих разделах.

Разновидности emacs

Существует две основных разновидности emacs — GNU Emacs и XEmacs. GNU Emacs — это развитие оригинальной версии emacs, написанной Столманом, а XEmacs — это версия с некоторыми добавлениями к интерфейсу и языку Emacs Lisp. О причинах, по которым образовалось две версии, можно прочесть по этому адресу. В большинстве случаев их поведение похоже друг на друга, но есть и некоторые отличия. Поэтому некоторые пакеты расширений могут работать только с конкретной версией emacs.

Кроме двух основных версий существует и множество других редакторов, считающихся вариантами emacs. Полный их список можно найти на странице Emacs Implementations and Literature.

В данном документе я буду рассказывать, прежде всего, о GNU Emacs, входящем в поставку Master. Однако большая часть сказанного применима и для XEmacs, а также для версий emacs в других дистрибутивах Linux.

Основы работы с emacs

Используемая терминология

В этом разделе описываются термины emacs, с которыми вы встретитесь при использовании редактора.

Буферы и файлы

Буфер — это основная единица редактирования; один буфер соответствует одному куску редактируемого текста. Вы можете иметь несколько буферов, но в каждый конкретный момент вы редактируете только один выбранный буфер. При этом, разумеется, если вы используете несколько окон, то видимыми могут быть несколько буферов. Чаще всего буферы обращаются к какому-либо файлу, считывая данные из файла в буфер, или записывая данные из буфера в файл.

Вы встретите термин «буфер» в документации по emacs, сообщениях программы, описаниях режимов и пакетов. Просто имейте в виду, что при работе с файлами буфер означает «копию файла, которая находится в памяти в данный момент». Однако необходимо отметить, что буфер не всегда соответствует какому-либо файлу на диске. Очень часто emacs создаёт буферы в результате выполнения ваших команд. Такие буферы могут содержать вывод команды, список для выбора вариантов и другую информацию.

Точка, область и метка

Точка (point) — это место в буфере, в котором происходит вставка или удаление данных. Считается, что точка находится между двумя знаками, а не на каком-то одном из них. Например, если курсор находится на букве «h» в слове «the», то точка находится между «t» и «h». Курсор терминала показывает положение точки.

Как и другие современные редакторы, emacs позволяет выполнять разные действия над фрагментами текущего буфера — изменение отступа, проверку орфографии, переформатирование, вырезание, копирование, вставку и т.д. Вы можете подсветить (или «пометить») блок текста, используя клавиатуру или мышь, а затем выполнить операцию только над выделенным блоком. В emacs такой блок текста называется область (region). Область — это текст между точкой и меткой.

Метка указывает на позицию в тексте. Она определяет один конец области, в то время как точка находится на другом конце области. Многие команды работают с текстом целиком от точки до метки. Каждый буфер имеет свою метку.

Окна и фреймы

Окно в emacs — это область экрана, в которой отображается буфер. Когда emacs запускается, у вас на экране отображается одно окно. При обращении к некоторым функциям emacs (таким, как оперативная справка и интерактивная документация) часто (временно) открываются дополнительные окна на экране emacs.

Окна emacs не имеют ничего общего с окнами графической среды X Window. Одно окно X Window может быть разбито на несколько окон в смысле emacs, в каждом из которых отображается отдельный буфер. Однако вы можете открывать для отображения буферов emacs и дополнительные окна X, например, при сравнении двух файлов. Эти новые окна X в жаргоне emacs называются фреймами.

Фрейм (frame) — это отдельное окно используемой оконной системы, в котором отображаются одно или несколько окон emacs. При этом несколько фреймов, открытых одновременно, являются частью одного сеанса emacs.

Запуск emacs

Чтобы запустить emacs, просто наберите в командной строке команду emacs (или xemacs, если вы хотите посмотреть на этот вариант emacs).

Рисунок 8.1. Вид основного окна GNU Emacs

Вид основного окна GNU Emacs

Как видно на рисунке, этот фрейм состоит из следующих частей:

  • полосы меню, предоставляющей быстрый доступ к основным командам emacs, а также к справочной информации;

  • основного окна, в котором производится редактирование текста. Это окно можно разделить на несколько окон. Помимо редактирования текста, основное окно используется для отображения данных теми пакетами, которые не связаны с редактированием, например пакетом gnus для чтения новостей usenet;

  • строки состояния, которая используется для отображения такой информации, как состояние буфера (изменён/не изменён), название буфера, текущее время, используемые режимы, а также позиция точки в буфере;

  • мини-буфера, который используется для ввода различных команд и их параметров, а также для отображения информации о производимых действиях.

После запуска emacs без каких-либо параметров в основном окне отображается буфер *scratch*, который используется для оценки выражений Emacs Lisp, а также для заметок, которые вы не хотите сохранять. Этот буфер не сохраняется автоматически, так что будьте осторожны!

Выход из emacs

Чтобы выйти из emacs, просто наберите сочетание клавиш C-x C-c (C-x означает, что надо нажать клавишу x, удерживая при этом клавишу Control, это справедливо и для C-c).

Кроме того, вы можете для выхода выбрать пункт Exit Emacs из меню File.

Получение помощи

В поставку GNU Emacs включена обширная справка (для описания функций и клавиш вызова справки смотрите таблицу Команды работы со справочной системой). Кроме полного руководства по GNU Emacs, в неё входит учебник для начинающих пользователей. В состав дистрибутивов ALT Linux также включён русский перевод учебника. Для его вызова нажмите сочетание клавиш C-h t, и далее следуйте инструкциям, приведённым в появившемся тексте.

emacs поставляется со встроенной программой чтения справки в формате Texinfo. В данном формате поставляется руководство по emacs, руководства по пакетам расширения, а также документация по большинству программ проекта GNU. Для запуска системы Info нажмите сочетание клавиш C-h i. При работе со справочной системой Info, вы в любой момент можете нажать клавишу h и получить справку о том, как пользоваться справочной системой.

Основы работы с клавиатурой

Командные клавиши

Для выполнения команд в emacs широко используются клавиатурные сокращения. Особенно часто используются сочетания различных клавиш с клавишами Control (обозначается как C-), Meta (обозначается как M-, на клавиатурах персональных компьютеров её роль часто играет клавиша Alt), и Shift (обозначается как S-). Эти клавиши также называются префиксными. Например, запись M-x означает, что надо нажать на клавишу x, при этом удерживая клавишу Meta (или Alt на клавиатурах персональных компьютеров).

Кроме отдельных префиксных клавиш, в emacs используются сочетания клавиш, которые рассматриваются как префиксные. В отличии от префиксных клавиш Control, Shift и других, такие сочетания клавиш не надо удерживать когда вы нажимаете следующую клавишу. Например, сочетание C-x C-f (команда открытия файла), означает, что надо нажать на клавишу x, удерживая клавишу Control, отпустить обе клавиши, а потом нажать на клавишу f, удерживая клавишу Control.

Префиксные сочетания клавиш различаются по назначению. Например, сочетание клавиш C-x является префиксом для основных команд редактора — открытия и сохранения файлов, а также многих других важных действий. Функции, привязанные к этим клавишам, не зависят от используемого режима. Кроме этого, сочетание клавиш C-h используется для доступа к разным разделам справочной системы.

В отличие от сочетания клавиш C-x, комбинация C-c играет роль префикса для вызова функций, зависящих от используемого режима. Например, сочетание клавиш C-c C-c при редактировании исходного текста на языке С приведёт к комментированию выделенного текста с помощью функции comment-region, а при редактировании файла в формате SGML приведёт к вызову функции sgml-show-context, которая отображает текущее положение точки в иерархии документа.

Перемещение в буфере

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

Таблица 8.1. Клавиши для перемещения в буфере

Сочетание клавишКомандаДействие
C-pprevious-lineВверх на одну строку
C-nnext-lineВниз на строку
C-fforward-charВперёд на один символ
C-bbackward-charНазад на один символ
C-abeggining-of-lineНачало строки
C-eend-of-lineКонец строки
C-vscroll-upВниз на одну страницу
M-vprevious-pageВверх на одну страницу
M-fnext-wordВперёд на одно слово
M-bprevious-wordНазад на одно слово
M-<beginning-of-bufferВ начало буфера
M->end-of-bufferВ конец буфера
C-gkeyboard-quitЗакончить (прервать) текущую операцию
 goto-lineПереход на заданную строку

Как правило, при работе в системе X Window, кроме перечисленных клавиш, также работают и привычные для пользователей персональных компьютеров клавиши управления курсором (например, стрелки).

Основные команды

Ниже в таблицах перечислены наиболее часто используемые команды, их действие, а также сочетания клавиш, которые используются для их быстрого вызова. Полная форма команды, приведённая в столбце «Команда», используется для запуска с помощью префиксного сочетания M-x, например M-x save-buffer.

Таблица 8.2. Команды работы с текстом

Сочетание клавишКомандаДействие
C-ddelete-charУдаление символа перед точкой
M-dkill-wordУдалить следующее слово
C-kkill-lineУдалить текст до конца строки
M-kkill-sentenceУдалить текст до конца предложения
M-\delete-horizontal-spaceУдалить все пробелы и знаки табуляции вокруг точки
C-qquoted-insertВставка символа, соответствующего нажатой клавише или сочетанию, даже если это управляющая последовательность
M-qfill-paragraphВыравнивает текст в текущем параграфе

Таблица 8.3. Команды работы с пометками

Сочетание клавишКомандаДействие
C-spaceset-mark-commandУстановить пометку в точке
C-@set-mark-commandУстановить пометку в точке
C-xC-xexchange-point-and-markПоменять местами точку и начало пометки
 mark-whole-bufferПометить весь буфер
C-wkill-regionУдаление выделенной области в список удалений
M-wkill-ring-saveКопирование выделенной области в список удалений
C-yyankВставка текста из списка удалений в текущую позицию
M-yyank-popПоследовательная вставка текста из списка удалений
C-xxNcopy-to-registerКопировать отмеченный текст в регистр (N может быть буквой или цифрой, позволяя использовать множество регистров)
C-xgNinsert-registerВставляет в точку содержимое регистра N
M-C-\indent-regionВыравнивание строк выделенного фрагмента

Таблица 8.4. Команды поиска и замены

Сочетание клавишКомандаДействие
C-sisearch-forwardПоиск строки вперёд
C-risearch-backwardПоиск строки в обратном направлении
replace-stringПоиск и замена строки
replace-regexpПоиск и замена с использованием регулярного выражения
M-%query-replaceПоиск и замена с запросом

Таблица 8.5. Команды работы с файлами буферами и окнами

Сочетание клавишКомандаДействие
C-xC-ffind-fileОткрыть файл на диске
C-xC-ssave-bufferСохранить буфер на диске
C-xC-wwrite-fileСохранить буфер в файле с новым именем
C-xC-blist-buffersОтобразить список открытых буферов в новом окне
C-xbswitch-to-bufferПереключиться в другой буфер в текущем окне
C-xC-csave-buffers-kill-emacsПеред выходом из редактора запросить о необходимости сохранения изменённых файлов
C-xiinsert-fileВставить содержимое файла в буфер в текущую позицию
C-x0delete-windowЗакрыть текущее окно (при этом буфер не удаляется)
C-x1delete-other-windowsЗакрыть все окна кроме текущего
C-x2split-window-verticallyРазделить окно по горизонтали
C-xoother-windowПереход в другое окно

Таблица 8.6. Команды работы со справочной системой

Сочетание клавишКомандаДействие
C-h?help-for-helpИнформация об использовании справочной системы
C-hthelp-with-tutorialИспользовать интерактивный учебник
C-hfdescribe-functionПоказать справку по функции
C-hvdescribe-variableПоказать справку по переменной
C-hkdescribe-keyПоказать данные, о том, что делает последовательность клавиш
C-haaproposПоиск в справке по строке/регулярному выражению
C-hFview-emacs-FAQПоказать emacs FAQ
C-hiinfoПоказать документацию по emacs (Info)

Таблица 8.7. Прочие основные команды emacs

Сочетание клавишКомандаДействие
M-xcommand Выполнить команду emacs с именем command
C-xuundoОтменить последнюю операцию
C-xrmbookmark-setУстановить закладку. Полезно при поиске
C-xrbbookmark-jumpПерейти к закладке

Расширения emacs

Для расширения возможностей emacs используются так называемые режимы — пакеты расширений, которые изменяют поведение буферов emacs при редактировании и просмотре текста. Режимы делятся на основные и вспомогательные.

Основные режимы определяют общее поведение редактора. Как правило, основные режимы предоставляют команды и функции для редактирования определённых типов текста. Например, существуют режимы для редактирования исходного текста программ на языках С или Perl. Обычно для конкретного буфера может одновременно использоваться только один основной режим.

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

Пакеты, входящие в состав дистрибутивов ALT Linux, обычно поставляются со сценариями, которые подключают режимы с определёнными параметрами по умолчанию. Вы можете настроить конкретные параметры для нужного вам режима, используя доступные для него команды настройки (смотрите раздел Настройка emacs).

Многие основные режимы автоматически загружаются (включаются) при открытии файла с соответствующим расширением. Вы также можете включить или отключить нужный режим вручную с помощью команды M-x name-mode, где name — имя режима. Например, команда M-x auto-fill-mode включает режим автоматического заполнения строк или отключает его, если этот режим ранее был включён.

Кроме того, включение или отключение режима можно производить путём установки истинного или ложного значения переменной с именем name-mode. Для установки переменной можно использовать команду M-x set-variable, которая запросит у вас имя переменной и значение для неё. Для истинного значения обычно используется значение t, а для ложного — nil.

Работа с исходными текстами программ

CC Mode

Этот основной режим используется при редактировании исходных текстов программ на языках C, C++, Java и Objective C. Режим предоставляет несколько стилей оформления текстов программ, каждый из которых определяет отступы, расположение открывающих и закрывающих скобок, а также многие другие параметры. Кроме того, данный режим обеспечивает правильную работу с выражениями соответствующего языка, а также подсветку ключевых слов и других элементов текста программы.

Режим также обеспечивает возможность компиляции программ прямо из emacs, а также интерфейс к отладчику.

Данный режим поставляется вместе с GNU Emacs. Как правило, он подключён (сделан доступным для emacs) по умолчанию, так что вы можете смело открывать исходный текст на соответствующем языке — режим будет загружен автоматически.

Perl

Для редактирования программ на языке Perl самым распространённым является режим cperl-mode. Он обеспечивает подсветку синтаксиса языка, а также много полезных дополнений: например, вывод подсказки о синтаксисе операторов языка или развёртывание сокращений в полные конструкции языка. Режим поставляется вместе с GNU Emacs.

Другие режимы для языков программирования

Кроме перечисленных выше режимов, в поставку GNU Emacs входит много режимов для работы с исходными текстами программ на различных языках программирования, таких как SQL, Python, Tcl, Fortran, Pascal, язык файлов make, языки разных командных процессоров, и многие другие...

Подробный список таких режимов можно найти в Emacs Elisp Archive (смотрите раздел Полезные ресурсы).

Пакет JDEE

JDEE — это среда разработки Java для emacs. Этот пакет обеспечивает эффективную работу с исходными текстами программ на языке Java.

JDEE позволяет компилировать, запускать и отлаживать как автономные программы, так и аплеты, написанные на языке Java. Кроме этого, пакет обеспечивает богатые возможности по автоматической вставке текста для различных конструкций Java, дополнение имён функций и переменных — членов классов, навигацию по исходным текстам и многое другое.

Пакет Emacs Code Browser

Emacs Code Browser (ECB) представляет собой интегрированную среду разработки, реализованную на основе emacs. В настоящее время эта среда может быть использована для работы с исходными текстами программ на языках C, C++, Java, Emacs Lisp. Работа с исходными текстами программ на языке Java особенно эффективна при использовании пакета JDEE, упомянутого ранее.

Рисунок 8.2. Окно emacs при запущенном Emacs Code Browser

Окно emacs при запущенном Emacs Code Browser

Как видно на рисунке, слева расположены четыре окна, в которых отображаются список рабочих каталогов, список файлов в выбранном рабочем каталоге, список функций/методов в текущем файле, а также список буферов. Справа располагается окно редактирования исходного текста программы. При смене текущего буфера изменяются и данные, отображаемые слева.

Для активации пакета необходимо выполнить команду M-x ecb-activate. После выполнения этой команды появится окно, изображённое на рисунке. Для прекращения работы необходимо выполнить команду ecb-deactivate.

Работа с текстами

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

Работа с SGML/XML/HTML

Для работы с текстами, для которых используются языки разметки XML/SGML/HTML, существует режим psgml. Данный режим существенно облегчает разметку текстов, позволяя вставлять теги и добавлять атрибуты для них. При этом psgml делает разбор документа и анализирует его DTD (определение типа документа), что позволяет использовать дополнение при вводе имён тегов, а также корректно редактировать атрибуты тегов. Вставка тегов также допускается только в тех местах, где это разрешено определением типа документа. Это позволяет уменьшить количество ошибок при разметке документов.

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

Кроме режима psgml, недавно появился режим nxml, который работает быстрее чем режим psgml, и больше ориентирован на работу с XML документами. При этом он предоставляет возможности сходные с возможностями режима psgml, в том числе проверку разметки документа на лету, во время набора.

На сайте Бориса Тоботраса выложен перевод главы из книги «SGML CD: Free SGML Software and How to Use It», которая посвящена использованию emacs для редактирования файлов в формате SGML.

Для работы с XSL-файлами могут использоваться пакеты xslide, xslt-process, xae. Некоторые из этих пакетов входят в состав дистрибутивов ALT Linux.

Работа с TeX/LaTeX

Для работы с файлами TeX/LaTeX основным режимом является режим auctex. Этот режим облегчает ввод команд разметки TeX/LaTeX. Кроме того, данный режим обеспечивает компиляцию файлов, просмотр результатов и обработку ошибок.

Для режима auctex существует несколько дополнений, которые позволяют просматривать результат обработки текста прямо в том буфере, где происходит его редактирование. Это пакеты preview-latex и x-symbol. Как выглядит окно emacs при редактировании текста с использованием пакета preview-latex изображено на рисунке.

Рисунок 8.3. Окно emacs при использовании пакета preview-latex

Окно emacs при использовании пакета preview-latex

Проверка правописания

emacs умеет проверять правописание текстов с помощью программы ispell. Поддержка этой программы входит в поставку GNU Emacs. Команды, которые производят проверку текста, начинаются со слова ispell-. Для разных буферов могут использоваться различные словари.

Помимо проверки текста по требованию, доступен вспомогательный режим, который называется flyspell-mode. Он проверяет слова по мере их ввода. Этот режим также входит в поставку GNU Emacs.

Другие режимы и пакеты

Режим MMM

Данный режим позволяет использовать несколько основных режимов в одном буфере (отсюда и пошло его название). Это особенно полезно для редактирования файлов, в которых в текст на одном языке внедрены фрагменты на другом языке. Например, этот режим может использоваться при редактировании файлов JSP, PHP, HTML::Mason. Данный пакет собран для Master под именем emacs-mmm-mode.

Пакет Speedbar

Пакет speedbar предоставляет возможность отображения иерархических данных. Это удобно для отображения файловой системы в виде дерева или отображения списка функций в файле с исходным текстом.

Для запуска пакета наберите M-x speedbar. При этом будет создан отдельный фрейм, содержащий отображаемое дерево. Пакет имеет множество настроек, так что вы можете легко настроить его под себя. Для получения дополнительной информации смотрите info-файл для Speedbar.

Пакет Tiny-tools

В этот пакет входит много самых разных полезных дополнений для различных режимов. Например, пакет tiny-perl, входящий в состав этого пакета, предоставляет команды для просмотра документации по модулям Perl, команды для редактирования документации и многое другое. Пакет tiny-tools можно скачать по адресу http://tiny-tools.sourceforge.net. Данный пакет также входит в состав дистрибутивов ALT Linux.

Пакет Tramp

Этот пакет представляет возможности доступа к файлам на других компьютерах. Этот пакет аналогичен по свойствам пакету Ange-FTP, однако Ange-FTP использует для перемещения файлов между машинами протокол ftp, тогда как Tramp использует команды rsh/rcp, или их более безопасные аналоги — ssh/scp. Данный пакет входит в состав дистрибутивов ALT Linux.

Контроль версий

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

Кроме CVS, emacs поддерживает работу с системой Subversion. Поддержка этой системы идёт вместе с пакетом subversion.

Командный процессор

Вы можете выполнять команды командного процессора прямо из GNU Emacs. Для выполнения одной команды вы можете использовать последовательность клавиш M-!, при этом результат выполнения отображается в мини-буфере. Но если вы хотите выполнить несколько команд с удобным просмотром результатов выполнения, то лучше использовать команду M-x shell, которая запускает командный процессор и предоставляет различные возможности по работе с историей команд.

Кроме возможности запуска внешнего командного процессора, для emacs существует пакет eshell (он поставляется вместе с GNU Emacs), который полностью написан на Emacs Lisp. При этом не запускается никаких внешних процессов, кроме тех, которые совсем уж необходимы для работы. Этот пакет разрабатывался как функциональная замена bash, zsh, 4doc и rc. Для его запуска вам нужно просто набрать M-x eshell, и перед вами возникнет привычная командная строка, только с дополнительными возможностями, которые вы можете расширять собственными силами.

Справочные страницы

Для чтения справочных страниц (man pages) GNU Emacs представляет два независимых интерфейса — man и woman (от сочетания without man — без использования команды man). Просто наберите команду M-x man или M-x woman и введите название нужной вам страницы, и она будет отображена в буфере emacs.

В отличие от команды man, команда woman позволяет использовать завершение для имён справочных страниц, однако работает медленнее. Кроме того, команда woman не использует никаких внешних программ для отображения справочных страниц (отсюда происходит её название).

Настройка emacs

Для настройки emacs используется специальный файл, который обычно находится в каталоге пользователя и называется .emacs. В этом файле содержатся выражения на Emacs Lisp, которые устанавливают значения переменных, загружают нужные пакеты и выполняют другие действия. В этот же файл записываются функции, определённые пользователем, которые затем могут вызываться им при работе с emacs. Кроме того, имеется общесистемный файл инициализации, с помощью которого администратор может обеспечить загрузку пакетов, необходимых для всех пользователей данного компьютера.

Первое время вы можете даже не заглядывать в файл настройки, а настраивать emacs через пункт меню Customize Emacs из меню Options, или с помощью команды M-x customize. Для того, чтобы ваши настройки автоматически восстанавливались при каждом запуске, их необходимо сохранить, нажав на кнопку Save в буфере настройки. При этом в ваш файл настройки записываются выражения Emacs Lisp, устанавливающие необходимые параметры.

Настройка русского языка в GNU Emacs

GNU Emacs для работы с разными языками использует MULE (Многоязыковые расширения для GNU Emacs). Это позволяет эффективно работать как с европейскими, так и с азиатскими языками.

Для работы с конкретным языком необходимо определить так называемое языковое окружение. Для ввода не-ASCII символов надо определить метод ввода. Для переключения между языками используется специальное сочетание клавиш C-\.

Чтобы настроить GNU Emacs для работы с русским языком (предполагается использование кодировки koi8-r), надо поместить в ваш файл настройки (~/.emacs) следующие строки:

        (set-language-environment 'Cyrillic-KOI8)
        (set-terminal-coding-system 'koi8-r)
        (set-keyboard-coding-system 'koi8-r)
        (setq default-buffer-file-coding-system 'koi8-r)
        (prefer-coding-system 'koi8-r)
        (define-coding-system-alias 'koi8-u 'koi8-r)
        (put-charset-property 'cyrillic-iso8859-5 'preferred-coding-system 'koi8-r)
        (codepage-setup 1251)
        (define-coding-system-alias 'windows-1251 'cp1251)
        (set-input-mode nil nil 'We-will-use-eighth-bit-of-input-byte)
        (setq-default coding-system-for-read 'koi8-r)
        (set-selection-coding-system 'koi8-r)

Этот код устанавливает кодировку KOI8-R в качестве основной кодировки для чтения, записи и общения с внешними программами. Кроме этого, определяется псевдоним для русской кодировки Windows — cp1251.

Для правильного отображения текстов необходимо установить для начертания default (это можно сделать с помощью команды M-x customize-face) шрифт, который содержит большой набор кодировок, включая кодировку для отображения UTF-8 (например, misc-fixed). Такая настройка позволит, например, нормально работать с русскими и немецкими словарями в одном буфере emacs.

Настройка вида Emacs

В пакете emacs-misc-modes, который входит в дистрибутивы ALT Linux, имеется библиотека color-theme. Она представляет пользователю набор готовых тем, которые он может загружать для изменения внешнего вида emacs. Для загрузки нужной цветовой схемы используются следующие команды:

        (require 'color-theme)
        (color-theme-gnome2)

Вместо

(color-theme-gnome2)

необходимо вписать название понравившейся вам цветовой схемы.

Полезные ресурсы

Emacs Elisp Archive

На этом сервере перечислены практически все режимы и расширения для основных разновидностей редактора emacs.

Перевод руководства по GNU Emacs

На сервере Русской команды перевода GNU опубликован перевод руководства по GNU Emacs. Возможно, этот перевод несколько устарел, но в любом случае он будет полезен для русскоязычных пользователей emacs.

Кроме того, в состав GNU Emacs и XEmacs входит учебное руководство, для которого есть русский перевод. Как правило, этот файл называется TUTORIAL.ru

Группы новостей

В сети usenet существует несколько групп, посвящённых работе с emacs. Названия этих групп начинаются с comp.emacs или с gnu.emacs. В этих группах часто можно получить полезную информацию и ответы на свои вопросы (но сначала загляните в имеющуюся документацию, возможно, там есть ответ на ваш вопрос).

Главная страница GNU Emacs

Главная страница GNU Emacs на сервере проекта GNU содержит основную информацию по GNU версии данного редактора.

EmacsWiki

Сайт EmacsWiki содержит много информации о emacs — пакетах, настройке и многом другом.

Благодарности

  • Jeremy D. Zawodny, за emacs Beginner HOWTO, который натолкнул меня на написание этого документа. Страница Jeremy содержит оригинал HOWTO, а также много ссылок на полезные ресурсы. Спасибо тебе, Jeremy!

  • Борису Тоботрасу, за консультации по emacs. Его сайт содержит много интересной информации о SGML, Linux, emacs и многом другом.

  • И, конечно, огромная благодарность всем людям, которые принимали участие в разработке разных версий emacs и пакетов расширений для них.

Процессор документов LyX

Виталий Липатов

О программе

LyX[35] — это система подготовки документов, работающая в среде X Window. LyX может быть использован как для написания короткого письма, так и для работы над объёмной книгой в тысячи страниц.

В обычных текстовых процессорах используется концепция визуального проектирования — WYSIWYGчто видите, то и получите»). При этом во время набора текста документ выглядит на экране дисплея так (или почти так), как он будет выглядеть на бумаге. Вам приходится об этом заботиться: выбирать шрифт, указывать его размер и начертание. И так для каждого абзаца. LyX берёт на себя всю эту рутинную оформительскую часть, а вам предоставляет возможность сосредоточиться на содержании и структуре документа. При этом больше не нужно нажимать пробел несколько раз подряд, нажатием Enter увеличивать интервал между абзацами, двигать мышкой непослушные рисунки.

LyX использует концепцию логического проектирования. Вы указываете класс печатного документа, оформляете ваш текст структурно, указывая для каждого элемента текста (абзаца) соответствующий стиль:«Раздел»,«Перечисление», «Нумерованный список» и так далее.

Для подготовки документа к печати он передаётся издательской системе LaTeX[36], которая оформляет его в соответствии с выбранным классом документа. Использование LaTeX определяет многие достоинства LyX, при этом вам совсем не обязательно знать команды LaTeX — большинство оформительских задач можно решить через меню в LyX или при помощи «горячих клавиш».

Созданный вами документ обычно проходит следующие преобразования: LyX->LaTeX->DVI->PostScript, прежде чем будет передан системе печати. Для удобства конечного пользователя это преобразование осуществляется в автоматическом режиме.

Для возможности проверки правописания должен быть установлен пакет из серии ispell-ru-* или aspell-ru-*. Если вы установите его уже после установки LyX, вам может понадобится переконфигурировать LyX (для пользователя через меню Правка->Переконфигурировать, для изменения глобальных настроек — запустить с правами администратора скрипт /usr/share/lyx/configure).

LyX поставляется с замечательной документацией, описывающей все аспекты работы с ним. Практически вся она переведена на русский язык и доступна через меню Помощь. Некоторую дополнительную документацию на русском языке вы можете найти в пакете lyx-rusdoc.

Вы должны быть готовы к тому, что окажетесь в непривычной и неудобной среде. Так вам будет казаться поначалу. Но освоившись, вы обязательно поймёте, что LyX в сочетании с LaTeX является удобным и мощным инструментом, позволяющим создавать красивые, хорошо структурированные документы.

Основные достоинства и возможности LyX

  • мощный аппарат сносок и перекрёстных ссылок;

  • непревзойдённое оформление математических формул любой сложности;

  • оформление различного рода списков и перечислений;

  • поддержка практически любого формата иллюстраций (все, с которыми работает библиотека ImageMagick, а это форматы от PS до JPG, PNG, TIFF и др.)

  • вставка таблиц и рисунков, в том числе в виде плавающих объектов, имеющих автоматическую нумерацию и автоматически располагающихся в нужном месте страницы;

  • поддержка различных языков в одном документе;

  • работа с библиографией;

  • поддержка вложенных документов;

  • проверка правописания;

  • контроль версий документа;

  • скромные требования к ресурсам компьютера;

  • экспорт и импорт из различных форматов;

    С помощью LyX можно воплотить в жизнь концепцию «одного исходника» — один и тот же исходный документ в LyX может быть сохранён в формате PostScript для высококачественной печати на принтере, HTML — для публикации в Интернете, PDF — для переноса документа на другие компьютерные платформы;

  • аварийное сохранение;

    Авторы LyX заботятся о том, чтобы их программа работала стабильно, а чтобы совсем исключить потерю данных, предусмотрено аварийное сохранение редактируемых документов при возникновении ошибки в программе;

  • простой формат документа LyX, представляющий из себя обычный текстовый файл разметкой LaTeX.

  • возможность создания документов в формате Docbook/XML.

Работа с LyX

Так выглядит LyX в процессе работы:

Создание нового документа

Для создания нового документа и указания его класса необходимо произвести следующие действия:

  • через меню Файл->Создать... создать новый документ;

  • вызвать диалоговое окно «Формат документа», воспользовавшись меню Формат->Документ...;

  • в поле «Класс» закладки «Документы» выбрать из разворачивающегося списка требуемый класс документа;

  • ответить на заданный вопрос об использовании некоторых установок по умолчанию «Да»;

  • нажать кнопку «Закрыть».

Структура документа

Документ LyX состоит из различных частей, имеющих разное назначение. Эти логически обособленные части документа называются окружениями («environments»). Каждое окружение включает в себя один или несколько абзацев. Совокупность таких окружений (возможно, вам более привычно название «стиль»), который вы можете выбрать для своего документа, называется классом документа.

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

Несколько советов

  1. Перевести в LyX документы с сохранением форматирования из таких форматов как Microsoft Word Document в большинстве случаев невозможно, поскольку они ориентированы на ручное оформление внешнего вида текста, а не на описание его логической структуры. Но можно воспользоваться консольной программой catdoc для получения текста из документа Word или просто открыть ваш файл DOC или XLS в программе Abiword или Gnumeric соответственно и экспортировать в формат LaTeX. Зачастую таблицы удобнее создавать в электронной таблице Gnumeric, переводя их в формат LaTeX и включая в свой документ через меню Вставить->Включить файл по ссылке.

  2. LyX только примерно показывает, как выглядит ваш текст, показывая и выделяя его структуру. Как будет выглядеть текст на бумаге — вы можете увидеть при предварительном просмотре (меню Просмотреть->Postscript).

  3. Не следует пытаться вручную нумеровать пункты, расставлять значки в перечислениях, формировать отступы абзацев пробелами, обращать особое внимание на отступы и интервалы в тексте. В большинстве случаев всё будет оформлено правильно автоматически.

  4. При необходимости изменить оформление (поля документа, параметры абзаца или шрифта), это можно сделать в меню Формат, первые три строчки которого именно за это и отвечают.

  5. Вставка в текст таких элементов как сноски, заметки, перекрёстные ссылки, рисунки, таблицы, осуществляется через меню Вставить.

  6. Для русскоязычных пользователей будут интересны шаблоны GOST (для оформления документов согласно ГОСТ) и delop (для оформления документа по традициям делопроизводства в России). Они будут доступны при установке пакета lyx-gost, содержащего класс GOST, предназначенный для оформления технической документации по ГОСТ 2.105-95 «Общие требования к текстовым документам», с рамками и основными надписями.

    Создание документа на основе шаблона осуществляется посредством меню Файл->Создать из шаблона . Далее из предложенного списка шаблонов нужно выбрать необходимый.

  7. Для значительного повышения производительности труда стоит изучить горячие клавиши — для начала нужно запомнить комбинации Shift-стрелки — выделение текста, Ctrl-X — вырезать в буфер обмена, Ctrl-C — скопировать в буфер обмена, Ctrl-V — вставить из буфера обмена.

  8. Обратите внимание на то, что для ввода знака тире « — » необходимо ввести три минуса подряд: «---». Чтобы получить знак номера «», введите «\No{}».

  9. Для создания действительно индивидуальных документов и собственных стилей вам придётся обратиться к документации по LaTeX. В сети достаточно статей с описанием LaTeX, в частности, благодаря любезности Владимира Сюткина () по адресу http://xtalk.msk.su/tex/syutkin выложен полный свод команд LaTeX. Многие полезные советы по использованию LyX можно найти в разделе LyXTips на сайте http://www.lyx.org.

Работа со словарями

Алексей Дьяченко

Введение

Все словари в Master хранятся и обрабатываются в кодировке UTF-8 (Unicode). Это позволяет иметь в словаре одновременно и транскрипцию, и русский текст, и немецкие умляуты, и множество других символов.

Установка пакетов и словарей

Для работы со словарями необходимо установить следующие пакеты

  • dictd — сервер словарей;

  • dict — командно-строковая программа для работы с сервером словарей.

Сейчас в дистрибутиве и репозитории пакетов Sisyphus находятся следующие словари:

  • dict-mueller7-utf8 — англо-русский словарь Мюллера 7-ой редакции с транскрипцией;

  • dict-web1913 — толковый словарь английского языка, написанный Вебстером и опубликованный в 1913 году;

  • dict-engcom — англо-русский словарь компьютерных терминов;

  • dict-jargon — словарь околокомпьютерного жаргона и сокращений;

  • dict-eng-deu — англо-немецкий словарь;

  • dict-deu-eng — немецко-английский словарь.

Для установки пакетов используется программа apt-get или любая из оболочек для этой программы. Более подробную информацию вы можете получить в разделе (Установка и удаление программ (пакетов)).

Настройка сервера dictd

После установки сервера dictd необходимо запустить его командой # service dictd start. Для того, чтобы сервер dictd запускался после каждого включения компьютера или перезагрузки, надо включить эту возможность в стартовых скриптах с помощью команд ntsysv или chkconfig dictd on.

Конфигурация сервера хранится в файле /etc/dictd.conf. По умолчанию он работает только с локальным сетевым интерфейсом.

Работа с клиентскими программами

Программа dict

Настройки клиентской программы

Список серверов, к которым обращается клиентская программа dict, хранится в файле /etc/dict.conf. По умолчанию используется следующий порядок:

  • localhost — локальный сервер словарей;

  • dict.org — сервер разработчиков сервера dict.

Настройка терминала

Для полноценного использования возможностей словарей рекомендуется запускать клиентскую программу dict в терминале, поддерживающем работу с кодировкой UTF-8. Стандартный терминал xterm работает с этой кодировкой, для этого необходимо запускать его с параметром -u8 и правильно установленной локалью. В систему XFree входит стандартный скрипт uxterm, который сам устанавливает нужную локаль и запускает xterm с необходимыми параметрами.

Для этого терминала можно установить предпочитаемые цвета и шрифты. Необходимо поместить следующие строки в файл .Xresources и выполнить команду xrdb -merge .Xresources

UXTerm*background:black
UXTerm*foreground:snow
UXTerm*font:       -misc-fixed-medium-r-normal-*-*-140-*-*-*-*-iso10646-1
UXTerm*boldFont:   -misc-fixed-bold-r-normal-*-*-140-*-*-*-*-iso10646-1

После этого текст в терминале будет отображаться белым цветом на черном фоне и шрифтом 15 размера.

Интеграция с оконным менеджером WindowMaker

Пользователям оконного менеджера WindowMaker можно создать кнопку для показа перевода выделенного слова. Для этого в пункте пути приложения и команды необходимо ввести следующую команду:

uxterm -hold -sl 200 -e dict -d mueller7  %s

и выбрать горячую клавишу для запуска этой команды.

Работа с терминалом, не поддерживающим unicode

Программа dict может быть запущена и в обычном терминале, не поддерживающем работу с кодировкой UTF-8. В этом случае вывод команды по возможности конвертируется в текущую кодировку пользователя. Символы, которые невозможно отобразить в этой кодировке, заменяются на символ "?". Если по каким-либо причинам необходимо отключить автоматическое преобразование, необходимо использовать параметр -n.

Графическая оболочка kdict

Программа kdict является частью среды KDE и находится в пакете kdenetwork-kdict. Для конфигурирования этой программы надо выбрать пункт меню Настройка->Настроить словарь. Для работы с локальным сервером словарей необходимо задать следующие параметры:

Сервер

127.0.0.1

Порт

2638

Кодировка

Unicode (UTF-8)

Работа со словарями из GNU Emacs и XEmacs

GNU Emacs и XEmacs поддерживают работу со словарями по протоколу dict (RFC 2229). При этом корректно поддерживается работа с dict, использующем кодировку UTF-8. В состав дистрибутивов ALT Linux входит пакет emacs-dictionary (xemacs-dictionary для XEmacs). При установке данного пакета устанавливается общесистемный сценарий, который осуществляет загрузку и базовую настройку пакета. Вы можете изменить параметры пакета, используя команды настройки Emacs (M-x customize) или изменяя настройки в общесистемном сценарии загрузки.

Шрифты

Растровые шрифты

Основными растровыми шрифтами в distro являются шрифты misc из поставки XFree86, а также шрифты Дмитрия Болховитянова XFree86-cyr_rfx-koi8-r в различных кириллических кодировках и шрифты XFree86-75dpi-fonts-unicode, созданные ASP Linux путём объединения шрифтов XFree86 и шрифтов Дмитрия Болховитянова.

Для правильной работы некоторых приложений с кириллицей важно, чтобы шрифты в требуемой кириллической кодировке стояли первыми в списке сервера шрифтов xfs. При установке системы это требование соблюдается, но если вы изменили основную кодировку системы, то может понадобиться доустановить пакет шрифтов в новой кодировке и поменять порядок путей в /etc/X11/fs/config.

Масштабируемые шрифты

Type1

Свободные шрифты Type1 в ALT Linux 2.4 Master стали основными шрифтами для приложений, использующих сглаживание. Современные версии библиотеки freetype2 позволяют обеспечить их качественный рендеринг.

Большинство приложений Qt/KDE и Gtk+2/GNOME 2 используют по умолчанию шрифты пакета urw-fonts с кириллическими глифами Валентина Филиппова. Эти же шрифты используются при печати из большинства приложений.

Мы рекомендуем также установить пакеты свободных шрифтов sharatype-fonts и dmtr40in-fonts, созданных Сергеем Шарашкиным (на основе шрифтов bitstream) и Дмитрием Сорокиным (оригинальный шрифт XlinSans).

Помимо предлагающих набор стандартных гарнитур пакетов общего назначения, в состав Master включены церковно-славянские шрифты проекта Ирмологион, предназначенные для набора церковных текстов, и декоративные шрифты проекта Vedi. Они не свободные, но бесплатные для многих применений — не забудьте ознакомиться с их лицензией.

Пакет шрифтов cm-super-fonts, созданный Владимиром Воловичем на основе шрифтов Ольги Лапко, является основным для нашего пакета teTeX, но, отчасти, может быть использован для отображения и печати. В TeX используется специфическая система именования шрифтов в отличная от системы, которая используется в библиотеках для работы со шрифтами Type1, поэтому большинство этих прекрасных шрифтов пока недоступны вне TeX.

True Type

Master содержит большое количество пакетов свободных шрифтов стандарта Unicode в формате True Type. Эти шрифты позволят вам читать и писать на большинстве языков мира, включая те из них, которые используют отличные от распространенных в европе системы письменности. Китайский, корейский, японский, арабский, хинди, армянский или малаялам — все эти языки доступны вам в сети Интернет и будут правильно отображаться любой программой с поддержкой Unicode, в том числе приложениями Gtk+2/GNOME 2 и Qt/KDE.

В комплект Master входят наборы свободных True Type шрифтов общего назначения val-fonts-ttf, содержащий шрифты от URW и Валентина Филиппова, и gw-fonts-ttf, включающий любительского качества, но покрывающие значительную часть набора символов UTF-8, включая некоторые редкие знаки, шрифты от Джорджа Вильямса. Также имеется пакет vera-fonts-ttf, в котором находятся высококачественные шрифты Bitstream Vera. Их можно практически без ограничений использовать при разработке собственных шрифтов.

Если вам часто приходится работать с документами, созданными в системах семейства Windows, то для их наилучшего отображения рекомендуется установить шрифты фирмы Microsoft ms-fonts-ttf. Это бесплатно распространяемый набор, включающий стандартные гарнитуры Times New Roman, Arial, Courier и другие, идентичные используемым приложениями Microsoft Office.

Символы многих алфавитов, включая такие как греческий, арабский и эфиопский, содержатся в стандартных шрифтах, однако для полной поддержки некоторых языков следует поставить специальные пакеты: armenian-fonts-ttf для армянского, georgian-fonts-ttf для грузинского, chinese-fonts-ttf-big5 и chinese-fonts-ttf-gb2312 для китайского, korean-fonts-ttf для корейского, japanese-fonts-ttf для японского, thai-fonts-ttf для тайского, malayalam-fonts-ttf для малайского, tibetan-fonts-ttf для тибетского, devanagari-fonts-ttf для хинди, bengali-fonts-ttf для бенгальского, urdu-fonts-ttf для урду, tamil-fonts-ttf для тамильского, syriac-fonts-ttf для ассирийского kannada-fonts-ttf для языка каннада.

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

Программы для работы с текстом

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

Одна из наиболее часто возникающих задач — создание и редактирование текстовых файлов. Любой компьютер будет практически нежизнеспособен, если в нем отсутствуют текстовые редакторы. Поэтому в состав стандартного программного обеспечения ОС UNIX с самого момента её появления входил стандартный редактор ed. По мере развития UNIX ed постоянно совершенствовался и в конце концов была разработана его расширенная и существенно дополненная версия — редактор vi (visual interpretator). Linux — это свободная реализация UNIX и поэтому «классический» редактор vi в продолжение традиции остаётся редактором по умолчанию в Linux.

Редактор vi может работать на любом видеотерминале (дисплее). Однако полная универсальность неизбежно приводит к определённым ограничениям, в т. ч. в удобстве работы. Так как не все терминалы имеют функциональную клавиатуру, vi не может рассчитывать на неё, поэтому для команд редактирования используются те же клавиши, что и для ввода текста. А последнее возможно только при наличии двух состояний — командном и ввода; и пользователю необходимо явно переходить от одного к другому. Однако к этому неудобству легко привыкнуть, а в остальном редактор vi вполне безупречен.

vim-common

Программы: ex, rview, rvim, update-vimhelp, view, vimdiff, vimtutor, xxd.

VIM (VIsual editor iMproved) — обновлённый и улучшенный вариант классического редактора vi. Хотя vi был первым полноэкранным редактором для UNIX, он по-прежнему широко используется. vim, сохраняя совместимость с vi, является современным текстовым редактором, со всеми (или почти всеми) свойствами, какие только можно пожелать: разбивка экрана на рабочие области — окна, подсветка синтаксических конструкций, три вида выделения блоков текста, фолдинг, мощный макроязык, сравнение текстов (vimdiff), полная документация и т. д. и т. п.

Пакет common содержит макробиблиотеку, документацию и другие необходимые для полноценной работы vim файлы. Установите этот пакет, если вы устанавливаете vim-enhanced или vim-X11.

vim-minimal

Этот пакет нужен для аварийно-спасательных работ. В отличие от других вариантов vim, устанавливается в /bin, и, поэтому, доступен всегда. Установите его, даже если вы планируете установить один из расширенных пакетов vim.

vim-X11

Программы: eview, evim, gview, gvim, gvimdiff, rgview, rgvim,

vim-X11 предоставляет полную функциональность vim, включая графический интерфейс для X11. Может работать и в терминальном режиме, поэтому замещает пакет vim-enhanced.

emacs-base

emacs — один из наиболее мощных и широко распространённых редакторов, используемых в мире UNIX. По популярности он соперничает с редактором vi и его клонами.

В зависимости от ситуации, emacs может быть:

  • текстовым редактором;

  • программой для чтения почты и новостей Usenet;

  • интегрированной средой разработки (IDE);

  • операционной системой;

  • всем, чем угодно.

Всё это разнообразие достигается благодаря архитектуре emacs, которая позволяет расширять возможности редактора при помощи языка Emacs Lisp. На языке C написаны лишь самые базовые и низкоуровневые части emacs, включая полнофункциональный интерпретатор языка Lisp. Таким образом, emacs имеет встроенный язык программирования, который может использоваться для настройки, расширения и изменения поведения редактора.

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

kdebase-kate

Программы: kate, kwrite.

Быстрый и расширяемый текстовый редактор с различными модулями.

kdeutils-kedit

Программы: kedit.

Удобный в использовании редактор текста.

kdeutils-khexedit

Программы: khexedit.

Редактор бинарных файлов для окружения KDE.

sed

Программы: sed, subst.

SED — неинтерактивный текстовый редактор, предназначенный для пакетного редактирования файлов. Полезен для:

  • редактирования очень больших файлов;

  • редактирования файлов любой величины, если последовательность команд редактирования является слишком длинной и сложной и, следовательно, неудобной для выполнения интерактивного редактирования;

  • выполнения множества раз одной и той же операции редактирования.

Программа копирует файлы (по умолчанию из стандартного ввода) в стандартный вывод, преобразовывая их в соответствии с указанными командами.

Перекодировка, проверка орфографии, обработка текстов

iconv

Пакет iconv содержит программу, которая позволяет конвертировать текстовые файлы из одной кодировки в другую.

Например:

iconv -f CP1251 - t KOI8-R foo.txt > foo.new.txt

перекодирует foo.txt из cp1251 (стандартная кириллическая кодировка Windows) в koi8-r (стандартная кириллическая кодировка Linux). Названия кодировок должны соответствовать их именам в /usr/share/i18n/charmaps. Список доступных кодировок можно увидеть по команде iconv -list.

recode

Библиотека recode преобразует файлы из одних кодировок в другие.

Библиотека recode преобразует файлы из используемой кодировки в заданную и наоборот. Библиотека распознает около 150 разных кодировок и способна производить преобразования между любыми возможными парами.

Данный пакет также содержит программу recode, реализующую функции этой библиотеки.

Пакет стремительно эволюционирует, и его спецификация может меняться от версии к версии. Например, работа с параметром -f уже реализована, но ещё не до конца.

ispell

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

Этот пакет следует установить, если вам нужна программа проверки орфографии.

Примечание: в этом пакете находится только механизм проверки. Вам нужно будет дополнительно установить словари для своего языка (пакеты, начинающиеся с ispell-*).

aspell

Программы: aspell, aspell-import, pspell-config, run-with-aspell, word-list-compress.

GNU Aspell — программа проверки правописания, разработанная для замены, в конечном счёте, ispell. Она может быть использована и как библиотека, и как независимая программа проверки правописания. Она значительно лучше своих аналогов, включая Ispell и модуль проверки орфографии Microsoft Word, предлагает возможные варианты написания. По крайней мере это верно для английского языка. В отличие от ispell, aspell значительно улучшен технически, например, используется общая память для словарей, если запущено более одного процесса программы.

gawk

Программы: awk, gawk.

Пакет gawk содержит GNU-версию программы awk, предназначенной для обработки текста, простых механических и вычислительных манипуляций над данными. Довольно несложные операции часто необходимо выполнить над целыми пакетами файлов, а писать для этого программу на одном из стандартных языков программирования утомительно и, как правило, не очень легко. Оптимальное решение проблемы — использование специальной утилиты AWK, включающей в себя не громоздкий и удобный язык программирования, позволяющий решать задачи обработки данных с помощью коротких программ, состоящих из двух-трёх строк.

Утилита AWK была создана в 1977 г. американскими авторами Альфредом Ахо (Alfred V. Aho), Брайаном Керниганом (Brian W. Kernighan) и Питером Вайнбергером (Peter J.Weinberger). Подробное описание всех возможностей утилиты AWK для UNIX даёт их издание: The AWK Programming Language, 1988. Gawk совместим с awk от Bell Labs и почти целиком совместим со стандартом 1993 POSIX 1003.2 для awk.

Установите пакет gawk, если вам нужна программа обработки текста. Gawk должен рассматриваться как стандартный инструмент Linux для этих целей.

Словари

dictd

Этот пакет содержит сервер словарей, который поддерживает DICT клиентов (DICT — словарный протокол). Существует несколько консольных и графических программ, позволяющих работать со словарями по протоколу DICT.

dict

Этот пакет содержит консольный клиент для DICT сервера. Он очень прост в использовании: достаточно набрать в любой командной строке dict слово — и вы увидите список всех определений для этого слова, найденных в доступных словарях (как установленных в системе, так и доступных через Интернет).

Для полноценного использования возможностей словарей (чтобы иметь возможность одновременно и транскрипцию, и русский текст, и немецкие умляуты, и множество других символов) рекомендуется запускать программу dict в терминале, поддерживающем работу с кодировкой UTF-8. В систему XFree86 входит стандартный скрипт uxterm, который сам устанавливает нужную локаль и запускает xterm с необходимыми параметрами.

kdict

Клиент dict (RFC 2229) для окружения KDE.

dict-web1913

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

dict-mueller7-utf8

Электронная версия англо-русского словаря Мюллера 7-ой редакции в формате DICT и кодировке utf8. Вы можете использовать его со своим любимым dict-клиентом.

dict-slovnyk_en-ru

Словарь Словник англо-русский.

dict-slovnyk_ru-en

Словарь Словник русско-английский.

dict-engcom

Пакет engcom содержит свободный англо-русский словарь компьютерных терминов в формате словарей DICT, составленный по мотивам реальной жизни, содержанию компьютерной прессы и рассылок.

dict-jargon

Словарь сообщества хакеров. Здесь вы найдёте пояснения к непонятным аббревиатурам, словам, выражениям и массу другой информации о профессиональном и жаргонном словоупотреблении.

ksocrat

Простая оболочка к русско-английскому и англо-русскому словарям Socrat для KDE.

Подготовка печатных документов

lyx-common

Программы: lyx.

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

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

Основное новшество в LyX — это WYSIWYM (What You See Is What You Mean — вы видите то, что вы имели в виду), которое означает, что автор сосредотачивается над своей работой, а не над деталями оформления документа. Это позволяет продуктивно работать, оставляя заключительное оформление специальному движку (такому как LaTeX), который специально разработан для подобных задач.

С LyX автор может сконцентрироваться на содержании своей работы и позволить компьютеру взять большинство забот об оформлении на себя.

lyx-rusdoc

Пакет lyx-rusdoc содержит дополнительные описания LyX'а на русском языке, а также документацию для класса текста GOST LyX/LaTeX, предназначенного для подготовки технической текстовой документации в соответствии с ГОСТ 2.105-95.

tetex

Система форматирования текста.

teTeX — это реализация системы TeX для Linux и UNIX. TeX обрабатывает текстовый файл командами форматирования и создаёт независимый от устройства вывода файл .dvi (DeVice Independent). Обычно TeX используется совместно с пакетами форматирования более высокого уровня, например, LaTeX или PlainTeX, потому как сам по себе TeX не очень дружелюбен к пользователю.

Установите пакет teTeX, если хотите использовать систему форматирования текста TeX. При установке teTeX можно дополнительно установить пакет tetex-afm (преобразование шрифтов PostScript(TM) для TeX), tetex-dvilj (преобразование файлов .dvi в формат HP PCL, пригодный для вывода текста на принтеры HP и совместимые с ними), tetex-dvips (преобразование файлов .dvi в формат PostScript для печати на принтерах PostScript), tetex-latex (пакет форматирования с понятным пользовательским интерфейсом) и tetex-xdvi (просмотр файлов .dvi в графической среде X Window). Если вы ещё не эксперт в ТеХ, то дополнительно можете установить пакет tetex-doc, который содержит документацию по системе TeX.

tetex-latex

Программы: elatex, hugelatex, latex, pdfelatex, pdflatex, pslatex.

Дружелюбный пользовательский интерфейс к системе TeX

LaTeX — это набор написанных на языке TeX макропакетов, предоставляющих удобный интерфейс к возможностям системы форматирования текста TeX. В LaTeX определено оформление для нескольких стандартных классов документов.

groff

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

scribus

Издательская система для Linux.

Программа создания оригинал-макетов, подобная Adobe PageMaker, QuarkXPress или Adobe InDesign, которая, в отличие от последних, является свободной программой, опубликованной под лицензией GNU GPL.

gv

Программы: ghostview, gv.

Графический интерфейс для ghostscript — интерпретатора PostScript(TM).

Графический интерфейс для интерпретатору PostScript(TM) — ghostscript. gv может отображать документы форматов PostScript и PDF в графической среде X Window.

Установите этот пакет, если вам нужно просматривать документы в форматах PostScript и PDF. Однако вам также придётся установить пакет ghostscript, и, естественно, систему X Window.

xpp

Панель управления принтерами в оконной системе X.

Панель принтеров в среде X (XPP) — это полностью свободный инструмент для простого выбора нужного принтера из списка доступных и изменения его настроек посредством простого и удобного графического интерфейса пользователя. Для запуска программы просто вызовите программу xpp (вместо обычных утилит lpr или lp) из командной строки или вашего приложения.

ghostscript

Интерпретатор и средство визуализации PostScript. Ghostscript — интерпретатор языка описания страниц PostScript и файлов в формате PDF (формат переносимых документов). Ghostscript преобразует PostScript во множество других растровых форматов, данные в которых можно выводить на принтер или экран. Обычно Ghostscript используется для просмотра файлов PostScript и для их печати на принтерах, не поддерживающих язык PostScript. Множество приложений используют PostScript для вывода данных на печать.

Установите пакет ghostscript, если вам нужен просмотр документов формата PostScrip или если ваш принтер не поддерживает этот язык.



[35] Произносится как «ликс»

[36] Произносится как «латех»