我使用的Scala版本是Scala 2.12.2(Java HotSpot(TM)64位服务器VM,Java 1.8.0_121),Jline Library是2.14.3。
这听起来很愚蠢,但我试图在SCALA REPL模式下使用编辑器cmd行vi或vim创建一个scala文件时试图找出问题。以下是我的错误..如果有任何特定的Scala终端控制台我想使用或者我做错了什么,请你告诉我吗?感谢。
scala> vi test1.scala
<console>:1: error: ';' expected but '.' found.
vi test1.scala
我可以在没有SCALA REPL模式的情况下在我的系统中执行VI和VIM,但是当我在REPL中时,我无法创建scala脚本文件并执行它。可能有什么不对?是否需要为此启用任何设置?
答案 0 :(得分:0)
要保存REPL历史记录,请使用:save file
。
使用外部编辑器的支持有限。编辑的结果立即运行。重置后,只有编辑过的行在会话历史记录中,因此保存只会保存这些行。
$ EDITOR=gedit scala
Welcome to Scala 2.12.3 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_111).
Type in expressions for evaluation. Or try :help.
scala> val x = 42
x: Int = 42
scala> println(x)
42
scala> :edit -2
+val x = 17
+println(x)
17
x: Int = 17
scala> :hi 3
1896 val x = 17
1897 println(x)
1898 :hi 3
scala> :reset
Resetting interpreter state.
Forgetting this session history:
val x = 42
println(x)
val x = 17
println(x)
Forgetting all expression results and named terms: $intp, x
scala> :ed 1896+2
+val x = 5
+println(x)
5
x: Int = 5
scala> :save sc.sc
scala> :load sc.sc
Loading sc.sc...
x: Int = 5
5