comparison src/mark.c @ 15636:6f1c7e9a6393 v8.1.0826

patch 8.1.0826: too many #ifdefs commit https://github.com/vim/vim/commit/29ddebef4038d2d2b3bc9d8d3b0109f4046d6fbf Author: Bram Moolenaar <Bram@vim.org> Date: Sat Jan 26 17:28:26 2019 +0100 patch 8.1.0826: too many #ifdefs Problem: Too many #ifdefs. Solution: Graduate FEAT_VIRTUALEDIT. Adds about 10Kbyte to the code.
author Bram Moolenaar <Bram@vim.org>
date Sat, 26 Jan 2019 17:30:15 +0100
parents dd725a8ab112
children dd4e6f077874
comparison
equal deleted inserted replaced
15635:c51d2a06f5f9 15636:6f1c7e9a6393
412 posp = &pos_copy; 412 posp = &pos_copy;
413 if (c == '<') 413 if (c == '<')
414 pos_copy.col = 0; 414 pos_copy.col = 0;
415 else 415 else
416 pos_copy.col = MAXCOL; 416 pos_copy.col = MAXCOL;
417 #ifdef FEAT_VIRTUALEDIT
418 pos_copy.coladd = 0; 417 pos_copy.coladd = 0;
419 #endif
420 } 418 }
421 } 419 }
422 else if (ASCII_ISLOWER(c)) /* normal named mark */ 420 else if (ASCII_ISLOWER(c)) /* normal named mark */
423 { 421 {
424 posp = &(buf->b_namedm[c - 'a']); 422 posp = &(buf->b_namedm[c - 'a']);
649 buf->b_namedm[i].lnum = 0; 647 buf->b_namedm[i].lnum = 0;
650 buf->b_op_start.lnum = 0; /* start/end op mark cleared */ 648 buf->b_op_start.lnum = 0; /* start/end op mark cleared */
651 buf->b_op_end.lnum = 0; 649 buf->b_op_end.lnum = 0;
652 buf->b_last_cursor.lnum = 1; /* '" mark cleared */ 650 buf->b_last_cursor.lnum = 1; /* '" mark cleared */
653 buf->b_last_cursor.col = 0; 651 buf->b_last_cursor.col = 0;
654 #ifdef FEAT_VIRTUALEDIT
655 buf->b_last_cursor.coladd = 0; 652 buf->b_last_cursor.coladd = 0;
656 #endif
657 buf->b_last_insert.lnum = 0; /* '^ mark cleared */ 653 buf->b_last_insert.lnum = 0; /* '^ mark cleared */
658 buf->b_last_change.lnum = 0; /* '. mark cleared */ 654 buf->b_last_change.lnum = 0; /* '. mark cleared */
659 #ifdef FEAT_JUMPLIST 655 #ifdef FEAT_JUMPLIST
660 buf->b_changelistlen = 0; 656 buf->b_changelistlen = 0;
661 #endif 657 #endif
1050 int i; 1046 int i;
1051 int fnum = curbuf->b_fnum; 1047 int fnum = curbuf->b_fnum;
1052 linenr_T *lp; 1048 linenr_T *lp;
1053 win_T *win; 1049 win_T *win;
1054 tabpage_T *tab; 1050 tabpage_T *tab;
1055 static pos_T initpos = INIT_POS_T(1, 0, 0); 1051 static pos_T initpos = {1, 0, 0};
1056 1052
1057 if (line2 < line1 && amount_after == 0L) /* nothing to do */ 1053 if (line2 < line1 && amount_after == 0L) /* nothing to do */
1058 return; 1054 return;
1059 1055
1060 if (!cmdmod.lockmarks) 1056 if (!cmdmod.lockmarks)
1449 { 1445 {
1450 str = skipwhite(str + 1); 1446 str = skipwhite(str + 1);
1451 fm->fmark.mark.lnum = getdigits(&str); 1447 fm->fmark.mark.lnum = getdigits(&str);
1452 str = skipwhite(str); 1448 str = skipwhite(str);
1453 fm->fmark.mark.col = getdigits(&str); 1449 fm->fmark.mark.col = getdigits(&str);
1454 #ifdef FEAT_VIRTUALEDIT
1455 fm->fmark.mark.coladd = 0; 1450 fm->fmark.mark.coladd = 0;
1456 #endif
1457 fm->fmark.fnum = 0; 1451 fm->fmark.fnum = 0;
1458 str = skipwhite(str); 1452 str = skipwhite(str);
1459 vim_free(fm->fname); 1453 vim_free(fm->fname);
1460 fm->fname = viminfo_readstring(virp, (int)(str - virp->vir_line), 1454 fm->fname = viminfo_readstring(virp, (int)(str - virp->vir_line),
1461 FALSE); 1455 FALSE);
1639 if (vi_namedfm != NULL || fm->fmark.mark.lnum == 0 1633 if (vi_namedfm != NULL || fm->fmark.mark.lnum == 0
1640 || fm->time_set < timestamp || force) 1634 || fm->time_set < timestamp || force)
1641 { 1635 {
1642 fm->fmark.mark.lnum = lnum; 1636 fm->fmark.mark.lnum = lnum;
1643 fm->fmark.mark.col = col; 1637 fm->fmark.mark.col = col;
1644 #ifdef FEAT_VIRTUALEDIT
1645 fm->fmark.mark.coladd = 0; 1638 fm->fmark.mark.coladd = 0;
1646 #endif
1647 fm->fmark.fnum = 0; 1639 fm->fmark.fnum = 0;
1648 vim_free(fm->fname); 1640 vim_free(fm->fname);
1649 if (vp[4].bv_allocated) 1641 if (vp[4].bv_allocated)
1650 { 1642 {
1651 fm->fname = vp[4].bv_string; 1643 fm->fname = vp[4].bv_string;
2144 copy_marks_out = TRUE; 2136 copy_marks_out = TRUE;
2145 } 2137 }
2146 } 2138 }
2147 vim_free(str); 2139 vim_free(str);
2148 2140
2149 #ifdef FEAT_VIRTUALEDIT
2150 pos.coladd = 0; 2141 pos.coladd = 0;
2151 #endif
2152 while (!(eof = viminfo_readline(virp)) && line[0] == TAB) 2142 while (!(eof = viminfo_readline(virp)) && line[0] == TAB)
2153 { 2143 {
2154 if (load_marks) 2144 if (load_marks)
2155 { 2145 {
2156 if (line[1] != NUL) 2146 if (line[1] != NUL)