【问题标题】:How to define aspell word delimiters?如何定义 aspell 单词分隔符?
【发布时间】:2012-06-18 16:25:02
【问题描述】:

Aspell 将带有下划线或破折号的单词视为两个单词,例如cloud-based 拼写检查为“cloud”和“based”。有没有办法指定单词分隔符以排除破折号和下划线?

【问题讨论】:

  • 你不是在找this吗?
  • @Mikhail 类似的东西。尽管那篇文章没有解释如何自定义哪些字符是单词边界,哪些不是。即,我希望 aspell 认为 cloud-based 是一个单词,如果我拼错了,例如“cluod-based”,我希望 aspell 返回整个单词,而不仅仅是“cluod”。这有意义吗?
  • 我认为您不希望将所有破折号都视为“字母”,对吧?
  • @MikhailKozhevnikov 嗯,如果你考虑破折号字母,“and-”这个词是不是拼错了?
  • 除非它在字典里,是的。

标签: bash spell-checking aspell


【解决方案1】:

如果我正确理解了这个问题,Aspell 无法完全按照您的意愿行事(据我所知)。这与Aspells TODO list上的条件复合词处理有关。

在同一个列表中提到Hunspell 在复合词方面做得更好,因此如果您不绑定到 Aspell,它可能是一个可行的选择。 OpenOffice 使用 Hunspell 进行拼写检查,因此很容易找出它是否符合您的要求。它至少适用于“基于云”的示例,并且不考虑所有带连字符的无条件复合词,即“基于云”不会被视为拼写错误。

【讨论】:

  • 感谢您的回答。或许我会去看看 hunspell。
  • 请注意,hunspell 仅在每个基础元素本身都是单词时才处理连字符。因此,“基于云”可以工作,但“附加组件”却不行。
【解决方案2】:

此时,Aspell 无法执行您希望它执行的操作。它用于处理带有符号的单词的接口目前还不够复杂,无法处理这种情况。有关这方面的更多信息,请参阅here

很抱歉,目前还不能解决这个问题,除非您想实现自己的接口。我建议使用 Hunspell 作为Mikhail 的建议。

【讨论】:

    猜你喜欢
    • 2010-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-29
    • 1970-01-01
    • 2015-08-17
    • 1970-01-01
    相关资源
    最近更新 更多