Christian Brabandt wrote:
> On Mo, 06 Mär 2017, Vitor Antunes wrote:
>
> > Well, at least the original issue would be fixed. When do you think
> > you will have your change merged?
>
> I am attaching an updated patch including some tests. Don't know when
> Bram comes to including this.
Thanks for looking into this.
> /*
> + * Return the number of whitespace bytes in front of a given line
> + */
> + int
> +get_whitespace_line_start(linenr_T lnum)
> +{
> + char_u *l1, *l2;
> +
> + l1 = l2 = ml_get(lnum);
> + while (vim_iswhite(*l2))
> + ++l2;
This can use skipwhite(). There are several other places where this
computation is done, e.g. in misc1.c, open_line():
p = ml_get_curline();
ai_col = (colnr_T)(skipwhite(p) - p);
Similar one a bit further down.
Would be good to put this function close to skipwhite() to make it
easeri to find.
> + /* if indent kicked in, the firstline might have changed
> + * but only do that, if the indent actually increased */
> + ind_post = get_whitespace_line_start(curwin->w_cursor.lnum);
> + if (curbuf->b_op_start.col > ind_pre && ind_post > ind_pre)
> + {
> + bd.textcol += ind_post - ind_pre;
> + bd.start_vcol += ind_post - ind_pre;
> + }
Why only for when the indent increases?
--
>From "know your smileys":
:'-D Laughing so much that they're crying
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.