2013-03-08 2 views
5

Я знаю о readInt и readLine подобных методах чтения ввода с клавиатуры и могу заполнить переменные данными, введенными пользователем. Но в REPL ничего не отображается, когда символы печатаются. Есть ли настройка в REPL, чтобы сделать их видимыми? Или я должен использовать другой способ чтения ввода от пользователя?Чтение ввода с клавиатуры в Scala с введенными символами

+0

@ om-nom-nom - Это не показывает вам, что вы печатаете, только то, что вы набрали после нажатия клавиши ввода (когда это, вероятно, слишком поздно). –

+0

Если я возьму файл класса, который был скомпилирован из кода Scala и запустил его с помощью 'java.exe', символы будут видны по мере ввода, без необходимости писать код для их отображения. Завершенное приложение будет запущено с помощью 'java.exe', поэтому я не хочу писать код для этого только из-за поведения REPL. – Gigatron

+0

Я думаю, что Scala REPL (все еще) использует JLine. Вероятно, вы можете копаться в источнике REPL и узнать, как добраться до соответствующих объектов и вызвать правильный метод для изменения поведения ввода. ... Надеюсь, это достаточно смутно для вас ... –

ответ

5

Я удивлен, что на это еще не дан ответ. Я снова столкнулся с той же проблемой. Попробуйте запустить REPL так:

C:\> scala -Xnojline 

Это следует отключить JLine и позволяют использовать метод readLine, как вы могли бы ожидать (отображение символов, напечатанных при вводе их).

Смежные вопросы