有没有快速的方法来显示Scala控制台中声明的方法的代码?

时间:2012-07-19 13:17:36

标签: scala console read-eval-print-loop

在我实际将其写入项目之前,我经常使用Scala控制台来评估和测试代码。如果我想知道变量的内容,我可以输入它并且scala对它进行求值。但是,还有一种方法可以显示我输入的方法代码吗?

我知道有UP键可以显示单行,但我要搜索的是立即显示整个代码。

2 个答案:

答案 0 :(得分:7)

您的主目录中有一个名为.scala_history的文件,其中包含您最近的所有REPL历史记录。我经常将此文件中的代码复制并粘贴到项目源文件中。它与显示REPL中各个方法的代码并不完全相同,但它可以帮助您实现相同的目标。

请参阅Paul Phillips在this issue中关于REPL中某些相关功能的讨论(历史中的分组陈述):

  

在某些时候,我实现了这个逻辑,但真正的障碍   是jline。它有足够的麻烦找出光标所在的位置   最简单的条件。开始投入大的多线块   历史,它泪流满面。很想看到这个和   SI-2547由社区解决。

     

...

     

我希望尽快解决这个问题,但这取决于最近的情况   jline工作去了。我很久以前实现了它,显示问题是   障碍。

这两条评论都已超过两年了,所以我不会屏住呼吸。

答案 1 :(得分:1)

我不知道从命令行加载所有代码的命令。 您可以做的是:load path/to/my/file.scala加载一些复杂的代码,并在更改文件中的代码时重新:load