hokein added inline comments.
================
Comment at: clang-tools-extra/clangd/clients/clangd-vscode/src/TextMate.ts:20
+ const split = scope.split('.');
+ while(split.length > 0) {
+ split.splice(-1)
----------------
jvikstrom wrote:
> I'm pretty sure this matching logic is wrong. An example of the scopes for
> variables in the Light+ theme:
>
> ```
> variable.css
> variable.scss
> variable.other.less
> variable.language.wildcard.java
> variable.language
> storage.type.variable.cs
> variable
> meta.definition.variable.name
> support.variable
> entity.name.variable
> ```
>
> With this kind of matching we have now this means that `variable.other.less`
> will match `variable.other` and `variable.other.less`.
> As there is no perfect match for `variable.other.field` it will try to match
> `variable.other` and find the color for less.
>
> What should probably be done is remove the divided map. The query function
> should still be the same but query on this.colors instead of this.divided.
The suffix of textmate indicates the language it belongs to (e.g. java), I
think we can ignore non-C++ textmates, and merely find the longest-prefix match
in all `c++` textmates?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D65637/new/
https://reviews.llvm.org/D65637
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits