Ruby の 定番対話ツール pry 徹底攻略 #pry #ruby

# Ruby の 定番対話ツール pry 徹底攻略 #pry #ruby
## <i class="fa fa-cubes" style="font-size:1em;"></i> 概要
:baby_chick: irb の進化版対話環境 :chicken: pry について

## <i class="fa fa-question-circle" style="font-size:1em;"></i> pry って何?
pry は Ruby を対話的に入力・実行するためのツールです。
Ruby には標準添付で irb がありますが、 pry は irb に比べて様々な優れた機能を備えています。
これらの機能を後程順に紹介します。

## <i class="fa fa-question-circle" style="font-size:1em;"></i> 公式資料はどこ？
<i class="fa fa-github-square" style="font-size:1em;"></i> [pry GitHub](https://github.com/pry/pry)
<i class="fa fa-github-square" style="font-size:1em;"></i> [pry wiki](https://github.com/pry/pry/wiki)

## <i class="fa fa-cloud-download" style="font-size:1em;"></i> インストール

~~~bash
gem install pry
# Ruby の Core メソッドのドキュメントを追加するには pry-doc もインストールします
gem install pry-doc
~~~

## :books: Features
各 Feature はカテゴリごとに別記事にて管理します。
基本的に pry の公式 Wiki に沿った内容ですが、サンプルや説明などは私独自のものです。

* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-edit" style="font-size:1em;"></i> [Normal Input](http://qiita.com/tbpgr/items/a1bbe43b772e35d93987)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-compass" style="font-size:1.5em;"></i> [Navigating around Pry](http://qiita.com/tbpgr/items/bcc07845bc994b7b204e)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> :shell: [Accessing the system shell](http://qiita.com/tbpgr/items/0ed31ce354adb2a14bff)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-eye" style="font-size:1em;"></i><i class="fa fa-code" style="font-size:1em;"></i> [Viewing source code](http://qiita.com/tbpgr/items/432b7e9c1edc44301b89)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-eye" style="font-size:1em;"></i>:book: [Viewing documentation](http://qiita.com/tbpgr/items/0aa0742909d586eef9e3)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> :star::station:[The special locals](http://qiita.com/tbpgr/items/5204c07034854ed0b7b8)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-history" style="font-size:1em;"></i> [Managing history](http://qiita.com/tbpgr/items/077681dff1aac0bfd708)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-gears" style="font-size:1em;"></i> [The .pryrc file](http://qiita.com/tbpgr/items/28a438592585f592b6eb)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> :running::coffee::flushed: [Runtime invocation](http://qiita.com/tbpgr/items/7171ab39bef218fe111e)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> :soon::closed_book: [The live help system](http://qiita.com/tbpgr/items/4d5737f5d0190fcc2b6f)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-edit" style="font-size:1em;"></i> [Editor integration](http://qiita.com/tbpgr/items/ad5f9b41c2c6f75fac2e)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> :sound::seat::wrench::car: [Customization and configuration](http://qiita.com/tbpgr/items/d3c9651ac9e35af8b377)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> :baby_chick::baby_chick::bird::baby_chick::baby_chick: [Exception handling](http://qiita.com/tbpgr/items/cc44d85cec7b46c26005)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-desktop" style="font-size:1em;"></i><i class="fa fa-terminal" style="font-size:1em;"></i> [The command system](http://qiita.com/tbpgr/items/b778d4dd00b72abe72f5)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-gears" style="font-size:1em;"></i><i class="fa fa-terminal" style="font-size:1em;"></i> [Creating custom commands](http://qiita.com/tbpgr/items/779d1f2999ec342bae66)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i> <i class="fa fa-puzzle-piece" style="font-size:1em;"></i> [Plugins](http://qiita.com/tbpgr/items/061ed2b86b6c48d39784)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i>  Using Pry with Rails
* <i class="fa fa-external-link-square" style="font-size:1em;"></i>  Using Pry in your browser with Rails
* <i class="fa fa-external-link-square" style="font-size:1em;"></i>  Remote sessions

## :memo: 補足
Using Pry with Rails, Using Pry in your browser with Rails, Remote sessions は記載予定なし

## :frog: 番外編
* <i class="fa fa-external-link-square" style="font-size:1em;"></i>  [攻略記事作成中に見つけたバグのプルリクエスト作成への道](http://qiita.com/tbpgr/items/696feaa3e45dbc4f8f3a)
* <i class="fa fa-external-link-square" style="font-size:1em;"></i>  [pry でクラス階層を Ascii Art で出力する pry-aa_ancestors を作成した](http://qiita.com/tbpgr/items/54dc4be55ecde4fe2ad7)