Подтвердить что ты не робот

Есть ли способ получить больше, чем Meta и Ctrl в Windows? Долгое время пользователю Emacs нужен Hyper/Super

Я использовал Emacs в течение многих лет в Linux, и у меня есть много личных полезных привязок, которые я положил под Hyper и Super. В настоящее время я использую Emacs в Windows, и я пропускаю эти дополнительные привязки клавиш.

Есть ли способ в Windows получить ключи-модификаторы, отличные от Ctrl и Meta?

4b9b3361

Ответ 1

В указаны следующие параметры:

; setting the PC keyboard various keys to Super or Hyper
(setq w32-pass-lwindow-to-system nil
      w32-pass-rwindow-to-system nil
      w32-pass-apps-to-system nil
      w32-lwindow-modifier 'super ;; Left Windows key
      w32-rwindow-modifier 'super ;; Right Windows key
      w32-apps-modifier 'hyper) ;; Menu key

Обновление: так, я действительно пробовал этот код в моей собственной установке Win32 emacs. Ло, это работает! неудобное демо:

(defun super-test ()
  (interactive)
  (message "Super"))

(defun hyper-test ()
  (interactive)
  (message "Hyper"))

(global-set-key [(super h)] 'super-test)
(global-set-key [(hyper h)] 'hyper-test)

Если я сделал что-то еще напуганное, они работают изначально; Я запускаю GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600) 2008-08-19 на LENNART-69DE564 (исправлено)

Ответ 2

Это может быть сложно, потому что Super (и, я полагаю, Hyper) перехватываются оболочкой Windows (explorer.exe) до того, как они когда-либо достигнут вашего приложения.