updated for version 7.3.631
Problem: Cannot complete user names.
Solution: Add user name completion. (Dominique Pelle)
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index c7e6316..ead520a 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -3515,6 +3515,23 @@
#endif
}
}
+#if defined(FEAT_CMDL_COMPL)
+ /* Check for user names */
+ if (*xp->xp_pattern == '~')
+ {
+ for (p = xp->xp_pattern + 1; *p != NUL && *p != '/'; ++p)
+ ;
+ /* Complete ~user only if it partially matches a user name.
+ * A full match ~user<Tab> will be replaced by user's home
+ * directory i.e. something like ~user<Tab> -> /home/user/ */
+ if (*p == NUL && p > xp->xp_pattern + 1
+ && match_user(xp->xp_pattern + 1) == 1)
+ {
+ xp->xp_context = EXPAND_USER;
+ ++xp->xp_pattern;
+ }
+ }
+#endif
}
/*
@@ -5396,6 +5413,7 @@
#endif
{EXPAND_TAGS, "tag"},
{EXPAND_TAGS_LISTFILES, "tag_listfiles"},
+ {EXPAND_USER, "user"},
{EXPAND_USER_VARS, "var"},
{0, NULL}
};