summaryrefslogtreecommitdiff
path: root/hm/env/niri/binds.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hm/env/niri/binds.nix')
-rw-r--r--hm/env/niri/binds.nix58
1 files changed, 38 insertions, 20 deletions
diff --git a/hm/env/niri/binds.nix b/hm/env/niri/binds.nix
index 0dc4ea5..a84d5f5 100644
--- a/hm/env/niri/binds.nix
+++ b/hm/env/niri/binds.nix
@@ -22,9 +22,6 @@ in
XF86AudioMute.action =
spawn "sh" "-c"
"wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle";
- XF86Tools.action =
- spawn "sh" "-c"
- "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle";
# Media Control
XF86AudioPlay.action = playerctl "play-pause";
@@ -36,26 +33,46 @@ in
XF86MonBrightnessDown.action = spawn "light" "-U" "10";
# --- Applications ---
- "Mod+Return".action = spawn "foot";
+ "Mod+Return".action = spawn "footclient";
"Mod+D".action = spawn "fuzzel";
- "Mod+C".action = spawn "qalculate-gtk";
"Mod+Shift+D".action = spawn "sh" "-c" "cliphist list | fuzzel --dmenu | cliphist decode | wl-copy";
"Super+Return".action = spawn "sh" "-c" "OBS_WEBSOCKET_URL=$(cat ${obsPass}) obs-cmd replay save";
+ "Super+C".action = spawn "qalculate-gtk";
+ "Super+D".action = spawn "equibop";
+ "Super+B".action = spawn "librewolf";
+ "Super+S".action = spawn "spotify";
+ "Super+E".action = spawn "thunar";
+
# --- Navigation: Columns & Workspaces ---
- "Mod+H".action = focus-column-left;
- "Mod+L".action = focus-column-right;
- "Mod+J".action = focus-workspace-down;
- "Mod+K".action = focus-workspace-up;
+ "Mod+H".action = focus-column-or-monitor-left;
+ "Mod+L".action = focus-column-or-monitor-right;
+ "Mod+J".action = focus-window-or-workspace-down;
+ "Mod+K".action = focus-window-or-workspace-up;
+
+ "Super+H".action = focus-monitor-left;
+ "Super+L".action = focus-monitor-right;
+ "Super+Shift+H".action = move-column-left-or-to-monitor-left;
+ "Super+Shift+L".action = move-column-right-or-to-monitor-right;
"Mod+WheelScrollDown".action = focus-column-right;
"Mod+WheelScrollUp".action = focus-column-left;
- "Super+WheelScrollDown".action = focus-workspace-down;
- "Super+WheelScrollUp".action = focus-workspace-up;
+ "Super+WheelScrollDown".action = focus-window-or-workspace-down;
+ "Super+WheelScrollUp".action = focus-window-or-workspace-up;
- # --- Navigation: Monitors ---
- "Super+H".action = focus-monitor-left;
- "Super+L".action = focus-monitor-right;
+ "Mod+Tab" = {
+ action =
+ spawn "sh" "-c"
+ "niri msg action focus-column-right; niri msg action move-column-to-last; niri msg action focus-window-previous";
+ repeat = false;
+ };
+
+ XF86Tools = {
+ action =
+ spawn "sh" "-c"
+ "niri msg action set-dynamic-cast-window --id $(niri msg --json pick-window | ${pkgs.jq}/bin/jq .id)";
+ repeat = false;
+ };
# --- Window Management ---
"Mod+Shift+Q".action = close-window;
@@ -66,15 +83,13 @@ in
};
# Moving Windows/Columns
- "Mod+Shift+H".action = move-column-left;
- "Mod+Shift+L".action = move-column-right;
+ "Mod+Shift+H".action = move-column-left-or-to-monitor-left;
+ "Mod+Shift+L".action = move-column-right-or-to-monitor-right;
"Mod+Shift+J".action = move-window-down-or-to-workspace-down;
"Mod+Shift+K".action = move-window-up-or-to-workspace-up;
- "Super+Shift+H".action = move-column-to-monitor-left;
- "Super+Shift+L".action = move-column-to-monitor-right;
- "Mod+Shift+WheelScrollDown".action = move-column-right;
"Mod+Shift+WheelScrollUp".action = move-column-left;
+ "Mod+Shift+WheelScrollDown".action = move-column-right;
"Super+Shift+WheelScrollDown".action = move-window-down-or-to-workspace-down;
"Super+Shift+WheelScrollUp".action = move-window-up-or-to-workspace-up;
@@ -86,13 +101,13 @@ in
XF86Launch5.action = consume-or-expel-window-right;
XF86Launch6.action = consume-or-expel-window-left;
+ XF86Launch7.action = switch-preset-column-width;
# --- Layout & Sizing ---
"Mod+F".action = maximize-column;
"Mod+Shift+F".action = fullscreen-window;
"Mod+W".action = toggle-column-tabbed-display;
"Mod+R".action = switch-preset-column-width;
- XF86Launch7.action = switch-preset-column-width;
"Mod+Shift+R".action = reset-window-height;
"Mod+Minus".action = set-column-width "-10%";
@@ -124,6 +139,9 @@ in
'';
repeat = false;
};
+
+ "Mod+grave".action.focus-workspace = 0;
+ "Mod+Shift+grave".action.move-column-to-workspace = 0;
}
// (builtins.listToAttrs (
builtins.concatMap (