2009-06-03 31 views
6

Tôi sử dụng hideshow.el trong bộ đệm cc-mode để thu gọn các phần của tệp mà tôi không xem.emacs: HideShow có hoạt động với chế độ xml (chế độ sgml) không?

Thật tuyệt khi có thể thực hiện điều đó trong tài liệu XML. Tôi sử dụng emacs 22.2.1 và chế độ sgml tích hợp để chỉnh sửa xml. Tôi đã không nhận được hideshow để làm việc với XML. Ý tôi là, tôi bật chế độ nhỏ nhưng các tổ hợp phím không có hiệu lực. Ooh, ngoại trừ, tôi đã nhận được một bình luận XML để sụp đổ. Nhưng không có yếu tố.

Có ai đã thực hiện thành công điều này không?
Đề xuất?


EDIT: Tôi sẽ đặt cược nó sẽ làm việc nếu tôi thêm một yếu tố sgml-mode để hs-chuyên chế độ-alist. Tôi cần một regexp cho khối khởi động. Có ai đã làm điều này không?


Tôi chưa chuyển sang chế độ nxml. Tôi có nên không? nó làm "gấp" hay ẩn nấp?

Trả lời

8

Trả lời câu hỏi của riêng tôi ... Tôi đang sử dụng một cái gì đó như thế này. Dường như làm việc.

;; Fix XML folding 
(add-to-list 'hs-special-modes-alist 
      (list 'nxml-mode 
        "<!--\\|<[^/>]*[^/]>" 
        "-->\\|</[^/>]*[^/]>" 
        "<!--" 
        'nxml-forward-element 
        nil)) 

;; Fix HTML folding 
(dolist (mode '(sgml-mode 
       html-mode 
       html-erb-mode)) 
    (add-to-list 'hs-special-modes-alist 
       (list mode 
        "<!--\\|<[^/>]*[^/]>" 
        "-->\\|</[^/>]*[^/]>" 
        "<!--" 
        'sgml-skip-tag-forward 
        nil))) 
Các vấn đề liên quan