<font class="Apple-style-span" face="arial, helvetica, sans-serif">Thank you, Allan! I appreciate your help, but I think you should not waste your invaluable time on such trivial questions, which can be answered by others. Even if they don't! :) The greatest among greatest, please, concentrate on TM2 :)<br>

</font><br><div>The working (at least highlighting!) definition is then:</div><div><br></div><div><div>{<span class="Apple-tab-span" style="white-space:pre">   </span>scopeName = 'source.phpruby.serpent';</div><div>

<span class="Apple-tab-span" style="white-space:pre"> </span>fileTypes = ( 'serpent', 'serpent.php', 'serpent.erb' );</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>patterns = (</div>

<div><span class="Apple-tab-span" style="white-space:pre">              </span>{<span class="Apple-tab-span" style="white-space:pre">   </span>match = '<\?(php|=)?.*\?>';</div><div><span class="Apple-tab-span" style="white-space:pre">                    </span>captures = { 0 = { include = 'source.php'; }; };</div>

<div><span class="Apple-tab-span" style="white-space:pre">              </span>},</div><div><span class="Apple-tab-span" style="white-space:pre">           </span>{<span class="Apple-tab-span" style="white-space:pre">   </span>begin = '<%';</div>

<div><span class="Apple-tab-span" style="white-space:pre">                      </span>end = '%>';</div><div><span class="Apple-tab-span" style="white-space:pre">                       </span>patterns = ( { include = 'source.ruby'; } );</div>

<div><span class="Apple-tab-span" style="white-space:pre">              </span>},</div><div><span class="Apple-tab-span" style="white-space:pre">           </span>{<span class="Apple-tab-span" style="white-space:pre">   </span>include = 'source.serpent'; },</div>

<div><span class="Apple-tab-span" style="white-space:pre">      </span>);</div><div>}</div></div><div><br></div><div>Thanks again!</div><div><br></div><div><br><div class="gmail_quote">On Fri, Jul 9, 2010 at 08:02, Allan Odgaard <span dir="ltr"><<a href="mailto:mailinglist@textmate.org">mailinglist@textmate.org</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im">On 29 Jun 2010, at 14:23, nuke wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Apparently, it is an issue of PHP only. The following language definition<br>
highlights Ruby and Serpent languages in my text, but not PHP insertions! What<br>
the hell is wrong here?<br>
<br>
{ scopeName = 'source.phpruby.serpent';<br>
fileTypes = ( 'serpent', 'serpent.php', 'serpent.erb' );<br>
patterns = (<br>
{ begin = '<\?(php|=)?';<br>
end = '\?>';<br>
patterns = ( { include = 'source.php'; } );<br>
},<br>
</blockquote>
<br></div>
We made the PHP grammar itself match the <?php … ?> construct, so with your grammar, those bits have been consumed by the including grammar, and the included PHP grammar will therefor be a no-op.<br>
<br>
The reason we made it this way was so that the PHP grammar can sort of work when used as the root grammar, since lots of users insist on using it that way, despite our efforts¹ to educate ;)<div class="im"><br>
<br>
<br>
¹ <a href="http://wiki.macromates.com/Troubleshooting/PHPSyntaxHighlight" target="_blank">http://wiki.macromates.com/Troubleshooting/PHPSyntaxHighlight</a><br>
<br>
_______________________________________________<br></div><div><div></div><div class="h5">
textmate mailing list<br>
<a href="mailto:textmate@lists.macromates.com" target="_blank">textmate@lists.macromates.com</a><br>
<a href="http://lists.macromates.com/listinfo/textmate" target="_blank">http://lists.macromates.com/listinfo/textmate</a><br>
</div></div></blockquote></div><br></div>