[Moscow.pm] Про подсветку синтаксиса

Oleg Alistratov ali на ali.org.ua
Вт Дек 17 01:32:49 PST 2013


Komodo IDE:
http://img-fotki.yandex.ru/get/9759/25923521.e/0_9244f_17eb4d8e_XL.png

16.12.2013, 21:05, "Иван Бессарабов" <ivan на bessarabov.ru>:
> Тут в соседнем треде ("вопрос юзерам Sublime Text") подняли очень интересную
> тему подсветки синтаксиса перла.
>
> Покажите, пожалуйста, скриншоты, как в вашем редакторе выглядит подсведка
> синтаксиса вот в таком скрипте: https://gist.github.com/bessarabov/7991901
>
> У меня в vim это выглядит вот так:
> http://upload.bessarabov.ru/bessarabov/A57U8eZRPI7Cc9FQeWI58RBwavo.png
>
> Vim ошибается с подсведкой во второй строчке этого кода:
>
>     say with_prototype    / 10 ; # /  ; die "this dies!";
>     say without_prototype / 10 ; # /  ; die "this dies!";
>
> Этот код идентичен вот такому, но vim это не понимает:
>
>     say with_prototype()   / 10 ; # /  ; die "this dies!";
>     say without_prototype( / 10 ; # / ); die "this dies!";
>
> У меня есть гипотеза что ни один редактор не отобразит эти строки правильно,
> так как все редакторы парсят код как простой текст, и не используют перл для
> разбора кода.
>
> Этот пример я увидел вот в этом посте на stackoverflow:
> http://stackoverflow.com/questions/4625408/where-can-i-find-a-formal-grammar-for-the-perl-programming-language
>
> Мне очень жаль что для языка Perl5 невозможно написать граматику. Была бы
> грамматика перла и с его кодом было бы сильно удобнее работать. Можно было бы
> и правильную подсведку сделать, и код приводить к стандартному виду (более
> гибким и правильным инструментом чем ненавистный мне perltidy), и
> автоматический рефакторинг делать.
>
> И я чуть-чуть завидую языкам для которых есть грамматики:
>
>  * Go: http://golang.org/ref/spec
>  * Python: http://inst.eecs.berkeley.edu/~cs164/fa11/python-grammar.html
>  * Java: http://cs.au.dk/~amoeller/dRegAut/JavaBNF.html
>  * C: http://www.cs.man.ac.uk/~pjj/bnf/c_syntax.bnf
>  * Perl6: https://github.com/jwodder/jbobaf/blob/master/perl6/Gerna.bnf.pm6
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org

-- 
Oleg Alistratov


Подробная информация о списке рассылки Moscow-pm