]> code.delx.au - gnu-emacs/blobdiff - lisp/ibuffer.el
Make ibuffer not break on newline-embedded buffer names
[gnu-emacs] / lisp / ibuffer.el
index b2ec073dc16dae9447d3173d9f426018a5137d55..704907a79f751c746e1fb37dde1b79982d247e12 100644 (file)
@@ -1740,7 +1740,13 @@ If point is on a group name, this function operates on that group."
        (cond ((zerop bufs) "No buffers")
             ((= 1 bufs) "1 buffer")
             (t (format "%s buffers" bufs))))))
-  (propertize (buffer-name) 'font-lock-face (ibuffer-buffer-name-face buffer mark)))
+  (let ((string (propertize (buffer-name)
+                            'font-lock-face
+                            (ibuffer-buffer-name-face buffer mark))))
+    (if (not (seq-position string ?\n))
+        string
+      (replace-regexp-in-string
+       "\n" (propertize "^J" 'font-lock-face 'escape-glyph) string))))
 
 (define-ibuffer-column size
   (:inline t