2013-02-22 14 views
6

Tôi thấy rất nhiều thứ thú vị tôi có thể thêm vào bảng điều khiển Ruby của mình. Ví dụ: danh sách tốt là "My .irbrc for console/irb".tìm tệp "irbrc" trên máy Mac

Tôi googled, nhưng tất cả những gì tôi thấy là nhật ký web nói những gì đá quý mọi người thêm vào .irbrc của họ. Không ai nói nơi tìm thấy nó.

Tôi không thể tìm thấy "irbrc". Tôi đã mở thư mục chính của mình và, nếu tôi nhập IRB, nó sẽ chuyển đến bảng điều khiển Ruby, nhưng tôi không thể tìm thấy tệp này. Ai đó có thể giúp tôi xác định vị trí không?

+0

hmm cái này nói chỉ cần tạo http://girliemangalo.wordpress.com/2009/02/20/using-irbrc-file-to-configure-your-irb/ –

Trả lời

11

Đó là một dotfile irbrc, do đó bạn sẽ cần phải ls -a trong thư mục chính của bạn để tìm nó. Nếu nó không có trong đó, chỉ cần tạo một tập tin .irbrc.

Mine của khá đơn giản nhưng đây là những gì tôi có trong nó:

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

cảm ơn, sẽ sử dụng tệp của bạn, có những thứ khá tốt trong đó. Nhưng vẫn còn một câu hỏi: vì vậy với thiết lập tập tin này, tôi không cần phải tải chúng nữa trong IRC? họ chỉ làm việc? một số lý do để nó không tải thành công là gì? –

+0

Hmm, tệp của tôi có thể không tải chính xác vì tôi yêu cầu đá quý in tuyệt vời (yêu cầu 'ap'), vì vậy bạn sẽ cần phải thực hiện 'gem install awesome_print' nhưng khác với tôi nghĩ rằng nó sẽ hoạt động. Bạn sẽ chỉ cần gõ irb từ dấu nhắc lệnh của bạn và tất cả nên có ở đó. – Sean

+1

Một "tệp chấm" có thể ở bất kỳ đâu. Quy ước "tập tin chấm" có nghĩa là nó được ẩn và không được hiển thị bình thường, nhưng nó không nhất thiết có nghĩa là nó nằm trong thư mục chính. Kiểm tra các thư mục '.git' và SVN's' .svn', có thể ở bất cứ nơi đâu dự án. –

1

Nếu bạn không thể tìm thấy các tập tin .irbrc trong thư mục chính của bạn, chỉ cần tạo nó trong thư mục chính của bạn và điền nó với một số dòng chẳng hạn như:

require "irb/completion" 

Sau đó, chi phí sẽ tự động tải mô-đun hoàn thành khi bạn khởi động irb.

PS: nó cũng hoạt động với hệ thống UNIX/Linux.

Các vấn đề liên quan