Compare commits
	
		
			6 Commits
		
	
	
		
			71f922de59
			...
			1e2354a092
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 1e2354a092 | |||
| f2210f3baa | |||
| 8e277a0a55 | |||
| bf9fd9c77c | |||
| a51ff516a0 | |||
| bd4a42425c | 
@@ -61,4 +61,7 @@ You can read the manual [in your browser](./doc/manual.md) or by running `shchem
 | 
				
			|||||||
This software is a work of opportunism
 | 
					This software is a work of opportunism
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- [mo](https://github.com/tests-always-included/mo) - Mustache templates in bash. Shchemes wouldn't be possible without it.
 | 
					- [mo](https://github.com/tests-always-included/mo) - Mustache templates in bash. Shchemes wouldn't be possible without it.
 | 
				
			||||||
- [tinted-theming/schemes](https://github.com/tinted-theming/schemes) - Pretty much all the base16 themes
 | 
					- [tinted-theming/schemes](https://github.com/tinted-theming/schemes) - Several base16 themes
 | 
				
			||||||
 | 
					- [deathbeam/base16-discord](https://github.com/deathbeam/base16-discord) - The base16 `better-discord` target 
 | 
				
			||||||
 | 
					- [mk12/base16-kitty](https://github.com/mk12/base16-kitty) - The base16 `kitty` target
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
							
								
								
									
										54
									
								
								base16/templates/better-discord.mustache
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								base16/templates/better-discord.mustache
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,54 @@
 | 
				
			|||||||
 | 
					/**
 | 
				
			||||||
 | 
					* @name base16 {{scheme-name}}
 | 
				
			||||||
 | 
					* @author {{scheme-author}}
 | 
				
			||||||
 | 
					* @version 1.0.0
 | 
				
			||||||
 | 
					* @description base16 {{scheme-name}} theme generated from https://github.com/tinted-theming/schemes
 | 
				
			||||||
 | 
					**/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:root {
 | 
				
			||||||
 | 
					    --base00: #{{base00}}; /* Black */
 | 
				
			||||||
 | 
					    --base01: #{{base01}}; /* Bright Black */
 | 
				
			||||||
 | 
					    --base02: #{{base02}}; /* Grey */
 | 
				
			||||||
 | 
					    --base03: #{{base03}}; /* Brighter Grey */
 | 
				
			||||||
 | 
					    --base04: #{{base04}}; /* Bright Grey */
 | 
				
			||||||
 | 
					    --base05: #{{base05}}; /* White */
 | 
				
			||||||
 | 
					    --base06: #{{base06}}; /* Brighter White */
 | 
				
			||||||
 | 
					    --base07: #{{base07}}; /* Bright White */
 | 
				
			||||||
 | 
					    --base08: #{{base08}}; /* Red */
 | 
				
			||||||
 | 
					    --base09: #{{base09}}; /* Orange */
 | 
				
			||||||
 | 
					    --base0A: #{{base0A}}; /* Yellow */
 | 
				
			||||||
 | 
					    --base0B: #{{base0B}}; /* Green */
 | 
				
			||||||
 | 
					    --base0C: #{{base0C}}; /* Cyan */
 | 
				
			||||||
 | 
					    --base0D: #{{base0D}}; /* Blue */
 | 
				
			||||||
 | 
					    --base0E: #{{base0E}}; /* Purple */
 | 
				
			||||||
 | 
					    --base0F: #{{base0F}}; /* Magenta */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    --primary-630: var(--base00); /* Autocomplete background */
 | 
				
			||||||
 | 
					    --primary-660: var(--base00); /* Search input background */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.theme-light, .theme-dark {
 | 
				
			||||||
 | 
					    --search-popout-option-fade: none; /* Disable fade for search popout */
 | 
				
			||||||
 | 
					    --bg-overlay-2: var(--base00); /* These 2 are needed for proper threads coloring */
 | 
				
			||||||
 | 
					    --home-background: var(--base00);
 | 
				
			||||||
 | 
					    --background-primary: var(--base00);
 | 
				
			||||||
 | 
					    --background-secondary: var(--base01);
 | 
				
			||||||
 | 
					    --background-secondary-alt: var(--base01);
 | 
				
			||||||
 | 
					    --channeltextarea-background: var(--base01);
 | 
				
			||||||
 | 
					    --background-tertiary: var(--base00);
 | 
				
			||||||
 | 
					    --background-accent: var(--base0E);
 | 
				
			||||||
 | 
					    --background-floating: var(--base01);
 | 
				
			||||||
 | 
					    --background-modifier-selected: var(--base00);
 | 
				
			||||||
 | 
					    --text-normal: var(--base05);
 | 
				
			||||||
 | 
					    --text-secondary: var(--base00);
 | 
				
			||||||
 | 
					    --text-muted: var(--base03);
 | 
				
			||||||
 | 
					    --text-link: var(--base0C);
 | 
				
			||||||
 | 
					    --interactive-normal: var(--base05);
 | 
				
			||||||
 | 
					    --interactive-hover: var(--base0C);
 | 
				
			||||||
 | 
					    --interactive-active: var(--base0A);
 | 
				
			||||||
 | 
					    --interactive-muted: var(--base03);
 | 
				
			||||||
 | 
					    --header-primary: var(--base06);
 | 
				
			||||||
 | 
					    --header-secondary: var(--base03);
 | 
				
			||||||
 | 
					    --scrollbar-thin-track: transparent;
 | 
				
			||||||
 | 
					    --scrollbar-auto-track: transparent;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -1,3 +1,3 @@
 | 
				
			|||||||
bspc config normal_border_color "#{{base01}}"
 | 
					bspc config normal_border_color "#{{base02}}"
 | 
				
			||||||
bspc config active_border_color "#{{base04}}"
 | 
					bspc config active_border_color "#{{base03}}"
 | 
				
			||||||
bspc config focused_border_color "#{{base0C}}"
 | 
					bspc config focused_border_color "#{{base04}}"
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										18
									
								
								base16/templates/oomox-gtk-medium.mustache
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								base16/templates/oomox-gtk-medium.mustache
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					BG={{base05}}
 | 
				
			||||||
 | 
					FG={{base00}}
 | 
				
			||||||
 | 
					HDR_BG={{base04}}
 | 
				
			||||||
 | 
					HDR_FG={{base01}}
 | 
				
			||||||
 | 
					SEL_BG={{base00}}
 | 
				
			||||||
 | 
					SEL_FG={{base0D}}
 | 
				
			||||||
 | 
					TXT_BG={{base06}}
 | 
				
			||||||
 | 
					TXT_FG={{base01}}
 | 
				
			||||||
 | 
					BTN_BG={{base03}}
 | 
				
			||||||
 | 
					BTN_FG={{base07}}
 | 
				
			||||||
 | 
					HDR_BTN_BG={{base05}}
 | 
				
			||||||
 | 
					HDR_BTN_FG={{base01}}
 | 
				
			||||||
 | 
					WM_BORDER_FOCUS={{base0D}}
 | 
				
			||||||
 | 
					WM_BORDER_UNFOCUS={{base04}}
 | 
				
			||||||
 | 
					GRADIENT=0.0
 | 
				
			||||||
 | 
					ROUNDNESS=2
 | 
				
			||||||
 | 
					SPACING=3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										18
									
								
								base16/templates/oomox-gtk.mustache
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								base16/templates/oomox-gtk.mustache
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					BG={{base00}}
 | 
				
			||||||
 | 
					FG={{base05}}
 | 
				
			||||||
 | 
					HDR_BG={{base01}}
 | 
				
			||||||
 | 
					HDR_FG={{base04}}
 | 
				
			||||||
 | 
					SEL_BG={{base0D}}
 | 
				
			||||||
 | 
					SEL_FG={{base00}}
 | 
				
			||||||
 | 
					TXT_BG={{base01}}
 | 
				
			||||||
 | 
					TXT_FG={{base06}}
 | 
				
			||||||
 | 
					BTN_BG={{base02}}
 | 
				
			||||||
 | 
					BTN_FG={{base07}}
 | 
				
			||||||
 | 
					HDR_BTN_BG={{base05}}
 | 
				
			||||||
 | 
					HDR_BTN_FG={{base01}}
 | 
				
			||||||
 | 
					WM_BORDER_FOCUS={{base0D}}
 | 
				
			||||||
 | 
					WM_BORDER_UNFOCUS={{base04}}
 | 
				
			||||||
 | 
					GRADIENT=0.0
 | 
				
			||||||
 | 
					ROUNDNESS=2
 | 
				
			||||||
 | 
					SPACING=3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -20,6 +20,41 @@ rgb_b() {
 | 
				
			|||||||
	printf "$((0x${MO_FUNCTION_ARGS[0]:4:4}))"
 | 
						printf "$((0x${MO_FUNCTION_ARGS[0]:4:4}))"
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					rgb() {
 | 
				
			||||||
 | 
						rgb_r; printf " "
 | 
				
			||||||
 | 
						rgb_g; printf " "
 | 
				
			||||||
 | 
						rgb_b; printf " "
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					clamp() {
 | 
				
			||||||
 | 
						if [[ $1 -lt 0 ]]; then
 | 
				
			||||||
 | 
							printf "0"
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
							if [[ $1 -gt 255 ]]; then
 | 
				
			||||||
 | 
								printf "255"
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
								printf "%s" "$1"
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					lighten() {
 | 
				
			||||||
 | 
						mod="${MO_FUNCTION_ARGS[1]}"
 | 
				
			||||||
 | 
						parts=("$(rgb_r)" "$(rgb_g)" "$(rgb_b)")
 | 
				
			||||||
 | 
						vars=""
 | 
				
			||||||
 | 
						for part in "${parts[@]}"; do
 | 
				
			||||||
 | 
							let var=$part+$mod
 | 
				
			||||||
 | 
							vars=$vars"$(clamp "$var") "
 | 
				
			||||||
 | 
						done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						printf "%02x%02x%02x" $vars
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					darken() {
 | 
				
			||||||
 | 
						MO_FUNCTION_ARGS[1]="-${MO_FUNCTION_ARGS[1]}"
 | 
				
			||||||
 | 
						lighten
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
set -a # All variables after this will be exported
 | 
					set -a # All variables after this will be exported
 | 
				
			||||||
source $SCHEME
 | 
					source $SCHEME
 | 
				
			||||||
mo "$TEMPLATE"
 | 
					mo "$TEMPLATE"
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										43
									
								
								shchemes
									
									
									
									
									
								
							
							
						
						
									
										43
									
								
								shchemes
									
									
									
									
									
								
							@@ -130,17 +130,18 @@ inject() {
 | 
				
			|||||||
	parse_scheme
 | 
						parse_scheme
 | 
				
			||||||
	check_scheme_path
 | 
						check_scheme_path
 | 
				
			||||||
	parse_comment_pattern
 | 
						parse_comment_pattern
 | 
				
			||||||
 | 
						tmp=$(mktemp)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if [ "$comment_start" == "" ]; then
 | 
						if [ "$comment_start" == "" ]; then
 | 
				
			||||||
	  comment_start="#"
 | 
						  comment_start="#"
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	awk -i inplace \
 | 
						awk -v blockstart="${comment_start}START SHCHEMES BLOCK" \
 | 
				
			||||||
		-v blockstart="${comment_start}START SHCHEMES BLOCK" \
 | 
					 | 
				
			||||||
		-v blockend="${comment_start}END SHCHEMES BLOCK" \
 | 
							-v blockend="${comment_start}END SHCHEMES BLOCK" \
 | 
				
			||||||
		-v commentend="$comment_end" \
 | 
							-v commentend="$comment_end" \
 | 
				
			||||||
		-v scheme="$scheme" \
 | 
							-v scheme="$scheme" \
 | 
				
			||||||
		-v shchemes="$shchemes_path" \
 | 
							-v shchemes="$shchemes_path" \
 | 
				
			||||||
		-v sq="'" \
 | 
							-v sq="'" \
 | 
				
			||||||
 | 
							-v nl="\n" \
 | 
				
			||||||
		-F ":" '
 | 
							-F ":" '
 | 
				
			||||||
!inblock { print }
 | 
					!inblock { print }
 | 
				
			||||||
inblock {
 | 
					inblock {
 | 
				
			||||||
@@ -153,39 +154,31 @@ $1 ~ blockstart {
 | 
				
			|||||||
	system("/usr/bin/env bash -c " sq "SCHEME=\"" scheme "\";" command sq);
 | 
						system("/usr/bin/env bash -c " sq "SCHEME=\"" scheme "\";" command sq);
 | 
				
			||||||
	next
 | 
						next
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
$1 ~ blockend {
 | 
					$1 == blockend && inblock {
 | 
				
			||||||
	inblock = 0;
 | 
						inblock = 0;
 | 
				
			||||||
	print;
 | 
						print nl blockend commentend;
 | 
				
			||||||
	next
 | 
						next;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
ENDFILE  {
 | 
					ENDFILE  {
 | 
				
			||||||
    if(inblock) {
 | 
					    if(inblock) {
 | 
				
			||||||
	    print blockend commentend;
 | 
					    	print nl blockend commentend;
 | 
				
			||||||
   		for(i=1;i<=bi;i++) {
 | 
					   		for(i=1;i<=bi;i++) {
 | 
				
			||||||
   			print lines[i];
 | 
					   			print lines[i];
 | 
				
			||||||
   		}
 | 
					   		}
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
	' "$path"
 | 
						' "$path" > "$tmp" && mv "$tmp" "$path"
 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
convert_tinted_template() {
 | 
					 | 
				
			||||||
	path=$1
 | 
					 | 
				
			||||||
	sed -r \
 | 
					 | 
				
			||||||
	  -e 's/\{\{base([0-9A-F]+)-hex\}\}/{{base\1}}/' \
 | 
					 | 
				
			||||||
	  -e 's/\{\{base([0-9A-F]+)-rgb-r\}\}/{{rgb_r base\1}}/' \
 | 
					 | 
				
			||||||
	  -e 's/\{\{base([0-9A-F]+)-rgb-g\}\}/{{rgb_g base\1}}/' \
 | 
					 | 
				
			||||||
	  -e 's/\{\{base([0-9A-F]+)-rgb-b\}\}/{{rgb_b base\1}}/' "$path"
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
convert_tinted_scheme() {
 | 
					convert_tinted_scheme() {
 | 
				
			||||||
	path=$1
 | 
						path=$1
 | 
				
			||||||
 | 
						tmp=$(mktemp)
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	awk -i inplace -F ' *: *' '
 | 
						awk -F ' *: *' '
 | 
				
			||||||
/^#/ { print }
 | 
					/^#/ { print }
 | 
				
			||||||
$1 ~ "palette" { p = 1; next }
 | 
					$1 ~ "palette" { p = 1; next }
 | 
				
			||||||
p && /^ +/ { gsub(/ /, "", $1); print $1 "=" $2 }
 | 
					p && /^ +/ { gsub(/ /, "", $1); print $1 "=" $2 }
 | 
				
			||||||
	' "$path"
 | 
						' "$path" > "$tmp" && mv -f "$tmp" "$path"
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install_tinted_scheme() {
 | 
					install_tinted_scheme() {
 | 
				
			||||||
@@ -216,11 +209,23 @@ install_tinted_scheme() {
 | 
				
			|||||||
	echo "Installed ${scheme}"
 | 
						echo "Installed ${scheme}"
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					convert_tinted_template() {
 | 
				
			||||||
 | 
						path=$1
 | 
				
			||||||
 | 
						sed -r \
 | 
				
			||||||
 | 
						  -e 's/\{\{base([0-9A-F]+)-hex\}\}/{{base\1}}/' \
 | 
				
			||||||
 | 
						  -e 's/\{\{base([0-9A-F]+)-rgb-r\}\}/{{rgb_r base\1}}/' \
 | 
				
			||||||
 | 
						  -e 's/\{\{base([0-9A-F]+)-rgb-g\}\}/{{rgb_g base\1}}/' \
 | 
				
			||||||
 | 
						  -e 's/\{\{base([0-9A-F]+)-rgb-b\}\}/{{rgb_b base\1}}/' "$path"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install_tinted_template() {
 | 
					install_tinted_template() {
 | 
				
			||||||
	url=$1
 | 
						url=$1
 | 
				
			||||||
	target=$2
 | 
						target=$2
 | 
				
			||||||
 | 
						tmp=$(mktemp)
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	curl "$url" | convert_tinted_template > "${shchemes_dir}/base16/templates/${target}.mustache"
 | 
						curl "$url" > "$tmp"
 | 
				
			||||||
 | 
						convert_tinted_template "$tmp" > "${shchemes_dir}/base16/templates/${target}.mustache"
 | 
				
			||||||
 | 
						rm "$tmp"
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
manual() {
 | 
					manual() {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user