SketchyBar/sketchybarrc
2021-09-02 20:42:11 +02:00

174 lines
7.4 KiB
Text
Executable file

# TODO: Implement the plugin system for easier setup of preconfigured items
############## BAR CONFIGURATION ##################
sketchybar -m config height 25
sketchybar -m config position top
sketchybar -m config padding_left 10
sketchybar -m config padding_right 10
sketchybar -m config bar_color 0x44000000 #0xaf202020
############## SCRIPT CACHING ############
sketchybar -m default cache_scripts on
############# SETTING DEFAULT VALUES #######
sketchybar -m default icon_font "Hack Nerd Font:Bold:17.0"
sketchybar -m default icon_color 0xffffffff
sketchybar -m default label_font "Hack Nerd Font:Bold:14.0"
sketchybar -m default label_color 0xffffffff
sketchybar -m default label_padding_left 4
sketchybar -m default icon_padding_left 16
############## CREATING SPACES ###############
sketchybar -m add component space code left
sketchybar -m set code associated_display 1
sketchybar -m set code associated_space 1
sketchybar -m set code icon_font "Hack Nerd Font:Bold:20.0"
sketchybar -m set code icon 
sketchybar -m set code icon_highlight_color 0xff48aa2a
sketchybar -m set code icon_padding_left 0
sketchybar -m set code label code
sketchybar -m set code click_script "yabai -m space --focus 1"
sketchybar -m add component space writing left
sketchybar -m set writing associated_display 1
sketchybar -m set writing associated_space 2
sketchybar -m set writing icon_highlight_color 0xfffab402
sketchybar -m set writing icon 
sketchybar -m set writing label tex
sketchybar -m set writing click_script "yabai -m space --focus 2"
sketchybar -m add component space reading left
sketchybar -m set reading associated_display 1
sketchybar -m set reading associated_space 3
sketchybar -m set reading icon_highlight_color 0xff7fe5f0
sketchybar -m set reading icon 
sketchybar -m set reading label web
sketchybar -m set reading click_script "yabai -m space --focus 3"
sketchybar -m add component space entertainment left
sketchybar -m set entertainment associated_display 1
sketchybar -m set entertainment associated_space 4
sketchybar -m set entertainment icon_font "Hack Nerd Font:Bold:19.0"
sketchybar -m set entertainment icon_highlight_color 0xfffff68f
sketchybar -m set entertainment icon 
sketchybar -m set entertainment label idle
sketchybar -m set entertainment click_script "yabai -m space --focus 4"
sketchybar -m add component space zoom left
sketchybar -m set zoom associated_display 2
sketchybar -m set zoom associated_space 5
sketchybar -m set zoom icon V
sketchybar -m set zoom icon_padding_left 0
################## CREATING LEFT ITEMS ##################
sketchybar -m default label_padding_left 0
sketchybar -m default icon_padding_left 0
sketchybar -m add item vimSeparator left
sketchybar -m set vimSeparator icon_font "Hack Nerd Font:Bold:15.0"
sketchybar -m set vimSeparator icon 
sketchybar -m set vimSeparator associated_space 1
sketchybar -m set vimSeparator associated_space 2
sketchybar -m set vimSeparator icon_padding_right 20
sketchybar -m set vimSeparator icon_padding_left 20
sketchybar -m add item vimIndicator left
sketchybar -m set vimIndicator associated_space 1
sketchybar -m set vimIndicator associated_space 2
sketchybar -m set vimIndicator icon_font "Hack Nerd Font:Bold:19.0"
sketchybar -m set vimIndicator icon ""
sketchybar -m set vimIndicator icon_padding_right 4
sketchybar -m set vimIndicator label "normal"
sketchybar -m set vimIndicator label_padding_right 10
sketchybar -m add item topmem left
sketchybar -m set topmem associated_space 1
sketchybar -m set topmem script "~/.config/sketchybar/plugins/topmem.sh"
sketchybar -m set topmem update_freq 15
################# CREATING RIGHT ITEMS ####################
sketchybar -m add item clock right
sketchybar -m set clock update_freq 10
sketchybar -m set clock script "~/.config/sketchybar/plugins/clock.sh"
sketchybar -m set clock label_padding_left 15
# Switching up the defaults for further items
sketchybar -m default label_padding_left 4
sketchybar -m default icon_padding_left 15
sketchybar -m add item mailIndicator right
# Items can be associated to multiple spaces / displays
sketchybar -m set mailIndicator associated_space 1
sketchybar -m set mailIndicator associated_space 2
sketchybar -m set mailIndicator associated_space 3
sketchybar -m set mailIndicator update_freq 15
sketchybar -m set mailIndicator script "~/.config/sketchybar/plugins/mailIndicator.sh"
sketchybar -m set mailIndicator icon_font "Hack Nerd Font:Bold:20.0"
sketchybar -m set mailIndicator icon 
sketchybar -m set mailIndicator click_script "osascript -e 'tell application \"Mail\" to activate'"
sketchybar -m add item githubIndicator right
sketchybar -m set githubIndicator associated_space 1
sketchybar -m set githubIndicator script "~/.config/sketchybar/plugins/githubIndicator.sh"
sketchybar -m set githubIndicator update_freq 1000
sketchybar -m set githubIndicator icon_font "Hack Nerd Font:Bold:18.0"
sketchybar -m set githubIndicator icon 
sketchybar -m set githubIndicator click_script "open https://github.com"
# Subscribing to system events for refresh
sketchybar -m subscribe githubIndicator system_woke
sketchybar -m default icon_padding_left 4
########### CREATING GRAPHS ###################
sketchybar -m add component graph cpu_user right 200 nospace
sketchybar -m set cpu_user script "~/.config/sketchybar/plugins/cpu_graph.sh"
sketchybar -m set cpu_user graph_color 0xffffffff
sketchybar -m set cpu_user update_freq 1
sketchybar -m set cpu_user associated_space 1
sketchybar -m set cpu_user label_padding_left 0
sketchybar -m set cpu_user icon 
sketchybar -m add component graph cpu_sys right 200
sketchybar -m set cpu_sys graph_color 0xff48aa2a
sketchybar -m set cpu_sys label_padding_left 0
sketchybar -m set cpu_sys associated_space 1
sketchybar -m set cpu_sys icon 
sketchybar -m add component graph network_down right 200 nospace
sketchybar -m set network_down associated_space 3
sketchybar -m set network_down label_padding_left 0
sketchybar -m set network_down icon 
sketchybar -m set network_down update_freq 1
sketchybar -m set network_down graph_color 0xffffffff
sketchybar -m set network_down script "~/.config/sketchybar/plugins/network_graph.sh"
sketchybar -m add component graph network_up right 200
sketchybar -m set network_up icon 
sketchybar -m set network_up label_padding_left 0
sketchybar -m set network_up associated_space 3
sketchybar -m set network_up graph_color 0xff48aa2a
sketchybar -m add item topproc right
sketchybar -m set topproc associated_space 1
sketchybar -m set topproc icon_padding_left 10
sketchybar -m set topproc label_padding_right 5
sketchybar -m set topproc script "~/.config/sketchybar/plugins/topproc.sh"
sketchybar -m set topproc update_freq 15
###################### CENTER ITEMS ###################
sketchybar -m default label_padding_right 15
sketchybar -m default icon_padding_right 4
# Adding custom events which can listen on distributed notifications from other running processes
sketchybar -m add event spotify_change "com.spotify.client.PlaybackStateChanged"
sketchybar -m add item spotifyIndicator center
sketchybar -m set spotifyIndicator script "~/.config/sketchybar/plugins/spotifyIndicator.sh"
sketchybar -m set spotifyIndicator click_script "osascript -e 'tell application \"Spotify\" to pause'"
sketchybar -m subscribe spotifyIndicator spotify_change
#################### RUN ALL SCRIPTS AND REDRAW ###############
sketchybar -m update
echo "sketchybar configuration loaded.."