0

/{{#if media.isMobile}}と一致するようになりました。終了タグは{{/if}}です。しかし、ブロックの間のすべては今すぐ(通常のhtmlの色付けをしていた)通常のテキストです。では、キャプチャ間のコンテンツを辞書の最上位レベルでキャプチャするにはどうすればよいですか(タグ内にないものはすべて適切な色を持っているため)Textmate:開始キャプチャと終了キャプチャ内のすべてのテキストは色付き/一致していません

あなたは

<key>if_token</key> 
    <dict> 
     <key>begin</key> 
     <string>(\{\{#)(if) (.+)(\}\})</string> 
     <key>beginCaptures</key> 
     <dict> 
      <key>1</key> 
      <dict> 
       <key>name</key> 
       <string>>punctuation.definition.tag.begin.html</string> 
      </dict> 
      <key>2</key> 
      <dict> 
       <key>name</key> 
       <string>keyword.operator.handlebars</string> 
      </dict> 
      <key>3</key> 
      <dict> 
       <key>name</key> 
       <string>variable.parameter.handlebars</string> 
      </dict> 
      <key>4</key> 
      <dict> 
       <key>name</key> 
       <string>punctuation.definition.tag.end.html</string> 
      </dict> 
     </dict> 
     <key>end</key> 
     <string>(\{\{\/)(if)(}})</string> 
     <key>endCaptures</key> 
     <dict> 
      <key>1</key> 
      <dict> 
       <key>name</key> 
       <string>punctuation.definition.tag.begin.html</string> 
      </dict> 
      <key>2</key> 
      <dict> 
       <key>name</key> 
       <string>keyword.operator.handlebars</string> 
      </dict> 
      <key>3</key> 
      <dict> 
       <key>name</key> 
       <string>punctuation.definition.tag.end.html</string> 
      </dict>    
     </dict> 

    </dict> 

答えて

1

が必要包みここで、ifのための私の言語パターンのコードだが、それを考え出しました。ブロック全体をキャプチャする代わりに。キャプチャ開始:{{#if ..と終了:}}を1つのパターンとして使用します。そして別のものとして{{/if}}

関連する問題