2010-11-03 38 views

Trả lời

8

Đây là "thụt lề toàn bộ đệm" mã tôi đặt trong tập tin ~/.emacs.d/defuns.el tôi. Tôi đã thực hiện bước bổ sung và liên kết nó với một phím nhanh, C-x \. Điều này cũng sẽ xóa tất cả các khoảng trống treo của bạn cũng như chuyển đổi các ký tự tab thành biểu diễn tương đương không gian của chúng.

(defun indent-buffer()                                        
    "Indents an entire buffer using the default intenting scheme."                             
    (interactive)                                          
    (point-to-register 'o)                                       
    (delete-trailing-whitespace)                                      
    (indent-region (point-min) (point-max) nil)                                  
    (untabify (point-min) (point-max))                                    
    (jump-to-register 'o))                                       

(global-set-key "\C-x\\" 'indent-buffer)                                   

Chỉnh sửa, kết hợp @JSONs gợi ý dưới đây sẽ cung cấp cho bạn một defun trông giống như thay vì điều này:

(defun indent-buffer()                                        
    "Indents an entire buffer using the default intenting scheme."                             
    (interactive)                                          
    (save-excursion                                         
    (delete-trailing-whitespace)                                     
    (indent-region (point-min) (point-max) nil)                                  
    (untabify (point-min) (point-max))))                                   

Tôi đã thử nghiệm này ra và nó hoạt động giống như trước đây. Cảm ơn bạn đã chỉ ra rằng JSON.

+0

Thay vì đăng ký điểm và đăng ký, có thể tốt hơn để sử dụng lưu-tham quan để bọc khối định dạng lại. – JSON

4

Chọn toàn bộ bộ đệm và làm M-x indent-region

Xem this guide.

28

C-x h C-M-\

Hai lệnh chọn toàn bộ đệm và chạy indent-region.

Các vấn đề liên quan