Dicas de como aumentar a produtividade usando autocmd no vim
Quantas vezes você faz um arquivo que é exatamente igual à um outro arquivo por dia? Quantas vezes você abre um arquivo só para copiar um trecho de código que é utilizado em vários arquivos? Quantas vezes você se vê fazendo a mesma coisa que fez em outro lugar?
E aquela palavra que você sempre escreve errada? Aquela função que você sempre esquece o nome?
Conheça algumas dicas para aumentar a produtividade e diminuir o trabalho dessas coisas rotineiras.
Como dar Commits SVN com Vim
Em alguns projetos, ao se dar um commit, é necessário especificar quais arquivos foram adicionados ou modificados e ainda mencionar o porque. Algo do tipo:
functions.pl – Adicionada a função que faz aquilo e corrigida a função tal que tinha um erro de português.
É realmente um porre ver todos os arquivos que foram modificados e dizer as mudanças, mas é necessário. Aqui vai uma dica pra quem quer melhorar isso e, por que não, automatizar. Vou utilizar o exemplo com o svn, mas adaptem para o que vocês usam.
$ cd /raiz/do/repositorio $ svn status | vim - $ svn commit -F /tmp/commit
Aquela segunda linha, joga a saÃda do comando `svn status` em um buffer no Vim. Assim, podemos editar melhor. Caso o servidor seja externo e demore muito uma resposta, apenas aguarde. A saÃda do shell irá para buffer, apenas aguarde.
Com tudo pronto, podemos fazer algumas substituições:
:%s/^A\s\+/[ADICIONADO] /g :%s/^D\s\+/[REMOVIDO] /g :%s/^M\s\+/[MODIFICADO] /g
Cada letra da primeira coluna, indica o status do arquivo no projeto. Uma lista completa com as opções pode ser encontrada em http://svnbook.red-bean.com/en/1.4/svn.ref.svn.c.status.html
Agora você organiza seu log. Escreve porque foi adicionado o arquivo X, removido o arquivo Y e etc. Depois de pronto, basta salvá-lo e utilizá-lo como log do commit.
:sav /tmp/commit $ svn commit -F /tmp/commit $ rm /tmp/commit
Uma outra maneira de se fazer isso é usando o Vim como editor default do SVN.
vim ~/.bashrc
Acrescente as seguintes linhas:
export SVN_EDITOR=/usr/bin/vim
Agora, ao usar `svn commit`, o vim irá ser aberto para você especificar o motivo.
Acho que é isso! Comentem =)
Como fazer tudo com GVim – Parte 2
Hey! Dando continuidade à série: ‘Como Fazer Tudo com o GVim’, nesse segundo post, vou mostrar algumas coisas que podem não fazer muito sentido, mas fazem, definitivamente acerca do que o vim é capaz (e ótimo que o seja) de fazer.
Como o vim tem suporte à programação em python e ruby, ou seja, você pode programar em python ou ruby para fazer plugins e afins para o vim, pode-se, evidentemente, utilizar biliotecas nativas das linguages, ou até mesmo API’s próprias.
Como fazer um mini servidor HTTP em Python
Olá! Estava lendo minhas mail lists matinais, mais especificadamente a mail list do TcheLinux (evento que, aliás, irá ocorrer em Gravataà sábado que vem, dia 28/03), quando me deparo com um post de Leonardo Menezes Vaz falando de um mini servidor http em python. Achei muito interessante e resolvi postar aqui.
Como usar mod_rewrite de verdade
Rá! Hoje quero falar sobre mod_rewrite. Um módulo para o apache que permite reescrever URL’s. Ele é muito útil em vários sentidos: aumenta a o page rank em buscadores, torna URL’s limpas e inteligÃveis, fazendo com que o usuário consiga lembrá-las muito mais rápida e facilmente.
Porém, como todos os outros artefatos que estão por aÃ, pode complicar ainda mais a vida de um programador, caso não seja usado adequadamente.
Por que usar Clean URL’s?
Olá! Este post é na verdade uma introdução para o próximo. Que trará formas de se trabalhar com Clean URL’s. Este, por sua vez, é mais teórico. Portanto, se você estiver em dúvida se usar ou não, qual os ganhos dela e etc, sinta-se a vontade de ler, comentar e criticar o post abaixo.
Gravando Sessões no Vim
Pense na cena: você está programando uma certa funcionalidade de um determinado projeto, vamos chamá-lo de A. Então, você tem 4 arquivos abertos em buffers dentro do Vim. Criou uns mapeamentos do teclado extra, só para o momento. Também tem marcadores que pulam de um trecho do código para outro. Está tudo do jeito que você adora.
Chega, então, o seu chefe e diz: “Cara, preciso que tu veja algo em outro projeto.” ou até mesmo atualiza seu kernel e precisa rebootar o sistema. Chega sua namorada e pede pra ver o orkut. Seja qual seja o motivo, você precisa fechar o Vim. Mas, mais tarde, vai voltar a mexer, nestes 4 mesmos arquivos. Vai refazer todos os mapeamentos, refazer as marcações, etc.
Pois, se já aconteceu isso com você – comigo acontece muito frequênte -, você pode usar o :mksession.
Leia o resto do post »
Humor no VIM
Bom, essa semana foi difÃcil… Trabalhando noite a dentro até de manhã, sem parar… Cansei! Essa semana me cansou de verdade. Então, pra descontrair um pouco, juntei umas tirinhas sobre o VIM que eu já tinha favoritado e vou postar aqui. Vale a pena dar uma lida.
Dicas de movimentação e identação no GVim
Das coisas que mais me deixam frustados na face da terra, além de pegar código desidentado ou identado de forma errada, é ouvir coisas do tipo ‘no eclipse é mais fácil, só dar CTRL+…’, ‘ah, porque no notepad++ da pra fazer isso mais fácil…’.
Essa semana eu escutei algo do tipo: ‘No notepad++, CTRL+SHIFT+UP move a linha atual pra cima, o GVim podia ter um comando que fizesse isso.’ (Citada pelo reclamão-mor, Luan). Indignados, eu e Emanuel (sim, ele me ajudou) gastamos mais ou menos 1 hora de trabalho ajeitando umas HOTKEYS para ninguém reclamar. (Chefe, eu sei que tu lê o Blog, mas dá um desconto, vai?). Eis o que surgiu:
Como baixar e converter vÃdeos do youtube no linux
Aloha! Neste pequeno e simples tutorial (afinal de contas baixar e converter vÃdeos do youtube é bem mais simples do que você imagina!) vou mostrar a forma mais roots de como baixar vÃdeos do youtube e converter ela para o formato que quiser. Para isso, vou usar o Slackware 12.2 (testei também no ubuntu 8.04 e funcionou legal).
Bom, vamos aos requisitos dos quais vamos precisar:
- Pacote ffmpeg instalado (geralmente vem com o mplayer, pode ser instalado por apt-get. Também há uma build no linuxpackages)
- 1 Browser de sua preferência.
- 1 xÃcara de café puro sem açúcar
- Uma tesoura sem ponta
- Cola em bastão
- 1 url de algum vÃdeo do youtube








