nix-configs/modules/desktop-environment/home/niri/binds.nix

90 lines
4.5 KiB
Nix

{pkgs, ...}: {
programs.niri.settings.binds = {
# spawn terminal
"Mod+Return".action.spawn = "kitty";
"Mod+Return".repeat = false;
"Mod+D".action.spawn = ["wofi" "-S" "drun" "--allow-images"];
"Mod+D".repeat = false;
"Mod+I".action.spawn = ["${pkgs.rofimoji}/bin/rofimoji" "--selector" "wofi" "-f" "alchemical_symbols" "anatolian_hieroglyphs" "emojis" "braille_patterns" "box_drawing" "chess_symbols" "emoticons" "geometric_shapes" "gothic" "greek_extended" "math" "mathematical_alphanumeric_symbols" "mathematical_operators" "miscellaneous_symbols" "miscellaneous_mathematical_symbols-a" "miscellaneous_mathematical_symbols-b" "miscellaneous_symbols_and_arrows" "miscellaneous_symbols_and_pictographs" "miscellaneous_technical" "modi" "modifier_tone_letters" "musical_symbols" "nerd_font" "number_forms" "shorthand_format_controls" "specials" "variation_selectors" "vertical_forms" "-a" "copy"];
"Mod+Shift+E".action.quit = [];
"Mod+Shift+Q".action.close-window = [];
"Mod+Shift+P".action.power-off-monitors = [];
"Mod+Shift+Ctrl+Slash".action.toggle-keyboard-shortcuts-inhibit = [];
"Mod+Shift+Ctrl+Slash".allow-inhibiting = false;
"Mod+Shift+Slash".action.show-hotkey-overlay = [];
# window/columns controls
"Mod+H".action.focus-column-left = [];
"Mod+J".action.focus-window-down = [];
"Mod+K".action.focus-window-up = [];
"Mod+L".action.focus-column-right = [];
"Mod+Ctrl+H".action.move-column-left = [];
"Mod+Ctrl+J".action.move-window-down = [];
"Mod+Ctrl+K".action.move-window-up = [];
"Mod+Ctrl+L".action.move-column-right = [];
"Mod+R".action.switch-preset-column-width = [];
"Mod+V".action.toggle-window-floating = [];
"Mod+Shift+V".action.switch-focus-between-floating-and-tiling = [];
# monitor controls
"Mod+Shift+H".action.focus-monitor-left = [];
"Mod+Shift+J".action.focus-monitor-down = [];
"Mod+Shift+K".action.focus-monitor-up = [];
"Mod+Shift+L".action.focus-monitor-right = [];
"Mod+Shift+Ctrl+H".action.move-column-to-monitor-left = [];
"Mod+Shift+Ctrl+J".action.move-column-to-monitor-down = [];
"Mod+Shift+Ctrl+K".action.move-column-to-monitor-up = [];
"Mod+Shift+Ctrl+L".action.move-column-to-monitor-right = [];
# workspace controls
"Mod+P".action.focus-workspace-up = [];
"Mod+N".action.focus-workspace-down = [];
"Mod+Ctrl+P".action.move-column-to-workspace-up = [];
"Mod+Ctrl+N".action.move-column-to-workspace-down = [];
"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+Ctrl+1".action.move-column-to-workspace = 1;
"Mod+Ctrl+2".action.move-column-to-workspace = 2;
"Mod+Ctrl+3".action.move-column-to-workspace = 3;
"Mod+Ctrl+4".action.move-column-to-workspace = 4;
"Mod+Ctrl+5".action.move-column-to-workspace = 5;
"Mod+Ctrl+6".action.move-column-to-workspace = 6;
"Mod+Ctrl+7".action.move-column-to-workspace = 7;
"Mod+Ctrl+8".action.move-column-to-workspace = 8;
"Mod+Ctrl+9".action.move-column-to-workspace = 9;
# column editing stuffs
"Mod+BracketLeft".action.consume-or-expel-window-left = [];
"Mod+BracketRight".action.consume-or-expel-window-right = [];
"Mod+F".action.maximize-column = [];
"Mod+Shift+F".action.expand-column-to-available-width = [];
"Mod+Ctrl+F".action.fullscreen-window = [];
"Mod+C".action.center-column = [];
"Mod+Minus".action.set-column-width = "-5%";
"Mod+Equal".action.set-column-width = "+5%";
"Mod+Shift+Minus".action.set-window-height = "-10%";
"Mod+Shift+Equal".action.set-window-height = "+10%";
"Mod+W".action.toggle-column-tabbed-display = [];
# media keys
"XF86AudioRaiseVolume".action.spawn = ["wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"];
"XF86AudioLowerVolume".action.spawn = ["wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"];
"XF86AudioMute".action.spawn = ["wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"];
"XF86AudioMicMute" .action.spawn = ["wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"];
"XF86AudioRaiseVolume".allow-when-locked = true;
"XF86AudioLowerVolume".allow-when-locked = true;
"XF86AudioMute".allow-when-locked = true;
"XF86AudioMicMute" .allow-when-locked = true;
};
}