Skip to content

Instantly share code, notes, and snippets.

@mikeshultz
Created November 29, 2023 03:14
Show Gist options
  • Save mikeshultz/133182a0d4a8c9555baf17ec1afbc78d to your computer and use it in GitHub Desktop.
Save mikeshultz/133182a0d4a8c9555baf17ec1afbc78d to your computer and use it in GitHub Desktop.
Darkman scripts to toggle light/dark mode
#!/bin/env bash
# Switch kitty to dark mode
$HOME/.local/bin/kitty_mode dark
# Switch Sublime
$HOME/.local/bin/sublime_mode dark
gsettings set org.gnome.desktop.interface gtk-theme "Adwaita-dark"
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
#!/bin/env bash
#########################
# Switch kitty theme mode
#
# Usage
# -----
# kitty_mode.sh dark|light
#########################
MODE="$1"
DARK_THEME="Wez"
LIGHT_THEME="Tango Light"
THEME="$DARK_THEME"
if [[ "$MODE" == "light" ]]; then
THEME="$LIGHT_THEME"
fi
kitty +kitten themes --reload-in=all $THEME
#!/bin/env bash
# Switch kitty to dark mode
$HOME/.local/bin/kitty_mode light
# Switch Sublime
$HOME/.local/bin/sublime_mode light
gsettings set org.gnome.desktop.interface gtk-theme "Adwaita"
gsettings set org.gnome.desktop.interface color-scheme 'prefer-light'
#!/bin/env bash
#########################
# Switch Sublime's mode
#
# Usage
# -----
# sublime_mode dark|light
#########################
MODE="$1"
DARK_THEME="Default Dark.sublime-theme"
DARK_SCHEME="Packages/Colorsublime - Themes/Mustard.tmTheme"
LIGHT_THEME="Default.sublime-theme"
LIGHT_SCHEME="Packages/Colorsublime - Themes/Poppins.tmTheme"
USER_PREF_FILE="$HOME/.config/sublime-text/Packages/User/Preferences.sublime-settings"
THEME="$DARK_THEME"
SCHEME="$DARK_SCHEME"
if [[ "$MODE" == "light" ]]; then
THEME="$LIGHT_THEME"
SCHEME="$LIGHT_SCHEME"
fi
cp $USER_PREF_FILE "$USER_PREF_FILE.bak"
update_theme() {
echo "Setting theme to $1"
tmpfile="$(mktemp)"
jq --arg theme "$1" '.theme = $theme' $USER_PREF_FILE > $tmpfile
cp $tmpfile $USER_PREF_FILE
}
update_scheme() {
echo "Setting scheme to $1"
tmpfile="$(mktemp)"
jq --arg scheme "$1" '.color_scheme = $scheme' $USER_PREF_FILE > $tmpfile
cp $tmpfile $USER_PREF_FILE
}
update_theme "$THEME"
update_scheme "$SCHEME"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment