From 359761b80629e659ca11f3711dda8c2fc57da043 Mon Sep 17 00:00:00 2001
From: Andreas Gerlach <andi@appelgriebsch.org>
Date: Mon, 3 Aug 2020 12:16:32 +0200
Subject: [PATCH] [sway] move termite config into a template for theming

---
 .../etc/sway/config.d/96-enable-termite-theme |   3 +
 overlays/sway/etc/sway/definitions            |   2 +-
 overlays/sway/etc/sway/outputs/default-screen |   2 +-
 .../themes/{matcha-blue/sway => matcha-blue}  |  12 +-
 .../{matcha-green/sway => matcha-green}       |  12 +-
 .../sway/etc/sway/themes/matcha-green/termite | 104 ------------------
 .../themes/{matcha-blue => templates}/termite |  71 +++++-------
 7 files changed, 41 insertions(+), 165 deletions(-)
 create mode 100644 overlays/sway/etc/sway/config.d/96-enable-termite-theme
 rename overlays/sway/etc/sway/themes/{matcha-blue/sway => matcha-blue} (66%)
 rename overlays/sway/etc/sway/themes/{matcha-green/sway => matcha-green} (66%)
 delete mode 100644 overlays/sway/etc/sway/themes/matcha-green/termite
 rename overlays/sway/etc/sway/themes/{matcha-blue => templates}/termite (58%)

diff --git a/overlays/sway/etc/sway/config.d/96-enable-termite-theme b/overlays/sway/etc/sway/config.d/96-enable-termite-theme
new file mode 100644
index 00000000..75d99060
--- /dev/null
+++ b/overlays/sway/etc/sway/config.d/96-enable-termite-theme
@@ -0,0 +1,3 @@
+exec_always {
+  'mkdir -p $HOME/.config/termite && cat /etc/sway/themes/templates/termite | sed -e $term_color_script -e $theme_color_script > $HOME/.config/termite/config'
+}
diff --git a/overlays/sway/etc/sway/definitions b/overlays/sway/etc/sway/definitions
index 61069f73..bcdba60e 100644
--- a/overlays/sway/etc/sway/definitions
+++ b/overlays/sway/etc/sway/definitions
@@ -13,7 +13,7 @@ set $right l
 set $theme /etc/sway/themes/matcha-green
 
 # Your preferred terminal emulator
-set $term termite --config $theme/termite
+set $term termite
 
 # Your preferred application launcher
 # Note: pass the final command to swaymsg so that the resulting window can be opened
diff --git a/overlays/sway/etc/sway/outputs/default-screen b/overlays/sway/etc/sway/outputs/default-screen
index 36f60f66..785f14e5 100644
--- a/overlays/sway/etc/sway/outputs/default-screen
+++ b/overlays/sway/etc/sway/outputs/default-screen
@@ -7,7 +7,7 @@
 # You can get the names of your outputs by running: swaymsg -t get_outputs
 
 # import theme
-include $theme/sway
+include $theme
 
 # Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
 output * bg $background fill
diff --git a/overlays/sway/etc/sway/themes/matcha-blue/sway b/overlays/sway/etc/sway/themes/matcha-blue
similarity index 66%
rename from overlays/sway/etc/sway/themes/matcha-blue/sway
rename to overlays/sway/etc/sway/themes/matcha-blue
index c92e584b..68fa395d 100644
--- a/overlays/sway/etc/sway/themes/matcha-blue/sway
+++ b/overlays/sway/etc/sway/themes/matcha-blue
@@ -28,14 +28,7 @@ set $base0D #55b5db
 set $base0E #a074c4
 set $base0F #8a553f
 
-set $background-color $base00
 set $transparent-background-color rgba(20, 22, 27, 0.9)
-set $dim-text-color $base05
-set $text-color $base06
-set $bright-text-color $base07
-set $accent-color $base0D
-set $warning-color $base09
-set $error-color $base08
 
 # Basic color configuration using the Base16 variables for windows and borders.
 # Property Name         Border  BG      Text    Indicator Child Border
@@ -46,5 +39,6 @@ client.urgent           $base08 $base08 $base00 $base08 $base08
 client.placeholder      $base00 $base00 $base05 $base00 $base00
 client.background       $base07
 
-set $theme_template_script "s/GTK_THEME/$gtk-theme/g; s/ICON_THEME/$icon-theme/g; s/CURSOR_THEME/$cursor-theme/g; s/GUI_FONT/$gui-font/g; s/TERM_FONT/$term-font/g; s/KVANTUM_THEME/$kvantum-theme/g;"
-set $theme_color_script "s/TRANSPARENT_BACKGROUND_COLOR/$transparent-background-color/g; s/BACKGROUND_COLOR/$background-color/g; s/BRIGHT_TEXT_COLOR/$bright-text-color/g; s/DIM_TEXT_COLOR/$dim-text-color/g; s/TEXT_COLOR/$text-color/g; s/ACCENT_COLOR/$accent-color/g; s/WARNING_COLOR/$warning-color/g; s/ERROR_COLOR/$error-color/g;"
+set $theme_template_script "s/GTK_THEME/$gtk-theme/g; s/ICON_THEME/$icon-theme/g; s/CURSOR_THEME/$cursor-theme/g; s/GUI_FONT/$gui-font/g; s/KVANTUM_THEME/$kvantum-theme/g;"
+set $theme_color_script "s/TRANSPARENT_BACKGROUND_COLOR/$transparent-background-color/g; s/BACKGROUND_COLOR/$base00/g; s/BRIGHT_TEXT_COLOR/$base07/g; s/DIM_TEXT_COLOR/$base05/g; s/TEXT_COLOR/$base06/g; s/ACCENT_COLOR/$base0D/g; s/ALTERNATIVE_COLOR/$base0C/g; s/WARNING_COLOR/$base09/g; s/ERROR_COLOR/$base08/g;"
+set $term_color_script "s/TERM_FONT/$term-font/g; s/COLOR_BLACK/$base00/g; s/COLOR_EXTRA3/$base01/g; s/COLOR_EXTRA4/$base02/g; s/COLOR_GRAY/$base03/g; s/COLOR_EXTRA5/$base04/g; s/COLOR_SILVER/$base05/g; s/COLOR_EXTRA6/$base06/g; s/COLOR_WHITE/$base07/g; s/COLOR_RED/$base08/g; s/COLOR_EXTRA1/$base09/g; s/COLOR_YELLOW/$base0A/g; s/COLOR_GREEN/$base0B/g; s/COLOR_TEAL/$base0C/g; s/COLOR_BLUE/$base0D/g; s/COLOR_PURPLE/$base0E/g; s/COLOR_EXTRA2/$base0F/g;"
diff --git a/overlays/sway/etc/sway/themes/matcha-green/sway b/overlays/sway/etc/sway/themes/matcha-green
similarity index 66%
rename from overlays/sway/etc/sway/themes/matcha-green/sway
rename to overlays/sway/etc/sway/themes/matcha-green
index b15d8e34..d4074dc7 100644
--- a/overlays/sway/etc/sway/themes/matcha-green/sway
+++ b/overlays/sway/etc/sway/themes/matcha-green
@@ -28,14 +28,7 @@ set $base0D #55b5db
 set $base0E #a074c4
 set $base0F #8a553f
 
-set $background-color $base00
 set $transparent-background-color rgba(20, 26, 27, 0.9)
-set $dim-text-color $base05
-set $text-color $base06
-set $bright-text-color $base07
-set $accent-color $base0C
-set $warning-color $base09
-set $error-color $base08
 
 # Basic color configuration using the Base16 variables for windows and borders.
 # Property Name         Border  BG      Text    Indicator Child Border
@@ -46,5 +39,6 @@ client.urgent           $base08 $base08 $base00 $base08 $base08
 client.placeholder      $base00 $base00 $base05 $base00 $base00
 client.background       $base07
 
