diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2012-06-05 19:41:31 +0200 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2012-06-08 15:23:09 +0200 |
commit | c74533ad6547befcfaf524dcb93c920f922c47e1 (patch) | |
tree | 47145b5a0e9d89962a1ae476a8342b0d85e7110f /src | |
parent | 2aaccfe2e311b22a7a93a2a77b2229222f2fb982 (diff) | |
download | scala-c74533ad6547befcfaf524dcb93c920f922c47e1.tar.gz scala-c74533ad6547befcfaf524dcb93c920f922c47e1.tar.bz2 scala-c74533ad6547befcfaf524dcb93c920f922c47e1.zip |
REPL bells and whistles: -Dscala.repl.maxprintstring=<Integer>
Makes `maxPrintString` configurable and fixes its treatment at zero.
Quite useful for debugging elaborate classloaders with long classpaths.
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/interpreter/IMain.scala | 2 | ||||
-rw-r--r-- | src/compiler/scala/tools/nsc/interpreter/ISettings.scala | 2 | ||||
-rw-r--r-- | src/compiler/scala/tools/nsc/interpreter/ReplProps.scala | 3 |
3 files changed, 5 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/interpreter/IMain.scala b/src/compiler/scala/tools/nsc/interpreter/IMain.scala index c54b401f3f..b7235a4d4a 100644 --- a/src/compiler/scala/tools/nsc/interpreter/IMain.scala +++ b/src/compiler/scala/tools/nsc/interpreter/IMain.scala @@ -1228,7 +1228,7 @@ object IMain { def maxStringLength: Int def isTruncating: Boolean def truncate(str: String): String = { - if (isTruncating && str.length > maxStringLength) + if (isTruncating && (maxStringLength != 0 && str.length > maxStringLength)) (str take maxStringLength - 3) + "..." else str } diff --git a/src/compiler/scala/tools/nsc/interpreter/ISettings.scala b/src/compiler/scala/tools/nsc/interpreter/ISettings.scala index 59c933632b..d68a2becfb 100644 --- a/src/compiler/scala/tools/nsc/interpreter/ISettings.scala +++ b/src/compiler/scala/tools/nsc/interpreter/ISettings.scala @@ -24,7 +24,7 @@ class ISettings(intp: IMain) { * more than this number of characters, then the printout is * truncated. */ - var maxPrintString = 800 + var maxPrintString = replProps.maxPrintString.option.getOrElse(800) /** The maximum number of completion candidates to print for tab * completion without requiring confirmation. diff --git a/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala b/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala index aa58a8b2ba..218e02193a 100644 --- a/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala +++ b/src/compiler/scala/tools/nsc/interpreter/ReplProps.scala @@ -7,9 +7,11 @@ package scala.tools.nsc package interpreter import scala.sys._ +import Prop._ class ReplProps { private def bool(name: String) = BooleanProp.keyExists(name) + private def int(name: String) = IntProp(name) val jlineDebug = bool("scala.tools.jline.internal.Log.debug") val jlineTrace = bool("scala.tools.jline.internal.Log.trace") @@ -25,4 +27,5 @@ class ReplProps { val powerBanner = Prop[JFile]("scala.repl.power.banner") val vids = bool("scala.repl.vids") + val maxPrintString = int("scala.repl.maxprintstring") } |