关于python:四肢瘫痪程序员的最佳编程辅助工具

Best programming aids for a quadriplegic programmer

在你下结论之前,是的,这与编程有关。它涵盖了一种情况,标题是"在那里,但为了上帝的恩典,去你或我。"这对我来说是一个全新的领域,所以我在这里寻求一些严肃的帮助。

高中毕业两周后,在附近一个小镇上的一个名叫本扎·里帕的年轻人做了一件经典的蠢事——他跳入俄罗斯河的浅水区,休息了一次C-4/C-5,有时也被称为游泳池休息。几秒钟后,他从一个杰出的高尔夫球手和摔跤手变成了四肢瘫痪者。(读故事…我们所有人都应该很幸运有一个像布丽安娜这样的女朋友。)那是10个月前的事了,他已经恢复了对右食指的控制力,以及一些其他的手/脚的动作,这些动作都不是很精细。

他对电脑的完全控制(目前正在运行Win7,但我们可以根据需要更改)是通过语音命令。洪扎不是傻子。他在AP数学和物理方面的平均成绩是3.7分。

问题:

  • 由于他的所有输入都是通过语音命令进行的,因此他担心编程中特殊字符的优势将需要大量冗长的命令。有人知道专门为程序员设计的完善的语音输入系统吗?我在考虑一些可能是模态的东西——例如,你说"python input",它进入宏模式来做类定义,等等。考虑到程序员领域的所有rsi,肯定有一些东西在那里。它运行在什么操作系统上?

  • 我计划教他Python,这是我编程和教学的首选语言。有没有用python编写的应用程序/什么东西,在支持残疾的同时,能让他在精神上投入工作?他表达的兴趣之一是股票投资,但这对于一个全新的程序员来说可能不是一个好的起点。

  • 有很多环境(flash、javascript等)对具有可访问性挑战的人不太友好。我隐约记得(但找不到)一个研究项目,它基本上在屏幕环境的顶部创建了一个覆盖系统,然后在屏幕图像的顶部允许宏命令构造。如果我们能得到/训练这个系统,我们就可以消除使用网络的许多障碍。

  • 我特别感兴趣的是寻找开源的基于python的机器人和机器人假肢项目,这样他可以同时学习高级编程概念,同时学习解决他自己的一些即时问题。

  • 我在这个问题上做了很多谷歌搜索,但我知道我遗漏了一些东西。我要让SO社区站到这里来。我知道这个小组有答案,所以让我听听!在这样一个改变生活的事件之后,我们中的任何一个人都可能有/需要继续编程的机会,这让我不胜其烦。

    更新:我刚刚注册了computingforquads.org,我将为各种各样的问题创建各种解决方案的页面。感谢你迄今的帮助,让这些答案不断出现!


    我有运动损伤,如果没有严重的疼痛,我不能输入超过几个字符。

    相反,我使用Emacs和龙的自然峰值。我已经编写了宏和脚本来帮助它度过难关。这个系统并不完美,但它起作用。我主要用C++编程,但我也使用Python。

    如果你愿意,我会帮你的。我得警告你,要适应语音到文本的软件并训练它需要几个月的时间。而且,我不是说英语的本地人,我确信这会妨碍我的工作。

    不要绝望,有解决办法。

    这里有一个指向emacs和dragon文件的链接(不幸的是,还没有文档记录)

    http://code.google.com/p/asadchev/source/browse/svn/trunk/home/dragon

    http://code.google.com/p/asadchev/source/browse/svn/trunk/emacs/elisp

    另外,如果您需要更多信息,我的号码是5152309363(美国,爱荷华州)。如果可以的话,我很乐意帮助你


    值得一看的是Dasher项目,它使输入文本的速度相当快,甚至对于严重禁用的用户也是如此。破折号建立在语言的概率模型上,这样更可能的话语更容易进入系统。演示系统附带了相当令人印象深刻的自然语言集合。应该很容易获得用Python编写的大量程序集,用这些程序集加载dasher,并创建用于输入Python程序的专用版本。


    这不是任何专业软件的一部分,但是当我看到这一点时,我认为这对于使用眼球运动跟踪或最小鼠标运动的文本输入是很好的。请参阅ken perlin的处理页面,并查看"笔输入"的小程序。


    我认识印度一个村庄里的一个截瘫患者,她用龙语文本软件在电脑上写字。我不知道它对程序员有多适合(她不是程序员),但这是一个开始。

    你可能还想研究自然点。它是一只眼睛控制的老鼠,可能对本扎有帮助。

    希望这有帮助


    完成后的ipython

    在Python方面,ipython显示参数、函数等,并完成命令。也许它也可以定制来响应各种输入设备?

    http://ipython.scipy.org/moin/


    我知道这个问题现在已经很老了。我想知道在编程方面本扎的情况如何。很高兴听到你的回音。

    值得一提的是,我饱受RSI之苦,现在我尽量减少使用键盘,尤其是鼠标。

    我自己的语音识别经验是,这种东西确实有效。我使用Windows内置的Windows 7语音识别软件(WSR)。我还使用了语音手指(http://voice finger.cozendey.com/)来帮助移动鼠标指针。我要提到的一些关键点是:

    学习快捷方式。在"打字模式"下,你几乎可以用快捷键做任何事情,用语音识别说出来效果很好(见下文)。

    使用打字模式。除非你是在听写文本,否则这对于在电脑上说简短的话或拼写奇怪的单词都是很好的选择。有趣的是,它不是WSR的一个明确的"广告"功能。

    拼音字母。要充分利用打字模式,请学习拼音字母:http://en.wikipedia.org/wiki/nato_phonical_alphabet在使用任何形式的语音识别时,如果没有这一点,您就无法真正地通过它。

    vim。(或者我猜是Emacs——不确定)。Vim非常适合在不触摸鼠标的情况下编辑文本。这使得它非常适合使用wsr编辑文本。我自己只是一个VIM初学者,但发现它非常有用。

    网页浏览。根据我的经验,没有鼠标浏览网页仍然是一件非常困难的事情。有太多的情况需要您使用鼠标悬停以获得底层命令。真是太可惜了。尽管如此,还是有一些非常好的火狐插件可以帮助你不用鼠标就可以浏览。

  • 无鼠标浏览:https://addons.mozilla.org/en-us/firefox/addon/mouseless-browsing/这是一个简洁的小工具,有很多配置选项,可以将数字放在所有链接旁边。然后您可以键入这些号码来激活链接
  • vimperator:http://vimperator.org/这比无鼠标浏览要远得多。它基本上给了你对火狐完全的vim控制。我发现这比无鼠标浏览更有效,但在改变默认Firefox行为的情况下可能会很烦人。
  • 这些只是我个人的经历。听到本扎的情况会很高兴。


    有一件事可能会有所帮助(我从这个问题中得到的)是http://shorttalk-emacs.sourceforge.net/。它似乎是Emacs和语音识别之间的接口。关于语言,我建议使用Lua而不是Python。它有一个更自然的英语流。