.emacs-my
changeset 1604 72fa4385c7ba
parent 1603 23bc0ad590b9
child 1605 bbb4f7c881ff
equal deleted inserted replaced
1603:23bc0ad590b9 1604:72fa4385c7ba
  3805 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  3805 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  3806 (message "hideshow")
  3806 (message "hideshow")
  3807 
  3807 
  3808 (require 'hideshow)
  3808 (require 'hideshow)
  3809 
  3809 
  3810 (define-key hs-minor-mode-map (kbd "s--") #'hs-toggle-hiding)
  3810 (defun my-selective-display-toggle ()
       
  3811   "Better alternative to 'C-x $' using current column as threshold."
       
  3812   (interactive)
       
  3813   (set-selective-display
       
  3814    (unless selective-display
       
  3815      (1+ (current-column)))))
       
  3816 
       
  3817 (defun my-hs-toggle ()
       
  3818   (interactive)
       
  3819   (if hs-minor-mode
       
  3820       (if (condition-case nil
       
  3821               (hs-toggle-hiding)
       
  3822             (error t))
       
  3823           (hs-show-all))
       
  3824     (my-selective-display-toggle)))
       
  3825 
       
  3826 (define-key global-map (kbd "s--") #'my-hs-toggle)
  3811 
  3827 
  3812 (add-to-list
  3828 (add-to-list
  3813  'hs-special-modes-alist
  3829  'hs-special-modes-alist
  3814  '(nxml-mode
  3830  '(nxml-mode
  3815    "<!--\\|<[^/>][^>]*>" "-->\\|</[^/>]+>" "<!--" nxml-forward-element nil))
  3831    "<!--\\|<[^/>][^>]*>" "-->\\|</[^/>]+>" "<!--" nxml-forward-element nil))