Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: PATCH: vi repeats



The following is also needed because makezleparams defaults $NUMERIC to
being unset.

Oliver

diff --git a/Src/Zle/zle_thingy.c b/Src/Zle/zle_thingy.c
index 8a6904c..c709285 100644
--- a/Src/Zle/zle_thingy.c
+++ b/Src/Zle/zle_thingy.c
@@ -679,8 +679,14 @@ bin_zle_flags(char *name, char **args, UNUSED(Options ops), UNUSED(char func))
 		    w->flags |= ZLE_KEEPSUFFIX;
 		*/
 	        else if (!strcmp(*flag, "vichange")) {
-		    if (invicmdmode())
+		    if (invicmdmode()) {
 			startvichange(-1);
+			if (zmod.flags & (MOD_MULT|MOD_TMULT)) {
+			    Param pm = (Param) paramtab->getnode(paramtab, "NUMERIC");
+			    if (pm && pm->node.flags & PM_SPECIAL)
+				pm->node.flags &= ~PM_UNSET;
+			}
+		    }
 		} else {
 		    zwarnnam(name, "invalid flag `%s' given to zle -f", *flag);
 		    ret = 1;



Messages sorted by: Reverse Date, Date, Thread, Author