Page 7 of 9

LuaSpell — проверка орфографии в редакторе

Posted: Sat 03 May, 2014 11:27
by Aidar
LuaSpell — пакет для проверки орфографии в редакторе.

Пакет поддерживает словари, используемые Hunspell, а также словари OOoUserDict1 (пользовательский словарь OpenOffice) и WordList (список слов).
Для Hunspell‑словарей используется библиотека hunspell из проекта luapower.

На PlugRing также выложены:
  • LuaSpell-hunspell-1.3.2.7z — библиотека hunspell v.1.3.2.
  • LuaSpell-Dictionaries.7z — русский (с "ё") и английский словари в кодировке UTF‑8.
Перед установкой прочтите LuaSpell\doc\Install.rus.

Последнюю версию библиотеки hunspell можно также скачать здесь.

Внимание:
Все файлы словарей должны быть в кодировке UTF-8 без BOM,
а в первой строке aff-файлов нужно прописать "SET UTF-8" (без кавычек).

Текущая версия: PlugRing.
Ссылки:
Описание, GitHub, tags, zipball, master.zip.

LuaSpell — проверка орфографии в редакторе

Posted: Tue 28 Jun, 2016 19:42
by Aidar

Latest post of the previous page:

HaRT wrote:...Почему-то слово из первой строки не подхватывается — проще всего это выявить, запустив проверку в самом таком словаре. Ошибка?
Использую WordList-словарь Stop_List из трёх слов: все слова раскрашиваются.
Приложите словарь и файл конфигурации.

LuaSpell — проверка орфографии в редакторе

Posted: Tue 28 Jun, 2016 20:02
by Aidar
HaRT wrote:2. Добавлена опция ShowEmptyList — показывать ли пустой список пред(по)ложений (чтобы не было иллюзии, будто макрос не сработал).
Спасибо, опцию назвал EmptyList аналогично опции в WordComplete.
HaRT wrote:3. Выставлена скрытая прежде возможность вызвать перехода на предыдущее ошибочное слово (только при этом почему-то ничего не происходит).
1. Не тестировалось. 2. Будет работать странно: строки просматривает назад, а внутри строк — вперёд. 4. Предполагаю реализовать добавление в меню плагинов, чтобы можно было назначать макросы обычным образом. А текущие комбинации оставить как часто используемые.
HaRT wrote:4. Список пред(по)ложений расширен справа на одно знакоместо (чтобы самые длинные слова не упирались правым краем в рамку, будто усечённые).
Спасибо, добавил строку в макрос.
HaRT wrote:5. Устранены почти все предупреждения luacheck, устранены некоторые избыточные идентификаторы, устранены глобальные блоки do-end (чтобы не засоряли Outline от Colorer), исправлены опечатки в комментариях, удалены концевые пробелы.
Тогда из lua.hrc лучше убрать do-end-

LuaSpell — проверка орфографии в редакторе

Posted: Tue 28 Jun, 2016 20:04
by HaRT
Aidar wrote: используемые мной схемы для FarColorer
Как добавить в Колорер отдельные файлы, я знаю, но мне не нравится сама идея делать такое для каждого нового файла конфигурации и для каждого редактора, в котором я захочу его открыть. На мой взгляд, если формат текста — код на Луа, то удобнее, чтобы и расширение у имени файла было соответствующее.
Aidar wrote: Использую WordList-словарь Stop_List
Я использую WordList в качестве положительного словаря.
Aidar wrote: Приложите словарь и файл конфигурации.
Вот почти минимальный пример: , .
Если открыть на редактирование сам custom.dic и включить подсветку неправильных слов, то «перваястрока» подсвечивается красным (от положения слова в тексте не зависит).

LuaSpell — проверка орфографии в редакторе

Posted: Tue 28 Jun, 2016 20:11
by HaRT
Aidar wrote: опцию назвал EmptyList аналогично опции в WordComplete.
Это не очень удачно, ибо может быть понято как „опустошить список“, т.к. “empty” — ещё и глагол. Впрочем, не принципиально.
Aidar wrote: 2. Будет работать странно: строки просматривает назад, а внутри строк — вперёд.
А сложно ли сделать, чтобы оно работало ожидаемо? ;)
Aidar wrote: 4. Предполагаю реализовать добавление в меню плагинов, чтобы можно было назначать макросы обычным образом. А текущие комбинации оставить как часто используемые.
В принципе не возражаю, но не хотелось бы иметь каждое действие отдельным пунктом верхнего уровня, чтобы не раздувать меню попусту.
Aidar wrote: Тогда из lua.hrc лучше убрать do-end
Это отдельный вопрос. В коде LuaSpell.lua использование этой конструкции мне показалось неоправданным — потому и предлагаю их оттуда удалить.

LuaSpell — проверка орфографии в редакторе

