Subject: Re: bug#54481: 29.0.50; [PATCH] Rewrite hl-line

From: Michael Heerdegen <[email-masked]>
Date: Tue, 22 Mar 2022 04:13:58 +0100

dick <[email-masked]> writes:

>  (defcustom hl-line-sticky-flag t
> -  "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.
> -
> -This variable has no effect in Global Highlight Line mode.
> -For that, use `global-hl-line-sticky-flag'."
> +  "Non-nil to preserve highlighting overlay when focus leaves window."
>    :type 'boolean
>    :version "22.1"
> +  :group 'hl-line
> +  :set (lambda (symbol value)
> +         (set-default symbol value)
> +         (unless value
> +           (let ((selected (window-buffer (selected-window))))
> +             (dolist (buffer (buffer-list))
> +               (unless (eq buffer selected)
> +                 (with-current-buffer buffer
> +                   (hl-line-unhighlight))))))))

That gives me

Debugger entered--Lisp error: (void-function hl-line-unhighlight)
  (hl-line-unhighlight)
  (#f(compiled-function (symbol value) #<bytecode -0xa62653aea4021f4>) hl-line-sticky-flag nil)
  (custom-initialize-reset hl-line-sticky-flag (funcall #'#f(compiled-function () #<bytecode 0x1dc00016fe5d4>)))
  (custom-declare-variable hl-line-sticky-flag (funcall #'#f(compiled-function () #<bytecode 0x1dc00016fe5d4>)) ...)
  (byte-code ...)
  (hl-line-mode nil)

Same error for (require 'hl-line).

Michael.