ScalaWorksheet
Sublime Text 3 的 Scala 工作表功能。
详情
安装
- 总数 4K
- Win 1K
- Mac 2K
- Linux 1K
8月6日 | 8月5日 | 8月4日 | 8月3日 | 8月2日 | 8月1日 | 7月31日 | 7月30日 | 7月29日 | 7月28日 | 7月27日 | 7月26日 | 7月25日 | 7月24日 | 7月23日 | 7月22日 | 7月21日 | 7月20日 | 7月19日 | 7月18日 | 7月17日 | 7月16日 | 7月15日 | 7月14日 | 7月13日 | 7月12日 | 7月11日 | 7月10日 | 7月9日 | 7月8日 | 7月7日 | 7月6日 | 7月5日 | 7月4日 | 7月3日 | 7月2日 | 7月1日 | 6月30日 | 6月29日 | 6月28日 | 6月27日 | 6月26日 | 6月25日 | 6月24日 | 6月23日 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Mac | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Linux | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
README
- 源代码
- bitbucket.org
ScalaWorksheet
ScalaWorksheet 是一个 Sublime Text 3 插件,为 Scala 提供工作表功能。您可以在视图中输入 Scala 代码,然后运行命令将视图中内容发送到 Scala REPL。如果代码合法,REPL 的输出将以方便查看代码与产生的输出之间对应关系的方式显示。如果存在错误,将显示完整的 REPL 输出,并提供方便的错误导航。
此插件受到 Scala IDE for Eclipse 工作表插件 的启发。
安装
插件可通过 Package Control 获取。最近在 macOS X 10.9 和 Sublime Text build 3054 上进行了测试。
设置
插件安装完成后,命令面板将包含 显示 Scala 工作表
命令,应在 Scala 视图中调用此命令。
您可能希望为此插件绑定一个快捷键,所以请将一个绑定添加到 show_scala_worksheet
命令到您的键映射中。我将“alt+w”键组合绑定如下,以确保它仅适用于显示 Scala 代码的视图。
{ "keys": ["alt+w"], "command": "show_scala_worksheet",
"context": [
{ "key": "selector", "operator": "equal", "operand": "source.scala" }
]
}
该插件假定您已安装 Scala,并且可以使用 scala
壳命令运行 REPL。
如果您想将一些 JAR 文件添加到 REPL 的类路径,可以将 scala_worksheet_classpath
设置为文件路径列表。
"scala_worksheet_classpath": [
"/my/great/library.jar",
"/the/other/monad/lib.jar"
]
此外,如果您代码文件位于一个 SBT 项目内,该插件将添加 SBT 项目的 target/scala-version/classes
目录到类路径中,其中 version
是 2.10
、2.9.3
等。
使用方法
将一些 Scala 代码输入到文件中并保存。例如,在 temp.scala
中输入
1 + 2
通过您的快捷键运行show_scala_worksheet
命令。您将看到一个新文件打开,命名为temp.scala (worksheet)
。它将显示Scala REPL会话的评估结果。由于没有错误,一旦评估完成,工作表视图将仅显示相关的输出。
res0: Int = 3
您可能希望将您的会话设置至少两列,并将工作表视图移动到与代码不同的列,这样您就可以一次性查看它们。
您可以更新temp.scala
,保存它,并重新运行命令来评估新的版本。
作为更复杂的示例,将以下内容输入到一个文件中。
val i = 99 * 666
var amount = {
val x = 66
42.5 * x
}
val x = for (a <- 1 to 20) { println (a) }
val len =
23 + 66
println ("hello there, Tony!")
现在运行该命令。像之前一样,您将看到REPL会话的进度。但是,这次更明显的是,视图已调整,使代码与其输出的输出对齐。
您应该看到以下类似输出,其中左侧的视图是原始文件视图,右侧的视图是工作表。插件在需要时插入了空行以对齐段落。
错误
如果您的代码包含错误,则插件的行为略有所不同。错误的位置将被设置为书签,并且选择将放置在第一个错误处。您可以使用F2键(next_bookmark
命令)导航到后续错误。
至于正确的运行,错误输出将通过移除REPL欢迎消息、空白行等来进行净化。如果您想看到完整的错误输出,请使用以下设置
"scala_worksheet_sanitise_errors": false
视图同步
默认情况下,代码视图与其对应的工作表视图是同步的,以便如果其中一个视图中的选择发生更改,另一个视图如果需要也会进行调整,以保持两个视图对齐。
如果您不想有这样的行为,请使用以下设置
"scala_worksheet_sync_views": false
重要提示:当前实现仅在选择更改时同步视图。对视图的其他更改(更改了可见的内容)目前不会同步。例如,如果您用鼠标滚动视图,您需要点击某处才能让另一个视图赶上。我在调查修复这种不足的方法。
工作表位置
插件默认行为是确保工作表视图在输入代码视图的不同的文件组(列)中显示。这种布置确保您可以轻松地同时看到它们。
如果请求在只有一个列的窗口中工作表,将创建第二个列,并将工作表放入该列。如果工作表视图已经在窗口中显示在输入视图的同列中,它将被移动到输入视图右侧的列。如果工作表视图已经在窗口中显示在不同的列中,它将保持原位。
如果您不想让插件尝试为您定位工作表视图,请使用以下设置
"scala_worksheet_show_in_other_group": false