css – Textmate语法高亮显示,扩展另一种语言的突出显示

我正在尝试在Textmate中扩展一些CSS突出显示.我的方法是这样的……

{ 
    ....
    patterns = (
        { include = 'source.css'; },{ 
            name = 'support.function';
            match = '\..*\);';
        },);
}

问题是“include =’source.css’;”.如果我删除该行.我的自定义匹配器命中并应用预期的突出显示.但后来我失去了我想要的所有预定义的CSS突出显示.

我很困惑如何覆盖我所包含的现有css突出显示.想法?

最佳答案
我有类似的问题.我猛烈地反对它,然后TextMate IRC频道中的某个人让我直截了当:由于某种原因(我忘了)你需要重新包括你的语言语法.

我的模式部分现在看起来像

patterns = (
{   include = 'source.ruby'; },{   include = '$self'; },);

为了向这个例子添加更多信息,这里是我正在创建的包的语言语法(在我感兴趣的文件部分,一切都在范围Meta.rails.model.也许你没有你的CSS包.

patterns = (
    {   name = 'Meta.rails.model';
        comment = "Uses lookahead to match classes that (may) inherit from ActiveRecord::Base; includes 'source.ruby' to avoid infinite recursion";
        begin = '(^\s*)(?=class\s+.+ActiveRecord::Base)';
        end = '^\1(?=end)\b';
        patterns = (
            {   include = 'source.ruby'; },);
    },{   name = 'source.ruby.rails.aasm.event';
        match = '(aasm_event\W*:\w+)';
        captures = { 1 = { name = 'keyword.other.context.ruby.rails.aasm.event'; }; };
    },{   include = 'source.ruby.rails'; },);

}

但是你看到$self声明将其他模式引入了Meta.rails.model模式(我认为,为什么这很重要).

相关文章

Css3如何实现鼠标移上变长特效?(图文+视频)
css3怎么实现鼠标悬停图片时缓慢变大效果?(图文+视频)
jquery如何实现点击网页回到顶部效果?(图文+视频)
css3边框阴影效果怎么做?(图文+视频)
css怎么实现圆角边框和圆形效果?(图文+视频教程)
Css3如何实现旋转移动动画特效