I submit patch that implements the 'breakindent' feature. It is on vim todo
list, since the moment I tried a few years ago (see e.g.
http://marc.info/?l=vim-dev&m=109921292009721&w=1). Picture says what it's
about (showbreak is aligned with first non-whitespace):
I tried to address all Bram's comments he had to the original patch, like
coding style, functionality in diff mode, selections etc. I had to change a
few prototypes to pass line number.
There is one bug and some (easily fixable) limitations:
* BUG: there is some weird interaction with quickfix window, where very
rarely there is the "ml_get(): invalid line number" error. I think it is
caused by passing wrong line number thgouth the *chartabsize* & family
routines (line in the main buffer interpreted as line in the quickfix window
or something like that), but I am not sure.
* No test case. This will be added once there is enough interest from
developers (there _is_ documentation).
* The bri_min variable is not exposed to userspace yet, is set to 20 in the
code. If the rest is considered ready for inclusion, I will add a
user-serrable variable for that.
The patch is against current svn (vim7, rev. 288). Any comments are welcome.