Phi*_*ppe 6 java readline jline
无论是使用的JLine(或JLine2),是有可能发出一个电话readline
上ConsoleReader
,并有中,除了标准的提示,缓冲区预填充我选择的字符串?
我试过这样做,例如:
reader.getCursorBuffer().write("Default");
reader.readLine("Prompt> ");
Run Code Online (Sandbox Code Playgroud)
这似乎确实写入缓冲区,但该行只显示提示.如果我按回车键,就会按照我的预期readLine
返回"Default"
.如果我清除屏幕,则会重新绘制缓冲区并正确显示.
我的理解是,reader.redrawLine()
在打电话之后我应该以某种方式打电话readLine
.然而,最后一个是阻塞,这使得它很难(不是不可能,但使用第二个线程肯定是错误的).
我认为您想要resetPromptLine
或者putStream
如果您已经设置了提示。
不是要劫持你的问题,但我不知道如何简单地打印一行替换提示(表面上或视觉上将提示向下推,并在其上方显示一条消息)。