目前,我正在编写一个关于数学的大型 LaTeX 文档,偶尔我会对其进行一些拼写检查。您可以猜到,有很多单词不在标准词典中。但我已经添加了他们aspell与a在标准字典。
aspell -d de -t -c my-document.tex
Run Code Online (Sandbox Code Playgroud)
有没有办法导出我的话(只有那些)?
恢复似乎很简单:另一个问题。
我已经安装aspell-en和aspell-de. 我预计这会让我在en和de语言之间进行选择。但是,该软件包已经安装了许多版本en和de语言,现在当我想选择我的拼写语言时,我有太多选择。
en_US和de_CH吗?我相信我永远不需要de_LI,此外,我看不出有任何理由de_LI应该成为一种单独的语言。
我正在使用 Debian Wheezy。

我有一个包含两种语言的大型 .tex 文件,我想在不发疯的情况下对其进行拼写检查。因此,仅对一种语言进行拼写检查并针对另一种语言的单词按“忽略”是不可行的。
所以我读了 aspell 并发现你可以定义你自己的.multi文件来组合字典。但显然你不能对不同语言的字典执行此操作,它会抛出错误(或者,如果你使用 GUI 工作,字典将显示为空)。
另外,我发现了一份错误报告,将此功能列入愿望清单,但似乎还没有人实现它。
所以,我的问题是:是否有任何明智的方法可以同时使用两种不同语言的两个词典?
这个问题让我很头疼,而且互联网上几乎没有关于如何做到这一点的文档。因此,我将把我找到的解决方法作为答案,以节省其他人(包括未来的我)的麻烦。但如果您有更好的解决方案,请发布。
更新:澄清行号要求,减少一些冗长
从命令行,有没有办法:
为了帮助纠正它们?
目前,帮助完成一篇文章或其他英文写作,aspell -c text.txt有助于发现拼写错误。但是,当错误是无意中连续重复一个单词时,这没有帮助。
highlander_typo.txt:
There can be only one one.
Run Code Online (Sandbox Code Playgroud)
运行aspell:
$ aspell -c highlander_typo.txt
Run Code Online (Sandbox Code Playgroud)
可能因为aspell是拼写检查器,而不是语法检查器,所以重复的单词拼写错误超出了其预期的功能范围。因此,结果是该文件通过了aspell检查,因为就单个单词的拼写而言,没有任何“错误”。
正确的句子是There can be only one.,第二个one是无意的重复单词错字。
但另一种情况是,例如kylie_minogue.txt:
La la la
Run Code Online (Sandbox Code Playgroud)
这里的重复不是错字,因为这些是艺术家歌词的一部分。
所以解决方案不应该自己假设和“修复”任何东西,否则它可能会覆盖故意重复的单词。
jefferson_typo.txt:
He has has refused his Assent to Laws, the most wholesome and necessary
for the public good.
He has forbidden his …Run Code Online (Sandbox Code Playgroud) 我有一个定期更新的 tex 文件,每次都想检查拼写。我希望 aspell 记住我选择忽略的拼写错误的单词,并在随后的每次拼写检查中自动忽略它们。到目前为止,我的做法如下:
aspell -t -c file.tex. 在那之后,我知道剩下的任何拼写错误的内容下次都可以忽略。cat file.tex | aspell list -t | sort | uniq > dictionary.txt然后添加personal_ws-1.1 en 162作为dictionary.txt的第一行。这将是一个个人字典,可以在随后的每次拼写检查中忽略这些内容。aspell --home-dir=. --personal=dictionary.txt -t -c file.tex这有效,但问题是每次我想更新我想永久忽略的词时,我都需要执行此过程。有没有办法让 aspell 在拼写检查期间自动将交互式忽略的单词放入该文件中?或者任何其他有效的方式来实现我在上面所做的事情?
我正在我的 Ubuntu 系统上寻找威尔士语单词列表。apt-file search /usr/share/dict/不显示选项。但是aspell-cy确实存在。官方描述是“这个包包含了为 GNU Aspell 拼写检查器添加对威尔士语言的支持所需的所有文件。” 我已经安装了它,但找不到它应该使用的单词列表。
我在哪里可以找到威尔士语单词表?
我正在尝试对*.md当前目录中的所有文件进行拼写检查,但以下命令失败:
>> find . -maxdepth 1 -name "*.md" | xargs -I {} aspell check {}
xargs: aspell: exited with status 255; aborting
Run Code Online (Sandbox Code Playgroud)
我假设这是因为aspell需要stdin与用户交互并且以某种方式xargs不提供它。我在 Twitter 上发现了一个黑客,
find . -maxdepth 1 -name "*.md" | xargs -n 1 xterm -e aspell check
Run Code Online (Sandbox Code Playgroud)
但这每次都会打开一个新的 xterm。如何让我的原始命令工作,就像我要单独运行aspell我的 find 命令的结果一样?