Make”ing” no Vim

Sabe-se que é interessante compilar o programa estando no vim, utilizando o make.
Sabe-se também que podemos navegar nos erros usando :cprev, :cnext.

O que eu não sabia, e isto me aborrecia bastante, era que podemos compilar direto o fonte editado, sem muita complicação estando no vim.

Sabe-se que quando se executa o comando make com o nome do alvo desejado, diretamente na linha de comando, o make, baseado em suas regras gera o alvo com o nome do fonte sem a extensão.

Ex: (na linha de comando)

$ # fonte:   foo.c
$ make foo
$ # gera o alvo ./foo

Contrariamente, quando se usa o compilador diretamente, obtemos o infame a.out

Ex: (linha de comando)

$ #fonte foo.c
$ gcc foo.c
$ # gera o alvo ./a.out

Ok, finalmente estando no vim, basta compilar com (:”modo command):

:make %<

E, para não ter que ficar digitando %< (atalho para nome de arquivo sem a extensão), coloque a seguinte linha no seu ~/.vimrc

set makeprg=make\ %<

E resolva de vez o problema.

{}'s
MaRZ

Anúncios

2 comentários sobre “Make”ing” no Vim

    1. Se for o caso, pois isto é uma “quickie” vc pode passar como parâmetro para o make.

      Atualize o makeprg para
      :set makeprg=make\ %<\ $*

      e dai pode fazer assim (no vim)
      :make CFLAGS=-O2

      ;-)

      Em tempo: o CFLAGS, se vc for trabalhar com apenas um tipo de otimização, pode ir direto no makeprg. Não testei, mas acho que é só um tweak.

Deixe um comentário

Faça o login usando um destes métodos para comentar:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s