;ELC   
;;; Compiled
;;; in Emacs version 25.3.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(defconst vhl/version "1.8")
(provide 'volatile-highlights)
#@39 A flag if the emacs is xemacs or not.
(defconst vhl/\.xemacsp (string-match "XEmacs" emacs-version) (#$ . 470))
#@30 List of volatile highlights.
(defvar vhl/\.hl-lst nil (#$ . 588))
(custom-declare-group 'volatile-highlights nil "Visual feedback on operations." :group 'editing)
#@58 Return true if the :inherit face attribute is supported.
(defalias 'vhl/\.face-inheritance-possible-p #[nil "\301\236\207" [custom-face-attributes :inherit] 2 (#$ . 757)])
(byte-code "\301\302\204 \303 \204 \304\202 \305\306\307\310%\210\311\312\313\314\315\316\317\320\307\310\321\322&\207" [vhl/\.xemacsp custom-declare-face vhl/default-face vhl/\.face-inheritance-possible-p ((((class color) (background light)) (:background "yellow1")) (((class color) (background dark)) (:background "SkyBlue4")) (t :inverse-video t)) ((t :inherit secondary-selection)) "Face used for volatile highlights." :group volatile-highlights custom-declare-variable volatile-highlights-mode nil "Non-nil if Volatile-Highlights mode is enabled.\nSee the `volatile-highlights-mode' command\nfor a description of this minor mode.\nSetting this variable directly does not take effect;\neither customize it (see the info node `Easy Customization')\nor call the function `volatile-highlights-mode'." :set custom-set-minor-mode :initialize custom-initialize-default :type boolean] 12)
#@52 Minor mode for visual feedback on some operations.
(defalias 'volatile-highlights-mode #[(&optional arg) "\304 \305\302	\306=\203 \307\302!?\202 \310	!\311V\"\210\n\203# \312 \210\202& \313 \210\314\315\307\302!\2032 \316\2023 \317\"\210\320\321!\203^ \322\302!\210\304 \203K \304 \232\203^ \323\324\325\307\302!\203Y \326\202Z \327#\210))\330 \210\307\302!\207" [#1=#:last-message arg volatile-highlights-mode local current-message set-default toggle default-value prefix-numeric-value 0 vhl/load-extensions vhl/unload-extensions run-hooks volatile-highlights-mode-hook volatile-highlights-mode-on-hook volatile-highlights-mode-off-hook called-interactively-p any customize-mark-as-set "" message "Volatile-Highlights mode %sabled%s" "en" "dis" force-mode-line-update] 4 (#$ . 1827) (list (or current-prefix-arg 'toggle))])
#@189 Hook run after entering or leaving `volatile-highlights-mode'.
No problems result if this variable is not bound.
`add-hook' automatically binds it.  (This is true for all hook variables.)
(defvar volatile-highlights-mode-hook nil (#$ . 2665))
(byte-code "\301\302\303\304\300!\205\n \305\211%\210\306\307\305\310\311\312\313\314&\207" [volatile-highlights-mode-map add-minor-mode volatile-highlights-mode " VHl" boundp nil custom-declare-variable Vhl/highlight-zero-width-ranges "If t, highlight the positions of zero-width ranges.\n\nFor example, if a deletion is highlighted, then the position\nwhere the deleted text used to be would be highlighted." :type boolean :group volatile-highlights] 8)
#@354 Add a volatile highlight to the buffer `BUF' at the position
specified by `BEG' and `END' using the face `FACE'.

When the buffer `BUF' is not specified or its value is `nil',
volatile highlight will be added to current buffer.

When the face `FACE' is not specified or its value is `nil',
the default face `vhl/default-face' will
be used as the value.
(defalias 'vhl/add-range #[(beg end &optional buf face) "\206 \306\307	\n$\211B\310\311\312\"*\207" [face beg end buf hl vhl/\.hl-lst vhl/default-face vhl/\.make-hl add-hook pre-command-hook vhl/clear-all] 6 (#$ . 3373)])
(byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias vhl/add vhl/add-range nil make-obsolete "1.5"] 4)
#@148 Highlight buffer position POS as a change.

If Vhl/highlight-zero-width-ranges is nil, do nothing.

Optional args are the same as `vhl/add-range'.
(defalias 'vhl/add-position #[(pos &rest other-args) "\205 \303 \304U?\205 	\303 V\203 	S\305\306	\211T\n$\207" [Vhl/highlight-zero-width-ranges pos other-args buffer-size 0 apply vhl/add-range] 5 (#$ . 4079)])
#@32 Clear all volatile highlights.
(defalias 'vhl/clear-all #[nil "\203 \301@!\210A\211\204 \302\303\304\"\207" [vhl/\.hl-lst vhl/\.clear-hl remove-hook pre-command-hook vhl/clear-all] 4 (#$ . 4448) nil])
#@56 Force clear all volatile highlights in current buffer.
(defalias 'vhl/force-clear-all #[nil "\300 \207" [vhl/\.force-clear-all-hl] 1 (#$ . 4661) nil])
#@73 Make a volatile highlight at the position specified by `BEG' and `END'.
(defalias 'vhl/\.make-hl #[(beg end buf face) "\306	\203 \307\n\f#\310\"\210\311\312\"\210\313\314\312#\210\2027 \315\n\f#\316\305#\210\316\317\320#\210\316\314\312#\210)\207" [hl vhl/\.xemacsp beg end buf face nil make-extent set-extent-face highlight-extent t set-extent-property volatile-highlights make-overlay overlay-put priority 1] 4 (#$ . 4818)])
#@22 Clear one highlight.
(defalias 'vhl/\.clear-hl #[(hl) "\203 \302	!\205 \303	!\207\304	!\205 \305	!\207" [vhl/\.xemacsp hl extentp delete-extent overlayp delete-overlay] 2 (#$ . 5266)])
#@56 Force clear all volatile highlights in current buffer.
(defalias 'vhl/\.force-clear-all-hl #[nil "\203 \301\302!\207\214~\210\303\304\305ed\"\")\207" [vhl/\.xemacsp map-extents #[(hl maparg) "\301\302\"\205\n \303!\207" [hl extent-property volatile-highlights vhl/\.clear-hl] 3] mapcar #[(hl) "\301\302\"\205\n \303!\207" [hl overlay-get volatile-highlights vhl/\.clear-hl] 3] overlays-in] 5 (#$ . 5461)])
(defvar vhl/\.installed-extensions nil)
(defalias 'vhl/install-extension #[(sym) "\306\307\310\"!\306\307\311\"!\306\307\312\"!\313\f\"\204\" \fB)\314\315	\316\307\317\"\320\321\322\323\324\325\326\327\330\331\332\333\334\335DDE\336\335DDFF\257\n!+\207" [sym cust-name fn-off fn-on #1=#:var vhl/\.installed-extensions intern format "vhl/ext/%s/on" "vhl/ext/%s/off" "vhl/use-%s-extension-p" memql eval defcustom t "A flag if highlighting support for `%s' is on or not." :type 'boolean :group 'volatile-highlights :set lambda (sym-to-set val) (set-default sym-to-set val) if val when volatile-highlights-mode vhl/load-extension quote vhl/unload-extension] 20])
(defalias 'vhl/load-extension #[(sym) "\303\304\305\"!\303\304\306\"!\307\n!\203% \310	!\205) \311	!\205) \n \202) \312\313\"*\207" [sym cust-name fn-on intern format "vhl/ext/%s/on" "vhl/use-%s-extension-p" functionp boundp eval message "[vhl] No load function for extension  `%s'"] 5])
(defalias 'vhl/unload-extension #[(sym) "\302\303\304\"!\305	!\203 	 \202 \306\307\")\207" [sym fn-off intern format "vhl/ext/%s/off" functionp message "[vhl] No unload function for extension  `%s'"] 4])
(defalias 'vhl/load-extensions #[nil "\303\211\205 \n@\304	!\210\nA\211\204 \303*\207" [vhl/\.installed-extensions sym --dolist-tail-- nil vhl/load-extension] 3])
(defalias 'vhl/unload-extensions #[nil "\303\211\205 \n@\304	!\210\nA\211\204 \303*\207" [vhl/\.installed-extensions sym --dolist-tail-- nil vhl/unload-extension] 3])
(defvar vhl/\.after-change-hook-depth 0)
(defalias 'vhl/\.push-to-after-change-hook #[(fn-name) "\301U\203 \302\303\304\"\210T\211\207" [vhl/\.after-change-hook-depth 0 add-hook after-change-functions vhl/\.make-vhl-on-change] 3])
(defalias 'vhl/\.pop-from-after-change-hook #[(fn-name) "S\211\301U\205 \302\303\304\"\207" [vhl/\.after-change-hook-depth 0 remove-hook after-change-functions vhl/\.make-vhl-on-change] 4])
(defalias 'vhl/advice-defined-p #[(fn-name class ad-name) "\303N\205 	\n\303N\236A\236\207" [fn-name ad-name class ad-advice-info] 4])
(defalias 'vhl/disable-advice-if-defined #[(fn-name class ad-name) "\303	\n#\205 \304	\n#\210\305!\207" [fn-name class ad-name vhl/advice-defined-p ad-disable-advice ad-activate] 4])
(defalias 'vhl/\.make-vhl-on-change #[(beg end len-removed) "\304U\211\203 \305\n\"\202 \306\n!)\207" [len-removed insert-p beg end 0 vhl/add-range vhl/add-position] 4])
(defalias 'vhl/give-advice-to-make-vhl-on-changes '(macro . #[(fn-name) "\302\303\304\305\"P!9\204 \306\307\"\210\310\311\312	\313BB\314\315DD\316\317\320\315DDE\257\321\315D\322\315	DF\323\315DDF)\207" [fn-name ad-name intern "vhl/make-vhl-on-" format "%s" error "vhl/give-advice-to-make-vhl-on-changes: `%s' is not type of symbol." progn defadvice around ((&rest args)) vhl/\.push-to-after-change-hook quote unwind-protect ad-do-it vhl/\.pop-from-after-change-hook ad-enable-advice 'around ad-activate] 10]))
(defalias 'vhl/cancel-advice-to-make-vhl-on-changes '(macro . #[(fn-name) "\302\303\304\305\"P!\306\307D\310\307	DF)\207" [fn-name ad-name intern "vhl/make-vhl-on-" format "%s" vhl/disable-advice-if-defined quote 'around] 5]))
(defalias 'vhl/require-noerror #[(feature &optional filename) "\3011	 \302!0\207\210\303\207" [feature (file-error) require nil] 2])
#@405 Makes an English-style list from a list of strings.

Converts a list of strings into a string that lists the items
separated by commas, as well as the word `and' before the last
item. In other words, returns a string of the way those items
would be listed in english.

This is included as a private support function for generating
lists of symbols to be included docstrings of auto-generated
extensions.
(defalias 'vhl/\.make-list-string #[(items) "<\204	 \301\302!\210\204 \303\207A\204$ @;\204 \301\304!\210\305\306@\"\207AA\204E @;\2044 \301\307!\210A@;\204? \301\310!\210\311\305\312#\207AAA\204s @;\204V \301\313!\210A@;\204a \301\314!\210AA@;\204m \301\315!\210\311\305\316#\207\305\317@\320A!#\207" [items cl--assertion-failed (listp items) "" (stringp (first items)) format "%s" (stringp (first items)) (stringp (second items)) apply "%s and %s" (stringp (first items)) (stringp (second items)) (stringp (third items)) "%s, %s, and %s" "%s, %s" vhl/\.make-list-string] 5 (#$ . 9213)])
#@93 Define a VHL extension called NAME that applies standard VHL
  advice to each of FUNCTIONS.
(defalias 'vhl/define-extension '(macro . #[(name &rest functions) "@\204	 \306\307!\210\310\311	!!\312\313\314\"!\315\316\317\n\"!\320\313\321\"B\316\322\"\315\316\323\n\"!\320\313\324\"B\316\325\"\320\326\f\327\330\257\326\327\331\257.\332BBB\207" [functions name name-string function-list-string on-function-name on-body-form cl--assertion-failed (first functions) symbol-name eval vhl/\.make-list-string mapcar #[(f) "\301\302\303\304!!\"\207" [f format "`%s'" symbol-name eval] 5] intern format "vhl/ext/%s/on" progn #[(f) "\301\302!D\207" [f vhl/give-advice-to-make-vhl-on-changes eval] 3] "Turn on volatile highlighting for %s." "vhl/ext/%s/off" #[(f) "\301\302!D\207" [f vhl/cancel-advice-to-make-vhl-on-changes eval] 3] "Turn off volatile highlighting for %s." defun nil (interactive) (interactive) (nil) on-doc-string off-function-name off-body-form off-doc-string] 8 (#$ . 10230)]))
#@53 Turn on volatile highlighting for `primitive-undo'.
(defalias 'vhl/ext/undo/on #[nil "\300\301\302\303\304$\210\305\301\303\306#\210\307\301!\207" [ad-add-advice primitive-undo (vhl/make-vhl-on-primitive-undo nil t (advice lambda (&rest args) (vhl/\.push-to-after-change-hook 'primitive-undo) (unwind-protect ad-do-it (vhl/\.pop-from-after-change-hook 'primitive-undo)))) around nil ad-enable-advice vhl/make-vhl-on-primitive-undo ad-activate] 5 (#$ . 11255) nil])
#@54 Turn off volatile highlighting for `primitive-undo'.
(defalias 'vhl/ext/undo/off #[nil "\300\301\302\303#\207" [vhl/disable-advice-if-defined primitive-undo around vhl/make-vhl-on-primitive-undo] 4 (#$ . 11726) nil])
(vhl/install-extension 'undo)
#@58 Turn on volatile highlighting for `yank' and `yank-pop'.
(defalias 'vhl/ext/yank/on #[nil "\300\301\302\303\304$\210\305\301\303\306#\210\307\301!\210\300\310\311\303\304$\210\305\310\303\312#\210\307\310!\207" [ad-add-advice yank (vhl/make-vhl-on-yank nil t (advice lambda #1=(&rest args) (vhl/\.push-to-after-change-hook 'yank) (unwind-protect ad-do-it (vhl/\.pop-from-after-change-hook 'yank)))) around nil ad-enable-advice vhl/make-vhl-on-yank ad-activate yank-pop (vhl/make-vhl-on-yank-pop nil t (advice lambda #1# (vhl/\.push-to-after-change-hook 'yank-pop) (unwind-protect ad-do-it (vhl/\.pop-from-after-change-hook 'yank-pop)))) vhl/make-vhl-on-yank-pop] 5 (#$ . 11979) nil])
#@59 Turn off volatile highlighting for `yank' and `yank-pop'.
(defalias 'vhl/ext/yank/off #[nil "\300\301\302\303#\210\300\304\302\305#\207" [vhl/disable-advice-if-defined yank around vhl/make-vhl-on-yank yank-pop vhl/make-vhl-on-yank-pop] 4 (#$ . 12669) nil])
(vhl/install-extension 'yank)
#@50 Turn on volatile highlighting for `kill-region'.
(defalias 'vhl/ext/kill/on #[nil "\300\301\302\303\304$\210\305\301\303\306#\210\307\301!\207" [ad-add-advice kill-region (vhl/make-vhl-on-kill-region nil t (advice lambda (&rest args) (vhl/\.push-to-after-change-hook 'kill-region) (unwind-protect ad-do-it (vhl/\.pop-from-after-change-hook 'kill-region)))) around nil ad-enable-advice vhl/make-vhl-on-kill-region ad-activate] 5 (#$ . 12962) nil])
#@51 Turn off volatile highlighting for `kill-region'.
(defalias 'vhl/ext/kill/off #[nil "\300\301\302\303#\207" [vhl/disable-advice-if-defined kill-region around vhl/make-vhl-on-kill-region] 4 (#$ . 13415) nil])
(vhl/install-extension 'kill)
#@52 Turn on volatile highlighting for `delete-region'.
(defalias 'vhl/ext/delete/on #[nil "\300\301\302\303\304$\210\305\301\303\306#\210\307\301!\207" [ad-add-advice delete-region (vhl/make-vhl-on-delete-region nil t (advice lambda (&rest args) (vhl/\.push-to-after-change-hook 'delete-region) (unwind-protect ad-do-it (vhl/\.pop-from-after-change-hook 'delete-region)))) around nil ad-enable-advice vhl/make-vhl-on-delete-region ad-activate] 5 (#$ . 13659) nil])
#@53 Turn off volatile highlighting for `delete-region'.
(defalias 'vhl/ext/delete/off #[nil "\300\301\302\303#\207" [vhl/disable-advice-if-defined delete-region around vhl/make-vhl-on-delete-region] 4 (#$ . 14126) nil])
(vhl/install-extension 'delete)
#@44 Turn on volatile highlighting for `etags'.
(defalias 'vhl/ext/etags/on #[nil "\300\301!\210\302\303\304\305\306$\210\307\303!\207" [require etags ad-add-advice find-tag (vhl/ext/etags/make-vhl-after-find-tag nil t (advice lambda (tagname &optional next-p regexp-p) (let ((pos (point)) (len (length tagname))) (save-excursion (search-forward tagname) (vhl/add-range (- (point) len) (point)))))) after nil ad-activate] 5 (#$ . 14380) nil])
#@45 Turn off volatile highlighting for `etags'.
(defalias 'vhl/ext/etags/off #[nil "\300\301\302\303#\207" [vhl/disable-advice-if-defined find-tag after vhl/ext/etags/make-vhl-after-find-tag] 4 (#$ . 14824) nil])
(vhl/install-extension 'etags)
#@44 Turn on volatile highlighting for `occur'.
(defalias 'vhl/ext/occur/on #[nil "\302\303!\211\211\304L\210)\305\306\307\310\311\312\313D\312D\314FE\"\210\305\315\307\310\311\312\316D\312D\314FE\"\210\317\320\321\322\304$\210\317\320\323\324\304$\210\317\325\326\322\304$\210\317\325\327\324\304$\210\317\330\331\322\304$\210\317\330\332\324\304$\210\333\320!\210\333\325!\210\333\330!)\207" [#1=#:--cl-*occur-str*-- #2=#:v make-symbol "--*occur-str*--" nil defalias vhl/ext/occur/\.pre-hook-fn lambda (&rest --cl-rest--) apply quote #[(#3=#:G847) "\212\305 \210`\306\210`\307	\310\311$\211\n\205  	\205  \n	{L-\207" [bol eol bos #3# #4=#:v beginning-of-line nil text-property-any occur-match t] 6] --cl-rest-- vhl/ext/occur/\.post-hook-fn #[(#5=#:G848) "J\205 \306\307\310J#JG\307\311\211\205\311 \n\203E \312\n\313J%\211\203E \n\314\n\313J#\211\2066 \211D	B*\202 r\315\f!q\210\316\f!	\311\211\205\310 @@\\A@\\\317!\311\211\203\263 @\320\321\"\203\252 \212\322!b\210\323 \210`^\324!b\210\311\210`])A\211\204} *\325\311$\210*A\211\204Z \311,,\207" [#5# be-lst ptr len marker list-matching-lines-face get-text-property 0 occur-target nil text-property-any face next-single-property-change marker-buffer marker-position overlays-at overlay-get invisible overlay-start beginning-of-line overlay-end vhl/add-range end beg bol be --dolist-tail-- pt-end pt-beg ov] 7] ad-add-advice occur-mode-goto-occurrence (vhl/ext/occur/pre-hook nil t (advice lambda (&optional event) (vhl/ext/occur/\.pre-hook-fn))) before (vhl/ext/occur/post-hook nil t (advice lambda (&optional event) (vhl/ext/occur/\.post-hook-fn))) after occur-mode-display-occurrence (vhl/ext/occur/pre-hook nil t (advice lambda nil (vhl/ext/occur/\.pre-hook-fn))) (vhl/ext/occur/post-hook nil t (advice lambda nil (vhl/ext/occur/\.post-hook-fn))) occur-mode-goto-occurrence-other-window (vhl/ext/occur/pre-hook nil t (advice lambda nil (vhl/ext/occur/\.pre-hook-fn))) (vhl/ext/occur/post-hook nil t (advice lambda nil (vhl/ext/occur/\.post-hook-fn))) ad-activate] 9 (#$ . 15070) nil])
#@45 Turn off volatile highlighting for `occur'.
(defalias 'vhl/ext/occur/off #[nil "\300\301\302\303#\210\300\301\304\305#\210\300\306\302\303#\210\300\306\304\305#\210\300\307\302\303#\210\300\307\304\305#\207" [vhl/disable-advice-if-defined occur-mode-goto-occurrence before vhl/ext/occur/pre-hook after vhl/ext/occur/post-hook occur-mode-display-occurrence occur-mode-goto-occurrence-other-window] 4 (#$ . 17207) nil])
(vhl/install-extension 'occur)
(defalias 'vhl/ext/nonincremental-search/\.advice-to-vhl '(macro . #[(fn) "\301\302\303DD\304\305\306\307\310\"!\311BB\312BBB\313\303DDF\207" [fn when fboundp quote defadvice after intern format "vhl/ext/nonincremental-search/%s" ((&rest args)) ((when ad-return-value (vhl/add-range (match-beginning 0) (match-end 0) nil 'match))) ad-activate] 9]))
(defalias 'vhl/ext/nonincremental-search/\.disable-advice-to-vhl '(macro . #[(fn) "\301\302D\303\302\304\305\306\"!DF\207" [fn vhl/disable-advice-if-defined quote 'after intern format "vhl/ext/nonincremental-search/%s"] 8]))
#@70 Turn on volatile highlighting for non-incremental search operations.
(defalias 'vhl/ext/nonincremental-search/on #[nil "\300\301\302\"\205l \303\304!\203 \305\304\306\307\302$\210\310\304!\210\303\311!\203) \305\311\312\307\302$\210\310\311!\210\303\313!\203: \305\313\314\307\302$\210\310\313!\210\303\315!\203K \305\315\316\307\302$\210\310\315!\210\303\317!\203\\ \305\317\320\307\302$\210\310\317!\210\303\321!\205l \305\321\322\307\302$\210\310\321!\207" [vhl/require-noerror menu-bar nil fboundp nonincremental-search-forward ad-add-advice (vhl/ext/nonincremental-search/nonincremental-search-forward nil t (advice lambda #1=(&rest args) #2=(when ad-return-value (vhl/add-range (match-beginning 0) (match-end 0) nil 'match)))) after ad-activate nonincremental-search-backward (vhl/ext/nonincremental-search/nonincremental-search-backward nil t (advice lambda #1# #2#)) nonincremental-re-search-forward (vhl/ext/nonincremental-search/nonincremental-re-search-forward nil t (advice lambda #1# #2#)) nonincremental-re-search-backward (vhl/ext/nonincremental-search/nonincremental-re-search-backward nil t (advice lambda #1# #2#)) nonincremental-repeat-search-forward (vhl/ext/nonincremental-search/nonincremental-repeat-search-forward nil t (advice lambda #1# #2#)) nonincremental-repeat-search-backward (vhl/ext/nonincremental-search/nonincremental-repeat-search-backward nil t (advice lambda #1# #2#))] 5 (#$ . 18242) nil])
#@72 Turn off volatile highlighting for  non-incremental search operations.
(defalias 'vhl/ext/nonincremental-search/off #[nil "\300\301\302\"\205* \303\304\305\306#\210\303\307\305\310#\210\303\311\305\312#\210\303\313\305\314#\210\303\315\305\316#\210\303\317\305\320#\207" [vhl/require-noerror menu-bar nil vhl/disable-advice-if-defined nonincremental-search-forward after vhl/ext/nonincremental-search/nonincremental-search-forward nonincremental-search-backward vhl/ext/nonincremental-search/nonincremental-search-backward nonincremental-re-search-forward vhl/ext/nonincremental-search/nonincremental-re-search-forward nonincremental-re-search-backward vhl/ext/nonincremental-search/nonincremental-re-search-backward nonincremental-repeat-search-forward vhl/ext/nonincremental-search/nonincremental-repeat-search-forward nonincremental-repeat-search-backward vhl/ext/nonincremental-search/nonincremental-repeat-search-backward] 4 (#$ . 19678) nil])
(vhl/install-extension 'nonincremental-search)
(defalias 'vhl/ext/hideshow/\.activate #[nil "\300\301\302\303\304$\210\305\301!\207" [ad-add-advice hs-show-block (vhl/ext/hideshow/vhl/around-hook nil t (advice lambda (&optional end) (let* ((bol (save-excursion (progn (beginning-of-line) (point)))) (eol (save-excursion (progn (end-of-line) (point)))) (ov-folded (car (delq nil (mapcar #'(lambda (ov) (and (overlay-get ov 'hs) ov)) (overlays-in bol (1+ eol)))))) (boov (and ov-folded (overlay-start ov-folded))) (eoov (and ov-folded (overlay-end ov-folded)))) ad-do-it (when (and boov eoov) (vhl/add-range boov eoov))))) around nil ad-activate] 5])
#@47 Turn on volatile highlighting for `hideshow'.
(defalias 'vhl/ext/hideshow/on #[nil "\300\301!\203	 \302 \207\303\304\305\"\207" [featurep hideshow vhl/ext/hideshow/\.activate eval-after-load "hideshow" #[nil "\300 \207" [vhl/ext/hideshow/\.activate] 1]] 3 (#$ . 21282) nil])
(defalias 'vhl/ext/hideshow/off #[nil "\300\301\302\303#\207" [vhl/disable-advice-if-defined hs-show-block after vhl/ext/hideshow/vhl/around-hook] 4])
(vhl/install-extension 'hideshow)
