forked from Shinonome/dots-hyprland
hyprland: update config
This commit is contained in:
@@ -5,30 +5,6 @@ monitor=,preferred,auto,1,transform, 0
|
||||
# HDMI port: mirror display. To see device name, use `hyprctl monitors`
|
||||
# monitor=HDMI-A-1,1920x1080@60,1920x0,1,mirror,eDP-1
|
||||
|
||||
input {
|
||||
# Keyboard: Add a layout and uncomment kb_options for Win+Space switching shortcut
|
||||
kb_layout = us
|
||||
# kb_options = grp:win_space_toggle
|
||||
numlock_by_default = true
|
||||
repeat_delay = 250
|
||||
repeat_rate = 35
|
||||
|
||||
touchpad {
|
||||
natural_scroll = yes
|
||||
disable_while_typing = true
|
||||
clickfinger_behavior = true
|
||||
scroll_factor = 0.5
|
||||
}
|
||||
special_fallthrough = true
|
||||
follow_mouse = 1
|
||||
}
|
||||
|
||||
binds {
|
||||
# focus_window_on_workspace_c# For Auto-run stuff see execs.confhange = true
|
||||
scroll_event_delay = 0
|
||||
hide_special_on_workspace_change = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_distance = 700
|
||||
@@ -46,24 +22,25 @@ general {
|
||||
gaps_in = 4
|
||||
gaps_out = 5
|
||||
gaps_workspaces = 50
|
||||
border_size = 1
|
||||
|
||||
# Fallback colors
|
||||
border_size = 1
|
||||
col.active_border = rgba(0DB7D4FF)
|
||||
col.inactive_border = rgba(31313600)
|
||||
|
||||
resize_on_border = true
|
||||
|
||||
no_focus_fallback = true
|
||||
layout = dwindle
|
||||
|
||||
#focus_to_other_workspaces = true # ahhhh i still haven't properly implemented this
|
||||
allow_tearing = true # This just allows the `immediate` window rule to work
|
||||
|
||||
snap {
|
||||
enabled = true
|
||||
}
|
||||
}
|
||||
|
||||
dwindle {
|
||||
preserve_split = true
|
||||
smart_split = false
|
||||
smart_resizing = false
|
||||
preserve_split = true
|
||||
smart_split = false
|
||||
smart_resizing = false
|
||||
}
|
||||
|
||||
decoration {
|
||||
@@ -75,7 +52,7 @@ decoration {
|
||||
special = false
|
||||
new_optimizations = true
|
||||
size = 14
|
||||
passes = 4
|
||||
passes = 3
|
||||
brightness = 1
|
||||
noise = 0.01
|
||||
contrast = 1
|
||||
@@ -83,73 +60,91 @@ decoration {
|
||||
popups_ignorealpha = 0.6
|
||||
}
|
||||
|
||||
# Shadow
|
||||
shadow {
|
||||
enabled = true
|
||||
ignore_window = true
|
||||
range = 20
|
||||
offset = 0 2
|
||||
render_power = 4
|
||||
color = rgba(0000002A)
|
||||
range = 70
|
||||
offset = 0 4
|
||||
render_power = 2
|
||||
color = rgba(00000008)
|
||||
}
|
||||
|
||||
# Window Opacities
|
||||
# active_opacity = 1
|
||||
# inactive_opacity = 1
|
||||
# fullscreen_opacity = 1
|
||||
|
||||
# Shader
|
||||
# screen_shader = ~/.config/hypr/shaders/nothing.frag
|
||||
# screen_shader = ~/.config/hypr/shaders/vibrance.frag
|
||||
# screen_shader = /home/end/.config/hypr/shaders/antiflash.frag
|
||||
|
||||
# Dim
|
||||
dim_inactive = false
|
||||
dim_strength = 0.1
|
||||
dim_special = 0
|
||||
dim_inactive = true
|
||||
dim_strength = 0.025
|
||||
dim_special = 0.07
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
# Animation curves
|
||||
|
||||
# Curves
|
||||
bezier = md3_decel, 0.05, 0.7, 0.1, 1
|
||||
bezier = md3_accel, 0.3, 0, 0.8, 0.15
|
||||
bezier = md2_decel, 0, 0, 0, 1
|
||||
bezier = menu_decel, 0.1, 1, 0, 1
|
||||
bezier = menu_accel, 0.52, 0.03, 0.72, 0.08
|
||||
# Animation configs
|
||||
animation = windows, 1, 3, md3_decel, popin 60%
|
||||
animation = windowsIn, 1, 3, md3_decel, popin 60%
|
||||
animation = windowsOut, 1, 3, md3_accel, popin 60%
|
||||
animation = border, 1, 10, default
|
||||
animation = fade, 1, 3, md3_decel
|
||||
# animation = layers, 1, 2, md3_decel, slide
|
||||
animation = layersIn, 1, 2.7, md3_decel, slide
|
||||
animation = layersOut, 1, 1.8, menu_accel
|
||||
# Configs
|
||||
# windows
|
||||
animation = windowsIn, 1, 3, md3_decel, popin 80%
|
||||
animation = windowsOut, 1, 2, md3_decel, popin 90%
|
||||
animation = windowsMove, 1, 3, md3_decel, slide
|
||||
animation = border, 1, 10, md3_decel
|
||||
# layers
|
||||
animation = layersIn, 1, 2.7, md3_decel, popin 93%
|
||||
animation = layersOut, 1, 1.8, menu_accel, popin 94%
|
||||
# fade
|
||||
animation = fadeLayersIn, 1, 0.5, menu_decel
|
||||
animation = fadeLayersOut, 1, 3, menu_accel
|
||||
animation = fadeLayersOut, 1, 2, menu_accel
|
||||
# workspaces
|
||||
animation = workspaces, 1, 7, menu_decel, slide
|
||||
animation = specialWorkspace, 1, 3, md3_decel, slidevert
|
||||
## specialWorkspace
|
||||
animation = specialWorkspaceIn, 1, 3, md3_decel, slidevert
|
||||
animation = specialWorkspaceOut, 1, 1.3, md3_accel, slidevert
|
||||
}
|
||||
|
||||
input {
|
||||
kb_layout = us
|
||||
numlock_by_default = true
|
||||
repeat_delay = 250
|
||||
repeat_rate = 35
|
||||
|
||||
follow_mouse = 1
|
||||
|
||||
touchpad {
|
||||
natural_scroll = yes
|
||||
disable_while_typing = true
|
||||
clickfinger_behavior = true
|
||||
scroll_factor = 0.5
|
||||
}
|
||||
}
|
||||
|
||||
misc {
|
||||
vfr = 1
|
||||
vrr = 1
|
||||
animate_manual_resizes = false
|
||||
animate_mouse_windowdragging = false
|
||||
enable_swallow = false
|
||||
swallow_regex = (foot|kitty|allacritty|Alacritty)
|
||||
|
||||
disable_hyprland_logo = true
|
||||
disable_splash_rendering = true
|
||||
force_default_wallpaper = 0
|
||||
vfr = 1
|
||||
vrr = 1
|
||||
mouse_move_enables_dpms = true
|
||||
key_press_enables_dpms = true
|
||||
animate_manual_resizes = false
|
||||
animate_mouse_windowdragging = false
|
||||
enable_swallow = true
|
||||
swallow_regex = (foot|kitty|allacritty|Alacritty)
|
||||
new_window_takes_over_fullscreen = 2
|
||||
allow_session_lock_restore = true
|
||||
|
||||
initial_workspace_tracking = false
|
||||
focus_on_activate = true
|
||||
}
|
||||
|
||||
binds {
|
||||
scroll_event_delay = 0
|
||||
hide_special_on_workspace_change = true
|
||||
}
|
||||
|
||||
cursor {
|
||||
zoom_factor = 1
|
||||
zoom_rigid = false
|
||||
}
|
||||
|
||||
# Overview
|
||||
plugin {
|
||||
hyprexpo {
|
||||
|
||||
@@ -63,6 +63,9 @@ bindd = Ctrl+Alt, R, Record screen (no sound), exec, ~/.config/hypr/hyprland/rec
|
||||
bindd = Super+Shift+Alt, R, Record screen (with sound), exec, ~/.config/hypr/hyprland/record-script.sh --fullscreen-sound # Record screen (with sound)
|
||||
# AI
|
||||
bindd = Super+Shift+Alt, mouse:273, Generate AI summary for selected text, exec, ~/.config/ags/scripts/ai/primary-buffer-query.sh # AI summary for selected text
|
||||
# Zoom
|
||||
binde = Super, Minus, exec, ~/.config/hypr/hyprland/zoom.sh decrease 0.1
|
||||
binde = Super, Equal, exec, ~/.config/hypr/hyprland/zoom.sh increase 0.1
|
||||
|
||||
#!
|
||||
##! Window
|
||||
@@ -87,9 +90,7 @@ bind = Super+Shift+Alt, Q, exec, hyprctl kill # Forcefully zap a window
|
||||
|
||||
|
||||
# Window split ratio
|
||||
#/# binde = Super, +/-,, # Adjust split ratio
|
||||
binde = Super, Minus, splitratio, -0.1 # [hidden]
|
||||
binde = Super, Equal, splitratio, +0.1 # [hidden]
|
||||
#/# binde = Super, ;/',, # Adjust split ratio
|
||||
binde = Super, Semicolon, splitratio, -0.1 # [hidden]
|
||||
binde = Super, Apostrophe, splitratio, +0.1 # [hidden]
|
||||
# Positioning mode
|
||||
|
||||
@@ -111,7 +111,6 @@ layerrule = animation slide left, quickshell:sidebarLeft
|
||||
layerrule = animation slide top, quickshell:onScreenDisplay
|
||||
layerrule = blur, quickshell:session
|
||||
layerrule = noanim, quickshell:session
|
||||
layerrule = noanim, quickshell:cheatsheet
|
||||
# Launchers need to be FAST
|
||||
layerrule = noanim, quickshell:overview
|
||||
layerrule = noanim, launcher
|
||||
|
||||
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Controls Hyprland's cursor zoom_factor, clamped between 1.0 and 3.0
|
||||
|
||||
# Get current zoom level
|
||||
get_zoom() {
|
||||
hyprctl getoption -j cursor:zoom_factor | jq '.float'
|
||||
}
|
||||
|
||||
# Clamp a value between 1.0 and 3.0
|
||||
clamp() {
|
||||
local val="$1"
|
||||
awk "BEGIN {
|
||||
v = $val;
|
||||
if (v < 1.0) v = 1.0;
|
||||
if (v > 3.0) v = 3.0;
|
||||
print v;
|
||||
}"
|
||||
}
|
||||
|
||||
# Set zoom level
|
||||
set_zoom() {
|
||||
local value="$1"
|
||||
clamped=$(clamp "$value")
|
||||
hyprctl keyword cursor:zoom_factor "$clamped"
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
reset)
|
||||
set_zoom 1.0
|
||||
;;
|
||||
increase)
|
||||
if [[ -z "$2" ]]; then
|
||||
echo "Usage: $0 increase STEP"
|
||||
exit 1
|
||||
fi
|
||||
current=$(get_zoom)
|
||||
new=$(awk "BEGIN { print $current + $2 }")
|
||||
set_zoom "$new"
|
||||
;;
|
||||
decrease)
|
||||
if [[ -z "$2" ]]; then
|
||||
echo "Usage: $0 decrease STEP"
|
||||
exit 1
|
||||
fi
|
||||
current=$(get_zoom)
|
||||
new=$(awk "BEGIN { print $current - $2 }")
|
||||
set_zoom "$new"
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {reset|increase STEP|decrease STEP}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user