terça-feira, 27 de fevereiro de 2007

Vim e diffsplit: Diversão garantida programando!

Acredito que muitos de vocês conhecem o comando diff. Ele mostra a diferença entre dois arquivos em uma forma não muito fácil de se ler. Seu formalismo as vezes pode confundir e dificultar naquela hora de pegar um bug chato. Eu mesmo não entendo muito bem como diff funciona :-\ , pensei então em fazer algo mais visual e legível. Você, leitor computeiro, já vai pensar: Mas tem o tkdiff! O gtkdiff! O kdiff! O insira_aqui_sua_lib_predileta_diff... Muitos deles! Mas, já que estamos com o vim aberto, vamos aproveitar e fazer algo de útil por aqui mesmo, nada de mouses! :-P Just screen!

Primeiro vejamos as diferenças entre os arquivos exemplo manualmente:

otubo@lisa /tmp/example $ cat helloworld.c
#include
int main(){
printf("Hello World!!!\n");
return 0;
}

otubo@lisa /tmp/example $ cat helloworld2.c
#include

int main(){
printf("Hello Vimmers!!!\n");

return 0;
}
Agora, vamos editar helloworld.c. Uma vez dentro do ambiente vim, entre em modo de comando e digite:

:vert diffsplit helloworld2.c

Você deve ver algo assim:
Como você pode ver, as diferenças entre os arquivos são completamente gráficas e fáceis de vizualizar :-) Obviamente, nosso exemplo não mostra todo o poder real que essa ferramenta possui, mas quando estiver trabalhando com projetos grandes, complexos e cheios de bugs malas a serem rastreados, verá que será um grande amigo.

7 comentários:

Raoni disse...

Muito legal essa ferramenta! Muito útil pra debugar... mas é ainda mais útil pra quem tá aprendendo! Manda essa pro Maltempi que dá IC2 em C! hehe Beijânus.

Eduardo Otubo disse...

Mas tipo, o Maltempi não usa Linux. Não nas minhas (longínquas e saudosas) aulas de IC2 :-)

Raoni disse...

Ah, então essa porrinha colorida é só pra linux? Haha, é, tinha que ser mesmo. Enfim, essa fica pra quem acha que o windows tá com tudo.

Unknown disse...

jesus... ele me chama para ver o blog dele... eu achando q era alguma coisa importante !! hehehehe

Brincadeira zero... rs... NERD!

Eduardo Otubo disse...

Orc, na verdade dá pra usar gvim no windows.

jr. disse...

hey pal! (i'm not too old here, but) welcome to 'brogosfera' or something like this :p
nice tip remembering our dear friend vim.
so now, don't fade away. stay tuned and put (almost) all you have inside this insane mind out.

Unknown disse...

Aooooooo Zerooooooo!
Massa o artigo... também acho o diff meio ilegível... \0/ curti sua idéia... vou testar :)
Abraço