summaryrefslogblamecommitdiff
path: root/.config/hypr/hyprland.conf.in
blob: b5c08df144bd57e9292e73428c9bfbb4d6e5f3f1 (plain) (tree)
1
2
3
4
5
6
7
8
9
           
                     
                                                   
                                        

                                                                          
                            
 
                           


                            
                                                  
       
                                   
                                             
                                                
                                  

                            






                                          
                               
                                         
                                         
                                


                            


              
                             


                          
                        
 



                                  
 
                       
                                                    
                                             
                                                    



                                                
                                                
                                               



                                       
                              
                                
                  


               
             
                                
                             
                                       
                 
                                                       
                                

                    
                                                           
                             
 
                              
                           
                             
                          
                         
                           
  









                                       


















                                 
                                                               


















                                               
            








                                                             
                                                                  

                                                         
                                          


                                                        



                                                         
__setup_env
exec-once = lux -S 75
# exec-once = ewd && ewctl $XDG_PICTURES_DIR/bg.jxl
exec-once = wbg $XDG_PICTURES_DIR/bg.png
exec-once = eww daemon && eww open bar-1
exec-once = dbus-daemon --session --address=unix:path=$XDG_RUNTIME_DIR/bus
exec-once = mako

monitor = , highres, auto, 1

layerrule = noanim, overlay

ecosystem {
	no_update_news = yes
}

# Remember to coppy settings to sddm.hyprland.conf
input {
	accel_profile  = "adaptive"
	follow_mouse   = 1
	kb_layout      = mango, mango, us
	kb_variant     = basic, german, basic
	kb_options     = lv3:switch,compose:ralt
	repeat_delay   = 360 # 180
	repeat_rate    = 35
	sensitivity    = 0.8
	natural_scroll = yes

	touchpad {
		disable_while_typing = yes
		natural_scroll       = yes
	}
}

general {
	border_size         = 2
	col.active_border   = rgb(FAA14F)
	col.inactive_border = rgb(64727D)
	gaps_in             = 5
	gaps_out            = 10
}

cursor {
	inactive_timeout = 3
}

decoration {
	blur {
		enabled = yes
		size    = 1
	}

	dim_inactive = yes
	dim_strength = 0.1
	rounding     = 0

	shadow {
		offset       = 4 6
		range        = 20
		render_power = 4
	}
}

animations {
	enabled   = yes
	animation = windows,    1, 3, default, slide
	animation = border,     1, 2, default
	animation = fade,       1, 1, default
	animation = workspaces, 1, 3, default, slide
}

gestures {
	workspace_swipe                    = yes
	workspace_swipe_fingers            = 4
	workspace_swipe_distance           = 400
	workspace_swipe_min_speed_to_force = 10
}

misc {
	disable_hyprland_logo = true
	disable_splash_rendering = true
	enable_swallow = false
	swallow_regex = ^(foot)$
	vfr = true
}

$modkey = SUPER

# WM behavior
bind = $modkey, F, fullscreen, 0
bind = $modkey, Q, killactive
bind = $modkey SHIFT, F, togglefloating

# Global programs
__bind(C, emacsclient -que '(popup-command-full-calc)')
__bind(E, emacsclient -ca emacs)
__bind(M, foot aerc)
__bind(W, firefox)
__bind(return, foot)
__bind(space, fuzzel -I --log-level=warning --show-actions)
__bind(     , print, scst)
__bind(SHIFT, print, scst -f)

# Prompt-/Dmenu-style programs
__submap(prompt, P, [
	__subbind(K, chkb)
	__subbind(M, woman)
	__subbind(P, vlt get)
	__subbind(T, chtz)
	__subbind(U, uni)
	__subbind(W, nmgui)
])

