#!/usr/bin/env sh # loading sa #yabai -m signal --add event=dock_did_restart action="sudo yabai --load-sa" #sudo yabai --load-sa # global settings yabai -m config mouse_follows_focus off yabai -m config focus_follows_mouse off yabai -m config window_origin_display default yabai -m config window_placement second_child yabai -m config window_zoom_persist on yabai -m config window_shadow float yabai -m config window_opacity off yabai -m config window_opacity_duration 0.0 yabai -m config active_window_opacity 1.0 yabai -m config normal_window_opacity 0.90 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 move yabai -m config mouse_action2 resize yabai -m config mouse_drop_action swap # general space settings yabai -m config layout bsp yabai -m config top_padding 12 yabai -m config bottom_padding 12 yabai -m config left_padding 12 yabai -m config right_padding 12 yabai -m config window_gap 10 # in external display, top padding is different # on M1 or later macbook, the notch space working as padding DISPLAY_UUID=37D8832A-2D66-02CA-B9F7-8F30A301B230 # UUID of built-in display BAR_PADDING=50 SPACES_ON_SUB=$(yabai -m query --displays | jq ".[] | select(.uuid != \"${DISPLAY_UUID}\") | .spaces[]") for idx in ${SPACES_ON_SUB} do yabai -m config --space "$idx" top_padding "$BAR_PADDING" done # Rules yabai -m rule --add app="^System Settings$" manage=off yabai -m rule --add app="^System Information$" manage=off yabai -m rule --add app="^Termius$" manage=off yabai -m rule --add app="^zoom\.us$" manage=off yabai -m rule --add app="^Docker Desktop$" manage=off yabai -m rule --add app="^Calculator$" manage=off yabai -m rule --add app="^Finder$" title="^Connect to Server$" manage=off yabai -m rule --add app="^Finder$" title="^Connecting to Server$" manage=off yabai -m rule --add app="^Finder$" title="^.* Info$" manage=off yabai -m rule --add app="^Finder$" title="^Copy$" manage=off yabai -m rule --add app="^Weather$" manage=off yabai -m rule --add app="^Clock$" manage=off yabai -m rule --add app="^1Password$" manage=off yabai -m rule --add app="^Discord$" title="^Discord Updater$" manage=off yabai -m rule --add app="^Archive Utility$" manage=off yabai -m rule --add app="^GitKraken$" manage=off yabai -m rule --add app="^Parallels Desktop$" manage=off yabai -m rule --add app="^Plexamp$" manage=off sticky=on yabai -m rule --add app="^JetBrains Toolbox$" manage=off yabai -m rule --add app="^Preview$" manage=off yabai -m rule --add app="^Dropbox Capture$" manage=off yabai -m rule --add app="^CLion$" manage=off yabai -m rule --add app="^JetBrains Client$" manage=off # Borders borders_options=( style=round active_color=0xff95bbcf inactive_color=0xff494d64 width=5.0 blacklist="Dropbox Capture,WinAppHelper" ) borders "${borders_options[@]}" & echo "yabai configuration loaded.."