summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbh <qn+git@epicurus.dev>2026-03-11 14:08:24 +0800
committerbh <qn+git@epicurus.dev>2026-03-11 14:08:24 +0800
commit7e49e89dfa5fa3abb7351e3d4874d2d7302695d1 (patch)
treec7e2a5fb6591049013a3d9ecbc60634ff8523c4d
parent842dc09e9d904114058cf0bf1a7650bc32aff615 (diff)
Decorate hyprland.conf
-rw-r--r--hypr/.config/hypr/hyprland.conf117
1 files changed, 58 insertions, 59 deletions
diff --git a/hypr/.config/hypr/hyprland.conf b/hypr/.config/hypr/hyprland.conf
index 3078daf..1070a73 100644
--- a/hypr/.config/hypr/hyprland.conf
+++ b/hypr/.config/hypr/hyprland.conf
@@ -1,26 +1,26 @@
-# ██╗░░██╗██╗░░░██╗██████╗░██████╗░██╗░░░░░░█████╗░███╗░░██╗██████╗░
-# ██║░░██║╚██╗░██╔╝██╔══██╗██╔══██╗██║░░░░░██╔══██╗████╗░██║██╔══██╗
-# ███████║░╚████╔╝░██████╔╝██████╔╝██║░░░░░███████║██╔██╗██║██║░░██║
-# ██╔══██║░░╚██╔╝░░██╔═══╝░██╔══██╗██║░░░░░██╔══██║██║╚████║██║░░██║
-# ██║░░██║░░░██║░░░██║░░░░░██║░░██║███████╗██║░░██║██║░╚███║██████╔╝
-# ╚═╝░░╚═╝░░░╚═╝░░░╚═╝░░░░░╚═╝░░╚═╝╚══════╝╚═╝░░╚═╝╚═╝░░╚══╝╚═════╝░
+# ██╗ ██╗██╗ ██╗██████╗ ██████╗ ██╗ ███████╗ ██████╗ ███╗ ██╗
+# ██║ ██║╚██╗ ██╔╝██╔══██╗██╔══██╗██║ ██╔════╝██╔═══██╗████╗ ██║
+# ███████║ ╚████╔╝ ██████╔╝██████╔╝██║ █████╗ ██║ ██║██╔██╗ ██║
+# ██╔══██║ ╚██╔╝ ██╔═══╝ ██╔══██╗██║ ██╔══╝ ██║ ██║██║╚██╗██║
+# ██║ ██║ ██║ ██║ ██║ ██║███████╗███████╗╚██████╔╝██║ ╚████║
+# ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚══════╝ ╚═════╝ ╚═╝ ╚═══╝
#
# █▄▄ █░█ ▀ █▀ █▀▀ █▀█ █▄░█ █▀▀ █ █▀▀ █▀▀ █▀█ █▀█ █░█ █▄█ █▀█ █▀█ █░░ ▄▀█ █▄░█ █▀▄
-# █▄█ █▀█ ░ ▄█ █▄▄ █▄█ █░▀█ █▀░ █ █▄█ █▀░ █▄█ █▀▄ █▀█ ░█░ █▀▀ █▀▄ █▄▄ █▀█ █░▀█ █▄▀
+# █▄█ █▀█ ░ ▄█ █▄▄ █▄█ █░▀█ █▀░ █ █▄▄ █▀░ █▄█ █▀▄ █▀█ ░█░ █▀▀ █▀▄ █▄▄ █▀█ █░▀█ █▄▀
#
-# Translated from bspwm + sxhkd configuration
+# 📎 Translated from bspwm + sxhkd configuration
-#################
-### MONITORS ###
-#################
+# ╔════════════════════════════════════════╗
+# ║ 🖥 MONITORS ║
+# ╚════════════════════════════════════════╝
monitor=,preferred,auto,auto
-###################
-### MY PROGRAMS ###
-###################
+# ╔════════════════════════════════════════╗
+# ║ 📦 MY PROGRAMS ║
+# ╚════════════════════════════════════════╝
$terminal = kitty
$fileManager = dolphin
@@ -28,9 +28,9 @@ $menu = rofi -modi drun -show drun -config ~/.config/rofi/rofidmenu.rasi
$browser = firefox
-#################
-### AUTOSTART ###
-#################
+# ╔════════════════════════════════════════╗
+# ║ ⚡ AUTOSTART ║
+# ╚════════════════════════════════════════╝
exec-once = kitty
exec-once = kitty
@@ -39,10 +39,9 @@ exec-once = hyprpaper
exec-once = dunst
exec-once = wl-paste --watch cliphist store
-
-#############################
-### ENVIRONMENT VARIABLES ###
-#############################
+# ╔════════════════════════════════════════╗
+# ║ 🌿 ENVIRONMENT VARIABLES ║
+# ╚════════════════════════════════════════╝
env = XCURSOR_THEME,Vimix-cursors
env = XCURSOR_SIZE,24
@@ -50,20 +49,20 @@ env = HYPRCURSOR_THEME,Vimix-cursors
env = HYPRCURSOR_SIZE,24
-###############
-### DEVICE ####
-###############
+# ╔════════════════════════════════════════╗
+# ║ ⌨ DEVICE ║
+# ╚════════════════════════════════════════╝
device {
name = at-translated-set-2-keyboard
enabled = false
}
-#####################
-### LOOK AND FEEL ###
-#####################
+# ╔════════════════════════════════════════╗
+# ║ 🎨 LOOK AND FEEL ║
+# ╚════════════════════════════════════════╝
-# Colors (from bspwm config)
+# 🎨 Colors (ported from bspwm)
$darkcyan = rgb(007575)
$lightcyan = rgb(1ebaba)
$lightercyan = rgb(19e0e0)
@@ -138,9 +137,9 @@ misc {
}
-#############
-### INPUT ###
-#############
+# ╔════════════════════════════════════════╗
+# ║ 🖱 INPUT ║
+# ╚════════════════════════════════════════╝
input {
# kb_layout = us,us,cn,jp,ru
@@ -171,53 +170,53 @@ device {
}
-####################
-### KEYBINDINGSS ###
-####################
+# ╔════════════════════════════════════════╗
+# ║ ⌨ KEYBINDINGS ║
+# ╚════════════════════════════════════════╝
$mainMod = SUPER
-# Applications
+# 🚀 Applications
bind = $mainMod, Return, exec, $terminal
bind = $mainMod ALT, Return, exec, kitty --class floating
bind = $mainMod, W, exec, $browser
bind = $mainMod, D, exec, $menu
bind = $mainMod, E, exec, emacs
-# Scripts
+# 📜 Scripts
bind = $mainMod, V, exec, ~/.config/rofi/scripts/clipboard-wayland.sh
bind = $mainMod, S, exec, ~/.config/hypr/scripts/screenshot
bind = $mainMod SHIFT, S, exec, ~/.config/hypr/scripts/screenshot snip
bind = $mainMod, slash, exec, ~/Scripts/blur-lock
-# Window Management
+# 🪟 Window Management
bind = $mainMod SHIFT, C, killactive,
bind = $mainMod SHIFT, R, exec, hyprctl reload
bind = $mainMod, F, fullscreen, 0
bind = $mainMod, M, fullscreen, 1
-# Move Focus (Vim-style)
+# 👁 Move Focus (Vim-style)
bind = $mainMod, H, movefocus, l
bind = $mainMod, L, movefocus, r
bind = $mainMod, K, movefocus, u
bind = $mainMod, J, movefocus, d
-# Move Window (Vim-style)
+# ↔ Move Window (Vim-style)
bind = $mainMod SHIFT, H, movewindow, l
bind = $mainMod SHIFT, L, movewindow, r
bind = $mainMod SHIFT, K, movewindow, u
bind = $mainMod SHIFT, J, movewindow, d
-# Preselection / Split Direction (Ctrl+Super+hjkl)
+# ✂ Preselection / Split Direction (Ctrl+Super+hjkl)
bind = $mainMod CTRL, H, layoutmsg, preselect l
bind = $mainMod CTRL, L, layoutmsg, preselect r
bind = $mainMod CTRL, K, layoutmsg, preselect u
bind = $mainMod CTRL, J, layoutmsg, preselect d
-# Swap with last window
+# 🔄 Swap with last window
bind = $mainMod CTRL, M, swapnext, prev
-# Switch Workspaces (Dvorak layout keys)
+# 🔢 Switch Workspaces (Dvorak layout keys)
# Note: These keybinds match Dvorak layout from sxhkd config
bind = $mainMod, ampersand, workspace, 1 # 一
bind = $mainMod, bracketleft, workspace, 2 # 二
@@ -231,7 +230,7 @@ bind = $mainMod, plus, workspace, 9 # 九
bind = $mainMod, bracketright, workspace, 10 # 十
bind = $mainMod, exclam, workspace, 11 # 󱉼
-# Move to Different Workspaces (Dvorak layout keys)
+# 📦 Move to Workspace (Dvorak layout keys)
bind = $mainMod SHIFT, ampersand, movetoworkspace, 1
bind = $mainMod SHIFT, bracketleft, movetoworkspace, 2
bind = $mainMod SHIFT, braceleft, movetoworkspace, 3
@@ -244,23 +243,23 @@ bind = $mainMod SHIFT, plus, movetoworkspace, 9
bind = $mainMod SHIFT, bracketright, movetoworkspace, 10
bind = $mainMod SHIFT, exclam, movetoworkspace, 11
-# Scroll through existing workspaces with mainMod + scroll
+# 🖱 Scroll Through Workspaces (mainMod + scroll)
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
-# Move/resize windows with mainMod + LMB/RMB and dragging
+# 🖱 Move / Resize Windows (mainMod + LMB/RMB)
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
-# Media Keys
-bindel = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5% && VOLUME=$(pactl get-sink-volume @DEFAULT_SINK@ | grep -Po '\d+%' | head -1) && dunstify " Volume: $VOLUME" -h int:value:"${VOLUME%\%}" -r 2593 -t 1000
-bindel = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5% && VOLUME=$(pactl get-sink-volume @DEFAULT_SINK@ | grep -Po '\d+%' | head -1) && dunstify " Volume: $VOLUME" -h int:value:"${VOLUME%\%}" -r 2593 -t 1000
+# 🎵 Media Keys
+bindel = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5% && VOLUME=$(pactl get-sink-volume @DEFAULT_SINK@ | grep -Po '\d+%' | head -1) && dunstify " Volume: $VOLUME" -h int:value:"${VOLUME%\%}" -r 2593 -t 1000
+bindel = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5% && VOLUME=$(pactl get-sink-volume @DEFAULT_SINK@ | grep -Po '\d+%' | head -1) && dunstify " Volume: $VOLUME" -h int:value:"${VOLUME%\%}" -r 2593 -t 1000
bindl = , XF86AudioMute, exec, ~/.config/hypr/scripts/mute
-##################
-### LAYER RULES ###
-##################
+# ╔════════════════════════════════════════╗
+# ║ 🪟 LAYER RULES ║
+# ╚════════════════════════════════════════╝
layerrule = blur on, match:namespace rofi
layerrule = ignore_alpha 0.5, match:namespace rofi
@@ -268,25 +267,25 @@ layerrule = blur on, match:namespace quickshell*
layerrule = ignore_alpha 0.5, match:namespace quickshell*
-##############################
-### WINDOWS AND WORKSPACES ###
-##############################
+# ╔════════════════════════════════════════╗
+# ║ 🗂 WINDOWS AND WORKSPACES ║
+# ╚════════════════════════════════════════╝
-# Send Firefox to workspace 2
+# 🦊 Firefox → workspace 2
windowrule = match:class ^(firefox)$, workspace 2
-# Send Emacs to workspace 3
+# 📝 Emacs → workspace 3
windowrule = match:class ^(Emacs)$, workspace 3
-# Float windows with class "floating"
+# 🎈 Float windows with class "floating"
windowrule = match:class ^(floating)$, float on
-# Dropdown terminal (yakuake-style)
+# 💻 Dropdown terminal (yakuake-style)
windowrule = match:class ^(quickshell-dropdown)$, float on
windowrule = match:class ^(quickshell-dropdown)$, size 100% 40%
windowrule = match:class ^(quickshell-dropdown)$, move 0 25
-# Workspace Names (Chinese characters from bspwm)
+# 🗂 Workspace Names (Chinese characters from bspwm)
exec-once = hyprctl dispatch renameworkspace "1 一"
exec-once = hyprctl dispatch renameworkspace "2 二"
exec-once = hyprctl dispatch renameworkspace "3 三"