mirror of
https://github.com/vim/vim.git
synced 2025-09-23 03:43:49 -04:00
updated for version 7.4b.006
Problem: Using \{n,m} in an autocommand pattern no longer works. Specifically, mutt temp files are not recognized. (Gary Johnson) Solution: Make \\\{n,m\} work.
This commit is contained in:
@@ -961,6 +961,9 @@ The pattern is interpreted like mostly used in file names:
|
|||||||
\, matches a ','
|
\, matches a ','
|
||||||
{ } like \( \) in a |pattern|
|
{ } like \( \) in a |pattern|
|
||||||
, inside { }: like \| in a |pattern|
|
, inside { }: like \| in a |pattern|
|
||||||
|
\} literal }
|
||||||
|
\{ literal {
|
||||||
|
\\\{n,m\} like \{n,m} in a |pattern|
|
||||||
\ special meaning like in a |pattern|
|
\ special meaning like in a |pattern|
|
||||||
[ch] matches 'c' or 'h'
|
[ch] matches 'c' or 'h'
|
||||||
[^ch] match any character but 'c' and 'h'
|
[^ch] match any character but 'c' and 'h'
|
||||||
|
10
src/fileio.c
10
src/fileio.c
@@ -10327,7 +10327,7 @@ file_pat_to_reg_pat(pat, pat_end, allow_dirs, no_bslash)
|
|||||||
* Don't unescape \, * and others that are also special in a
|
* Don't unescape \, * and others that are also special in a
|
||||||
* regexp.
|
* regexp.
|
||||||
* An escaped { must be unescaped since we use magic not
|
* An escaped { must be unescaped since we use magic not
|
||||||
* verymagic.
|
* verymagic. Use "\\\{n,m\}"" to get "\{n,m}".
|
||||||
*/
|
*/
|
||||||
if (*++p == '?'
|
if (*++p == '?'
|
||||||
#ifdef BACKSLASH_IN_FILENAME
|
#ifdef BACKSLASH_IN_FILENAME
|
||||||
@@ -10337,8 +10337,14 @@ file_pat_to_reg_pat(pat, pat_end, allow_dirs, no_bslash)
|
|||||||
reg_pat[i++] = '?';
|
reg_pat[i++] = '?';
|
||||||
else
|
else
|
||||||
if (*p == ',' || *p == '%' || *p == '#'
|
if (*p == ',' || *p == '%' || *p == '#'
|
||||||
|| *p == ' ' || *p == '{')
|
|| *p == ' ' || *p == '{' || *p == '}')
|
||||||
reg_pat[i++] = *p;
|
reg_pat[i++] = *p;
|
||||||
|
else if (*p == '\\' && p[1] == '\\' && p[2] == '{')
|
||||||
|
{
|
||||||
|
reg_pat[i++] = '\\';
|
||||||
|
reg_pat[i++] = '{';
|
||||||
|
p += 2;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (allow_dirs != NULL && vim_ispathsep(*p)
|
if (allow_dirs != NULL && vim_ispathsep(*p)
|
||||||
|
@@ -727,6 +727,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 */
|
||||||
|
/**/
|
||||||
|
6,
|
||||||
/**/
|
/**/
|
||||||
5,
|
5,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user