我目前正在研究在我正在构建的应用程序中使用的最合适的字典。
检查与Sublime Text 2捆绑在一起的词典,文件格式如您所期望的那样 - 按字母顺序排列的单词列表。但是,其中许多单词都附加了其他信息。以这个片段为例:
abaft
abbreviation/M
abdicate/DNGSn
Abelard/M
abider/M
Abidjan
ablaze
abloom
aboveground
abrader/M
Abram/M
abreaction/MS
abrogator/MS
abscond/DRSG
absinthe/MS
absoluteness/S
absorbency/SM
abstract/ShTVDPiGY
absurdness/S
谷歌搜索毫无结果,并没有说明斜杠(/)后面的字母是什么意思。
也许他们暗示了这个词的性别,但这只是一个猜测,我更愿意阅读对他们含义的正式解释。
有人遇到过这些吗?
杠后面的字母称为词缀。 这些编码可以是可应用于根词的前缀或后缀。
请参阅此博客文章,了解这些词缀可用于哪些用途的良好解释和示例。
另一个要看的地方是aspell
手册。
TLDR
:.dic
文件中斜杠后面的每个字母都是.aff
文件中规则的名称。
https://superuser.com/a/633869/367530
每个规则都位于该语言的 .aff 文件中。规则分为两部分 风格:SFX 表示后缀,PFX 表示前缀。每行开头为 PFX/SFX,然后是规则字母标识符(紧随其后的标识符) 字典文件中的单词:
PFX [rule_letter_identifier] [combineable_flag] [number_of_rule_lines_that_follow]
您通常可以忽略可组合标志,它是 Y 或 N,具体取决于 是否可以与其他规则结合使用。然后有一些 列出不同可能性的行数(由 表示) 了解此规则在不同情况下的适用情况。它看起来像这样:
PFX [rule_letter_identifier] [number_of_letters_to_delete] [what_to_add] [when_to_add_it]
例如:
SFX B Y 3
SFX B 0 able [^aeiou]
SFX B 0 able ee
SFX B e able [^aeiou]e
如果
B
是单词后面的字母之一,即someword/B
,那么这是其中之一 可以适用的规则。有三种可能发生的情况 (因为有三行)。只有一个将适用:
- 当单词的结尾不是字母
a
、e
、i
、o
和u
的集合(用[ ]
表示)中的一个字母(由^
表示)时,able
被添加到末尾。例如,问题→有问题的- 当单词的结尾
ee
时,可以将添加到末尾。例如,同意→同意。- 当单词的末尾不是元音(
[^aeiou]
)后跟e
时,able被添加到末尾。字母e
被剥离(之前 able 的列)。例如,激发→可兴奋。PFX 规则相同,但改为在单词开头应用。 对于前缀。