【问题标题】:How to increase the number of lines around binding.pry?如何增加 binding.pry 周围的行数?
【发布时间】:2020-08-03 20:34:58
【问题描述】:

使用 gem pry-byebug,当我在某处添加 binding.pry 时,它只显示我所在的行周围的 5 行:

    157:       max_bytes: limits_config.max_read_bytes_per_parser,
    158:       max_reads: limits_config.max_reads_per_parser,
    159:       max_seeks: limits_config.max_seeks_per_parser
    160:     )
    161:
 => 162:     results = parsers.lazy.map do |parser|
    163:       # Reset all the read limits, per parser
    164:       limited_io.reset_limits!
    165:       read_limiter_under_cache.reset_limits!
    166:
    167:       # We need to rewind for each parser, anew

有没有办法增加这个数字以显示更多的代码行?

【问题讨论】:

    标签: ruby debugging pry byebug


    【解决方案1】:

    whereami 与指定要返回的行数的整数参数一起使用。

    例如,给定文件foo.rb

    # foo.rb
    
    require 'pry'
    
    def foo; end
    
    def bar; end
    
    def foobar
      # do something
      binding.pry
      # do something else
    end
    
    def baz; end
    
    def foobarbaz; end
    
    foobar
    

    使用ruby foo.rb 运行它:

    From: /Users/foo/foo.rb:11 Object#foobar:
    
         9: def foobar
        10:   # do something
     => 11:   binding.pry
        12:   # do something else
        13: end
    
    ⇒ 
    

    并要求查看 +/- 10 行 whereami 10:

    ⇒ whereami 10
    
    From: /Users/foo/foo.rb:11 Object#foobar:
    
         1: # foo.rb
         2:
         3: require 'pry'
         4:
         5: def foo; end
         6:
         7: def bar; end
         8:
         9: def foobar
        10:   # do something
     => 11:   binding.pry
        12:   # do something else
        13: end
        14:
        15: def baz; end
        16:
        17: def foobarbaz; end
        18:
        19: foobar
    
    ⇒ 
    

    或者只是带有whereami 1的两行:

    ⇒ whereami 1
    
    From: /Users/foo/foo.rb:11 Object#foobar:
    
        10:   # do something
     => 11:   binding.pry
        12:   # do something else
    
    ⇒ 
    

    【讨论】:

      猜你喜欢
      • 2023-01-03
      • 2022-09-23
      • 1970-01-01
      • 2023-02-22
      • 1970-01-01
      • 2016-10-19
      • 1970-01-01
      • 2021-02-05
      • 2018-02-07
      相关资源
      最近更新 更多