说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

通过语音识别来编程 速度远超键盘

HTML文档下载 WORD文档下载 PDF文档下载
最近网上流传了一段关于语音编程的视频,引起了热烈讨论。视频的主人公因早些年患上重复性劳损,而无法通过敲键盘来编码,便尝试通过语音来编程。视频中展示了他用Emacs Lisp、Python在Emacs中编码的过程。

近日网上流传了着一段2013 Python大会上的演讲视频。该视频展示了语音编码过程,且速度比一般开发者通过键盘编码速度更快。


视频中 Tavis Rudd通过语音识别来编写程序( 点击观看视频)

该视频中的概要内容是:

两年前,我患上了重复性劳损(RSI),十分严重,最后导致我的手开始麻木。我无法工作,无法再敲击键盘。绝望之际,我开始尝试语音识别。起初,通过语音编程慢得让人难受。但毕竟无法打字,我一直忍受着。在以后的几个月里,我不断地进行词汇调整,使用Python和Emacs Lisp进行语音编码,最终我开发了一个系统,它可以帮助我通过语音编程,相比我之前用手编程更快、更高效。

在短暂的现场演示中,我将用Python来创建一个小系统,为了取得更好的效果,我还会用一些其他语言,同时对其进行部署的过程中,不会触碰键盘。通过该演示,我希望让你确信,语音识别不再是残疾人的“拐杖”。现在它是非常高效的工具,所有开发人员可从中获利。

通过该视频,我们可总结出以下几点内容:

  • 他在Windows操作系统中使用 Dragon NaturallySpeaking(Amzon)语音识别软件。(他表示无法使用Linux CMU Sphinx。)(他用的是Mac电脑,显然他是在虚拟机上运行的Windows操作系统。)
  • Dragon利用Python进行编程,于是他学习了Python,同时也学习了 Python语音识别扩展库DragonFly(由Christo Butcher编写)。所以现在他可以定义自己的语音命令(如键入、移动光标到代码中的某个位置……等等)。
  • 他创造了很多短小特殊/独一无二的短语,依靠它们可以做很多事,如返回插入行,变换Emacs缓冲区,启动终端等等。所以,当他语音编程时,你会听到“twip,chirp,slap,derp……”,十分有趣。
  • 他有大约2000个个人命令。
  • 他表示,他的系统是在Vim、Emacs中完成的。(在演示中,好像只使用了Emacs。)
  • 他证明了在他开发的系统中用Emacs Lisp、Python在Emacs中编码的过程。它比普通程序员用键盘编程更快、更高效。
  • 开发该系统,耗时3~6个月。
  • 现在他的重复性劳损已完全康复,但他表示仍在使用他的语音系统进行编程,大约占到总时间的40%~60%。
  • 他表示,将在未来的4个月内发布他的代码。大家可以在Twitter( @tavisrudd)、 GitHub上关注他。

他所推荐使用的麦克风是昂贵的Amzon Audix OM-7 Microphone。

Windows 7中自带有一个语音功能:微软语音识别系统。正常语速下,它可以出色地工作,但无法进行编程。它可以正常工作于普通Windows应用中,尤其是微软的应用程序,如Office,却无法工作于Emacs中。(编译:陈秋歌/责编:夏梦竹)

原文来自:Xah Emacs Blog

