问题标签 [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.
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。
key - Paramiko VT100 发送功能键不起作用
使用 Paramiko 导航界面一切正常,直到我尝试使用 [F4] 键或其他特殊功能键。
我尝试发送以下(F4)键但没有成功
我还尝试在键盘上发送右箭头键 (6) 常规箭头不适用于我需要完成的操作。我试图跟随键。
我参考过:
https://invisible-island.net/xterm/ctlseqs/ctlseqs.pdf