From 88821ca05258c59188be6d146b1ea9e6968cbeba Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sun, 26 Jun 2011 16:25:53 -0400 Subject: [PATCH] Add global-hl-line-sticky-flag (Bug#8323). * lisp/hl-line.el (hl-line-sticky-flag): Doc fix. (global-hl-line-sticky-flag): New option. (global-hl-line-highlight): Obey it. --- lisp/ChangeLog | 4 ++++ lisp/hl-line.el | 24 +++++++++++++++++++++--- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 6b0c070bd97..23699cb44ac 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,9 @@ 2011-06-26 Chong Yidong + * hl-line.el (hl-line-sticky-flag): Doc fix. + (global-hl-line-sticky-flag): New option (Bug#8323). + (global-hl-line-highlight): Obey it. + * vc/vc.el (vc-revert-show-diff): Default to t. 2011-06-26 Ken Manheimer diff --git a/lisp/hl-line.el b/lisp/hl-line.el index 55704dccb33..846f5f95187 100644 --- a/lisp/hl-line.el +++ b/lisp/hl-line.el @@ -93,14 +93,26 @@ (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. + "Non-nil means the HL-Line mode highlight appears in all windows. Otherwise Hl-Line mode will highlight only in the selected window. Setting this variable takes effect the next time you use -the command `hl-line-mode' to turn Hl-Line mode on." +the command `hl-line-mode' to turn Hl-Line mode on. + +This variable has no effect in Global Highlight Line mode. +For that, use `global-hl-line-sticky-flag'." :type 'boolean :version "22.1" :group 'hl-line) +(defcustom global-hl-line-sticky-flag nil + "Non-nil means the Global HL-Line mode highlight appears in all windows. +Otherwise Global Hl-Line mode will highlight only in the selected +window. Setting this variable takes effect the next time you use +the command `global-hl-line-mode' to turn Global Hl-Line mode on." + :type 'boolean + :version "24.1" + :group 'hl-line) + (defvar hl-line-range-function nil "If non-nil, function to call to return highlight range. The function of no args should return a cons cell; its car value @@ -162,6 +174,10 @@ addition to `hl-line-highlight' on `post-command-hook'." "Global minor mode to highlight the line about point in the current window. With ARG, turn Global-Hl-Line mode on if ARG is positive, off otherwise. +If `global-hl-line-sticky-flag' is non-nil, Global Hl-Line mode +highlights the line about the current buffer's point in all +windows. + Global-Hl-Line mode uses the functions `global-hl-line-unhighlight' and `global-hl-line-highlight' on `pre-command-hook' and `post-command-hook'." :global t @@ -181,7 +197,9 @@ Global-Hl-Line mode uses the functions `global-hl-line-unhighlight' and (unless global-hl-line-overlay (setq global-hl-line-overlay (make-overlay 1 1)) ; to be moved (overlay-put global-hl-line-overlay 'face hl-line-face)) - (overlay-put global-hl-line-overlay 'window (selected-window)) + (overlay-put global-hl-line-overlay 'window + (unless global-hl-line-sticky-flag + (selected-window))) (hl-line-move global-hl-line-overlay)))) (defun global-hl-line-unhighlight () -- 2.39.2