Hunspell - Как указать нечувствительность к регистру для проверки орфографии в файле dic или aff

Я создаю пользовательскую реализацию механизма проверки правописания, используя исходный текст hun / spell dic/aff, заданный в качестве отправной точки. После чрезмерного количества взломов, поиска в Google и т. Д. Я скопировал набор флагов, который, по- видимому, приводит к поиску без учета регистра (например, проверка орфографии проходит как "Слово", так и "слово", когда присутствует только "слово"). в файле dic). Проблема в том, что я понятия не имею, ПОЧЕМУ это работает, и я не могу найти ничего в Интернете или в файлах, указывающих, как лечится дело. Синтаксис в моем dic, который работает:

word/1   1

Без этих флагов обработка дела является строгой.

Я упущен, чтобы реализовать "решение", которое я не могу объяснить. У кого-нибудь есть идеи, как определить обработку кейса в наборе dic/aff, чтобы я мог понять, что на самом деле происходит?

1 ответ

По умолчанию записи в .dic Предполагается, что файлы нечувствительны к регистру, и поэтому wordвсе следующее должно быть возвращено как правильно написано: слово, слово, слово.

Если вы хотите ограничить слова одним регистром, вам необходимо определить флаг с учетом регистра в вашем .aff файл:

KEEPCASE X

куда X является одно- или двухбуквенным флагом или числом (в зависимости от настроек FLAG)

Итак, если бы я только хотел разрешить Джону (но не Джону или Джону), я бы мог .dicподайте следующую запись:

John/X

Я не знаю почему /1 допускает нечувствительные к регистру результаты, особенно потому, что эта строка является плохим форматом (после пробелов следует только указать идентификатор поля и его информацию, например, po:noun)

Вы сказали, что создаете собственный движок, поэтому проблема будет в вашем движке, а не в .dic/.aff файлы.

Другие вопросы по тегам