Как получить проверку орфографии GNU Emacs для поиска личного словаря пользователя в OSX?
Я перешел с Aquamacs на GNU Emacs. Раньше, когда Aquamacs думал, что слово было написано с ошибкой, я мог щелкнуть правой кнопкой мыши на "Learn Spelling". (У меня также была возможность игнорировать орфографию, чтобы отключить слово только для этого буфера.)
В GNU Emacs я использую flyspell-mode с ispell, с aspell в качестве словаря. Но я замечаю, что слова, которые я ранее добавил в свой словарь (например, мое имя), помечаются как ошибочные.
Как мне заставить GNU Emacs найти и использовать список личных слов, который я уже создал? Могу ли я сделать это без, например, сборки Aquamacs из исходного кода?
1 ответ
Вот мои заметки по настройке Aspell для OSX и Windows - инструкции по настройке личного словаря пользователя изложены в теме этой ссылки:
/questions/15437734/gde-nahoditsya-chastnyij-slovar-aspell-na-mac/15437747#15437747
Персональный список слов в Aspell - это простой текстовый файл, содержащий содержимое, которое выглядит следующим образом, и вы можете вставить любое слово вручную, включая, помимо прочего, копирование содержимого вашего списка из встроенной программы проверки орфографии OSX. ~/Library/Spelling/LocalDictionary
:
personal_ws-1.1 en 79
lawlist
realleges
parte
И по моему .emacs
Я использую (скорректируйте свой собственный путь соответственно):
(require 'ispell)
(require 'flyspell)
(setq-default ispell-program-name "/Users/HOME/.0.data/.0.emacs/elpa/bin/aspell")
(setq flyspell-default-dictionary "english")
(setq ispell-dictionary "english")
Эту функцию я использую для переключения между испанским и английским:
(defun spell (choice)
"Switch between language dictionaries."
(interactive "cChoose: (1) English | (2) Español")
(cond ((eq choice ?1)
(setq flyspell-default-dictionary "english")
(setq ispell-dictionary "english")
(setq ispell-personal-dictionary "/Users/HOME/.0.data/.0.emacs/.aspell.en.pws")
(ispell-kill-ispell))
((eq choice ?2)
(setq flyspell-default-dictionary "spanish")
(setq ispell-dictionary "spanish")
(setq ispell-personal-dictionary "/Users/HOME/.0.data/.0.emacs/.aspell.es.pws")
(ispell-kill-ispell))
(t (message "No changes have been made."))) )
Для Windows я использую:
(setq-default ispell-program-name "c:/Program Files/Aspell/bin/aspell.exe")