patch 9.0.1329: completion of map includes simplified ones
Problem: Completion of map includes simplified ones.
Solution: Do not complete simplified mappings. (closes #12013)
diff --git a/src/map.c b/src/map.c
index 9be67cd..9a6cdb1 100644
--- a/src/map.c
+++ b/src/map.c
@@ -180,7 +180,7 @@
len = msg_outtrans_special(mp->m_keys, TRUE, 0);
do
{
- msg_putchar(' '); // padd with blanks
+ msg_putchar(' '); // pad with blanks
++len;
} while (len < 12);
@@ -1445,7 +1445,7 @@
mp = maphash[hash];
for (; mp; mp = mp->m_next)
{
- if (!(mp->m_mode & expand_mapmodes))
+ if (mp->m_simplified || !(mp->m_mode & expand_mapmodes))
continue;
p = translate_mapping(mp->m_keys);
diff --git a/src/testdir/test_mapping.vim b/src/testdir/test_mapping.vim
index 0390d4f..d631274 100644
--- a/src/testdir/test_mapping.vim
+++ b/src/testdir/test_mapping.vim
@@ -783,11 +783,12 @@
call feedkeys(":abbr! \<C-A>\<C-B>\"\<CR>", 'tx')
call assert_equal("\"abbr! \x01", @:)
- " Multiple matches for a map
- nmap ,f /H<CR>
- omap ,f /H<CR>
+ " When multiple matches have the same {lhs}, it should only appear once.
+ " The simplified form should also not be included.
+ nmap ,<C-F> /H<CR>
+ omap ,<C-F> /H<CR>
call feedkeys(":map ,\<C-A>\<C-B>\"\<CR>", 'tx')
- call assert_equal('"map ,f', @:)
+ call assert_equal('"map ,<C-F>', @:)
mapclear
endfunc
diff --git a/src/version.c b/src/version.c
index 41726ea..d219f0f 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1329,
+/**/
1328,
/**/
1327,