2013-02-22 12 views
6

Vedo un sacco di cose interessanti che posso aggiungere alla mia console Ruby. Ad esempio, una buona lista è "My .irbrc for console/irb".localizzare il file "irbrc" su un Mac

Ho cercato su Google, ma tutto quello che ho trovato è un weblog che dice quali gemme le persone aggiungono al loro .irbrc. Nessuno sta dicendo dove trovarlo.

Non riesco a trovare "irbrc". Ho aperto la mia cartella principale e, se digito IRB, si passa alla console Ruby, ma non riesco a trovare questo file. Qualcuno può aiutarmi a individuarlo?

+0

hmm questo dice basta crearlo http://girliemangalo.wordpress.com/2009/02/20/using-irbrc-file-to-configure-your-irb/ –

risposta

11

È un dotfile irbrc, quindi è necessario inserire ls -a nella home directory per trovarlo. Se non è lì, semplicemente crea un file .irbrc.

di miniera piuttosto semplice, ma questo è quello che ho dentro:

require 'rubygems' 
require 'ap' 

require 'irb/completion' 
ARGV.concat [ "--readline", "--prompt-mode", "simple" ] 

module Readline 
    module History 
    LOG = "#{ENV['HOME']}/.irb-history" 

    def self.write_log(line) 
     File.open(LOG, 'ab') {|f| f << "#{line}\n"} 
    end 

    def self.start_session_log 
     write_log("\n# session start: #{Time.now}\n\n") 
     at_exit { write_log("\n# session stop: #{Time.now}\n") } 
    end 
    end 

    alias :old_readline :readline 
    def readline(*args) 
    ln = old_readline(*args) 
    begin 
     History.write_log(ln) 
    rescue 
    end 
    ln 
    end 
end 

IRB::Irb.class_eval do 
    def output_value 
    ap @context.last_value 
    end 
end 

Readline::History.start_session_log 

require 'irb/ext/save-history' 
IRB.conf[:SAVE_HISTORY] = 100 
IRB.conf[:HISTORY_FILE] = "#{ENV['HOME']}/.irb-save-history" 

IRB.conf[:PROMPT_MODE] = :SIMPLE 
require 'irb/completion' 
+0

grazie, userà il tuo file, ci sono roba abbastanza buona. Ma ancora una domanda: quindi con l'impostazione di questo file, non ho bisogno di caricarli più in IRC? funzionano e basta? quali sono alcuni motivi per cui non viene caricato correttamente? –

+0

Hmm, il mio file potrebbe non essere caricato correttamente perché sto richiedendo l'impressionante gemma di stampa (richiede 'ap'), quindi dovrai eseguire una gem installazione di awesome_print ma a parte questo penso che dovrebbe funzionare. Dovrai solo digitare irb dal tuo prompt dei comandi e dovrebbe essere tutto lì. – Sean

+1

Un "file di punti" può essere ovunque. La convenzione "dot file" significa che è nascosta e normalmente non viene visualizzata, ma non significa necessariamente che sia nella home directory. Controlla le cartelle '.git' di Git e le cartelle' .svn' di SVN, che possono essere ovunque il progetto. –

1

Se non si riesce a trovare il file .irbrc nella vostra home directory, è sufficiente creare nella vostra home directory e riempirlo con alcune linee come ad esempio:

require "irb/completion" 

Quindi l'irb carica automaticamente il modulo di completamento quando si avvia irb.

PS: funziona anche per sistemi UNIX/Linux.