MacOS 中方向键的意外输出
Unexpected output from directional keypress in MacOS
我正在使用 MacOS 10.14.3 和 Python 3.7 curses 模块来打印按向上或向下方向键时返回的值:
import curses
def main(stdscr):
win = curses.newwin(24, 80, 0, 0)
while True:
ch = win.getch()
win.addstr(str(ch) + '\n')
curses.wrapper(main)
当我向上按时,打印出:
27
91
65
当我按下时,它打印:
27
91
66
从文档中,getch should 分别返回 258 (curses.KEY_UP) 或 259 (curses.KEY_DOWN)。知道是什么导致了这种行为吗?我的终端配置错误吗?
使用keypad
函数,例如
win.keypad(1);
循环之前(以及 newwin
之后)。
我正在使用 MacOS 10.14.3 和 Python 3.7 curses 模块来打印按向上或向下方向键时返回的值:
import curses
def main(stdscr):
win = curses.newwin(24, 80, 0, 0)
while True:
ch = win.getch()
win.addstr(str(ch) + '\n')
curses.wrapper(main)
当我向上按时,打印出:
27
91
65
当我按下时,它打印:
27
91
66
从文档中,getch should 分别返回 258 (curses.KEY_UP) 或 259 (curses.KEY_DOWN)。知道是什么导致了这种行为吗?我的终端配置错误吗?
使用keypad
函数,例如
win.keypad(1);
循环之前(以及 newwin
之后)。