-
Notifications
You must be signed in to change notification settings - Fork 586
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[JSON] Meta scopes for mapping and sequence #862
[JSON] Meta scopes for mapping and sequence #862
Conversation
Why I can see the appeal of |
Actually, it doesn't appear that So this is just changing the scope names, correct? |
I didn't chose I don't exactly see a merit in a |
Any update on this? |
@FichteFoll mind looking into the conflicts on this? Since it only affects |
The older ones are significantly longer and don't exactly convey more meaning than these shorter ones. This should help unify scopes for key-value structures across languages.
The terms are more general across languages and carry sufficient semantics. Also use the proper `punctuation.section` scope for mapping and sequence punctuation.
Stacking prevents color schemes from highlighting inner keys in different colors, since a selector like "meta.mapping meta.mapping.key" would also match the first level, but "meta.mapping meta.mapping meta.mapping meta.mapping.key" would match the second and not the third. In the process, define and assign more accurate illegal.invalid scope names.
f4f077f
to
5643334
Compare
Just a heads-up that I fixed the merge conflicts. |
This may require more reworking down the road (to actually follow proper semantics), but this works for now Additional context here: - sublimehq/Packages#862
* [JSON] Move value context to the top * [JSON] Use `meta.key` and `meta.value` scopes * [JSON] Use more general "sequence" and "mapping" * [JSON] meta.{key,value}-> meta.mapping.{key,value} * [JSON] Use prototype context * [JSON] Don't stack meta.mapping and *.{key,value}
Removed in sublimehq/Packages#862 and eventually released to the stable channel with the 3.2 release.
In direct response to #421.
Use
meta.key
andmeta.value
for key and value tokens respectively. In the process, generalizemeta.sequence
andmeta.mapping
(and "fix" their punctuation scopes).Investigation on how this might affect third-party color schemes should likely be performed, for the latter change only, which I doubt had any special coloring applied.
The scopes changed in the first change have only been added in 5e24e2b (#816), which hasn't been part of any build yet.