Mercurial > vim
changeset 15428:eae582bfb293 v8.1.0722
patch 8.1.0722: cannot build without the virtualedit feature
commit https://github.com/vim/vim/commit/977239ef52763b6e640ac632c53a57ee17e05eaa
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Jan 11 16:16:01 2019 +0100
patch 8.1.0722: cannot build without the virtualedit feature
Problem: Cannot build without the virtualedit feature.
Solution: Make getviscol2() always available.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 11 Jan 2019 16:30:05 +0100 |
parents | 44650785b4c2 |
children | 166f78185f87 |
files | src/misc2.c src/ops.c src/proto/misc2.pro src/version.c |
diffstat | 4 files changed, 33 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/src/misc2.c +++ b/src/misc2.c @@ -48,22 +48,6 @@ getviscol(void) } /* - * Get the screen position of character col with a coladd in the cursor line. - */ - int -getviscol2(colnr_T col, colnr_T coladd) -{ - colnr_T x; - pos_T pos; - - pos.lnum = curwin->w_cursor.lnum; - pos.col = col; - pos.coladd = coladd; - getvvcol(curwin, &pos, &x, NULL, NULL); - return (int)x; -} - -/* * Go to column "wcol", and add/insert white space as necessary to get the * cursor in that column. * The caller must have saved the cursor line for undo! @@ -86,6 +70,24 @@ coladvance_force(colnr_T wcol) #endif /* + * Get the screen position of character col with a coladd in the cursor line. + */ + int +getviscol2(colnr_T col, colnr_T coladd) +{ + colnr_T x; + pos_T pos; + + pos.lnum = curwin->w_cursor.lnum; + pos.col = col; +#ifdef FEAT_VIRTUALEDIT + pos.coladd = coladd; +#endif + getvvcol(curwin, &pos, &x, NULL, NULL); + return (int)x; +} + +/* * Try to advance the Cursor to the specified screen column. * If virtual editing: fine tune the cursor position. * Note that all virtual positions off the end of a line should share
--- a/src/ops.c +++ b/src/ops.c @@ -2754,7 +2754,12 @@ op_insert(oparg_T *oap, long count1) ) { int t = getviscol2(curbuf->b_op_start_orig.col, - curbuf->b_op_start_orig.coladd); +#ifdef FEAT_VIRTUALEDIT + curbuf->b_op_start_orig.coladd +#else + 0 +#endif + ); oap->start.col = curbuf->b_op_start_orig.col; pre_textlen -= t - oap->start_vcol; oap->start_vcol = t; @@ -2771,7 +2776,12 @@ op_insert(oparg_T *oap, long count1) ) { int t = getviscol2(curbuf->b_op_start_orig.col, - curbuf->b_op_start_orig.coladd); +#ifdef FEAT_VIRTUALEDIT + curbuf->b_op_start_orig.coladd +#else + 0 +#endif + ); oap->start.col = curbuf->b_op_start_orig.col; /* reset pre_textlen to the value of OP_INSERT */ pre_textlen += bd.textlen;
--- a/src/proto/misc2.pro +++ b/src/proto/misc2.pro @@ -1,8 +1,8 @@ /* misc2.c */ int virtual_active(void); int getviscol(void); +int coladvance_force(colnr_T wcol); int getviscol2(colnr_T col, colnr_T coladd); -int coladvance_force(colnr_T wcol); int coladvance(colnr_T wcol); int getvpos(pos_T *pos, colnr_T wcol); int inc_cursor(void);