问题标签 [jline]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
157 浏览

clojure - Windows cmd 包装器与 Clojure 和 Scala REPL 的通信不良

我正在编写一个 cmd 包装器,它应该像任何其他 cmd 包装器一样拦截任何 cmd 应用程序的流。到目前为止,我已经成功并且大多数应用程序都可以正常工作,例如“ping”等。但是,当我启动 Clojure 或 Scala REPLs 时,起初一切正常,但是当我输入多行函数或出现错误时,消息会停止,就像管道中卡住了一样。REPL 和我的包装器之间的任何通信都会停止。由于我通过包装器启动了我启动的所有应用程序的 stdout 和 stderr 流,我不清楚在这种情况下该怎么做,为什么输出没有被截获?

更新:用户 om-nom-nom 提出了一条新信息,该信息表明 Scala 和 Clojure REPL 正在使用 jline 进行高级控制台交互处理。所以这提出了几个新问题:为什么使用 jline 与使用标准流不同?有没有办法以类似于普通流的方式重新路由 jline 流?像这样使用 jline 的最佳方式是什么?

0 投票
2 回答
1641 浏览

java - 通过 Eclipse 调试 Jline2 应用程序

我正在使用 Jline2 框架在 Java 中构建控制台应用程序。在 Windows 7 上从 Eclipse 启动应用程序时,shell 立即存在,并且不等待用户输入命令。

对可能出什么问题有任何想法吗?

0 投票
1 回答
278 浏览

java - 一旦 jLine 写超过一行到 shell,我们就不能回到原来的行

我在使用 jLine 时遇到了以下问题。我们打开命令提示符(linux 和 windows)并输入一个字母流,直到它“溢出”到下一行。例如:

啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊

然后我们尝试删除输入的文本,但是光标不会回到第一行,它会保留在第二行的开头。这是一个视觉问题而不是逻辑问题,因为通过打印出调试消息并按“enter”,我可以看到缓冲区包含所有删除后的字符串。

如果有人可以帮助我弄清楚为什么会发生这种情况以及如何解决这个问题,将不胜感激。

谢谢,乔纳森

0 投票
2 回答
879 浏览

apache-karaf - 如何在 karaf / jline 中使用条件运算符 shell:if

我正在尝试使用使用 jline 库的 apache karaf 命令行有条件地执行命令。

我在 shell:if 命令上找不到任何文档。

例如,在 linux shell 中这是有效的:

当我将 karaf 的语法更改为:

我得到错误:

我尝试了一堆不同的语法,但我无法弄清楚。

0 投票
2 回答
1573 浏览

java - JLine 库回显

我使用 JLine 库来处理控制台输入和输出。

我使用 JLine v2.6。回声不起作用。上面的代码有什么问题?有人可以帮忙吗?

厌倦了搜索 JLine 等其他库。是否有任何其他 Java 库来处理控制台输入?

0 投票
4 回答
835 浏览

java - 用 jline 预填充一行

使用 JLine(或 JLine2),是否可以发出对 a 的调用,readline并且ConsoleReader除了标准提示之外,缓冲区还可以预先填充我选择的字符串?

我试过做,例如:

这似乎确实写入了缓冲区,但该行仅显示提示。如果我按回车键,将按预期readLine返回。"Default"如果我清除屏幕,缓冲区将重新绘制并正确显示。

我的理解是,我应该reader.redrawLine()在调用readLine. 然而,最后一个是阻塞的,这使得它很难(并非不可能,但为此使用第二个线程肯定感觉不对)。

0 投票
1 回答
545 浏览

java - JLine 仅适用于 IDEA

当代码在想法中运行时,我使用 jline 没有问题。使用 bat 文件运行,编辑字符不会发送到终端。

我检查了 jline jar 文件,它包含 jansi 和 hawtjni 的 fusesource 代码。

0 投票
1 回答
513 浏览

java - 如何使用 jLine 实现干净的屏幕和配置键绑定

我想用 jline 开发一个 java cli..我从 Internet 获得不同的 Jline 版本,但我不知道它们之间的区别..

我的操作系统是 WINDOWS XP SP2。

Jline09.9和Jline1.0也不支持清屏。如何配置键绑定以支持清洁屏幕?

源代码 WindowsTerminal.java

在 jLine0.9.9 和 Jline1.0 中,清洁屏幕不起作用.. http://i.stack.imgur.com/2m71z.jpg

在 Jline2.x 中,它支持干净的屏幕,但是当我使用数组键 UP/DOWN/LEFT/RIGHT、INSERT、DELETE、END 时,控制台会出现乱码。

Jline 2.6 和 Jline2.9 中的错误代码和奇怪字符当键入数组键或 DELETE、HOME、INSERT 键时 http://i.stack.imgur.com/5A8d2.jpg

我不知道如何通过keybinds.properties 在Jline1.x 和Jline2.x 中配置keybind。以及如何配置 keybinds.properties ?如何使用它??

你能给一些建议或例子吗?

0 投票
2 回答
423 浏览

java - JLine,如何在 Windows 中获取完整的文件名

亲爱的所有 JLine 用户,

我最近正在开发一个使用 JLine 的控制台应用程序,以提供命令和文件名补全。

它与 FileNameCompleter 配合得很好,但是我无法正确获取完整的文件名。

我的代码如下:

在我的代码的最后一部分,我打印出我从控制台得到的行,例如,我收到了

输出是 myCommand testnewtest.txt

由于某种原因,反斜杠消失了,我从来没有得到正确的文件路径。当我在类 Unix 系统中进行测试时,这不是问题,因为正斜杠似乎没问题。

谁能帮助我获取完整文件名的正确方法?非常感谢。

矽。

0 投票
1 回答
1533 浏览

jline - 参考 JLine 示例

我一直在尝试编写一个可以作用于箭头键的 Java 控制台程序。我遇到了声称能够做到这一点的 JLine 库。

我已经尝试过几次使用 JLine 库来实现我的目标,但都没有成功。

ConsoleReader reader = new ConsoleReader(System.in, new PrintWriter(System.out)); 尽管使用了 ConsoleReader.readVirtualKey(),它仍然等待输入按键。

我也尝试过使用

但这也不起作用。它总是等待 Enter 键并且不显示我在按下 Enter 键之前按下的箭头键。

有人可以帮我解决这个问题吗?