aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Ingebrigtsen2016-04-28 18:51:51 +0200
committerLars Ingebrigtsen2016-04-28 18:51:51 +0200
commitf078ef90cbcf479053efd81e1d95e50e64da2e99 (patch)
tree889466ce61d4acf3a4c8db982dc106795890100c
parentc3ac2cbf73516d2414c845087cac8fc7ec1ce5d7 (diff)
downloademacs-f078ef90cbcf479053efd81e1d95e50e64da2e99.tar.gz
emacs-f078ef90cbcf479053efd81e1d95e50e64da2e99.zip
Make ibuffer not break on newline-embedded buffer names
* lisp/ibuffer.el (name): When buffer names contain newlines, quote those newlines before displaying (bug#12378).
-rw-r--r--lisp/ibuffer.el8
1 files changed, 7 insertions, 1 deletions
diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el
index b2ec073dc16..704907a79f7 100644
--- a/lisp/ibuffer.el
+++ b/lisp/ibuffer.el
@@ -1740,7 +1740,13 @@ If point is on a group name, this function operates on that group."
1740 (cond ((zerop bufs) "No buffers") 1740 (cond ((zerop bufs) "No buffers")
1741 ((= 1 bufs) "1 buffer") 1741 ((= 1 bufs) "1 buffer")
1742 (t (format "%s buffers" bufs)))))) 1742 (t (format "%s buffers" bufs))))))
1743 (propertize (buffer-name) 'font-lock-face (ibuffer-buffer-name-face buffer mark))) 1743 (let ((string (propertize (buffer-name)
1744 'font-lock-face
1745 (ibuffer-buffer-name-face buffer mark))))
1746 (if (not (seq-position string ?\n))
1747 string
1748 (replace-regexp-in-string
1749 "\n" (propertize "^J" 'font-lock-face 'escape-glyph) string))))
1744 1750
1745(define-ibuffer-column size 1751(define-ibuffer-column size
1746 (:inline t 1752 (:inline t