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

       

Установка и настройка GtkDic.


Пакет берём , где и ptkdic. Если планируете собирать из "сырцов", то вам придётся установить devel-пакеты соответствующих библиотек (glib-devel, gtk+-devel, libMySQL-devel). К сожалению, GtkDic написан на GTK+ 1.2.x. Можно попытаться собрать его под GTK+ 2.x, но стабильность работы GtkDic в этом случае под вопросом.

Для того, чтобы GtkDic заработал, вы должны установить, как минимум, два пакета: gtkdic и gtkdic-simple. После этого вы должны отредактировать конфигурационный файл /etc/gtkdicrc (для глобальных настроек), либо создать файл ~/.gtkdic/gtkdicrc в домашнем каталоге пользователя. Минимальные изменения, которые нужно внести, это:

host = p4.home dicdb = ptkdic user = ptkdic_usr password =

Остальное по вкусу.

Возможно, вы заметили, что в случае с пользователем gtkdic_usr я оставляю переменную password, даже если пароль отсутствует. Можно, конечно, её убрать или закомментировать. Это не принципиально. Просто есть пользователь, есть пароль. А если пароль отсутствует, то каков он по умолчанию? Вот поэтому я и оставил всё как есть.

Запускаем (см. скриншот). Работает прямой и обратный поиск, а также поиск по частичному вхождению. Работают перевод выделенного текста и обратный перевод, но следует учитывать две вещи: первое -- выделять вы должны только слово (словосочетание или часть слова), встречающееся в словаре, а не целый кусок текста и второе -- у gtk+ свой буфер обмена (clipboard), а работу с system-wide xclipboard автор не доделал, поэтому этой возможностью вы можете воспользоваться, работая только в gtk+ приложениях. Хотя есть другой вариант -- собрать PtkDic под GTK+ 2.0 (./configure --without-old-gtk). Тогда эта проблема будет решена. Хотя я заставить работать GtkDic в таком варианте не смог (почему-то оказался заблокированным ввод в поля "English" и "Russian".).

Кроме этого, интерес представляют пакеты gtkdic-audio и gtkdic-audio_edit. Первый -- это gtkdic с возможностью воспроизведения произношения слова. Решение при этом выбрано простое (см. скрипт /usr/bin/gtkdic-say.sh пакета gtkdic) -- проигрывать mp3-файлы, размещённые в подкаталоге /tmp. Не ахти какой механизм работы со звуком, но как временное решение проблемы вполне подойдёт. Второй пакет вместе с возможностью аудио воспроизведения имеет встроенный редактор, позволяющий добавлять в базу новые словарные статьи (см. пункт меню "Update dictionary"). Если вы хотите отказаться от ввода данных, то воспользуйтесь пунктами меню "Undo last update" или "Undo all updates". (Это единственная из программ, рассматриваемых здесь, которая способна заполнять словарные статьи.)


Принцип работы редактора следующий -- в поле "English" вводите слово, а в окне, где обычно показываются словарные статьи, пишете свою статью. После этого выбираете пункт меню "Update dictionary". Недостаток редактора в том, что он не обновляет статью с таким же именем, а добавляет ещё одну. Так что будьте внимательны, если захотите воспользоваться этой возможностью. Да! И самое главное -- если вы используете предложенный мною вариант работы с базами, основанный на использовании двух пользователей, то напоминаю вам, что для добавления новых словарных статей у пользователя должны быть соответствующие права на это, поэтому замените пользователя gtkdic_usr на gtkdic_adm.

Как и PtkDic, GtkDic корректно работает с европейскими языками, используя тоже два шрифта для вывода на экран плюс автоопределение кодировки и имеет возможность печати.

И ещё. В составе пакета gtkdic есть скрипт, написанный на Perl, который представляет из себя простой веб-интерфейс

для доступа к словарям. Чтобы заставить его работать, вам нужно установить и настроить apache (подробнее об этом читайте дальше в п. 2.6 "Установка и настройка Apache с поддержкой PHP и phpMyLingvo.") и скопировать скрипт webdic.pl в подкаталог /var/www/cgi-bin, предварительно настроив в нём доступ к базе данных:
... my $dbhost = 'p4.home'; my $dbname = 'ptkdic'; my $dbuser = 'ptkdic_usr'; my $dbpass = ''; ... И добавив в скрипт, после определения переменной $q, строку указывающую кодовую страницу для генерируемого html-документа:
... my $q = new CGI; $q->charset('KOI8-R'); # по умолчанию используется iso-8859-1 ... В данный момент проект не развивается, т.к. автор сделал то, что хотел, а желающих продолжить и развивать проект не нашлось. А жаль.


Содержание раздела