作者:sluke
发布时间:March 31, 2010
分类:劳动万岁
以前写过一篇《有这样一群用户——对拼音输入法的几点思考》,里面提到了将词典整合进输入法的需求,利用谷歌拼音的扩展,可以自己动手实现一个。
个人觉得汉英词典功能的实现障碍在于交互步骤多。拼音输入法是一个从字母到中文的过程,字母->中文备选->中文,中文是输入过程的终结点,实现汉英查询,就意味着要在中文之后再加两步,输入过程变成了字母->中文备选->中文->英文备选->英文,这是对正常输入过程的干扰。流行的搜狗输入法、谷歌输入法及QQ输入法等都为用户提供了I模式、U模式等功能入口,来避免扩展功能对正常输入的干扰,所以词典功能也可依此:
启动I模式->进入汉英词典功能->输入字母->中文备选->选中中文->英文备选->选中英文
谷歌拼音的I模式只能输入字母,以上流程便不能实现,不过API里有一个特别的函数,可以返回上一次输入的内容,即是
ime.get_last_commit()
利用词函数,可以变通实现,由于需要一个庞大的词库来处理,所以代码只给出思路如下:
--录入词库table
_C2E_={
["你好"] = {"hello", "hello2"}
["世界"] = {"world", "world2"}
}
--定义函数,返回翻译
function c2e()
return _C2E_[ime.get_last_commit()] --返回下标为前面输入的中文的table值
end
ime.register_command("fy", "c2e", "汉英翻译")翻译的过程变成先输入一个中文,然后启动I模式的翻译功能:
字母->中文备选->中文->i模式->翻译->英文备选词->英文
英汉词典同理完成,因为词典需要版权,这大概是各大输入法没有做翻译的一个主要原因吧,腾讯已经做了词典软件,接下来真可以实现带翻译功能的输入法。
PS:如能实现请求web接口来翻译的功能更好,就可以整句翻译了,不过代价是速度。
作者:sluke
发布时间:March 24, 2010
分类:劳动万岁
-- encoding: UTF-8
------------------------------------------------
--谷歌拼音用例助手扩展
--版本:0.1
--作者:sluke
--作者主页: http://www.luweiqing.com/
--
--简介:写用例时省点时间
--
--此扩展遵循GPLv2发布
------------------------------------------------
-- 定义一个table,写入需要用到的用例字段
_USECASE_ = {
[1] = {"用例名称:" .. "\n" .. "用例描述:" .. "\n" .. "相关需求:" .. "\n" .. "情境目标:" .. "\n" .. "前提条件:" .. "\n" .. "成功的结束状态:" .. "\n" .. "失败的结束状态:" .. "\n" .. "基础用例:" .. "\n" .. "包含用例:" .. "\n" .. "主行为者:" .. "\n" .. "从行为者:" .. "\n" .. "触发器:" .. "\n" .. "主要流程:" .. "\n" .. "扩展流程:" .. "\n" .. "备注:"},
[2] = {"Use Case Name:" .. "\n" .. "Use Case Description:" .. "\n" .. "Related Requirement:" .. "\n" .. "Goal In Context:" .. "\n" .. "Preconditions:" .. "\n" .. "Successful End Condition:" .. "\n" .. "Failed End Condition:" .. "\n" .. "Base Use Case:" .. "\n" .. "Include Use Case:" .. "\n" .. "Primary Actors:" .. "\n" .. "Secondary Actors:" .. "\n" .. "Trigger:" .. "\n" .. "Main Flow:" .. "\n" .. "Extensions:" .. "\n" .. "Comments:"},
}
function Usercase(i)
if #i<=0 then
return {
{suggest = "en", help = "English"}, -- suggest 赋值需要是小写字母,没有空格及符号
{suggest = "cns", help = "简体中文"},
}
elseif i == "en" then
return _USECASE_[2]
elseif i == "cns" then
return _USECASE_[1]
else
return _USECASE_[2]
end
end
ime.register_command("yl", "Usercase", "用例助手", "帮助输入用例模板")以上代码保存为usecase.lua,添加到google拼音的扩展里。进入i模式,输入yl即可,可以输出两个预置的用例模板,如下:
英文
Use Case Name:
Use Case Description:
Related Requirement:
Goal In Context:
Preconditions:
Successful End Condition:
Failed End Condition:
Base Use Case:
Include Use Case:
Primary Actors:
Secondary Actors:
Trigger:
Main Flow:
Extensions:
Comments:
中文
用例名称:
用例描述:
相关需求:
情境目标:
前提条件:
成功的结束状态:
失败的结束状态:
基础用例:
包含用例:
主行为者:
从行为者:
触发器:
主要流程:
扩展流程:
备注:
PS:清华大学出版社的《UML2.0学习指南》,翻译有点瑕疵
作者:sluke
发布时间:May 20, 2009
分类:学习札记
市场上的拼音输入法已经相当完善,目前大概算是进入了产品的成熟期,也许是我眼光有限,我觉得拼音输入法再有创新将很难。曾经有那么几天时间,我跟输入法可能会走得很近,以下写的就是那几天的一点思考。
细分市场是重要的,在铺安装量的时期过去之后,如何满足细分用户将更加重要。做细分市场就要研究细分用户,这里我虚拟这样一群用户,可能就是那一群所谓互联网意见领袖...
这群用户有这样一些特性:
1、受过比较好的教育,收入较高
2、从事脑力劳动,需要撰写比较正式的文档,词组要求准确
3、有时会使用英文与国外人士交流
再看市场上主流的拼音输入法,都有在线升级词库的功能,能够输入网络上各种流行的词语和符号,而且这些词语往往排在可选词的最前面(让我想起来在参加中关村在线一个活动时,搜狗市场人员说的一句话:,大意是如果有一天搜狗不能马上输入网络流行词汇了,网友们一定会骂)。我想,输入法的PM们一定听过这样的抱怨:什么乱七八糟的词都排在前面,影响输入,这些反馈大概都是上面那群用户提交的。
怎么满足这群用户的需求又不忽视大量娱乐性用户的需求呢?我觉得现实中有个相当成熟的应用,那就是手机的情景模式,不同的情景模式不过就是不同的设置组合而已,比如声音大小、是否震动、是否有提示音等等。那么拼音输入法里有什么可以设置的呢?那就是词库和词频。
满足需要准确输入的用户,可以设定一个商务(政务)模式,载入商务词库,正式用语优先,自定义词组和网络流行词组放后面。同样的,娱乐模式就是可以最快输入那些网络热门词,这样工作生活两不误。这样的功能现在输入法都可以做到,只是设置没有那么方便而已,需要对选项进行逐项修改,遗憾的是我虚拟的这群用户里有大量的电脑操作白痴,他们根本不会知道或者恐惧去面对详细设置。拼音输入法的情景模式除了在功能上有一点区分之外,还需要在视觉上有一个区别,这个更简单,换个皮肤就行了。
扩展一下,同样的思路可以做出来男性版、女性版、周杰伦版、小沈阳版、魔兽世界版、征途版,估计运营们该高兴了,多省事儿的推广啊。
接下来解决英文输入的问题,现在的拼音输入法已经有多种的拼音输入模式,可以提示输入英文单词,但是万一我忘记或是不知道单词怎么拼写,该怎么开始呢?去查字典?所以,输入法可以跟词典结合,起到一个翻译的功能:
中文字词->汉英词典查询->英文单词->用户选择输出
PS:如果google来做,还可以整合google语言工具,实现整句翻译。
这是一个多对多的关系,所以在输入时会多一步选词的过程,在操作设计时要谨慎考虑。
最后总结一下给拼音输入法加的两个功能:
1、情景模式
2、整合翻译
作者:sluke
发布时间:April 5, 2007
分类:闲言碎语
http://tools.google.com/pinyin/feature.html
作为一个google的支持者,我还能说什么,赶紧装上!
- 1