diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2016-12-31 23:43:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-31 23:43:49 +0100 |
commit | 61d4ca214fef227aeb69ff02c2eb39f7a9e1e89e (patch) | |
tree | 5a724f7faf2f494d4aacbe82c7dc7513d6542fef /src/nvim/regexp.c | |
parent | 5366242789a4c2f53c52d2fe2f6be7284fcc73b5 (diff) | |
parent | 137dfdcc4e132616412e7d80e2c5fd879ae85192 (diff) | |
download | rneovim-61d4ca214fef227aeb69ff02c2eb39f7a9e1e89e.tar.gz rneovim-61d4ca214fef227aeb69ff02c2eb39f7a9e1e89e.tar.bz2 rneovim-61d4ca214fef227aeb69ff02c2eb39f7a9e1e89e.zip |
Merge #5804 from brcolow/vim-7.4.1793
vim-patch:7.4.17[83,85,93]
Diffstat (limited to 'src/nvim/regexp.c')
-rw-r--r-- | src/nvim/regexp.c | 80 |
1 files changed, 50 insertions, 30 deletions
diff --git a/src/nvim/regexp.c b/src/nvim/regexp.c index 64a70c295a..6613d284d7 100644 --- a/src/nvim/regexp.c +++ b/src/nvim/regexp.c @@ -2309,48 +2309,64 @@ collection: } break; case CLASS_ALNUM: - for (cu = 1; cu <= 255; cu++) - if (isalnum(cu)) - regc(cu); + for (cu = 1; cu < 128; cu++) { + if (isalnum(cu)) { + regmbc(cu); + } + } break; case CLASS_ALPHA: - for (cu = 1; cu <= 255; cu++) - if (isalpha(cu)) - regc(cu); + for (cu = 1; cu < 128; cu++) { + if (isalpha(cu)) { + regmbc(cu); + } + } break; case CLASS_BLANK: regc(' '); regc('\t'); break; case CLASS_CNTRL: - for (cu = 1; cu <= 255; cu++) - if (iscntrl(cu)) - regc(cu); + for (cu = 1; cu <= 255; cu++) { + if (iscntrl(cu)) { + regmbc(cu); + } + } break; case CLASS_DIGIT: - for (cu = 1; cu <= 255; cu++) - if (ascii_isdigit(cu)) - regc(cu); + for (cu = 1; cu <= 255; cu++) { + if (ascii_isdigit(cu)) { + regmbc(cu); + } + } break; case CLASS_GRAPH: - for (cu = 1; cu <= 255; cu++) - if (isgraph(cu)) - regc(cu); + for (cu = 1; cu <= 255; cu++) { + if (isgraph(cu)) { + regmbc(cu); + } + } break; case CLASS_LOWER: - for (cu = 1; cu <= 255; cu++) - if (vim_islower(cu)) - regc(cu); + for (cu = 1; cu <= 255; cu++) { + if (vim_islower(cu) && cu != 170 && cu != 186) { + regmbc(cu); + } + } break; case CLASS_PRINT: - for (cu = 1; cu <= 255; cu++) - if (vim_isprintc(cu)) - regc(cu); + for (cu = 1; cu <= 255; cu++) { + if (vim_isprintc(cu)) { + regmbc(cu); + } + } break; case CLASS_PUNCT: - for (cu = 1; cu <= 255; cu++) - if (ispunct(cu)) - regc(cu); + for (cu = 1; cu < 128; cu++) { + if (ispunct(cu)) { + regmbc(cu); + } + } break; case CLASS_SPACE: for (cu = 9; cu <= 13; cu++) @@ -2358,14 +2374,18 @@ collection: regc(' '); break; case CLASS_UPPER: - for (cu = 1; cu <= 255; cu++) - if (vim_isupper(cu)) - regc(cu); + for (cu = 1; cu <= 255; cu++) { + if (vim_isupper(cu)) { + regmbc(cu); + } + } break; case CLASS_XDIGIT: - for (cu = 1; cu <= 255; cu++) - if (ascii_isxdigit(cu)) - regc(cu); + for (cu = 1; cu <= 255; cu++) { + if (ascii_isxdigit(cu)) { + regmbc(cu); + } + } break; case CLASS_TAB: regc('\t'); |