From 76787707fef516659258ea827e678e04cc9c5919 Mon Sep 17 00:00:00 2001 From: Thierry Volpiatto Date: Fri, 27 Jun 2014 07:28:33 +0200 Subject: [PATCH] * mu4e/mu4e-view.el (mu4e-view-fill-long-lines): New, bind it to M-q. --- mu4e/mu4e-view.el | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/mu4e/mu4e-view.el b/mu4e/mu4e-view.el index 7db8d9b2..96155d44 100644 --- a/mu4e/mu4e-view.el +++ b/mu4e/mu4e-view.el @@ -597,7 +597,8 @@ FUNC should be a function taking two arguments: ;; misc (define-key map "w" 'visual-line-mode) (define-key map "h" 'mu4e-view-toggle-hide-cited) - + (define-key map (kbd "M-q") 'mu4e-view-fill-long-lines) + ;; next 3 only warn user when attempt in the message view (define-key map "u" 'mu4e-view-unmark) (define-key map "U" 'mu4e-view-unmark-all) @@ -909,6 +910,28 @@ Add this function to `mu4e-view-mode-hook' to enable this feature." (overlay-put ov 'face 'mu4e-region-code)) (setq beg nil end nil)))))) +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Wash functions +(defun mu4e-view-fill-long-lines () + "Fill lines that are wider than the window width or `fill-column'." + (interactive) + (with-current-buffer mu4e~view-buffer + (save-excursion + (let ((inhibit-read-only t) + (width (window-width (get-buffer-window (current-buffer))))) + (save-restriction + (message-goto-body) + (while (not (eobp)) + (end-of-line) + (when (>= (current-column) (min fill-column width)) + (narrow-to-region (min (1+ (point)) (point-max)) + (point-at-bol)) + (let ((goback (point-marker))) + (fill-paragraph nil) + (goto-char (marker-position goback))) + (widen)) + (forward-line 1))))))) + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; attachment handling (defun mu4e~view-get-attach-num (prompt msg &optional multi)