A desvantagem dos mapeamentos do modo de inserção é que cada digitado p
aparecerá agora com um atraso no buffer, já que o Vim precisa verificar se o mapeamento prf completo deve ser aplicado ou não. Melhor usar uma abreviatura :
:ia prf printf();<Left><Left>
Ao omitir o "
da abreviação, você pode acioná-lo digitando prf"
, e isso evita o problema descrito por @Dmitry Alexandrov.
Variante avançada
snippets são como o :abbreviate
dos esteróides, geralmente com inserções de parâmetros, espelhamento e várias paradas dentro deles. Um dos primeiros, muito famosos (e ainda amplamente utilizados) plugins Vim é snipMate (inspirado em o editor TextMate ); infelizmente, não é mais mantido; embora haja um garfo . Uma alternativa moderna (que requer o Python) é UltiSnips . Há mais, veja esta lista no Vim Tips Wiki .
Há três coisas a serem avaliadas: primeiro, os recursos do próprio mecanismo de snippet; segundo, a qualidade e a amplitude dos snippets fornecidos pelo autor ou por outros; terceiro, como é fácil adicionar novos trechos.