问题标签 [vt100]

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 投票
2 回答
113 浏览

c++ - 一种将 `\e` 与 C++ 中的 `\e[A` 等转义键区分开来的方法

我正在用 C++ 编写 readline 替换,我想以原始模式处理终端输入,包括特殊/转义键,如 "up arrow" \e[A。但是,我还希望能够区分单次按下 Escape 键\e,然后按下[和按下A与按下向上箭头。

我认为这两种情况之间的主要区别在于,当按下向上箭头时,输入字符会在不到一毫秒的时间内输入,所以我想我可以这样做:

但是,这个输出并不Got string: "\033[A"像我希望的那样;相反,它做Got string了三遍,就像它只是一个简单的字符循环一样。改变它休眠的微秒数似乎不会影响任何事情。

有没有办法在 C++ 中轻松实现这种东西?它可以移植到大多数终端吗?我不在乎支持Windows。答案不必使用<iostream>;只要能完成工作,它就可以使用 C 风格的终端 IO。

0 投票
0 回答
30 浏览

key - Paramiko VT100 发送功能键不起作用

使用 Paramiko 导航界面一切正常,直到我尝试使用 [F4] 键或其他特殊功能键。

我尝试发送以下(F4)键但没有成功

我还尝试在键盘上发送右箭头键 (6) 常规箭头不适用于我需要完成的操作。我试图跟随键。

我参考过:

https://invisible-island.net/xterm/ctlseqs/ctlseqs.pdf

https://invisible-island.net/xterm/xterm-function-keys.html

https://espterm.github.io/docs/VT100%20escape%20codes.html