GNU bug report logs -
#59660
29.0.50; typescript-ts-mode consistently fontifies method-names incorrectly
Previous Next
Reported by: jostein <at> kjonigsen.net
Date: Mon, 28 Nov 2022 15:05:03 UTC
Severity: normal
Found in version 29.0.50
Fixed in version 29.1
Done: Yuan Fu <casouri <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> Cc: 59660 <at> debbugs.gnu.org, theo <at> thornhill.no
> From: Yuan Fu <casouri <at> gmail.com>
> Date: Mon, 28 Nov 2022 15:06:30 -0800
>
> > 1. create a typescript file (sample.ts)
> > 2. create class and add some methods to it.
> >
> > I observe that:
> >
> > - method names are consistently fontified as font-lock-property-face.
> >
> > I expected that:
> >
> > - method names to be consistently fontified as font-luck-function-name-face.
> >
> > This seems to be because of the "property_identifier" is used for
> > functions in the treesitter-grammar, and this property is used
> > indiscriminately to apply font-lock-property-face at the bottom of the
> > major-mode grammar.
> >
> > This "shadows" the former rules which correctly apply font-lock-function-name-face.
> >
> > The best would obviously have a way to identify properties more accurately, to precent
> > shadowing from taking place. Unfortunately I cannot see a realiable way to do that
> > based on the current parse-tree.
> >
> > Seeing as properties in Typescript are fairly rare while methods are very common,
> > it seems appropriate to me to remove the property-specific fontification rules
> > to restore the method-fontification rules.
> >
> > I got a patch for this ready, if people are willing to accept it.
>
> Maybe you can remove the :override flag for the property_identifier rule, so it doesn’t shadow the function rule? Would that work better?
This could be a personal preference, perhaps? It isn't clear to me that
only one of the two is definitely correct. So maybe we need a user option
for which one overrides which?
This bug report was last modified 2 years and 197 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.