是否有Scala REPL/SBT控制台的配置文件?

是否有Scala REPL/SBT控制台的配置文件?,scala,sbt,Scala,Sbt,我一直在试图找到某种点文件,将Scala REPL设置和自定义函数放入其中 我特别感兴趣的是传递它的标志,如-Dscala.color(启用语法高亮显示),以及覆盖设置,如结果字符串截断: scala> :power scala> vals.isettings.maxPrintString = 10000 最好将这些设置应用于简单的Scala REPL会话以及sbt控制台会话 Scala是否存在这样一个中心配置位置?如前所述~/.sbt/0.13/global.sbt是sbt的全局

我一直在试图找到某种点文件,将Scala REPL设置和自定义函数放入其中

我特别感兴趣的是传递它的标志,如
-Dscala.color
(启用语法高亮显示),以及覆盖设置,如结果字符串截断:

scala> :power
scala> vals.isettings.maxPrintString = 10000
最好将这些设置应用于简单的Scala REPL会话以及sbt控制台会话


Scala是否存在这样一个中心配置位置?

如前所述
~/.sbt/0.13/global.sbt
是sbt的全局配置文件。您可以在此处更改全局设置,这可能不会影响REPL,但应与SBT控制台配合使用。

穷人的解决方案:为自己设置一个
别名

alias myScala='scala -Dscala.repl.axPrintString = 10000' 

也许您可以使用现代化的Scala REPL:


您主要询问属性设置,这超出了考虑加载一个定义文件的程度,对Windows也没有多大帮助,但我想我会分享它是有用的:

我求助于使用另存为
~/bin/scala
的包装器脚本来设置配置属性并加载一些实用程序函数:

#/垃圾箱/垃圾箱
#scala REPL没有任何配置文件,因此此包装器用于设置
#当运行时,不使用某些属性值并加载实用程序的初始化文件
#要进入REPL模式的参数。
#
#如果有参数,就假设我们在脚本中运行一个.scala文件
#模式、类或jar等,并正常执行。
SCALA=${SCALA:-/usr/local/bin/SCALA}
如果[“$#”-eq 0]&&&[-r~/.config/scala/replinit.scala];然后
exec“$SCALA”-i~/.config/SCALA/replinit.SCALA-Dscala.color
其他的
执行官“$SCALA”“$@”
fi
如果您有时使用Ammonite REPL,正如另一个答案所建议的那样,实用程序定义可以通过
load
~/.Ammonite/predef.scala
加载来共享:

尝试load.exec(ammonite.ops.home/.config/'scala/“replinit.scala”)
catch{case}:异常=>println(“==replrc未加载!==”)

我不确定自动加载
sbt控制台
的init文件的方法,尽管->关于
初始化
设置的注释对属性很有帮助,但在控制台中的
initialCommands的值中使用
:load
命令似乎不起作用。

Ammonite有一些粗糙的边缘,我制作了
.sbt/0.13/plugins/color.sbt
并把它放进去:
initialize~=(\u=>if(ConsoleLogger.formatEnabled)sys.props(“scala.color”)=“true”)