changeset 10694:fa6c4825a1c4 v8.0.0237

patch 8.0.0237: when 'wildoptions' is "tagfile" completion may not work commit https://github.com/vim/vim/commit/ba47b51ff88d91c9bb5aa522183e23a656865697 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Jan 24 21:18:19 2017 +0100 patch 8.0.0237: when 'wildoptions' is "tagfile" completion may not work Problem: When setting wildoptions=tagfile the completion context is not set correctly. (desjardins) Solution: Check for EXPAND_TAGS_LISTFILES. (Christian Brabandt, closes #1399)
author Christian Brabandt <cb@256bit.org>
date Tue, 24 Jan 2017 21:30:04 +0100
parents 6c1e9dc7caf1
children 992b0ca524a9
files src/ex_getln.c src/testdir/test_cmdline.vim src/version.c
diffstat 3 files changed, 16 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -4366,7 +4366,9 @@ addstar(
 		|| context == EXPAND_OWNSYNTAX
 		|| context == EXPAND_FILETYPE
 		|| context == EXPAND_PACKADD
-		|| (context == EXPAND_TAGS && fname[0] == '/'))
+		|| ((context == EXPAND_TAGS_LISTFILES
+			|| context == EXPAND_TAGS)
+		    && fname[0] == '/'))
 	    retval = vim_strnsave(fname, len);
 	else
 	{
--- a/src/testdir/test_cmdline.vim
+++ b/src/testdir/test_cmdline.vim
@@ -295,3 +295,14 @@ func Test_illegal_address()
   2;')
   quit
 endfunc
+
+func Test_cmdline_complete_wildoptions()
+  help
+  call feedkeys(":tag /\<c-a>\<c-b>\"\<cr>", 'tx')
+  let a = join(sort(split(@:)),' ')
+  set wildoptions=tagfile
+  call feedkeys(":tag /\<c-a>\<c-b>\"\<cr>", 'tx')
+  let b = join(sort(split(@:)),' ')
+  call assert_equal(a, b)
+  bw!
+endfunc
--- a/src/version.c
+++ b/src/version.c
@@ -765,6 +765,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    237,
+/**/
     236,
 /**/
     235,