Как создать собственный словарь для OpenOffice.org/LibreOffice
Материал из Forumooo wiki
(Различия между версиями)
Yakov (Обсуждение | вклад) |
Yakov (Обсуждение | вклад) |
||
Строка 61: | Строка 61: | ||
* Приступим к упаковке словаря в расширение. | * Приступим к упаковке словаря в расширение. | ||
+ | Расширение представляет собой zip - архив. | ||
+ | Создадим архив my_ru-dict.zip c нашими файлами: | ||
+ | my_ru-dict.dic | ||
+ | my_ru-dict.aff | ||
+ | Создадим каталог в архиве: | ||
+ | |||
+ | META-INF | ||
+ | |||
+ | В каталоге создадим файл | ||
+ | |||
+ | manifest.xml | ||
+ | |||
+ | следующего содержания: | ||
+ | |||
+ | <manifest:manifest> | ||
+ | <manifest:file-entry manifest:media-type="application/vnd.sun.star.configuration-data" manifest:full-path="Dictionaries.xcu"/> | ||
+ | </manifest:manifest> |
Версия 19:21, 20 октября 2012
Как создать собственный словарь для OpenOffice.org/LibreOffice
Для создания словаря понадобится:
- Hunspell - система проверки орфографии http://downloads.sourceforge.net/hunspell/
- Файл со словами, из которых необходимо создать словарь. В качестве основы это может быть, например, пользовательский словарь OpenOffice.org. В нашем примере этот файл будет называться input.txt
Пользовательский словарь LibreOffice/OpenOffice находится в профиле пользователя, каталог wordbook, файл Standard.dic. |
- Если создание словаря планируется в Windows, то для создания словаря потребуется Cygwin http://www.cygwin.com/
Перевод документации по Hunspell доступен по адресу: http://mozilla-russia.org/projects/dictionary/hunspell.html
Приступим к сборке.
- Скачиваем hunspell-1.X.X.tar.gz c http://downloads.sourceforge.net/hunspell/.
- Распаковываем. Копируем файл affixcompress из hunspell-1.x.x\src\tools\ в рабочий каталог.
- Копируем в рабочий каталог файл input.txt со словами, из которых надо создать словарь.
- Запускаем скрипт создания словаря:
LC_ALL='C' sort input.txt >sorted.txt LC_ALL='C' ./affixcompress sorted.txt 250
- Словарь создан! Это 2 файла sorted.dic и sorted.aff
Теперь надо в начале аффикс-файла указать служебную информацию о кодировке и типе аффикс-файла
SET UTF-8 FLAG num
- Переименуем файлы словаря:
my_ru-dict.dic my_ru-dict.aff
- Теперь проверяем полученный словарь
hunspell -d my_ru-dict
и печатаем слова, которые должны быть в словаре. Если Hunspell их распознал, то словарь работает!
- Дополнительно можно настроить алгоритм работы механизма исправлений неизвестных слов словаря (команды добавить в файл *.aff)
- Не предлагать варианты с пробелами:
NOSPLITSUGS
- Ограничить число вариантов исправлений, генерируемых встроенным алгоритмом
MAXNGRAMSUGS 4
- Настроить порядок букв для алгоритма подстановки
TRY абвгдеёжз.....эюя'
необходимо их расположить в последовательности от наиболее часто употребляемой к менее употребляемой
- Приступим к упаковке словаря в расширение.
Расширение представляет собой zip - архив. Создадим архив my_ru-dict.zip c нашими файлами:
my_ru-dict.dic my_ru-dict.aff
Создадим каталог в архиве:
META-INF
В каталоге создадим файл
manifest.xml
следующего содержания:
<manifest:manifest> <manifest:file-entry manifest:media-type="application/vnd.sun.star.configuration-data" manifest:full-path="Dictionaries.xcu"/> </manifest:manifest>