我正在努力学习让一个简单的控制台应用程序与JLine3一起工作的基础知识。
我已经这样初始化了它:
terminal = TerminalBuilder.builder()
.streams(System.in, System.out)
.build();
lineReader = LineReaderBuilder.builder().terminal(terminal).build();我试着读一句这样的话:
String in = lineReader.readLine("/>").trim();如果用户只是输入正确的文本,我就会得到正确的输入。退格键用于更正输入。但是使用向左箭头键将光标移回不会移动;我看到屏幕上显示的是^[0D,而不是移动的光标。
我尝试了其他各种选择,但都没有改变。我想在适当的时候继续利用历史和自动完成,但我在第一步就失败了。
我显然遗漏了一些基本的东西(但是文档不是很好...)
在MacOS 10.13.6上使用JLine 3.13.3
发布于 2020-03-27 17:28:52
如果您想为运行JVM的真实控制台创建一个终端,您最好使用:
terminal = TerminalBuilder
.builder()
.system(true)
.build();这应该能更好地工作。
https://stackoverflow.com/questions/60093227
复制相似问题