Dando uma garibada no .irbrc
Publicado em Developer
irb irbrc ruby
Começo de ano, hora de organizar algumas coisas. Uma delas era o meu .irbrc que andava meio diferente em algumas máquina e já estava virando bagunça. Fora que eu sempre preciso atualizar o bicho no computador do curso de Ruby na Object Training (falando nisso, as turmas desse ano começam daqui a duas semanas!) pois volta e meia instalaram uma distro nova lá.
Pois bem, segue o código do meu .irbrc abaixo. Alguns podem mencionar alguns projetos muito legais e úteis como o UtilityBelt, que faz tudo isso e muito mais, mas quem me conhece sabe que eu sou meio cabeçudo e "fução" e acabo fazendo as coisas, se possível, de um jeito enxuto que atende o que eu preciso. Inclusive, eu escolhi desabilitar os recursos de salvar o histórico e do autocomplete no Wirble para ativá-los "na unha" pois alguns ambientes podem não ter o Wirble ou nem o Rubygems instalados. Assim não fico sem esses dois recursos.
Divirtam-se!
1 require "irb/completion" # activate default completion 2 require 'irb/ext/save-history' # activate default history 3 require "tempfile" # used for Vim integration 4 5 # save history using built-in options 6 IRB.conf[:SAVE_HISTORY] = 1000 7 IRB.conf[:HISTORY_FILE] = "#{ENV['HOME']}/.irb-save-history" 8 puts "History configured." 9 10 # auto-indent 11 IRB.conf[:AUTO_INDENT]=true 12 puts "Auto-indent on." 13 14 # try to load rubygems 15 begin 16 require "rubygems" 17 puts "Rubygems loaded." 18 rescue LoadError => e 19 puts "Seems you don't have Rubygems installed: #{e}" 20 end 21 22 # let there be colors 23 # just use Wirble for colors, since some enviroments dont have 24 # rubygems and wirble installed 25 begin 26 require "wirble" 27 Wirble.init(:skip_prompt=>true,:skip_history=>true) 28 Wirble.colorize 29 puts "Wirble loaded. Now you have colors." 30 rescue LoadError => e 31 puts "Seems you don't have Wirble installed: #{e}" 32 end 33 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."
Comentários
Comentários fechados.
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
Então, também conheci o Wirble, muito bom!
Æ!!
Bem legal o seu .irbrc até conheci o Wirble, que eu ainda não conhecia! =P
Há braços