GNU bug report logs -
#70711
30.0.50; Issue with flymake indicators
Previous Next
Reported by: Roman Rudakov <rrudakov <at> fastmail.com>
Date: Thu, 2 May 2024 08:07:02 UTC
Severity: normal
Found in version 30.0.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Elijah G <eg642616 <at> gmail.com> writes:
> On Thu, May 2, 2024 at 5:04 AM Eli Zaretskii <eliz <at> gnu.org> wrote:
>>
>> > From: Roman Rudakov <rrudakov <at> fastmail.com>
>> > Date: Thu, 02 May 2024 10:06:15 +0200
>> >
>> > After the latest update of flymake I started experiencing an issue
>> > with indicators. The problem occurs if I try to disable indicators
>> > completely.
>> >
>> > Steps to reproduce from "emacs -q":
>> > 1. Evaluate the following forms:
>> >
>> > (setopt flymake-fringe-indicator-position nil
>> > flymake-margin-indicator-position nil)
>> > (flymake-mode)
>> >
>> > 2. Type some invalid expression to trigger flymake.
>> >
>> > Expected result: No indicators.
>> >
>> > Actual result: Exclamation mark is shown right before the faulty
>> > expression (not even on fringe or margin).
>>
>> Elijah, could you please look into this?
>>
>> Thanks.
>
> Hi Eli, below you can find the attached patch that
> should fix this issue.
>
> Roman Can you eval this defun and tell
> if the bug is fixed?
>
> Thanks.
>
> ``` elisp
> (defun flymake--indicator-overlay-spec (indicator)
> "Return INDICATOR as propertized string to use in error indicators."
> (let* ((value (if (symbolp indicator)
> (symbol-value indicator)
> indicator))
> (indicator-car (if (listp value)
> (car value)
> value))
> (indicator-cdr (if (listp value)
> (cdr value))))
> (cond
> ((and (symbolp indicator-car)
> flymake-fringe-indicator-position)
> (propertize "!" 'display
> (cons flymake-fringe-indicator-position
> (if (listp value)
> value
> (list value)))))
> ((and (stringp indicator-car)
> flymake-margin-indicator-position)
> (propertize "!"
> 'display
> `((margin ,flymake-margin-indicator-position)
> ,(propertize
> indicator-car
> 'face
> `(:inherit (,indicator-cdr
> default)))))))))
> ````
Hello Elijah, I can confirm that the patch fixes the issue. Thank you.
--
Best regards, Roman
This bug report was last modified 1 year and 20 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.