Posted: Tue 28 Jun, 2016 20:21
by Aidar
HaRT wrote:
Aidar wrote: опцию назвал EmptyList...
Это не очень удачно, ибо может быть понято как „опустошить список“, т.к. “empty” — ещё и глагол.
Ясно.
HaRT wrote:
Aidar wrote: 2. Будет работать странно: строки просматривает назад, а внутри строк — вперёд.
А сложно ли сделать, чтобы оно работало ожидаемо? ;)
Ну, если есть или будет реализована поддержка поиска назад в регулярных выражениях.
HaRT wrote:...не хотелось бы иметь каждое действие отдельным пунктом верхнего уровня, чтобы не раздувать меню попусту.
Планировал один пункт с отображением меню с возможными действиями (как в UM_Adapter).
HaRT wrote:
Aidar wrote: Тогда из lua.hrc лучше убрать do-end
Это отдельный вопрос. В коде LuaSpell.lua использование этой конструкции мне показалось неоправданным — потому и предлагаю их оттуда удалить.
Ну, это у меня такой стиль выработался. Поэтому и добавил этот блок как outline в lua.hrc. Думаю, можно обсудить это в ветке FarColorer.

LuaSpell — проверка орфографии в редакторе

Posted: Tue 28 Jun, 2016 20:28
by HaRT
Aidar wrote: если есть или будет реализована поддержка поиска назад в регулярных выражениях
Не знаю насчёт FAR API, но в пользовательском интерфейсе Фара поиск назад по регулярному выражению вполне себе работает.
Aidar wrote: это у меня такой стиль выработался
Не смею настаивать на изменении Вами выработанного стиля, однако считаю, что исключение этой конструкции (а также нескольких не добавляющих ясности идентификаторов) только упростило код LuaSpell.lua.

LuaSpell — проверка орфографии в редакторе

Posted: Tue 28 Jun, 2016 20:30
by Aidar
HaRT wrote:... Я использую WordList в качестве положительного словаря...
У меня всё нормально: обе строки неподкрашенные. Создал файл словаря в кодировке UTF-8 без BOM.

LuaSpell — проверка орфографии в редакторе

Posted: Tue 28 Jun, 2016 20:52
by HaRT
Aidar wrote: в кодировке UTF-8 без BOM
Да, если без BOM, то всё в порядке.
Сложно ли сделать, чтобы BOM не влиял столь пагубно? Ведь BOM — это совершенно штатная, полезная и очень распространённая вещь…

LuaSpell — проверка орфографии в редакторе

Posted: Tue 28 Jun, 2016 21:19
by Aidar
HaRT wrote:...Сложно ли сделать, чтобы BOM не влиял столь пагубно? Ведь BOM — это совершенно штатная, полезная и очень распространённая вещь…
В modules\userdict.lua сделайте

LuaSpell — проверка орфографии в редакторе

Posted: Wed 29 Jun, 2016 10:41
by John Doe
Aidar wrote: 4. Предполагаю реализовать добавление в меню плагинов, чтобы можно было назначать макросы обычным образом.
Вместо пункта в меню плагинов можно читать комбинации из файла конфигурации, или из БД.
Или сделать скрипт модулем, и в макросах обращаться через require

LuaSpell — проверка орфографии в редакторе

Posted: Wed 29 Jun, 2016 14:36
by HaRT
Aidar
Обнаружилось ложное срабатывание в строках вида “Latin-кириллица” — часть “Latin” проверяется, очевидно, по русскому словарю и подсвечивается как неправильное (красным фоном).
А ведь подобные конструкции нередко бывают нужны в двуязычных текстах профессиональной тематики с активными заимствованиями терминологии из английского.

LuaSpell — проверка орфографии в редакторе

Posted: Wed 29 Jun, 2016 15:54
by Aidar
HaRT wrote:AidarОбнаружилось ложное срабатывание в строках вида “Latin-кириллица” — часть “Latin” проверяется, очевидно, по русскому словарю и подсвечивается как неправильное (красным фоном).
А ведь подобные конструкции нередко бывают нужны в двуязычных текстах профессиональной тематики с активными заимствованиями терминологии из английского.
В LuaSpell.cfg добавьте во все find символы ^ и $ аналогично .
Только перестанет работать проверка на словах из смешанных букв!

LuaSpell — проверка орфографии в редакторе

Posted: Wed 29 Jun, 2016 16:11
by HaRT
Aidar wrote: перестанет работать проверка на словах из смешанных букв
Это как? Можно пример (было/стало)?

LuaSpell — проверка орфографии в редакторе

Posted: Wed 29 Jun, 2016 17:10
by Aidar
HaRT wrote:
Aidar wrote: перестанет работать проверка на словах из смешанных букв
Это как? Можно пример (было/стало)?
.
Но у меня "findинг" подкрасился как гибридный из-за использования Colorer-схем с поддержкой подкраски таких слов.

LuaSpell — проверка орфографии в редакторе

Posted: Wed 29 Jun, 2016 17:25
by HaRT
Aidar, ага, спасибо, ясно.
Предполагаете ли включить фиксы для BOM в словаре и для смешанно-составных слов в основной код?

LuaSpell — проверка орфографии в редакторе

Posted: Wed 29 Jun, 2016 18:42
by Aidar
Спасибо. Выложил на плагринге.
HaRT wrote:...Предполагаете ли включить фиксы для BOM в словаре и для смешанно-составных слов в основной код?
1. Фикс включил. 2. Подправил регулярные выражения в файлах-примерах конфигурации.