fkxxyz / rime-cloverpinyin

🍀️四叶草拼音输入方案,做最好用的基于rime开源的简体拼音输入方案!
https://www.fkxxyz.com/d/cloverpinyin/
GNU Lesser General Public License v3.0
1.8k stars 127 forks source link

可否加入中英混合输入? #4

Open yanzhou-ca opened 4 years ago

yanzhou-ca commented 4 years ago

偶然发现的,马上star一个。 我是在macos平台上使用的,加上default.custom.yaml和squirrel.custom.yaml后完成皮肤配色和横盘候选词。

中文输入真的是很流畅,比我之前的配置还要准确一些,只不过在一些词的输入上还是差点意思。比如输入“办到的”,出来的是“半岛的”,直到完成第一次输入。

另外,没有中英文混合输入的话,有的时候确实是不够方便,比如有时候需要输入iOS或者macOS,就必须先完成中文输入再按一下shift键来输入英文。在其他人的配置方案中,通常是使用luna_pinyin.cn_en.dict.yaml来完成英文、中英文混合短语和名词的输入的。不知道未来可不可以也加入类似的方案?

fkxxyz commented 4 years ago

感谢star和反馈。

我也是想实现这样一个功能,其实我基于的这些词典里原本是带中英文混合的词汇的,而当时发现一个副作用就是,比如加入了 mac 这个词汇,会导致输入 mac 之后,候选列表里只有一个 mac,那么“马车”、“马超”这些词语就得输全拼也就无法方便的输入了。

即便是我们认为都应该加到候选列表里(搜狗输入法也是这样做的),但是很无奈,权衡之下,我就直接过滤掉了所有带英文的词。

当然也有很多混合词汇不会影响正常的输入,比如“java编程”,候选列表里面就只有这一个没关系,但是要挑选出这些不会影响正常输入的词汇,如何挑选呢,我觉得,还是想办法实全部加到候选列表里更靠谱一些。

现在还没能找到完美的办法。如果要彻底解决这个问题,可能是得改进 librime 的源码了吧。

如果谁有更好的办法一定告诉我。

fkxxyz commented 4 years ago

如果你想和别人定制的方案一样暂时解决这个问题,操作也很简单,参考 导入自定义词库,你可以试试,导入一些没有副作用的混合词语。

建立一个 cn_en.dict.yaml 文件,内容为,后面可以自己定义。

name: cn_en
version: "1.0"
sort: by_weight
...
iOS ios
macOS   macos

然后将你想添加的混合词汇加到里面,然后修改 clover.dict.yaml ,最后面加一行

name: clover
version: "1"
sort: by_weight

import_tables:
  - clover.base
  - clover.phrase
  - THUOCL_animal
  - THUOCL_caijing
  - THUOCL_car
  - THUOCL_chengyu
  - THUOCL_diming
  - THUOCL_food
  - THUOCL_IT
  - THUOCL_law
  - THUOCL_lishimingren
  - THUOCL_medical
  - THUOCL_poem
  - sogou_new_words
  - cn_en
h0cheung commented 4 years ago

我目前是配合 easy_en 使用,用和 patch 明月拼音等一样的方法 patch 本方案,体验良好。以下是配置文件,共参考 https://gitlab.com/h-cheung/dotfiles/-/blob/master/local/share/fcitx5/rime/clover.custom.yaml

fkxxyz commented 4 years ago

感谢!我会抽空把这个方法写到文档里。

yanzhou-ca commented 4 years ago

看了下@h0cheung的配置,原来可以把easy_en当作输入法来使用,现在用起来有了安卓版SwiftKey的感觉了。 突然感觉看到了一片新天地…… Screen Shot 2020-07-08 at 16 29 35

qisnzo commented 4 years ago

我也是用easy english的,设置一个自己顺手的方案选择的快捷键,切换到easy english进行全英文的输入还算方便,虽然比不上大厂输入法的混拼流畅

DogTorrent commented 3 years ago

直接内嵌 easy_en 到话会导致大写锁定状态下控制按键异常(至少小狼毫是这样),需要把 Caps_Lock 设置为非 noop 的值,也就是说只能放弃大写字母混输了😢 https://github.com/rime/weasel/issues/404#issuecomment-546746691