This repository contains my personal SketchyBar, Yabai and Skhd configurations.
# Installing yabai, skhd, jq and alacritty
brew tap homebrew/cask-fonts
brew install koekeishiya/formulae/yabai
brew install jq
brew install koekeishiya/formulae/skhd
brew install gh #(gh auth login for notifications)
brew install --cask sf-symbols
brew install --cask font-hack-nerd-font
brew install --cask alacritty
# setting tmux
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
# Installing Fonts
git clone [email protected]:shaunsingh/SFMono-Nerd-Font-Ligaturized.git /tmp/SFMono_Nerd_Font
mv /tmp/SFMono_Nerd_Font/* $HOME/Library/Fonts
rm -rf /tmp/SFMono_Nerd_Font/
curl -L https://github.com/kvndrsslr/sketchybar-app-font/releases/download/v1.0.3/sketchybar-app-font.ttf -o $HOME/Library/Fonts/sketchybar-app-font.ttf
# macOS Settings
echo "Changing macOS defaults..."
defaults write com.apple.NetworkBrowser BrowseAllInterfaces 1
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true
defaults write com.apple.spaces spans-displays -bool false
defaults write com.apple.dock autohide -bool true
defaults write com.apple.dock "mru-spaces" -bool "false"
defaults write NSGlobalDomain NSAutomaticWindowAnimationsEnabled -bool false
defaults write com.apple.LaunchServices LSQuarantine -bool false
defaults write NSGlobalDomain com.apple.swipescrolldirection -bool false
defaults write NSGlobalDomain KeyRepeat -int 1
defaults write NSGlobalDomain NSAutomaticSpellingCorrectionEnabled -bool false
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
defaults write NSGlobalDomain _HIHideMenuBar -bool true
defaults write NSGlobalDomain AppleHighlightColor -string "0.65098 0.85490 0.58431"
defaults write NSGlobalDomain AppleAccentColor -int 1
defaults write com.apple.screencapture location -string "$HOME/Desktop"
defaults write com.apple.screencapture disable-shadow -bool true
defaults write com.apple.screencapture type -string "png"
defaults write com.apple.finder DisableAllAnimations -bool true
defaults write com.apple.finder ShowExternalHardDrivesOnDesktop -bool false
defaults write com.apple.finder ShowHardDrivesOnDesktop -bool false
defaults write com.apple.finder ShowMountedServersOnDesktop -bool false
defaults write com.apple.finder ShowRemovableMediaOnDesktop -bool false
defaults write com.apple.Finder AppleShowAllFiles -bool true
defaults write com.apple.finder FXDefaultSearchScope -string "SCcf"
defaults write com.apple.finder FXEnableExtensionChangeWarning -bool false
defaults write com.apple.finder _FXShowPosixPathInTitle -bool true
defaults write com.apple.finder FXPreferredViewStyle -string "Nlsv"
defaults write com.apple.finder ShowStatusBar -bool false
defaults write com.apple.TimeMachine DoNotOfferNewDisksForBackup -bool YES
defaults write com.apple.Safari AutoOpenSafeDownloads -bool false
defaults write com.apple.Safari IncludeDevelopMenu -bool true
defaults write com.apple.Safari WebKitDeveloperExtrasEnabledPreferenceKey -bool true
defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2DeveloperExtrasEnabled -bool true
defaults write NSGlobalDomain WebKitDeveloperExtras -bool true
defaults write com.apple.mail AddressesIncludeNameOnPasteboard -bool false
# --- Remove previous links
rm -f "${HOME}"/.{yabai,skhd}rc
# --- Install configs
git clone https://github.com/zer0yu/dotfiles.git "${HOME}"/.config/dotfiles
ln -s "${HOME}/.config/dotfiles/yabai/yabairc" "${HOME}/.yabairc"
ln -s "${HOME}/.config/dotfiles/skhd/skhdrc" "${HOME}/.skhdrc"
ln -s "${HOME}/.config/dotfiles/sketchybar" "${HOME}/.config/sketchybar"
ln -s "${HOME}/.config/dotfiles/alacritty/alacritty.yml" "${HOME}/.config/alacritty/alacritty.yml"
ln -s "${HOME}/.config/dotfiles/alacritty/catppuccin/catppuccin-macchiato.yml" ${HOME}/.config/alacritty/catppuccin/catppuccin-macchiato.yml
ln -s "${HOME}/.config/dotfiles/tmux/.tmux.conf" "${HOME}/.tmux.conf"
ln -s "${HOME}/.config/dotfiles/tmux/sessions/" "${HOME}/.tmux/"
ln -s "${HOME}/.config/dotfiles/tmux/themes/" "${HOME}/.tmux/"
# 需要手动修改 .yabairc 和 .skhdrc 文件中的 .sh 脚本路径
# Start Services
brew services start skhd
brew services start fyabai
brew services start sketchybar
(optional) add to .zshrc
# Sketchybar interactivity overloads
function brew() {
command brew "$@"
if [[ $* =~ "upgrade" ]] || [[ $* =~ "update" ]] || [[ $* =~ "outdated" ]]; then
sketchybar --trigger brew_update
fi
}
# Fancy sketchybar commands
function margin () {
if [ $1 = "on" ]; then
yabai -m config top_padding 20
sketchybar --animate sin 30 --bar margin=10 y_offset=10 corner_radius=9
else
yabai -m config top_padding 10
sketchybar --animate sin 30 --bar margin=0 y_offset=0 corner_radius=0
fi
}
function zen () {
~/.config/sketchybar/plugins/zen.sh $1
}
function suyabai () {
SHA256=$(shasum -a 256 /opt/homebrew/bin/yabai | awk "{print \$1;}")
sudo sed -i '' -e 's/sha256:[[:alnum:]]*/sha256:'${SHA256}'/' /private/etc/sudoers.d/yabai
}
ctrl + alt + cmd + r
cmd + f3
alt + cmd + space
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 |
Action | Key Combination |
---|---|
Focus left | alt + cmd + left |
Focus right | alt + cmd + right |
Focus up | alt + cmd + up |
Focus down | alt + cmd + down |
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 |
Action | Key Combination |
---|---|
Stack left | shift + alt + cmd + left |
Stack right | shift + alt + cmd + right |
Action | Key Combination |
---|---|
Focus up | shift + alt + cmd + up |
Focus down | shift + alt + cmd + down |
ctrl + alt + cmd + space
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 |
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 |
Action | Key Combination |
---|---|
Send to prev monitor | ctrl + alt + left |
Send to next monitor | ctrl + alt + right |
Action | Key Combination |
---|---|
Focus monitor 1 | ctrl + alt + 1 |
Focus monitor 2 | ctrl + alt + 2 |
Focus monitor 3 | ctrl + alt + 3 |
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 |
Float / Unfloat window | cmd + spcae |
Action | Key Combination |
---|---|
Open alacritty | alt+ cmd + t |
Open iTerm2 | ctrl + alt + t |
-
open Automator(自动操作)
-
选择 “选取文稿类型”,在创建界面选择”快速操作”
-
创建“开启应用程序”
-
设置快捷键
“系统偏好设置” => "键盘" => "服务" => "通用" => 选中添加的程序, 设置快捷键。
Ref: https://blog.csdn.net/zhanglong_4444/article/details/105172109
或者使用 keyboard maestro 来自定义一些快捷操作
Action | Key Combination |
---|---|
清除格式粘贴 | shift + alt + cmd + v |
Action | Key Combination |
---|---|
基本操作 | |
New Tab | cmd + t |
Close Tab | ctrl + d |
New vertical panel | cmd + d |
Close vertical panel (关闭窗格) | cmd + w |
水平分割窗格 | cmd + Return |
访问左边的窗格 | cmd + h |
访问左边的窗格 | cmd + Left |
访问上面的窗格 | cmd + j |
访问上面的窗格 | cmd + Up |
问下面的窗格 | cmd + k |
问下面的窗格 | cmd + Down |
访问右边的窗格 | cmd + l |
访问右边的窗格 | cmd + Right |
按数字切换选项卡 | cmd + 1 到 cmd + 9 |
切换到最近一次访问的选项卡 | cmd + b |
切换到上一个选项卡 | cmd + [ |
切换到下一个选项卡 | cmd + ] |
切换窗口 | cmd + ` |
布局操作 | |
向左边的窗格推进 | cmd + shift + h |
向左边的窗格推进 | cmd + shift + Left |
向上面的窗格推进 | cmd + shift + j |
向上面的窗格推进 | cmd + shift + Up |
向下面的窗推进 | cmd + shift + k |
向下面的窗推进 | cmd + shift + Down |
向右边的窗格推进 | cmd + shift + l |
向右边的窗格推进 | cmd + shift + Right |
将窗格移动到指定的选项卡中 | cmd + shift + 1 到 cmd + shift + 9 |
缩放当前窗格 | cmd + z |
使用预设置的五种布局重新调整窗格 | cmd + shift + z |
修改选项卡名称 | cmd + , |
输入 tmux 命令 | cmd + i |
调整更大的字体 | cmd + + |
调整更小的字体 | cmd + - |
恢复默认大小的字体 | cmd + 0 |
复制模式 | |
进入 Vi 复制模式,从上往下的方向查找关键词 | cmd + f |
进入 Vi 复制模式,从下往上的方向查找关键词 | cmd + shift + f |
补充:
v 按字选择
V 按行选择
Ctrl + v 按块状选择
Esc 取消选择
A 复制选择的文本追加到剪贴板,并退出 Vi 复制模式。
D 复制当前行到行尾的文本到剪贴板,并退出 Vi 复制模式。
y 复制选择的文本到剪贴板,并退出 Vi 复制模式。
Y 复制选择的文本到剪贴板,并保持 Vi 复制模式。
q 退出 Vi 复制模式
ref: https://juejin.cn/post/7152747783152697375
Action | Key Combination |
---|---|
打开URL或者搜索内容 | cmd + t |
根据网页结构截图 | shift + 2 |
同一页面右侧分割打开某个URL | ctrl + shift + = |
关闭分割页面 | ctrl + shift + - |
同一页面右侧分割打开点击的URL | alt + 鼠标点击 |
打开上次关闭的页面 | shift + cmd + t |
查看历史记录 | cmd + y |
关闭所有窗口 | shift + cmd + w |
关闭当前页面 | cmd + w |
切换 workspace | ctrl + 数字 |
打开 arc 设置(注意不是 chrome) | cmd + , |
复制当前页面的 URL(仅URL) | shift + cmd + c |
复制当前页面的 URL(markdown 格式) | shift + option + c |
把临时打开的小窗口加入到主浏览器里面 | cmd + o |
Go back | cmd + [ |
Go forward | cmd + ] |
显示or隐藏侧边栏 | cmd + s |
DeepL插件翻译 | alt + z |
Immersive Translate 插件全文翻译 | alt + w |
Action | Key Combination |
---|---|
打开Floating Notes | alt + . |
显示/隐藏Floating Notes | alt + , |
Action | Key Combination |
---|---|
打开快捷命令窗口 [zotero-style] | shift + P |
标记已读文献 [Zotero IF Pro Max] | ctrl + 1 |
Action | Key Combination |
---|---|
插入双向链接 | cmd + shift + K |
Action | Key Combination |
---|---|
转换行内代码 | cmd + E |
https://github.com/FelixKratz/dotfiles
https://github.com/z20240/yabai
https://github.com/qingshan/dotfiles/blob/main/.tmux.conf
https://github.com/damianveltkamp/dotfiles/blob/master/tmux/.tmux.conf