summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.1015
diff options
context:
space:
mode:
Diffstat (limited to 'data/vim/patches/8.1.1015')
-rw-r--r--data/vim/patches/8.1.1015449
1 files changed, 0 insertions, 449 deletions
diff --git a/data/vim/patches/8.1.1015 b/data/vim/patches/8.1.1015
deleted file mode 100644
index fee064175..000000000
--- a/data/vim/patches/8.1.1015
+++ /dev/null
@@ -1,449 +0,0 @@
-To: vim_dev@googlegroups.com
-Subject: Patch 8.1.1015
-Fcc: outbox
-From: Bram Moolenaar <Bram@moolenaar.net>
-Mime-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-------------
-
-Patch 8.1.1015
-Problem: Quickfix buffer shows up in list, can't get buffer number.
-Solution: Make the quickfix buffer unlisted when the quickfix window is
- closed. get the quickfix buffer number with getqflist().
- (Yegappan Lakshmanan, closes #4113)
-Files: runtime/doc/eval.txt, runtime/doc/quickfix.txt, src/quickfix.c,
- src/testdir/test_quickfix.vim, src/window.c
-
-
-*** ../vim-8.1.1014/runtime/doc/eval.txt 2019-03-04 13:18:15.977053527 +0100
---- runtime/doc/eval.txt 2019-03-17 16:34:27.019774609 +0100
-***************
-*** 4931,4940 ****
- If the optional {what} dictionary argument is supplied, then
- returns the items listed in {what} as a dictionary. Refer to
- |getqflist()| for the supported items in {what}.
-! If {what} contains 'filewinid', then returns the id of the
-! window used to display files from the location list. This
-! field is applicable only when called from a location list
-! window.
-
- getmatches() *getmatches()*
- Returns a |List| with all matches previously defined by
---- 4964,4979 ----
- If the optional {what} dictionary argument is supplied, then
- returns the items listed in {what} as a dictionary. Refer to
- |getqflist()| for the supported items in {what}.
-!
-! In addition to the items supported by |getqflist()| in {what},
-! the following item is supported by |getloclist()|:
-!
-! filewinid id of the window used to display files
-! from the location list. This field is
-! applicable only when called from a
-! location list window. See
-! |location-list-file-window| for more
-! details.
-
- getmatches() *getmatches()*
- Returns a |List| with all matches previously defined by
-***************
-*** 5036,5041 ****
---- 5075,5083 ----
- nr get information for this quickfix list; zero
- means the current quickfix list and "$" means
- the last quickfix list
-+ qfbufnr number of the buffer displayed in the quickfix
-+ window. Returns 0 if the quickfix buffer is
-+ not present. See |quickfix-buffer|.
- size number of entries in the quickfix list
- title get the list title |quickfix-title|
- winid get the quickfix |window-ID|
-***************
-*** 5064,5069 ****
---- 5106,5113 ----
- items quickfix list entries. If not present, set to
- an empty list.
- nr quickfix list number. If not present, set to 0
-+ qfbufnr number of the buffer displayed in the quickfix
-+ window. If not present, set to 0.
- size number of entries in the quickfix list. If not
- present, set to 0.
- title quickfix list title text. If not present, set
-*** ../vim-8.1.1014/runtime/doc/quickfix.txt 2019-01-11 14:49:25.380107431 +0100
---- runtime/doc/quickfix.txt 2019-03-17 16:34:27.019774609 +0100
-***************
-*** 111,124 ****
- :[count]lne[xt][!] Same as ":cnext", except the location list for the
- current window is used instead of the quickfix list.
-
-! :[count]cN[ext][!] *:cp* *:cprevious* *:cN* *:cNext*
- :[count]cp[revious][!] Display the [count] previous error in the list that
- includes a file name. If there are no file names at
- all, go to the [count] previous error. See |:cc| for
- [!] and 'switchbuf'.
-
-
-! :[count]lN[ext][!] *:lp* *:lprevious* *:lN* *:lNext*
- :[count]lp[revious][!] Same as ":cNext" and ":cprevious", except the location
- list for the current window is used instead of the
- quickfix list.
---- 111,124 ----
- :[count]lne[xt][!] Same as ":cnext", except the location list for the
- current window is used instead of the quickfix list.
-
-! :[count]cN[ext][!] *:cp* *:cprevious* *:cprev* *:cN* *:cNext*
- :[count]cp[revious][!] Display the [count] previous error in the list that
- includes a file name. If there are no file names at
- all, go to the [count] previous error. See |:cc| for
- [!] and 'switchbuf'.
-
-
-! :[count]lN[ext][!] *:lp* *:lprevious* *:lprev* *:lN* *:lNext*
- :[count]lp[revious][!] Same as ":cNext" and ":cprevious", except the location
- list for the current window is used instead of the
- quickfix list.
-***************
-*** 367,374 ****
- <
- *quickfix-index*
- When you jump to a quickfix/location list entry using any of the quickfix
-! commands (e.g. |cc|, |cnext|, |cprev|, etc.), that entry becomes the currently
-! selected entry. The index of the currently selected entry in a
- quickfix/location list can be obtained using the getqflist()/getloclist()
- functions. Examples: >
- echo getqflist({'idx' : 0}).idx
---- 367,374 ----
- <
- *quickfix-index*
- When you jump to a quickfix/location list entry using any of the quickfix
-! commands (e.g. |:cc|, |:cnext|, |:cprev|, etc.), that entry becomes the
-! currently selected entry. The index of the currently selected entry in a
- quickfix/location list can be obtained using the getqflist()/getloclist()
- functions. Examples: >
- echo getqflist({'idx' : 0}).idx
-***************
-*** 496,501 ****
---- 496,502 ----
- second quickfix window. If [height] is given the
- existing window will be resized to it.
-
-+ *quickfix-buffer*
- The window will contain a special buffer, with
- 'buftype' equal to "quickfix". Don't change this!
- The window will have the w:quickfix_title variable set
-***************
-*** 504,510 ****
- status line if the value of 'statusline' is adjusted
- properly. Whenever this buffer is modified by a
- quickfix command or function, the |b:changedtick|
-! variable is incremented.
-
- *:lop* *:lopen*
- :lop[en] [height] Open a window to show the location list for the
---- 505,515 ----
- status line if the value of 'statusline' is adjusted
- properly. Whenever this buffer is modified by a
- quickfix command or function, the |b:changedtick|
-! variable is incremented. You can get the number of
-! this buffer using the getqflist() and getloclist()
-! functions by passing the 'qfbufnr' item. For a
-! location list, this buffer is wiped out when the
-! location list is removed.
-
- *:lop* *:lopen*
- :lop[en] [height] Open a window to show the location list for the
-***************
-*** 670,681 ****
---- 675,692 ----
- " get the quickfix list window id
- :echo getqflist({'winid' : 0}).winid
-
-+ " get the quickfix list window buffer number
-+ :echo getqflist({'qfbufnr' : 0}).qfbufnr
-+
- " get the context of the current location list
- :echo getloclist(0, {'context' : 0}).context
-
- " get the location list window id of the third window
- :echo getloclist(3, {'winid' : 0}).winid
-
-+ " get the location list window buffer number of the third window
-+ :echo getloclist(3, {'qfbufnr' : 0}).qfbufnr
-+
- " get the file window id of a location list window (winnr: 4)
- :echo getloclist(4, {'filewinid' : 0}).filewinid
- <
-*** ../vim-8.1.1014/src/quickfix.c 2019-03-13 06:49:20.492351919 +0100
---- src/quickfix.c 2019-03-17 16:34:27.019774609 +0100
-***************
-*** 5907,5913 ****
- QF_GETLIST_SIZE = 0x80,
- QF_GETLIST_TICK = 0x100,
- QF_GETLIST_FILEWINID = 0x200,
-! QF_GETLIST_ALL = 0x3FF,
- };
-
- /*
---- 5907,5914 ----
- QF_GETLIST_SIZE = 0x80,
- QF_GETLIST_TICK = 0x100,
- QF_GETLIST_FILEWINID = 0x200,
-! QF_GETLIST_QFBUFNR = 0x400,
-! QF_GETLIST_ALL = 0x7FF,
- };
-
- /*
-***************
-*** 5977,5982 ****
---- 5978,5994 ----
- }
-
- /*
-+ * Returns the number of the buffer displayed in the quickfix/location list
-+ * window. If there is no buffer associated with the list, then returns 0.
-+ */
-+ static int
-+ qf_getprop_qfbufnr(qf_info_T *qi, dict_T *retdict)
-+ {
-+ return dict_add_number(retdict, "qfbufnr",
-+ (qi == NULL) ? 0 : qi->qf_bufnr);
-+ }
-+
-+ /*
- * Convert the keys in 'what' to quickfix list property flags.
- */
- static int
-***************
-*** 6022,6027 ****
---- 6034,6042 ----
- if (loclist && dict_find(what, (char_u *)"filewinid", -1) != NULL)
- flags |= QF_GETLIST_FILEWINID;
-
-+ if (dict_find(what, (char_u *)"qfbufnr", -1) != NULL)
-+ flags |= QF_GETLIST_QFBUFNR;
-+
- return flags;
- }
-
-***************
-*** 6114,6119 ****
---- 6129,6136 ----
- status = dict_add_number(retdict, "changedtick", 0);
- if ((status == OK) && locstack && (flags & QF_GETLIST_FILEWINID))
- status = dict_add_number(retdict, "filewinid", 0);
-+ if ((status == OK) && (flags & QF_GETLIST_QFBUFNR))
-+ status = qf_getprop_qfbufnr(qi, retdict);
-
- return status;
- }
-***************
-*** 6259,6264 ****
---- 6276,6283 ----
- status = dict_add_number(retdict, "changedtick", qfl->qf_changedtick);
- if ((status == OK) && (wp != NULL) && (flags & QF_GETLIST_FILEWINID))
- status = qf_getprop_filewinid(wp, qi, retdict);
-+ if ((status == OK) && (flags & QF_GETLIST_QFBUFNR))
-+ status = qf_getprop_qfbufnr(qi, retdict);
-
- return status;
- }
-*** ../vim-8.1.1014/src/testdir/test_quickfix.vim 2019-03-02 07:57:12.236395037 +0100
---- src/testdir/test_quickfix.vim 2019-03-17 16:34:27.019774609 +0100
-***************
-*** 3110,3128 ****
- call assert_equal(0, g:Xgetlist({'changedtick' : 0}).changedtick)
- if a:cchar == 'c'
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0,
-! \ 'items' : [], 'nr' : 0, 'size' : 0,
- \ 'title' : '', 'winid' : 0, 'changedtick': 0},
- \ g:Xgetlist({'all' : 0}))
- else
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0,
- \ 'items' : [], 'nr' : 0, 'size' : 0, 'title' : '',
-! \ 'winid' : 0, 'changedtick': 0, 'filewinid' : 0},
- \ g:Xgetlist({'all' : 0}))
- endif
-
- " Quickfix window with empty stack
- silent! Xopen
- let qfwinid = (a:cchar == 'c') ? win_getid() : 0
- call assert_equal(qfwinid, g:Xgetlist({'winid' : 0}).winid)
- Xclose
-
---- 3110,3130 ----
- call assert_equal(0, g:Xgetlist({'changedtick' : 0}).changedtick)
- if a:cchar == 'c'
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0,
-! \ 'items' : [], 'nr' : 0, 'size' : 0, 'qfbufnr' : 0,
- \ 'title' : '', 'winid' : 0, 'changedtick': 0},
- \ g:Xgetlist({'all' : 0}))
- else
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0,
- \ 'items' : [], 'nr' : 0, 'size' : 0, 'title' : '',
-! \ 'winid' : 0, 'changedtick': 0, 'filewinid' : 0,
-! \ 'qfbufnr' : 0},
- \ g:Xgetlist({'all' : 0}))
- endif
-
- " Quickfix window with empty stack
- silent! Xopen
- let qfwinid = (a:cchar == 'c') ? win_getid() : 0
-+ let qfbufnr = (a:cchar == 'c') ? bufnr('') : 0
- call assert_equal(qfwinid, g:Xgetlist({'winid' : 0}).winid)
- Xclose
-
-***************
-*** 3154,3164 ****
- if a:cchar == 'c'
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0, 'items' : [],
- \ 'nr' : 0, 'size' : 0, 'title' : '', 'winid' : 0,
- \ 'changedtick' : 0}, g:Xgetlist({'id' : qfid, 'all' : 0}))
- else
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0, 'items' : [],
- \ 'nr' : 0, 'size' : 0, 'title' : '', 'winid' : 0,
-! \ 'changedtick' : 0, 'filewinid' : 0},
- \ g:Xgetlist({'id' : qfid, 'all' : 0}))
- endif
-
---- 3156,3167 ----
- if a:cchar == 'c'
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0, 'items' : [],
- \ 'nr' : 0, 'size' : 0, 'title' : '', 'winid' : 0,
-+ \ 'qfbufnr' : qfbufnr,
- \ 'changedtick' : 0}, g:Xgetlist({'id' : qfid, 'all' : 0}))
- else
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0, 'items' : [],
- \ 'nr' : 0, 'size' : 0, 'title' : '', 'winid' : 0,
-! \ 'changedtick' : 0, 'filewinid' : 0, 'qfbufnr' : 0},
- \ g:Xgetlist({'id' : qfid, 'all' : 0}))
- endif
-
-***************
-*** 3175,3185 ****
- if a:cchar == 'c'
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0, 'items' : [],
- \ 'nr' : 0, 'size' : 0, 'title' : '', 'winid' : 0,
-! \ 'changedtick' : 0}, g:Xgetlist({'nr' : 5, 'all' : 0}))
- else
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0, 'items' : [],
- \ 'nr' : 0, 'size' : 0, 'title' : '', 'winid' : 0,
-! \ 'changedtick' : 0, 'filewinid' : 0},
- \ g:Xgetlist({'nr' : 5, 'all' : 0}))
- endif
- endfunc
---- 3178,3189 ----
- if a:cchar == 'c'
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0, 'items' : [],
- \ 'nr' : 0, 'size' : 0, 'title' : '', 'winid' : 0,
-! \ 'changedtick' : 0, 'qfbufnr' : qfbufnr},
-! \ g:Xgetlist({'nr' : 5, 'all' : 0}))
- else
- call assert_equal({'context' : '', 'id' : 0, 'idx' : 0, 'items' : [],
- \ 'nr' : 0, 'size' : 0, 'title' : '', 'winid' : 0,
-! \ 'changedtick' : 0, 'filewinid' : 0, 'qfbufnr' : 0},
- \ g:Xgetlist({'nr' : 5, 'all' : 0}))
- endif
- endfunc
-***************
-*** 3912,3917 ****
---- 3916,3922 ----
- Xclose
- " Even after the quickfix window is closed, the buffer should be loaded
- call assert_true(bufloaded(qfbnum))
-+ call assert_true(qfbnum, g:Xgetlist({'qfbufnr' : 0}).qfbufnr)
- Xopen
- " Buffer should be reused when opening the window again
- call assert_equal(qfbnum, bufnr(''))
-***************
-*** 3930,3936 ****
- close
- " When the location list window is closed, the buffer name should not
- " change to 'Quickfix List'
-! call assert_match(qfbnum . ' h- "\[Location List]"', execute('ls'))
- call assert_true(bufloaded(qfbnum))
-
- " After deleting a location list buffer using ":bdelete", opening the
---- 3935,3941 ----
- close
- " When the location list window is closed, the buffer name should not
- " change to 'Quickfix List'
-! call assert_match(qfbnum . 'u h- "\[Location List]"', execute('ls!'))
- call assert_true(bufloaded(qfbnum))
-
- " After deleting a location list buffer using ":bdelete", opening the
-***************
-*** 3947,3952 ****
---- 3952,3958 ----
- " removed
- call setloclist(0, [], 'f')
- call assert_false(bufexists(qfbnum))
-+ call assert_equal(0, getloclist(0, {'qfbufnr' : 0}).qfbufnr)
-
- " When the location list is freed with the location list window open, the
- " location list buffer should not be lost. It should be reused when the
-*** ../vim-8.1.1014/src/window.c 2019-03-04 13:18:15.973053562 +0100
---- src/window.c 2019-03-17 16:36:49.002856677 +0100
-***************
-*** 2382,2399 ****
- }
-
- #ifdef FEAT_GUI
-! /* Avoid trouble with scrollbars that are going to be deleted in
-! * win_free(). */
- if (gui.in_use)
- out_flush();
- #endif
-
- #ifdef FEAT_SYN_HL
-! /* Free independent synblock before the buffer is freed. */
- if (win->w_buffer != NULL)
- reset_synblock(win);
- #endif
-
- /*
- * Close the link to the buffer.
- */
---- 2382,2405 ----
- }
-
- #ifdef FEAT_GUI
-! // Avoid trouble with scrollbars that are going to be deleted in
-! // win_free().
- if (gui.in_use)
- out_flush();
- #endif
-
- #ifdef FEAT_SYN_HL
-! // Free independent synblock before the buffer is freed.
- if (win->w_buffer != NULL)
- reset_synblock(win);
- #endif
-
-+ #ifdef FEAT_QUICKFIX
-+ // When the quickfix/location list window is closed, unlist the buffer.
-+ if (win->w_buffer != NULL && bt_quickfix(win->w_buffer))
-+ win->w_buffer->b_p_bl = FALSE;
-+ #endif
-+
- /*
- * Close the link to the buffer.
- */
-*** ../vim-8.1.1014/src/version.c 2019-03-17 15:47:22.589492071 +0100
---- src/version.c 2019-03-17 16:33:12.068262826 +0100
-***************
-*** 781,782 ****
---- 781,784 ----
- { /* Add new patch number below this line */
-+ /**/
-+ 1015,
- /**/
-
---
-hundred-and-one symptoms of being an internet addict:
-79. All of your most erotic dreams have a scrollbar at the right side.
-
- /// 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 ///