arvi / Agila-Theme

A Sublime Text 3 UI Theme
MIT License
253 stars 50 forks source link

Missing scope for `variable.function` and `message.error` #43

Closed davidhcefx closed 2 years ago

davidhcefx commented 3 years ago

Description

I used to stick with the Default Monokai color scheme, but not until discovering your Agila Monokai Extended scheme. It is really an awesome scheme, but recently I found some issues with it.

TLDR

Default Monokai

default-func default-make

Agila Monokai Extended

agila-func agila-make

Long Explanation

As you can see from the screenshots above, Agila Monokai Extended (AME) failed to highlight several parts of the code or the console message, while the Default Monokai was able to handle. As described in Sublime Text's official document on Scope Naming:

MINIMAL SCOPE COVERAGE

The following is a recommended minimal set of scopes to highlight. Adding extra may result in a slightly improved experience, however being too specific will result in a color scheme that often only looks good for one or two syntaxes.

  • ...
  • variable.function

Therefore, it is important to have highlightings for the variable.function scope. Aside from that, I was wondering could there be more cases that the Default Monokai could handle but not AME? So I compared AME's color scheme side-by-side with the Default Monokai's, and found that the following scopes were also ignored by AME:

punctuation.definition.annotation
variable.function, variable.annotation
entity.name.filename
message.error
variable.other.dollar.only.js
entity.name - (entity.name.filename | entity.name.section | entity.name.tag | entity.name.label)
variable.parameter - (source.c | source.c++ | source.objc | source.objc++)
string.unquoted.yaml
markup.underline.link
markup.italic markup.bold | markup.bold markup.italic
punctuation.definition.thematic-break
markup.quote punctuation.definition.blockquote
markup.list.numbered.bullet
markup.list.unnumbered.bullet | (markup.list.numbered punctuation.definition)
markup.raw punctuation.definition.raw
text & (punctuation.definition.italic | punctuation.definition.bold | punctuation.definition.raw | punctuation.definition.link | punctuation.definition.metadata | punctuation.definition.image | punctuation.separator.table-cell | punctuation.section.table-header | punctuation.definition.constant)
constant.numeric.line-number.find-in-files - match
diff.deleted
diff.deleted.char
diff.inserted
diff.inserted.char