emacs: atomically change colorscheme

auto-flake-update
Yorick van Pelt 2022-04-11 12:28:57 +02:00
parent 7f81dfb76b
commit 3dda3c774a
Signed by: yorick
GPG Key ID: A36E70F9DC014A15
2 changed files with 15 additions and 24 deletions

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
sed -i 's/colors:/colors-alt:/;t;s/colors-alt:/colors:/' ~/.config/alacritty/alacritty.yml sed -i 's/colors:/colors-alt:/;t;s/colors-alt:/colors:/' ~/.config/alacritty/alacritty.yml
(grep -B1 '^colors:$' ~/.config/alacritty/alacritty.yml | head -n1 | grep -qi light && echo "light" || echo dark) | tee ~/dotfiles/color-scheme (grep -B1 '^colors:$' ~/.config/alacritty/alacritty.yml | head -n1 | grep -qi light && echo "light" || echo dark) | tee ~/dotfiles/color-scheme.tmp
mv ~/dotfiles/color-scheme.tmp ~/dotfiles/color-scheme
#emacsclient -e "(set-solarized-theme nil '$(cat ~/dotfiles/color-scheme))" > /dev/null || true #emacsclient -e "(set-solarized-theme nil '$(cat ~/dotfiles/color-scheme))" > /dev/null || true
if [ "$(cat ~/dotfiles/color-scheme)" = "dark" ]; then if [ "$(cat ~/dotfiles/color-scheme)" = "dark" ]; then
dconf write /org/gnome/desktop/interface/gtk-theme "'Adwaita-dark'" dconf write /org/gnome/desktop/interface/gtk-theme "'Adwaita-dark'"

View File

@ -136,29 +136,19 @@
* Look * Look
** Solarized ** Solarized
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
;; (use-package solarized (setq solarized-distinct-fringe-background t)
;; :if window-system (setq solarized-scale-org-headlines nil)
;; :init (defun reload-solarized (event)
;; (setq-default frame-background-mode 'dark) (let ((theme (intern (concat "solarized-" (with-temp-buffer
;; (set-frame-parameter nil 'background-mode 'dark) (insert-file-contents "~/dotfiles/color-scheme")
;; (add-hook 'after-make-frame-functions (lambda (frame) (string-trim (buffer-string))
;; "Reenable solarized" )))))
;; (enable-theme 'solarized-dark))) (load-theme theme t)))
;; :config (reload-solarized nil)
;; (load-theme 'solarized-dark t) ;; auto-reload
;; (enable-theme 'solarized-dark)) (use-package filenotify
(setq solarized-distinct-fringe-background t) :config
(setq solarized-scale-org-headlines nil) (file-notify-add-watch "~/dotfiles/color-scheme" '(change) 'reload-solarized))
(defun reload-solarized (event)
(let ((theme (intern (concat "solarized-" (with-temp-buffer
(insert-file-contents "~/dotfiles/color-scheme")
(string-trim (buffer-string))
)))))
(load-theme theme t)))
(reload-solarized nil)
;; auto-reload
(require 'filenotify)
(file-notify-add-watch "~/dotfiles/color-scheme" '(change) 'reload-solarized)
#+END_SRC #+END_SRC
** Transparency ** Transparency
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp