开发时使用控制台的最佳方法是什么?
对于脚本语言,开发时使用控制台的最有效方法是什么?除了仅"编译并运行"语言以外,还有什么方法可以使控制台更高效?
进一步说明:我在Ruby,Python,Boo等方面进行了更多的思考。这些语言用于功能完善的应用程序,但也可以在控制台中运行少量代码段。
解决方案
回答
我认为这取决于控制台。与Powershell控制台相比,Windows上的CMD控制台有用。
回答
我为Control-Shift-C组合键添加了快捷方式,以启动Visual Studio 2008控制台。仅此一项就为我节省了数不清的时间,无需注册dll或者执行任何其他命令。我想如果我们将其与其他命令工具一起使用,可能会大大提高生产率。
回答
你在开玩笑吗?
在我的Linux环境中,控制台是我的命脉。我精通bash脚本编写,因此对我而言,控制台非常类似于坐在Python或者Lisp的REPL中。我们实际上可以做任何事情。
我实际上是在bash中编写团队使用的工具,而控制台是进行此开发的理想场所。当我弄清楚它们时,我真的只需要一个编辑器作为后备存储。
回答
I am thinking more along the lines of Ruby, ...
对于Ruby来说,irb
交互式提示是"练习"简单事物的好工具。以下是我将要提到的关于irb的一些内容,以使我们了解有效使用的方法:
- 自动化。允许我们使用.irbrc文件,该文件将在启动irb时自动执行。这意味着我们可以加载我们喜欢的库,或者自动在完整的Ruby中执行我们想做的任何事情。要了解我的意思,请在dotfiles.org上查看其中的一些内容。
- 自动补全。这甚至使编写代码变得更加容易。不记得那个删除换行符的字符串方法了吗?
" .ch <tab>
产生印章和印章。注意:我们必须为irb启用自动补全功能 - 分而治之。 irb使小事情变得非常容易。如果我们正在编写用于操作字符串的函数,则可以在提示符下以交互方式测试代码的功能可以节省大量时间!例如,我们可以打开irb并开始在示例字符串上运行函数,并且已经为库/程序准备好了经过测试的代码。
- 学习,实验和黑客攻击。在C / C ++,甚至Java中,这样的测试都将花费很长时间。如果我们尝试一次测试所有这些,则可能会出现段错误,并且必须重新开始。在这里,我只是在学习
String#[]
函数的工作方式。
joe[~]$ irb >> "12341:asdf"[/\d+/] # => "12341" >> "12341:asdf"[/\d*/] # => "12341" >> "12341:asdf"[0..5] # => "12341:" >> "12341:asdf"[0...5] # => "12341" >> "12341:asdf"[0, ':'] TypeError: can't convert String into Integer from (irb):5:in `[]' from (irb):5 >> "12341:asdf"[0, 5] # => "12341"
- 测试和基准测试。现在,它们很好并且易于执行。这是模仿Unix
time
函数以进行快速基准测试的想法。只需将其添加到.irbrc
文件中,即可将其始终保存在文件中! - 调试-我自己并没有使用太多,但是总有能力调试这样的代码。或者提取一些代码并在irb中运行它以查看其实际作用。
我确定我错过了一些东西,但是我碰到了我最喜欢的地方。我们对shell的限制确实为零,因此仅受我们能想到的限制。我几乎总是会运行一些shell。 Bash,Javascript和Ruby的irb仅举几例。我用它们来做很多事情!
回答
我们没有说要使用什么操作系统,但是在Linux上,我已经使用选项卡式窗口管理器(wmii)大约一年了,它从根本上改变了我使用应用程序控制台的方式。
我通常在虚拟桌面上有四个或者更多控制台和其他应用程序,而使用wmii,我不必费心调整窗口大小来排列所有内容。我可以将它们琐碎地重新排列成垂直列,垂直堆叠起来,让它们共享相等的垂直或者水平空间,然后在屏幕之间移动它们。
假设我们在桌面上打开两个控制台。我们会得到这个(对Cronkey插图表示歉意):
---------------- | | | 1 | | | ---------------- ---------------- | | | 2 | | | ----------------
现在,我希望它们并排。我在窗口2中输入SHIFT-ALT-L将其向右移动并创建两列:
------- ------- | || | | || | | 1 || 2 | | || | | || | ------- -------
现在我可以打开另一个控制台并获取
------- ------- | || 2 | | || | | | ------- | 1 | ------- | || 3 | | || | ------- -------
然后,我想临时查看控制台3的全高,因此我在其中按下ALT-s并得到:
------- ------- | | ------- | || | | 1 || 3 | | || | | || | ------- -------
现在将控制台2和3堆叠在一起。
我也可以给Windows标签。例如,在控制台2中,我可以说ALT-SHIFT-twww + dev,该控制台将在" www"和" dev"虚拟桌面中可见。 (如果不存在,则创建桌面。)更好的是,控制台在每个桌面上可以采用不同的视觉配置(例如,堆叠和全屏)。
无论如何,我不能在这里对选项卡式窗口管理器进行公正处理。我不知道它是否与环境有关,但是如果我们有机会尝试这种工作方式,我们可能不会回头。