向 aspell 添加许多词典

adding many dictionaries to aspell

我有一个包含多个文件的 tex 文档,我想用 aspell 检查它。 我使用的命令是:

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

对于每个文件名 f.

一些与发音有关的文件里面有"words"像aj和oo,其中aspell算作拼写错误。我想过滤掉它们而不将它们放入 names.spl 字典中。 (首先因为它们不是名字,其次因为它们在其他文件中不应该被忽略)

the aspell documentation 声明 "extra-dicts" 参数可以接收列表,但我似乎无法正确分隔它。我试过 , : 和纯空格无济于事。它们要么被视为长文件路径,要么与 extra-dicts 关键字完全分开。

我也尝试使用该选项两次,但第二次只是覆盖了第一次。

我是否遗漏了一些关于如何在终端中将列表作为命令行参数提供的琐碎信息?

根据texinfo手册(info aspell),aspell使用了一种不同于其他GNU程序的列表选项格式,其中基本选项名称以add-为前缀或 rem- 分别从列表中添加或删除项目:

4.1.1.3 List options ....................

To add a value to the list, prefix the option name with an 'add-' and then specify the value to add. For example, to add the URL filter use '--add-filter url'. To remove a value from a list option, prefix the option name with a 'rem-' and then specify the value to remove. For example, to remove the URL filter use '--rem-filter url'. To remove all items from a list prefix the option name with a 'clear-' without specify any value. For example, to remove all filters use '--clear-filter'.

按照 --extra-dicts 选项的这种模式,您可以添加多个额外的词典作为

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

Aspell 0.60.7-20110707 的文档还提到了一种(可能更新的)更直接的分隔列表格式,使用第三个前缀 lset:

A list option can also be set directly, in which case it will be set to a single value. To directly set a list option to multiple values prefix the option name with a 'lset-' and separate each value with a ':'. For example, to use the URL and TeX filter use '--lset-filter url:tex'.

按照这种格式,您的选项将变为

--lset-extra-dicts dict1:dict2