After parsing matplotlibrc, I browsed module where errorbars are defined (axes.py) and tried changing various variables without success. 

In bar() function (line 4628) there is "adjust_xlim = False" line which calls line 4768 if set True. So I set it True, to find it's buggy if x starts from 0 (most common start value). I didn't tried to copy this code block in errorbars because of that

I browsed then axis.py and then - transforms.py - total mess. Retreat.

Didn't even figured out why IPython inline mode pads left side x range in above example. Seems like IPython/core/pylabtools.py just calls "canvas.print_figure(pic-data)" and passes image in qt terminal, but I can't reproduce same range if not in inline mode.
Idea was to learn how IPython inline mode sets one part of this range correctly, then use it to make what I wanted

So, I guess wrapping some function that would calculate smart view range, like Tony replied, is the way to go
Thanks Tony