То есть, как заставить нажатия клавиш отправляться прямо в мою программу, не дожидаясь, пока пользователь нажмет Enter. По сути, я пытаюсь получить что-то вроде вызова curses cbreak()
. (Но я не могу использовать проклятия из-за пары ошибок/неправильных функций, которые я не смог обойти.) Это похоже на то, что должно быть просто тривиальной escape-последовательностью, но я не смог ничего найти.
Как отключить буферизацию строки ввода в xterm из программы?
Ответы (2)
Поиск termios
и функция tcsetattr
.
person
R.. GitHub STOP HELPING ICE
schedule
22.12.2010
В частности, в каноническом режиме есть буферизация строк и редактирование. OP может искать это и / или другие флаги, которые нужно отключить между приготовленным и сырым режимом.
- person ephemient; 22.12.2010
‹headdesk› Спасибо (До сих пор не могу понять, почему это не побег.)
- person David X; 22.12.2010
Буферизация не происходит в терминале. Это происходит в драйвере tty ядра.
- person R.. GitHub STOP HELPING ICE; 22.12.2010
... хреновы буферы потоков.
- person David X; 22.12.2010
Разве это не называется "сырой режим"? Если это так, это может вам помочь.
person
Noufal Ibrahim
schedule
22.12.2010