diff options
author | bd <bdunahu@operationnull.com> | 2025-03-18 00:08:23 -0400 |
---|---|---|
committer | bd <bdunahu@operationnull.com> | 2025-03-18 00:08:23 -0400 |
commit | 3145b31dcff940ed2ef26d1a34401d8c4eff9ba3 (patch) | |
tree | 73e2e702f7bbd8123e508e8e48cf82d62054f454 /.config/emacs/modules | |
parent | 82aa2fb26843f4ab95f472ab6a7fc126ab5baf1c (diff) |
Add midnight mode to auto-kill idle browser windows
Diffstat (limited to '.config/emacs/modules')
-rw-r--r-- | .config/emacs/modules/bd--utility.el | 15 | ||||
-rw-r--r-- | .config/emacs/modules/bd--window.el | 25 | ||||
-rw-r--r-- | .config/emacs/modules/buffer.el | 27 |
3 files changed, 47 insertions, 20 deletions
diff --git a/.config/emacs/modules/bd--utility.el b/.config/emacs/modules/bd--utility.el index b4fa87f..161549e 100644 --- a/.config/emacs/modules/bd--utility.el +++ b/.config/emacs/modules/bd--utility.el @@ -8,8 +8,8 @@ (defun bd/set-frame-alpha (value) "Set the transparency of the frame background to VALUE. 0=transparent/100=opaque." - (interactive "nTransparency Value (30 - 100 opaque): ") - (setq value (max 30 (min value 100))) + (interactive "nTransparency Value (50 - 100 opaque): ") + (setq value (max 50 (min value 100))) (set-frame-parameter (selected-frame) 'alpha `(,value . ,value)) (message "Alpha set to %d" value)) @@ -19,7 +19,9 @@ ARG can be one of the following: - nil: set the most recent wallpaper - directory: set a random image from the directory -- file: set the specified file" +- file: set the specified file + +TODO default folder" (interactive "f") (let ((wall (expand-file-name "~/wf/wall/current"))) (when arg @@ -131,11 +133,16 @@ ARG can be one of the following: (not (or (bd/buffer-exwm-p buf) (bd/buffer-text-p buf) (bd/buffer-prog-p buf) - (bd/buffer-shell-p buf) + (bd/buffer-shell-p buf) (bd/buffer-scratch-p buf) (bd/buffer-dired-p buf) (bd/buffer-irc-p buf)))) +(defun bd/kill-quietly (proc) + "Kill PROC quietly." + (ignore-errors (cond ((bufferp proc) (kill-buffer proc)) + ((stringp proc) (interrupt-process proc))))) + (provide 'bd--utility) ;;; bd--utility.el ends here diff --git a/.config/emacs/modules/bd--window.el b/.config/emacs/modules/bd--window.el index 443a521..94841e6 100644 --- a/.config/emacs/modules/bd--window.el +++ b/.config/emacs/modules/bd--window.el @@ -5,29 +5,22 @@ (require 'transient) -(use-package autorevert - :init - (global-auto-revert-mode) - :config - (setopt global-auto-revert-non-file-buffers t - auto-revert-interval 30)) - (setopt switch-to-buffer-obey-display-actions t - switch-to-buffer-in-dedicated-window 'pop) + switch-to-buffer-in-dedicated-window 'pop) ;; C-u C-h a ^display-buffer-[^-] (add-to-list 'display-buffer-alist - '("^\\*Async Shell Command\\*.*$" - (display-buffer-no-window))) + '("^\\*Async Shell Command\\*.*$" + (display-buffer-no-window))) (add-to-list 'display-buffer-alist - '((major-mode . Info-mode) - (display-buffer-in-side-window) - (side . right) - (slot . -1) - (width . 0.15))) + '((major-mode . Info-mode) + (display-buffer-in-side-window) + (side . right) + (slot . -1) + (width . 0.15))) (defun bd/layout--do-with-haste (f) (let* ((args (transient-args 'bd/layout-dispatcher)) - (haste (if (member "haste" args) 3 1))) + (haste (if (member "haste" args) 3 1))) (funcall f haste))) (transient-define-prefix bd/layout-dispatcher () ["Dispatcher > Layout\n" diff --git a/.config/emacs/modules/buffer.el b/.config/emacs/modules/buffer.el new file mode 100644 index 0000000..8a3a674 --- /dev/null +++ b/.config/emacs/modules/buffer.el @@ -0,0 +1,27 @@ +;;; -*- lexical-binding: t; -*- +;;; Commentary: +;;; Code: + + +(use-package autorevert + :init + (global-auto-revert-mode) + :config + (setopt global-auto-revert-non-file-buffers t + auto-revert-interval 30)) + +(use-package midnight + :config + ;; kill forgotten browser windows at midnight + (push + "\.\*\\(LibreWolf\\|Chromium\\|IceCat\\|Tor\sBrowser\\)" + clean-buffer-list-kill-regexps) + ;; never kill irc buffers + (push + ".*operationnull.com" + clean-buffer-list-kill-never-regexps) + (setopt clean-buffer-list-delay-special 1800)) + + +(provide 'bd--buffer) +;;; bd--buffer.el ends here |