2011-10-17 52 views
8

編輯:褪色的灰色只是版本0.9.7.3和之前的問題。它從那以後變成了深灰色。如何調整pry顏色

Pry具有很好的着色功能,但創建或更改對象時返回的值是褪色的灰色,幾乎看不到。

u = User.new 
=>#<User... <<<<<< This is what is barely readable. 

我試圖搞亂.pryrc中的值,但無法得到這個或任何其他顏色的事情,改變。

回答

9

撬使用CodeRay着色,這樣你就可以把你的.pryrc文件中的以下內容:

CodeRay.scan("example", :ruby).term # just to load necessary files 

TERM_TOKEN_COLORS = { 
    :symbol => '1;31' # will make symbols bolded and light red on my terminal 
} 

module CodeRay 
    module Encoders 
     class Term < Encoder 
      # override old colors 
      TERM_TOKEN_COLORS.each_pair do |key, value| 
       TOKEN_COLORS[key] = value 
      end 
     end 
    end 
end 

你可以在這裏看到,可定製(不知道哪一個到底是你提到的所有值,但不應該很難追查): https://github.com/rubychan/coderay/blob/master/lib/coderay/encoders/terminal.rb

+0

這樣做。我用':comment =>'34'替換了':symbol =>'1; 31''來獲得標準的藍色。謝謝。 –

+1

太棒了!我現在已經在Pry中解決了這個問題,所以從下一個版本開始,沒有人應該有這個問題:)。 https://github.com/pry/pry/commit/c91975bb51424a951a0f39a6e7652cb7aaf26d17 –

+2

不錯。但不得不將'class Term leucos