## █▄▀ █▀▀ █▄█ █▄▄ █ █▄░█ █▀▄ █ █▄░█ █▀▀ █▀ ## █░█ ██▄ ░█░ █▄█ █ █░▀█ █▄▀ █ █░▀█ █▄█ ▄█ # see https://wiki.hyprland.org/configuring/keywords/ for more # example binds, see https://wiki.hyprland.org/configuring/binds/ for more # Grouping of binds for easier management # $d=[Group Name|Subgroup Name1|Subgroup Name2|...] # '$d' is a variable that is used to group binds together (or use another variable) # This is only for organization purposes and is not a defined hyprland variable # What we did here is to modify the Description of the binds to include the group name # The $d will be parsed as a separate key to be use for a GUI or something pretty # [Main|Subgroup1|Subgroup2|...] # Main - The main groupname # Subgroup1.. - The subgroup names can be use to avoid repeating the same description #*  Variables  # Default if commented out # $mainMod = Super # super / meta / windows key # Assign apps # $TERMINAL = kitty # $EDITOR = code # $EXPLORER = dolphin # $BROWSER = firefox $wm=Window Management $d=[$wm] bindd = $mainMod, Q, $d close focused window, exec, $scrPath/dontkillsteam.sh bindd = Alt, F4, $d close focused window, exec, $scrPath/dontkillsteam.sh bindd = $mainMod, Delete, $d kill hyprland session, exit bindd = $mainMod, W, $d toggle float, togglefloating, # bindd = $mainMod Shift, G, $d toggle group, togglegroup bindd = Shift, F11, $d toggle fullscreen, fullscreen bindd = Alt, Return, $d toggle fullscreen, fullscreen bindd = $mainMod, L, $d lock screen, exec, lockscreen.sh bindd = $mainMod Shift, F, $d toggle pin on focused window, exec, $scrPath/windowpin.sh bindd = Control Alt, Delete, $d logout menu, exec, $scrPath/logoutlaunch.sh bindd = Control Alt, W, $d toggle waybar and reload config, exec, killall waybar || waybar # bindd = Alt_R, Control_R, W, $d toggle waybar and reload config, exec, killall waybar || (env reload_flag=1 $scrPath/wbarconfgen.sh) # was throwing error # bindd = ALT_R, Control_R,toggle waybar, exec, killall waybar || waybar # toggle waybar without reloading, this is faster $d=[$wm|Group Navigation] bindd = $mainMod Control, H, $d change active group backwards , changegroupactive, b bindd = $mainMod Control, L, $d change active group forwards , changegroupactive, f $d=[$wm|Change focus] bindd = $mainMod, Left, $d focus left, movefocus, l bindd = $mainMod, Right, $d focus right , movefocus, r bindd = $mainMod, Up, $d focus up , movefocus, u bindd = $mainMod, Down , $d focus down, movefocus, d bindd = $mainMod Control, Left, $d focus left, movefocus, l bindd = $mainMod Control, Right, $d focus right , movefocus, r bindd = $mainMod Control, Up, $d focus up , movefocus, u bindd = $mainMod Control, Down, $d focus down, movefocus, d bindd = $mainMod Control, h, $d focus left, movefocus, l bindd = $mainMod Control, l, $d focus right , movefocus, r bindd = $mainMod Control, k, $d focus up , movefocus, u bindd = $mainMod Control, j , $d focus down, movefocus, d bindd = Alt Control, Left, $d focus left, movefocus, l bindd = Alt Control, Right, $d focus right , movefocus, r bindd = Alt Control, Up, $d focus up , movefocus, u bindd = Alt Control, Down, $d focus down, movefocus, d bindd = Alt Control, h, $d focus left, movefocus, l bindd = Alt Control, l, $d focus right , movefocus, r bindd = Alt Control, k, $d focus up , movefocus, u bindd = Alt Control, j , $d focus down, movefocus, d bindd = Alt, Tab, $d focus , movefocus, d $d=[$wm|Resize Active Window] # Resize windows bindde = $mainMod Shift, Right, $d resize window right , resizeactive, 30 0 bindde = $mainMod Shift, Left, $d resize window left, resizeactive, -30 0 bindde = $mainMod Shift, Up, $d resize window up, resizeactive, 0 -30 bindde = $mainMod Shift, Down, $d resize window down, resizeactive, 0 30 bindde = $mainMod Shift, l, $d resize window right , resizeactive, 30 0 bindde = $mainMod Shift, h, $d resize window left, resizeactive, -30 0 bindde = $mainMod Shift, k, $d resize window up, resizeactive, 0 -30 bindde = $mainMod Shift, j, $d resize window down, resizeactive, 0 30 # Move active window around current workspace with mainMod + Shift + Control [←→↑↓] $d=[$wm|Move active window across workspace] $moveactivewindow=grep -q "true" <<< $(hyprctl activewindow -j | jq -r .floating) && hyprctl dispatch moveactive bindde = $mainMod Alt, left, Move activewindow to the left, exec, $moveactivewindow -30 0 || hyprctl dispatch movewindow l bindde = $mainMod Alt, right, Move activewindow to the right, exec, $moveactivewindow 30 0 || hyprctl dispatch movewindow r bindde = $mainMod Alt, up, Move activewindow up, exec, $moveactivewindow 0 -30 || hyprctl dispatch movewindow u bindde = $mainMod Alt, down, Move activewindow down, exec, $moveactivewindow 0 30 || hyprctl dispatch movewindow d bindde = $mainMod Alt, h, Move activewindow to the left, exec, $moveactivewindow -30 0 || hyprctl dispatch movewindow l bindde = $mainMod Alt, l, Move activewindow to the right, exec, $moveactivewindow 30 0 || hyprctl dispatch movewindow r bindde = $mainMod Alt, k, Move activewindow up, exec, $moveactivewindow 0 -30 || hyprctl dispatch movewindow u bindde = $mainMod Alt, j, Move activewindow down, exec, $moveactivewindow 0 30 || hyprctl dispatch movewindow d # Move/Resize focused window $d=[$wm|Move & Resize with mouse] binddm = $mainMod, mouse:272, $d hold to move window, movewindow binddm = $mainMod, mouse:273, $d hold to resize window, resizewindow binddm = $mainMod, Z, $d hold to move window , movewindow binddm = $mainMod, X, $d hold to resize window, resizewindow # Toggle focused window split $d=[$wm] bindd = $mainMod, J, $d toggle split, togglesplit $l=Launcher $d=[$l|Apps] bindd = $mainMod, T, $d terminal emulator , exec, $TERMINAL bindd = Control Alt, T, $d terminal emulator , exec, $TERMINAL # bindd = Control Shift, Alt, T, $d terminal emulator , exec, tilix # launch tilix terminal emulator - using for ssh bindd = $mainMod Control, T, $d terminal emulator, exec, tilix # launch tilix terminal emulator bindd = $mainMod, E, $d file explorer , exec, $EXPLORER bindd = $mainMod, C, $d text editor , exec, $EDITOR bindd = $mainMod, B, $d web browser , exec, $BROWSER bindd = $mainMod Shift, B, $d web browser , exec, librewolf bindd = Control Shift, Escape, $d system monitor , exec, $scrPath/sysmonlaunch.sh bindd = $mainMod, F, $d web browser , exec, freetube bindd = $mainMod, K, $d password manager , exec, keepassxc # launch password manager bindd = $mainMod, G, $d messanger, exec, gajim # launch messanger # bindd = $mainMod, M, exec, $notes # launch notes app # bindd = Ctrl+Shift, Escape, exec, $scrPath/sysmonlaunch.sh # launch system monitor (htop/btop or fallback to top) $d=[$l|Rofi menus] $rofi-launch=$scrPath/rofilaunch.sh bindd = $mainMod, A, $d application finder , exec, pkill -x rofi || $rofi-launch d bindd = $mainMod, TAB, $d window switcher , exec, pkill -x rofi || $rofi-launch w bindd = $mainMod Shift, E, $d file finder , exec, pkill -x rofi || $rofi-launch f bindd = $mainMod, slash, $d keybindings hint, exec, pkill -x rofi || $scrPath/keybinds_hint.sh c # launch keybinds hint bindd = $mainMod, comma, $d emoji picker , exec, pkill -x rofi || $scrPath/emoji-picker.sh # launch emoji picker bindd = $mainMod, period, $d glyph picker , exec, pkill -x rofi || $scrPath/glyph-picker.sh # launch glyph picker bindd = $mainMod, V, $d clipboard , exec, pkill -x rofi || $scrPath/cliphist.sh -c # launch clipboard, bindd = $mainMod Shift, V, $d clipboard manager , exec, pkill -x rofi || $scrPath/cliphist.sh # launch clipboard Manager bindd = $mainMod Shift, A, $d select rofi launcher , exec, pkill -x rofi || $scrPath/rofiselect.sh # launch select menu $hc=Hardware Controls $d=[$hc|Audio] binddl = , F10, $d toggle mute output , exec, $scrPath/volumecontrol.sh -o m # toggle audio mute binddl = , XF86AudioMute,$d toggle mute output, exec, $scrPath/volumecontrol.sh -o m # toggle audio mute binddel = , F11, $d decrease volume , exec, $scrPath/volumecontrol.sh -o d # decrease volume binddel = , F12, $d increase volume , exec, $scrPath/volumecontrol.sh -o i # increase volume binddl = , XF86AudioMicMute,$d un/mute microphone , exec, $scrPath/volumecontrol.sh -i m # toggle microphone mute binddel = , XF86AudioLowerVolume, $d decrease volume , exec, $scrPath/volumecontrol.sh -o d # decrease volume binddel = , XF86AudioRaiseVolume, $d increase volume , exec, $scrPath/volumecontrol.sh -o i # increase volume $d=[$hc|Media] binddl = , XF86AudioPlay,$d play media, exec, playerctl play-pause # toggle between media play and pause binddl = , XF86AudioPause,$d pause media, exec, playerctl play-pause # toggle between media play and pause binddl = , XF86AudioNext,$d next media , exec, playerctl next # media next binddl = , XF86AudioPrev,$d previous media , exec, playerctl previous # media previous $d=[$hc|Brightness] binddel = , XF86MonBrightnessUp, $d increase brightness , exec, $scrPath/brightnesscontrol.sh i # increase brightness binddel = , XF86MonBrightnessDown, $d decrease brightness , exec, $scrPath/brightnesscontrol.sh d # decrease brightness $ut=Utilities $d=[$ut] # binddl = $mainMod, K, $d toggle keyboard layout , exec, $scrPath/keyboardswitch.sh # switch keyboard layout bindd = $mainMod Alt, G, $d game mode , exec, $scrPath/gamemode.sh # disable hypr effects for gamemode $d=[$ut|Screen Capture] bindd = $mainMod Shift, P, $d color picker, exec, hyprpicker -an # Pick color (Hex) >> clipboard# bindd = $mainMod, P, $d snip screen , exec, $scrPath/screenshot.sh s # partial screenshot capture bindd = $mainMod Control, P, $d freeze and snip screen, exec, $scrPath/screenshot.sh sf # partial screenshot capture (frozen screen) binddl = $mainMod Alt, P, $d print monitor , exec, $scrPath/screenshot.sh m # monitor screenshot capture binddl = , Print, $d print all monitors , exec, $scrPath/screenshot.sh p # all monitors screenshot capture # TODO Make a main rofi menu for these selectors $rice=Theming and Wallpaper $d=[$rice] bindd = $mainMod Alt Control Shift, Right, $d next global wallpaper , exec, $scrPath/wallpaper.sh -Gn # next global wallpaper bindd = $mainMod Alt Control Shift, Left, $d previous global wallpaper , exec, $scrPath/wallpaper.sh -Gp # previous global wallpaper bindd = $mainMod Shift, W, $d select a global wallpaper , exec, pkill -x rofi || $scrPath/wallpaper.sh -SG # launch wallpaper select menu # bindd = $mainMod Alt, Up, $d next waybar layout , exec, $scrPath/wbarconfgen.sh n # next waybar mode # bindd = $mainMod Alt, Down, $d previous waybar layout , exec, $scrPath/wbarconfgen.sh p # previous waybar mode # bindd = $mainMod Shift, R, $d wallbash mode selector , exec, pkill -x rofi || $scrPath/wallbashtoggle.sh -m # launch wallbash mode select menu # bindd = $mainMod Shift, T, $d select a theme, exec, pkill -x rofi || $scrPath/themeselect.sh # launch theme select menu $ws=Workspaces $d=[$ws|Navigation] bindd = $mainMod, 1, $d navigate to workspace 1 , workspace, 1 bindd = $mainMod, 2, $d navigate to workspace 2 , workspace, 2 bindd = $mainMod, 3, $d navigate to workspace 3 , workspace, 3 bindd = $mainMod, 4, $d navigate to workspace 4 , workspace, 4 bindd = $mainMod, 5, $d navigate to workspace 5 , workspace, 5 bindd = $mainMod, 6, $d navigate to workspace 6 , workspace, 6 bindd = $mainMod, 7, $d navigate to workspace 7 , workspace, 7 bindd = $mainMod, 8, $d navigate to workspace 8 , workspace, 8 bindd = $mainMod, 9, $d navigate to workspace 9 , workspace, 9 bindd = $mainMod, 0, $d navigate to workspace 10 , workspace, 10 $d=[$ws|Navigation|Relative workspace] bindd = $mainMod Control Shift, Right, $d change active workspace forwards , workspace, r+1 bindd = $mainMod Control Shift, Left, $d change active workspace backwards , workspace, r-1 bindd = $mainMod Control Shift, L, $d change active workspace forwards , workspace, r+1 # doesnt work bindd = $mainMod Control Shift, H, $d change active workspace backwards , workspace, r-1 # doesnt work $d=[$ws|Navigation] bindd = $mainMod Control, Down, $d navigate to the nearest empty workspace , workspace, empty # Move focused window to a workspace $d=[$ws|Move window to workspace] bindd = $mainMod Control, 1, $d move to workspace 1 , movetoworkspace, 1 bindd = $mainMod Control, 2, $d move to worksCtrl2 , movetoworkspace, 2 bindd = $mainMod Control, 3, $d move to worksCtrl3 , movetoworkspace, 3 bindd = $mainMod Control, 4, $d move to worksCtrl4 , movetoworkspace, 4 bindd = $mainMod Control, 5, $d move to worksCtrl5 , movetoworkspace, 5 bindd = $mainMod Control, 6, $d move to worksCtrl6 , movetoworkspace, 6 bindd = $mainMod Control, 7, $d move to worksCtrl7 , movetoworkspace, 7 bindd = $mainMod Control, 8, $d move to worksCtrl8 , movetoworkspace, 8 bindd = $mainMod Control, 9, $d move to worksCtrl9 , movetoworkspace, 9 bindd = $mainMod Control, 0, $d move to worksCtrl10 , movetoworkspace, 10 # Move focused window to a relative workspace $d=[$ws] bindd = $mainMod Control Alt, Right, $d move window to next relative workspace , movetoworkspace, r+1 bindd = $mainMod Control Alt, Left, $d move window to previous relative workspace , movetoworkspace, r-1 bindd = $mainMod Control Alt, l, $d move window to next relative workspace , movetoworkspace, r+1 bindd = $mainMod Control Alt, h, $d move window to previous relative workspace , movetoworkspace, r-1 # Scroll through existing workspaces $d=[$ws|Navigation] bindd = $mainMod, mouse_down, $d next workspace, workspace, e+1 bindd = $mainMod, mouse_up, $d previous workspace, workspace, e-1 # Move/Switch to special workspace (scratchpad) $d=[$ws|Navigation|Special workspace] bindd = $mainMod Shift, S, $d move to scratchpad , movetoworkspace, special bindd = $mainMod Alt, S, $d move to scratchpad (silent) , movetoworkspacesilent, special bindd = $mainMod, S, $d toggle scratchpad , togglespecialworkspace # Move focused window to a workspace silently $d=[$ws|Navigation|Move window silently] bindd = $mainMod Alt, 1, $d move to workspace 1 (silent), movetoworkspacesilent, 1 bindd = $mainMod Alt, 2, $d move to workspace 2 (silent), movetoworkspacesilent, 2 bindd = $mainMod Alt, 3, $d move to workspace 3 (silent), movetoworkspacesilent, 3 bindd = $mainMod Alt, 4, $d move to workspace 4 (silent), movetoworkspacesilent, 4 bindd = $mainMod Alt, 5, $d move to workspace 5 (silent), movetoworkspacesilent, 5 bindd = $mainMod Alt, 6, $d move to workspace 6 (silent), movetoworkspacesilent, 6 bindd = $mainMod Alt, 7, $d move to workspace 7 (silent), movetoworkspacesilent, 7 bindd = $mainMod Alt, 8, $d move to workspace 8 (silent), movetoworkspacesilent, 8 bindd = $mainMod Alt, 9, $d move to workspace 9 (silent), movetoworkspacesilent, 9 bindd = $mainMod Alt, 0, $d move to workspace 10 (silent), movetoworkspacesilent, 10 $d=#! unset the group name