# Change focused window
bind = $modkey, H,     movefocus, l
bind = $modkey, J,     movefocus, d
bind = $modkey, K,     movefocus, u
bind = $modkey, L,     movefocus, r
bind = $modkey, left,  movefocus, l
bind = $modkey, down,  movefocus, d
bind = $modkey, up,    movefocus, u
bind = $modkey, right, movefocus, r

# Switch workspaces with modkey + [0-9]
bind = $modkey,  0, workspace,  1
bind = $modkey,  1, workspace,  2
bind = $modkey,  2, workspace,  3
bind = $modkey,  3, workspace,  4
bind = $modkey,  4, workspace,  5
bind = $modkey,  5, workspace,  6
bind = $modkey,  6, workspace,  7
bind = $modkey,  7, workspace,  8
bind = $modkey,  8, workspace,  9
bind = $modkey,  9, workspace, 10
bind = $modkey, 10, workspace,  1
bind = $modkey, 11, workspace,  2
bind = $modkey, 12, workspace,  3
bind = $modkey, 13, workspace,  4
bind = $modkey, 14, workspace,  5
bind = $modkey, 15, workspace,  6
bind = $modkey, 16, workspace,  7
bind = $modkey, 17, workspace,  8
bind = $modkey, 18, workspace,  9
bind = $modkey, 19, workspace, 10

# Move active window to a workspace with modkey + SHIFT + [0-9]
bind = $modkey CONTROL,  0, movetoworkspace,  1
bind = $modkey CONTROL,  1, movetoworkspace,  2
bind = $modkey CONTROL,  2, movetoworkspace,  3
bind = $modkey CONTROL,  3, movetoworkspace,  4
bind = $modkey CONTROL,  4, movetoworkspace,  5
bind = $modkey CONTROL,  5, movetoworkspace,  6
bind = $modkey CONTROL,  6, movetoworkspace,  7
bind = $modkey CONTROL,  7, movetoworkspace,  8
bind = $modkey CONTROL,  8, movetoworkspace,  9
bind = $modkey CONTROL,  9, movetoworkspace, 10
bind = $modkey CONTROL, 10, movetoworkspace,  1
bind = $modkey CONTROL, 11, movetoworkspace,  2
bind = $modkey CONTROL, 12, movetoworkspace,  3
bind = $modkey CONTROL, 13, movetoworkspace,  4
bind = $modkey CONTROL, 14, movetoworkspace,  5
bind = $modkey CONTROL, 15, movetoworkspace,  6
bind = $modkey CONTROL, 16, movetoworkspace,  7
bind = $modkey CONTROL, 17, movetoworkspace,  8
bind = $modkey CONTROL, 18, movetoworkspace,  9
bind = $modkey CONTROL, 19, movetoworkspace, 10

# Media keys
__binde(, xf86audiomute,        amixer -q sset Master toggle)
__binde(, xf86audiolowervolume, amixer -q sset Master 5%-)
__binde(, xf86audioraisevolume, amixer -q sset Master 5%+)

__binde(,     xf86monbrightnessup,   lux -I 5)
__bind(SHIFT, xf86monbrightnessup,   lux -S 50)
__binde(,     xf86monbrightnessdown, lux -D 5)
__bind(SHIFT, xf86monbrightnessdown, lux -s 0)

# Settings key on Framework laptop
__binde(, xf86audiomedia,
          foot sh -c 'cd ~/.config/hypr && nvim hyprland.conf.in')

# Scroll through existing workspaces with modkey + scroll
bind = $modkey, mouse_down, workspace, e+1
bind = $modkey, mouse_up,   workspace, e-1

# Move/resize windows with modkey + LMB/RMB and dragging
bindm = $modkey, mouse:272, movewindow
bindm = $modkey, mouse:273, resizewindow

# Open manpages in floating windows
windowrulev2 = float,        class:^(org\.pwmt\.zathura)$
windowrulev2 = size 50% 90%, class:^(org\.pwmt\.zathura)$
windowrulev2 = center,       class:^(org\.pwmt\.zathura)$