dotfiles

🎜 Clone'em, tweak'em, stick'em in your $HOME 🎝
git clone https://git.kevinlegouguec.net/dotfiles
Log | Files | Refs | README

commit 1688ee78986af9f069da864779db7cdf4f707b7d
parent 6a55b05eb1433f7d95b324b7bf740fa470d53c60
Author: KΓ©vin Le Gouguec <kevin.legouguec@gmail.com>
Date:   Sat,  1 Oct 2022 11:55:29 +0200

Use my/centered-mode instead of relying on Gnus layouts

Lots of commands in Gnus buffers try to reinstate the setup defined in
gnus-buffer-configuration, so when eg drafting a message with the
original article displayed on the side, and using P or N to move
around the thread, there ends up being some friction in window
management.

So stop using the Group buffer as a way to left-pad articles; it
doesn't even look good on half-width frames anyway.

Diffstat:
M.emacs | 10++++++----
M.gnus | 23++++++++++-------------
2 files changed, 16 insertions(+), 17 deletions(-)

diff --git a/.emacs b/.emacs @@ -126,6 +126,7 @@ (message "changed from %s to %s" old-width new-width))) (defvar-local my/centered-width 'fill-column) +(defvar-local my/centered-set-right-margin nil) (define-minor-mode my/centered-mode "Update margins to keep content centered." @@ -150,11 +151,12 @@ (adjustable-width (- (window-total-width window) (+ (fringe-columns 'left) (fringe-columns 'right)))) - (target-margin + (left-margin (when (> adjustable-width target-body-width) - (/ (- adjustable-width target-body-width) 2)))) - ;; Only set left margin, so that long lines are not truncated. - (set-window-margins window target-margin)))) + (/ (- adjustable-width target-body-width) 2))) + (right-margin (and my/centered-set-right-margin + left-margin))) + (set-window-margins window left-margin right-margin)))) (defun my/kill (stuff) (kill-new stuff) diff --git a/.gnus b/.gnus @@ -53,6 +53,16 @@ . "%b %d") (t . "%F"))) + +(add-hook 'gnus-summary-mode-hook + (lambda () + (setq fill-column 120) + (my/centered-mode))) +(add-hook 'gnus-article-mode-hook + (lambda () + (setq fill-column 80 + my/centered-set-right-margin t) + (my/centered-mode))) ;;; Summary tweaks. @@ -86,19 +96,6 @@ (setq-local message-subject-re-regexp my/gnus-summary-normalize-subject))) -(gnus-add-configuration - '(summary - (horizontal 1.0 - (vertical 40 (group 1.0)) - (vertical 1.0 (summary 1.0 point))))) -(gnus-add-configuration - '(article - (horizontal 1.0 - (vertical 40 (group 1.0)) - (vertical 1.0 - (summary 0.25 point) - (article 1.0))))) - (let* ((initials (mapconcat (lambda (s) (substring s 0 1)) (split-string user-full-name) nil))