164 lines
		
	
	
	
		
			5.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			164 lines
		
	
	
	
		
			5.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| 
 | |
| # TODO Do not hardcode this path
 | |
| plugin = /nix/store/afivj8v5kfdsadxs4pa45vh0y65s3ajm-hy3-hl0.49.0/lib/libhy3.so
 | |
| 
 | |
| general:layout = hy3
 | |
| 
 | |
| plugin {
 | |
|   hy3 {
 | |
|     # disable gaps when only one window is onscreen
 | |
|     # 0 - always show gaps
 | |
|     # 1 - hide gaps with a single window onscreen
 | |
|     # 2 - 1 but also show the window border
 | |
|     no_gaps_when_only = 1 # default: 0
 | |
| 
 | |
|     # policy controlling what happens when a node is removed from a group,
 | |
|     # leaving only a group
 | |
|     # 0 = remove the nested group
 | |
|     # 1 = keep the nested group
 | |
|     # 2 = keep the nested group only if its parent is a tab group
 | |
|     node_collapse_policy = 2 # default: 2
 | |
| 
 | |
|     # offset from group split direction when only one window is in a group
 | |
|     group_inset = 10 # default: 10
 | |
| 
 | |
|     # if a tab group will automatically be created for the first window spawned in a workspace
 | |
|     tab_first_window = false
 | |
| 
 | |
|     # tab group settings
 | |
|     tabs {
 | |
|       # height of the tab bar
 | |
|       height = 10 # default: 22
 | |
| 
 | |
|       # padding between the tab bar and its focused node
 | |
|       padding = 0 # default: 6
 | |
| 
 | |
|       # the tab bar should animate in/out from the top instead of below the window
 | |
|       from_top = false # default: false
 | |
| 
 | |
|       # radius of tab bar corners
 | |
|       radius = 0 # default: 6
 | |
| 
 | |
|       # tab bar border width
 | |
|       border_width = 2 # default: 2
 | |
| 
 | |
|       # render the window title on the bar
 | |
|       render_text = false # default: true
 | |
| 
 | |
|       # center the window title
 | |
|       text_center = true # default: true
 | |
| 
 | |
|       # font to render the window title with
 | |
|       text_font = Sans # default: Sans
 | |
| 
 | |
|       # height of the window title
 | |
|       text_height = 8 # default: 8
 | |
| 
 | |
|       # left padding of the window title
 | |
|       text_padding = 3 # default: 3
 | |
| 
 | |
|       # active tab bar segment colors
 | |
|       #col.active = <color> # default: rgba(33ccff40)
 | |
|       #col.active.border = <color> # default: rgba(33ccffee)
 | |
|       #col.active.text = <color> # default: rgba(ffffffff)
 | |
| 
 | |
|       # active tab bar segment colors for bars on an unfocused monitor
 | |
|       #col.active_alt_monitor = <color> # default: rgba(60606040)
 | |
|       #col.active_alt_monitor.border = <color> # default: rgba(808080ee)
 | |
|       #col.active_alt_monitor.text = <color> # default: rgba(ffffffff)
 | |
| 
 | |
|       # focused tab bar segment colors (focused node in unfocused container)
 | |
|       #col.focused = <color> # default: rgba(60606040)
 | |
|       #col.focused.border = <color> # default: rgba(808080ee)
 | |
|       #col.focused.text = <color> # default: rgba(ffffffff)
 | |
| 
 | |
|       # inactive tab bar segment colors
 | |
|       col.inactive        = rgba(a6a6a620) # default: rgba(30303020)
 | |
|       col.inactive.border = rgba(a6a6a6aa) # default: rgba(606060aa)
 | |
|       #col.inactive.text   = <color>        # default: rgba(ffffffff)
 | |
| 
 | |
|       # urgent tab bar segment colors
 | |
|       #col.urgent = <color> # default: rgba(ff223340)
 | |
|       #col.urgent.border = <color> # default: rgba(ff2233ee)
 | |
|       #col.urgent.text = <color> # default: rgba(ffffffff)
 | |
| 
 | |
|       # urgent tab bar segment colors
 | |
|       #col.locked = <color> # default: rgba(90903340)
 | |
|       #col.locked.border = <color> # default: rgba(909033ee)
 | |
|       #col.locked.text = <color> # default: rgba(ffffffff)
 | |
| 
 | |
|       # if tab backgrounds should be blurred
 | |
|       # Blur is only visible when the above colors are not opaque.
 | |
|       blur = true # default: true
 | |
| 
 | |
|       # opacity multiplier for tabs
 | |
|       # Applies to blur as well as the given colors.
 | |
|       opacity = 1.0 # default: 1.0
 | |
|     }
 | |
| 
 | |
|     # autotiling settings
 | |
|     autotile {
 | |
|       # enable autotile
 | |
|       enable = true # default: false
 | |
| 
 | |
|       # make autotile-created groups ephemeral
 | |
|       ephemeral_groups = true # default: true
 | |
| 
 | |
|       # if a window would be squished smaller than this width, a vertical split will be created
 | |
|       # -1 = never automatically split vertically
 | |
|       # 0 = always automatically split vertically
 | |
|       # <number> = pixel width to split at
 | |
|       trigger_width = -1 # default: 0
 | |
| 
 | |
|       # if a window would be squished smaller than this height, a horizontal split will be created
 | |
|       # -1 = never automatically split horizontally
 | |
|       # 0 = always automatically split horizontally
 | |
|       # <number> = pixel height to split at
 | |
|       trigger_height = 0 # default: 0
 | |
| 
 | |
|       # a space or comma separated list of workspace ids where autotile should be enabled
 | |
|       # it's possible to create an exception rule by prefixing the definition with "not:"
 | |
|       # workspaces = 1,2 # autotiling will only be enabled on workspaces 1 and 2
 | |
|       # workspaces = not:1,2 # autotiling will be enabled on all workspaces except 1 and 2
 | |
|       workspaces = all # default: all
 | |
|     }
 | |
|   }
 | |
| }
 | |
