Mercurial > vim
changeset 31994:096fe1952003 v9.0.1329
patch 9.0.1329: completion of map includes simplified ones
Commit: https://github.com/vim/vim/commit/997b8a015cd39141866e953651d55c705275cbd6
Author: zeertzjq <zeertzjq@outlook.com>
Date: Sun Feb 19 21:00:31 2023 +0000
patch 9.0.1329: completion of map includes simplified ones
Problem: Completion of map includes simplified ones.
Solution: Do not complete simplified mappings. (closes https://github.com/vim/vim/issues/12013)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 19 Feb 2023 22:15:03 +0100 |
parents | f2671bde6f4e |
children | 95971aa5e525 |
files | src/map.c src/testdir/test_mapping.vim src/version.c |
diffstat | 3 files changed, 9 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/src/map.c +++ b/src/map.c @@ -180,7 +180,7 @@ showmap( 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 @@ ExpandMappings( 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);
--- a/src/testdir/test_mapping.vim +++ b/src/testdir/test_mapping.vim @@ -783,11 +783,12 @@ func Test_mapcomplete() 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