[TxMt] Theme creation tools, wishlist
Allan Odgaard
throw-away-1 at macromates.com
Fri Apr 7 06:03:52 UTC 2006
On 6/4/2006, at 22:35, Daniel Käsmayr wrote:
> * extract a listing of scopes from a bundle
I got a little carried away. Attached below is a Theme Builder
bundle, it has one command which generates and switches to a random
theme which will target all scopes of the current language (including
languages which may be embedded in that).
> [...] “if your theme does NOT know about meta.scope.obscure then
> please have it handled like meta.scope.common, as these are related
> or at least the style markup would indicate a similar importance.”
This is why the scopes are hierarchical.
So in this case, one would use meta.scope.common.obscure -- a theme
can then target this specifically, or it can settle with styling
meta.scope.common, and obscure will then get that setting.
An actual example of this is how URLs are scoped as
markup.underline.link. So if the theme has no setting for that, it
will just be underlined (assuming that there is a style for
markup.underline).
Ideally a theme should only need to style the following scopes:
comment, constant, entity, keyword, storage, string, support, and
variable.
This is why I am actually against things like “extract all current
scopes” (despite the attached bundle), because 90% of the time, the
language should rather be “fixed” (in its use of scope names) rather
than have the theme specifically address a given language.
It is however hard to try and find a common naming scheme when we
support almost 100 languages, varying from markup, to procedural, to
OO, to functional, to even things like emails.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Theme Builder.tmbundle.zip
Type: application/zip
Size: 2437 bytes
Desc: not available
URL: <http://lists.macromates.com/textmate/attachments/20060407/315f5705/attachment.zip>
More information about the textmate
mailing list