ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ# IRB [![Gem Version](https://badge.fury.io/rb/irb.svg)](https://badge.fury.io/rb/irb) [![build](https://github.com/ruby/irb/actions/workflows/test.yml/badge.svg)](https://github.com/ruby/irb/actions/workflows/test.yml) IRB stands for "interactive Ruby" and is a tool to interactively execute Ruby expressions read from the standard input. The `irb` command from your shell will start the interpreter. ## Installation > **Note** > > IRB is a default gem of Ruby so you shouldn't need to install it separately. > > But if you're using Ruby 2.6 or later and want to upgrade/install a specific version of IRB, please follow these steps. To install it with `bundler`, add this line to your application's Gemfile: ```ruby gem 'irb' ``` And then execute: ```shell $ bundle ``` Or install it directly with: ```shell $ gem install irb ``` ## Usage ### The `irb` Executable You can start a fresh IRB session by typing `irb` in your terminal. In the session, you can evaluate Ruby expressions or even prototype a small Ruby script. An input is executed when it is syntactically complete. ```shell $ irb irb(main):001:0> 1 + 2 => 3 irb(main):002:1* class Foo irb(main):003:2* def foo irb(main):004:2* puts 1 irb(main):005:1* end irb(main):006:0> end => :foo irb(main):007:0> Foo.new.foo 1 => nil ``` ### The `binding.irb` Breakpoint If you use Ruby 2.5 or later versions, you can also use `binding.irb` in your program as breakpoints. Once a `binding.irb` is evaluated, a new IRB session will be started with the surrounding context: ```shell $ ruby test.rb From: test.rb @ line 2 : 1: def greet(word) => 2: binding.irb 3: puts "Hello #{word}" 4: end 5: 6: greet("World") irb(main):001:0> word => "World" irb(main):002:0> exit Hello World ``` ## Commands The following commands are available on IRB. You can get the same output from the `show_cmds` command. ``` IRB cwws Show the current workspace. chws Change the current workspace to an object. workspaces Show workspaces. pushws Push an object to the workspace stack. popws Pop a workspace from the workspace stack. irb_load Load a Ruby file. irb_require Require a Ruby file. source Loads a given file in the current session. irb Start a child IRB. jobs List of current sessions. fg Switches to the session of the given number. kill Kills the session with the given number. irb_info Show information about IRB. show_cmds List all available commands and their description. Debugging debug Start the debugger of debug.gem. break Start the debugger of debug.gem and run its `break` command. catch Start the debugger of debug.gem and run its `catch` command. next Start the debugger of debug.gem and run its `next` command. delete Start the debugger of debug.gem and run its `delete` command. step Start the debugger of debug.gem and run its `step` command. continue Start the debugger of debug.gem and run its `continue` command. finish Start the debugger of debug.gem and run its `finish` command. backtrace Start the debugger of debug.gem and run its `backtrace` command. info Start the debugger of debug.gem and run its `info` command. Misc edit Open a file with the editor command defined with `ENV["EDITOR"]`. measure `measure` enables the mode to measure processing time. `measure :off` disables it. Context show_doc Enter the mode to look up RI documents. ls Show methods, constants, and variables. `-g [query]` or `-G [query]` allows you to filter out the output. show_source Show the source code of a given method or constant. whereami Show the source code around binding.irb again. ``` ## Configuration ### Environment Variables - `NO_COLOR`: Assigning a value to it disables IRB's colorization. - `IRB_USE_AUTOCOMPLETE`: Setting it to `false` disables IRB's autocompletion. - `EDITOR`: Its value would be used to open files by the `edit` command. - `IRBRC`: The file specified would be evaluated as IRB's rc-file. ## Documentation https://docs.ruby-lang.org/en/master/IRB.html ## Development After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org). ## Contributing Bug reports and pull requests are welcome on GitHub at https://github.com/ruby/irb. ## Releasing ``` rake release gh release create vX.Y.Z --generate-notes ``` ## License The gem is available as open source under the terms of the [2-Clause BSD License](https://opensource.org/licenses/BSD-2-Clause).