如何使用Java获取终端中当前插入符号的位置?
我已经研究了JLine、Lanterna和其他工具,但是我没有看到使用这些工具查找终端中当前插入符号位置的简单方法。我已经研究了许多转义码、tput等,但是,我正在寻找用Java获取插入符号所在的当前列和行的最简单方法。也许我在这些图书馆里找不到合适的电话 在终端中获取插入符号行和列的最简单方法是什么如何使用Java获取终端中当前插入符号的位置?,java,terminal,Java,Terminal,我已经研究了JLine、Lanterna和其他工具,但是我没有看到使用这些工具查找终端中当前插入符号位置的简单方法。我已经研究了许多转义码、tput等,但是,我正在寻找用Java获取插入符号所在的当前列和行的最简单方法。也许我在这些图书馆里找不到合适的电话 在终端中获取插入符号行和列的最简单方法是什么 我正在寻找一个纯文本库,以便可以重新编写缓冲区。我知道ansi转义码以及如何操纵它们来产生我想要的效果。我试图做的是在Inquirer.js for Node的基础上创建一个Java提示库。它有许
我正在寻找一个纯文本库,以便可以重新编写缓冲区。我知道ansi转义码以及如何操纵它们来产生我想要的效果。我试图做的是在Inquirer.js for Node的基础上创建一个Java提示库。它有许多从用户那里获取信息的简单方法(列表、问题、拆分列表等)。所有这些都是文本——所以所有这些都没有UI,所以没有swing。我不想要swing,我只想要一个像样的终端UI体验。Edit2 使用插入符号接口,您可以创建一个插入符号列表对象来查找插入符号位置 因此,您必须使用getDot()方法创建一个新的CaretListener来响应GUI 这可能有助于。。。不管怎样,用代码。 现在,这只适用于GUI/SwingComponents,我不确定这是否适用于终端应用程序,这正是您想要的,我假设您将使用命令行参数等使事情正常工作 我不认为您可以这样做,因为我认为终端实际上只是打印输出,但无论如何,我将继续检查一会儿 如果你能告诉我你想用插入符号做什么,这将有助于我的努力 希望这有帮助 如果没有,您可能需要查看更多的文本工具包,例如
- JCurses-
- 沙瓦-
[6n
应该返回类似[{Row};{Column}R
的输入,其中
取决于您使用的终端类型。可以找到bash风格的解决方案。