Usando o Vim dentro do Irb
Publicado em Developer
irb irbrc ruby vim
Estava vendo agora um vídeo do Giles Bowkeet, que também mencionou outro vídeo do Vimcasts sobre o mesmo assunto, que é usar o Vim dentro do IRB e lembrei de uma solução "na unha" que eu uso faz algum tempo e que descrevi em um post anterior, mas resolvi repetir aqui mostrando somente a parte relacionada com o Vim/IRB.
O que fiz foi criar um arquivo temporário e interpretar o seu conteúdo. Para isso, é só inserir o seguinte método no seu .irbrc (código com números de linhas copiados do post anterior):
34 # configure vim 35 @irb_temp_code = nil 36 37 def vim(file=nil) 38 file = file || @irb_temp_code || Tempfile.new("irb_tempfile").path+".rb" 39 system("vim #{file}") 40 if(File.exists?(file) && File.size(file)>0) 41 Object.class_eval(File.read(file)) 42 @irb_temp_code = file 43 "File loaded from Vim." 44 else 45 "No file loaded." 46 end 47 rescue => e 48 puts "Error on vim: #{e}" 49 end 50 puts "Vim available."
Agora é só digitar vim dentro do IRB e partir para o abraço. E, lógico, se quiserem utilizar outro editor que rode no terminal, é só trocar o system("vim #{file}") para o seu editor preferido.
Comentários
Comentários fechados.
Sem nenhum comentário.
Artigos anteriores
- Pull requests em modo raiz - sex, 22 de dezembro de 2023, 09:57:09 -0300
- Qual a idade do seu repositório? - ter, 27 de dezembro de 2022, 12:50:35 -0300
- Utilizando ctags em projetos Rails mais recentes - qui, 24 de junho de 2021, 08:23:43 -0300
- Fazendo o seu projeto brotar - seg, 15 de julho de 2019, 08:57:05 -0300
- Learn Functional Programming with Elixir - sex, 02 de março de 2018, 18:47:13 -0300
- Ambiente mínimo - Driver Driven Development - qua, 23 de agosto de 2017, 15:15:03 -0300
- Ambiente mínimo - repositórios de código - dom, 16 de abril de 2017, 13:02:14 -0300
- Ambiente mínimo - terminal e navegador - dom, 02 de abril de 2017, 21:43:29 -0300
- Utilizando muitas gems no seu projeto? - sáb, 29 de outubro de 2016, 11:57:55 -0200
- Desenvolvedores e inteligência artificial - seg, 11 de julho de 2016, 09:09:38 -0300