INNER CODE UNIT · Python
_apply_custom_keybindings
Kohei-Wada/taskdog · packages/taskdog-ui/src/taskdog/tui/app.py:452
def _apply_custom_keybindings(self) -> None:
"""Override default keys from ``cli.toml [keybindings]`` (id -> key)."""
valid_ids = {b.id for b in self.BINDINGS if isinstance(b, Binding) and b.id}
keymap, unknown = resolve_keymap(self._cli_config.keybindings, valid_ids)
if unknown:
self.notify(
f"Unknown keybinding id(s) in cli.toml: {', '.join(sorted(unknown))}",
severity="warning",
)
if keymap:
self.set_keymap(keymap)
def handle_bindings_clash(self, clashed_bindings: set[Binding], node: Any) -> None:
"""Warn when custom keybindings collide with existing ones."""
keys = sorted({b.key for b in clashed_bindings})
self.notify(
f"Keybinding clash on: {', '.join(keys)}. Check cli.toml [keybindings].",
severity="warning",