BT

Novo Vim: RegEx mais rápido e mais de 1000 correções

por Roopesh Shenoy , traduzido por Marcelo Costa em 19 Ago 2013 |

A versão 7.4 do editor de textos Vim foi recentemente lançada, após mais de 1 ano em beta. A atual versão é mais robusta e traz como novidade um motor de busca mais rápido para tratamento de expressões regulares (RegEx).

"Corrigir todos os problemas, sejam pequenos ou grandes; fazer com que o Vim seja mais robusto" é o sexto desejo mais popular na lista das funcionalidades mais desejadas por usuários do Vim. A equipe do Vim levou isso em conta, e mais de mil correções e pequenas melhorias foram realizadas desde o lançamento da última versão (7.3) em agosto de 2010.

O novo motor de busca com regex usa novos algoritmos:

O que agora é chamado de "antigo" motor de busca para expressões regulares faz uso de um algoritmo de backtracking, que tenta fazer uma comparação da expressão com o texto de uma maneira, e quando há uma falha, volta atrás e tenta de outra forma. Esse procedimento funciona bem para padrões regex simples, porém para padrões complexos pode se tornar muito lento no caso de textos mais longos. O novo motor de busca usa uma máquina de estados, que tenta localizar todas as alternativas possíveis para o caractere atual, e armazena os estados possíveis do padrão regex. É um pouco mais lento para padrões simples, mas muito mais rápido para regex complexos e textos longos.

Há também uma interface Python melhorada, com o python-bindeval (que usa vim.bindeval em vez do eval embutido) e o objeto python-tabpage (para permitir o trabalho com tabpages).

Para obter uma lista completa de mudanças desde a versão 7.3, pode-se ver os arquivos de readme das versões 7.3 e 7.4 (o segundo é a lista as correções desde o lançamento do beta). Outra opção é instalar a nova versão e executar o comando ": help version7.4".

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião

Conteúdo educacional

Feedback geral
Bugs
Publicidade
Editorial
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2014 C4Media Inc.
Política de privacidade
BT