aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_getln.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/ex_getln.c')
-rw-r--r--src/nvim/ex_getln.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c
index 7e6bf862d7..b098f7d4ee 100644
--- a/src/nvim/ex_getln.c
+++ b/src/nvim/ex_getln.c
@@ -2548,10 +2548,9 @@ static void cmdline_del(int from)
ccline.cmdpos = from;
}
-/*
- * this function is called when the screen size changes and with incremental
- * search
- */
+// This function is called when the screen size changes and with incremental
+// search and in other situations where the command line may have been
+// overwritten.
void redrawcmdline(void)
{
if (cmd_silent)
@@ -3677,7 +3676,7 @@ static void cleanup_help_tags(int num_file, char_u **file)
char_u buf[4];
char_u *p = buf;
- if (p_hlg[0] != NUL) {
+ if (p_hlg[0] != NUL && (p_hlg[0] != 'e' || p_hlg[1] != 'n')) {
*p++ = '@';
*p++ = p_hlg[0];
*p++ = p_hlg[1];
@@ -3689,9 +3688,9 @@ static void cleanup_help_tags(int num_file, char_u **file)
if (len <= 0) {
continue;
}
- if (i == 0 && STRCMP(file[i] + len, buf) == 0) {
+ if (STRCMP(file[i] + len, buf) == 0) {
+ // remove the default language
file[i][len] = NUL;
- break;
} else if (STRCMP(file[i] + len, "@en") == 0) {
// Sorting on priority means the same item in another language may
// be anywhere. Search all items for a match up to the "@en".
@@ -3704,8 +3703,8 @@ static void cleanup_help_tags(int num_file, char_u **file)
}
}
if (j == num_file) {
+ // item only exists with @en, remove it
file[i][len] = NUL;
- break;
}
}
}