From 2fc37d98a88ba5ccfad7080d3fd1eed5b800c2fe Mon Sep 17 00:00:00 2001 From: Liam Malone Date: Mon, 6 Oct 2025 15:37:32 +0100 Subject: [PATCH] hypr-config update to align more with desktop --- configs/hypr-darp8/hyprland.conf | 446 +++++++++++++++++-------------- configs/hypr/hyprland.conf | 1 + 2 files changed, 247 insertions(+), 200 deletions(-) diff --git a/configs/hypr-darp8/hyprland.conf b/configs/hypr-darp8/hyprland.conf index 1cae6a7..c9e3095 100644 --- a/configs/hypr-darp8/hyprland.conf +++ b/configs/hypr-darp8/hyprland.conf @@ -1,6 +1,7 @@ # Startup exec-once= bash -c "wl-paste --watch cliphist store &" exec-once= fcitx5 -d +exec-once= emacs --daemon exec-once= dms run # DankShell # Monitors @@ -20,25 +21,31 @@ env=QT_QPA_PLATFORM,wayland env=XCURSOR_THEME,Bibata-Modern-Ice env=XCURSOR_SIZE,24 -# Colors -$green=rgb(00BB00) -$gray=rgb(555555) -$purple=rgb(BB00BB) -$lavendar=rgb(B39DF3) -$orange=rgb(F39660) +# Color -$lightgreen=rgb(93C863) -$lightblue=rgb(76CCE0) +# Color :: Definition +$green = rgb(00BB00) +$gray = rgb(555555) +$purple = rgb(BB00BB) +$lavendar = rgb(B39DF3) +$orange = rgb(F39660) -$magenta=rgba(881798FF) -$crimson=rgba(471520FF) +$lightgreen = rgb(93C863) +$lightblue = rgb(76CCE0) + +$magenta = rgba(881798FF) +$crimson = rgba(471520FF) +$shadowBlack = rgba(1a1a1aee) -# USED COLORS -$active_border=$lightgreen -$inactive_border=$gray -# $expo_bg=$active_border +# Color :: Option +$active_border = $lightgreen +$inactive_border = $gray +$shadow = $shadowBlack + + +# Settings animations { bezier=myBezier, 0.05, 0.9, 0.1, 1.05 @@ -123,217 +130,256 @@ misc { mouse_move_enables_dpms=true } -# Plugin Config - -# plugin { -# hyprexpo { -# columns = 3 -# gap_size = 3 -# bg_col = $expo_bg -# workspace_method = center current # [center/first] [workspace] e.g. first 1 or center m+1 -# -# enable_gesture = true # laptop touchpad -# gesture_fingers = 3 # 3 or 4 -# gesture_distance = 300 # how far is the "max" -# gesture_positive = false # true = swipe down, false = swipe up. -# } -# } # Window Rules -windowrule = idleinhibit fullscreen, class:firefox -windowrule = idleinhibit fullscreen, class:floorp -windowrule = idleinhibit fullscreen, class:ghostty -windowrule = idleinhibit focus, class:firefox -windowrule = idleinhibit focus, class:floorp -windowrule = idleinhibit focus, class:mpv -windowrule = idleinhibit focus, class:^(emacs)$ -windowrule = idleinhibit focus, class:^(Emacs)$ -windowrule = idleinhibit focus, class:^(discord)$ -windowrule = idleinhibit focus, class:^(spotify)$ -windowrule = idleinhibit focus, class:^(Discord|discord)$ -windowrule = opacity 0.98 0.9, class:^(Discord|discord)$ -windowrule = float, class:polkit-kde-authentication-agent-1 -windowrule = float, class:^(praat)$ -windowrule = float, class:^(network)$ -windowrule = float, class:^(nm-)$ -windowrule = float, class:^(Network)$ -windowrule = float, class:Rofi -windowrule = float, class:Gimp -windowrule = float, class:Nautilus -windowrule = float, title:^(LmDev-.*)$ -windowrule = float, class:notification -windowrule = float, class:^(Genymotion Player)$ -windowrule = float, class:^(launcher)$ -windowrule = tile, class:Spotify -windowrule = tile, title:Minecraft -windowrule = workspace 2, class:KeePassXC -windowrule = workspace 3, class:firefox -windowrule = workspace 3, class:floorp -windowrule = workspace 4, class:Spotify -windowrule = workspace 6, class:discord -windowrule = workspace 6, class:Signal -windowrule = workspace 10, title:Minecraft +# Rule :: Window +$idleInhibFs = idleinhibit fullscreen +$idleInhibFo = idleinhibit focus +$ws = workspace + + windowrule = $idleInhibFs, class:^(floorp)$ + windowrule = $idleInhibFs, class:^(firefox)$ + windowrule = $idleInhibFs, class:^(ghostty)$ + windowrule = $idleInhibFs, class:^(brave-browser)$ + + windowrule = $idleInhibFo, class:^(mpv)$ + windowrule = $idleInhibFo, class:^(firefox)$ + windowrule = $idleInhibFo, class:^(floorp)$ + windowrule = $idleInhibFo, class:^(spotify)$ + windowrule = $idleInhibFo, class:^(Emacs|emacs)$ + windowrule = $idleInhibFo, class:^(brave-browser)$ + windowrule = $idleInhibFo, class:^(Discord|discord)$ + + windowrule = opacity 0.98 0.90, class:^(Discord|discord)$ + + windowrule = float, class:^(polkit.*agent.*)$ + windowrule = float, class:^(praat)$ + windowrule = float, class:^(network)$ + windowrule = float, class:^(nm-)$ + windowrule = float, class:^(Network)$ + windowrule = float, class:^(Rofi)$ + windowrule = float, class:^(Gimp)$ + windowrule = float, class:^(thunar)$ + windowrule = float, class:^(Nautilus)$ + windowrule = float, title:^(LmDev-.*)$ + windowrule = float, class:^(notification)$ + windowrule = float, class:^(Genymotion Player)$ + windowrule = float, class:^(launcher)$ + + windowrule = tile, class:^(Spotify)$ + windowrule = tile, title:^(Minecraft)$ + + windowrule = $ws name:shell, class:^(KeePassXC)$ + windowrule = $ws name:browser, class:^(firefox)$ + windowrule = $ws name:browser, class:^(floorp)$ + windowrule = $ws name:browser, class:^(brave-browser)$ + windowrule = $ws name:music, class:^(Spotify)$ + windowrule = $ws name:chat, class:^(discord)$ + windowrule = $ws name:chat, class:^(Signal)$ + windowrule = $ws name:video, class:^(.*obs.*)$ + windowrule = $ws name:game, title:^(Minecraft)$ + +# Commands +# :Alias: :Command: + +$lock = dms ipc call lock lock +$screenshot = grimblast --cursor copy output +$screenshotarea = hyprctl keyword animation 'fadeOut,0,0,default'; grimblast copy area; hyprctl keyword animation 'fadeOut,1,4,default' + +$colorpick = hyprpicker -a -f hex +$emacs = emacsclient -c -a 'emacs' +$discord = discord --enable-blink-features=MiddleClickAutoscroll # Binds -$altMod=ALT -$ctrlMod=CTRL -# $lock=hyprlock -$lock=dms ipc call lock lock -$mainMod=SUPER -$screenshotarea=hyprctl keyword animation 'fadeOut,0,0,default'; grimblast copy area; hyprctl keyword animation 'fadeOut,1,4,default' +# Binds :: Modifiers +$none = + +$altMod = ALT +$mainMod = SUPER + +$noneCtrl = $none CTRL +$altCtrl = $altMod CTRL +$mainCtrl = $mainMod CTRL + +$noneShift = $none SHIFT +$altShift = $altMod SHIFT +$mainShift = $mainMod SHIFT + +$altCtrlShift = $altCtrl SHIFT +$noneCtrlShift = $noneCtrl SHIFT +$mainCtrlShift = $mainCtrl SHIFT # Binds :: Programs -bind=$altMod, Return, exec, ghostty -bind=$altMod SHIFT, Return, exec, foot -bind=$mainMod SHIFT, D, exec, discord --enable-blink-features=MiddleClickAutoscroll -bind=$mainMod SHIFT, E, exec, emacsclient -c -a 'emacs' -bind=$mainMode SHIFT, F, exec, focus-linux -bind=$mainMod, Space, exec, dms ipc call spotlight toggle -bind=$mainMod, E, exec, thunar -bind=$mainMod, S, exec, spotify -bind=$mainMod, P, exec, hyprpicker -a -f hex -bind=, Print, exec, $screenshotarea -bind=SHIFT, Print, exec, grimblast --cursor copy output -bind=$mainMod, X, exec, dms ipc call powermenu toggle -bind=$mainMod SHIFT, P, pseudo, -bind=$mainMod, C, killactive, -bind=$mainMod SHIFT, F, togglefloating, -bind=$mainMod SHIFT, S, togglesplit, -bind=$mainMod CTRL, Q, exec, $lock -bind=$mainMod, F4, exit, -bind = SUPER, M, exec, dms ipc call processlist toggle -bind = $mainMod, I, exec, dms ipc call settings toggle -bind = $mainMod CTRL, P, exec, dms ipc call notepad toggle -bind = $mainMod CTRL, C, exec, dms ipc call control-center toggle +#:Bind: :Modifier: :Key: :Command: :Args: + bind = $altMod, Return, exec, ghostty + bind = $altShift, Return, exec, foot + bind = $mainShift, D, exec, $discord + bind = $mainShift, E, exec, $emacs + bind = $mainMod, Space, exec, dms ipc call spotlight toggle + bind = $mainMod, E, exec, thunar + bind = $mainMod, S, exec, spotify + bind = $mainMod, P, exec, $colorpick + bind = $none, Print, exec, $screenshotarea + bind = $noneShift, Print, exec, $screenshot + bind = $mainMod, X, exec, dms ipc call powermenu toggle + bind = $mainMod, M, exec, dms ipc call processlist toggle + bind = $mainMod, I, exec, dms ipc call settings toggle + bind = $mainMod, V, exec, dms ipc call clipboard toggle + bind = $mainCtrl, P, exec, dms ipc call notepad toggle + bind = $mainCtrl, C, exec, dms ipc call control-center toggle + bind = $mainMod, N, exec, dms ipc call notifications toggle + bind = $mainShift, N, exec, dms ipc call night toggle + + bind = $mainShift, P, pseudo, + bind = $mainMod, C, killactive, + bind = $mainMod, F, togglefloating, + bind = $mainShift, F, fullscreen + bind = $mainShift, S, togglesplit, + bind = $mainMod, right, resizeactive, 10 0 + bind = $mainMod, left, resizeactive, -10 0 + bind = $mainMod, up, resizeactive, 0 -10 + bind = $mainMod, down, resizeactive, 0 10 + bind = $mainCtrl, Q, exec, $lock + bind = $mainMod, F4, exit, -# Night mode toggle -bind=$mainMod, N, exec, dms ipc call notifications toggle -bind=$mainMod SHIFT, N, exec, dms ipc call night toggle - -# bind = SUPER, grave, hyprexpo:expo, toggle # Commented out cos "version mismatch (bs)" +$ws_game = 1 +$ws_shell = 2 +$ws_browser = 3 +$ws_music = 4 +$ws_image = 5 +$ws_chat = 6 +$ws_audio = 7 +$ws_video = 8 +$ws_program = 9 +$ws_extra = 0 # Binds :: Navigation -bind=$mainMod, F, fullscreen, -bind=$mainMod, H, movefocus, l -bind=$mainMod, L, movefocus, r -bind=$mainMod, K, movefocus, u -bind=$mainMod, J, movefocus, d -bind=$mainMod, comma, focusmonitor, -1 -bind=$mainMod, period, focusmonitor, +1 -bind=$mainMod SHIFT, H, movewindow, l -bind=$mainMod SHIFT, L, movewindow, r -bind=$mainMod SHIFT, K, movewindow, u -bind=$mainMod SHIFT, J, movewindow, d -bind=$mainMod SHIFT, comma, movecurrentworkspacetomonitor, -1 -bind=$mainMod SHIFT, period, movecurrentworkspacetomonitor, +1 -bind=$mainMod, right, resizeactive, 10 0 -bind=$mainMod, left, resizeactive, -10 0 -bind=$mainMod, up, resizeactive, 0 -10 -bind=$mainMod, down, resizeactive, 0 10 -bind=$mainMod, 1, workspace, 1 -bind=$mainMod, 2, workspace, 2 -bind=$mainMod, 3, workspace, 3 -bind=$mainMod, 4, workspace, 4 -bind=$mainMod, 5, workspace, 5 -bind=$mainMod, 6, workspace, 6 -bind=$mainMod, 7, workspace, 7 -bind=$mainMod, 8, workspace, 8 -bind=$mainMod, 9, workspace, 9 -bind=$mainMod, 0, workspace, 10 -bind=$mainMod SHIFT, 1, movetoworkspace, 1 -bind=$mainMod SHIFT, 2, movetoworkspace, 2 -bind=$mainMod SHIFT, 3, movetoworkspace, 3 -bind=$mainMod SHIFT, 4, movetoworkspace, 4 -bind=$mainMod SHIFT, 5, movetoworkspace, 5 -bind=$mainMod SHIFT, 6, movetoworkspace, 6 -bind=$mainMod SHIFT, 7, movetoworkspace, 7 -bind=$mainMod SHIFT, 8, movetoworkspace, 8 -bind=$mainMod SHIFT, 9, movetoworkspace, 9 -bind=$mainMod SHIFT, 0, movetoworkspace, 10 -bind=$mainMod SHIFT CTRL, right, movetoworkspace, +1 -bind=$mainMod SHIFT CTRL, left, movetoworkspace, -1 -bind=$mainMod, mouse_down, workspace, e+1 -bind=$mainMod, mouse_up, workspace, e-1 -bind=$mainMod, Tab, workspace, e+1 -bind=$mainMod SHIFT, Tab, workspace, e-1 -bind=$mainMod CTRL, right, workspace, +1 -bind=$mainMod CTRL, left, workspace, -1 +#:Bind: :Modifier: :Key: :Command: :Args: + bind = $mainMod, H, movefocus, l + bind = $mainMod, L, movefocus, r + bind = $mainMod, K, movefocus, u + bind = $mainMod, J, movefocus, d + bind = $mainMod, comma, focusmonitor, -1 + bind = $mainMod, period, focusmonitor, +1 + bind = $mainShift, H, movewindow, l + bind = $mainShift, L, movewindow, r + bind = $mainShift, K, movewindow, u + bind = $mainShift, J, movewindow, d + bind = $mainShift, comma, movecurrentworkspacetomonitor, -1 + bind = $mainShift, period, movecurrentworkspacetomonitor, +1 + + bind = $mainMod, $ws_game, workspace, name:game + bind = $mainMod, $ws_shell, workspace, name:shell + bind = $mainMod, $ws_browser, workspace, name:browser + bind = $mainMod, $ws_music, workspace, name:music + bind = $mainMod, $ws_image, workspace, name:image + bind = $mainMod, $ws_chat, workspace, name:chat + bind = $mainMod, $ws_audio, workspace, name:audio + bind = $mainMod, $ws_video, workspace, name:video + bind = $mainMod, $ws_program, workspace, name:program + bind = $mainMod, $ws_extra, workspace, name:extra + + bind = $mainShift, $ws_game, movetoworkspace, name:game + bind = $mainShift, $ws_shell, movetoworkspace, name:shell + bind = $mainShift, $ws_browser, movetoworkspace, name:browser + bind = $mainShift, $ws_music, movetoworkspace, name:music + bind = $mainShift, $ws_image, movetoworkspace, name:image + bind = $mainShift, $ws_chat, movetoworkspace, name:chat + bind = $mainShift, $ws_audio, movetoworkspace, name:audio + bind = $mainShift, $ws_video, movetoworkspace, name:video + bind = $mainShift, $ws_program, movetoworkspace, name:program + bind = $mainShift, $ws_extra, movetoworkspace, name:extra + + bind = $mainCtrlShift, right, movetoworkspace, +1 + bind = $mainCtrlShift, left, movetoworkspace, -1 + + bind = $mainMod, mouse_down, workspace, e+1 + bind = $mainMod, mouse_up, workspace, e-1 + bind = $mainMod, Tab, workspace, e+1 + bind = $mainShift, Tab, workspace, e-1 + bind = $mainCtrl, right, workspace, +1 + bind = $mainCtrl, left, workspace, -1 + bindm = $mainMod, mouse:272, movewindow + bindm = $mainMod, mouse:273, resizewindow -bindm=$mainMod, mouse:272, movewindow -bindm=$mainMod, mouse:273, resizewindow # Binds :: MultiMedia -bindl=, XF86AudioPlay, exec, playerctl play-pause -bindl=, XF86AudioNext, exec, playerctl next -bindl=, XF86AudioPrev, exec, playerctl previous + bindl = $none, XF86AudioPlay, exec, playerctl play-pause + bindl = $none, XF86AudioNext, exec, playerctl next + bindl = $none, XF86AudioPrev, exec, playerctl previous + + bindl = $none, XF86AudioMute, exec, dms ipc call audio mute + bindl = $none, XF86AudioMicMute, exec, dms ipc call audio micmute + bindle = $none, XF86AudioRaiseVolume, exec, dms ipc call audio increment 3 + bindle = $none, XF86AudioLowerVolume, exec, dms ipc call audio decrement 3 + + bindle = $none, XF86MonBrightnessUp, exec, dms ipc call brightness increment 5 "" + bindle = $none, XF86MonBrightnessDown, exec, dms ipc call brightness decrement 5 "" -bindl=, XF86AudioMute, exec, dms ipc call audio mute -bindl=, XF86AudioMicMute, exec, dms ipc call audio micmute -bindle=, XF86AudioRaiseVolume, exec, dms ipc call audio increment 3 -bindle=, XF86AudioLowerVolume, exec, dms ipc call audio decrement 3 +# Binds :: Submap -bindle=, XF86MonBrightnessUp, exec, dms ipc call brightness increment 5 "" -bindle=, XF86MonBrightnessDown, exec, dms ipc call brightness decrement 5 "" +# Binds :: Submap :: Resize + bind = $mainMod, R, submap, resize -# Binds :: Submaps + submap = resize -bind = $mainMod, R, submap, resize -submap = resize -bind=, escape,submap,reset + bind = $none, escape, submap, reset + + binde = $none, left, resizeactive, -10 0 + bindr = $none, left, submap, reset + binde = $none, right, resizeactive, 10 0 + bindr = $none, right, submap, reset + binde = $none, up, resizeactive, 0 10 + bindr = $none, up, submap, reset + binde = $none, down, resizeactive, 0 -10 + bindr = $none, down, submap, reset + + binde = $none, H, resizeactive, -10 0 + bindr = $none, H, submap, reset + binde = $none, J, resizeactive, 0 -10 + bindr = $none, J, submap, reset + binde = $none, K, resizeactive, 0 10 + bindr = $none, K, submap, reset + binde = $none, L, resizeactive, 10 0 + bindr = $none, L, submap, reset + + submap=reset -binde=, left, resizeactive, -10 0 -bindr=, left, submap, reset -binde=, right, resizeactive, 10 0 -bindr=, right, submap, reset -binde=, up, resizeactive, 0 10 -bindr=, up, submap, reset -binde=, down, resizeactive, 0 -10 -bindr=, down, submap, reset +# Binds :: Submap :: Browser + bind = $mainMod, B, submap, browser -binde=, H, resizeactive, -10 0 -bindr=, H, submap, reset -binde=, J, resizeactive, 0 -10 -bindr=, J, submap, reset -binde=, K, resizeactive, 0 10 -bindr=, K, submap, reset -binde=, L, resizeactive, 10 0 -bindr=, L, submap, reset + submap = browser + + bind = $none, B, exec, brave + bindr = $none, B, submap, reset + + bind = $noneShift, F, exec, firefox + bindr = $noneShift, F, submap, reset + + bind = $none, F, exec, floorp + bindr = $none, F, submap, reset + + bind = $none, escape, submap, reset + submap = reset -submap=reset - -bind = $mainMod, B, submap, browser_select -submap = browser_select - -bind =, B, exec, brave -bind =, B, submap, reset - -bind = SHIFT, F, exec, firefox -bind = SHIFT, F, submap, reset - -bind =, F, exec, floorp -bind =, F, submap, reset - -bind =, C, exec, floorp -p limalone -no-remote -bind =, C, submap, reset - -bind=, escape,submap,reset -submap=reset - -bind = $mainMod SHIFT, V, submap, video_stuff -submap = video_stuff -bind = , O, exec, obs -bind = , O, submap, reset -bind = , V, exec , kdenlive -bind = , V, submap, reset - -bind=, escape,submap,reset -submap = reset +# Binds :: Submap :: Video + bind = $mainShift, V, submap, video + submap = video + + bind = $none, O, exec, obs + bindr = $none, O, submap, reset + + bind = $none, V, exec, kdenlive + bindr = $none, V, submap, reset + + bind = $none, escape, submap, reset + submap = reset # Gestures diff --git a/configs/hypr/hyprland.conf b/configs/hypr/hyprland.conf index 1cae6a7..fe6488d 100644 --- a/configs/hypr/hyprland.conf +++ b/configs/hypr/hyprland.conf @@ -1,6 +1,7 @@ # Startup exec-once= bash -c "wl-paste --watch cliphist store &" exec-once= fcitx5 -d +exec-once= emacs --daemon exec-once= dms run # DankShell # Monitors