平方X 发表于 2017-9-13 15:58:28

[2365]修改OmegaT的模糊匹配填入规则


>本文由平方X发表于平方X网,转载请注明出处。(http://blog.pingfangx.com/2365.html)

# 0x01 修改自动填入
OmegaT支持模糊匹配,并且可以设置自动插入匹配的项。
但是有一个问题,就是在有数字符号的时候,它会忽略,仍计算为匹配。
在[官方帮助文档中]我们知道
>实际上还有三个可用的匹配估计(在上面第4个匹配中为66/66/30)。它们的含义如下:
>* 使用解析器插件后的匹配百分率
>* 缺省的OmegaT匹配度,即忽略数字和标签后匹配词汇数除以总的词汇数
>* 包含数字、标签的OmegaT匹配度
```
org.omegat.Main.main(String[])
org.omegat.Main.runGUI()
org.omegat.core.Core.initializeGUI(Map<String, String>)
org.omegat.gui.matches.MatchesTextArea.checkForReplaceTranslation()


            if (thebest.scores.score >= percentage) {
改为
            if (thebest.scores.adjustedScore >= percentage) {
```

# 0x02 修改差异显示
```
org.omegat.gui.common.EntryInfoSearchThread#run
    1搜索
    org.omegat.gui.common.EntryInfoSearchThread#search
    org.omegat.gui.matches.FindMatchesThread#search
    org.omegat.core.statistics.FindMatches#search
      1.1 处理
      org.omegat.core.statistics.FindMatches#processEntry
      org.omegat.core.statistics.FindMatches#addNearString
      
      1.2 处理数据
      org.omegat.core.matching.FuzzyMatcher#buildSimilarityData

    2处理结果
    org.omegat.gui.matches.MatchesTextArea#setFoundResult
    在 org.omegat.gui.matches.MatchesTextArea#setActiveMatch
    通过 javax.swing.text.StyledDocument#setCharacterAttributes 设置
```

# 0x03 Talk is cheap
(https://github.com/pingfangx/omegat/commit/25a30b6dddc56dc7f1205e241eb7cad49a6051be)

chen366690712 发表于 2018-6-11 17:20:25

学习了!
页: [1]
查看完整版本: [2365]修改OmegaT的模糊匹配填入规则