From a44c3ebc3eacffde9dc0ec932aa74dc7faa95eb2 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 23 Oct 2026 15:16:44 +0200 Subject: keybinds: name the companion's code:49 bind Hyprland 0.56.2 reports a Lua `code:N` bind with key "" and keycode 0 in `hyprctl binds -j`, while the bind itself works, so the reminder printed "Win + " with nothing after it. Such a bind is now named by its description, with "?" for one not listed, so a new keycode bind shows up as a visible gap rather than a blank. Co-Authored-By: Claude Opus 5.5 --- keybinds/Binds.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'keybinds/Binds.js') diff --git a/keybinds/Binds.js b/keybinds/Binds.js index 1f809cf..604a53d 100644 --- a/keybinds/Binds.js +++ b/keybinds/Binds.js @@ -42,8 +42,16 @@ const NAMES = Object.assign(Object.create(null), { "XF86Search": "Fn+F11", }); +// Hyprland 0.56.2 reports a Lua `code:N` bind with key "" and keycode 0, so +// such a bind is named here by its description. +// ponytail: one entry per keycode bind; a new `code:` bind needs a line here. +const UNNAMED = Object.assign(Object.create(null), { + "Desktop: Companion": "\\", // code:49, left of 1 +}); + function keys(bind) { - return mods(bind.modmask).concat([NAMES[bind.key] ?? bind.key]).join(" + "); + const k = bind.key || UNNAMED[bind.description] || "?"; + return mods(bind.modmask).concat([NAMES[k] ?? k]).join(" + "); } // Where a bind sits on the macropad, keyed by the combo as keys() writes it, -- cgit v1.2.3