👋 IRB is on a mission to match feature parity with Pry. This document is here to help us track the similarities and differences between the two.
Feel free to chip in and update this table - we appreciate your help!
Feature | Pry | IRB | Note |
---|---|---|---|
Supported Rubies | >= 2.0 |
>= 2.7 |
|
Source code browsing | show-source |
show_source |
IRB's show_source can't display C source. See #664 |
Document browsing | ri |
show_doc |
|
Live help system | help or command_name --help |
help |
IRB doesn't support detailed descriptions for individual commands yet |
Open methods in editors | edit |
edit |
|
Syntax highlighting | Yes | Yes | |
Command shell integration | Yes | No | Currently, there's no plan to support such features in IRB |
Navigation | - cd object to enter object - cd .. to leave the current object - nesting to list nesting levels |
- pushws object - popws - workspaces - cd object /cd .. (since 1.14.0) |
We plan to refine IRB's commands in the future |
Runtime invocation | binding.pry |
binding.irb |
|
Command system | Yes | No | Planned in #513 and #588 |
Input history | Comprehensive support | Supports retrieving previous input and the history command |
The history command doesn't support as many flags yet, but contributions are welcome. |
Pager support | Command output and return value | Command output and return value | |
Debugger integration | With byebug through pry-byebug gem |
Supports irb:rdbg sessions |
|
Rails console | Through pry-rails gem |
Rails' default | Rails console with IRB doesn't have commands like show-routes or show-models |