From: Bram Moolenaar Date: Tue, 13 Dec 2005 20:09:08 +0000 (+0000) Subject: updated for version 7.0169 X-Git-Tag: v7.0169 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b2c2efa53ae0d7dd642ff132f7d374e2b517303d;p=vim updated for version 7.0169 --- diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 821c47e4b..c0030b0ab 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.0aa. Last change: 2005 Dec 12 +*todo.txt* For Vim version 7.0aa. Last change: 2005 Dec 13 VIM REFERENCE MANUAL by Bram Moolenaar @@ -30,14 +30,6 @@ be worked on, but only if you sponsor Vim development. See |sponsor|. *known-bugs* -------------------- Known bugs and current work ----------------------- -Patch from Yasuhiro Matsumoto: ":e ++enc=xxx" keeps encoding for conversion -errors and illegal bytes. Make default to replace bad bytes/characters with -'?' and allow for two alternatives: - :e ++enc=xxx ++bad=keep foo.txt - :e ++enc=xxx ++bad=drop foo.txt - :e ++enc=xxx ++bad=? foo.txt -(patch 6 December) - ml_get error with specific vimrc and lots of plugins. (Tomi Mickelsson) Win32: preserve the hidden attribute of the viminfo file. @@ -55,6 +47,7 @@ ccomplete: characters, advance to the first match instead of removing the popup menu. If there is no match remove the selection. (Yegappan Lakshmanan) - Complete the longest common match instead of the first match? + For all kinds of completions? Configurable? - !_TAG_FILE_FORMAT and it's ilk are listed in the global completions - When completing something that is a structure, add the "." or "->". - When a typedef or struct is local to a file only use it in that file? diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt index ead361823..c598635a1 100644 --- a/runtime/doc/version7.txt +++ b/runtime/doc/version7.txt @@ -1,4 +1,4 @@ -*version7.txt* For Vim version 7.0aa. Last change: 2005 Dec 12 +*version7.txt* For Vim version 7.0aa. Last change: 2005 Dec 13 VIM REFERENCE MANUAL by Bram Moolenaar @@ -440,6 +440,16 @@ Ex command modifiers: ~ |:sandbox| Execute a command in the sandbox. +Ex command arguments: ~ + +|++bad| Specify what happens with characters that can't be + converted and illegal bytes. (code example by Yasuhiro + Matsumoto) + Also, when a conversion error occurs or illegal bytes + are found include the line number in the error + message. + + New and extended functions: ~ |add()| append an item to a List diff --git a/src/eval.c b/src/eval.c index fe3c5a7ad..fb8e00586 100644 --- a/src/eval.c +++ b/src/eval.c @@ -15712,6 +15712,8 @@ set_cmdarg(eap, oldarg) # ifdef FEAT_MBYTE if (eap->force_enc != 0) len += (unsigned)STRLEN(eap->cmd + eap->force_enc) + 7; + if (eap->bad_char != 0) + len += (unsigned)STRLEN(eap->cmd + eap->bad_char) + 7; # endif newval = alloc(len + 1); @@ -15731,6 +15733,9 @@ set_cmdarg(eap, oldarg) if (eap->force_enc != 0) sprintf((char *)newval + STRLEN(newval), " ++enc=%s", eap->cmd + eap->force_enc); + if (eap->bad_char != 0) + sprintf((char *)newval + STRLEN(newval), " ++bad=%s", + eap->cmd + eap->bad_char); # endif vimvars[VV_CMDARG].vv_str = newval; return oldval; diff --git a/src/ex_cmds.h b/src/ex_cmds.h index c5adaeb1b..87c9e6a23 100644 --- a/src/ex_cmds.h +++ b/src/ex_cmds.h @@ -996,9 +996,10 @@ struct exarg int amount; /* number of '>' or '<' for shift command */ int regname; /* register name (NUL if none) */ int force_bin; /* 0, FORCE_BIN or FORCE_NOBIN */ - int force_ff; /* forced 'fileformat' (index in cmd[]) */ + int force_ff; /* ++ff= argument (index in cmd[]) */ #ifdef FEAT_MBYTE - int force_enc; /* forced 'encoding' (index in cmd[]) */ + int force_enc; /* ++enc= argument (index in cmd[]) */ + int bad_char; /* ++bad= argument (index in cmd[]) */ #endif #ifdef FEAT_USR_CMDS int useridx; /* user command index */