| 
 | |
| # Keybinds
 | |
| 
 | |
| # Navigation
 | |
| 
 | |
| # Focus
 | |
| 
 | |
| # First, unbind default
 | |
| unbind = $flag,     $up
 | |
| unbind = $flag,     $right
 | |
| unbind = $flag,     $down
 | |
| unbind = $flag,     $left
 | |
| 
 | |
| unbind = $flag,     up
 | |
| unbind = $flag,     right
 | |
| unbind = $flag,     down
 | |
| unbind = $flag,     left
 | |
| 
 | |
| bind = $flag,       $up,    hy3:movefocus, u
 | |
| bind = $flag,       $right, hy3:movefocus, r
 | |
| bind = $flag,       $down,  hy3:movefocus, d
 | |
| bind = $flag,       $left,  hy3:movefocus, l
 | |
| 
 | |
| bind = $flag,       up,     hy3:movefocus, u
 | |
| bind = $flag,       right,  hy3:movefocus, r
 | |
| bind = $flag,       down,   hy3:movefocus, d
 | |
| bind = $flag,       left,   hy3:movefocus, l
 | |
| 
 | |
| # Layout
 | |
| bind = $flag,       z,      hy3:changegroup, opposite
 | |
| bind = $flag,       x,      hy3:changegroup, toggletab
 | |
| bind = $flag,       c,      hy3:changegroup, h
 | |
| bind = $flag,       v,      hy3:changegroup, v
 | |
| 
 | |
| bind = $flag,       p,      hy3:changefocus, raise
 | |
| bind = $flag+Shift, p,      hy3:changefocus, lower
 | |
| bind = $flag,       space,  hy3:togglefocuslayer
 | |
| 
 |