Emacs на Win32 с hunspell - личный словарь не сохраняется - PullRequest
2 голосов
/ 05 октября 2011

Итак, у меня есть рабочая установка для Emacs (v23.3.1) в Windows 7 с использованием hunspell после выполнения инструкций в вики.

http://www.emacswiki.org/emacs/InteractiveSpell

Когда я проверяю орфографию документа(M-x ispell), emacs дает мне возможность вставить помеченное слово в личный словарь нажатием клавиши 'i' или 'u'.В конце он спрашивает, хочу ли я сохранить измененный личный словарь, и выбираю да.

Проблема в том, что личный словарь не сохраняется на диск, а выделенные ранее слова снова помечаются в новомсеанс.

Попробовал следующие вещи, рекомендованные в другом месте, но безрезультатно:

(setq ispell-personal-dictionary (имя-файла-расширения "~ / personal-dictionary.txt"))

У кого-нибудь есть решение или обходной путь для этого?Если вы можете сохранить в личном словаре, пожалуйста, напишите соответствующие биты из вашего .emacs

Ответы [ 2 ]

4 голосов
/ 05 октября 2011

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

со страницы руководства :

-p dict

Установить путь к личному словарю. По умолчанию это $ HOME / .hunspell_default. При установке -d или переменной окружения DICTIONARY персональным словарем будет $ HOME / .hunspell_dicname

Я использую hunspell, скомпилированный с Cygwin, и использую словарь en-GB. Если я установлю значение ispell-personal-dictionary на "c:/cygwin/home/luke.girvin/.hunspell_en_GB", все слова, которые я добавлю в свой личный словарь с помощью ispell, будут сохранены правильно.

Итак, простой способ решить вашу проблему - это изменить имя вашего личного файла словаря на то, что Hunspell ожидает по умолчанию.

Кроме того, вы можете использовать опцию -p, чтобы сообщить hunspell, какой файл словаря вы хотите использовать, возможно, настроив ispell-cmd-args.

Кроме того, ваш файл словаря действительно существует? Я обнаружил, что Emacs не будет создавать этот файл для меня, но он обновит существующий пустой файл.

1 голос
/ 05 октября 2011

Попробуйте использовать личную папку для «специальных» программ Windows.Проблема в том, что только пользователи с правами администратора могут писать в C:\Program Files, и если вы сохранили emacs там и вызвали его с обычными пользовательскими шансами, вы не сможете писать туда.

Решение: просто создайте новыйпапку типа C:\Programs\ и положи туда emacs.Таким образом, у вашего пользователя будут права на запись в папку.

Это скорее обходной путь, но для некоторых приложений такой способ проще.

...