2011-12-04 1 views
7

이멕스 세션의 모든 버퍼에 delete-trailing-whitespace을 적용하고 싶습니다. 어떻게해야합니까?이맥스의 모든 버퍼에 함수 적용

이 세션에는 많은 버퍼가 있습니다. 그래서 M-x delete-trailing-whitespace을 수동으로 각 버퍼에 적용하는 대신 자동으로 만들 방법이 필요합니다.

답변

9

이 그것을해야 대단히 감사합니다

(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))) 

그것은 읽기 전용 버퍼에 아무것도하지 않습니다.

+0

대단히 감사합니다. 그것은 작동합니다! – Israel

5

ibuffer은 다른 옵션입니다. 원하는 버퍼를 (아마도 regexp로) 선택하고 E을 눌러 각 버퍼의 양식을 평가할 수 있습니다. 이것은 모든 양식에 적용됩니다.