forked from aniani/vim
updated for version 7.3.171
Problem: When the clipboard isn't supported: ":yank*" gives a confusing error message. Solution: Specifically mention that the register name is invalid. (Jean-Rene David)
This commit is contained in:
@@ -917,8 +917,10 @@ inside of strings can change! Also see 'softtabstop' option. >
|
|||||||
{Visual}["x]Y Yank the highlighted lines [into register x] (for
|
{Visual}["x]Y Yank the highlighted lines [into register x] (for
|
||||||
{Visual} see |Visual-mode|). {not in Vi}
|
{Visual} see |Visual-mode|). {not in Vi}
|
||||||
|
|
||||||
*:y* *:yank*
|
*:y* *:yank* *E850*
|
||||||
:[range]y[ank] [x] Yank [range] lines [into register x].
|
:[range]y[ank] [x] Yank [range] lines [into register x]. Yanking to the
|
||||||
|
"* or "+ registers is possible only in GUI versions or
|
||||||
|
when the |+xterm_clipboard| feature is included.
|
||||||
|
|
||||||
:[range]y[ank] [x] {count}
|
:[range]y[ank] [x] {count}
|
||||||
Yank {count} lines, starting with last line number
|
Yank {count} lines, starting with last line number
|
||||||
|
@@ -2424,25 +2424,39 @@ do_one_cmd(cmdlinep, sourcing,
|
|||||||
if ( (ea.argt & REGSTR)
|
if ( (ea.argt & REGSTR)
|
||||||
&& *ea.arg != NUL
|
&& *ea.arg != NUL
|
||||||
#ifdef FEAT_USR_CMDS
|
#ifdef FEAT_USR_CMDS
|
||||||
&& valid_yank_reg(*ea.arg, (ea.cmdidx != CMD_put
|
|
||||||
&& USER_CMDIDX(ea.cmdidx)))
|
|
||||||
/* Do not allow register = for user commands */
|
/* Do not allow register = for user commands */
|
||||||
&& (!USER_CMDIDX(ea.cmdidx) || *ea.arg != '=')
|
&& (!USER_CMDIDX(ea.cmdidx) || *ea.arg != '=')
|
||||||
#else
|
|
||||||
&& valid_yank_reg(*ea.arg, ea.cmdidx != CMD_put)
|
|
||||||
#endif
|
#endif
|
||||||
&& !((ea.argt & COUNT) && VIM_ISDIGIT(*ea.arg)))
|
&& !((ea.argt & COUNT) && VIM_ISDIGIT(*ea.arg)))
|
||||||
{
|
{
|
||||||
ea.regname = *ea.arg++;
|
#ifndef FEAT_CLIPBOARD
|
||||||
#ifdef FEAT_EVAL
|
/* check these explicitly for a more specific error message */
|
||||||
/* for '=' register: accept the rest of the line as an expression */
|
if (*ea.arg == '*' || *ea.arg == '+')
|
||||||
if (ea.arg[-1] == '=' && ea.arg[0] != NUL)
|
|
||||||
{
|
{
|
||||||
set_expr_line(vim_strsave(ea.arg));
|
errormsg = (char_u *)_(e_invalidreg);
|
||||||
ea.arg += STRLEN(ea.arg);
|
goto doend;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
ea.arg = skipwhite(ea.arg);
|
if (
|
||||||
|
#ifdef FEAT_USR_CMDS
|
||||||
|
valid_yank_reg(*ea.arg, (ea.cmdidx != CMD_put
|
||||||
|
&& USER_CMDIDX(ea.cmdidx)))
|
||||||
|
#else
|
||||||
|
valid_yank_reg(*ea.arg, ea.cmdidx != CMD_put)
|
||||||
|
#endif
|
||||||
|
)
|
||||||
|
{
|
||||||
|
ea.regname = *ea.arg++;
|
||||||
|
#ifdef FEAT_EVAL
|
||||||
|
/* for '=' register: accept the rest of the line as an expression */
|
||||||
|
if (ea.arg[-1] == '=' && ea.arg[0] != NUL)
|
||||||
|
{
|
||||||
|
set_expr_line(vim_strsave(ea.arg));
|
||||||
|
ea.arg += STRLEN(ea.arg);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
ea.arg = skipwhite(ea.arg);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -1561,6 +1561,9 @@ EXTERN char_u e_bufloaded[] INIT(= N_("E139: File is loaded in another buffer"))
|
|||||||
(defined(FEAT_INS_EXPAND) && defined(FEAT_COMPL_FUNC))
|
(defined(FEAT_INS_EXPAND) && defined(FEAT_COMPL_FUNC))
|
||||||
EXTERN char_u e_notset[] INIT(= N_("E764: Option '%s' is not set"));
|
EXTERN char_u e_notset[] INIT(= N_("E764: Option '%s' is not set"));
|
||||||
#endif
|
#endif
|
||||||
|
#ifndef FEAT_CLIPBOARD
|
||||||
|
EXTERN char_u e_invalidreg[] INIT(= N_("E850: Invalid register name"));
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef MACOS_X_UNIX
|
#ifdef MACOS_X_UNIX
|
||||||
EXTERN short disallow_gui INIT(= FALSE);
|
EXTERN short disallow_gui INIT(= FALSE);
|
||||||
|
@@ -714,6 +714,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 */
|
||||||
|
/**/
|
||||||
|
171,
|
||||||
/**/
|
/**/
|
||||||
170,
|
170,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user