mirror of
https://github.com/elwrcl/copnix.git
synced 2026-10-31 06:18:03 +03:00
169 lines
5.8 KiB
Nix
169 lines
5.8 KiB
Nix
{ ... }:
|
|
{
|
|
flake.homeModules.desktop-niri-keybinds =
|
|
{ ... }:
|
|
{
|
|
programs.niri.settings = {
|
|
binds = {
|
|
# --- Workspace Navigation ---
|
|
"Ctrl+Mod+Right".action.focus-column-right = [ ];
|
|
"Ctrl+Mod+Left".action.focus-column-left = [ ];
|
|
"Ctrl+Mod+Down".action.focus-workspace-down = [ ];
|
|
"Ctrl+Mod+Up".action.focus-workspace-up = [ ];
|
|
"Ctrl+Mod+Shift+Right".action.move-column-right = [ ];
|
|
"Ctrl+Mod+Shift+Left".action.move-column-left = [ ];
|
|
"Ctrl+Mod+Shift+Down".action.move-window-to-workspace-down = [ ];
|
|
"Ctrl+Mod+Shift+Up".action.move-window-to-workspace-up = [ ];
|
|
|
|
"Ctrl+Mod+WheelScrollUp" = {
|
|
"cooldown-ms" = 150;
|
|
action.focus-column-right = [ ];
|
|
};
|
|
"Ctrl+Mod+WheelScrollDown" = {
|
|
"cooldown-ms" = 150;
|
|
action.focus-column-left = [ ];
|
|
};
|
|
|
|
# --- Interface ---
|
|
"Mod+Space".action.spawn-sh = "noctalia msg panel-toggle launcher";
|
|
"Mod+P".action.spawn-sh = "noctalia msg panel-toggle control-center";
|
|
"Mod+Tab".action.toggle-overview = [ ];
|
|
"Ctrl+Alt+Delete".action.spawn-sh = "noctalia msg panel-toggle session";
|
|
|
|
# --- Launchers ---
|
|
"Mod+Return".action.spawn = [ "ghostty" ];
|
|
"Mod+W".action.spawn = [ "zen-beta" ];
|
|
"Mod+E".action.spawn = [ "dolphin" ];
|
|
"Mod+Z".action.spawn = [ "code" ];
|
|
"Mod+Alt+V".action.spawn = [ "pavucontrol" ];
|
|
"Mod+Shift+V".action.spawn-sh = "noctalia msg panel-toggle clipboard";
|
|
"Mod+Shift+L".action.spawn-sh = "noctalia msg lock";
|
|
"Mod+Shift+S".action.spawn-sh = "noctalia msg screenshot-region";
|
|
"Ctrl+Shift+Escape".action.spawn = [
|
|
"ghostty"
|
|
"-e"
|
|
"sudo"
|
|
"btop"
|
|
];
|
|
|
|
# --- Window Management ---
|
|
"Mod+Q".action.close-window = [ ];
|
|
"Mod+Alt+Space".action.toggle-window-floating = [ ];
|
|
"Mod+F".action.fullscreen-window = [ ];
|
|
"Mod+D".action.maximize-column = [ ];
|
|
|
|
# --- Focus ---
|
|
"Mod+Left".action.focus-column-left = [ ];
|
|
"Mod+Right".action.focus-column-right = [ ];
|
|
"Mod+Up".action.focus-window-up = [ ];
|
|
"Mod+Down".action.focus-window-down = [ ];
|
|
|
|
# --- Move Windows ---
|
|
"Mod+Shift+Left".action.move-column-left = [ ];
|
|
"Mod+Shift+Right".action.move-column-right = [ ];
|
|
"Mod+Shift+Up".action.move-window-up = [ ];
|
|
"Mod+Shift+Down".action.move-window-down = [ ];
|
|
|
|
# --- Workspaces by Number ---
|
|
"Mod+1".action.focus-workspace = 1;
|
|
"Mod+2".action.focus-workspace = 2;
|
|
"Mod+3".action.focus-workspace = 3;
|
|
"Mod+4".action.focus-workspace = 4;
|
|
"Mod+5".action.focus-workspace = 5;
|
|
"Mod+6".action.focus-workspace = 6;
|
|
"Mod+7".action.focus-workspace = 7;
|
|
"Mod+8".action.focus-workspace = 8;
|
|
"Mod+9".action.focus-workspace = 9;
|
|
"Mod+0".action.focus-workspace = 10;
|
|
|
|
"Mod+Shift+1".action.move-window-to-workspace = 1;
|
|
"Mod+Shift+2".action.move-window-to-workspace = 2;
|
|
"Mod+Shift+3".action.move-window-to-workspace = 3;
|
|
"Mod+Shift+4".action.move-window-to-workspace = 4;
|
|
"Mod+Shift+5".action.move-window-to-workspace = 5;
|
|
"Mod+Shift+6".action.move-window-to-workspace = 6;
|
|
"Mod+Shift+7".action.move-window-to-workspace = 7;
|
|
"Mod+Shift+8".action.move-window-to-workspace = 8;
|
|
"Mod+Shift+9".action.move-window-to-workspace = 9;
|
|
"Mod+Shift+0".action.move-window-to-workspace = 10;
|
|
|
|
# --- Mouse Workspace Scroll ---
|
|
"Mod+WheelScrollDown" = {
|
|
"cooldown-ms" = 150;
|
|
action.focus-workspace-down = [ ];
|
|
};
|
|
"Mod+WheelScrollUp" = {
|
|
"cooldown-ms" = 150;
|
|
action.focus-workspace-up = [ ];
|
|
};
|
|
|
|
# --- Media & Hardware Keys ---
|
|
"Mod+Shift+N".action.spawn = [
|
|
"playerctl"
|
|
"next"
|
|
];
|
|
"Mod+Shift+B".action.spawn = [
|
|
"playerctl"
|
|
"previous"
|
|
];
|
|
"Mod+Shift+P".action.spawn = [
|
|
"playerctl"
|
|
"play-pause"
|
|
];
|
|
|
|
"XF86AudioRaiseVolume" = {
|
|
"allow-when-locked" = true;
|
|
action.spawn-sh = "noctalia msg volume-up";
|
|
};
|
|
"XF86AudioLowerVolume" = {
|
|
"allow-when-locked" = true;
|
|
action.spawn-sh = "noctalia msg volume-down";
|
|
};
|
|
"XF86AudioMute" = {
|
|
"allow-when-locked" = true;
|
|
action.spawn-sh = "noctalia msg volume-mute";
|
|
};
|
|
"XF86AudioMicMute" = {
|
|
"allow-when-locked" = true;
|
|
action.spawn = [
|
|
"wpctl"
|
|
"set-mute"
|
|
"@DEFAULT_SOURCE@"
|
|
"toggle"
|
|
];
|
|
};
|
|
"XF86MonBrightnessUp".action.spawn-sh = "noctalia msg brightness-up";
|
|
"XF86MonBrightnessDown".action.spawn-sh = "noctalia msg brightness-down";
|
|
"XF86AudioNext" = {
|
|
"allow-when-locked" = true;
|
|
action.spawn = [
|
|
"playerctl"
|
|
"next"
|
|
];
|
|
};
|
|
"XF86AudioPrev" = {
|
|
"allow-when-locked" = true;
|
|
action.spawn = [
|
|
"playerctl"
|
|
"previous"
|
|
];
|
|
};
|
|
"XF86AudioPlay" = {
|
|
"allow-when-locked" = true;
|
|
action.spawn = [
|
|
"playerctl"
|
|
"play-pause"
|
|
];
|
|
};
|
|
"XF86AudioPause" = {
|
|
"allow-when-locked" = true;
|
|
action.spawn = [
|
|
"playerctl"
|
|
"play-pause"
|
|
];
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|