[clangd-dev] Syntax highlighting of keywords

Nathan Ridge via clangd-dev clangd-dev at lists.llvm.org
Fri Oct 25 07:30:09 PDT 2019

It would be useful if clangd highlighted context-sensitive keywords, such as "override" and "final" (and, in C++20, likely "import" and "module"). Because of their context-sensitivity, clients can't highlight those as easily as hard keywords.

From: clangd-dev <clangd-dev-bounces at lists.llvm.org> on behalf of Ilya Biryukov via clangd-dev <clangd-dev at lists.llvm.org>
Sent: October 25, 2019 9:55 AM
To: Haojian Wu
Cc: via clangd-dev
Subject: Re: [clangd-dev] Syntax highlighting of keywords

Highlighting typedefs to primitive types in a special manner seems ok, I was referring specifically to highlightings of keywords.

So unless anyone objects, I'll send a patch to remove highlightings of keywords. Typedefs to simple types will still be highlighted with 'primitive' highlighting type.

On Fri, Oct 25, 2019 at 10:21 AM Haojian Wu <hokein at google.com<mailto:hokein at google.com>> wrote:
I agree editors handle keyword highlightings very well, but they don't have sufficient knowledge to highlight typealias/typedefs for primitive types.

// We want to highlight A, B as primitive types.
using A = int;
typedef int B;

On Fri, Oct 25, 2019 at 9:59 AM Ilya Biryukov <ibiryukov at google.com<mailto:ibiryukov at google.com>> wrote:
Hi clangd-dev,

I was wondering whether there's any value in the highlighting for "primitive" types being added on keywords like 'void', 'int', etc?

- Any editor handles those with default syntax highlight.
- It's trivial and does not require actual semantic knowledge.

With that in mind, I wonder whether we should drop this completely and just let the editors handle the keywords?
What do people think?

Ilya Biryukov

Ilya Biryukov

More information about the clangd-dev mailing list