version 1.2, 1996/09/21 06:22:54 |
version 1.3, 1996/09/21 23:23:28 |
|
|
lnum = fp->lnum; |
lnum = fp->lnum; |
break; |
break; |
|
|
|
case '{': |
|
case '}': |
|
c = *cmd++; |
|
pos = curwin->w_cursor; |
|
curwin->w_cursor.col = -1; |
|
if(findpar((c=='}')?FORWARD:BACKWARD, 1, NUL, FALSE)) |
|
lnum = curwin->w_cursor.lnum; |
|
curwin->w_cursor = pos; |
|
break; |
|
|
case '/': |
case '/': |
case '?': /* '/' or '?' - search */ |
case '?': /* '/' or '?' - search */ |
c = *cmd++; |
c = *cmd++; |
|
|
* not be expanded between /'s and ?'s or after "'". -- webb |
* not be expanded between /'s and ?'s or after "'". -- webb |
*/ |
*/ |
while (*cmd != NUL && (vim_isspace(*cmd) || isdigit(*cmd) || |
while (*cmd != NUL && (vim_isspace(*cmd) || isdigit(*cmd) || |
vim_strchr((char_u *)".$%'/?-+,;", *cmd) != NULL)) |
vim_strchr((char_u *)".$%'/?-+,;{}", *cmd) != NULL)) |
{ |
{ |
if (*cmd == '\'') |
if (*cmd == '\'') |
{ |
{ |
|
|
/* |
/* |
* Allow spaces within back-quotes to count as part of the argument |
* Allow spaces within back-quotes to count as part of the argument |
* being expanded. |
* being expanded. |
|
* Never accept '<' or '>' inside a file name. |
*/ |
*/ |
expand_pattern = skipwhite(arg); |
expand_pattern = skipwhite(arg); |
for (p = expand_pattern; *p; ++p) |
for (p = expand_pattern; *p; ++p) |
{ |
{ |
if (*p == '\\' && p[1]) |
if (*p == '\\' && p[1]) |
++p; |
++p; |
|
else if ((vim_iswhite(*p) |
#ifdef SPACE_IN_FILENAME |
#ifdef SPACE_IN_FILENAME |
else if (vim_iswhite(*p) && (!(argt & NOSPC) || usefilter)) |
&& (!(argt & NOSPC) || usefilter) |
#else |
|
else if (vim_iswhite(*p)) |
|
#endif |
#endif |
|
) || *p == '<' || *p == '>') |
{ |
{ |
p = skipwhite(p); |
if (p[1] == '&') /* skip ">&" */ |
|
++p; |
|
if (p[1] == '!') /* skip ">&!" */ |
|
++p; |
if (in_quote) |
if (in_quote) |
bow = p; |
bow = p + 1; |
else |
else |
expand_pattern = p; |
expand_pattern = p + 1; |
--p; |
|
} |
} |
else if (*p == '`') |
else if (*p == '`') |
{ |
{ |