Issue #12913 has been updated by Yusuke Endoh.


Akr-san, thank you for your reply.

I agree that it is a better default than the fixed 79.

However, I'd still like to have `PP.default_maxwidth=` too.
My motivation is to show abstract syntax tree (in [my article](http://ascii.jp/elem/000/001/255/1255878/)).
In such a case, I think that "break as far as possible" would be useful.

Thank you for your consideration,

----------------------------------------
Feature #12913: A way to configure the default maximum width of pp
https://bugs.ruby-lang.org/issues/12913#change-61413

* Author: Yusuke Endoh
* Status: Open
* Priority: Normal
* Assignee: Akira Tanaka
----------------------------------------
How about having an easy way to configure the maximum width of a line of `pp` output?
Currently, `pp` accepts the maximum width as an optional argument:

    pp(big_array, $>, 120)

However, this is obviously too long for a useful debugging-purpose method like `pp`.  Even worse, we must add the fragment "`, $>, 120`" to all calls to `pp`.  I don't feel this is reasonable.

The patch attached provides `PP.default_maxwidth=` and `PP.default_maxwidth`, which can be used to configure the default setting of the maxwidth.

    PP.default_maxwidth = 1
    pp([1, 2, 3])
    #=> [1,
    #    2,
    #    3]

Akr-san, what do you think?

---Files--------------------------------
pp-default-maxwidth.patch (1.05 KB)


-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>