每一个可以努力的日子,都是一份厚礼。
搜狗云输入法的终端接口脚本
2009-11-30 16:33
搜狗云输入法,来自http://pinyin.sogou.com/cloud
update:今天官方又出了个Firefox的“插件”。拜托,这东西应该被叫做扩展。还是个概念产品,然后就已经被linux fans嵌入到ibus里了(比如这里以及这里),这里有个示例性的脚本:
#!/bin/bash
content=
#sed的url解码函数
urldecode(){
echo $1| echo -e "$(sed 'y/+/ /; s/%/\\x/g')"
}
geturl(){
xx=`w3m -dump -no-cookie http://web.pinyin.sogou.com/web_ime/get_ajax/${1}.key|sed -n '2p'|sed 's/^"\(.*\)"\;/\1/g'`
xx2=`urldecode $xx|sed 's/\:[0-9]//g'`
echo $xx2
}
exitpy(){
clear
echo $content|xsel -b 2>/dev/null
echo $content|xsel 2>/dev/null
echo -e "\n你输入的文本是:\n $content\n\n 如果系统中有xsel那么已复制入剪贴板,欢迎使用,再见!!"
exit
}
while :
do
clear
echo -e " 利用搜狗云输入法API的终端输入法\n"
echo -e "提示: 可直接输入数字,第一个字母为v时直接输入英文.\n 输入del删除最后一个字符,输入exit退出。选词时输入0返回。"
echo -e "\n现在的内容是:\n\n $content\n\n"
read pinyin
[ `echo "$pinyin" | grep "^[0-9]*$"` ] && content+="${pinyin}" && continue
[ ${pinyin::1} == "v" ] && content+="${pinyin:1}" && continue
[ $pinyin == "exit" ] && exitpy
[ $pinyin == "del" ] && content="${content::${#content}-1}" && continue
echo ""
py=($(geturl $pinyin))
echo ${#py[@]}
[ ${#py[@]} -eq 0 ] && echo "没有可选词,请重新输入" && sleep 1 && continue
for ((i=0;i<${#py[@]};i++)){
echo -n "$((i+1))、${py[$i]} "
}
while :
do
echo -e "\n"
echo -e "\n 请输入数字选择"
read i
[ $i == "exit" ] && exitpy
[ $i == "del" ] && content="${content::${#content}-1}" && break
[ `echo "$i" | grep "^[0-9]*$"` ] || continue
[ $i -eq 0 ] && break
[ ! -z "${py[i-1]}" ] 2>/dev/null&& content+="${py[i-1]}" && break
done
done
稍稍试用了一下,准确率很高。据说使用了三元模型和trigger模型,语言模型大小4G(一般本地客户端为10M左右),词库规模200W。还是很强大的。请注意,我们伟大的长城。因为是明码传输,当你不小心输入一些过滤词的时候,网络会被自动断开或者延时大大加长。
其实,我感觉云计算在天朝难有前途。
| 这篇文章由lovelucy于2009-11-30 16:33发表在编程。你可以订阅RSS 2.0 也可以发表评论或引用到你的网站。除特殊说明外文章均为本人原创,并遵从署名-非商业性使用-相同方式共享创作协议,转载或使用请注明作者和来源,尊重知识分享。 |

批评不自由
则赞美无意义