[TxMt] New Language for Bundle

Allan Odgaard allan at macromates.com
Thu Aug 25 20:35:53 UTC 2005


On 25/08/2005, at 19.06, Chris Ruzin wrote:

> Thanks for the help, Allan. I tried adding in the include where you  
> mentioned, but it doesn't work. The EE tags are highlighted and  
> folded, but not the HTML.

Sorry, I placed it wrong. I made it a child of “constant.tag.ee”  
rule, when it should have been a sibling.

> Also, EE tags can be used in more than HTML. They can be used in  
> XML, PHP, JavaScript, CSS and others. Will that mean I need to add  
> all those other languages too, or will text.html.basic work for all  
> of those?

hmm, that's a little problematic, because while the HTML language  
will take care of embedded PHP, CSS, and JavaScript, it will use a  
special set of (included) patterns for these subsets of the document,  
which doesn't include the EE rules.

So for this to really work, you'd have to duplicate the HTML syntax,  
and add the EE rules to that (the EE rules can be added to the  
repository part, and included from the 4 contexts (plain HTML, JS,  
CSS, and PHP), much like PHP is currently included in the CSS and JS  
sub-contexts.

>>>     fileTypes = ( "html", "htm", "php" );
>>>     foldingStartMarker = "\\{(exp:([a-zA-Z0-9:]+)|if)\\b.*?\\}";
>>>     foldingStopMarker = "\\{/(exp:([a-zA-Z0-9:]+)|if)\\}";
>>>     patterns = (
>>>         {   name = "constant.tag.ee";
>>>             begin = "\\{/?([-a-zA-Z0-9_:]+)";
>>>             end = "\\}";
>>>             captures = { 1 = { name = "entity.name.tag.html"; }; };
>>>             patterns = (
>>>                 [...]
>>>                 {   name = "string.single-quoted.ee";
>>>                     begin = "'";
>>>                     end = "'";
>>>                 },
>>>
>> Here you add:
>>
>>                 {   include = "text.html.basic"; },
>>>             );
>>>         }

Should have been here. Add a comma after the bracket above and insert:
             {   include = "text.html.basic"; },

>>>     );
>>> }




More information about the textmate mailing list