Skip to content

融合拼音(rime_melt)是一个拼音-英文混合输入的Rime输入法的输入方案,基于【袖珍簡化字拼音】【Easy English】。

License

Notifications You must be signed in to change notification settings

tumuyan/rime-melt

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

融合拼音(rime_melt)

融合了【袖珍简化字拼音】【Rime 简体中文用户定制文件】和【Easy English】从而实现了简体中文和常用英语的混合输入,故名融合拼音(rime_melt)

意义

众所周知,拼音输入是使用人数最多的中文输入方式;而rime默认拼音方案为明月拼音,该方案使用了繁体词库,通过OpenCC转换繁体中文为简体,而转换的结果事实上并不理想。故使用简体字典输入中文是很有必要的。

特点

  • 这是一个打包解决方案。在version<=1.6.1的版本中,尽量保持了原有项目的文件结构,通过引用、patch实现修改效果。因此当用户对rime稍微熟悉后,可以方便地更换、增删其中的某部分,而不至于产生严重的错误。在1.6.1之后的版本中做了若干调整,不再使用patch机制。
  • 本方案与Easy English词汇和方案差异极大,故更名为Easy English Nano。相关特性详见关于Easy English Nano章节。
  • 本方案创造性地在中文词库中加入了大量中英文混拼词条、含标点词条,如:汉斯·阿尔伯特·爱因斯坦梅赛德斯-奔驰哆啦A梦高Ping战士等。这些词条既可以全拼(包含完整英语单词或者字母),也可以简拼(只拼写拼音和英语的首字母)。
  • 本方案引入叶典网【两分输入方案】作为反查滤镜。当用户需要输入生僻字时,可以对复杂文字进行拆分,先输入"`",再输入第一部分的拼音,最后输入第二部分的拼音。如果本地存在候选词的拼音,会通过opencc滤镜显示该文字的读音。
    • 本方案设计了长词优先算法。比如Rime拼音方案输入xian,第一页候选词通常没有xi'an读音的词条(因为简拼的优先级要低于全拼,编码完全匹配的优先级要高于编码含分割符);使用本方案会强行提升至多3个中文、2个英文长词候选的排序到第一页。
  • 本方案设计了变量算法。输入值=oo值=ii,可以设置oo和ii两个变量。当候选词为成句时,算法自动替换候选词中的"Oo"和“Xx”为变量值(注意大小写。另外换行请使用<br>而不是\n)。pinyin_simp_custom.dict.yaml中已经预设了若干示例作为参考。当需要输入词库中没有的英语作为变量,且中文候选词造成干扰时,可以先输入一部分字符,按shift切换至英文状态,再继续输入剩余内容。

冲突

  • 如果你已经安装两分输入方案、Easy English、袖珍简化字拼音方案,并且与本方案存在文件冲突,替换不替换均可正常使用,但是实际使用的词库会有差别。
  • 如果你已经使用lua滤镜,lua滤镜存在冲突。rime.lua文件的内容需要手动合并。
  • 如果你已经安装opencc拼音滤镜,可能与本方案存在冲突,但是替换不替换均可。

安装

