Script snipMate para VIM

Como sou usuário Linux, é fato que meu editor favorito neste ambiente é o VIM (se bem que tenho usado muito o NetBeans 6.5 para PHP, que é um ótimo editor, mas as vezes é muita coisa para uma simples edição, fica para outro post).

O Script

Recentemente por indicação de um amigo, conheci o script snipMate, criado por Michael Sanders, que basicamente é um script não-obstrusivo para VIM que implementa os snippets do TextMate para o VIM.

A propósito, snippets são aqueles pedaços de código predefinidos (if, while, switch) que você pode inserir no seu documento.

Como exemplo, em um arquivo PHP, usando a instalação padrão do plugin, se você digitar “for” e logo após apertar “<tab>” no modo de inserção, ele irá expandir para a sintaxe padrão do “for” em PHP:

for ($i = 0; $i &lt; count; $i++) {
      // code...
}

Para facilitar, dê uma olhada no screencast do plugin que fala por si só: http://vimeo.com/3535418

Instalação

1º passo: Faça o download do script aqui (essa é a versão 0.79, é bom dar uma olhada no site se não teve nenhum update).
2º passo: Dentro do diretório onde está o arquivo, execute o comando (se não existir o diretório .vim, é só criar ele, usando o comando “mkdir ~/.vim”):

mv snipMate.zip ~/.vim

Depois entre no diretório e descompacte o arquivo, removendo-o após extraí-lo

cd ~/.vim
unzip snipMate.zip
rm snipMate.zip

3º passo: Reinicie o VIM e está feita a instalação, agora é só testar o script!

Dica: Para aqueles que como eu tem o auto-completar na tecla <tab>, ela vai gerar um conflito na edição. Para corrigir isso é só alterar o arquivo .vimrc e mudar onde tiver “<tab>” por “<C-@>” (sem as aspas).
Pronto, agora o auto-completar vai ser ativado usando “<ctrl>+<space>”.

Compartilhe e use:
  • del.icio.us
  • Digg
  • Twitter
  • StumbleUpon
  • Technorati
  • Reddit
  • Rec6
  • Identi.ca


Sem Posts Relacionados.


4 comentários para “Script snipMate para VIM”

  • Sérgio Luiz Araújo Silva Says:

    Contactei o criador do snipmate sugerindo alguns snippets, que aliás coloquei aqui no meu por exemplo:

    # testa se é root (bash) ifroot
    snippet ir
    # testa se está logado como root
    if [ "$(id -u)" != "0" ]; then
    echo ” Need be root”
    sleep 2
    exit 1
    fi

    #Obs: o snipmate usa tabulação ao invés de espaço
    # caso contrário dá erro

    Li um pouco da documentação e estou tentando criar alguns snippets a mais, de fato este plugin é uma revolução, até porque a sua syntaxe é muito similar à do texmate.

  • kidh0 Says:

    Realmente Sérgio, é uma revolução, principalmente no quesito velocidade de desenvolvimento, que aumenta consideravelmente.

    Quais outros snippets tu sugeriste?

  • Sérgio Luiz Araújo Silva Says:

    #Para html (converta os espaços para )
    snippet skel

    ${2:titulo-da-pagina}

    ${3:corpo-do-documento}

    # snippet para shell script
    snippet date
    `system(“date +%m-%d-%Y”)`
    snippet sh
    #!/bin/bash
    # Criado em: `system(“date +%m-%d-%Y”)`
    # Last Change: `system(“date +%m-%d-%Y”)`
    # vim:ft=sh:fdm=syntax:nu:
    # Instituicao: ${1:instituicao}
    # Proposito do script: ${2:descricao}
    # Autor: ${3:`system(“whoami”)`}
    # site: ${4:site}

    # qualquer coisa me manda uns :)

Deixe um comentário