Проверка орфографии - игнорировать набор слов

Я делаю bash скрипт для проверки орфографии по количеству файлов.

Я столкнулся с проблемой сказать aspell игнорировать некоторые слова, которые я позволяю появиться.

Это то же самое, что "Игнорировать все" в интерактивном режиме. Но это не сработает, так как мне нужно было бы сделать это вручную.

Как я могу сказать Aspell игнорировать данный набор слов. Есть ли параметр, который может сделать это. Хотелось бы, чтобы была возможность передать файл с этими словами.

Или может быть есть более эффективный способ проверки орфографии в bash?

2 ответа

Легко: поместите ваши слова в личный словарь: ~/.aspell.en.pws где первая строка

personal_ws-1.1 en 500 

(500 - это количество слов, не обязательно должно быть точным, Aspell исправит это, если вы добавите слова с помощью Aspell).

Если вам нужен словарь, чтобы быть в другом месте, используйте параметры, подобные этим:

aspell --home-dir=/dir/to/dict --personal=dict-file.txt

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

function SpellCheckInit() {
   for i in `seq 0 $(( ${#aname[@]} - 1 ))`; do
       echo Parsing...
   done
}
Dictionary=( "${dictionary[@]}" "Oxford English Dictionary" )
char=( "${words[@]}" "Text" )
echo Ignore?
read -a omt_wrds
SpellCheckInit()
words_left=${#Dictionary[@]}
until [ $words_left -lt 0]; do
   if [ "$char" = "i"]; do
      echo IGNORED
   elif [ "$char" = "$Dictionary"]; do
      echo CORRECT
   else
      for word in Dictionary
           $word > $dictionary
      done
   fi
done
Другие вопросы по тегам