-set $theme_template_script "s/GTK_THEME/$gtk-theme/g; s/ICON_THEME/$icon-theme/g; s/CURSOR_THEME/$cursor-theme/g; s/GUI_FONT/$gui-font/g; s/TERM_FONT/$term-font/g; s/KVANTUM_THEME/$kvantum-theme/g;"
-set $theme_color_script "s/TRANSPARENT_BACKGROUND_COLOR/$transparent-background-color/g; s/BACKGROUND_COLOR/$background-color/g; s/BRIGHT_TEXT_COLOR/$bright-text-color/g; s/DIM_TEXT_COLOR/$dim-text-color/g; s/TEXT_COLOR/$text-color/g; s/ACCENT_COLOR/$accent-color/g; s/WARNING_COLOR/$warning-color/g; s/ERROR_COLOR/$error-color/g;"
+set $theme_template_script "s/GTK_THEME/$gtk-theme/g; s/ICON_THEME/$icon-theme/g; s/CURSOR_THEME/$cursor-theme/g; s/GUI_FONT/$gui-font/g; s/KVANTUM_THEME/$kvantum-theme/g;"
+set $theme_color_script "s/TRANSPARENT_BACKGROUND_COLOR/$transparent-background-color/g; s/BACKGROUND_COLOR/$base00/g; s/BRIGHT_TEXT_COLOR/$base07/g; s/DIM_TEXT_COLOR/$base05/g; s/TEXT_COLOR/$base06/g; s/ACCENT_COLOR/$base0C/g; s/ALTERNATIVE_COLOR/$base0D/g; s/WARNING_COLOR/$base09/g; s/ERROR_COLOR/$base08/g;"
+set $term_color_script "s/TERM_FONT/$term-font/g; s/COLOR_BLACK/$base00/g; s/COLOR_EXTRA3/$base01/g; s/COLOR_EXTRA4/$base02/g; s/COLOR_GRAY/$base03/g; s/COLOR_EXTRA5/$base04/g; s/COLOR_SILVER/$base05/g; s/COLOR_EXTRA6/$base06/g; s/COLOR_WHITE/$base07/g; s/COLOR_RED/$base08/g; s/COLOR_EXTRA1/$base09/g; s/COLOR_YELLOW/$base0A/g; s/COLOR_GREEN/$base0B/g; s/COLOR_TEAL/$base0C/g; s/COLOR_BLUE/$base0D/g; s/COLOR_PURPLE/$base0E/g; s/COLOR_EXTRA2/$base0F/g;"
diff --git a/overlays/sway/etc/sway/themes/matcha-green/termite b/overlays/sway/etc/sway/themes/matcha-green/termite
deleted file mode 100644
index 212a53ca..00000000
--- a/overlays/sway/etc/sway/themes/matcha-green/termite
+++ /dev/null
@@ -1,104 +0,0 @@
-[options]
-#allow_bold = true
-#audible_bell = false
-#bold_is_bright = true
-#cell_height_scale = 1.0
-#cell_width_scale = 1.0
-clickable_url = true
-dynamic_title = true
-font = TerminessTTF Nerd Font Mono 14
-#fullscreen = true
-#icon_name = terminal
-#mouse_autohide = false
-#scroll_on_output = false
-#scroll_on_keystroke = true
-# Length of the scrollback buffer, 0 disabled the scrollback buffer
-# and setting it to a negative value means "infinite scrollback"
-scrollback_lines = 10000
-#search_wrap = true
-#urgent_on_bell = true
-#hyperlinks = false
-
-# $BROWSER is used by default if set, with xdg-open as a fallback
-#browser = xdg-open
-
-# "system", "on" or "off"
-cursor_blink = on
-
-# "block", "underline" or "ibeam"
-cursor_shape = block
-
-# Hide links that are no longer valid in url select overlay mode
-#filter_unmatched_urls = true
-
-# Emit escape sequences for extra modified keys
-#modify_other_keys = false
-
-# set size hints for the window
-#size_hints = false
-
-# "off", "left" or "right"
-#scrollbar = off
-
-[hints]
-#font = Monospace 12
-#foreground = #dcdccc
-#background = #3f3f3f
-#active_foreground = #e68080
-#active_background = #3f3f3f
-#padding = 2
-#border = #3f3f3f
-#border_width = 0.5
-#roundness = 2.0
-
-[colors]
-# based on Base16 Seti UI
-# Author: Appelgriebsch
-
-foreground          = #d6d6d6
-foreground_bold     = #d6d6d6
-cursor              = #d6d6d6
-cursor_foreground   = #141a1b
-background          = rgba(20, 26, 27, 0.9)
-
-# 16 color space
-
-# Black, Gray, Silver, White
-color0  = #141a1b
-color8  = #41535B
-color7  = #d6d6d6
-color15 = #ffffff
-
-# Red
-color1  = #Cd3f45
-color9  = #Cd3f45
-
-# Green
-color2  = #9fca56
-color10 = #9fca56
-
-# Yellow
-color3  = #e6cd69
-color11 = #e6cd69
-
-# Teal
-color4  = #16a085
-color12 = #16a085
-
-# Purple
-color5  = #a074c4
-color13 = #a074c4
-
-# Blue
-color6  = #55b5db
-color14 = #55b5db
-
-# Extra colors
-color16 = #db7b55
-color17 = #8a553f
-color18 = #282a2b
-color19 = #3B758C
-color20 = #43a5d5
-color21 = #eeeeee
-
-# vim: ft=dosini cms=#%s
diff --git a/overlays/sway/etc/sway/themes/matcha-blue/termite b/overlays/sway/etc/sway/themes/templates/termite
similarity index 58%
rename from overlays/sway/etc/sway/themes/matcha-blue/termite
rename to overlays/sway/etc/sway/themes/templates/termite
index 5d1a564f..28773d2c 100644
--- a/overlays/sway/etc/sway/themes/matcha-blue/termite
+++ b/overlays/sway/etc/sway/themes/templates/termite
@@ -6,7 +6,7 @@
 #cell_width_scale = 1.0
 clickable_url = true
 dynamic_title = true
