Ruby Curses: كيفية الحصول على مفاتيح CTRL/META مع
سؤال
أنا أحاول Curses.getchr
, ، لكن مفاتيح مثل Ctrl+s لم يتم القبض عليهم ، هل هناك أي lib من شأنه أن يسمح لي بالتقاطها وأفضل شيء من كل شيء بديه
FooBar.bind('Ctrl+s'){ raise "dont save!" }
المحلول
Ctrl+s عادة ما يتم إمساكها من قبل المحطة ، لذلك عليك أن تضع Curses
في الوضع الخام لالتقاط هذا المفتاح. هنا مثال:
#!/usr/bin/ruby
require 'curses'
Curses.raw # intercept everything
Curses.noecho
loop do
case Curses.getch
when ?q then break
when ?b then Curses.addch ?b
when ?\C-s then Curses.addstr "^s" # Ctrl+S
end
end
لا تنتمي إلى StackOverflow