2008/07/23

$ vvvvvviiiiiiiiiimmmmmm...

Dia destes eu estava escrevendo uma página no wiki da empresa, sofrendo em uma text area quando nosso guru salvou a pátria:
- Eu uso a extensão It's All Text! no meu firefox: toda vez que passo o mouse sobre uma text area aparece o botão , que abre um arquivo novo no EMACS com o conteúdo da text area, inclusive atualizando ela e tal...
Embora fascinado com o It's All Text!, esta frase reavivou a centelha da jihad dos editores: preciso fazer isso com o vim... hmmm... já sei:

# apt-get install vim-gnome -y (...)
Configurei o It's All Text! pra usar o gvim, reiniciei o firefox e sai pro abraço. Porém, horas mais tarde percebi que pelo terminal o vim estava abrindo significativamente menos rápido. Ainda bem que tem uma forma de comprovar isso:

$ time vi -c q real 0m6.023s user 0m0.012s sys 0m0.008s
Caramba, isso parece muito... mas como estava antes?

# apt-get remove vim-gnome -y (...) $ time vi -c q real 0m0.005s user 0m0.004s sys 0m0.000s
Aham, o vim está lento mesmo, mas por quê?

# apt-get install vim-gnome -y (...) $ file $(which vi) /usr/bin/vi: symbolic link to `/etc/alternatives/vi' $ file /etc/alternatives/vi /etc/alternatives/vi: symbolic link to `/usr/bin/vim.gnome'
O pacote vim-gnome mudou o symlink do vim! Será que ele fez isso com os outros symlinks do vim também?

# find -L /etc/alternatives -samefile /usr/bin/vim.gnome /etc/alternatives/ex /etc/alternatives/rvim /etc/alternatives/gvimdiff /etc/alternatives/vi /etc/alternatives/vimdiff /etc/alternatives/rview /etc/alternatives/vim /etc/alternatives/editor /etc/alternatives/gvim /etc/alternatives/view (...)
Vixe... deve ter uma forma 'limpa' de desfazer isso... E se eu fingir que removi o vim-gnome?

# /var/lib/dpkg/info/vim-gnome.prerm remove # find -L /etc/alternatives -samefile /usr/bin/vim.gnome # echo $? 0
Funcionou! E pra não esquecer como fiz isso uma vez, escrevi isso aqui no blog. Ah, não preciso falar que isso só deve funcionar nas distribuições baseadas no Debian, né?

2 comentários:

  1. Experimente o poder do comando update-alternatives.

    ResponderExcluir
  2. Cara a extensão é muito boa!

    ResponderExcluir