8

Suppone that I want to apply delete-trailing-whitespace to all buffers in an Emacs session. How can I do that?

I have in this session many buffers. So instead to apply M-x delete-trailing-whitespaceto manually each buffer, I need some way to make it automatically.

Thank you very much

Israel
  • 3,252
  • 4
  • 36
  • 54

2 Answers2

10

This should do it:

(defun delete-trailing-whitespace-each-buffer ()
  (interactive)
  (mapc (lambda (buffer)
          (condition-case nil
              (with-current-buffer buffer
                (delete-trailing-whitespace))
            (buffer-read-only nil)))
        (buffer-list)))

It won't do anything on read-only buffers.

Michael Hoffman
  • 32,526
  • 7
  • 64
  • 86
5

ibuffer is another option. You can quickly select the buffers you want (maybe by regexp), and press E to evaluate a form in each buffer. This works for any form.

event_jr
  • 17,467
  • 4
  • 47
  • 62