-font = TerminessTTF Nerd Font Mono 14
+font = TERM_FONT
 #fullscreen = true
 #icon_name = terminal
 #mouse_autohide = false
@@ -40,65 +40,54 @@ cursor_shape = block
 # "off", "left" or "right"
 #scrollbar = off
 
-[hints]
-#font = Monospace 12
-#foreground = #dcdccc
-#background = #3f3f3f
-#active_foreground = #e68080
-#active_background = #3f3f3f
-#padding = 2
-#border = #3f3f3f
-#border_width = 0.5
-#roundness = 2.0
-
 [colors]
 # based on Base16 Seti UI
 # Author: Appelgriebsch
 
-foreground          = #d6d6d6
-foreground_bold     = #d6d6d6
-cursor              = #d6d6d6
-cursor_foreground   = #14161b
-background          = rgba(20, 22, 27, 0.9)
+foreground          = TEXT_COLOR
+foreground_bold     = TEXT_COLOR
+cursor              = TEXT_COLOR
+cursor_foreground   = BACKGROUND_COLOR
+background          = TRANSPARENT_BACKGROUND_COLOR
 
 # 16 color space
 
 # Black, Gray, Silver, White
-color0  = #14161b
-color8  = #41535B
-color7  = #d6d6d6
-color15 = #ffffff
+color0  = COLOR_BLACK
+color8  = COLOR_GRAY
+color7  = COLOR_SILVER
+color15 = COLOR_WHITE
 
 # Red
-color1  = #Cd3f45
-color9  = #Cd3f45
+color1  = COLOR_RED
+color9  = COLOR_RED
 
 # Green
-color2  = #9fca56
-color10 = #9fca56
+color2  = COLOR_GREEN
+color10 = COLOR_GREEN
 
 # Yellow
-color3  = #e6cd69
-color11 = #e6cd69
+color3  = COLOR_YELLOW
+color11 = COLOR_YELLOW
 
-# Blue
-color4  = #55b5db
-color12 = #55b5db
+# Accent Color
+color4  = ACCENT_COLOR
+color12 = ACCENT_COLOR
 
 # Purple
-color5  = #a074c4
-color13 = #a074c4
+color5  = COLOR_PURPLE
+color13 = COLOR_PURPLE
 
-# Teal
-color6  = #16a085
-color14 = #16a085
+# Alternative Color
+color6  = ALTERNATIVE_COLOR
+color14 = ALTERNATIVE_COLOR
 
 # Extra colors
-color16 = #db7b55
-color17 = #8a553f
-color18 = #282a2b
-color19 = #3B758C
-color20 = #43a5d5
-color21 = #eeeeee
+color16 = COLOR_EXTRA1
+color17 = COLOR_EXTRA2
+color18 = COLOR_EXTRA3
+color19 = COLOR_EXTRA4
+color20 = COLOR_EXTRA5
+color21 = COLOR_EXTRA6
 
 # vim: ft=dosini cms=#%s
-- 
GitLab