Το Pry είναι μια ισχυρή κονσόλα εκτέλεσης και εναλλακτική λύση του IRB για τη Ruby.
Βασική πλοήγηση & Εναλλαγή περιβάλλοντος
# Αλλαγή πεδίου σε αντικείμενο ή κλάση (όπως η πλοήγηση φακέλων)
[1] pry(main)> cd Array
[2] pry(Array):1> cd- ..
[3] pry(main)> cd User.first
# Έλεγχος τρέχοντος βάθους ένθεσης
[4] pry(User):2> nesting
Ενδοσκόπηση κώδικα & τεκμηρίωσης
# Προβολή πηγαίου κώδικα μεθόδου στην κονσόλα
show-source Array#select
show-source User#full_name
# Προβολή τεκμηρίωσης YARD / RDoc για μέθοδο
show-doc Array#compact
# Αναζήτηση μεθόδων που ταιριάζουν με ερώτημα
find-method each
Έλεγχος μεταβλητών & μεθόδων (ls)
ls # Λίστα μεθόδων, τοπικών μεταβλητών και μεταβλητών στιγμιοτύπου
ls -m # Λίστα μεθόδων στιγμιοτύπου στο τρέχον αντικείμενο
ls -M # Λίστα μεθόδων κλάσης στην τρέχουσα κλάση
ls -l # Λίστα τοπικών μεταβλητών
ls -i # Λίστα μεταβλητών στιγμιοτύπου (@vars)
ls -c # Λίστα σταθερών στο πεδίο
ls -G regex # Φιλτράρισμα αποτελεσμάτων με regex
Εντοπισμός σφαλμάτων εντός συνεδρίας
# Είσοδος στο Pry από οποιοδήποτε σημείο στον κώδικα Ruby
require 'pry'
binding.pry
wtf?: Εκτύπωση του ίχνους στοίβας (backtrace) της πιο πρόσφατης εξαίρεσης.hist: Εμφάνιση ιστορικού εισόδου.edit Object#method: Άνοιγμα ορισμού μεθόδου στον προτιμώμενο επεξεργαστή$EDITOR.
Ενσωμάτωση με το Rails (pry-rails)
Προσθήκη του pry-rails στο Gemfile:
group :development, :test do
gem 'pry-rails'
end
Στην rails console:
show-models # Εκτύπωση σχημάτων βάσης και σχέσεων
show-routes # Εκτύπωση πίνακα δρομολόγησης
show-middleware # Εκτύπωση στοίβας Rack middleware