From e89e97fbac60a463632efd5cbb662d9319cc7737 Mon Sep 17 00:00:00 2001 From: aristote Date: Fri, 16 Feb 2024 11:08:43 +0100 Subject: home: i3: switch output keybinding --- .../home-manager/personal/gui/x/i3/keybindings.nix | 100 +++++++++++---------- 1 file changed, 53 insertions(+), 47 deletions(-) diff --git a/modules/home-manager/personal/gui/x/i3/keybindings.nix b/modules/home-manager/personal/gui/x/i3/keybindings.nix index 26af10f..c15075f 100644 --- a/modules/home-manager/personal/gui/x/i3/keybindings.nix +++ b/modules/home-manager/personal/gui/x/i3/keybindings.nix @@ -1,6 +1,9 @@ -{ config, lib, pkgs, ... }: - -let +{ + config, + lib, + pkgs, + ... +}: let # i3 pretty-printing exec = script: ''exec "${script}";''; execRofiShow = modi: exec "${rofiShow} ${modi}"; @@ -23,53 +26,56 @@ in { modes = lib.mkOptionDefault { # launching apps launch = mkTempMode ({ - "e" = exec "emacsclient --create-frame"; - "b" = exec "$BROWSER"; - } // lib.optionalAttrs config.programs.rofi.enable { - "c" = execRofiShow "calc"; - "d" = execRofiShow "drun"; - "f" = execRofiShow "filebrowser"; - "m" = execRofiShow "emoji"; - "r" = execRofiShow "run"; - "t" = execRofiShow "top"; - "w" = execRofiShow "window"; - "Escape" = ""; - }); + "e" = exec "emacsclient --create-frame"; + "b" = exec "$BROWSER"; + } + // lib.optionalAttrs config.programs.rofi.enable { + "c" = execRofiShow "calc"; + "d" = execRofiShow "drun"; + "f" = execRofiShow "filebrowser"; + "m" = execRofiShow "emoji"; + "r" = execRofiShow "run"; + "t" = execRofiShow "top"; + "w" = execRofiShow "window"; + "Escape" = ""; + }); }; keybindings = lib.mkOptionDefault ({ - "${modifier}+space" = "mode launch"; - } // lib.optionalAttrs config.programs.rofi.enable { - "${modifier}+F1" = exec "${rofiPulseSelect} sink"; - "${modifier}+F4" = exec "${rofiPulseSelect} source"; - "${modifier}+Print" = exec rofiBluetooth; - "${modifier}+Delete" = - exec "${rofiShow} menu -modi menu:${rofiPowerMenu}"; - } // { + "${modifier}+space" = "mode launch"; + } + // lib.optionalAttrs config.programs.rofi.enable { + "${modifier}+F1" = exec "${rofiPulseSelect} sink"; + "${modifier}+F4" = exec "${rofiPulseSelect} source"; + "${modifier}+Print" = exec rofiBluetooth; + "${modifier}+Delete" = + exec "${rofiShow} menu -modi menu:${rofiPowerMenu}"; + "${modifier}+p" = "move workspace to output right"; + } + // { + # exiting + "${modifier}+Shift+e" = exec "i3-msg exit"; + "${modifier}+l" = exec config.personal.home.lockscreen; - # exiting - "${modifier}+Shift+e" = exec "i3-msg exit"; - "${modifier}+l" = exec config.personal.home.lockscreen; - - # media keys - "XF86MonBrightnessUp" = exec "${brightnessctl} set 5%+"; - "XF86MonBrightnessDown" = exec "${brightnessctl} set 5%-"; - "XF86AudioRaiseVolume" = - exec "${volumectl} set-sink-volume @DEFAULT_SINK@ +5%"; - "XF86AudioLowerVolume" = - exec "${volumectl} set-sink-volume @DEFAULT_SINK@ -5%"; - "XF86AudioMute" = "exec ${volumectl} set-sink-mute @DEFAULT_SINK@ toggle"; - "Shift+XF86AudioRaiseVolume" = - exec "${volumectl} set-source-volume @DEFAULT_SOURCE@ +5%"; - "Shift+XF86AudioLowerVolume" = - exec "${volumectl} set-source-volume @DEFAULT_SOURCE@ -5%"; - "XF86AudioMicMute" = - exec "${volumectl} set-source-mute @DEFAULT_SOURCE@ toggle"; - "XF86KbdBrightnessUp" = '' - exec {brightnessctlKbd} set \ - $(( $(${brightnessctlKbd} max) - $(${brightnessctlKbd} get) )) - ''; - "Print" = exec screenshot; - }); + # media keys + "XF86MonBrightnessUp" = exec "${brightnessctl} set 5%+"; + "XF86MonBrightnessDown" = exec "${brightnessctl} set 5%-"; + "XF86AudioRaiseVolume" = + exec "${volumectl} set-sink-volume @DEFAULT_SINK@ +5%"; + "XF86AudioLowerVolume" = + exec "${volumectl} set-sink-volume @DEFAULT_SINK@ -5%"; + "XF86AudioMute" = "exec ${volumectl} set-sink-mute @DEFAULT_SINK@ toggle"; + "Shift+XF86AudioRaiseVolume" = + exec "${volumectl} set-source-volume @DEFAULT_SOURCE@ +5%"; + "Shift+XF86AudioLowerVolume" = + exec "${volumectl} set-source-volume @DEFAULT_SOURCE@ -5%"; + "XF86AudioMicMute" = + exec "${volumectl} set-source-mute @DEFAULT_SOURCE@ toggle"; + "XF86KbdBrightnessUp" = '' + exec {brightnessctlKbd} set \ + $(( $(${brightnessctlKbd} max) - $(${brightnessctlKbd} get) )) + ''; + "Print" = exec screenshot; + }); }; } -- cgit v1.2.3