Attached is another patch with some further improvements. These too OK with you, Theodor? -- Jostein jostein@kjonigsen.net 🍵 jostein@gmail.com https://jostein.kjønigsen.no On 05.12.2022 09:51, Theodor Thornhill wrote: > Jostein Kjønigsen writes: > >> When I create or use a class in a Typescript-file, I often have >> properties and field declarations. >> >> These are all fontified using default-face, instead of >> font-lock-property-face. >> >> Also when creating new objects using bracket syntac { key: value, key: >> value, etc: etc }, default-face is used. >> >> Attached is a patch which improves fontification of these aspects in >> both typescript-ts-mode and typescript-tsx-mode. >> >> It also contains code to further improve fontification of >> retuen-statements, which IMO is a little bit lacking. >> > LGTM :) Yuan, feel free to apply when you have some free time! > >> From 3bcbd89cc43c6ad7885f11aa4c7c92ebd600a164 Mon Sep 17 00:00:00 2001 >> From: =?UTF-8?q?Jostein=20Kj=C3=B8nigsen?= >> Date: Mon, 5 Dec 2022 09:31:58 +0100 >> Subject: [PATCH] lisp/progmodes/typescript-ts-mode: improve fontification >> >> - syntax-highlight property and field definitions in class declaration. >> - syntax-highlight property-keys in object initializaters. >> - syntax-highlight variable-names in function/method return-statements. >> --- >> lisp/progmodes/typescript-ts-mode.el | 13 +++++++++++-- >> 1 file changed, 11 insertions(+), 2 deletions(-) >> >> diff --git a/lisp/progmodes/typescript-ts-mode.el b/lisp/progmodes/typescript-ts-mode.el >> index 48ac1169fe8..48d3c084b6e 100644 >> --- a/lisp/progmodes/typescript-ts-mode.el >> +++ b/lisp/progmodes/typescript-ts-mode.el >> @@ -213,7 +213,9 @@ typescript-ts-mode--font-lock-settings >> parameters: >> [(_ (identifier) @font-lock-variable-name-face) >> (_ (_ (identifier) @font-lock-variable-name-face)) >> - (_ (_ (_ (identifier) @font-lock-variable-name-face)))])) >> + (_ (_ (_ (identifier) @font-lock-variable-name-face)))]) >> + >> + (return_statement (identifier) @font-lock-variable-name-face)) >> >> :language language >> :override t >> @@ -282,7 +284,14 @@ typescript-ts-mode--font-lock-settings >> :language language >> :override t >> :feature 'property >> - `((pair value: (identifier) @font-lock-variable-name-face) >> + `((property_signature >> + name: (property_identifier) @font-lock-property-face) >> + (public_field_definition >> + name: (property_identifier) @font-lock-property-face) >> + >> + (pair key: (property_identifier) @font-lock-variable-name-face) >> + >> + (pair value: (identifier) @font-lock-variable-name-face) >> >> ((shorthand_property_identifier) @font-lock-property-face) >> > Thanks! > > Theo