From d7dad40cac8de80c67811ab07b380393159dd6d3 Mon Sep 17 00:00:00 2001 From: moonleay Date: Thu, 4 Jan 2024 03:09:56 +0100 Subject: [PATCH] feat: continued splitting up hyprland.conf --- hypr/basics.conf | 60 +++++++++++++ hypr/hyprland.conf | 199 +++--------------------------------------- hypr/input.conf | 25 ++++++ hypr/keybindings.conf | 82 +++++++++++++++++ hypr/monitors.conf | 7 ++ hypr/windowrules.conf | 8 ++ 6 files changed, 192 insertions(+), 189 deletions(-) create mode 100644 hypr/basics.conf create mode 100644 hypr/input.conf create mode 100644 hypr/keybindings.conf create mode 100644 hypr/monitors.conf create mode 100644 hypr/windowrules.conf diff --git a/hypr/basics.conf b/hypr/basics.conf new file mode 100644 index 0000000..6673155 --- /dev/null +++ b/hypr/basics.conf @@ -0,0 +1,60 @@ +# General Hyprland settings +general { + gaps_in = 5 + gaps_out = 10 #20 + border_size = 2 + col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg + col.inactive_border = rgba(595959aa) + + layout = dwindle + allow_tearing = true +} + +# Window decorations +decoration { + rounding = 5 + + blur { + # Disable blur for battery saving + enabled = false + size = 3 + passes = 1 + } + + drop_shadow = yes + shadow_range = 4 + shadow_render_power = 3 + col.shadow = rgba(1a1a1aee) +} + +# Window animations +animations { + enabled = yes + + bezier = myBezier, 0.05, 0.9, 0.1, 1.05 + + animation = windows, 1, 7, myBezier + animation = windowsOut, 1, 7, default, popin 80% + animation = border, 1, 10, default + animation = borderangle, 1, 8, default + animation = fade, 1, 7, default + animation = workspaces, 1, 6, default +} + +# Dwindle layout +dwindle { + pseudotile = yes + preserve_split = yes +} + +master { + new_is_master = true +} + +gestures { + workspace_swipe = true + workspace_swipe_forever = true + workspace_swipe_min_speed_to_force = 5 + workspace_swipe_distance = 400 + workspace_swipe_direction_lock = false +} diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 3510681..d036e66 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -1,14 +1,15 @@ -# Monitors -#monitor=,preferred,auto,auto -monitor=eDP-2,preferred,0x0,2 -monitor=eDP-1,preferred,0x0,2 -monitor=DP-1,3840x2160@120,1280x0,1.2 -monitor=HDMI-A-1,preferred,4480x0,1 -#monitor=HDMI-A-1,3440x1440@100,1280x0,1 +# moonleay's Hyprland config -# Other Hyprland configs -source = ~/.config/hypr/autorun.conf # Autorun apps +# Source othes config files +source = ~/.config/hypr/monitors.conf # Configure monitors source = ~/.config/hypr/env_vars.conf # Set environment variables +source = ~/.config/hypr/autorun.conf # Autorun apps +source = ~/.config/hypr/input.conf # Setup inputs +source = ~/.config/hypr/keybindings.conf # Setup keybindings +source = ~/.config/hypr/windowrules.conf # Setup windowrules +source = ~/.config/hypr/basics.conf # Setup Hyprland basics (layout, design, etc.) + +# Other configs: # Disable xwayland scaling xwayland { @@ -21,185 +22,5 @@ misc { vfr = true } - -# Input settings -input { - kb_layout = us - kb_model = pc105angle - # kb_variant = colemak_dh - kb_variant = cmk_ed_us - kb_options = misc:extend, lv5:caps_switch_lock, grp:shifts_toggle, compose:menu, misc:cmk_curl_dh - - repeat_rate = 40 - repeat_delay = 200 - - kb_file = - kb_rules = evdev - - - follow_mouse = 1 - - touchpad { - disable_while_typing = yes - natural_scroll = yes - } - - sensitivity = -0.2 #0 # -1.0 - 1.0, 0 means no modification. - accel_profile = flat -} - -# General Hyprland settings -general { - gaps_in = 5 - gaps_out = 10 #20 - border_size = 2 - col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg - col.inactive_border = rgba(595959aa) - - layout = dwindle - allow_tearing = true -} - -# Window decorations -decoration { - rounding = 5 - - blur { - # Disable blur for battery saving - enabled = false - size = 3 - passes = 1 - } - - drop_shadow = yes - shadow_range = 4 - shadow_render_power = 3 - col.shadow = rgba(1a1a1aee) -} - -# Window animations -animations { - enabled = yes - - bezier = myBezier, 0.05, 0.9, 0.1, 1.05 - - animation = windows, 1, 7, myBezier - animation = windowsOut, 1, 7, default, popin 80% - animation = border, 1, 10, default - animation = borderangle, 1, 8, default - animation = fade, 1, 7, default - animation = workspaces, 1, 6, default -} - -# Dwindle layout -dwindle { - pseudotile = yes - preserve_split = yes -} - -master { - new_is_master = true -} - -gestures { - workspace_swipe = true - workspace_swipe_forever = true - workspace_swipe_min_speed_to_force = 5 - workspace_swipe_distance = 400 - workspace_swipe_direction_lock = false -} - # Per device configs # - -# Windowrules -windowrulev2 = immediate, class:^(minecraft)$ - -# Screensharing -windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$ -windowrulev2 = noanim,class:^(xwaylandvideobridge)$ -windowrulev2 = nofocus,class:^(xwaylandvideobridge)$ -windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$ - -# See https://wiki.hyprland.org/Configuring/Keywords/ for more -$mainMod = SUPER - -# Custom mappings - -# Shutdown / Reboot -bind = $mainMod, XF86Eject, exec, shutdown now -bind = $mainMod SHIFT, XF86Eject, exec, reboot -bind = $mainMod, XF86Launch1, exec, shutdown now -bind = $mainMod SHIFT, XF86Launch1, exec, reboot - -# Music controll -bind = , XF86Tools, exec, playerctl previous -bind = , XF86Launch5, exec, playerctl play-pause -bind = , XF86Launch6, exec, playerctl next - -# Run "overlay apps" -bind = CTRL ALT, DELETE, exec, swaylock -bind = $mainMod SHIFT, s, exec, grim -g "$(slurp)" -c "/home/moonleay/Pictures/Screenshots/$(date +'%s_grim.png')" - -# Run application -bind = $mainMod SHIFT, q, exec, librewolf - -# Force app fullsceen -bind = ALT_L, f, fullscreen -bind = ALT_L SHIFT, f, fakefullscreen - -# Custom rofi -bind = $mainMod, TAB, exec, rofi -show window -show-icons - -# Default Mappings -bind = $mainMod, Q, exec, alacritty -bind = $mainMod, C, killactive, -bind = $mainMod, M, exit, -bind = $mainMod, E, exec, thunar -bind = $mainMod, V, togglefloating, -bind = $mainMod, R, exec, rofi -show drun -show-icons -bind = $mainMod, P, pseudo, # dwindle -bind = $mainMod, J, togglesplit, # dwindle - -# Move the window focus -bind = $mainMod, left, movefocus, l -bind = $mainMod, right, movefocus, r -bind = $mainMod, up, movefocus, u -bind = $mainMod, down, movefocus, d - -# Switch focus -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, minus, workspace, 11 -bind = $mainMod, equal, workspace, 12 - -# Move window to other workspace -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, minus, movetoworkspace, 11 -bind = $mainMod SHIFT, equal, movetoworkspace, 12 - -# Scroll through workspaces -bind = $mainMod, mouse_down, workspace, e+1 -bind = $mainMod, mouse_up, workspace, e-1 - -# Move and scale workspaces -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow - diff --git a/hypr/input.conf b/hypr/input.conf new file mode 100644 index 0000000..a4855ed --- /dev/null +++ b/hypr/input.conf @@ -0,0 +1,25 @@ +# Input settings +input { + kb_layout = us + kb_model = pc105angle + # kb_variant = colemak_dh + kb_variant = cmk_ed_us + kb_options = misc:extend, lv5:caps_switch_lock, grp:shifts_toggle, compose:menu, misc:cmk_curl_dh + + repeat_rate = 40 + repeat_delay = 200 + + kb_file = + kb_rules = evdev + + + follow_mouse = 1 + + touchpad { + disable_while_typing = yes + natural_scroll = yes + } + + sensitivity = -0.2 #0 # -1.0 - 1.0, 0 means no modification. + accel_profile = flat +} diff --git a/hypr/keybindings.conf b/hypr/keybindings.conf new file mode 100644 index 0000000..9ca076f --- /dev/null +++ b/hypr/keybindings.conf @@ -0,0 +1,82 @@ +# Keymappings +$mainMod = SUPER + +# Custom mappings + +# Shutdown / Reboot +bind = $mainMod, XF86Eject, exec, shutdown now +bind = $mainMod SHIFT, XF86Eject, exec, reboot +bind = $mainMod, XF86Launch1, exec, shutdown now +bind = $mainMod SHIFT, XF86Launch1, exec, reboot + +# Music controll +bind = , XF86Tools, exec, playerctl previous +bind = , XF86Launch5, exec, playerctl play-pause +bind = , XF86Launch6, exec, playerctl next + +# Run "overlay apps" +bind = CTRL ALT, DELETE, exec, swaylock +bind = $mainMod SHIFT, s, exec, grim -g "$(slurp)" -c "/home/moonleay/Pictures/Screenshots/$(date +'%s_grim.png')" + +# Run application +bind = $mainMod SHIFT, q, exec, librewolf + +# Force app fullsceen +bind = ALT_L, f, fullscreen +bind = ALT_L SHIFT, f, fakefullscreen + +# Custom rofi +bind = $mainMod, TAB, exec, rofi -show window -show-icons + +# Default Mappings +bind = $mainMod, Q, exec, alacritty +bind = $mainMod, C, killactive, +bind = $mainMod, M, exit, +bind = $mainMod, E, exec, thunar +bind = $mainMod, V, togglefloating, +bind = $mainMod, R, exec, rofi -show drun -show-icons +bind = $mainMod, P, pseudo, # dwindle +bind = $mainMod, J, togglesplit, # dwindle + +# Move the window focus +bind = $mainMod, left, movefocus, l +bind = $mainMod, right, movefocus, r +bind = $mainMod, up, movefocus, u +bind = $mainMod, down, movefocus, d + +# Switch focus +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, minus, workspace, 11 +bind = $mainMod, equal, workspace, 12 + +# Move window to other workspace +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, minus, movetoworkspace, 11 +bind = $mainMod SHIFT, equal, movetoworkspace, 12 + +# Scroll through workspaces +bind = $mainMod, mouse_down, workspace, e+1 +bind = $mainMod, mouse_up, workspace, e-1 + +# Move and scale workspaces +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow + diff --git a/hypr/monitors.conf b/hypr/monitors.conf new file mode 100644 index 0000000..a58d1ed --- /dev/null +++ b/hypr/monitors.conf @@ -0,0 +1,7 @@ +# Monitors +#monitor=,preferred,auto,auto +monitor=eDP-2,preferred,0x0,2 +monitor=eDP-1,preferred,0x0,2 +monitor=DP-1,3840x2160@120,1280x0,1.2 +monitor=HDMI-A-1,preferred,4480x0,1 +#monitor=HDMI-A-1,3440x1440@100,1280x0,1 diff --git a/hypr/windowrules.conf b/hypr/windowrules.conf new file mode 100644 index 0000000..74d0f74 --- /dev/null +++ b/hypr/windowrules.conf @@ -0,0 +1,8 @@ +# Windowrules +windowrulev2 = immediate, class:^(minecraft)$ + +# Screensharing +windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$ +windowrulev2 = noanim,class:^(xwaylandvideobridge)$ +windowrulev2 = nofocus,class:^(xwaylandvideobridge)$ +windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$