<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">2013/12/16 Иван Бессарабов <span dir="ltr"><<a href="mailto:ivan@bessarabov.ru" target="_blank">ivan@bessarabov.ru</a>></span><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

Тут в соседнем треде ("вопрос юзерам Sublime Text") подняли очень интересную<br>
тему подсветки синтаксиса перла.<br>
<br>
Покажите, пожалуйста, скриншоты, как в вашем редакторе выглядит подсведка<br>
синтаксиса вот в таком скрипте: <a href="https://gist.github.com/bessarabov/7991901" target="_blank">https://gist.github.com/bessarabov/7991901</a><br>
<br>
У меня в vim это выглядит вот так:<br>
<a href="http://upload.bessarabov.ru/bessarabov/A57U8eZRPI7Cc9FQeWI58RBwavo.png" target="_blank">http://upload.bessarabov.ru/bessarabov/A57U8eZRPI7Cc9FQeWI58RBwavo.png</a><br>
<br></blockquote><div>Emacs <a href="https://url.odesk.com/4ncl2g">https://url.odesk.com/4ncl2g</a></div><div>Ошибается, но выглядит получше чем в виме.</div><div><br></div><div>Может быть просто не надо писать такой вот код?</div>

<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
Vim ошибается с подсведкой во второй строчке этого кода:<br>
<br>
    say with_prototype    / 10 ; # /  ; die "this dies!";<br>
    say without_prototype / 10 ; # /  ; die "this dies!";<br>
<br>
Этот код идентичен вот такому, но vim это не понимает:<br>
<br>
    say with_prototype()   / 10 ; # /  ; die "this dies!";<br>
    say without_prototype( / 10 ; # / ); die "this dies!";<br>
<br>
У меня есть гипотеза что ни один редактор не отобразит эти строки правильно,<br>
так как все редакторы парсят код как простой текст, и не используют перл для<br>
разбора кода.<br>
<br>
Этот пример я увидел вот в этом посте на stackoverflow:<br>
<a href="http://stackoverflow.com/questions/4625408/where-can-i-find-a-formal-grammar-for-the-perl-programming-language" target="_blank">http://stackoverflow.com/questions/4625408/where-can-i-find-a-formal-grammar-for-the-perl-programming-language</a><br>


<br>
Мне очень жаль что для языка Perl5 невозможно написать граматику. Была бы<br>
грамматика перла и с его кодом было бы сильно удобнее работать. Можно было бы<br>
и правильную подсведку сделать, и код приводить к стандартному виду (более<br>
гибким и правильным инструментом чем ненавистный мне perltidy), и<br>
автоматический рефакторинг делать.<br>
<br>
И я чуть-чуть завидую языкам для которых есть грамматики:<br>
<br>
 * Go: <a href="http://golang.org/ref/spec" target="_blank">http://golang.org/ref/spec</a><br>
 * Python: <a href="http://inst.eecs.berkeley.edu/~cs164/fa11/python-grammar.html" target="_blank">http://inst.eecs.berkeley.edu/~cs164/fa11/python-grammar.html</a><br>
 * Java: <a href="http://cs.au.dk/~amoeller/dRegAut/JavaBNF.html" target="_blank">http://cs.au.dk/~amoeller/dRegAut/JavaBNF.html</a><br>
 * C: <a href="http://www.cs.man.ac.uk/~pjj/bnf/c_syntax.bnf" target="_blank">http://www.cs.man.ac.uk/~pjj/bnf/c_syntax.bnf</a><br>
 * Perl6: <a href="https://github.com/jwodder/jbobaf/blob/master/perl6/Gerna.bnf.pm6" target="_blank">https://github.com/jwodder/jbobaf/blob/master/perl6/Gerna.bnf.pm6</a><br>
<span class=""><font color="#888888">--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br>WBR, Yury Pats<br>skype: yuripats<br>cellular: +375 (29) 5870723
</div></div>