See #10650 as well, for bugs in the precedence of formatters. With ipython/disp we want to register formatters for older version of pyspark where objects do not define _repr_*_, but so far the formatters are understood as "user defined", meaning that they take precedence over the _repr_*_ methods. It would be nice to have an extra way of registering formatter with lower precedence.
cc @rgbkrk