vim-patch:7.4.776 #3062

Problem:  Equivalence class for 'd' does not work correctly.
Solution: Fix 0x1e0f and 0x1d0b. (Dominique Pelle)

Original patch:
  https://code.google.com/p/vim/source/detail?r=94b17958585153641ad1e813fa144cad57c7170f
This commit is contained in:
Marco Hinz 2015-07-21 14:02:14 +02:00 committed by Justin M. Keyes
parent ef6451a113
commit 3df37a8424
3 changed files with 9 additions and 9 deletions

View File

@ -961,10 +961,10 @@ static void reg_equi_class(int c)
REGMBC(0x107) REGMBC(0x109) REGMBC(0x10b)
REGMBC(0x10d)
return;
case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1d0b)
CASEMBC(0x1e11)
case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1e0b)
CASEMBC(0x1e0f) CASEMBC(0x1e11)
regmbc('d'); REGMBC(0x10f) REGMBC(0x111)
REGMBC(0x1e0b) REGMBC(0x01e0f) REGMBC(0x1e11)
REGMBC(0x1e0b) REGMBC(0x1e0f) REGMBC(0x1e11)
return;
case 'e': case '\350': case '\351': case '\352': case '\353':
CASEMBC(0x113) CASEMBC(0x115) CASEMBC(0x117) CASEMBC(0x119)

View File

@ -718,8 +718,8 @@ static int nfa_recognize_char_class(char_u *start, char_u *end, int extra_newl)
*/
static void nfa_emit_equi_class(int c)
{
#define EMIT2(c) EMIT(c); EMIT(NFA_CONCAT);
# define EMITMBC(c) EMIT(c); EMIT(NFA_CONCAT);
#define EMIT2(c) EMIT(c); EMIT(NFA_CONCAT);
#define EMITMBC(c) EMIT(c); EMIT(NFA_CONCAT);
if (enc_utf8 || STRCMP(p_enc, "latin1") == 0
|| STRCMP(p_enc, "iso-8859-15") == 0) {
@ -908,10 +908,10 @@ static void nfa_emit_equi_class(int c)
EMITMBC(0x10b) EMITMBC(0x10d)
return;
case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1d0b)
CASEMBC(0x1e11)
case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1e0b)
CASEMBC(0x1e0f) CASEMBC(0x1e11)
EMIT2('d'); EMITMBC(0x10f) EMITMBC(0x111) EMITMBC(0x1e0b)
EMITMBC(0x01e0f) EMITMBC(0x1e11)
EMITMBC(0x1e0f) EMITMBC(0x1e11)
return;
case 'e': case 0350: case 0351: case 0352: case 0353:

View File

@ -85,7 +85,7 @@ static int included_patches[] = {
//779,
//778,
//777,
//776,
776,
775,
774,
//773,