0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00

updated for version 7.2b-010

This commit is contained in:
Bram Moolenaar 2008-07-22 16:58:47 +00:00
parent a1aed62928
commit 01b9a406f0
2 changed files with 44 additions and 12 deletions

View File

@ -4539,7 +4539,7 @@ makemap(fd, buf)
buf_T *buf; /* buffer for local mappings or NULL */ buf_T *buf; /* buffer for local mappings or NULL */
{ {
mapblock_T *mp; mapblock_T *mp;
char_u c1, c2; char_u c1, c2, c3;
char_u *p; char_u *p;
char *cmd; char *cmd;
int abbr; int abbr;
@ -4592,8 +4592,12 @@ makemap(fd, buf)
if (*p != NUL) if (*p != NUL)
continue; continue;
/* It's possible to create a mapping and then ":unmap" certain
* modes. We recreate this here by mapping the individual
* modes, which requires up to three of them. */
c1 = NUL; c1 = NUL;
c2 = NUL; c2 = NUL;
c3 = NUL;
if (abbr) if (abbr)
cmd = "abbr"; cmd = "abbr";
else else
@ -4605,9 +4609,6 @@ makemap(fd, buf)
case NORMAL: case NORMAL:
c1 = 'n'; c1 = 'n';
break; break;
case VISUAL + SELECTMODE:
c1 = 'v';
break;
case VISUAL: case VISUAL:
c1 = 'x'; c1 = 'x';
break; break;
@ -4617,18 +4618,47 @@ makemap(fd, buf)
case OP_PENDING: case OP_PENDING:
c1 = 'o'; c1 = 'o';
break; break;
case NORMAL + VISUAL:
c1 = 'n';
c2 = 'x';
break;
case NORMAL + SELECTMODE:
c1 = 'n';
c2 = 's';
break;
case NORMAL + OP_PENDING:
c1 = 'n';
c2 = 'o';
break;
case VISUAL + SELECTMODE:
c1 = 'v';
break;
case VISUAL + OP_PENDING:
c1 = 'x';
c2 = 'o';
break;
case SELECTMODE + OP_PENDING:
c1 = 's';
c2 = 'o';
break;
case NORMAL + VISUAL + SELECTMODE: case NORMAL + VISUAL + SELECTMODE:
c1 = 'n'; c1 = 'n';
c2 = 'v'; c2 = 'v';
break; break;
case NORMAL + VISUAL + OP_PENDING:
c1 = 'n';
c2 = 'x';
c3 = 'o';
break;
case NORMAL + SELECTMODE + OP_PENDING:
c1 = 'n';
c2 = 's';
c3 = 'o';
break;
case VISUAL + SELECTMODE + OP_PENDING: case VISUAL + SELECTMODE + OP_PENDING:
c1 = 'v'; c1 = 'v';
c2 = 'o'; c2 = 'o';
break; break;
case NORMAL + OP_PENDING:
c1 = 'n';
c2 = 'o';
break;
case CMDLINE + INSERT: case CMDLINE + INSERT:
if (!abbr) if (!abbr)
cmd = "map!"; cmd = "map!";
@ -4646,7 +4676,7 @@ makemap(fd, buf)
EMSG(_("E228: makemap: Illegal mode")); EMSG(_("E228: makemap: Illegal mode"));
return FAIL; return FAIL;
} }
do /* may do this twice if c2 is set */ do /* do this twice if c2 is set, 3 times with c3 */
{ {
/* When outputting <> form, need to make sure that 'cpo' /* When outputting <> form, need to make sure that 'cpo'
* is set to the Vim default. */ * is set to the Vim default. */
@ -4693,9 +4723,9 @@ makemap(fd, buf)
|| put_eol(fd) < 0) || put_eol(fd) < 0)
return FAIL; return FAIL;
c1 = c2; c1 = c2;
c2 = NUL; c2 = c3;
} c3 = NUL;
while (c1); } while (c1 != NUL);
} }
} }

View File

@ -676,6 +676,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
10,
/**/ /**/
9, 9,
/**/ /**/