добавив много словарей в aspell - PullRequest
0 голосов
/ 12 июня 2018

У меня есть текстовый документ, охватывающий несколько файлов, которые я хочу проверить с помощью aspell.Команда, которую я использую:

cat $f | aspell list --extra-dicts="./names.spl" --mode=tex -l en |sort -u

для каждого имени файла f.

В некоторых файлах, относящихся к произношению, есть «слова», такие как aj и oo, что означает, что орфография считается ошибкой.Я хочу отфильтровать их, не помещая их в словарь names.spl.(во-первых, потому что они не являются именами, во-вторых, потому что их не следует игнорировать в других файлах)

в документации aspell говорится, что аргумент "extra-dicts" может получить список, ноКажется, я не могу разграничить это правильно.Я пробовал: и просторы безрезультатно.Они либо рассматриваются как длинный путь к файлу, либо полностью отделяются от ключевых слов extra-dicts.

Я также пытался использовать эту опцию дважды, но второй раз просто переопределяет первую.

Я что-то упускаю из виду, как списки предоставляются в качестве аргументов командной строки в терминале?

1 Ответ

0 голосов
/ 01 января 2019

Согласно руководству texinfo (info aspell), aspell использует формат параметров списка, который отличается от других программ GNU, в котором имя базовой опции имеет префикс add- или rem- для добавления или добавления соответственно.удалить элементы из списка:

4.1.1.3 Параметры списка ....................

Чтобы добавить значениек списку добавьте префикс имени «add-», а затем укажите добавляемое значение.Например, чтобы добавить фильтр URL, используйте '--add-filter url'.Чтобы удалить значение из параметра списка, перед именем параметра укажите «rem-», а затем укажите значение для удаления.Например, чтобы удалить фильтр URL, используйте '--rem-filter url'.Чтобы удалить все элементы из списка, добавьте префикс имени опции с помощью «clear-» без указания какого-либо значения.Например, чтобы удалить все фильтры, используйте «--clear-filter».

Следуя этому шаблону для опции --extra-dicts, вы добавили бы несколько дополнительных словарей как

--add-extra-dicts dict1 --add-extra-dicts dict2

В документации для Aspell 0.60.7-20110707 также упоминается (возможно, более новый) более прямой формат списка с разделителями, использующий третий префикс lset:

Параметр списка также может быть установлен напрямую, в этом случае онбудет установлено одно значение.Чтобы напрямую установить для параметра списка несколько значений, перед именем параметра следует указать «lset-», а каждое значение отделить «:».Например, чтобы использовать фильтр URL и TeX, используйте «--lset-filter url: tex».

После этого формата ваш параметр станет

--lset-extra-dicts dict1:dict2
...