Subj
Улучшаем внешний вид информации в консоли.Flow
Installation
Добавляем вGemfile
эти строки:gem "pry-rails"
gem "awesome_print", :require => false
group :development, :test do
gem "pry-plus"
gem "hirb", :require => false
gem "hirb-unicode", :require => false
end
group :development do
gem "pry-remote"
end
Делаем bundle
.Лабаем
.pryrc
с таким содержимым:require "awesome_print"
AwesomePrint.pry!
begin
require "hirb"
require "hirb-unicode"
extend Hirb::Console
rescue LoadError => e
end
Что такое .pryrc
?
The .pryrc
file is analogous to the .irbrc
file for IRB.You can use the
.pryrc
file to customize Pry.When pry starts, it checks for a
.pryrc
file in your home directory(~/.pryrc
)and also for a per-project
.pryrc
in the current directory(./.pryrc
).Both files are used if they exist, with the file from your home directory being loaded first.
Создаём
config/initializers/pry.rb
с таким содержимым:## config/initializers/pry.rb
## encoding: utf-8
Pry.config.prompt_name = Rails.application.class.parent_name.underscore.dasherize
unless Rails.env.development?
old_prompt = Pry.config.prompt
if Rails.env.production?
env = "\001\e[0;31m\002#{Rails.env.upcase}\001\e[0m\002"
else
env = "\001\e[0;33m\002#{Rails.env.upcase}\001\e[0m\002"
end
Pry.config.prompt = [
proc { |*a| "#{env} #{old_prompt.first.call(*a)}" },
proc { |*a| "#{env} #{old_prompt.second.call(*a)}" }
]
end
Usage
Входим в консольrails c
.Как выглядит выдача в pure irb:
Подключаем
awesome_print
:Подключаем
hirb
:Подключаем
pry
:Можно использовать
table что-то
, например:Или: