Files
dotfiles/dot_config/hypr/hyprland.d.lua/general.lua
T
mpuchstein d53bc5dadb hypr: migrate to Lua config (v0.55) with custom scroll layouts
Replace hyprlang hyprland.d/ with Lua-based hyprland.d.lua/ modules:
- theme.lua.tmpl: apex-neon + apex-aeon color tables, col.* bracket keys
- general.lua: config, bezier curves, animations (bezier=/spring= fixed)
- monitors.lua.tmpl, workspaces.lua.tmpl, input.lua.tmpl, rules.lua.tmpl
- keybinds.lua.tmpl: +/SHIFT/CTRL format, monitor focus (Super+I/O),
  scroll binds for custom layouts
- layout.lua: master-scroll, slave-master-scroll, center-master-scroll
  (peek-hint scrolling slave columns, focus-triggered auto-scroll)

Entry point uses package.path + require() for per-file error isolation.
Old hyprlang configs preserved under hyprland.conf.bak/.
Add .luarc.json for hyprland stub autocompletion in editors.
2026-05-12 01:00:42 +02:00

86 lines
3.4 KiB
Lua

hl.config({
general = {
gaps_in = 5,
gaps_out = { top = 5, left = 5, right = 5, bottom = 5 },
border_size = 2,
layout = "master",
allow_tearing = false
},
render = {
new_render_scheduling = true
},
cursor = {
hide_on_key_press = true,
persistent_warps = true,
warp_on_change_workspace = true,
enable_hyprcursor = true,
sync_gsettings_theme = true,
no_hardware_cursors = true
},
decoration = {
rounding = 5,
active_opacity = 1.0,
inactive_opacity = 1.0,
dim_modal = true,
dim_inactive = true,
dim_strength = 0.1,
blur = {
enabled = true,
size = 3,
passes = 1,
vibrancy = 0.1696,
popups = true -- NEW: Blur for menus and tooltips
},
shadow = {
enabled = false,
range = 4,
render_power = 3,
-- color integrated via theme
},
glow = { -- NEW in v0.55
enabled = true,
range = 10,
-- color integrated via theme
}
},
misc = {
force_default_wallpaper = -1,
disable_hyprland_logo = false,
vrr = 2,
mouse_move_enables_dpms = true,
key_press_enables_dpms = true,
layers_hog_keyboard_focus = true,
mouse_move_focuses_monitor = true
},
ecosystem = {
enforce_permissions = true -- NEW: Enable Android-style permissions
}
})
-- Curves
hl.curve("easeOutQuint", { type = "bezier", points = { {0.23, 1}, {0.32, 1} } })
hl.curve("easeInOutCubic", { type = "bezier", points = { {0.65, 0.05}, {0.36, 1} } })
hl.curve("linear", { type = "bezier", points = { {0, 0}, {1, 1} } })
hl.curve("almostLinear", { type = "bezier", points = { {0.5, 0.5}, {0.75, 1.0} } })
hl.curve("quick", { type = "bezier", points = { {0.15, 0}, {0.1, 1} } })
hl.curve("bouncy", { type = "spring", mass = 1, stiffness = 100, dampening = 15 }) -- NEW: Spring curve
-- Animations
hl.animation({ leaf = "global", enabled = true, speed = 10, bezier = "default" })
hl.animation({ leaf = "border", enabled = true, speed = 5.39, bezier = "easeOutQuint" })
hl.animation({ leaf = "windows", enabled = true, speed = 4.79, bezier = "easeOutQuint" })
hl.animation({ leaf = "windowsIn", enabled = true, speed = 4.1, bezier = "easeOutQuint", style = "popin 87%" })
hl.animation({ leaf = "windowsOut", enabled = true, speed = 1.49, bezier = "linear", style = "popin 87%" })
hl.animation({ leaf = "fadeIn", enabled = true, speed = 1.73, bezier = "almostLinear" })
hl.animation({ leaf = "fadeOut", enabled = true, speed = 1.46, bezier = "almostLinear" })
hl.animation({ leaf = "fade", enabled = true, speed = 3.03, bezier = "quick" })
hl.animation({ leaf = "layers", enabled = true, speed = 3.81, bezier = "easeOutQuint" })
hl.animation({ leaf = "layersIn", enabled = true, speed = 4, bezier = "easeOutQuint", style = "fade" })
hl.animation({ leaf = "layersOut", enabled = true, speed = 1.5, bezier = "linear", style = "fade" })
hl.animation({ leaf = "fadeLayersIn", enabled = true, speed = 1.79, bezier = "almostLinear" })
hl.animation({ leaf = "fadeLayersOut", enabled = true, speed = 1.39, bezier = "almostLinear" })
hl.animation({ leaf = "workspaces", enabled = true, speed = 1.94, bezier = "almostLinear", style = "fade" })
hl.animation({ leaf = "workspacesIn", enabled = true, speed = 1.21, bezier = "almostLinear", style = "fade" })
hl.animation({ leaf = "workspacesOut", enabled = true, speed = 1.94, bezier = "almostLinear", style = "fade" })
hl.animation({ leaf = "specialWorkspace", enabled = true, speed = 1.5, spring = "bouncy", style = "slidevert" })