Hi cs86661!

2015/5/20(Wed) 0:08:15 UTC+9 cs86661:
> cs86661於 2015年5月19日星期二 UTC+8下午10時24分08秒寫道:
> > oh~ya~~~It's seen to be fixed! thank you. :)
> 
> sign~I found another problem...
> 
> =====
> :ta test<CR> ---> jump to #1
> :1ta test<CR> ---> jump to #1
> :2ta test<CR> ---> jump to #2
> :3ta test<CR> ---> jump to #2
> 
> :normal <C-v><C-]><CR> ---> I want to jump to the #1, but it jump to #2
> :normal 1<C-v><C-]><CR> ---> jump to #1
> :normal 2<C-v><C-]><CR> ---> jump to #2
> :normal 3<C-v><C-]><CR> ---> jump to #2
> =====

Thank you for check the patch and reporting.
I understand the problem.

Update a patch.
Please check again.

--
Best regards,
Hirohito Higashi (a.k.a h_east)

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.
diff -r ca3db36a6ed8 src/tag.c
--- a/src/tag.c	Thu May 14 05:56:09 2015 +0200
+++ b/src/tag.c	Wed May 20 11:10:59 2015 +0900
@@ -508,14 +508,7 @@
 		tagmatchname = vim_strsave(name);
 	    }
 
-	    /*
-	     * If a count is supplied to the ":tag <name>" command, then
-	     * jump to count'th matching tag.
-	     */
-	    if (type == DT_TAG && *tag != NUL && count > 0)
-		cur_match = count - 1;
-
-	    if (type == DT_SELECT || type == DT_JUMP
+	    if (type == DT_TAG || type == DT_SELECT || type == DT_JUMP
 #if defined(FEAT_QUICKFIX)
 		|| type == DT_LTAG
 #endif
@@ -594,7 +587,13 @@
 	    }
 	    else
 #endif
-	    if (type == DT_SELECT || (type == DT_JUMP && num_matches > 1))
+	    if (type == DT_TAG)
+		/*
+		 * If a count is supplied to the ":tag <name>" command, then
+		 * jump to count'th matching tag.
+		 */
+		cur_match = count > 0 ? count - 1 : 0;
+	    else if (type == DT_SELECT || (type == DT_JUMP && num_matches > 1))
 	    {
 		/*
 		 * List all the matching tags.
@@ -990,7 +989,7 @@
 
 
 	    ic = (matches[cur_match][0] & MT_IC_OFF);
-	    if (type != DT_SELECT && type != DT_JUMP
+	    if (type != DT_TAG && type != DT_SELECT && type != DT_JUMP
 #ifdef FEAT_CSCOPE
 		&& type != DT_CSCOPE
 #endif

Raspunde prin e-mail lui