aboutsummaryrefslogtreecommitdiff
path: root/.config
diff options
context:
space:
mode:
Diffstat (limited to '.config')
-rwxr-xr-x.config/mode/reload.d/dunst4
-rwxr-xr-x.config/mode/reload.d/fcitx53
-rwxr-xr-x.config/mode/reload.d/gtk10
-rwxr-xr-x.config/mode/reload.d/nvim5
-rwxr-xr-x.config/mode/reload.d/polybar3
-rwxr-xr-x.config/mode/reload.d/term30
-rwxr-xr-x.config/mode/reload.d/wall3
-rwxr-xr-x.config/mode/switch.d/chrome44
-rwxr-xr-x.config/mode/switch.d/discord31
-rwxr-xr-x.config/mode/switch.d/dunst21
-rwxr-xr-x.config/mode/switch.d/fcitx528
-rwxr-xr-x.config/mode/switch.d/gtk14
-rwxr-xr-x.config/mode/switch.d/mode7
-rwxr-xr-x.config/mode/switch.d/polybar13
-rwxr-xr-x.config/mode/switch.d/rofi8
-rwxr-xr-x.config/mode/switch.d/vim32
-rwxr-xr-x.config/mode/switch.d/zathura27
17 files changed, 283 insertions, 0 deletions
diff --git a/.config/mode/reload.d/dunst b/.config/mode/reload.d/dunst
new file mode 100755
index 0000000..3c09a31
--- /dev/null
+++ b/.config/mode/reload.d/dunst
@@ -0,0 +1,4 @@
+#!/bin/sh
+killall dunst
+fork dunst
+
diff --git a/.config/mode/reload.d/fcitx5 b/.config/mode/reload.d/fcitx5
new file mode 100755
index 0000000..cd27698
--- /dev/null
+++ b/.config/mode/reload.d/fcitx5
@@ -0,0 +1,3 @@
+#!/bin/sh
+fork fcitx5 -rd
+
diff --git a/.config/mode/reload.d/gtk b/.config/mode/reload.d/gtk
new file mode 100755
index 0000000..178f895
--- /dev/null
+++ b/.config/mode/reload.d/gtk
@@ -0,0 +1,10 @@
+#!/bin/sh
+# this is max jank but xfsettingsd does other things besides live gtk theme
+# reloading, and i don't like having it running constantly because it fucks
+# up fcitx5 and xbindkeys
+(
+ fork xfsettingsd
+ sleep 1
+ killall xfsettingsd
+)
+
diff --git a/.config/mode/reload.d/nvim b/.config/mode/reload.d/nvim
new file mode 100755
index 0000000..84ae847
--- /dev/null
+++ b/.config/mode/reload.d/nvim
@@ -0,0 +1,5 @@
+#!/bin/sh
+nvr --serverlist | while read -r nvim_socket ; do
+ fork nvr --nostart --servername "$nvim_socket" -c 'source $XDG_CONFIG_HOME/nvim/mode.vim'
+done
+
diff --git a/.config/mode/reload.d/polybar b/.config/mode/reload.d/polybar
new file mode 100755
index 0000000..af39394
--- /dev/null
+++ b/.config/mode/reload.d/polybar
@@ -0,0 +1,3 @@
+#!/bin/sh
+polybar-msg cmd restart > /dev/null
+
diff --git a/.config/mode/reload.d/term b/.config/mode/reload.d/term
new file mode 100755
index 0000000..5f02463
--- /dev/null
+++ b/.config/mode/reload.d/term
@@ -0,0 +1,30 @@
+#!/bin/sh
+escape_msgs="$(cat << EOF | tr -d '\n'
+\033]11;$bg\007
+\033]10;$fg\007
+\033]12;$fg\007
+\033]14;$bg\007
+\033]13;$fg\007
+\033]17;$color8\007
+\033]708;$bg\007
+\033]4;0;$color0\007
+\033]4;1;$color1\007
+\033]4;2;$color2\007
+\033]4;3;$color3\007
+\033]4;4;$color4\007
+\033]4;5;$color5\007
+\033]4;6;$color6\007
+\033]4;7;$color7\007
+\033]4;8;$color8\007
+\033]4;9;$color9\007
+\033]4;10;$color10\007
+\033]4;11;$color11\007
+\033]4;12;$color12\007
+\033]4;13;$color13\007
+\033]4;14;$color14\007
+\033]4;15;$color15\007
+EOF
+)"
+
+find /dev/pts -exec sh -c "printf \"$escape_msgs\" > {}" \; 2> /dev/null
+
diff --git a/.config/mode/reload.d/wall b/.config/mode/reload.d/wall
new file mode 100755
index 0000000..f6c2e41
--- /dev/null
+++ b/.config/mode/reload.d/wall
@@ -0,0 +1,3 @@
+#!/bin/sh
+rwall
+
diff --git a/.config/mode/switch.d/chrome b/.config/mode/switch.d/chrome
new file mode 100755
index 0000000..4c596c3
--- /dev/null
+++ b/.config/mode/switch.d/chrome
@@ -0,0 +1,44 @@
+#!/bin/sh
+(
+ cd ~/.cache/wal/chromium
+ rm -f 'Cached Theme.pak' 'bg.png' 'manifest.json'
+ convert -size 100x100 "xc:$bg" bg.png
+ bg_alt=$(mix_rgb $color7 $bg 0.20)
+ fg_alt=$(mix_rgb $color15 $fg 0.60)
+ bg="$(hex_to_rgb_array "$bg")"
+ fg="$(hex_to_rgb_array "$fg")"
+ bg_alt="$(hex_to_rgb_array "$bg_alt")"
+ fg_alt="$(hex_to_rgb_array "$fg_alt")"
+ cat << EOF > manifest.json
+{
+ "description": "colorscheme generated by mode",
+ "manifest_version": 2,
+ "name": "mode theme",
+ "theme": {
+ "images": { "theme_frame": "bg.png" },
+ "colors": {
+ "frame": $bg,
+ "button_background": $fg,
+ "ntp_background": $bg,
+ "ntp_text": $bg,
+ "toolbar": $bg_alt,
+ "toolbar_button_icon": $fg,
+ "tab_background_text": $fg_alt,
+ "tab_background_text_inactive": $fg_alt,
+ "tab_background_text_incognito": $fg_alt,
+ "tab_background_text_incognito_inactive": $fg_alt,
+ "bookmark_text": $fg,
+ "tab_text": $fg
+ },
+ "tints": {
+ "buttons": [ -1, -1, -1 ],
+ "frame_inactive": [ -1, -1, -1 ],
+ "frame_incognito": [ -1, -1, -1 ],
+ "frame_incognito_inactive": [ -1, -1, -1 ]
+ }
+ },
+ "version": "2"
+}
+EOF
+)
+
diff --git a/.config/mode/switch.d/discord b/.config/mode/switch.d/discord
new file mode 100755
index 0000000..f656783
--- /dev/null
+++ b/.config/mode/switch.d/discord
@@ -0,0 +1,31 @@
+#!/bin/sh
+cat << EOF > "$XDG_CONFIG_HOME/BetterDiscord/themes/mode.theme.css"
+/**
+ * @name mode
+ * @author mode
+ * @version 0
+*/
+
+/* AUTOMATICALLY GENERATED, DO NOT EDIT */
+
+.theme-dark, .theme-light {
+ --background-primary: $bg;
+ --background-secondary: $bg;
+ --background-secondary-alt: $bg;
+ --text-primary: $fg;
+ --text-secondary: $color15;
+ --accent: $color4;
+ --accent-alt: $color12;
+ --error: $color1;
+ --error-alt: $color9;
+}
+
+.theme-dark {
+ --background-tertiary: $(mix_rgb $bg '#000000' 0.7);
+}
+
+.theme-light {
+ --background-tertiary: $bg;
+}
+EOF
+
diff --git a/.config/mode/switch.d/dunst b/.config/mode/switch.d/dunst
new file mode 100755
index 0000000..2a5a60e
--- /dev/null
+++ b/.config/mode/switch.d/dunst
@@ -0,0 +1,21 @@
+#!/bin/sh
+cat "$XDG_CONFIG_HOME/dunst/base" - << EOF > "$XDG_CONFIG_HOME/dunst/dunstrc"
+frame_color = "$color0"
+
+[urgency_low]
+background = "$bg"
+foreground = "$fg"
+timeout = 10
+
+[urgency_normal]
+background = "$bg"
+foreground = "$fg"
+timeout = 10
+
+[urgency_critical]
+background = "$color1"
+foreground = "$bg"
+frame_color = "$color1"
+timeout = 0
+EOF
+
diff --git a/.config/mode/switch.d/fcitx5 b/.config/mode/switch.d/fcitx5
new file mode 100755
index 0000000..ee99f13
--- /dev/null
+++ b/.config/mode/switch.d/fcitx5
@@ -0,0 +1,28 @@
+#!/bin/sh
+cat "$XDG_DATA_HOME/fcitx5/themes/loek/base.conf" - << EOF > "$XDG_DATA_HOME/fcitx5/themes/loek/theme.conf"
+[InputPanel]
+NormalColor=$fg
+HighlightCandidateColor=$accent_text
+HighlightColor=$color13
+HighlightBackgroundColor=$bg
+
+[InputPanel/Background]
+Color=$bg
+BorderColor=$accent
+
+[InputPanel/Highlight]
+Color=$accent
+
+[Menu/Background]
+Color=$bg
+
+[Menu]
+NormalColor=$fg
+
+[Menu/Highlight]
+Color=$accent
+
+[Menu/Separator]
+Color=$color7
+EOF
+
diff --git a/.config/mode/switch.d/gtk b/.config/mode/switch.d/gtk
new file mode 100755
index 0000000..b5e27cb
--- /dev/null
+++ b/.config/mode/switch.d/gtk
@@ -0,0 +1,14 @@
+#!/bin/sh
+GTK_3_SETTINGS_INI="$XDG_CONFIG_HOME/gtk-3.0/settings.ini"
+GTK_4_SETTINGS_ENV="$XDG_CONFIG_HOME/gtk-4.0/env"
+if [ $mode = "light" ]; then
+ sed 's/^\(export\s\+GTK_THEME=.\+\)-Dark\(.*\)$/\1-Light\2/g' -i "$GTK_4_SETTINGS_ENV"
+ sed "s/-Dark/-Light/" -i "$GTK_3_SETTINGS_INI"
+ sed "s/gtk-application-prefer-dark-theme.*/gtk-application-prefer-dark-theme=false/" -i "$GTK_3_SETTINGS_INI"
+else
+ sed 's/^\(export\s\+GTK_THEME=.\+\)-Light\(.*\)$/\1-Dark\2/g' -i "$GTK_4_SETTINGS_ENV"
+ sed "s/-Light/-Dark/" -i "$GTK_3_SETTINGS_INI"
+ sed "s/gtk-application-prefer-dark-theme.*/gtk-application-prefer-dark-theme=true/" -i "$GTK_3_SETTINGS_INI"
+fi
+grep gtk-theme-name "$GTK_3_SETTINGS_INI" | cut -f2 -d= | xargs xfconf-query -c xsettings -p /Net/ThemeName -s
+
diff --git a/.config/mode/switch.d/mode b/.config/mode/switch.d/mode
new file mode 100755
index 0000000..2b638f6
--- /dev/null
+++ b/.config/mode/switch.d/mode
@@ -0,0 +1,7 @@
+#!/bin/sh
+mkdir -p "$XDG_DATA_HOME/mode"
+rm -f "$XDG_DATA_HOME/mode/dark" "$XDG_DATA_HOME/mode/light"
+
+echo "$mode" > "$XDG_DATA_HOME/mode/active"
+touch "$XDG_DATA_HOME/mode/$mode"
+
diff --git a/.config/mode/switch.d/polybar b/.config/mode/switch.d/polybar
new file mode 100755
index 0000000..b7e752a
--- /dev/null
+++ b/.config/mode/switch.d/polybar
@@ -0,0 +1,13 @@
+#!/bin/sh
+cat << EOF > "$XDG_CONFIG_HOME/polybar/colors.ini"
+[color]
+bg = \${xrdb:background:$bg}
+fg = \${xrdb:foreground:$fg}
+fg-alt = \${xrdb:background:$bg}
+fg-half = \${xrdb:color8:$color8}
+
+alpha = #00000000
+
+; vim:ft=dosini
+EOF
+
diff --git a/.config/mode/switch.d/rofi b/.config/mode/switch.d/rofi
new file mode 100755
index 0000000..19b9008
--- /dev/null
+++ b/.config/mode/switch.d/rofi
@@ -0,0 +1,8 @@
+#!/bin/sh
+cat << EOF > "$XDG_CONFIG_HOME/rofi/colors"
+export background="$bg"
+export foreground="$fg"
+export accent="$accent"
+export accent_text="$accent_text"
+EOF
+
diff --git a/.config/mode/switch.d/vim b/.config/mode/switch.d/vim
new file mode 100755
index 0000000..ea5ab63
--- /dev/null
+++ b/.config/mode/switch.d/vim
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+# lightline
+cat - "$XDG_CONFIG_HOME/nvim/lightline-base.vim" << EOF > "$XDG_CONFIG_HOME/nvim/lightline.vim"
+let s:bg = [ '$bg', 'NONE' ]
+let s:fg = [ '$fg', 'NONE' ]
+let s:mode = [ '$color0', 'NONE' ]
+let s:faint = [ '$color8', 'NONE' ]
+let s:none = [ 'NONE', 'NONE' ]
+let s:test = [ '#ff00ff', 'NONE' ]
+EOF
+
+# terminal colors
+cat << EOF > "$XDG_CONFIG_HOME/nvim/termcolors.vim"
+let g:terminal_color_0 = '$color0'
+let g:terminal_color_1 = '$color1'
+let g:terminal_color_2 = '$color2'
+let g:terminal_color_3 = '$color3'
+let g:terminal_color_4 = '$color4'
+let g:terminal_color_5 = '$color5'
+let g:terminal_color_6 = '$color6'
+let g:terminal_color_7 = '$color7'
+let g:terminal_color_8 = '$color8'
+let g:terminal_color_9 = '$color9'
+let g:terminal_color_10 = '$color10'
+let g:terminal_color_11 = '$color11'
+let g:terminal_color_12 = '$color12'
+let g:terminal_color_13 = '$color13'
+let g:terminal_color_14 = '$color14'
+let g:terminal_color_15 = '$color15'
+EOF
+
diff --git a/.config/mode/switch.d/zathura b/.config/mode/switch.d/zathura
new file mode 100755
index 0000000..0fde1d1
--- /dev/null
+++ b/.config/mode/switch.d/zathura
@@ -0,0 +1,27 @@
+#!/bin/sh
+cat << EOF > "$XDG_CONFIG_HOME/zathura/colors"
+set default-bg "$bg"
+set statusbar-bg "$bg"
+set inputbar-bg "$bg"
+set completion-highlight-fg "$bg"
+set completion-bg "$bg"
+set notification-error-fg "$bg"
+set notification-warning-fg "$bg"
+set notification-fg "$bg"
+set recolor-lightcolor "$bg"
+
+set default-fg "$fg"
+set inputbar-fg "$fg"
+set completion-fg "$fg"
+set statusbar-fg "$fg"
+set recolor-darkcolor "$fg"
+
+set notification-error-bg "$color9"
+set notification-warning-bg "$color9"
+set completion-highlight-bg "$color9"
+set highlight-color "$color9"
+
+set highlight-active-color "$color13"
+set notification-bg "$color13"
+EOF
+