-
Notifications
You must be signed in to change notification settings - Fork 4
/
executable_dot_yabairc
95 lines (82 loc) · 3.92 KB
/
executable_dot_yabairc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#!/usr/bin/env sh
# global settings
yabai -m config mouse_follows_focus on
yabai -m config focus_follows_mouse autoraise
yabai -m config window_topmost off
yabai -m config window_opacity off
yabai -m config window_shadow off
yabai -m config insert_feedback_color 0xffd75f5f
yabai -m config split_ratio 0.50
yabai -m config auto_balance off
yabai -m config mouse_modifier fn
yabai -m config mouse_action1 resize
yabai -m config window_zoom_persist off
# borders (RIP)
yabai -m config window_border on
yabai -m config window_border_width 2
yabai -m config window_border_blur off
yabai -m config window_border_radius 0
yabai -m config active_window_border_color 0xffebdbb2
yabai -m config normal_window_border_color 0x00505050
# general space settings
yabai -m config layout bsp
yabai -m config top_padding 30
yabai -m config bottom_padding 5
yabai -m config left_padding 5
yabai -m config right_padding 5
yabai -m config window_gap 5
# "monocle" mode for space 1
yabai -m config --space 1 layout stack
# borders are timing out oddly (being redrawn behind app windows?) for me.
# these signals to toggle borders off/on on window change seem to resolve issue.
# borders are doing weird things in yabai right now. disable until fixed.
# yabai -m signal --add event=application_front_switched \
# action="yabai -m config window_border off; yabai -m config window_border on" \
# label=window-border-reset-front_switched
#
# yabai -m signal --add event=window_focused \
# action="yabai -m config window_border off; yabai -m config window_border on" \
# label=window-border-reset-focused
yabai -m signal --add event=space_changed \
action="wp --alacritty" \
label=alacritty-color-reload
# float system apps
yabai -m rule --add app="^System Preferences$" manage=off
yabai -m rule --add app="^Finder$" manage=off
yabai -m rule --add app="^Calculator$" manage=off
yabai -m rule --add app="^Disk Utility$" manage=off
yabai -m rule --add app="^Activity Monitor$" manage=off
yabai -m rule --add app="^Installer$" manage=off
yabai -m rule --add app="^System Information$" manage=off
# float user apps
yabai -m rule --add app="^python$" manage=off
yabai -m rule --add app="^python$" manage=off
yabai -m rule --add app="^python3$" manage=off
yabai -m rule --add app="^Karabine$" manage=off
yabai -m rule --add app="^Karabiner" manage=off
# "app":"Karabiner-Elements",
# "title":"Karabiner-Elements Preferences",
yabai -m rule --add app="^Font Book$" manage=off
yabai -m rule --add app="^Harmony$" manage=off
yabai -m rule --add app="^Docker Desktop$" manage=off
yabai -m rule --add app="^qemu-system-aarch64" manage=off
yabai -m rule --add app="^VMware Fusion" manage=off
yabai -m rule --add app="^VLC" manage=off
yabai -m rule --add app="^Screen Sharing" manage=off
# manage work apps
yabai -m rule --add app="^Microsoft Outlook$" grid=90:160:1:1:158:88
yabai -m rule --add app="^Cisco AnyConnect Secure Mobility Client$" manage=off
yabai -m rule --add app="^Pulse Secure$" manage=off
yabai -m rule --add app="^Oracle VM VirtualBox Manager$" manage=off
yabai -m rule --add app="^VirtualBox$" manage=off
yabai -m rule --add app="^VirtualBox VM$" manage=off
yabai -m rule --add app="^zoom.us$" manage=off
yabai -m rule --add app="Ghidra" title="Ghidra*" manage=off
yabai -m rule --add app="Approve" title="Approve" manage=off
yabai -m rule --add app="Microsoft Remote Desktop" manage=off
# whenever a PiP window is opened, center it on its parent
yabai -m signal --add \
label="Resize Firefox PiP windows to match parent" event=window_created \
app="Firefox" title="Picture-in-Picture" \
action="$HOME/.bin/yabai-resize-pip $"'YABAI_WINDOW_ID'
echo "yabai configuration loaded.."