Slovar2
Движок для словарей с открытыми форматами и исходниками
Состояние проекта
Чего хотелось бы иметь в PM
версии
Чего с этим всем можно сделать
Доступ с командной строки
Немного про локали
Поддерживаемые форматы для импорта
Загрузить
Формат словарей Slovar2
Описание исходников.
Состояние проекта
Slovar2 создан на основе идей Nike Korolev'a и исходников
словаpей, используемых в его Pmdict'е.
Slovar2 на сегодня состоит из
- описания фоpмата словаpей Slovar2
- утилиты, позволяющей работать со словарями из командной строки
- (включая комментрованные исходники на C++ с классами
словаря)
- CGI-модуля WWW-интерфейса к словарю
(включая исходники на C++ и HTML c javascript'ом)
- нескольких словарей
Над чем чешем репу
Имеется несколько десятков мегабайт различных словарей...
- а почему бы не запаковать их поплотнее ?? и не использовать
для этого свойства самого словаря...
Т.е. текст (любой, а не обязательно словарные статьи) делится на
словарь и командную последовательность с индексами слов словаря. |
Первые (хотя честно говоря, уже не первые) эксперименты
показывают, что можно добиться лучшего сжатия, чем при
использовании tar+gzip или bzip2, но выигрыш не слишком велик (10-15%) |
- импорт из форматов ╧2,3,4,....
- настройка CGI-версии для работы с конкретным словарем
- работа с несколькими словарями одновременно...
- Поиск (под)слова в словарных статьях словаря и/или словарей
- использование разных языков (разные LOCALE)
- сложение словарей
Чего хочется от общественности
- создания удобной в пользовании PM-ой морды или скина если угодно
Требования к PM-ой морде словарей
| Чего хочется |
Некоторое пояснение |
| подключение произвольного числа словарей |
Не только англо-русские и русско-английские, но и
специализированные |
показ словарной статьи для заданного слова
и индикация словаря, из которого статья взята |
adapter
сущ. 1) тех. адаптер; звукосниматель; держатель 2) тот, кто
адаптирует литературное произведение |
| показ транскрипции (если есть), а может быть и
воспроизведение (?) по транскипции |
ice [ajs]
1. _n. 1> лЁд;[...] |
| показ списка ближайших соседей по словарю и легкая навигация
по этому списку |
adapt гл. 1) приспосабливать,
пригонят[...]
adaptability сущ. применимость, приспосо[...]
adaptable прил. легко приспосабливаемый[...]
adaptation сущ. 1) адаптация, привыкание[...]
adapter сущ. 1) тех.
адаптер; звукоснима[...]
adaption = adaptation
adaptor = adapter
ADC I сокр. от analog-to-digital converte[...]
add гл. 1) прибавлять, присоединять (t[...] |
| удобный показ выражений, начинающихся с заданного
слова |
Например:
add гл. 1) прибавлять, присоединять
[...]
add fuel to the fire подливать масла в огонь
add fuel to the flame подливать масла в огонь
add in включать, добавлять [..]
add in mind складывать в уме
add insult to injury наносить новые оскорбления
add lustre to придать блеск (чему-л.); прославить (что-л.)
Если текущее слово - "Add", то показывается список выражений,
начинающийся с "add", если же текущее слово "adaptor" - то
список должен иметь вид:
adapter сущ. 1) тех.
adaption = adaptation
adaptor = adapter
ADC I сокр. от analog-
add гл. 1) прибавлять, присоединять [...]
added to everything else
addendum сущ. приложение
adder I сущ. 1) гадюка
|
| Поиск (под)слова в списке слов словаря и/или словарей |
|
| Интерфейс для поиску (под)слова в словарных
статьях словаря и/или словарей |
|
| Интерфейс для добавления слов в словарь |
|
| Интерфейс для редактирования слов и словарных статей словаря |
|
| "Подведите указатель мышки к слову - получите перевод." |
|
Чего с этим всем
можно сделать
| Что можно сделать |
Комментарий |
| Разнообразные утилиты для изучения иностранных
языков |
Смотрите морды
аналогов |
Проверялки правописания для русского языка
на основе простого списка "всех слов" |
|
Проверялки правописания для русского языка
на основе правил (склонение - спряжение и т.п.) |
Или таки ispell ? |
| Проверялки правописания для английского языка |
|
|
|
Доступ с командной строки
slovar2.exe <VocName> <Cmd> <Arg>
slovar2.exe <ИмяСловаря> <Команда>
<Аргументы...>
<Cmd = Q|I|A|M - Query | Info | Add | Make(import from external
format)
Команда
Что делает |
Фоpмат
|
Пример использования
|
Q(uery)
Запрос слова |
slovar2.exe YourVocName Q QueryWord |
slovar2.exe ruseng Q "агглютинативн|ый"
slovar2.exe ruseng Q агглютинация
slovar2.exe ruseng Q агент |
I(nfo)
Запрос информации
о словаре |
slovar2.exe YourVocName I |
slovar2.exe ruseng I |
A(dd)
Добавить слово
в словарь |
slovar2.exe YourVocName A word wordarticle |
slovar2.exe ruseng A кракозябры "бяки
собаки Гейтса" |
M(ake)
Создать словарь |
slovar2.exe YourVocName M FileFrom FormatNum [-s
Separator] VocFullName VocComment [Locale] |
- slovar2.exe ruseng M ruseng.txt 0 "Russ.-engl. voc."
"Compiled by Nike Korolev"
- slovar2.exe computer_er M computer.dwa 1 "Computer
engl.- russ. voc." "Compiled by EV from Slovo voc"
- slovar2.exe rusgerm M rusgerm.txt 0 "Russ.-German voc."
"Compiled by Nike Korolev" RU_RU
- slovar2.exe germrus M germrus.txt 0 "German-Russ. voc."
"Compiled by Nike Korolev" DE_DE.ibm-850
- slovar2.exe ThesaurusR M Thesaurus-R.txt 2 -s "
" "Словарь синонимов" "для деловой лексики"
|
Немного про локали
Пpи создании словаpя в заголовки файлов словаpя записывается локали,
для которых создается словаpь. Локали используются пpи соpтиpовке
и поиске слов в ловаpе, а также для выбора шрифта и/или кодировки при
отображении слова, списка слов и словарной статьи. По умолчанию, если
пpи создании словаpя не указывается локаль, то он создается в
установленной на компьютеpе локали, котоpая задается пеpеменной
окpужения LANG, в случае pусского языка локаль - это стpока
RU_RU. Пpи pаботе со словаpем, созданным в иной локали, локаль
словаpя должна быть установлена (находится в пути, указываемом
LOCPATH)
Поддерживаемые форматы для импорта
В настоящий момент поддерживается импорт форматов 0 и 1
0. Формат имени Nike Korolev'а
<<<Word>>>
Article
Hапpимеp:
<<<Абракадабра>>>
АБРАКАДАБРА ж. таинственное слово,
перешедшее от древних евреев и греков; род
заговора, особ. от лихорадки, который
пишется треугольником и носится в ладанке.
1. Фоpмат имени юниксоидного Slowo (Дима
Анисимов. wolf @ gambit.msk.su. )
слово1 = статья 1 <endofline>
....
словоi = статьяi
<endofline>
Пpи этом сама статья можетсодеpжать несколько <endofline>
Например:
авиаконструктор = aircraft designer ;<endofline>
авиалиния = airline ;<endofline>
2. <слово словаря> <разделитель> <
статья для данного слова><endofline>
Где
<слово словаря> - слово или фраза (несколько слов)
<разделитель> - один или несколько символов (в том числе
могут быть и пpобелы)
< статья для данного слова> - текст словарной статьи
3. Словари Мюллера с юникса с транскрипцией и
обозначением ударения
слово [транскрипция] статья <endofline>
Например:
importable [im'po:t_bl] _a.
ввозИмый<endofline>
importance [im'po:t_ns] _n. 1> вАжность,
значИтельность; a position of importance отвЕтственный пост 2>
значЕние; to attach importance to smth. считАть что-л. вАжным;
придавАть значЕние чемУ-л.; of no importance не имЕющий
значЕния<endofline>
4. Фоpмат еще одного словаря с юниксов неизвестного
происхождения
Слово\nСтатья с одним или более '\n' <endofline>
Например:
abracadabra\n сущ. \n 1) заклинание, магические слова
\n 2) нелепость, абракадабра, абсурд Syn: nonsense\n
abradability\n истираемость\n
Загрузить
Ссылки на ftp, находившийся на погибшем диске:
Далее... простым пользователям будет не интересно
(Формат словарей Slovar2 - для разработчиков)
[Программы] [Начало]
Last Changes 04.03.2003