在Atom包中,如何在语法中重叠模式?

时间:2016-08-19 02:47:34

标签: regex atom-editor custom-formatting

我想更进一步,设计更多东西。例如,我想设置以下样式:

system.time(x1 <- combn(nrow(x), 3, FUN=function(r) colSums(x[r,]), simplify=FALSE))
#  user  system elapsed 
#  6.46    0.21    6.67 

system.time(x2 <- lapply(combnPrim(nrow(x), 3, simplify = FALSE), 
                     function(r) colSums(x[r,])))
# user  system elapsed 
#  4.61    0.22    4.83 

我想将setting1 = 4 setting2 = 192.168.1.12 etc... 蓝色左边的所有内容设置为样式,将所有内容设置为右紫色。

问题是原子正则表达式引擎不支持负向前瞻或正向前瞻。因此,我尝试使用=begin指令,但仍然无效。换句话说,我试过了:

end

所以基本上,我需要它看起来像这样:

enter image description here

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

我想出了这个解决方案:(reules.cson)

'scopeName': 'source.conf'
'name': 'CONF'
'fileTypes': ['CONF']
'patterns': [     
  {
    # equality
    'match': '(?x) ^ ([^=;]+) (=)  (.+?)\\n'
    'captures':
      '1' :
        'name' : 'blue'
      '2' :
        'name' : 'yellow'
      '3' :
        'name' : 'purple'
  }

]

您可以采用不同的方式设置每个捕获的样式。