使用mac简体中文,导入百度输入法字库

因为自己喜欢简单的界面,所以在选择mac输入法时候就选择了跟系统更加贴合的百度输入法。但是最近发现原生的简体拼音也还可以用用,于是想办法把百度的用户词库导入了mac,写个blog供大家参考。

mac输入法使用

通过官方的链接和文章结尾的相关链接可以了解mac的简体拼音输入法 官方输入法support的链接

大概总结一下
  1. 点击大写锁定键在中英之间切换,长按会切换到大写
  2. 按下option可以在打字途中输入数字
  3. 通过【】键来翻页,数字键选取(上下左右也可以)
  4. 降低候选的字词权重 Shift-Delete(以后在输入就不会在第一个了)

导入用户字库

用了一下原生,感觉还是可以用用的。于是就想办法吧用户字库导入到mac。

查资料发现mac并没有字库的概念,不过有一个文本替换的东东,可以导入用户自定义的短语。通过plist文件即可导入用户自定义的文本替换。 macOS「文本替换」内容的备份和恢复(导出和导入),导出貌似已经不可以用了,不过plist导入还是可以的。

于是有了把百度用户字库导入mac的想法,看了一下mac输入法是有导入导出词库的功能,应该是可以实现的。

1. 导出百度拼音的字库

百度字库导出

如上,导出,用文本打开发现是如下的文件,使用简单的字符转换就可以转换成想要的格式

从(cong) 60001
从两个(cong|liang|ge) 55000
从头(cong|tou) 55000
从数据(cong|shu|ju) 55000
菜(cai) 60000
才(cai) 60000
猜测(cai|ce) 55000
采集器(cai|ji|qi) 55000
踩坑(cai|keng) 55000
2. 按照资料方法没有导出,于是网上下载了一份。如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
	<dict>
		<key>phrase</key>
		<string>⌥</string>
		<key>shortcut</key>
		<string>macalt</string>
	</dict>
	<dict>
		<key>phrase</key>
		<string>QQ音乐</string>
		<key>shortcut</key>
		<string>qqyinyue</string>
	</dict>
</array>
</plist>

看出plist只有一个数组,数组里面包含很多字符和对应的值。

3. 将用户词库简单转换为plist字典格式

我是用一段代码进行字符串转换的。

step1: 用文本编辑简单处理导出的用户词库:

//使用搜索替换将格式转换为数组格式

command option F 搜索替换字符串,搜索"
"然后替换为", "

文本编辑

step2: 用任何代码生成plist的array格式

//swift

    let strings = ["从(cong) 60001", "从两个(cong|liang|ge) 55000", "从头(cong|tou) 55000", "从数据(cong|shu|ju) 55000", "菜(cai) 60000", "才(cai) 60000"]
	strings.enumerated().forEach { (_, item) in
            let strs = item.components(separatedBy: CharacterSet.init(charactersIn: "("))
            let lasts = strs[1]
            let values = lasts.components(separatedBy: CharacterSet.init(charactersIn: ")"))
            let pinyin = values.first
            
            if let value = strs.first, let key = pinyin?.components(separatedBy: CharacterSet.init(charactersIn: "|")).joined() {
                let plistAWord = "<dict>\n<key>phrase</key>\n<string>\(value)</string>\n<key>shortcut</key>\n<string>\(key)</string>\n</dict>"
                print(plistAWord)
            }
            
        }
        
        print("ok")
        

step3: 替换plist,然后拖入文本替换,注意要停留几秒钟然后松手,否则可能失败。

拖入

后记

因为更愿意使用原生的,所以切换为简体中文后就一直在使用了,使用起来基本合手,但是开始还是需要删除一些候选字词。建议可以尝试,如果追求完美还是没有三方的使用方便(除容错和准确度以外,百度有从网络联想字词的功能),还是有一些差距的。

现已经切换回百度输入法,。

转载于:https://my.oschina.net/bieshixuan/blog/1863335

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值