Como preencher automaticamente aspas duplas, parênteses, etc no editor VIM?

1

Eu preciso que toda vez que escrever uma aspas simples ou duplas, parênteses, chaves, colchetes ... automaticamente vim deve criar o fechamento e colocar o cursor dentro para continuar editando facilmente. Eu notei que a maioria dos editores faz isso.

Eu preciso disso trabalhando para cada idioma de programação. PHP, JS, JQUERY, HTML, CSS ... mas sem usar um trecho, porque os trechos devem precisar de um atalho ou mapa de teclas para fazer isso (não produtivo). Eu preciso que esta autocompletição funcione automaticamente após clicar em "chave".

    
por Stevens Garcia 16.07.2015 / 00:27

2 respostas

1

Existem plug-ins disponíveis, como o delimitMate, que fornecem esse recurso. Ou você pode criar seus próprios mapeamentos. Uma lista maior de plugins e uma discussão detalhada de possíveis mapeamentos podem ser encontrados aqui: link ; em geral, os mapeamentos são semelhantes a:

inoremap        (  ()<Left>
inoremap <expr> )  strpart(getline('.'), col('.')-1, 1) == ")" ? "\<Right>" : ")"

No entanto, atualmente (a partir do Vim 7.4.781) tais mapeamentos, e qualquer plugin que você instalar, irá desfazer / refazer / repetir, de modo que são necessárias duas etapas para remover o texto digitado: 1 para remover entre parênteses , um para remover os parênteses. Há um patch disponível para corrigir isso, se você se sentir à vontade para compilar seu próprio Vim: link

    
por 16.07.2015 / 07:22
0

Você precisa instalar o plug-in para isso. Este é um exemplo de plug-in. É mais fácil usar texto sublime do que qualquer outro editor. É fácil e leve.

    
por 16.07.2015 / 04:18