对于脚本语言,在开发时使用控制台最有效的方法是什么?有没有办法让控制台比仅“编译和运行”的语言更有效率?
补充说明:我更多地考虑 Ruby、Python、Boo 等。用于成熟应用程序的语言,但也有一种在控制台中运行小代码片段的方法。
我想更多的是沿着 Ruby 的思路,...
对 Ruby 来说,irb
交互式提示是“练习”简单事物的好工具。以下是我将提到的有关 irb 的内容,以便让您了解有效使用:
自动化。您可以.irbrc
在启动 irb 时自动执行一个文件。这意味着您可以自动加载您喜欢的库或在完整的 Ruby 中做任何您想做的事情。要了解我的意思,请查看dotfiles.org上的一些内容。
自动补全。这甚至使编写代码更容易。不记得删除换行符的字符串方法了吗? "".ch<tab>
产生chomp和chomp。 注意:您必须自己为 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"
测试和基准测试。现在它们很好并且易于执行。 这是某人模拟 Unixtime
功能以进行快速基准测试的想法。只需将其添加到您的.irbrc
文件中,它就会一直存在!
调试——我自己没有用过这么多,但总有能力调试这样的代码。或者拉出一些代码并在 irb 中运行它,看看它实际上在做什么。
我确定我错过了一些东西,但我找到了我最喜欢的点。你对 shell 的限制真的是零,所以你只受到你能想到的事情的限制。我几乎总是有几个 shell 在运行。Bash、Javascript 和 Ruby 的 irb 等等。我用它们做很多事情!
我认为这取决于控制台。与 Powershell 控制台相比,Windows 上的 CMD 控制台的用处更大。
您没有说您使用的是什么操作系统,但在 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”虚拟桌面中可见。(如果桌面不存在,则创建它们。)更好的是,控制台可以在每个桌面上采用不同的视觉配置(例如,堆叠和全屏)。
无论如何,我不能在这里做标签式窗口管理器的正义。我不知道它是否与您的环境有关,但如果您有机会尝试这种工作方式,您可能不会回头。
我在我的 Control-Shift-C 组合键中添加了一个快捷方式,以调出我的 Visual Studio 2008 控制台。在需要注册 dll 或执行任何其他命令时,仅此一项就为我节省了无数秒。我想如果你用另一个命令工具来利用它,你可能会大幅提高生产力。
你在开玩笑吗?
在我的 Linux 环境中,控制台是我的命脉。我精通 bash 脚本,所以对我来说,控制台就像坐在 Python 或 Lisp 的 REPL 中一样。从字面上看,你可以做任何事情。
实际上,我在 bash 中编写了我的团队使用的工具,而控制台是进行该开发的理想场所。我真的只需要一个编辑器作为我想出的东西的后备商店。