From: Stephen Berman Date: Tue, 19 Jul 2011 21:31:26 +0000 (+0200) Subject: (proced-format): Make header lines align with the text X-Git-Tag: emacs-pretest-24.0.90~104^2~193 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=92e15d10a641b7877b91436ab215acb9d9c16f22;p=emacs.git (proced-format): Make header lines align with the text --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0699a93ac9b..069dbb2922f 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2011-07-19 Stephen Berman + + * proced.el (proced-format): Make header lines align with the text + (bug#1779). + 2011-07-19 Lars Magne Ingebrigtsen * view.el (view-buffer): Allow running in `special' modes if we're diff --git a/lisp/proced.el b/lisp/proced.el index 11598d7350f..cc1856060b3 100644 --- a/lisp/proced.el +++ b/lisp/proced.el @@ -1509,6 +1509,16 @@ Replace newline characters by \"^J\" (two characters)." (if (string-match "[ \t]+$" proced-header-line) (setq proced-header-line (substring proced-header-line 0 (match-beginning 0)))) + (setq proced-header-line (concat " " proced-header-line)) + ;; From buff-menu.el: Turn whitespace chars in the header into + ;; stretch specs so they work regardless of the header-line face. + (let ((pos 0) + (header proced-header-line)) + (while (string-match "[ \t\n]+" header pos) + (setq pos (match-end 0)) + (put-text-property (match-beginning 0) pos 'display + (list 'space :align-to pos) + header))) ;; (delete-trailing-whitespace) (goto-char (point-min)) (while (re-search-forward "[ \t\r]+$" nil t) @@ -1602,7 +1612,6 @@ After updating a displayed Proced buffer run the normal hook (while (not (eobp)) (insert " ") (forward-line)) - (setq proced-header-line (concat " " proced-header-line)) (if revert (set-buffer-modified-p nil)) ;; set `goal-column'