VarPtr、StrPtr和ObjPtr函数的用法-VB资料 VB 在ACADWIN中的使用 VB5.0应用程序的启动与退出设计 VB5如何取得CDROM的盘符? VB5三十六计 VB5中确定CPU类型 Vb6.0编程技巧四则 VB6二进制双通道技术实战经典 VB6内置的内码转换功能 VB编程步步高-代码效率篇(一) VB编程步步高-杂类篇(二) VB编程步步高-杂类篇(一) VB编程的必备技巧 VB编程的一些心得 VB编程技巧几例 VB编程经验点滴 VB编程俱乐部问答 VB编程如何控制I/O口 VB编程问与答 VB编程之提速攻略(二) VB编程之提速攻略(三) Windows/VB编程逐月通 VB编写键盘拦截程序 VB常见问题解答(1) VB程序中处理随机事件 VB的多媒体控件VBPLAY.VBX简介 VB技巧点滴 VB技巧汇编 (一) VB剪贴板的用法 VB开发CAI软件的小经验 VB软件设计中的几个问题 关于XML中NODE的类型的问题(特急!!!) 大家来帮小弟以下啊,!!! 如果我把一个TAdoQuery变量送到子函数中? 谁能告诉我Bjarne Stroustrup应该怎么读? 说了半天到底谁的是正确的?在100分。delete p 是删去p指针,还是它指到的内容,*p。还是删去什么?free(p) 呢? 大家好,我有一个问题问一下你们很急的。我在线等待!!! 我要去上海找工作(java) 在线提问:各位朋友帮忙啊!很急啊! 关于通过telnet修改2000的用户密码问题 请问有无现存的四舍五入函数?(in vc) 请指教有关bde和9i的问题 帮助!谢谢! 着急!!!!!!!!!!!!!!! 关于CHM文件的菜鸟问题 各位帮帮忙,我的程序重要用定时器,怎么做呀? 为什么没法看贴子? 如何在PB8。0上创建可执行文件,,,,,,(请详细一点) 关于TStrings怎样去取值? 如何编程更改IP? 谁来帮帮我!!!!! 生成密码字典,有什么好主意呢?说说好么? 有关c++中何时分配内存的问题 急救!! 请教:有关列表框 谁有win98操作培训讲义,给我发一份到—— win2000下如何对并口进行操作? 请教IBM Open Class Libraries的问题 小弟高分求“Linux 0.02版”的源代码! 理解csdn,以后再不发政治问题的贴了。我的名字也马上改。 什么是流???(笑话) 讨论.net平台上的软件开发,请教高手 书和方法! 斑竹不要删这个帖子,别人给我做了一个FLASH网站,我放50分给他的:) 为什么看不到 关于拷贝函数 最老的帖子是什么呀?第一张帖子是谁发的呀? 我想使上下结构的网页框架位置不可以调(上方的导航条固定). WebLogic过期了,在线等待! 高手手请进!文本文件数据库表的问题?????? NOTES中如何实现这样的语句? 老板拿枪指着我,关于开共享,十万火急!! treeview控件中节点上鼠标右键点击的事件如何处理,急?!! WORD中使用VBA的一个问题 200分讨论,不够加分.关于QQ后台数据库设计如何实现,如何将好友的表关连,做到最小的数据冗余...... 请各位帮帮忙,很急! word 索引 求购或合作开发:中小型超市进销存、酒店管理源代码! 为什么我没见过panda_w、Kevin_qing两位版主,他们很忙么 有关软件项目管理的问题 初学者的低级问题,如何将字符串变为ASCII? 谁给我文章,我给谁分 如何使用大于1.5V的干电池给5V单片机供电使用4节干电池理论上是6V电压,但是碰到一些不正常的山寨干电池有1.66V,这样4节就是6.6V左右,如果串联压降0.7v的二极管得到的电压为5.9V,超过单片机最 盐是海水 要经过什么方法处理呢?才能成为食用盐 杯水车() 成语 在单片机的实际电路中,3节1.5V干电池可以让其工作,那么ADC0809的+5V的基准电压和工作电压怎么得到 一根轻绳绕过质量为m/4,半径为R的定滑轮,定滑轮的质量均匀分布在边缘上.绳的一段系一质量为m/2的重物,绳子的另一端由质量为m的人抓住,绳与轮滑不打滑,当人以匀速率u相对绳子向上爬时,求 成语:杯水车( ) ( )的意思又是什么? 、2005年某市人均GDP约为2003年的1.2倍,如果该市每年的人均GDP增长率相同,那么增长率为 在光滑水平面上,质量是1kg的物体连着一个定滑轮和绳子,用10N的力竖直往下拉和挂一个10N的重物有什么区别 什麼水车什么,组一成语 如何寻找支点 动力作用点 阻力作用点 电池反向串联的结果?假设三节干电池,每节电压1.5V.现将其两节同向,一节反向串联起来,另外串联一个5欧电阻,组成闭合电路.请问这个电路如何分析?反向串联电池是充电还是放电?如果是不能 一个螳螂和一个水车是什么成语 这开关怎么才能 各自 控制一个电灯,互不影响、求接线图.我想让这上面的俩开关各自控制一个电灯 互不影响,应该怎么接线,第3个孔里是空的, 动力*动力作用点到支点的距离=阻力*阻力作用点到支点的距离 这句话是否正确? 蓄电池串联时电压不一样会出现什么情况? 钢绳最多承受6000n的拉力,在不计滑轮·吊钩·绳的自重及摩擦时一次最多能吊多少n 锂电池电压是多少?如何串联?锂电池串联的时候可以头接底,边接边吗?该怎么串联呢?一定要边接头头接边吗?对了,它电压是多少?搞错了,是纽扣电池,对不起啦 蓄电池怎样串联 一道初三的电的物理计算题把r1R2串联后接在电压是5V的电源上,通过R1的电流强度是0.2A.两端的电压是4V,现并联他们接到一个电源上,求总电阻和总电流强度 三个蓄电池串联总电压 绳子刚好伸直,拉力等于0?轻绳 请问,这个电路闭合开关后是短路现象吗? 2只蓄电池串联后电压是多少 海水加工成食用盐的过程步骤?详细的问题说明,有助于回答者给出准确的答案 如图所示电路中当开关______闭合时L1L2并联当开关______闭合时会发生短路 将不同电压的电池串联,会怎样 电灯接线问题 (俩开关控制一个电灯)我想在自己家门的位置上放一个门灯 要求 俩个开关 门里一个 门外一个 在里在外都可以单独控制 比如我在门里打开了 在门外也可以关掉 门里关掉了 在 墙壁开关,三个开关控制三个灯,怎么接线?有没有图 知道几年的人均GDP,怎么算他们的增长率?第一年人均GDP9218 第二年12741 第三年14311 第四年15832 第五年17912 能不能帮我算算啊 两个(12伏,200AH)的蓄电池串联,充电机是12和24伏,充电电流可调,最大50安,请问怎么充电啊,充电电流调多少啊,充多长时间啊 为什么通常所说的压力、支持力和绳的拉力都是弹力? 怎样计算GDP增长率? 两个不同电能的电池串联会有什么现象呢?两个3.7V的锂电池,一个1000毫安时,一个5000毫安时.如果串联,总电能会怎样变化啊?如果可以的话再根我讲下如果一个1.5V的1000毫安时的电池和一个3.7V的5 支持力 压力 绳子拉力 和弹力的方向啊 告诉我怎么叙述就行 急用知道的说下… 电动车第一次放电应该怎么样想问下,电动车第一次充电要12小时左右,放电是不是也要过放电,过放电能不能经多次完成,比如2~3天之后用完了再冲行不行?我看到网上新电瓶前几次不需要把电用 水车的具体用法 Dg管、De管、DN管各表示什么意思 2个12V的蓄电池串联后的电压是几V? 为什么两个电池串联电机一顿一顿的 Dg表示钢管的什么 为什么电池串联电压会叠加电池串联后为什么电压会叠加,电池中的电荷作了怎样的分布 一个电池和两个电池串联?就是一个电池和两个并联的电池串联在一起,1.5V的电池 电路的总电压? 钢管dg代表什么d代表什么、g代表什么 定滑轮两边质量不同的物体受到的拉力是怎样的?如图,a质量为m,b质量为3m,同一条绳子上拉力是相等的,都为F,那F究竟是等于多少啊? 用mf--47万用表测220v电路的电流,怎么会烧了 有一个铁球的质量是316克,体积是60立方厘米,问这个铁球是空心还是实心?[铁的密度:7.9*10的三次方千克每立方米] 定滑轮算拉力是不是数绳子的根数? 古代的食用盐是怎么从海水中提炼的?求 墙壁插座开关一体的如何接线我想把墙壁上控制灯泡的开关,换成插座和开关一体的,后面如何接线,只有火线和零线 使用滑轮组时,若不计定滑轮重、绳重和摩擦是,拉力的计算方法 电池串联起来的特点 带开关的墙壁五孔插座怎么接,开关是控制灯的,和另一个插座的?录色和蓝色的不会接,别的都是之前接好的! 一个弹簧秤下面挂着一个定滑轮,滑轮和绳子的质量忽略不计定滑轮下面的左边和右边绳子各挂了两物体质量分别为m1和m2,m1不等于m2,则弹簧秤的读数为( )A.大于(m1+m2)g;B.等于;C.小于;D. 电池串联起来使用的特点 五孔开关墙壁插座 如何接线?原来的插座不带开关 刚刚买了一个一个康仕松日的5孔带开关的插座10A250V 不知道到如何安装 墙壁凹槽内有 红黄蓝三根线 插座背面有总共6个孔 开关处有三个分 海水是怎样制作成食用盐的? 串联电池组的特点 双开五孔插座,要一开关控制插座,一开关控制电灯,怎么接线? 如图所示,质量不计的定滑轮通过轻绳挂在B点质量不计的定滑轮通过轻绳挂在B点,另一轻绳一端系一重物C,绕过滑轮后另一端固定在墙上A点.现将B点或左或右移动一下,若移动过程中AO段绳子 成语杯水车什么
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