Displaysize limit not respected for multi-dimensional arrays

Displaying a multi-dimensional array will often create a huge amount of stdout, clearing scroll back history and causing the session to hang (especially when over ssh). For a matrix, you can limit the size of the display with something like Base.active_repl.options.iocontext[:displaysize] = (20, 80). However, when you display a 3D array, it prints several slices (each one of size 20x80). For an array with many dimensions, this can produce an unbounded amount of text.

Is there any way to set a hard limit on the amount of output that a single command can produce? Or, would it make sense to define display for arrays in a way that respects :displaysize?