目前本方案没有加入东风破,需要下载文件并放置到方案目录来使用。

  1. 下载文件、解压文件
  2. 删除解压后others目录中不必要的文件。
    • rime.lua是lua滤镜,如果你的其他输入方案已经预设了lua滤镜,需要手动合并此文件的内容到用户文件夹内的rime.lua文件中,完成文件引用。否则直接复制到Rime用户文件夹内即可
    • custom目录下melt_eng_custom.dict.yamlpinyin_simp_custom.dict.yaml分别是英文、中文用户自定义词库,由用户自己维护。如果Rime用户文件夹内没有这几个文件,请拷贝;如果存在,请不要替换,避免自己积累的词条被覆盖。symbols.custom.yaml为符号配置补丁文件,根据我的个人习惯微调了符号输入的行为;放不放置这个文件都OK。
    • prelude目录的文件来自 (rime-prelude)[https://github.com/rime/rime-prelude],是大部分方案需要引用的配置文件。如果程序文件夾缺少这些文件,大部分方案都会部署失败。如果程序文件夾内没有这几个文件,请拷贝;如果存在,请不要替换,避免自己的设置被覆盖。
    • others目录的放置了一些杂项参考文件,可以直接删除。
  3. 剪切opencc目録到程序文件夾内。路径位置:
    • 【小狼毫】 C:\Program Files (x86)\Rime\weasel-0.14.3\data
  4. 复制剩余文件(包含lua子目录)到Rime用户文件夹内。用户文件夹位置:
    • 【中州韻】 ~/.config/ibus/rime/ (0.9.1 以下版本爲 ~/.ibus/rime/)
    • 【小狼毫】 %APPDATA%\Rime
    • 【鼠鬚管】 ~/Library/Rime/
  5. 启用 [融合拼音/melt_pinyin] [liangfen]和 [Easy English Nano] 方案,等待完成部署。
  6. 打开 Rime 方案选单(输入状态下按Ctrl + ~),切换至 [融合拼音] 即可开始使用。

更新

通常直接下载并覆盖文件、重新部署即可。 特别地,由于文件结构变更,从1.6.1往更高版本升级,需要重新勾选方案进行部署,复制同步目录中的pinyin_simple.userdb.txtmelt_pinyin.userdb.txt,并打开此文件,修改文件头部的pinyin_simplemelt_pinyin,重新同步。

使用

  • 由于常见的简繁转换快捷键Ctrl + Shift + F与部分IDE的快捷键存在冲突,故本方案设置快捷键为Ctrl + Shift + Space
  • 在存在候选词时,快捷键Ctrl + Shift + P可以快速切换拼音滤镜
  • 输入引导符号`可以调用两分方案 其他常规快捷键参考末尾折叠段落的快捷键章节

文件组成及授权

本项目基于多个公开的方案和词库,并且尽量不对原文件修改,以便保持与上游的同步和随时调整,同时也方便理清权利归属。缺点是包含的文件总数较多。
本项目沿用上游项目【袖珍简化字拼音】所使用Apache 2.0的协议,但是授权仅限于已明确标注由作者tumuyan制作的文件,其他文件遵循相应项目的授权。 以下文件清单存在仓库增加了文件,但是本说明没有及时更新的情况。
下载、复制、修改、使用及分享此项目部分或全部文件时,默认已经知悉此章节内容。

  • melt_pinyin.schema.yaml :融合拼音主方案文件。参考了【袖珍简化字拼音】【Rime 简体中文用户定制文件】
  • melt_pinyin.dict.yaml: 融合拼音词主库文件。引用了其他词库,本身只有少量补充词条(含使用拼音编码的外语、数字和符号混合的词条)。
  • melt_mult_language.dict.yaml:少量中外语、数字和符号混合的词库,不参与造词,使用英文编码,供Easy English Nano方案引用。

【Rime 简体中文用户定制文件】项目使用MIT协议,涉及的文件包含:

  • pinyin_simp.custom.yaml :袖珍简化字拼音方案的客制化配置文件,有改动。 已删除。
  • pinyin_simp.main.dict.yaml :词库中心文件。词库内容由 袖珍简化字拼音 默认词库pinyin_simp.dict.yaml修改而来,故合并两者并保持同步。
  • pinyin_simp_base.dict.yaml :基础词库,由额外词库文件引用使用,来源为项目 https://github.com/alswl/Rime 中的「现代汉语常用词表」
  • cn_en.dict.yaml : 英文词库。 已删除。
  • zhwiki.dict.yaml :维基词库。来源为项目 fcitx5-pinyin-zhwiki 已经删除,改为自己解析wiki dump文件并生成词库。
  • pinyin_simp_custom.dict.yaml :自定义词语,由最终用户根据实际需求来编辑(如添加自定义短语)。目前预设了一些最新最in的💈文学。

【Easy English Nano】

  • melt_eng.schema.yaml 归属于【Easy English】,原作者是Patrick [email protected],但是在Patrick的主页没有这个项目的仓库。 而github上BlindingDark有在维护,使用了LGPLv3协议,但是与本方案分属不同分支。
  • melt_eng.dict.yaml 英文主词库,作者tanzi,没有更多信息。在2016考研词汇大纲和六级单词的基础上进行修订。
  • melt_eng_custom.dict.yaml 用户自定义英文词库,由最终用户根据实际需求来编辑。

【两分输入方案】来自叶典网。 引入两分方案作为反查滤镜。当用户需要输入生僻字时,可以对复杂文字进行拆分,先输入"`",再输入第一部分的拼音,最后输入第二部分的拼音。候选词如果存在读音,会通过opencc滤镜显示该文字的拼音。

  • liangfen.schema.yaml 两分方案,有调整,并引入拼音滤镜。
  • liangfen.dict.yaml 两分方案的词库,去除了大部分假名

【融合拼音增补词库】
求人不如求己,用【深蓝词库转换】转换搜狗细胞词库及其他方式获取的语料,并手动更新。(然而显而易见,搜狗目前的策略并不是通过更新离线词库来改善用户的输入体验,聊胜于无罢了;wiki作为词库,也并非上佳选择)

  • pinyin_simp_chengyu.dict.yaml:搜狗成语俗语细胞词库 https://pinyin.sogou.com/dict/detail/index/15097
    更新:2017-03-30 20:46:10
  • pinyin_simp_gushi.dict.yaml:搜狗古诗细胞词库 https://pinyin.sogou.com/dict/detail/index/2
    更新:2020-12-28 15:05:44
  • pinyin_simp_liuxing.dict.yaml:网络流行新词细胞词库 https://pinyin.sogou.com/dict/detail/index/4
    更新:2024-11-03 20:50:02
  • pinyin_simp_wiki.dict.yaml:使用维基百科提供的dump数据解析而得。和别人作品不同,包含了大量中英文混拼词条、含标点的词条。不定期更新,每月至少1次。由于维基词条主要还是名词,效用有限,因此使用了一些自制工具对词条进行清理,包括Wiki Filter 以及 Dick Tick
    下载直链
  • pinyin_simp_moe.dict.yaml:使用萌娘百科提供的API数据解析而得,含大量二次元词条。和别人作品不同,包含了大量中英文混拼词条、含标点的词条。不定期更新,每月至少1次。
    下载直链

【融合拼音参考文件】

  • /others/t2s.json /others/Translation.txt:词库繁体转简体时所使用的opencc配置文件。
  • /others/*.csv: 整理中的增补字典,除常见国家和语言外均未实装。可直接删除。
  • /others/废词*.txt:废词列表。
  • /others/修复*.txt:为避免预处理词条时被正则过杀,设置的废词白名单。
  • /others/whitelist.txt:废词过滤白名单。废词过滤算法会根据符号切分词条,在这个文件中出现过的词条不做分割和过滤处理。
  • /opencc: opencc拼音滤镜。原作者不祥。PYCharacters.txt为单字拼音,文字基于两分输入法词库列出的单字,拼音查自国学大师网,并处理多音字为[读音1&nbsp读音2]的形式。PYPhrases.txt为词条拼音,也略有调整。
  • /lua/melt.lua:融合拼音的预设lua滤镜。

【维基词库手动清理规则】

.*表\s

关于Easy_English_Nano

与Easy English的词库差异

  • 只保留了较常用的词汇,并非单纯为了提高混打中英文时的打字速度,而是借用字典机制对输入的单词的正确性和大小写进行校对。基于@tanzi制作的包含2016考研词汇大纲和六级单词词库进行更新。

  • 部分单词拼写存在英式英语和美式英语的差别,以符合国内(其实是本人)拼写习惯。通过核查,多数单词实际上是美式拼写习惯,少部分为英式,也有少部分保留了两种拼写。此部分改动并未完全落实。
    使用美式的有如下参考规律:

    拼写规律 例词1 例词2
    英式our,美式写成or, 选择美式 colour color favourite favorite
    英式词尾me/ue不发音,美式删掉 kilogramme kilogram catalogue catalog
    英式中的ise结尾,美式改成ize apologise apologize recognise recognize
    英式的re和美式的er theatre theater centre center
    英式的ce和美式的se licence license

    选用英式英语的例子:

    • railway 是英式英语,railroad是美式英语,使用railway

与Easy English的方案差异

  • 内置了大小写转换。允许用小写字母输入拼大小写混合的单词,允许首字母大写输入全大写的单词。允许大写首字母把词库中的小写单词转为首字母大写,允许大写前2个字母把词库中的小写单词转为大写单词。举例:

    词库 输入 候选
    ASCII As ASCII ~CII
    Apple ap Apple ~ple
    Apple Ap Apple ~ple
    tool To Tool +ol
    tool TO TOOL +ol
  • 能够自动处理编码中的单个+-_符号。如果词条包含了其他符号或多个符号,比如空格,需要手动去除码表中的特殊符号。

  • 不会生成自造词(避免输入错误造成的字典污染)。作为补充,制作了自动编辑用户字典的lua滤镜输入。输入单词并使用--结尾时,输入的键盘码会自动保存到melt_eng_custom.dict.yaml中。当用户重新部署时,新的词条会生效。

其他

以下内容修改自袖珍简化字拼音的Readme和Rime项目Wiki

袖珍简化字拼音

配方: ℞ pinyin-simp

Rime 袖珍简化字拼音輸入方案

使用快捷键

  • 设置:在Rime输入状态下,按 F4 鍵或組合鍵 Ctrl+` 喚出輸入方案選單(` 鍵常見於 1 的左方),可以进入输入方案及选项设置。 使用 ←→鍵 定位光標插入點「‸」(或顯示爲「›」),編輯輸入碼。 也可用來縮短後選詞所對應輸入碼的範圍、確認詞句的一部分。

  • 光标: HomeEnd 鍵 快速跳至句首、句末。 BackSpaceDelete 鍵 分別刪除光標前、後的編碼字符。注意在蘋果鍵盤上前者標註爲 Delete,後者通常是組合鍵 Fn+DeleteEscape 鍵 清空未完成的輸入。

  • 刪除誤上屏的錯詞:先把選字光標(用上、下鍵)移到要刪除的用戶詞組上,再按下 Shift+DeleteControl+Delete(蘋果鍵盤用 Shift+Fn+Delete)。 这个操作只能從用戶詞典中刪除詞組。用於碼表中原有的詞組時,只會取消其調頻效果。

  • 输出编码区内容: Ctrl+Shift+Enter

輸入標點符號

按鍵到標點符號的映射有三種形式:

  • 按鍵對應惟一的符號,按鍵後直接輸出該符號,如「,」
  • 按鍵對應一組配對的符號,符號交替出現,如「“”」
  • 按鍵對應多種符號,按鍵後展現選單。此時可按空格鍵或回車鍵確認高亮的符號,反復按該鍵則選中下一種符號。

每一款輸入方案,都可以定義兩套符號表,以「方案選單」裏的選項「半角←→全角」往復切換。

中西文切換

打開「方案選單」,使用選項「中文←→西文」可在兩種轉換狀態間往復切換。

此外,默認可用左右 Shift 鍵快速切換。

特别的,在輸入了部分編碼的情況下,左 Shift 切換輸入法光標左面的編碼內容,右 Shift 切換光標右面即將輸入的內容。

注意:Mac 系統上的鼠鬚管不能區分左、右 Shift ,因此左、右 Shift 鍵的作用一樣。

Emacs 風格的編輯鍵

註:Windows 版本 Alt 組合鍵不可用。

  • ↑:Control+p
  • ↓:Control+n
  • ←:Control+b
  • →:Control+f
  • 上頁:Alt+v
  • 下頁:Control+v
  • 句首:Control+a
  • 句末:Control+e
  • 回退:Control+h
  • 刪除:Control+d
  • 清空:Control+g
  • 刪詞:Control+k

About

融合拼音(rime_melt)是一个拼音-英文混合输入的Rime输入法的输入方案,基于【袖珍簡化字拼音】【Easy English】。

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Lua 100.0%