Есть ли способ динамически манипулировать словарем проверки орфографии?

Я хотел бы иметь возможность динамически добавлять и удалять слова из общесистемного словаря в Mountain Lion. Вариант использования:

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

Я мог бы работать над двумя отдельными художественными произведениями и хотел бы загружать и выгружать каждый список отдельно. Я не ищу приложение с пользовательской проверкой орфографии; Я определенно ищу что-то, что работает со встроенной общесистемной подсистемой проверки орфографии.

Рассмотрены все решения: с открытым исходным кодом, платные приложения, AppleScript, Automator, сценарии оболочки — все что угодно.

Ответы (1)

Когда вы нажимаете кнопку «Обучение», слово добавляется к ~/Library/Spelling/LocalDictionary, если язык установлен автоматически, или к ~/Library/Spelling/en, если язык установлен на английский (США). en_GBиспользуется для британского английского и enиспользуется только для американского английского.

Если вы редактируете файлы ~/Library/Spelling/напрямую, вы можете применить изменения, завершив AppleSpellпроцесс.

Поэтому попробуйте назначить ярлык для скрипта следующим образом:

cd ~/Library/Spelling
if [[ -e fiction ]]; then
  mv en normal; mv fiction en; d=fiction
else
  mv en fiction; mv normal en; d=normal
fi
killall AppleSpell
terminal-notifier -title "Using dictionary $d" -message '' -group spellingdictionary
sleep 3
terminal-notifier -remove spellingdictionary

Если, например, вы используете британско-английский словарь, измените его enна en_GB.

Вы можете установить terminal-notifierс sudo /usr/bin/gem install terminal-notifier.