Skip to content

Commit 438cdf6

Browse files
committed
simple integration with jline
1 parent d1ffa3e commit 438cdf6

File tree

3 files changed

+19
-9
lines changed

3 files changed

+19
-9
lines changed

bin/dotc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ unset verbose quiet cygwin toolcp colors saved_stty CDPATH
3838

3939
CompilerMain=dotty.tools.dotc.Main
4040
FromTasty=dotty.tools.dotc.FromTasty
41-
ReplMain=test.DottyRepl
41+
ReplMain=dotty.tools.dotc.repl.Main
4242

4343

4444

src/dotty/tools/dotc/repl/InteractiveReader.scala

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,24 +8,19 @@ trait InteractiveReader {
88
val interactive: Boolean
99
}
1010

11-
/** TODO Enable jline support.
12-
* The current Scala REPL know how to do this flexibly.
11+
/** The current Scala REPL know how to do this flexibly.
1312
*/
1413
object InteractiveReader {
1514
/** Create an interactive reader. Uses JLine if the
1615
* library is available, but otherwise uses a
1716
* SimpleReader. */
18-
def createDefault(): InteractiveReader = new SimpleReader()
19-
/*
20-
{
17+
def createDefault(): InteractiveReader = {
2118
try {
22-
new JLineReader
19+
new JLineReader()
2320
} catch {
2421
case e =>
2522
//out.println("jline is not available: " + e) //debug
2623
new SimpleReader()
2724
}
2825
}
29-
*/
30-
3126
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package dotty.tools
2+
package dotc
3+
package repl
4+
5+
import jline.console.ConsoleReader
6+
7+
/** Adaptor for JLine
8+
*/
9+
class JLineReader extends InteractiveReader {
10+
val reader = new ConsoleReader()
11+
12+
val interactive = true
13+
14+
def readLine(prompt: String) = reader.readLine(prompt)
15+
}

0 commit comments

Comments
 (0)