personal dotfiles: my Hyprland config
hyprland: more setup
See https://github.com/hyprwm/Hyprland/pull/4489 for workspace_swipe_touch
Zach DeCook 2024-01-20
parent 1d171e7 · commit 160f7c5
-rw-r--r--.config/hypr/hyprland.conf32
-rw-r--r--.config/waybar/config21
-rw-r--r--.config/waybar/style.css3
3 files changed, 41 insertions, 15 deletions
diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf
index 5d16c42..d69bfe5 100644
--- a/.config/hypr/hyprland.conf
+++ b/.config/hypr/hyprland.conf
@@ -119,7 +119,13 @@ master {
gestures {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
- workspace_swipe = off
+ workspace_swipe = on
+ workspace_swipe_cancel_ratio = 0.5
+ workspace_swipe_min_speed_to_force = 5
+ workspace_swipe_touch = 1
+ workspace_swipe_invert = off
+ workspace_swipe_forever = on
+ #workspace_swipe_direction_lock = on
}
misc {
@@ -196,10 +202,24 @@ bind = $mainMod, mouse_up, workspace, e-1
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
-bind = , XF86AudioRaiseVolume, exec, $menu
-#bind = , XF86AudioLowerVolume, exec, 'sh -c "pkill -f $keyboard || $keyboard $keyboard_args"'
-#bind = , XF86AudioLowerVolume, exec, pkill -f wvkbd-mobintl \|\| wvkbd-mobintl -H 160 -O | swipeB
-#bind = , XF86AudioLowerVolume, exec, pkill -f $keyboard
-bind = , XF86AudioLowerVolume, exec, kill -SIGRTMIN $(pgrep wvkbd-mobintl)
+#bind = , XF86AudioRaiseVolume, exec, $menu
+bind = , XF86AudioRaiseVolume, exec, hyprctl dispatch submap menu; $menu; hyprctl dispatch submap reset
+bind = , XF86AudioLowerVolume, exec, pkill -SIGRTMIN -f wvkbd-mobintl & pkill -SIGRTMIN suggpicker
#bind = , XF86AudioLowerVolume, exec, pkill -SIGRTMIN -f wvkbd-mobintl && pkill -SIGRTMIN -f suggpicker
+# toggle screen on/off
+bind = , XF86PowerOff, exec, hyprctl -i 0 dispatch dpms $(hyprctl -j -i 0 monitors | jq -r 'first|.dpmsStatus|if . then "off" else "on" end')
+# TODO: disable input on screen off??
+# TODO: lock screen on screen off?
+
+# menu submap
+submap=menu
+binde=,XF86AudioRaiseVolume,exec,wtype -k up
+binde=, XF86AudioLowerVolume,exec,wtype -k down
+bind=,XF86PowerOff, exec, wtype -k return
+# fallback:reset the submap when you release the power button
+bindr=,XF86PowerOff,submap,reset
+# use shift+escs to go back to the global submap
+bind=SHIFT,escape,submap,reset
+# will reset the submap, meaning end the current one and return to the global one
+submap=reset
diff --git a/.config/waybar/config b/.config/waybar/config
index 8322694..6ea7b82 100644
--- a/.config/waybar/config
+++ b/.config/waybar/config
@@ -3,9 +3,9 @@
// "width": 1080, // Waybar width
"spacing": 0, // Gaps between modules (4px)
// Choose the order of the modules
- "modules-left": ["sway/workspaces", "hyprland/workspaces", "sway/mode", "sway/scratchpad", "custom/media"],
+ "modules-left": ["sway/workspaces", "hyprland/workspaces", "sway/mode", "hyprland/submap", "sway/scratchpad", "custom/media"],
"modules-center": [],
- "modules-right": ["network","battery", "pulseaudio","tray"],
+ "modules-right": ["temperature", "network", "battery", "pulseaudio", "tray"],
// Modules configuration
// "sway/workspaces": {
// "disable-scroll": true,
@@ -90,8 +90,9 @@
// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
"critical-threshold": 80,
// "format-critical": "{temperatureC}°C {icon}",
- "format": "{temperatureC}°C {icon}",
- "format-icons": ["", "", ""]
+ "format": "{icon}",
+ "format-alt": "{temperatureC}°C {icon}",
+ "format-icons": ["", "", "", "", ""]
},
"backlight": {
// "device": "acpi_video1",
@@ -104,13 +105,17 @@
"warning": 30,
"critical": 15
},
- "format": "{icon} ",
- "format-charging": "{capacity}% ",
+ "format": "{icon}",
+ // "format-charging": "{icon} ",
"format-plugged": "{capacity}% ",
- "format-alt": "{capacity}% {icon} ",
+ "format-alt": "{capacity}% {icon}",
// "format-good": "", // An empty format will hide the module
// "format-full": "",
- "format-icons": ["", "", "", "", ""]
+ "format-icons": {
+ // "default":["", "", "", "", ""],
+ "default": ["󰁺" ,"󰁻" ,"󰁼" ,"󰁽" ,"󰁾" ,"󰁿" ,"󰂀" ,"󰂁" ,"󰂂" ,"󰁹"],
+ "charging":["󰢜 ","󰂆 ","󰂇 ","󰂈 ","󰢝 ","󰂉 ","󰢞 ","󰂊 ","󰂋 ","󰂅 "],
+ },
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
diff --git a/.config/waybar/style.css b/.config/waybar/style.css
index 2376581..031a74e 100644
--- a/.config/waybar/style.css
+++ b/.config/waybar/style.css
@@ -58,7 +58,8 @@ button:hover {
background: inherit;
}
-#workspaces button.focused {
+#workspaces button.focused,
+#workspaces button.active {
background-color: #64727D;
box-shadow: inset 0 -3px #ffffff;
}