Open GoogleCodeExporter opened 9 years ago
如果您能抽空帮我解决一下问题,我会十分感激的: static const char * auto_correction_pairs[] = { "ign", "ing", "img", "ing", "uei", "ui", "uen", "un", "iou", "iu", };这个应该是自动纠错的一个列表. 很明了就是输入如uen然后直接切换到un. 因为要做拼音的智能纠错,我一步一步跟进去看代码,不是很理 解m_correctionPairs std::string& k = it->first; std::string& v = it->second; 为什么是两个string(用pair存储的).他们分别代表什么?能否举个 例子. 然后就到这步了: if (l != strlen(v)) { // e.g. uen -> un 这里体现了纠错 m_segs.back().m_len += l - strlen(v); m_pystr.resize(m_inputBuf.length()); } 因为不知道上面k和v分别代表什么,所以这步就看不懂了. 比方说我猜k存的是uen,然后v存的是un,是这种对应关系吗? 假设是这样那上面if中的代码该怎么理解,能否举个例子. 下面的问题我也很迷惑: 1.sunpinyin,ibus-sunpinyin,ibus之间是如何相互调用的?我看了前两部 分的代码,之间有的是相互调用的. 2.网上可以下载的代码全吗?有的是否用了库之类的? 3.因为本人是一个菜鸟,正在做输入法的相关项目.想把这套输� ��法完全搞懂,需要做哪些准备和方法?或者看哪些书. 期待大神的回复.谢谢.
Original issue reported on code.google.com by 1042026...@qq.com on 22 Mar 2013 at 8:31
1042026...@qq.com
Original issue reported on code.google.com by
1042026...@qq.com
on 22 Mar 2013 at 8:31