forked from aniani/vim
updated for version 7.3.1023
Problem: Searching for composing char only and using \Z has different
results.
Solution: Make it match the composing char, matching everything is not
useful.
This commit is contained in:
@@ -3294,7 +3294,7 @@ nfa_regmatch(start, submatch, m)
|
||||
* (no preceding character). */
|
||||
len += mb_char2len(mc);
|
||||
}
|
||||
if (ireg_icombine)
|
||||
if (ireg_icombine && len == 0)
|
||||
{
|
||||
/* If \Z was present, then ignore composing characters.
|
||||
* When ignoring the base character this always matches. */
|
||||
|
||||
@@ -62,10 +62,12 @@ STARTTEST
|
||||
:call add(tl, [2, "ק\u200d\u05b9x\\Z", "xק\u200dxy", "ק\u200dx"])
|
||||
:call add(tl, [2, "ק\u200dx\\Z", "xק\u200d\u05b9xy", "ק\u200d\u05b9x"])
|
||||
:call add(tl, [2, "ק\u200dx\\Z", "xק\u200dxy", "ק\u200dx"])
|
||||
:"call add(tl, [2, "\u05b9\\Z", "xyz"])
|
||||
:"call add(tl, [2, "\\Z\u05b9", "xyz"])
|
||||
:"call add(tl, [2, "\u05b9\\+\\Z", "xyz", "xyz"])
|
||||
:"call add(tl, [2, "\\Z\u05b9\\+", "xyz", "xyz"])
|
||||
:call add(tl, [2, "\u05b9\\Z", "xyz"])
|
||||
:call add(tl, [2, "\\Z\u05b9", "xyz"])
|
||||
:call add(tl, [2, "\u05b9\\Z", "xy\u05b9z", "y\u05b9"])
|
||||
:call add(tl, [2, "\\Z\u05b9", "xy\u05b9z", "y\u05b9"])
|
||||
:call add(tl, [1, "\u05b9\\+\\Z", "xy\u05b9z\u05b9 ", "y\u05b9z\u05b9"])
|
||||
:call add(tl, [1, "\\Z\u05b9\\+", "xy\u05b9z\u05b9 ", "y\u05b9z\u05b9"])
|
||||
|
||||
:"""" Combining different tests and features
|
||||
:call add(tl, [2, '[^[=a=]]\+', 'ddaãâbcd', 'dd'])
|
||||
|
||||
@@ -94,6 +94,22 @@ OK 2 - קx\Z
|
||||
OK 0 - קx\Z
|
||||
OK 1 - קx\Z
|
||||
OK 2 - קx\Z
|
||||
OK 0 - ֹ\Z
|
||||
OK 1 - ֹ\Z
|
||||
OK 2 - ֹ\Z
|
||||
OK 0 - \Zֹ
|
||||
OK 1 - \Zֹ
|
||||
OK 2 - \Zֹ
|
||||
OK 0 - ֹ\Z
|
||||
OK 1 - ֹ\Z
|
||||
OK 2 - ֹ\Z
|
||||
OK 0 - \Zֹ
|
||||
OK 1 - \Zֹ
|
||||
OK 2 - \Zֹ
|
||||
OK 0 - ֹ\+\Z
|
||||
OK 2 - ֹ\+\Z
|
||||
OK 0 - \Zֹ\+
|
||||
OK 2 - \Zֹ\+
|
||||
OK 0 - [^[=a=]]\+
|
||||
OK 1 - [^[=a=]]\+
|
||||
OK 2 - [^[=a=]]\+
|
||||
|
||||
@@ -728,6 +728,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
1023,
|
||||
/**/
|
||||
1022,
|
||||
/**/
|
||||
|
||||
Reference in New Issue
Block a user