Closed pradyunsg closed 3 years ago
I've never actually looked into how themes are structured, but it seems you are right. CSS really seems to be a good intermediate format for themes as well.
Unfortunately this will probably have a very low priority for me.
(There's only 1 thing that can be a problem: keys that refer to objects.)
I'm unsure what you mean by this. The layerN.*
stuff?
No. Some keys can have object values.
See the icon_folder_loading
and minimap_control
in Soda as an example.
Any tips if I try to take this on?
I see, that's an issue. Best solution I can come up with right now is something like layer0.texure.keyframes
. Which would also work for viewport.opacity
but is kind of inconsistent with the layerN.*
keys. Otoh, in our format it would be consistent but in the converted format it's not, which is not our fault.
Thus, I would, by default, split all stuff with dots in its name into an object (or mapping, for that matter) but add an exception for the layer stuff, i.e. the first level after it since texture
can still be an object.
For other tips I can only suggest to take a look at my source code, I suppose. The tinycss modifications are kind of deeply nested into how the package works by itself, but I suggest approaching the conversion similarly to me.
Sounds good.
Bump. I didn't get around doing this because I'm a student and I got exams. :disappointed:
Just wanted to drop by to say I still want to either see this happen or even do this. I just haven't gotten around to do this.
Exactly the same for me. :smile:
Hey! I've switched my editor and now, I'm likely not gonna work on this. 🙈
Closing this out.
That's okay. I don't think I'll ever add theme support or even continue maintaining this, seeing how the new updated theme and scheme format supports variables and color modification functions out of the box. These where the biggest advantages of CSScheme and not having to compile (into a repo so that PC can download it) is a huge plus.
Being able to split into multiple files was neat but we can also get this or something similar with extends
now.
Well, this is a wonderful package! CSS (w/ preprocessors) is indeed very convenient for this purpose.
To me, it seems like CSS will also be a convenient language for specifying UI Themes. Let's extend this to .sublime-theme! :wink:
(There's only 1 thing that can be a problem: keys that refer to objects.)