Tag: 箭头键

如何让Ruby curses正确响应箭头键?

TL; DR 如何让Ruby curses正确响应箭头键? KEY_UP常量似乎与我的输入不匹配。 环境与问题描述 我正在使用curses 1.0.1 gem运行Ruby 2.1.2。 我正在尝试使用curses启用箭头键导航。 我已经启用Curses#getch来获取单个密钥,而无需通过调用Curses#cbreak来等待回车,这对于k字符工作正常。 但是,我真的想启用箭头键导航,而不仅仅是HJKL用于移动。 目前,我的程序中的向上箭头打印27,这似乎是我的键盘为up-arow键提供的正确的序数值 : “^[[A”.ord #=> 27 哪个应该与Curses KEY_UP常量匹配。 它不是,因此通过else语句来显示序数值。 当ruby程序退出时,向上箭头键也会在命令提示符下将[ A作为两个单独的字符留下,这可能表示Curses#getch没有正确捕获按键。 我的Ruby代码 require ‘curses’ include Curses begin init_screen cbreak noecho keypad = true addstr ‘Check for up arrow or letter k.’ refresh ch = getch addch ?\n case ch when KEY_UP addstr “up […]

如何在Ruby中捕获终端箭头键?

如何在终端中捕获箭头键,而无需用户在箭头键后按“Enter”键?