Skip to content

metaory/mactile

logo mactile

Setup script for tiling window manager on macOS
Installs and configures yabai and skhd for tiling

Features

  • Two-column adjustable layout with gaps
  • Keyboard shortcuts for window management
  • Auto-start with sensible defaults
  • Minimal dependencies

Setup

# Clone and setup
cd /path/to/this/project
./setup.sh

Manual Setup

Dependencies

brew install yabai skhd jq

Configuration

mkdir -p ~/.config/yabai ~/.config/skhd
ln -sf "$(pwd)/yabairc" ~/.config/yabai/yabairc
ln -sf "$(pwd)/skhdrc" ~/.config/skhd/skhdrc

Permissions

  • System Settings → Privacy & Security → Accessibility
  • Add Terminal and yabai, skhd

Start

./start.sh

Auto-start

brew services start yabai
brew services start skhd

Hotkeys

Window Switching

  • alt+tab - Next window
  • alt+shift+tab - Previous window

Layout

  • m+space - BSP layout
  • m+shift+space - Float layout

Window Controls

  • m+m - Maximize/restore
  • m+n - Minimize
  • m+f - Toggle float
  • m+shift+f - Toggle sticky

Window Movement

  • m+shift+h/j/k/l - Swap window direction

Window Resizing

  • m+ctrl+h/j/k/l - Resize by 50px
  • m+alt+h/j/k/l - Resize by 10px

Spaces

  • m+1-9 - Focus space
  • m+shift+1-9 - Move window to space

Navigation

  • m+h/j/k/l - Focus window by direction
  • m+r - Rotate layout
  • m+b - Balance windows
  • m+p - Toggle padding

Utilities

  • m+t - Toggle borders
  • m+shift+r - Reload yabai
  • m+shift+escape - Float all windows

Status

./status.sh

Logs

log show --predicate 'process == "yabai"' --last 5m
log show --predicate 'process == "skhd"' --last 5m

Restart

./stop.sh && ./start.sh

Uninstall

./uninstall.sh

License

MIT

About

Setup script for tiling window manager on macOS

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Languages