Configurando Vim para C ++

118

Eu gostaria de tornar o vim meu editor C ++. Tenho muito pouca experiência em trabalhar com ele e preciso de ajuda para configurar o vim para funcionar com C ++. Eu preciso de recursos como

  • código completo (para stl e para minhas aulas)
  • alternar entre arquivos .cc e .h
  • pode haver mais alguns truques que você, gurus de C ++ e vim, tem.

Você poderia fornecer algumas configurações (com explicações), ou links para tutoriais, plugins que eu poderia usar?

Draco Ater
fonte
7
+1 para o puro masoquismo de querer usar o vim como seu IDE :) O vim tem seus usos (especialmente para editar arquivos remotamente em minha experiência), mas qualquer um que realmente queira usá-lo para edição de código tem chutzpah em minha opinião.
Stuart Golodetz
38
@sgolodetz: Então, há muitas pessoas com ousadia por aí.
Cascabel
1
@Jefromi: Sim, eu percebo isso :) Mas sempre me pareceu masoquismo ... de uma forma um tanto admirável.
Stuart Golodetz
4
Em retrospecto, acho que postar o equivalente a "Estou um pouco duvidoso sobre o vim" em um post que provavelmente será frequentado por muitos entusiastas do vim pode ter sido um pouco provocativo - era para ser uma língua inquisitiva comentário insolente em vez de o início de uma discussão.
Stuart Golodetz
1
Eu dei essa resposta que inicialmente foi restrita ao desenvolvimento C. No entanto, tudo o que eu disse ainda é válido para C ++.
Luc Hermitte

Respostas:

142

Editar: Atualizado em julho de 2013

Thanh DK
fonte
Corrigi o link para meu pacote ftplugins C & C ++. Obrigado pelo "anúncio" :)
Luc Hermitte
Também posso recomendar o plugin FSwitch em vez de um plugin.
W55tKQbuRu28Q4xv
1
O lhCpp de Luc é incompatível com vundle (eu acho que devido ao svn repo) e nenhum processo de instalação que eu gosto pessoalmente - recomendo verificar github.com/Raimondi/delimitMate
netpoetica
2
+1 uma resposta muito completa (e atualizada) merece, é bom ver alguns dos membros mais solitários postando essas ótimas respostas. O quão completa é a sua resposta é bastante útil, embora ao mesmo tempo não opressora, mesmo para um novo usuário do vim.
osirisgothra
1
Que tal vim-rtags? É bom para navegação de código c ++, tem uma funcionalidade de renomeação.
P4C
8

Estou usando vimcomo meu editor C ++, mas não estou usando muitas coisas 'exóticas'.

  • Em relação à conclusão, estou usando o não contextual ^Pe ^N.
  • Eu tenho um monte de abreviações definidas pelo usuário para meu uso C ++, por exemplo:

    abbreviate bptr boost::shared_ptr
    abbreviate cstr const std::string &
  • Tenho várias funções para "trechos de código" como coisas, por exemplo:

    function! IncludeGuard()
      let basename = expand("%:t:r")
      let includeGuard = '__' . basename . '_h__'
      call append(0, "#ifndef " . includeGuard)
      call append(1, "#define " . includeGuard)
      call append(line("$"), "#endif /* !" . includeGuard . " */")
    endfunction
  • O único plugin sem o qual eu realmente não poderia viver é Command-T (que requer suporte a ruby)

  • Para facilitar .cca .htroca, você pode experimentar este plug-in
crime de gelo
fonte