Как запустить проверку орфографии на нескольких файлах и отобразить любые неправильные слова в оболочке script?
У меня есть несколько файлов, которые я хочу проверить. Обычно я открывал их в vim
, запускал :set spell
и делал изменения. Однако очень сложно открывать файлы и вручную проверять, не сбрасывал ли я какие-либо слова с момента последней проверки.
Есть ли способ запустить проверку орфографии на большом количестве файлов и отобразить найденные неправильно написанные слова вместе с именем файла, чтобы я мог пойти и изменить их? Я не хочу открывать каждый файл, проверять, "он чист", затем открыть следующий и повторить.
Я не могу найти утилиту проверки орфографии POSIX. Некоторые дистрибутивы Linux на основе Red Hat, предположительно, имеют spell
или аналогичные, но я бы предпочел использовать кросс-платформенный (ish) метод. Я знаю, что vim
может проверять орфографию - есть ли способ проверки орфографии, не делая все это вручную? Было бы фантастически, если бы я мог использовать оболочку script.
Я запускаю OS X
, для чего это стоит.
Ответы
Ответ 1
Вы можете установить aspell с Homebrew в OS X. brew info aspell
перечисляет поддерживаемые языки.
brew install aspell --lang=en,fi,jp
aspell check
открывает файл в интерактивной проверке орфографии:
for f in *.txt; do aspell check $f; done
aspell list
печатает все непризнанные слова:
cat *.txt | aspell list | sort -u
Исходные слова хранятся в .aspell.en.pws
по умолчанию. Вы также можете исключить слова в ~/Library/Spelling/en
после добавления personal_ws-1.1 en
в качестве первой строки.
aspell list --personal=$HOME/Library/Spelling/en
Ответ 2
Используя aspell, это напечатает каждое имя файла, а затем отсортированный список слов с ошибкой вместе с количеством раз, когда они происходят:
for f in *.txt ; do echo $f ; aspell list < $f | sort | uniq -c ; done