diff options
| author | tslil <tslil@posteo.de> | 2026-03-22 19:15:39 +0000 |
|---|---|---|
| committer | tslil <tslil@posteo.de> | 2026-03-22 19:15:53 +0000 |
| commit | 866867f8455de82ca6dd4f9e5f7626b779d9912c (patch) | |
| tree | e4c111977a8160aa43d10f7a14b61a69e74599e6 /emacs | |
| parent | d2697ade5056e676c5cd8afc421051ae4fa1addc (diff) | |
[emacs] listent to dbus for theme changes, fix edge case in backspace in completing-read
Diffstat (limited to 'emacs')
| -rw-r--r-- | emacs/inits/01-basic.el | 74 | ||||
| -rw-r--r-- | emacs/inits/11-completion.el | 6 |
2 files changed, 51 insertions, 29 deletions
diff --git a/emacs/inits/01-basic.el b/emacs/inits/01-basic.el index 0ee67b2..65dd445 100644 --- a/emacs/inits/01-basic.el +++ b/emacs/inits/01-basic.el @@ -1,4 +1,4 @@ -;; Time-stamp: <2026-03-19 16h48 GMT (anker)> +;; Time-stamp: <2026-03-22 19h15 GMT (11978fd4)> ;; ----------------------------------------------------------------------------- ;; Interface @@ -33,36 +33,56 @@ (split-window-horizontally) (enlarge-to-fill))) -(use-package circadian - :ensure t - :config - (setq calendar-longitude -0.12 - calendar-latitude 51.5 - circadian-themes '((:sunrise . acme) (:sunset . dracula)))) - (if (display-graphic-p) (progn (add-to-list 'custom-theme-load-path "~/.config/emacs/themes/") - ;; (load-theme 'acme t) - ;; (load-theme 'challenger-deep t) - - (require 'circadian) - (circadian-setup) - - (defun my-disable-bold-fonts () - (interactive) - (mapc - (lambda (face) - (set-face-attribute face nil :weight 'normal)) - (face-list))) + ;; listen for theme changes + (defconst dark-theme 'dracula) + (defconst light-theme 'acme) + + (defun my-switch-to-light () + (disable-theme dark-theme) + (load-theme light-theme t)) + + (defun my-switch-to-dark () + (disable-theme light-theme) + (load-theme dark-theme t)) + + (require 'dbus) + (pcase (caar (dbus-ignore-errors + (dbus-call-method + :session + "org.freedesktop.portal.Desktop" + "/org/freedesktop/portal/desktop" + "org.freedesktop.portal.Settings" "Read" + "org.freedesktop.appearance" "color-scheme"))) + (1 (my-switch-to-dark)) + (2 (my-switch-to-light))) + + (dbus-register-signal + :session + "org.freedesktop.portal.Desktop" + "/org/freedesktop/portal/desktop" + "org.freedesktop.portal.Settings" + "SettingChanged" + (lambda (path var val) + (when (and (string= path "org.freedesktop.appearance") + (string= var "color-scheme")) + (pcase (car val) + (1 (my-switch-to-dark)) + (2 (my-switch-to-light)))))) + + ;; fonts (progn - (setq my-font "Sudo-18") - (setq my-font "PxPlus IBM VGA 9x16-18") - (setq my-font "Commit Mono-18") - (setq my-font "Berkeley Mono-18") - (setq my-font "Monaspace Krypton-18") - (setq my-font "BQN386 Unicode DZ-11") + (setq my-font "Commit Mono-14") + (setq my-font "Berkeley Mono-14") + (setq my-font "Monaspace Krypton-14") + (setq my-font "Sudo-14") + (setq my-font "Iosevka Term Slab-14") + (setq my-font "PxPlus IBM VGA 9x16-14") + (setq my-font "Myna-14") + (setq my-font "BQN386 Unicode DZ-14") ;; (setq line-spacing 4) (set-frame-font my-font) (set-face-attribute 'font-lock-comment-face nil :slant 'italic)) @@ -111,7 +131,7 @@ (setq enable-dir-local-variables nil) -(global-auto-revert-mode t) +(global-auto-revert-mode 1) ;; ----------------------------------------------------------------------------- ;; Basic packages diff --git a/emacs/inits/11-completion.el b/emacs/inits/11-completion.el index de9467e..74b6e44 100644 --- a/emacs/inits/11-completion.el +++ b/emacs/inits/11-completion.el @@ -1,4 +1,4 @@ -;; Time-stamp: <2026-03-22 11h47 GMT (anker)> +;; Time-stamp: <2026-03-22 19h03 GMT (11978fd4)> (use-package savehist :ensure t @@ -66,7 +66,9 @@ Use as a value for `completion-in-region-function'." (let ((slash-pos (save-excursion (backward-word 1) (search-backward "/" nil t)))) - (delete-region (1+ slash-pos) (point))) + (if slash-pos + (delete-region (1+ slash-pos) (point)) + (delete-backward-char 1))) (delete-backward-char 1))) (defun my-switch-to-buffer-with-recentf () |
