-
-
Save inoperable/6ada144f0d18703b70e015d7c40b4674 to your computer and use it in GitHub Desktop.
Revisions
-
justin808 revised this gist
May 15, 2017 . 1 changed file with 68 additions and 21 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,18 +1,28 @@ # Using these pry gems # gem "pry" # gem "pry-rails" # gem "pry-byebug" # gem "pry-stack_explorer" # gem "pry-doc" # gem "pry-state" # gem "pry-toys" # gem "pry-rescue" # Fix for Zeus: see https://github.com/burke/zeus/issues/466#issuecomment-60242431 if defined?(::Rails) && Rails.env if Rails::VERSION::MAJOR == 3 verbose, $VERBOSE = $VERBOSE, nil if defined?(Rails::Console) Rails::Console::IRB = ::Pry unless Rails::Console::IRB == ::Pry end $VERBOSE = verbose unless defined? ::Pry::ExtendCommandBundle ::Pry::ExtendCommandBundle = Module.new end end if defined?(Rails) && Rails::VERSION::MAJOR == 4 && Rails.application unless Rails.application.config.console == ::Pry Rails.application.config.console = ::Pry end @@ -29,6 +39,8 @@ if defined?(::Rails) && Rails.env end end # #### END FIX FOR ZEUS Pry::Commands.block_command "noconflict", "Rename step to sstep and next to nnext" do Pry::Commands.rename_command("nnext", "next") Pry::Commands.rename_command("bbreak", "break") @@ -52,7 +64,7 @@ end ## Benchmarking # Inspired by <http://stackoverflow.com/questions/123494/whats-your-favourite-irb-trick/123834#123834>. def do_time(repetitions = 100, &block) require 'benchmark' Benchmark.bm{|b| b.report{repetitions.times(&block)}} end @@ -67,18 +79,49 @@ Pry.config.commands.alias_command "hG", "hist -G", desc: "Commands matching expr Pry.config.commands.alias_command "hr", "hist -r", desc: "hist -r <command number> to run a command" if defined?(PryByebug) def pry_debug Pry.commands.alias_command 't', 'show-stack' Pry.commands.alias_command 's', 'step' Pry.commands.alias_command 'n', 'next' Pry.commands.alias_command 'c', 'continue' Pry.commands.alias_command 'f', 'finish' Pry.commands.alias_command 'u', 'up' Pry.commands.alias_command 'd', 'down' Pry.commands.alias_command 'b', 'break' Pry.commands.alias_command 'w', 'whereami' puts "Debugging Shortcuts" puts 'w : whereami' puts 's : step' puts 'n : next' puts 'c : continue' puts 'f : finish' puts 'Stack movement' puts 't : show-stack' puts 'ff : frame' puts 'u : up' puts 'd : down' puts 'b : break' "" end # Longer shortcuts Pry.commands.alias_command 'ff', 'frame' Pry.commands.alias_command 'sss', 'show-stack' Pry.commands.alias_command 'ss', 'step' Pry.commands.alias_command 'nn', 'next' Pry.commands.alias_command 'cc', 'continue' Pry.commands.alias_command 'fin', 'finish' Pry.commands.alias_command 'uu', 'up' Pry.commands.alias_command 'dd', 'down' Pry.commands.alias_command 'bb', 'break' Pry.commands.alias_command 'ww', 'whereami' end if defined?(::Rails) && Rails.env && Rails.env.test? && ENV["PRY_LONG"].blank? pry_debug end begin require 'awesome_print' @@ -102,9 +145,9 @@ my_hook = Pry::Hooks.new.add_hook(:before_session, :add_dirs_to_load_path) do end # Hit Enter to repeat last command Pry::Commands.command /^$/, "repeat last command" do _pry_.run_command Pry.history.to_a.last end my_hook.exec_hook(:before_session) @@ -118,7 +161,7 @@ def more_help puts "hG : hist -G Commands matching expression ever used" puts "hr : hist -r hist -r <command number> to run a command" puts puts "Samples variables" puts "a_array : [1, 2, 3, 4, 5, 6]" puts "a_hash : { hello: \"world\", free: \"of charge\" }" @@ -142,9 +185,13 @@ def more_help puts 'fin : finish' puts 'uu : up' puts 'dd : down' puts 'bb : break' puts 'ww : whereami' puts 'ff : frame' puts 'sss : show-stack' puts '$ : show whole method of context' puts puts "Run 'pry_debug' to display shorter debug shortcuts" "" end puts "Run 'more_help' to see tips" -
justin808 revised this gist
Oct 17, 2015 . 1 changed file with 0 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -58,8 +58,6 @@ def time(repetitions = 100, &block) end Pry.config.color = true Pry.config.prompt = Pry::NAV_PROMPT -
justin808 revised this gist
Oct 3, 2015 . No changes.There are no files selected for viewing
-
justin808 revised this gist
Oct 3, 2015 . 1 changed file with 108 additions and 10 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,3 +1,44 @@ # See https://github.com/burke/zeus/issues/466#issuecomment-60242431 if defined?(::Rails) && Rails.env if Rails::VERSION::MAJOR == 3 verbose, $VERBOSE = $VERBOSE, nil if defined?(Rails::Console) Rails::Console::IRB = ::Pry unless Rails::Console::IRB == ::Pry end $VERBOSE = verbose unless defined? ::Pry::ExtendCommandBundle ::Pry::ExtendCommandBundle = Module.new end end if defined?(Rails) && Rails::VERSION::MAJOR == 4 unless Rails.application.config.console == ::Pry Rails.application.config.console = ::Pry end end if ((Rails::VERSION::MAJOR == 3 && Rails::VERSION::MINOR >= 2) || Rails::VERSION::MAJOR == 4) unless defined? ::Rails::ConsoleMethods require 'rails/console/app' require 'rails/console/helpers' TOPLEVEL_BINDING.eval('self').extend ::Rails::ConsoleMethods end end end Pry::Commands.block_command "noconflict", "Rename step to sstep and next to nnext" do Pry::Commands.rename_command("nnext", "next") Pry::Commands.rename_command("bbreak", "break") end Pry::Commands.block_command "unnoconflict", "Revert to normal next and break" do Pry::Commands.rename_command("next", "nnext") Pry::Commands.rename_command("break", "bbreak") end ## Useful Collections def a_array @@ -8,6 +49,15 @@ def a_hash {hello: "world", free: "of charge"} end ## Benchmarking # Inspired by <http://stackoverflow.com/questions/123494/whats-your-favourite-irb-trick/123834#123834>. def time(repetitions = 100, &block) require 'benchmark' Benchmark.bm{|b| b.report{repetitions.times(&block)}} end # Pry.config.pager = true # Pry.config.editor = "emacs" Pry.config.color = true @@ -18,6 +68,20 @@ Pry.config.commands.alias_command "hg", "hist -T 20 -G", desc: "Up to 20 command Pry.config.commands.alias_command "hG", "hist -G", desc: "Commands matching expression ever used" Pry.config.commands.alias_command "hr", "hist -r", desc: "hist -r <command number> to run a command" if defined?(PryByebug) Pry.commands.alias_command 'ss', 'step' Pry.commands.alias_command 'nn', 'next' Pry.commands.alias_command 'cc', 'continue' Pry.commands.alias_command 'fin', 'finish' Pry.commands.alias_command 'uu', 'up' Pry.commands.alias_command 'dd', 'down' Pry.commands.alias_command 'ff', 'frame' Pry.commands.alias_command 'bb', 'break' Pry.commands.alias_command 'ww', 'whereami' end begin require 'awesome_print' # Pry.config.print = proc { |output, value| output.puts value.ai } @@ -30,7 +94,7 @@ my_hook = Pry::Hooks.new.add_hook(:before_session, :add_dirs_to_load_path) do # adds the directories /spec and /test directories to the path if they exist and not already included dir = `pwd`.chomp dirs_added = [] %w(spec test presenters lib).map{ |d| "#{dir}/#{d}" }.each do |p| if File.exist?(p) && !$:.include?(p) $: << p dirs_added << p @@ -39,16 +103,50 @@ my_hook = Pry::Hooks.new.add_hook(:before_session, :add_dirs_to_load_path) do puts "Added #{ dirs_added.join(", ") } to load path in ~/.pryrc." if dirs_added.present? end # Hit Enter to repeat last command # Pry::Commands.command /^$/, "repeat last command" do # _pry_.run_command Pry.history.to_a.last # end my_hook.exec_hook(:before_session) puts "Loaded ~/.pryrc" puts def more_help puts "Helpful shortcuts:" puts "hh : hist -T 20 Last 20 commands" puts "hg : hist -T 20 -G Up to 20 commands matching expression" puts "hG : hist -G Commands matching expression ever used" puts "hr : hist -r hist -r <command number> to run a command" puts puts "Samples variables" puts "a_array : [1, 2, 3, 4, 5, 6]" puts "a_hash : { hello: \"world\", free: \"of charge\" }" puts puts "helper : Access Rails helpers" puts "app : Access url_helpers" puts puts "require \"rails_helper\" : To include Factory Girl Syntax" puts "include FactoryGirl::Syntax::Methods : To include Factory Girl Syntax" puts puts "or if you defined one..." puts "require \"pry_helper\"" puts puts "Sidekiq::Queue.new.clear : To clear sidekiq" puts "Sidekiq.redis { |r| puts r.flushall } : Another clear of sidekiq" puts puts "Debugging Shortcuts" puts 'ss : step' puts 'nn : next' puts 'cc : continue' puts 'fin : finish' puts 'uu : up' puts 'dd : down' puts 'ff : frame' puts 'bb : break' puts 'ww : whereami' "" end puts "Run 'more_help' to see tips" -
justin808 revised this gist
Aug 19, 2014 . 1 changed file with 0 additions and 9 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -8,15 +8,6 @@ def a_hash {hello: "world", free: "of charge"} end # Pry.config.pager = true # Pry.config.editor = "emacs" Pry.config.color = true -
justin808 revised this gist
Aug 19, 2014 . 1 changed file with 27 additions and 7 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,5 @@ ## Useful Collections def a_array (1..6).to_a end @@ -7,6 +8,17 @@ def a_hash {hello: "world", free: "of charge"} end ## Benchmarking # Inspired by <http://stackoverflow.com/questions/123494/whats-your-favourite-irb-trick/123834#123834>. def time(repetitions = 100, &block) require 'benchmark' Benchmark.bm{|b| b.report{repetitions.times(&block)}} end # Pry.config.pager = true # Pry.config.editor = "emacs" Pry.config.color = true Pry.config.prompt = Pry::NAV_PROMPT @@ -24,20 +36,28 @@ rescue LoadError => err end my_hook = Pry::Hooks.new.add_hook(:before_session, :add_dirs_to_load_path) do # adds the directories /spec and /test directories to the path if they exist and not already included dir = `pwd`.chomp dirs_added = [] %w(spec test).map{ |d| "#{dir}/#{d}" }.each do |p| if File.exist?(p) && !$:.include?(p) $: << p dirs_added << p end end puts "Added #{ dirs_added.join(", ") } to load path in ~/.pryrc." if dirs_added.present? end my_hook.exec_hook(:before_session) puts "Loaded ~/.pryrc" puts puts "Helpful shortcuts:" puts "h : hist -T 20 Last 20 commands" puts "hg : hist -T 20 -G Up to 20 commands matching expression" puts "hG : hist -G Commands matching expression ever used" puts "hr : hist -r hist -r <command number> to run a command" puts puts "Samples variables" puts "a_array : [1, 2, 3, 4, 5, 6]" puts "a_hash : { hello: \"world\", free: \"of charge\" }" -
justin808 created this gist
Aug 18, 2014 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,43 @@ ## Useful Collections def a_array (1..6).to_a end def a_hash {hello: "world", free: "of charge"} end Pry.config.color = true Pry.config.prompt = Pry::NAV_PROMPT Pry.config.commands.alias_command "h", "hist -T 20", desc: "Last 20 commands" Pry.config.commands.alias_command "hg", "hist -T 20 -G", desc: "Up to 20 commands matching expression" Pry.config.commands.alias_command "hG", "hist -G", desc: "Commands matching expression ever used" Pry.config.commands.alias_command "hr", "hist -r", desc: "hist -r <command number> to run a command" begin require 'awesome_print' # Pry.config.print = proc { |output, value| output.puts value.ai } AwesomePrint.pry! rescue LoadError => err puts "no awesome_print :(" end my_hook = Pry::Hooks.new.add_hook(:before_session, :add_dirs_to_load_path) do # adds the directories /lib and /spec and /test directories to the path if they exist puts "Added lib spec test dirs to load path" dir = `pwd`.chomp %w(lib spec test).map{ |d| "#{dir}/#{d}" }.each { |p| $: << p unless !File.exist?(p) || $:.include?(p) } end my_hook.exec_hook(:before_session) puts "Loaded ~/.pryrc" puts "Helpful shortcuts:" puts "h : hist -T 20 Last 20 commands" puts "hg : hist -T 20 -G Up to 20 commands matching expression" puts "hG : hist -G Commands matching expression ever used" puts "hr : hist -r hist -r <command number> to run a command" puts "Samples variables" puts "a_array: [1, 2, 3, 4, 5, 6]" puts "a_hash: { hello: \"world\", free: \"of charge\" }"