Yalnızca Sağ Kontrol tuşu basılı tutulduğunda ses kaydeden bir program çalıştırmak istiyorum. Klavye serbest bırakıldığında, sonuç diske, örn yy-mm-dd hh:mm.ogg
. Bunu nasıl yapabilirim?
$ xmodmap -pke |grep -e Record
keycode 175 = XF86AudioRecord NoSymbol XF86AudioRecord
Sağ Kontrol, tuş aşağı ve tuş yukarı olayları için xev tarafından aşağıdaki gibi yakalanır:
KeyPress event, serial 43, synthetic NO, window 0x1800001,
root 0x7f, subw 0x0, time 27689430, (-145,169), root:(476,366),
state 0x10, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 46, synthetic NO, window 0x1800001,
root 0x7f, subw 0x0, time 27689540, (-145,169), root:(476,366),
state 0x14, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
ClientMessage event, serial 46, synthetic YES, window 0x1800001,
message_type 0x112 (WM_PROTOCOLS), format 32, message 0x110 (WM_DELETE_WINDOW)
FWIW, şu anki masaüstüm Xfce
. Takip ettiğim bir ipucu: http://www.thinkwiki.org/wiki/How_to_get_special_keys_to_work#bypassing_Xorg
halevt
Çalışmayı başarabilirseniz , sadece tuşa basarak kaydetmeye başlamanız ve tuşa bastığınızda (SIGKILL
elbette değil) öldürmeniz gerekir .