-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
45dc8f7
commit 681ebb4
Showing
10 changed files
with
199 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,91 @@ | ||
# This is a demo config to showcase some of the most important commands. | ||
# It is meant to be changed and configured, as it is intentionally kept sparse. | ||
# For a (much) more advanced configuration example see my dotfiles: | ||
# https://github.com/FelixKratz/dotfiles | ||
|
||
PLUGIN_DIR="$CONFIG_DIR/plugins" | ||
|
||
##### Bar Appearance ##### | ||
# Configuring the general appearance of the bar. | ||
# These are only some of the options available. For all options see: | ||
# https://felixkratz.github.io/SketchyBar/config/bar | ||
# If you are looking for other colors, see the color picker: | ||
# https://felixkratz.github.io/SketchyBar/config/tricks#color-picker | ||
|
||
sketchybar --hotload true --bar position=top height=25 blur_radius=30 color=0x40000000 | ||
|
||
##### Changing Defaults ##### | ||
# We now change some default values, which are applied to all further items. | ||
# For a full list of all available item properties see: | ||
# https://felixkratz.github.io/SketchyBar/config/items | ||
|
||
default=( | ||
padding_left=5 | ||
padding_right=5 | ||
icon.font="Iosevka Nerd Font Mono:Bold:17.0" | ||
label.font="Iosevka Nerd Font Mono:Bold:14.0" | ||
icon.color=0xffffffff | ||
label.color=0xffffffff | ||
icon.padding_left=4 | ||
icon.padding_right=4 | ||
label.padding_left=4 | ||
label.padding_right=4 | ||
) | ||
sketchybar --default "${default[@]}" | ||
|
||
##### Adding Left Items ##### | ||
# We add some regular items to the left side of the bar, where | ||
# only the properties deviating from the current defaults need to be set | ||
|
||
sketchybar --add event aerospace_workspace_change | ||
for sid in $(aerospace list-workspaces --all); do | ||
sketchybar --add item space.$sid left \ | ||
--subscribe space.$sid aerospace_workspace_change \ | ||
--set space.$sid \ | ||
background.color=0x44ffffff \ | ||
background.corner_radius=5 \ | ||
background.height=20 \ | ||
background.drawing=off \ | ||
label="$sid" \ | ||
click_script="aerospace workspace $sid" \ | ||
script="$PLUGIN_DIR/aerospace.sh $sid" | ||
done | ||
|
||
sketchybar --add item chevron left \ | ||
--set chevron icon= label.drawing=off \ | ||
--add item front_app left \ | ||
--set front_app icon.drawing=off script="$PLUGIN_DIR/front_app.sh" \ | ||
--subscribe front_app front_app_switched | ||
|
||
##### Adding Right Items ##### | ||
# In the same way as the left items we can add items to the right side. | ||
# Additional position (e.g. center) are available, see: | ||
# https://felixkratz.github.io/SketchyBar/config/items#adding-items-to-sketchybar | ||
|
||
# Some items refresh on a fixed cycle, e.g. the clock runs its script once | ||
# every 10s. Other items respond to events they subscribe to, e.g. the | ||
# volume.sh script is only executed once an actual change in system audio | ||
# volume is registered. More info about the event system can be found here: | ||
# https://felixkratz.github.io/SketchyBar/config/events | ||
|
||
sketchybar --add item clock right \ | ||
--set clock update_freq=10 icon= script="$PLUGIN_DIR/clock.sh" \ | ||
--add item volume right \ | ||
--set volume script="$PLUGIN_DIR/volume.sh" \ | ||
--subscribe volume volume_change \ | ||
--add item battery right \ | ||
--set battery update_freq=120 script="$PLUGIN_DIR/battery.sh" \ | ||
--subscribe battery system_woke power_source_change \ | ||
--add item vpn right \ | ||
--set vpn icon= \ | ||
update_freq=5 \ | ||
script="$PLUGIN_DIR/vpn.sh" | ||
|
||
sketchybar --add item input_source right | ||
sketchybar --set input_source \ | ||
icon.font="$FONT:BOLD:20.0" \ | ||
script="$PLUGIN_DIR/get_input_source.sh" \ | ||
icon.color=0xffffffff \ | ||
update_freq=1 | ||
##### Force all scripts to run the first time (never do this in a script) ##### | ||
sketchybar --update |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
#!/usr/bin/env bash | ||
|
||
# make sure it's executable with: | ||
# chmod +x ~/.config/sketchybar/plugins/aerospace.sh | ||
|
||
if [ "$1" = "$FOCUSED_WORKSPACE" ]; then | ||
sketchybar --set $NAME background.drawing=on | ||
else | ||
sketchybar --set $NAME background.drawing=off | ||
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
#!/bin/sh | ||
|
||
PERCENTAGE="$(pmset -g batt | grep -Eo "\d+%" | cut -d% -f1)" | ||
CHARGING="$(pmset -g batt | grep 'AC Power')" | ||
|
||
if [ "$PERCENTAGE" = "" ]; then | ||
exit 0 | ||
fi | ||
|
||
case "${PERCENTAGE}" in | ||
9[0-9]|100) ICON="" | ||
;; | ||
[6-8][0-9]) ICON="" | ||
;; | ||
[3-5][0-9]) ICON="" | ||
;; | ||
[1-2][0-9]) ICON="" | ||
;; | ||
*) ICON="" | ||
esac | ||
|
||
if [[ "$CHARGING" != "" ]]; then | ||
ICON="" | ||
fi | ||
|
||
# The item invoking this script (name $NAME) will get its icon and label | ||
# updated with the current battery status | ||
sketchybar --set "$NAME" icon="$ICON" label="${PERCENTAGE}%" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
#!/bin/sh | ||
|
||
# The $NAME variable is passed from sketchybar and holds the name of | ||
# the item invoking this script: | ||
# https://felixkratz.github.io/SketchyBar/config/events#events-and-scripting | ||
|
||
sketchybar --set "$NAME" label="$(date '+%a %-d %B %H:%M')" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
#!/bin/sh | ||
|
||
# Some events send additional information specific to the event in the $INFO | ||
# variable. E.g. the front_app_switched event sends the name of the newly | ||
# focused application in the $INFO variable: | ||
# https://felixkratz.github.io/SketchyBar/config/events#events-and-scripting | ||
|
||
if [ "$SENDER" = "front_app_switched" ]; then | ||
sketchybar --set "$NAME" label="$INFO" | ||
fi |
13 changes: 13 additions & 0 deletions
13
dot_config/sketchybar/plugins/executable_get_input_source.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
#!/bin/sh | ||
|
||
# hangul and english item | ||
|
||
# Read the plist data | ||
plist_data=$(defaults read ~/Library/Preferences/com.apple.HIToolbox.plist AppleSelectedInputSources) | ||
current_input_source=$(echo "$plist_data" | plutil -convert xml1 -o - - | grep -A1 'KeyboardLayout Name' | tail -n1 | cut -d '>' -f2 | cut -d '<' -f1) | ||
|
||
if [ "$current_input_source" = "ABC" ]; then | ||
sketchybar --set input_source label="ABC" | ||
else | ||
sketchybar --set input_source label="РУ" | ||
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
#!/bin/sh | ||
|
||
# The $SELECTED variable is available for space components and indicates if | ||
# the space invoking this script (with name: $NAME) is currently selected: | ||
# https://felixkratz.github.io/SketchyBar/config/components#space----associate-mission-control-spaces-with-an-item | ||
|
||
sketchybar --set "$NAME" background.drawing="$SELECTED" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
#!/bin/sh | ||
|
||
# The volume_change event supplies a $INFO variable in which the current volume | ||
# percentage is passed to the script. | ||
|
||
if [ "$SENDER" = "volume_change" ]; then | ||
VOLUME="$INFO" | ||
|
||
case "$VOLUME" in | ||
[6-9][0-9]|100) ICON="" | ||
;; | ||
[3-5][0-9]) ICON="" | ||
;; | ||
[1-9]|[1-2][0-9]) ICON="" | ||
;; | ||
*) ICON="" | ||
esac | ||
|
||
sketchybar --set "$NAME" icon="$ICON" label="$VOLUME%" | ||
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
#!/bin/bash | ||
|
||
VPN=$(scutil --nc list | grep Connected | sed -E 's/.*"(.*)".*/\1/') | ||
|
||
if [[ $VPN != "" ]]; then | ||
|
||
sketchybar -m --set vpn icon= \ | ||
label="$VPN" \ | ||
drawing=on | ||
else | ||
sketchybar -m --set vpn drawing=off | ||
fi |