Although this is not a generic solution for handling display of all objects in all failure messages, you can customize a failure message for any one example, using the technique described in https://www.relishapp.com/rspec/rspec-expectations/docs/customized-message.
Combined with a customization of Ruby's standard prettyprint function to use a smaller line width and return its result as a string, gives you:
arr.should be_empty, "expected: empty array\ngot:\n#{PP.pp(arr,'',20)}"