Sdictionary по-русски
В связи с постоянными вопросами "а я ничего не разобрал что это,
как ставить и почему не работает" сделан этот раздел. Тут я сжато
попытаюсь изложить что к чему.
Итак, что тут лежит? Все относящееся к проекту Sdict, которым я
занимаюсь в свободное время. Sdict это попытка сделать действительно
удобный мультиплатформенный словарик за который к тому же не надо
платить $ жадным разработчикам. Sdict использует свой уникальный
формат словарей, к которому существует конвертор, позволяющий делать
преобразование между .dct файлами (сжатый бинарный формат) и обычными
текстовыми файлами. В качестве кодировки для слов и статей
используется utf8, что позволяет создавать словари на любых языках.
Коллекция словарей постоянно пополняется и если у кого-то есть желание
помочь и внести свой вклад (словари, советы, идеи и все прочее) - мои
координаты можно найти на главной странице.
В настоящее время доступна оболочка ptksdict и коллекция словарей.
ptksdict написана на Perl и работает под Windows или UNIX OS.
Также существует словарная оболочка для Symbian OS.
Как запускать?
UNIX (Linux / FreeBSD и иже с ними)
1. Проверить, работает ли Perl и есть ли необходимые библиотеки:
>perl -MTk -MCompress::Zlib -e 'print "$] $Tk::VERSION $Compress::Zlib::VERSION \n"'
В ответ должна распечататься строчка типа
5.008005 804.027 1.33
что означает версию Perl, версию библиотеки Tk и версию библиотеки Zlib.
Если версия Perl меньше 5.008 или версия Tk меньше 803.xxx вероятнее
всего юникода видно не будет. Нужно скачать и установить более свежие
версии библиотек с CPAN.
Если в ответ вместо строки выводится куча ругани, нужно установить Tk
- забираем Tk-804.027.tar.gz или более свежую
отсюда
и/или Compress::Zlib, забираем Compress-Zlib-1.33.tar.gz или более
свежую отсюда.
2. Убедиться что используемая X Window имеет юникодные
шрифты:
>xlsfonts | grep -i iso646 | wc -l
39
В ответ получаем некое число, равное числу установленных шрифтов. В
моем случае - 39. Если 0, нужно установить и
настроить .
3. Если все идет хорошо (что вполне естественно для более-менее
свежих дистрибутивов), скачиваем ptksdict-x.y.z.rpm или
ptksdict_x.y.z.deb и устанавливаем:
>rpm -i ptksdict-x.y.z.rpm
или
>dpkg -i ptksdict_x.y.z_all.deb
Также можно установить вручную из tar архива. Для этого скачиваем
ptksdict-x.y.z.tar.gz, распаковываем
куда нравится, например в /opt/sdict и запускаем
>/opt/sdict/bin/ptksdict
4. Для более тонкой настройки нужно скопировать rc файл в
домашний каталог и отредактировать его.
>cd
>cp /opt/sdict/etc/ptksdictrc.sample .ptksdictrc
>vi .ptksdictrc
Например в параметре 'dictionary_dir =' можно указать, где находятся словари,
которые можно потом скачать, распаковать и положить в этот каталог.
Как запускать Jotter и Data смотрите в README, инструкции насчет Web
словарика находятся в самом .cgi файле в виде комментариев.
Windows
1. Скачиваем ActivePerl отсюда и
устанавливаем его. Нам нужна версия 5.8.4.810 или более свежая.
2. Скачиваем ptksdict-x.y.z.zip, распаковываем
куда нравится, например в c:\sdict.
[NB!] Не используйте имена, которые содержат символы пробела!
3. Кликаем правой кнопкой мышки на десктопе и делаем ярлык, нас
интересует c:\sdict\bin\sdict.bat.
4. Запускаем и радуемся. Словари нужно распаковывать и
складывать в c:\sdict\share\dicts\, .bz2 файлы неплохо распаковываются
свежим RAR'ом. Для большего удобства нужно указать в
свойствах нашего ярлыка самый маленький шрифт, опцию 'start minimized'
и выбрать иконку из c:\sdict\bin\sdict.ico.
Symbian OS
1. Скачиваем esdict-x.y.z.zip, распаковываем, копируем на PDA.
2. Кликаем на Sdict.SIS, устанавливаем.
3. Запускаем Sdict, жмем Ctrl-K, настраиваем каталог, где
будут лежать словари (.dct) и какие шрифты хотим юзать. Если Sdict ругается
'Not Found' - ставим STDLIB (находится в прилагаемом архиве
ER5STDLIBPatch.zip).
4. Копируем .dct словарики (.dct.bz2 нужно распаковать!) в
каталог, который указали в настройках Sdict.
5. Закрываем Sdict (Ctrl-E), запускаем снова и радуемся. У меня
все выглядит вот
так.
Все!
ЧаВо - частые вопросы и ответы на них.
В: А откуда такое кривое название?
О: Короткий ответ Sdictionary означает Software Dictionary
(тогда Hdictionary - это просто отпечатанный словарик). Длинный ответ
выходит за рамки данной статьи.
В: А нафига? Есть же dict, к тому
же описанный в RFC. Еще один велосипед?
О: Не просто велосипед, а с квадратными колесами! :-)
Dict использует клиент-серверную модель, к тому же протокол не позволяет сделать
простой и удобный интерфейс. С другой стороны, .dct формат требует немного
ресурсов для работы и заточен под использование в PDA устройствах.
В: Ну а клиент-сервер как? Удобно и не надо настраивать ничего. Хочу!
О: А легко. В комплекте есть cgi скрипт для таких случаев. Работает с
любым browser'ом, понимающим utf8 charset.
В: А вот мне бы словариков, разных и побольше...
О: Все что у меня есть, выложено и доступно для скачивания. Коллекция
словарей сделана при активном участии моих читателей (намек типа ;-) ).
Больше ничего нет.
В: Так это не базы а хренотень какая-то. Форматирования нет, все запущено.
О: Почти все словарные базы присланы моими читателями as is. Согласен,
форматирование вещь хорошая и нужная, но у меня просто нет времени
перелопачивать все. С другой стороны форматирование заложено в формат
словаря, так что любой может помочь причесать то что есть.
В: А вот Lingvo круче немерянно, а тут интерфейс ацтой полный да и
вообще...
О: Не берите в голову и продолжайте пользоваться пиратским (на 99%)
Lingvo. Письма с подобными комментариями автор отправляет в /dev/null
не читая (это мусорная корзина типа для тех кто не в курсе).
В: А вот как насчет картинок в словаре? Есть поддержка и какие-то
планы?
О: Это инструмент для работы, а не Третьяковская Галерея. Нет и не планируется.
[NB!] Любопытных и умелых отсылаю
сюда и по секрету говорю, что существует
новый формат - dct v2, у него есть возможность сохранения картинок и
других объектов. Будет ли развиваться эта ветка - зависит только от
наличия баз!
В: Ну а вот чтоб говорил, все-таки послушать произношение неплохо бы?
О: Все упирается в базы. Ну нету .mp3/.wav и взять неоткуда. В gtkdic
есть поддержка audio, а толку?
В: А у меня вот словарик с языка племени Нямба-Юмба на русский
(китайский, вьетнамский etc), как мне его сконвертить и использовать?
О: Для любознательных и пытливых сделан конвертор. Имя ему
sdict-tools.plx, примеры приложены.
В: А вот мне бы исходники словарей (автор жмот, зажал), а тут одни .dct.bz2.
О: Место на сервере довольно ограничено и я не имею возможности
дублировать все. В отличие от не будем показывать
пальцем
некоторых, исходники можно получить при помощи конвертора, который приложен и даже работает по непроверенным слухам.
В: А вот бы сделать это и еще то и под такую-то OS.
О: К сожалению мне нужно что-то кушать, поэтому как я уже упомянул,
делается все в свободное время, которого всегда не хватает. С другой
стороны чем больше человек участвует в проекте, тем быстрее можно
реализовать те или иные функции. Ближайшие (и не очень) планы как и
то, что уже сделано, можно посмотреть тут.
В: А я вот запускаю ptksdict под Linux'ом, а меня Perl ругает сильно.
О: Сначала почитать/обновить Perl. Если не помогает, снести Linux и
поставить Windows, с ActivePerl все работает как часы.
В: Не ввести русские буковки в Linux'е.
О: Лично я пользуюсь X Window / XLAT. Соответственно и locale у меня
не utf8, а однобайтовая. При вводе ptksdict перекодирует ввод в utf8 в
соответствии с 'input_encodings' из .ptksdictrc. По умолчанию это или
koi8-r или iso-8859-1. Если с клавиатуры все уже приходит в utf8 (как
в win32), то нужно использовать режим 'none' и закомментировать
'autoswitch_encoding' строчку.
[NB!] В ptksdict начиная с версии 1.2.3 есть native
support для разных языков, теперь все работает намного проще. Старый
режим ввода тоже поддерживается.
В: А вот ввод корейского/японского и все такое.
О: Вот тут я ничем не могу помочь, я не специалист по азиатским
языкам. Единственно, почитать предыдущий вопрос и настроить ввод так,
чтоб все приходило в utf8 или перекодировать, доступные charset'ы
можно посмотреть так:
perl -MEncode -e 'print "$_\n" for (@list = Encode->encodings(":all"));'
Перекодировать же нужно в utf8.
В: А вот я запускаю (Linux), а ничего не видно или окно программы
совсем маленькое, что делать?
О: Есть несовместимость с некоторыми WM, можно попробовать запустить с
параметром '--debug'. Ну или вручную изменить размер.
В: А можно как-то редактировать свои словари ну или просто заметки там
какие-нть делать а потом сконвертить в .dct?
О: Посмотрите на jotter,
который включен в дистрибутив. Кроме собственно просто блокнота он
имеет возможность криптования данных, использует компрессию и другие фичи.
Любую базу jotter'а можно сохранить как .sdct файл, непосредственно пригодный для
компиляции в .dct .
В: А как по-быстрому слепить свой словарик? Не хочу (нет времени)
ставить Perl и разбираться.
О: Вот тут все рассказано.
В: Ничего не работает на Apple Macintosh!
О: Да, не работает из-за big-endian архитектуры процессора.
Работать будет только если кто-то поможет с портированием (аууу...).
В: Хочу словарей, много и сразу (более редкий вариант - "Сделал свои словари, хочу поделиться с другими").
Что посмотреть?
О: http://www.pscience5.net/sdict.htm.
В: А как мне перегнать .dct файлы в StarDict, CoolDict, MegaDict...?
О: Работа с .dct описана в доке. Что же касается остальных форматов и
проектов, их использующих - спрашивайте у авторов. Я с некоторых пор
перестал отвечать на подобные письма.
В: Sdict для телефонов Nokia. Я поставил, а оно как-то криво работает?
Что не так?
О: Нужен ключик. В связи с прекращением продаж Sdict для телефонов
Nokia теперь любой желающий может получить такой ключик совершенно
бесплатно. Для этого нужно выслать IMEI, версию (полное имя SIS файла)
и пользователя/email (только латинские буквы) по электропочте. Если вы
используете бесплатные почтовые сервера вроде mail.ru, то есть большая
вероятность, что ответное письмо к вам не дойдет (спросите у админов,
а не у меня, почему они блокируют почту с некоторых адресов).
В: Как с поддержкой новых телефонов Nokia? Когда ожидать версию Sdict?
О: Никак. Ожидать не надо, нет и не планируется.
В: Ну а исходники Symbian можно получить? Я сам соберу под свой
любимый телефон.
О: (Нужно отметить, что это один из наиболее часто задаваемых вопросов по email) Я не планирую
открывать исходники! Совсем! На подобные письма не отвечаю. Любой желающий может написать свой GUI,
тем более, что библиотека открыта.
Tags: linux symbian dictionary
Назад в Sdictionary project
|