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
файлы.