Add a few more config and install changes for macos wm

This commit is contained in:
david 2025-04-04 16:55:39 -05:00
parent 41a361b708
commit fb3e1ee108
4 changed files with 25 additions and 8 deletions

View File

@ -2,8 +2,8 @@
source set_script_env_vars source set_script_env_vars
source ./src_files/.config/zsh/.zshenv source ./src_files/.config/zsh/.zshenv
./install_programs
./make_config_dirs ./make_config_dirs
./copy_configs ./copy_configs
source $ZDOTDIR/.zshenv ; source $ZDOTDIR/.zshrc source $ZDOTDIR/.zshenv ; source $ZDOTDIR/.zshrc
./make_org_structure_dirs ./make_org_structure_dirs
./install_programs # TODO: moved this to after config copy, but does this work?

View File

@ -8,6 +8,11 @@ local linux_wm_and_utils() {
local macos_wm_and_utils() { local macos_wm_and_utils() {
brew install koekeishiya/formulae/yabai brew install koekeishiya/formulae/yabai
brew install koekeishiya/formulae/skhd brew install koekeishiya/formulae/skhd
skhd --start-service
yabai --start-service
sleep 14 # time to give permission in accessibility settings
skhd --restart-service
yabai --restart-service
} }
[[ "$BOX_SETUP_OS" = "macos" ]] && macos_wm_and_utils || linux_wm_and_utils [[ "$BOX_SETUP_OS" = "macos" ]] && macos_wm_and_utils || linux_wm_and_utils

View File

@ -1,6 +1,7 @@
.tool-versions .tool-versions
*.swp *.swp
*.swo *.swo
.npmrc
.tmux-session-hydrate .tmux-session-hydrate
zxcv* zxcv*
.DS_Store .DS_Store

View File

@ -1,5 +1,8 @@
# staring file was at /opt/homebrew/opt/yabai/share/yabai/examples
# list of built-in keywords at https://github.com/koekeishiya/skhd/issues/1 # list of built-in keywords at https://github.com/koekeishiya/skhd/issues/1
# staring file was at /opt/homebrew/opt/yabai/share/yabai/examples
##########################################################################################
# yabai
# in managed mode: swap current window # in managed mode: swap current window
shift + cmd - k : yabai -m window --swap north shift + cmd - k : yabai -m window --swap north
@ -24,11 +27,19 @@ shift + cmd - 0 : yabai -m space --balance
shift + cmd - g : yabai -m space --layout bsp shift + cmd - g : yabai -m space --layout bsp
# all windows in a space to float and each fill screen # all windows in a space to float and each fill screen
shift + cmd - f : yabai -m space --layout float \ shift + cmd - f : yabai -m space --layout float \
| yabai -m query --windows --space \ | yabai -m query --windows --space | jq '.[].id' \
| jq '.[].id' \ | xargs -I % yabai -m window % --grid 1:1:0:0:1:1
| xargs -I % yabai -m window % --grid 1:1:0:0:1:1
# focus on next/previous window # managed layout, focus on next/previous window
shift + cmd - n : yabai -m window --focus next shift + cmd - x : yabai -m window --focus next # TODO: figure out better key option
shift + cmd - p : yabai -m window --focus prev shift + cmd - z : yabai -m window --focus prev # TODO: figure out better key option
# float layout, focus on next/previous window; hacky, but it seems to work for now
shift + cmd - n : yabai -m query --windows --space | jq '.[].id' | sort | tr "\r\n" " " \
| sed "s/\(.*\)/ \1 \n/" \
| sed "s/.* $(yabai -m query --windows --window | jq '.id') \([0-9]*\) .*/\1/" \
| xargs -I % yabai -m window --focus %
shift + cmd - p : yabai -m query --windows --space | jq '.[].id' | sort | tr "\r\n" " " \
| sed "s/\(.*\)/ \1 \n/" \
| sed "s/.* \([0-9]*\) $(yabai -m query --windows --window | jq '.id') .*/\1/" \
| xargs -I % yabai -m window --focus %