Клавиша меню как липкая модкей для Awesome WM - PullRequest
0 голосов
/ 28 мая 2019

Я подумываю о переходе на Awesome WM (по нескольким причинам, вероятно, наиболее важна возможность взлома - я большой пользователь Emacs; -)).

Раньше я использовал плиточный WM (StumpWM) дляНекоторое время назад, несколько лет назад, была замечательная возможность связать только один ключ в качестве «префикса».Я установил ее как (в противном случае бесполезную для меня) клавишу «меню», так что по сути все привязки WM были «нажми меню, отпусти ее, нажми что-нибудь еще».

Из документации / учебных пособий, которые я вижучто у Awesome немного другой подход - привязывать свои функции к «modkey + что-то».

Можно ли использовать «menu» как «липкий modkey», как я привык?Вернее, как мне это сделать?

1 Ответ

0 голосов
/ 29 мая 2019

Вы можете создать «нормальную» привязку клавиш для клавиши «Меню», запустить там клавиатуру и использовать ее для получения «чего-то», что следует.Это будет означать, что вам придется заново изобретать некоторые колеса, потому что код в AwesomeWM не будет управлять привязками клавиш для вас, но он должен быть работоспособным.

Быстрый пример, который мало что дает для начала:

diff --git a/awesomerc.lua b/awesomerc.lua
index 5d2bd2c10..7973b210a 100644
--- a/awesomerc.lua
+++ b/awesomerc.lua
@@ -242,6 +243,12 @@ root.buttons(gears.table.join(
 -- {{{ Key bindings
 -- @DOC_GLOBAL_KEYBINDINGS@
 globalkeys = gears.table.join(
+    awful.key({}, "Menu", nil, function()
+        keygrabber.run(function(mods, key, action)
+            print("You did:", gears.debug.dump_return(mods), key, action)
+            keygrabber.stop()
+        end)
+    end),
     awful.key({ modkey,           }, "s",      hotkeys_popup.show_help,
               {description="show help", group="awesome"}),
     awful.key({ modkey,           }, "Left",   awful.tag.viewprev,

Для этого нужно напечатать первое «событие клавиатуры» после отпускания клавиши меню.Например, это может быть «была отпущена клавиша, которая была нажата до того, как была отпущена клавиша меню», но вам, скорее всего, нужно заботиться только о таких вещах, как «была нажата» ...

...