Использовать многоязычный словарь с aspell

У меня есть большой файл .tex, который содержит два языка, и я хочу, чтобы проверить его, не сходя с ума. Поэтому просто проверка орфографии для одного языка и нажатие «игнорировать» для слов с другого языка не является вариантом.

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

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

Итак, мой вопрос: есть ли разумные способы одновременного использования двух словарей для двух разных языков?

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

One Solution collect form web for “Использовать многоязычный словарь с aspell”

Итак, вот как это сделать:

Шаг 1. Найдите свои словари aspell в своей системе. Я нашел их в /usr/lib/aspell/ . Вы увидите .multi и .rws . Все следующие команды должны быть выполнены в этом каталоге.

Шаг 2: Создайте списки слов из словарей, которые вы хотите. Если словари имеют аффиксы, хранящиеся со словами, их необходимо расширить.

 aspell --lang=en --master=en.multi dump master > /home/user/meinwoerterbuch.txt aspell -d de dump master | aspell -l de expand | perl -e 'while(<>){ print join("\n", split), "\n";}' >> /home/user/meinwoerterbuch.txt 

Здесь немецкий словарь должен был быть расширен, и поскольку мне нужно было по одному слову в строке, я использовал perl для ввода нескольких слов в строке и распечатывал каждую из них на дополнительной строке. Просто посмотрите на результат aspell (я рекомендую head ), чтобы узнать, нужно ли вам расширять словарь или нет.

Шаг 3. Выберите имя языка для вашего словаря. Я выбрал венгерский язык, потому что я уверен, что никогда не буду использовать венгерский словарь для проверки орфографии, и таким образом его будет легко найти. Я думаю, что это должно быть что-то с действующим кодом языка ISO. Для венгерского это hu .

Шаг 4: Создайте hu.dat и hu_phonet.dat . Наиболее урезанные версии, которые, похоже, работают:

hu.dat :

 name hu charset iso8859-1 soundslike hu 

hu_phonet.dat :

 version 0.1-2002.12.15-3 

Шаг 5: Создайте объединенный словарь с помощью

 sudo aspell --lang=hu --encoding=utf-8 create master ./hu.rws < /home/user/meinwoerterbuch.txt 

Мне пришлось поместить кодировку = utf-8, потому что txt-файл закодирован в utf-8. Это без ошибок.

Шаг 6: Создайте соответствующий файл hu.multi следующим образом:

 add hu.rws 

Шаг 7: Выберите венгерский в вашем орфографическом чеке и начните проверку орфографии.

Interesting Posts

Как мне меньше имени файла, а не номера индексного дескриптора?

Настроить верхнюю панель / глобальное меню / Super-Wingpanel в элементарной операционной системе Luna

Как я могу заставить команду «bind» работать в sh shell

Использование переменных среды в командах командной строки состояния Tmux

Добавление системного пользователя в группу LDAP с SSSD

Что означает «невозможно установить резервную ссылку / binary перед установкой новой версии: нет такого файла или каталога»?

Удаленный сервер, случайно зависающий на ssh login

Извлечь только часть версии пакета с именем bash

`echo -e 'Q \ ns \ nV' | sort` не сортирует

нет ввода в меню для / dev / ttyusb0, не загружаемого

Альтернатива `pkill` или` pgrep -f` на cygwin?

Intel hd graphics 4000 перегревается под Debian Jessie

Как я могу узнать, является ли относительная символьная ссылка внутренней для определенного поддерева или нет?

Как отредактировать HEADER rpm и NAME-VERSION-RELEASE

Как я могу постоянно запускать скрипт bash, проверяя, изменилось ли значение?

Linux и Unix - лучшая ОС в мире.