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

Здесь выкладываются готовые к использованию макросы и скрипты.
Post Reply
User avatar
Aidar
Posts: 534
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 6 times
Contact:

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

Post by Aidar » Sat 03 May, 2014 11:27

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.

User avatar
John Doe
Бюрократ
Posts: 11433
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 17 times
Been thanked: 102 times

Re: Макрос для проверки орфографии в редакторе

Post by John Doe » Sat 03 May, 2014 11:40

Есть ли какие-то преимущества у этого варианта? Для пользователя или для автора?

User avatar
Aidar
Posts: 534
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 6 times
Contact:

Re: Макрос для проверки орфографии в редакторе

Post by Aidar » Sat 03 May, 2014 12:23

John Doe wrote:Есть ли какие-то преимущества у этого варианта? Для пользователя или для автора?
По сравнению с исходным вариантом можно расширить функционал макроса:
- морфологический анализ слова,
- получение основы слова,
- генерация слов по примеру/описанию,
- добавление доп. словаря к текущему,
- реализация пользовательского словаря.
Но пока я не планирую ничего из этого.

User avatar
SUSim
Posts: 1480
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 4 times
Been thanked: 4 times

Re: Макрос для проверки орфографии в редакторе

Post by SUSim » Sat 03 May, 2014 12:31

+ всё в одном флаконе и dll и макрос и модуль! ну и словари не гуглить :)
+ модуль - можно проверку слова куда угодно прилепить (тестирую...)
- не очень удобно устанавливать - надо руками копировать в разные места... - может батник умный сделать?
SimSU ··· ·· -- ··· ··-

User avatar
Aidar
Posts: 534
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 6 times
Contact:

Re: Макрос для проверки орфографии в редакторе

Post by Aidar » Sat 03 May, 2014 13:01

SUSim wrote:+ всё в одном флаконе и dll и макрос и модуль! ну и словари не гуглить :)
+ модуль - можно проверку слова куда угодно прилепить (тестирую...)
- не очень удобно устанавливать - надо руками копировать в разные места... - может батник умный сделать?
1. Греческий словарь в архив словарей не добавил, т.к. мало кто им пользуется, да и большой он получился (dic-файл - больше 6 МБ).
2. Проверку слова можно добавить только в рамках FAR.
Для других утилит необходимо в модуле hunspell.lua поменять win.GetEnv на os.getenv.
3. Достаточно установить один раз, при обновлении чаще всего придётся из архива копировать только каталог с макросом (dll и модуль уже будут на своих местах).
4. Ещё один недостаток - необходимость конвертирования файлов словарей в UTF-8, но это выполняется только один раз. По крайней мере в коде нет лишних преобразований строк, т.к. сама dll вроде работает со строками в UTF-8 (по крайней мере строки передаются только через ffi.string).

P.S. Стоит иметь в виду, что модуль hunspell.lua переделан для работы в FAR Manager.
В частности, исходный модуль не поддерживает перезагрузку макросов.

Capri200
Posts: 51
Joined: Fri 25 Mar, 2011 08:50

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

Post by Capri200 » Sun 04 May, 2014 07:48

А что может значить вот такая вот ошибка:
LuaMacro
F:\PF64\Far3\Profile\Macros\modules\hunspell.lua:30: cannot load module 'hunspellx64': �� ������ ��������� ������.
понятно, что какая-то проблема с загрузкой модуля, но вот какая?
модуль лежит в папке Far

User avatar
Aidar
Posts: 534
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 6 times
Contact:

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

Post by Aidar » Sun 04 May, 2014 07:59

Capri200 wrote:А что может значить вот такая вот ошибка:
LuaMacro
F:\PF64\Far3\Profile\Macros\modules\hunspell.lua:30: cannot load module 'hunspellx64': ...
понятно, что какая-то проблема с загрузкой модуля, но вот какая?
модуль лежит в папке Far
Модуль hunspell.lua не может загрузить библиотеку hunspellx64.dll, т.к. ffi.load не находит её.

Capri200
Posts: 51
Joined: Fri 25 Mar, 2011 08:50

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

Post by Capri200 » Sun 04 May, 2014 18:29

Попробовал сделать то же самое для Far 3 x86 и всё заработало.
И библиотеку нашло и отлично орфографию проверяет.
Видимо проблемы только с загрузкой библиотеки x64.

2useven10
Posts: 3047
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 84 times

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

Post by 2useven10 » Sun 04 May, 2014 19:16

знаете что такое depends?
x64 зависит от LIBGCC_S_SEH-1.DLL и LIBWINPTHREAD-1.DLL (x86 нет).

Capri200
Posts: 51
Joined: Fri 25 Mar, 2011 08:50

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

Post by Capri200 » Sun 04 May, 2014 19:37

2useven10 wrote:знаете что такое depends?
x64 зависит от LIBGCC_S_SEH-1.DLL и LIBWINPTHREAD-1.DLL (x86 нет).
То есть требуются какие-то дополнительные действия для работы LuaSpell с Far3 x64?

User avatar
Aidar
Posts: 534
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 6 times
Contact:

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

Post by Aidar » Sun 04 May, 2014 19:52

2useven10 wrote:знаете что такое depends?
x64 зависит от LIBGCC_S_SEH-1.DLL и LIBWINPTHREAD-1.DLL (x86 нет).
Я сам не собирал эти dll, а взял готовые из архива.
Сам использую FAR x86, работу макроса+модуля на FAR x64 не проверял.

2useven10
Posts: 3047
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 84 times

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

Post by 2useven10 » Sun 04 May, 2014 20:02

Capri200
Это значит нужны дополнительные длл, скорее всего их можно найти на сайте mingw...
Aidar
автор видимо тоже пользуется x86, может имеет смысл ему написать о дополнительных зависимостях.

Capri200
Posts: 51
Joined: Fri 25 Mar, 2011 08:50

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

Post by Capri200 » Sun 04 May, 2014 20:03

Aidar wrote:Я сам не собирал эти dll, а взял готовые из архива.
Сам использую FAR x86, работу макроса+модуля на FAR x64 не проверял.
Ага, я скачивал. Думал может поновее и заработает, но там один в один с тем, что с плагином выложено.
Попробую сам разобраться.
Плагин понравился. Спасибо.

2useven10
Posts: 3047
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 84 times

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

Post by 2useven10 » Sun 04 May, 2014 20:14

длл можно попробовать взять отсюда:
http://sourceforge.net/projects/mingwbu ... z/download

User avatar
Aidar
Posts: 534
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 6 times
Contact:

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

Post by Aidar » Sun 04 May, 2014 20:28

2useven10 wrote:автор видимо тоже пользуется x86, может имеет смысл ему написать о дополнительных зависимостях.
Создал issue.
Может, кто-то сумеет сам собрать нужный hunspellx64.dll ?
Я в нюансах сборки таких проектов не разбираюсь.

User avatar
Aidar
Posts: 534
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 6 times
Contact:

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

Post by Aidar » Sun 04 May, 2014 20:42

2useven10 wrote:длл можно попробовать взять отсюда:
http://sourceforge.net/projects/mingwbu ... z/download
Спасибо, выложил на PlugRing (файл LuaSpell_x64dlls.7z).
Скопировал dll в каталог FAR, после чего у меня макрос заработал.

Post Reply

Return to “Полезные макросы и скрипты”