To: vim_dev@googlegroups.com Subject: Patch 7.4.1971 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 7.4.1971 Problem: It is not easy to see unrecognized error lines below the current error position. Solution: Add ":clist +count". Files: src/quickfix.c, runtime/doc/quickfix.txt *** ../vim-7.4.1970/src/quickfix.c 2016-06-28 21:11:17.511791102 +0200 --- src/quickfix.c 2016-07-01 14:30:49.638655038 +0200 *************** *** 2258,2263 **** --- 2258,2264 ---- int idx1 = 1; int idx2 = -1; char_u *arg = eap->arg; + int plus = FALSE; int all = eap->forceit; /* if not :cl!, only show recognised errors */ qf_info_T *qi = &ql_info; *************** *** 2278,2293 **** EMSG(_(e_quickfix)); return; } if (!get_list_range(&arg, &idx1, &idx2) || *arg != NUL) { EMSG(_(e_trailing)); return; } ! i = qi->qf_lists[qi->qf_curlist].qf_count; ! if (idx1 < 0) ! idx1 = (-idx1 > i) ? 0 : idx1 + i + 1; ! if (idx2 < 0) ! idx2 = (-idx2 > i) ? 0 : idx2 + i + 1; if (qi->qf_lists[qi->qf_curlist].qf_nonevalid) all = TRUE; --- 2279,2308 ---- EMSG(_(e_quickfix)); return; } + if (*arg == '+') + { + ++arg; + plus = TRUE; + } if (!get_list_range(&arg, &idx1, &idx2) || *arg != NUL) { EMSG(_(e_trailing)); return; } ! if (plus) ! { ! i = qi->qf_lists[qi->qf_curlist].qf_index; ! idx2 = i + idx1; ! idx1 = i; ! } ! else ! { ! i = qi->qf_lists[qi->qf_curlist].qf_count; ! if (idx1 < 0) ! idx1 = (-idx1 > i) ? 0 : idx1 + i + 1; ! if (idx2 < 0) ! idx2 = (-idx2 > i) ? 0 : idx2 + i + 1; ! } if (qi->qf_lists[qi->qf_curlist].qf_nonevalid) all = TRUE; *** ../vim-7.4.1970/runtime/doc/quickfix.txt 2016-01-21 21:48:02.259696731 +0100 --- runtime/doc/quickfix.txt 2016-07-01 14:41:31.676814544 +0200 *************** *** 262,272 **** The 'switchbuf' settings are respected when jumping to a buffer. :cl[ist]! [from] [, [to]] List all errors. ! *:lli* *:llist* ! :lli[st] [from] [, [to]] Same as ":clist", except the location list for the current window is used instead of the quickfix list. --- 270,293 ---- The 'switchbuf' settings are respected when jumping to a buffer. + :cl[ist] +{count} List the current and next {count} valid errors. This + is similar to ":clist from from+count", where "from" + is the current error position. + :cl[ist]! [from] [, [to]] List all errors. ! :cl[ist]! +{count} List the current and next {count} error lines. This ! is useful to see unrecognized lines after the current ! one. For example, if ":clist" shows: ! 8384 testje.java:252: error: cannot find symbol ~ ! Then using ":cl! +3" shows the reason: ! 8384 testje.java:252: error: cannot find symbol ~ ! 8385: ZexitCode = Fmainx(); ~ ! 8386: ^ ~ ! 8387: symbol: method Fmainx() ~ ! ! :lli[st] [from] [, [to]] *:lli* *:llist* Same as ":clist", except the location list for the current window is used instead of the quickfix list. *** ../vim-7.4.1970/src/version.c 2016-07-01 14:04:36.422846118 +0200 --- src/version.c 2016-07-01 14:32:10.493409889 +0200 *************** *** 755,756 **** --- 755,758 ---- { /* Add new patch number below this line */ + /**/ + 1971, /**/ -- hundred-and-one symptoms of being an internet addict: 169. You hire a housekeeper for your home page. /// Bram Moolenaar -- Bram@Moolenaar.net -- 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 ///