Digamos que eu tenha um buffer com texto. Gostaria de testar uma expressão regular (idealmente tipo Perl) no meu buffer e fazer com que o Emacs destaque as correspondências.
Por exemplo, o seguinte regexp ( extraído da Wikipedia ):
(?<=\.) {2,}(?=[A-Z])
corresponderia da seguinte forma no seguinte texto:
Essa expressão regular, em particular, corresponde a pelo menos dois espaços que ocorrem após o período (.)
e antes de uma letra maiúscula.
O Emacs fornece um comparador de expressões regulares interativo para expressões regulares do Perl ?
Se a resposta para este último for não:
Existe uma razão pela qual o suporte nativo às expressões regulares do Perl nunca foi considerado no Emacs? (considerando que é um padrão bem conhecido no Unix / Linux)
Como alguém poderia proceder para criar um desses matchers Perl regexp? (talvez chamando Perl sob o capô ou pré-converta o regexp do Perl para uma variante suportada?)
fonte
Respostas:
Existem dois pacotes legais para trabalhar com tipos de regex perl efetivamente, que devem ser usados juntos - visual-regexp e sua extensão - visual-regexp-steroids . Eles são um ótimo complemento para o emacs:
fonte
re-builder
permite a construção imediata de expressões regulares do emacs lisp style. Não sei se existe um pacote equivalente para criar expressões regulares do Perl interativamente.Consulte http://www.masteringemacs.org/articles/2011/04/12/re-builder-interactive-regexp-builder/ para obter mais discussões.
fonte