diff options
Diffstat (limited to 'lisp/hl-line.el')
-rw-r--r-- | lisp/hl-line.el | 34 |
1 files changed, 24 insertions, 10 deletions
diff --git a/lisp/hl-line.el b/lisp/hl-line.el index c2d2d293010..757a398086d 100644 --- a/lisp/hl-line.el +++ b/lisp/hl-line.el @@ -64,16 +64,37 @@ ;;; Code: +(defvar hl-line-overlay nil + "Overlay used by Hl-Line mode to highlight the current line.") +(make-variable-buffer-local 'hl-line-overlay) + +(defvar global-hl-line-overlay nil + "Overlay used by Global-Hl-Line mode to highlight the current line.") + (defgroup hl-line nil "Highlight the current line." :version "21.1" :group 'editing) -(defcustom hl-line-face 'highlight - "Face with which to highlight the current line." - :type 'face +(defface hl-line + '((t :inherit highlight)) + "Default face for highlighting the current line in Hl-Line mode." + :version "22.1" :group 'hl-line) +(defcustom hl-line-face 'hl-line + "Face with which to highlight the current line in Hl-Line mode." + :type 'face + :group 'hl-line + :set (lambda (symbol value) + (set symbol value) + (dolist (buffer (buffer-list)) + (with-current-buffer buffer + (when hl-line-overlay + (overlay-put hl-line-overlay 'face hl-line-face)))) + (when global-hl-line-overlay + (overlay-put global-hl-line-overlay 'face hl-line-face)))) + (defcustom hl-line-sticky-flag t "*Non-nil means highlight the current line in all windows. Otherwise Hl-Line mode will highlight only in the selected @@ -92,13 +113,6 @@ It should return nil if there's no region to be highlighted. This variable is expected to be made buffer-local by modes.") -(defvar hl-line-overlay nil - "Overlay used by Hl-Line mode to highlight the current line.") -(make-variable-buffer-local 'hl-line-overlay) - -(defvar global-hl-line-overlay nil - "Overlay used by Global-Hl-Line mode to highlight the current line.") - ;;;###autoload (define-minor-mode hl-line-mode "Buffer-local minor mode to highlight the line about point. |