To: vim_dev@googlegroups.com Subject: Patch 8.2.3795 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.2.3795 Problem: Too many #ifdefs. Solution: Graduate the jumplist feature. Files: runtime/doc/various.txt, runtime/doc/motion.txt, src/feature.h, src/buffer.c, src/change.c, src/evalfunc.c, src/ex_docmd.c, src/mark.c, src/normal.c, src/undo.c, src/version.c, src/viminfo.c, src/window.c, src/structs.h, src/testdir/test_changelist.vim, src/testdir/test_jumplist.vim, src/testdir/test_normal.vim *** ../vim-8.2.3794/runtime/doc/various.txt 2021-11-29 20:39:06.682101619 +0000 --- runtime/doc/various.txt 2021-12-13 13:00:12.934311166 +0000 *************** *** 391,397 **** T *+insert_expand* |insert_expand| Insert mode completion m *+ipv6* Support for IPv6 networking |channel| m *+job* starting and stopping jobs |job| ! S *+jumplist* |jumplist| B *+keymap* |'keymap'| N *+lambda* |lambda| and |closure| B *+langmap* |'langmap'| --- 391,397 ---- T *+insert_expand* |insert_expand| Insert mode completion m *+ipv6* Support for IPv6 networking |channel| m *+job* starting and stopping jobs |job| ! T *+jumplist* |jumplist|; Always enabled since 8.2.3795 B *+keymap* |'keymap'| N *+lambda* |lambda| and |closure| B *+langmap* |'langmap'| *** ../vim-8.2.3794/runtime/doc/motion.txt 2021-01-31 16:02:06.254490174 +0000 --- runtime/doc/motion.txt 2021-12-13 13:01:14.298084637 +0000 *************** *** 1030,1064 **** *CTRL-O* CTRL-O Go to [count] Older cursor position in jump list (not a motion command). - {not available without the |+jumplist| feature} or *CTRL-I* ** CTRL-I Go to [count] newer cursor position in jump list (not a motion command). ! {not available without the |+jumplist| feature} *:ju* *:jumps* :ju[mps] Print the jump list (not a motion command). - {not available without the |+jumplist| feature} *:cle* *:clearjumps* :cle[arjumps] Clear the jump list of the current window. - {not available without the |+jumplist| feature} *jumplist* Jumps are remembered in a jump list. With the CTRL-O and CTRL-I command you can go to cursor positions before older jumps, and back again. Thus you can move up and down the list. There is a separate jump list for each window. The maximum number of entries is fixed at 100. - {not available without the |+jumplist| feature} For example, after three jump commands you have this jump list: ! jump line col file/text ~ ! 3 1 0 some text ~ ! 2 70 0 another line ~ ! 1 1154 23 end. ~ ! > ~ The "file/text" column shows the file name, or the text at the jump if it is in the current file (an indent is removed and a long line is truncated to fit --- 1038,1073 ---- *CTRL-O* CTRL-O Go to [count] Older cursor position in jump list (not a motion command). or *CTRL-I* ** CTRL-I Go to [count] newer cursor position in jump list (not a motion command). ! ! NOTE: In the GUI and in a terminal supporting ! |modifyOtherKeys|, CTRL-I can be mapped separately ! from , on the condition that CTRL-I is ! mapped before , otherwise the mapping applies to ! both. *:ju* *:jumps* :ju[mps] Print the jump list (not a motion command). *:cle* *:clearjumps* :cle[arjumps] Clear the jump list of the current window. *jumplist* Jumps are remembered in a jump list. With the CTRL-O and CTRL-I command you can go to cursor positions before older jumps, and back again. Thus you can move up and down the list. There is a separate jump list for each window. The maximum number of entries is fixed at 100. For example, after three jump commands you have this jump list: ! jump line col file/text ~ ! 3 1 0 some text ~ ! 2 70 0 another line ~ ! 1 1154 23 end. ~ ! > ~ The "file/text" column shows the file name, or the text at the jump if it is in the current file (an indent is removed and a long line is truncated to fit *************** *** 1127,1139 **** positions go to the oldest change. If there is no older change an error message is given. (not a motion command) - {not available without the |+jumplist| feature} *g,* *E663* g, Go to [count] newer cursor position in change list. Just like |g;| but in the opposite direction. (not a motion command) - {not available without the |+jumplist| feature} When using a count you jump as far back or forward as possible. Thus you can use "999g;" to go to the first change for which the position is still --- 1136,1146 ---- *** ../vim-8.2.3794/src/feature.h 2021-11-29 20:39:06.666101630 +0000 --- src/feature.h 2021-12-13 12:56:36.763200945 +0000 *************** *** 110,115 **** --- 110,116 ---- * +modify_fname modifiers for file name. E.g., "%:p:h". * +comments 'comments' option. * +title 'title' and 'icon' options + * +jumplist Jumplist, CTRL-O and CTRL-I commands. * * Obsolete: * +tag_old_static Old style static tags: "file:tag file ..". *************** *** 127,139 **** # define MAX_MSG_HIST_LEN 20 #endif - /* - * +jumplist Jumplist, CTRL-O and CTRL-I commands. - */ - #ifdef FEAT_SMALL - # define FEAT_JUMPLIST - #endif - #if defined(FEAT_SMALL) # define FEAT_CMDWIN #endif --- 128,133 ---- *** ../vim-8.2.3794/src/buffer.c 2021-12-05 22:19:22.832153464 +0000 --- src/buffer.c 2021-12-13 12:12:34.077685610 +0000 *************** *** 1416,1422 **** bp = NULL; // used when no loaded buffer found if (au_new_curbuf.br_buf != NULL && bufref_valid(&au_new_curbuf)) buf = au_new_curbuf.br_buf; - #ifdef FEAT_JUMPLIST else if (curwin->w_jumplistlen > 0) { int jumpidx; --- 1416,1421 ---- *************** *** 1452,1458 **** break; } } - #endif if (buf == NULL) // No previous buffer, Try 2'nd approach { --- 1451,1456 ---- *** ../vim-8.2.3794/src/change.c 2021-12-12 19:10:39.629912018 +0000 --- src/change.c 2021-12-13 12:12:54.437667771 +0000 *************** *** 469,479 **** win_T *wp; tabpage_T *tp; int i; - #ifdef FEAT_JUMPLIST int cols; pos_T *p; int add; - #endif // mark the buffer as modified changed(); --- 469,477 ---- *************** *** 492,498 **** curbuf->b_last_change.lnum = lnum; curbuf->b_last_change.col = col; - #ifdef FEAT_JUMPLIST // Create a new entry if a new undo-able change was started or we // don't have an entry yet. if (curbuf->b_new_change || curbuf->b_changelistlen == 0) --- 490,495 ---- *************** *** 552,558 **** // The current window is always after the last change, so that "g," // takes you back to it. curwin->w_changelistidx = curbuf->b_changelistlen; - #endif } FOR_ALL_TAB_WINDOWS(tp, wp) --- 549,554 ---- *** ../vim-8.2.3794/src/evalfunc.c 2021-11-30 18:25:04.984458295 +0000 --- src/evalfunc.c 2021-12-13 12:53:01.504284605 +0000 *************** *** 4301,4312 **** static void f_getchangelist(typval_T *argvars, typval_T *rettv) { - #ifdef FEAT_JUMPLIST buf_T *buf; int i; list_T *l; dict_T *d; - #endif if (rettv_list_alloc(rettv) != OK) return; --- 4301,4310 ---- *************** *** 4314,4320 **** if (in_vim9script() && check_for_opt_buffer_arg(argvars, 0) == FAIL) return; - #ifdef FEAT_JUMPLIST if (argvars[0].v_type == VAR_UNKNOWN) buf = curbuf; else --- 4312,4317 ---- *************** *** 4349,4355 **** dict_add_number(d, "col", (long)buf->b_changelist[i].col); dict_add_number(d, "coladd", (long)buf->b_changelist[i].coladd); } - #endif } static void --- 4346,4351 ---- *************** *** 4525,4536 **** static void f_getjumplist(typval_T *argvars, typval_T *rettv) { - #ifdef FEAT_JUMPLIST win_T *wp; int i; list_T *l; dict_T *d; - #endif if (rettv_list_alloc(rettv) != OK) return; --- 4521,4530 ---- *************** *** 4541,4547 **** && check_for_opt_number_arg(argvars, 1) == FAIL))) return; - #ifdef FEAT_JUMPLIST wp = find_tabwin(&argvars[0], &argvars[1], NULL); if (wp == NULL) return; --- 4535,4540 ---- *************** *** 4571,4577 **** if (wp->w_jumplist[i].fname != NULL) dict_add_string(d, "filename", wp->w_jumplist[i].fname); } - #endif } /* --- 4564,4569 ---- *************** *** 5322,5334 **** 0 #endif }, ! {"jumplist", ! #ifdef FEAT_JUMPLIST ! 1 ! #else ! 0 ! #endif ! }, {"keymap", #ifdef FEAT_KEYMAP 1 --- 5314,5320 ---- 0 #endif }, ! {"jumplist", 1}, {"keymap", #ifdef FEAT_KEYMAP 1 *** ../vim-8.2.3794/src/ex_docmd.c 2021-12-11 12:26:55.924402407 +0000 --- src/ex_docmd.c 2021-12-13 12:53:20.292179840 +0000 *************** *** 359,370 **** # define ex_nbstart ex_ni #endif - #ifndef FEAT_JUMPLIST - # define ex_jumps ex_ni - # define ex_clearjumps ex_ni - # define ex_changes ex_ni - #endif - #ifndef FEAT_PROFILE # define ex_profile ex_ni #endif --- 359,364 ---- *** ../vim-8.2.3794/src/mark.c 2021-12-05 22:19:22.832153464 +0000 --- src/mark.c 2021-12-13 12:54:21.071855474 +0000 *************** *** 136,145 **** void setpcmark(void) { - #ifdef FEAT_JUMPLIST int i; xfmark_T *fm; - #endif // for :global the mark is set only once if (global_busy || listcmd_busy || (cmdmod.cmod_flags & CMOD_KEEPJUMPS)) --- 136,143 ---- *************** *** 148,154 **** curwin->w_prev_pcmark = curwin->w_pcmark; curwin->w_pcmark = curwin->w_cursor; - #ifdef FEAT_JUMPLIST // If jumplist is full: remove oldest entry if (++curwin->w_jumplistlen > JUMPLISTSIZE) { --- 146,151 ---- *************** *** 163,171 **** fm->fmark.mark = curwin->w_pcmark; fm->fmark.fnum = curbuf->b_fnum; fm->fname = NULL; ! # ifdef FEAT_VIMINFO fm->time_set = vim_time(); - # endif #endif } --- 160,167 ---- fm->fmark.mark = curwin->w_pcmark; fm->fmark.fnum = curbuf->b_fnum; fm->fname = NULL; ! #ifdef FEAT_VIMINFO fm->time_set = vim_time(); #endif } *************** *** 185,191 **** curwin->w_prev_pcmark.lnum = 0; // it has been checked } - #if defined(FEAT_JUMPLIST) || defined(PROTO) /* * move "count" positions in the jump list (count may be negative) */ --- 181,186 ---- *************** *** 274,280 **** curwin->w_changelistidx = n; return curbuf->b_changelist + n; } - #endif /* * Find mark "c" in buffer pointed to by "buf". --- 269,274 ---- *************** *** 532,540 **** { char_u *name; int i; - #ifdef FEAT_JUMPLIST win_T *wp; - #endif if (buf->b_ffname == NULL) return; --- 526,532 ---- *************** *** 546,558 **** for (i = 0; i < NMARKS + EXTRA_MARKS; ++i) fmarks_check_one(&namedfm[i], name, buf); - #ifdef FEAT_JUMPLIST FOR_ALL_WINDOWS(wp) { for (i = 0; i < wp->w_jumplistlen; ++i) fmarks_check_one(&wp->w_jumplist[i], name, buf); } - #endif vim_free(name); } --- 538,548 ---- *************** *** 626,634 **** buf->b_last_cursor.coladd = 0; buf->b_last_insert.lnum = 0; // '^ mark cleared buf->b_last_change.lnum = 0; // '. mark cleared - #ifdef FEAT_JUMPLIST buf->b_changelistlen = 0; - #endif } /* --- 616,622 ---- *************** *** 867,873 **** } } - #if defined(FEAT_JUMPLIST) || defined(PROTO) /* * print the jumplist */ --- 855,860 ---- *************** *** 965,971 **** if (curwin->w_changelistidx == curbuf->b_changelistlen) msg_puts("\n>"); } - #endif #define one_adjust(add) \ { \ --- 952,957 ---- *************** *** 1071,1081 **** one_adjust(&(curbuf->b_last_cursor.lnum)); - #ifdef FEAT_JUMPLIST // list of change positions for (i = 0; i < curbuf->b_changelistlen; ++i) one_adjust_nodel(&(curbuf->b_changelist[i].lnum)); - #endif // Visual area one_adjust_nodel(&(curbuf->b_visual.vi_start.lnum)); --- 1057,1065 ---- *************** *** 1109,1122 **** */ FOR_ALL_TAB_WINDOWS(tab, win) { - #ifdef FEAT_JUMPLIST if ((cmdmod.cmod_flags & CMOD_LOCKMARKS) == 0) // Marks in the jumplist. When deleting lines, this may create // duplicate marks in the jumplist, they will be removed later. for (i = 0; i < win->w_jumplistlen; ++i) if (win->w_jumplist[i].fmark.fnum == fnum) one_adjust_nodel(&(win->w_jumplist[i].fmark.mark.lnum)); - #endif if (win->w_buffer == curbuf) { --- 1093,1104 ---- *************** *** 1249,1259 **** // last change position col_adjust(&(curbuf->b_last_change)); - #ifdef FEAT_JUMPLIST // list of change positions for (i = 0; i < curbuf->b_changelistlen; ++i) col_adjust(&(curbuf->b_changelist[i])); - #endif // Visual area col_adjust(&(curbuf->b_visual.vi_start)); --- 1231,1239 ---- *************** *** 1273,1284 **** */ FOR_ALL_WINDOWS(win) { - #ifdef FEAT_JUMPLIST // marks in the jumplist for (i = 0; i < win->w_jumplistlen; ++i) if (win->w_jumplist[i].fmark.fnum == fnum) col_adjust(&(win->w_jumplist[i].fmark.mark)); - #endif if (win->w_buffer == curbuf) { --- 1253,1262 ---- *************** *** 1294,1300 **** } } - #ifdef FEAT_JUMPLIST /* * When deleting lines, this may create duplicate marks in the * jumplist. They will be removed here for the specified window. --- 1272,1277 ---- *************** *** 1371,1377 **** for (i = 0; i < wp->w_jumplistlen; ++i) vim_free(wp->w_jumplist[i].fname); } - #endif // FEAT_JUMPLIST void set_last_cursor(win_T *win) --- 1348,1353 ---- *** ../vim-8.2.3794/src/normal.c 2021-12-12 14:16:34.989862195 +0000 --- src/normal.c 2021-12-13 12:54:49.319711714 +0000 *************** *** 5593,5604 **** static void nv_pcmark(cmdarg_T *cap) { - #ifdef FEAT_JUMPLIST pos_T *pos; ! # ifdef FEAT_FOLDING linenr_T lnum = curwin->w_cursor.lnum; int old_KeyTyped = KeyTyped; // getting file may reset it ! # endif if (!checkclearopq(cap->oap)) { --- 5593,5603 ---- static void nv_pcmark(cmdarg_T *cap) { pos_T *pos; ! #ifdef FEAT_FOLDING linenr_T lnum = curwin->w_cursor.lnum; int old_KeyTyped = KeyTyped; // getting file may reset it ! #endif if (!checkclearopq(cap->oap)) { *************** *** 5638,5646 **** foldOpenCursor(); # endif } - #else - clearopbeep(cap->oap); - #endif } /* --- 5637,5642 ---- *************** *** 6444,6450 **** do_exmode(TRUE); break; - #ifdef FEAT_JUMPLIST case ',': nv_pcmark(cap); break; --- 6440,6445 ---- *************** *** 6453,6459 **** cap->count1 = -cap->count1; nv_pcmark(cap); break; - #endif case 't': if (!checkclearop(oap)) --- 6448,6453 ---- *** ../vim-8.2.3794/src/undo.c 2021-10-14 17:52:19.016102283 +0100 --- src/undo.c 2021-12-13 12:54:58.227667267 +0000 *************** *** 240,246 **** /* * Save the lines between "top" and "bot" for both the "u" and "U" command. ! * "top" may be 0 and bot may be curbuf->b_ml.ml_line_count + 1. * Careful: may trigger autocommands that reload the buffer. * Returns FAIL when lines could not be saved, OK otherwise. */ --- 240,246 ---- /* * Save the lines between "top" and "bot" for both the "u" and "U" command. ! * "top" may be 0 and "bot" may be curbuf->b_ml.ml_line_count + 1. * Careful: may trigger autocommands that reload the buffer. * Returns FAIL when lines could not be saved, OK otherwise. */ *************** *** 497,506 **** */ if (curbuf->b_u_synced) { - #ifdef FEAT_JUMPLIST // Need to create new entry in b_changelist. curbuf->b_new_change = TRUE; - #endif if (get_undolevel() >= 0) { --- 497,504 ---- *** ../vim-8.2.3794/src/version.c 2021-12-13 11:31:00.488529501 +0000 --- src/version.c 2021-12-13 12:55:06.763625034 +0000 *************** *** 312,322 **** #else "-job", #endif - #ifdef FEAT_JUMPLIST "+jumplist", - #else - "-jumplist", - #endif #ifdef FEAT_KEYMAP "+keymap", #else --- 312,318 ---- *** ../vim-8.2.3794/src/viminfo.c 2021-08-11 16:13:49.544650243 +0100 --- src/viminfo.c 2021-12-13 12:56:02.631357453 +0000 *************** *** 1947,1956 **** */ static xfmark_T *vi_namedfm = NULL; - #ifdef FEAT_JUMPLIST static xfmark_T *vi_jumplist = NULL; static int vi_jumplist_len = 0; - #endif static void write_one_mark(FILE *fp_out, int c, pos_T *pos) --- 1947,1954 ---- *************** *** 1978,1984 **** write_one_mark(fp_out, '"', &buf->b_last_cursor); write_one_mark(fp_out, '^', &buf->b_last_insert); write_one_mark(fp_out, '.', &buf->b_last_change); - #ifdef FEAT_JUMPLIST // changelist positions are stored oldest first for (i = 0; i < buf->b_changelistlen; ++i) { --- 1976,1981 ---- *************** *** 1987,1993 **** buf->b_changelist[i])) write_one_mark(fp_out, '+', &buf->b_changelist[i]); } - #endif for (i = 0; i < NMARKS; i++) write_one_mark(fp_out, 'a' + i, &buf->b_namedm[i]); } --- 1984,1989 ---- *************** *** 2173,2179 **** write_one_filemark(fp, fm, '\'', i - NMARKS + '0'); } - #ifdef FEAT_JUMPLIST // Write the jumplist with -' fputs(_("\n# Jumplist (newest first):\n"), fp); setpcmark(); // add current cursor position --- 2169,2174 ---- *************** *** 2201,2207 **** && !skip_for_viminfo(buf))) write_one_filemark(fp, fm, '-', '\''); } - #endif } /* --- 2196,2201 ---- *************** *** 2412,2418 **** case '^': curbuf->b_last_insert = pos; break; case '.': curbuf->b_last_change = pos; break; case '+': - #ifdef FEAT_JUMPLIST // changelist positions are stored oldest // first if (curbuf->b_changelistlen == JUMPLISTSIZE) --- 2406,2411 ---- *************** *** 2424,2430 **** ++curbuf->b_changelistlen; curbuf->b_changelist[ curbuf->b_changelistlen - 1] = pos; - #endif break; // Using the line number for the last-used --- 2417,2422 ---- *************** *** 2442,2448 **** if (load_marks) { - #ifdef FEAT_JUMPLIST win_T *wp; FOR_ALL_WINDOWS(wp) --- 2434,2439 ---- *************** *** 2450,2456 **** if (wp->w_buffer == curbuf) wp->w_changelistidx = curbuf->b_changelistlen; } - #endif if (flags & VIF_ONLY_CURBUF) break; } --- 2441,2446 ---- *************** *** 2504,2510 **** { if (*str == '\'') { - #ifdef FEAT_JUMPLIST // If the jumplist isn't full insert fmark as oldest entry if (curwin->w_jumplistlen == JUMPLISTSIZE) fm = NULL; --- 2494,2499 ---- *************** *** 2518,2526 **** fm->fmark.mark.lnum = 0; fm->fname = NULL; } - #else - fm = NULL; - #endif } else if (VIM_ISDIGIT(*str)) fm = &namedfm_p[*str - '0' + NMARKS]; --- 2507,2512 ---- *************** *** 2551,2560 **** prepare_viminfo_marks(void) { vi_namedfm = ALLOC_CLEAR_MULT(xfmark_T, NMARKS + EXTRA_MARKS); - #ifdef FEAT_JUMPLIST vi_jumplist = ALLOC_CLEAR_MULT(xfmark_T, JUMPLISTSIZE); vi_jumplist_len = 0; - #endif } static void --- 2537,2544 ---- *************** *** 2568,2581 **** vim_free(vi_namedfm[i].fname); VIM_CLEAR(vi_namedfm); } - #ifdef FEAT_JUMPLIST if (vi_jumplist != NULL) { for (i = 0; i < vi_jumplist_len; ++i) vim_free(vi_jumplist[i].fname); VIM_CLEAR(vi_jumplist); } - #endif } /* --- 2552,2563 ---- *************** *** 2612,2618 **** if (name == '\'') { - #ifdef FEAT_JUMPLIST if (vi_jumplist != NULL) { if (vi_jumplist_len < JUMPLISTSIZE) --- 2594,2599 ---- *************** *** 2667,2673 **** fm->time_set = 0; } } - #endif } else { --- 2648,2653 ---- *** ../vim-8.2.3794/src/window.c 2021-12-10 13:40:05.060213928 +0000 --- src/window.c 2021-12-13 12:56:25.447252270 +0000 *************** *** 1332,1341 **** p_wh = size; } - #ifdef FEAT_JUMPLIST // Keep same changelist position in new window. wp->w_changelistidx = oldwin->w_changelistidx; - #endif /* * make the new window the current window --- 1332,1339 ---- *************** *** 1383,1391 **** newp->w_wrow = oldp->w_wrow; newp->w_fraction = oldp->w_fraction; newp->w_prev_fraction_row = oldp->w_prev_fraction_row; - #ifdef FEAT_JUMPLIST copy_jumplist(oldp, newp); - #endif #ifdef FEAT_QUICKFIX if (flags & WSP_NEWLOC) { --- 1381,1387 ---- *************** *** 5161,5169 **** clear_matches(wp); #endif - #ifdef FEAT_JUMPLIST free_jumplist(wp); - #endif #ifdef FEAT_QUICKFIX qf_free_all(wp); --- 5157,5163 ---- *** ../vim-8.2.3794/src/structs.h 2021-12-11 16:13:32.227721221 +0000 --- src/structs.h 2021-12-13 12:56:54.655120868 +0000 *************** *** 2763,2776 **** pos_T b_last_insert; // where Insert mode was left pos_T b_last_change; // position of last change: '. mark - #ifdef FEAT_JUMPLIST /* * the changelist contains old change positions */ pos_T b_changelist[JUMPLISTSIZE]; int b_changelistlen; // number of active entries int b_new_change; // set by u_savecommon() - #endif /* * Character table, only used in charset.c for 'iskeyword' --- 2763,2774 ---- *************** *** 3730,3736 **** pos_T w_pcmark; // previous context mark pos_T w_prev_pcmark; // previous w_pcmark - #ifdef FEAT_JUMPLIST /* * the jumplist contains old cursor positions */ --- 3728,3733 ---- *************** *** 3739,3745 **** int w_jumplistidx; // current position int w_changelistidx; // current position in b_changelist - #endif #ifdef FEAT_SEARCH_EXTRA matchitem_T *w_match_head; // head of match list --- 3736,3741 ---- *** ../vim-8.2.3794/src/testdir/test_changelist.vim 2020-08-12 17:50:31.871655841 +0100 --- src/testdir/test_changelist.vim 2021-12-13 12:57:30.978962284 +0000 *************** *** 1,11 **** " Tests for the changelist functionality - source check.vim - " Tests for the getchangelist() function func Test_getchangelist() - CheckFeature jumplist - bwipe! enew call assert_equal([], 10->getchangelist()) --- 1,7 ---- *** ../vim-8.2.3794/src/testdir/test_jumplist.vim 2020-08-12 17:50:31.879655802 +0100 --- src/testdir/test_jumplist.vim 2021-12-13 12:58:05.278817085 +0000 *************** *** 1,11 **** " Tests for the jumplist functionality - source check.vim - " Tests for the getjumplist() function func Test_getjumplist() - CheckFeature jumplist - %bwipe clearjumps call assert_equal([[], 0], getjumplist()) --- 1,7 ---- *** ../vim-8.2.3794/src/testdir/test_normal.vim 2021-12-12 20:07:58.724337327 +0000 --- src/testdir/test_normal.vim 2021-12-13 12:58:47.090645699 +0000 *************** *** 2336,2342 **** " Test for g`, g;, g,, g&, gv, gk, gj, gJ, g0, g^, g_, gm, g$, gM, g CTRL-G, " gi and gI commands func Test_normal33_g_cmd2() - CheckFeature jumplist call Setup_NewWindow() " Test for g` clearjumps --- 2336,2341 ---- *************** *** 3270,3276 **** " Tests for g cmds func Test_normal_gdollar_cmd() - CheckFeature jumplist call Setup_NewWindow() " Make long lines that will wrap %s/$/\=repeat(' foobar', 10)/ --- 3269,3274 ---- *** ../vim-8.2.3794/src/version.c 2021-12-13 11:31:00.488529501 +0000 --- src/version.c 2021-12-13 12:55:06.763625034 +0000 *************** *** 755,756 **** --- 751,754 ---- { /* Add new patch number below this line */ + /**/ + 3795, /**/ -- The History of every major Galactic Civilization tends to pass through three distinct and recognizable phases, those of Survival, Inquiry and Sophistication, otherwise known as the How, Why and Where phases. For instance, the first phase is characterized by the question 'How can we eat?' the second by the question 'Why do we eat?' and the third by the question 'Where shall we have lunch?' -- Douglas Adams, "The Hitchhiker's Guide to the Galaxy" /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// \\\ \\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///