Skip to content

z20240/yabai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Yabai and Skhd Config

This repository contains my standalone Yabai and Skhd configurations.

As tiling windows management, every times window created, it will allocate a space for it to avoid window overlap to each other.

You'll never suffering messy window display for desktop.

Installation

# --- install yabai, skhd, jq
$ brew install koekeishiya/formulae/yabai
$ brew install jq
$ brew install koekeishiya/formulae/skhd


# --- Remove previous links
$ rm -f "${HOME}"/.{yabai,skhd}rc

# --- Install configs
$ git clone https://github.com/z20240/yabai.git "${HOME}"/.config/yabai
$ ln -s "${HOME}/.config/yabai/yabai/yabairc" "${HOME}/.yabairc"
$ ln -s "${HOME}/.config/yabai/skhd/skhdrc" "${HOME}/.skhdrc"

# --- Will automatically start Yabai & Skhd when computer starts
$ brew services start yabai
$ brew services start skhd

# --- (options) Install stackline part. --- #
### stackline can show icons aside by your stacked windows to announce the stack windows.
$ brew install hammerspoon --cask

# Install stackline (https://github.com/AdamWagner/stackline)
# Get the repo
$ git clone https://github.com/AdamWagner/stackline.git ~/.hammerspoon/stackline

# Make stackline run when hammerspoon launches
$ cd ~/.hammerspoon

$ cp ~/.hammerspoon/stackline/conf.lua ~/.hammerspoon/stakeline_config.lua


# **Hint**: If your mac is M1 structure - you have to change the code below
# -- in stackline/conf.lua
# c.paths.yabai = '/opt/homebrew/bin/yabai' -- silicon mac, M1
# c.paths.yabai = '/usr/local/bin/yabai'    -- intel version.
echo 'stackline = require "stackline"' >> init.lua
echo 'local stackline_config = require "stackline_config"' >> init.lua
echo 'stackline:init(stackline_config)' >> init.lua

Keyboard Shortcuts

Reload / restart the yabai launch agent

ctrl + alt + cmd + r

Show / hide items on desktop

cmd + f3

Toggle full screen / up-full screen

alt + cmd + space

Move Windows

Action Key Combination
Move left ctrl + alt + cmd + left
Move right ctrl + alt + cmd + right
Move up ctrl + alt + cmd + up
Move down ctrl + alt + cmd + down

Focus Windows

Action Key Combination
Focus left alt + cmd + left
Focus right alt + cmd + right
Focus up alt + cmd + up
Focus down alt + cmd + down

Resize Windows

Action Key Combination
Resize left ctrl + alt + cmd + home
Resize right ctrl + alt + cmd + end
Resize up ctrl + alt + cmd + pageUp
Resize down ctrl + alt + cmd + pageDown

Stack Windows

Action Key Combination
Stack left shift + alt + cmd + left
Stack right shift + alt + cmd + right

Focus Windows (stack mode)

Action Key Combination
Focus up shift + alt + cmd + up
Focus down shift + alt + cmd + down

Toggle float / Un-float mode window

ctrl + alt + cmd + space

Move Windows (floating mode)

Action Key Combination
Move left alt + cmd + left
Move right alt + cmd + right
full screen alt + cmd + up
place window to screen center alt + cmd + down
Move up left alt + cmd + home
Move down right alt + cmd + end
Move up right alt + cmd + pageUp
Move down left alt + cmd + pageDown

Send Window to Spaces

Action Key Combination
Send to prev space ctrl + cmd + left
Send to next space ctrl + cmd + right
Send to space (1-9) ctrl + cmd + 1 - 9

Send Window to Monitors (Displays)

Action Key Combination
Send to prev monitor ctrl + alt + left
Send to next monitor ctrl + alt + right

Focus Monitors (Displays)

Action Key Combination
Focus monitor 1 ctrl + alt + 1
Focus monitor 2 ctrl + alt + 2
Focus monitor 3 ctrl + alt + 3

Misc

Action Key Combination
Window rotate clockwise alt + cmd + r
Window rotate anticlockwise shift + alt + cmd + r
Window Equalize size alt + cmd + |
Enable / Disable gaps alt + cmd + g

About

A config for yabai settings.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages