嵌入命令行的Web 站点:在互联网中获取你的命令行
[原文发表地址] Web Sites with Embedded Command Lines: You got your Command Line in my Internet
[原文发表时间] 2012-09-20 6:34
八年前我写了一篇博客名为Windows完全错过了TextMode。语言是过时的…
我假设大家都知道,还有数以百万计的从95到XP的Windows机器,它们的存在只是为了在同一时间允许多个Telnet/ProcommPlus/Terminal窗口,因此终端用户可以与远程系统进行交互。
…但重点在这里。
我只是说,我的Tab,Tab,Tab,Enter往往会打败你的Click,Tab,Alt-F,O,Click,Double-Click ,否则我会接受百事可乐的挑战。
命令行的速度比图形用户界面快。命令行和所有串起来的东西,它们的内部是DSL(Domain Specific Languages)。
有多少次你看到(或更糟糕的是,编写)图形界面来表达或生成更简洁地表示的东西,比如"/^[a-z0-9_-]{3,16}$/"?
除了在地址栏,在命令行中并不是你在网络上常见的东西...目前为止还没有。虽然我们已经看到,越来越多的网站使用快捷键。
我们已经看到了谷歌的产品使用Vi的“HJKL”光标移动,几乎每个人都可以按“?”来弹出快捷键帮助。我使用Twitter网站和它的快捷键多于第三方的Twitter客户端。
相关阅读:Web是新的终端:您使用Web的键盘快捷键和热键吗?
虽然我们都喜欢bash,zsh,PowerShell和其他的shells,有趣的是,我认为命令行正在渗透网络本身。
Web上的命令行
很明显,搜索引擎已经可以支持网络命令行。谷歌和Bing允许我们使用他们的搜索框作为计算器。谷歌甚至支持Bacon Numbering!
也许我看到的第一个“Web命令行”的例子是Jonathan Aquino在2005年发布的the Rails Day submission YubNub。Futz.Me是另外一个例子,它使用URL作为它的命令行。DuckDuckGo -小的搜索引擎,可以 - 正在迅速成为搜索引擎的硬编码命令行工具。DDG 支持它们称作的"Bang Syntax."。可进行任何查询,添加一个!关键字,你正在做一个自定义的搜索。显然,有人喜欢为谷歌用!g,同样也喜欢超过数百个的!code,!scharp。你甚至可以拓展DuckDuckGo和提交你自己的Bang命令。
Jeff谈论了关于2009年地址栏作为命令行,但是我认为命令行比地址栏更深入一些。为什么不在网页本身嵌入命令行的概念呢?
从简单的搜索到更复杂的导航方案,GitHub最近发布了它们的命令行工具栏,它是一个Web命令行的极佳例子。它支持一系列相互链接的容易学习的命令,这样我就可以快速跳转到任何用户,任何项目,任何问题甚至更多。
有意思的是,网站的制造商,更愿意花时间在用命令行管理Web。Windows Azure团队最近花了大量的时间更新Management Portal,使其具有令人惊叹的新功能和一个不错的新HTML5网站,但我已经用cmd.exe或PowerShell中的Azure命令行结束了管理我的云应用程序。
对我来说,这简直是更快,更清晰,更明显。
scott@hanselmac:~$ npm install azure
npm http GET https://registry.npmjs.org/azure
...bunch of GETS...
scott@hanselmac:~$ azure
info: _ _____ _ ___ ___
info: /_\ |_ / | | | _ \ __|
info: _ ___/ _ \__/ /| |_| | / _|___ _ _
info: (___ /_/ \_\/___|\___/|_|_\___| _____)
info: (_______ _ _) _ ______ _)_ _
info: (______________ _ ) (___ _ _)
info:
info: Windows Azure: Microsoft's Cloud Platform
info:
info: Tool version 0.6.0
...bunch of help stuff...
使用诸如HTTPie这样的命令行工具,使得HTTP本身变得更友好和有趣,它让我几乎可以用命令行来写HTTP!
Firefox 16’s Beta Channel最近加入了一个Firefox命令行。您可以探索DOM,HTTP响应,cookies,元素,一切都从一个简单的命令行开始。当你知道你想要"inspect #mainbar"时,为什么要点击一个元素?
学习的网站,诸如TryRuby, TryF#, Codecademy, PexForFun,以及更多作为命令行嵌入的文本框,惊人的是当用户看到它们的时候并没有被吓坏。我必须说我始终记得我第一次在浏览器中看到TryRuby。我完全惊讶住了。
Luke Lowrey竟然让"NetBash"成为命令行管理员来管理网站!这全是基于Web的,但是它会地震式的在你的浏览器上弹出。太棒了。NetBash 在GitHub上。
你见过哪些网站用的是嵌入式的命令行?哪个基于Web的工具或网站使用了命令行和DSL的方式,让你惊讶了?