nix-config/hyprland/.config/hypr/hyprland.conf
Donovan Glover 4a03bc4164
fix: Don't blank cursor at the hyprland level
This fixes an issue where the cursor would occasionally show in
fullscreen applications where the cursor was not expected to show.

The cursor will still disappear when using kitty.
2023-05-11 21:31:31 -04:00

220 lines
6.9 KiB
Plaintext

# Change the scale of the monitor
monitor=eDP-1,preferred,auto,1
# Make it easy to plug in other monitors
monitor=,preferred,auto,1
#monitor=,highrr,auto,1 # Use the highest refresh rate
#monitor=,highres,auto,1 # Use the highest resolution
# Execute your favorite apps at launch
exec-once = swaybg --mode fill --image "$(fd -d 1 wallpaper.png /nix/store/)"
exec-once = wpctl set-volume @DEFAULT_AUDIO_SINK@ 20%
exec-once = sleep 0.5 && waybar
exec-once = fcitx5 # Japanese input support
exec-once = mullvad-vpn
exec-once = wl-paste -p --watch wl-copy -pc # Disable middle click paste
exec-once = udiskie # Auto-mount drives
# exec-once = hyprland-autoname-workspaces --dedup
# exec-once = play ~/start.flac
# Some default env vars.
env = XCURSOR_SIZE,24
env = BROWSER,librewolf
env = GTK_IM_MODULE,fcitx
env = QT_IM_MODULE,fcitx
env = XMODIFIERS,@im=fcitx
env = SDL_IM_MODULE,fcitx
env = GLFW_IM_MODULE,ibus
input {
kb_layout = us
accel_profile = flat
follow_mouse = 1
touchpad {
natural_scroll = yes
disable_while_typing = no
}
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
}
general {
gaps_in = 0
gaps_out = 0
border_size = 1
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
layout = master
resize_on_border = yes
}
decoration {
rounding = 0
blur = yes
#inactive_opacity = 0.3
blur_size = 3
blur_passes = 1
blur_new_optimizations = yes
drop_shadow = yes
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)
}
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
animation = specialWorkspace, 1, 6, default
}
dwindle {
preserve_split = yes
no_gaps_when_only = yes
special_scale_factor = 0.95
}
master {
new_is_master = yes
new_on_top = yes
mfact = 0.65
special_scale_factor = 0.95
no_gaps_when_only = yes
}
gestures {
workspace_swipe = yes
}
device:synps/2-synaptics-touchpad {
sensitivity = 0.75
accel_profile = flat
natural_scroll = yes
disable_while_typing = no
}
device:tpps/2-elan-trackpoint {
sensitivity = 0.5
accel_profile = flat
}
bind = SUPER, Z, exec, rofi -show
bind = SUPER_SHIFT, Z, workspace, empty
bind = SUPER_SHIFT, Z, exec, rofi -show
bind = SUPER_SHIFT, Return, exec, kitty
bind = SUPER, Tab, workspace, e+1
bind = SUPER_SHIFT, Tab, workspace, e-1
bind = SUPER, Q, killactive,
bind = SUPER, P, exec, grim -g "$(slurp)"
bind = , Print, exec, grim && dunstify Screenshot Captured.
bind = SUPER_ALT, delete, exit
bind = SUPER, V, togglefloating,
bind = SUPER, V, centerwindow,
bind = SUPER, O, exec, killall -SIGUSR1 .waybar-wrapped
bind = SUPER, X, pin
bind = SUPER, F, fullscreen, 1
bind = SUPER_SHIFT, F, fullscreen
bind = SUPER, bracketright, changegroupactive, f
bind = SUPER, bracketleft, changegroupactive, b
bind = SUPER, U, exec, ~/.config/hypr/toggle-layout.sh
bind = SUPER, S, togglespecialworkspace
bind = SUPER_SHIFT, S, movetoworkspace, special
bind = SUPER_SHIFT, S, togglespecialworkspace
bind = SUPER, Return, exec, ~/.config/hypr/swapmaster.sh
bind = SUPER, backslash, exec, ~/.config/hypr/focusmaster.sh
bind = SUPER, J, layoutmsg, cyclenext
bind = SUPER, K, layoutmsg, cycleprev
bind = SUPER_SHIFT, J, layoutmsg, swapnext
bind = SUPER_SHIFT, K, layoutmsg, swapprev
bind = SUPER, left, layoutmsg, orientationleft
bind = SUPER, right, layoutmsg, orientationright
bind = SUPER, up, layoutmsg, orientationtop
bind = SUPER, down, layoutmsg, orientationbottom
bind = SUPER, C, layoutmsg, orientationcenter
bind = SUPER, H, layoutmsg, addmaster
bind = SUPER, L, layoutmsg, removemaster
bind = SUPER_SHIFT, H, splitratio, -0.05
bind = SUPER_SHIFT, L, splitratio, +0.05
# Group keybinds with super+alt
bind = SUPER_ALT, Return, togglegroup
bind = SUPER_ALT, H, moveintogroup, l
bind = SUPER_ALT, L, moveintogroup, r
bind = SUPER_ALT, K, moveintogroup, u
bind = SUPER_ALT, J, moveintogroup, d
bind = SUPER_ALT, semicolon, moveoutofgroup
bind = SUPER_ALT, apostrophe, lockgroups, toggle
# Switch workspaces with super + [0-9]
bind = SUPER, 1, workspace, 1
bind = SUPER, 2, workspace, 2
bind = SUPER, 3, workspace, 3
bind = SUPER, 4, workspace, 4
bind = SUPER, 5, workspace, 5
bind = SUPER, 6, workspace, 6
bind = SUPER, 7, workspace, 7
bind = SUPER, 8, workspace, 8
bind = SUPER, 9, workspace, 9
bind = SUPER, 0, workspace, 10
# Move active window to a workspace with super + shift + [0-9]
bind = SUPER_SHIFT, 1, movetoworkspace, 1
bind = SUPER_SHIFT, 2, movetoworkspace, 2
bind = SUPER_SHIFT, 3, movetoworkspace, 3
bind = SUPER_SHIFT, 4, movetoworkspace, 4
bind = SUPER_SHIFT, 5, movetoworkspace, 5
bind = SUPER_SHIFT, 6, movetoworkspace, 6
bind = SUPER_SHIFT, 7, movetoworkspace, 7
bind = SUPER_SHIFT, 8, movetoworkspace, 8
bind = SUPER_SHIFT, 9, movetoworkspace, 9
bind = SUPER_SHIFT, 0, movetoworkspace, 10
# Toggle workspaces with super + ctrl + [0-9]
bind = SUPER_CTRL, 1, exec, ~/.config/hypr/tags.sh 1
bind = SUPER_CTRL, 2, exec, ~/.config/hypr/tags.sh 2
bind = SUPER_CTRL, 3, exec, ~/.config/hypr/tags.sh 3
bind = SUPER_CTRL, 4, exec, ~/.config/hypr/tags.sh 4
bind = SUPER_CTRL, 5, exec, ~/.config/hypr/tags.sh 5
bind = SUPER_CTRL, 6, exec, ~/.config/hypr/tags.sh 6
bind = SUPER_CTRL, 7, exec, ~/.config/hypr/tags.sh 7
bind = SUPER_CTRL, 8, exec, ~/.config/hypr/tags.sh 8
bind = SUPER_CTRL, 9, exec, ~/.config/hypr/tags.sh 9
bind = SUPER_CTRL, 0, exec, ~/.config/hypr/tags.sh 10
# TODO: Use 0 to show windows in all workspaces
layerrule = blur,panel
layerrule = blur,rofi
# Scroll through existing workspaces with super + scroll
bind = SUPER, mouse_down, workspace, e+1
bind = SUPER, mouse_up, workspace, e-1
# Move/resize windows with super + LMB/RMB and dragging
bindm = SUPER, mouse:272, movewindow
bindm = SUPER, mouse:273, resizewindow
# Change volume with keys
# TODO: Change notification once at 0/100%
bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && notify-send -t 2000 "Muted" "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
bindl=, XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+ && notify-send -t 2000 "Raised volume to" "$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | tail -c 3)%"
bindl=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- && notify-send -t 2000 "Lowered volume to" "$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | tail -c 3)%"
bindl=, XF86MonBrightnessDown, exec, brightnessctl set 5%- && notify-send -t 2000 "Decreased brightness to" "$(brightnessctl get)"
bindl=, XF86MonBrightnessUp, exec, brightnessctl set +5% && notify-send -t 2000 "Increased brightness to" "$(brightnessctl get)"
bind = WIN, F1, exec, ~/.config/hypr/gamemode.sh
misc {
disable_hyprland_logo = yes
animate_mouse_windowdragging = yes
}
# vim:syn=bash