]> git.pld-linux.org Git - packages/vim.git/blob - 7.3.259
- new
[packages/vim.git] / 7.3.259
1 To: vim_dev@googlegroups.com
2 Subject: Patch 7.3.259
3 Fcc: outbox
4 From: Bram Moolenaar <Bram@moolenaar.net>
5 Mime-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8 ------------
9
10 Patch 7.3.259
11 Problem:    Equivalence classes only work for latin characters.
12 Solution:   Add the Unicode equivalence characters. (Dominique Pelle)
13 Files:      runtime/doc/pattern.txt, src/regexp.c, src/testdir/test44.in,
14             src/testdir/test44.ok
15
16
17 *** ../vim-7.3.258/runtime/doc/pattern.txt      2010-08-15 21:57:14.000000000 +0200
18 --- runtime/doc/pattern.txt     2011-07-20 17:44:03.000000000 +0200
19 ***************
20 *** 1027,1037 ****
21           These items only work for 8-bit characters.
22                                                         */[[=* *[==]*
23         - An equivalence class.  This means that characters are matched that
24 !         have almost the same meaning, e.g., when ignoring accents.  The form
25 !         is:
26                 [=a=]
27 -         Currently this is only implemented for latin1.  Also works for the
28 -         latin1 characters in utf-8 and latin9.
29                                                         */[[.* *[..]*
30         - A collation element.  This currently simply accepts a single
31           character in the form:
32 --- 1036,1044 ----
33           These items only work for 8-bit characters.
34                                                         */[[=* *[==]*
35         - An equivalence class.  This means that characters are matched that
36 !         have almost the same meaning, e.g., when ignoring accents.  This
37 !         only works for Unicode, latin1 and latin9.  The form is:
38                 [=a=]
39                                                         */[[.* *[..]*
40         - A collation element.  This currently simply accepts a single
41           character in the form:
42 *** ../vim-7.3.258/src/regexp.c 2011-06-19 04:31:54.000000000 +0200
43 --- src/regexp.c        2011-07-20 17:56:52.000000000 +0200
44 ***************
45 *** 666,673 ****
46 --- 666,677 ----
47   static void   regc __ARGS((int b));
48   #ifdef FEAT_MBYTE
49   static void   regmbc __ARGS((int c));
50 + # define REGMBC(x) regmbc(x);
51 + # define CASEMBC(x) case x:
52   #else
53   # define regmbc(c) regc(c)
54 + # define REGMBC(x)
55 + # define CASEMBC(x)
56   #endif
57   static void   reginsert __ARGS((int, char_u *));
58   static void   reginsert_limits __ARGS((int, long, long, char_u *));
59 ***************
60 *** 787,854 ****
61         switch (c)
62         {
63             case 'A': case '\300': case '\301': case '\302':
64             case '\303': case '\304': case '\305':
65                       regmbc('A'); regmbc('\300'); regmbc('\301');
66                       regmbc('\302'); regmbc('\303'); regmbc('\304');
67                       regmbc('\305');
68                       return;
69             case 'C': case '\307':
70                       regmbc('C'); regmbc('\307');
71                       return;
72             case 'E': case '\310': case '\311': case '\312': case '\313':
73                       regmbc('E'); regmbc('\310'); regmbc('\311');
74                       regmbc('\312'); regmbc('\313');
75                       return;
76             case 'I': case '\314': case '\315': case '\316': case '\317':
77                       regmbc('I'); regmbc('\314'); regmbc('\315');
78                       regmbc('\316'); regmbc('\317');
79                       return;
80             case 'N': case '\321':
81                       regmbc('N'); regmbc('\321');
82                       return;
83             case 'O': case '\322': case '\323': case '\324': case '\325':
84 !           case '\326':
85                       regmbc('O'); regmbc('\322'); regmbc('\323');
86                       regmbc('\324'); regmbc('\325'); regmbc('\326');
87                       return;
88             case 'U': case '\331': case '\332': case '\333': case '\334':
89                       regmbc('U'); regmbc('\331'); regmbc('\332');
90                       regmbc('\333'); regmbc('\334');
91                       return;
92             case 'Y': case '\335':
93                       regmbc('Y'); regmbc('\335');
94                       return;
95             case 'a': case '\340': case '\341': case '\342':
96             case '\343': case '\344': case '\345':
97                       regmbc('a'); regmbc('\340'); regmbc('\341');
98                       regmbc('\342'); regmbc('\343'); regmbc('\344');
99                       regmbc('\345');
100                       return;
101             case 'c': case '\347':
102                       regmbc('c'); regmbc('\347');
103                       return;
104             case 'e': case '\350': case '\351': case '\352': case '\353':
105                       regmbc('e'); regmbc('\350'); regmbc('\351');
106                       regmbc('\352'); regmbc('\353');
107                       return;
108             case 'i': case '\354': case '\355': case '\356': case '\357':
109                       regmbc('i'); regmbc('\354'); regmbc('\355');
110                       regmbc('\356'); regmbc('\357');
111                       return;
112             case 'n': case '\361':
113                       regmbc('n'); regmbc('\361');
114                       return;
115             case 'o': case '\362': case '\363': case '\364': case '\365':
116 !           case '\366':
117                       regmbc('o'); regmbc('\362'); regmbc('\363');
118                       regmbc('\364'); regmbc('\365'); regmbc('\366');
119                       return;
120             case 'u': case '\371': case '\372': case '\373': case '\374':
121                       regmbc('u'); regmbc('\371'); regmbc('\372');
122                       regmbc('\373'); regmbc('\374');
123                       return;
124             case 'y': case '\375': case '\377':
125                       regmbc('y'); regmbc('\375'); regmbc('\377');
126                       return;
127         }
128   #endif
129 --- 791,1085 ----
130         switch (c)
131         {
132             case 'A': case '\300': case '\301': case '\302':
133 +           CASEMBC(0x100) CASEMBC(0x102) CASEMBC(0x104) CASEMBC(0x1cd)
134 +           CASEMBC(0x1de) CASEMBC(0x1e0) CASEMBC(0x1ea2)
135             case '\303': case '\304': case '\305':
136                       regmbc('A'); regmbc('\300'); regmbc('\301');
137                       regmbc('\302'); regmbc('\303'); regmbc('\304');
138                       regmbc('\305');
139 +                     REGMBC(0x100) REGMBC(0x102) REGMBC(0x104)
140 +                     REGMBC(0x1cd) REGMBC(0x1de) REGMBC(0x1e0)
141 +                     REGMBC(0x1ea2)
142 +                     return;
143 +           case 'B': CASEMBC(0x1e02) CASEMBC(0x1e06)
144 +                     regmbc('B'); REGMBC(0x1e02) REGMBC(0x1e06)
145                       return;
146             case 'C': case '\307':
147 +           CASEMBC(0x106) CASEMBC(0x108) CASEMBC(0x10a) CASEMBC(0x10c)
148                       regmbc('C'); regmbc('\307');
149 +                     REGMBC(0x106) REGMBC(0x108) REGMBC(0x10a)
150 +                     REGMBC(0x10c)
151 +                     return;
152 +           case 'D': CASEMBC(0x10e) CASEMBC(0x110) CASEMBC(0x1e0a)
153 +           CASEMBC(0x1e0e) CASEMBC(0x1e10)
154 +                     regmbc('D'); REGMBC(0x10e) REGMBC(0x110)
155 +                     REGMBC(0x1e0a) REGMBC(0x1e0e) REGMBC(0x1e10)
156                       return;
157             case 'E': case '\310': case '\311': case '\312': case '\313':
158 +           CASEMBC(0x112) CASEMBC(0x114) CASEMBC(0x116) CASEMBC(0x118)
159 +           CASEMBC(0x11a) CASEMBC(0x1eba) CASEMBC(0x1ebc)
160                       regmbc('E'); regmbc('\310'); regmbc('\311');
161                       regmbc('\312'); regmbc('\313');
162 +                     REGMBC(0x112) REGMBC(0x114) REGMBC(0x116)
163 +                     REGMBC(0x118) REGMBC(0x11a) REGMBC(0x1eba)
164 +                     REGMBC(0x1ebc)
165 +                     return;
166 +           case 'F': CASEMBC(0x1e1e)
167 +                     regmbc('F'); REGMBC(0x1e1e)
168 +                     return;
169 +           case 'G': CASEMBC(0x11c) CASEMBC(0x11e) CASEMBC(0x120)
170 +           CASEMBC(0x122) CASEMBC(0x1e4) CASEMBC(0x1e6) CASEMBC(0x1f4)
171 +           CASEMBC(0x1e20)
172 +                     regmbc('G'); REGMBC(0x11c) REGMBC(0x11e)
173 +                     REGMBC(0x120) REGMBC(0x122) REGMBC(0x1e4)
174 +                     REGMBC(0x1e6) REGMBC(0x1f4) REGMBC(0x1e20)
175 +                     return;
176 +           case 'H': CASEMBC(0x124) CASEMBC(0x126) CASEMBC(0x1e22)
177 +           CASEMBC(0x1e26) CASEMBC(0x1e28)
178 +                     regmbc('H'); REGMBC(0x124) REGMBC(0x126)
179 +                     REGMBC(0x1e22) REGMBC(0x1e26) REGMBC(0x1e28)
180                       return;
181             case 'I': case '\314': case '\315': case '\316': case '\317':
182 +           CASEMBC(0x128) CASEMBC(0x12a) CASEMBC(0x12c) CASEMBC(0x12e)
183 +           CASEMBC(0x130) CASEMBC(0x1cf) CASEMBC(0x1ec8)
184                       regmbc('I'); regmbc('\314'); regmbc('\315');
185                       regmbc('\316'); regmbc('\317');
186 +                     REGMBC(0x128) REGMBC(0x12a) REGMBC(0x12c)
187 +                     REGMBC(0x12e) REGMBC(0x130) REGMBC(0x1cf)
188 +                     REGMBC(0x1ec8)
189 +                     return;
190 +           case 'J': CASEMBC(0x134)
191 +                     regmbc('J'); REGMBC(0x134)
192 +                     return;
193 +           case 'K': CASEMBC(0x136) CASEMBC(0x1e8) CASEMBC(0x1e30)
194 +           CASEMBC(0x1e34)
195 +                     regmbc('K'); REGMBC(0x136) REGMBC(0x1e8)
196 +                     REGMBC(0x1e30) REGMBC(0x1e34)
197 +                     return;
198 +           case 'L': CASEMBC(0x139) CASEMBC(0x13b) CASEMBC(0x13d)
199 +           CASEMBC(0x13f) CASEMBC(0x141) CASEMBC(0x1e3a)
200 +                     regmbc('L'); REGMBC(0x139) REGMBC(0x13b)
201 +                     REGMBC(0x13d) REGMBC(0x13f) REGMBC(0x141)
202 +                     REGMBC(0x1e3a)
203 +                     return;
204 +           case 'M': CASEMBC(0x1e3e) CASEMBC(0x1e40)
205 +                     regmbc('M'); REGMBC(0x1e3e) REGMBC(0x1e40)
206                       return;
207             case 'N': case '\321':
208 +           CASEMBC(0x143) CASEMBC(0x145) CASEMBC(0x147) CASEMBC(0x1e44)
209 +           CASEMBC(0x1e48)
210                       regmbc('N'); regmbc('\321');
211 +                     REGMBC(0x143) REGMBC(0x145) REGMBC(0x147)
212 +                     REGMBC(0x1e44) REGMBC(0x1e48)
213                       return;
214             case 'O': case '\322': case '\323': case '\324': case '\325':
215 !           case '\326': case '\330':
216 !           CASEMBC(0x14c) CASEMBC(0x14e) CASEMBC(0x150) CASEMBC(0x1a0)
217 !           CASEMBC(0x1d1) CASEMBC(0x1ea) CASEMBC(0x1ec) CASEMBC(0x1ece)
218                       regmbc('O'); regmbc('\322'); regmbc('\323');
219                       regmbc('\324'); regmbc('\325'); regmbc('\326');
220 +                     regmbc('\330');
221 +                     REGMBC(0x14c) REGMBC(0x14e) REGMBC(0x150)
222 +                     REGMBC(0x1a0) REGMBC(0x1d1) REGMBC(0x1ea)
223 +                     REGMBC(0x1ec) REGMBC(0x1ece)
224 +                     return;
225 +           case 'P': case 0x1e54: case 0x1e56:
226 +                     regmbc('P'); REGMBC(0x1e54) REGMBC(0x1e56)
227 +                     return;
228 +           case 'R': CASEMBC(0x154) CASEMBC(0x156) CASEMBC(0x158)
229 +           CASEMBC(0x1e58) CASEMBC(0x1e5e)
230 +                     regmbc('R'); REGMBC(0x154) REGMBC(0x156) REGMBC(0x158)
231 +                     REGMBC(0x1e58) REGMBC(0x1e5e)
232 +                     return;
233 +           case 'S': CASEMBC(0x15a) CASEMBC(0x15c) CASEMBC(0x15e)
234 +           CASEMBC(0x160) CASEMBC(0x1e60)
235 +                     regmbc('S'); REGMBC(0x15a) REGMBC(0x15c)
236 +                     REGMBC(0x15e) REGMBC(0x160) REGMBC(0x1e60)
237 +                     return;
238 +           case 'T': CASEMBC(0x162) CASEMBC(0x164) CASEMBC(0x166)
239 +           CASEMBC(0x1e6a) CASEMBC(0x1e6e)
240 +                     regmbc('T'); REGMBC(0x162) REGMBC(0x164)
241 +                     REGMBC(0x166) REGMBC(0x1e6a) REGMBC(0x1e6e)
242                       return;
243             case 'U': case '\331': case '\332': case '\333': case '\334':
244 +           CASEMBC(0x168) CASEMBC(0x16a) CASEMBC(0x16c) CASEMBC(0x16e)
245 +           CASEMBC(0x170) CASEMBC(0x172) CASEMBC(0x1af) CASEMBC(0x1d3)
246 +           CASEMBC(0x1ee6)
247                       regmbc('U'); regmbc('\331'); regmbc('\332');
248                       regmbc('\333'); regmbc('\334');
249 +                     REGMBC(0x168) REGMBC(0x16a) REGMBC(0x16c)
250 +                     REGMBC(0x16e) REGMBC(0x170) REGMBC(0x172)
251 +                     REGMBC(0x1af) REGMBC(0x1d3) REGMBC(0x1ee6)
252 +                     return;
253 +           case 'V': CASEMBC(0x1e7c)
254 +                     regmbc('V'); REGMBC(0x1e7c)
255 +                     return;
256 +           case 'W': CASEMBC(0x174) CASEMBC(0x1e80) CASEMBC(0x1e82)
257 +           CASEMBC(0x1e84) CASEMBC(0x1e86)
258 +                     regmbc('W'); REGMBC(0x174) REGMBC(0x1e80)
259 +                     REGMBC(0x1e82) REGMBC(0x1e84) REGMBC(0x1e86)
260 +                     return;
261 +           case 'X': CASEMBC(0x1e8a) CASEMBC(0x1e8c)
262 +                     regmbc('X'); REGMBC(0x1e8a) REGMBC(0x1e8c)
263                       return;
264             case 'Y': case '\335':
265 +           CASEMBC(0x176) CASEMBC(0x178) CASEMBC(0x1e8e) CASEMBC(0x1ef2)
266 +           CASEMBC(0x1ef6) CASEMBC(0x1ef8)
267                       regmbc('Y'); regmbc('\335');
268 +                     REGMBC(0x176) REGMBC(0x178) REGMBC(0x1e8e)
269 +                     REGMBC(0x1ef2) REGMBC(0x1ef6) REGMBC(0x1ef8)
270 +                     return;
271 +           case 'Z': CASEMBC(0x179) CASEMBC(0x17b) CASEMBC(0x17d)
272 +           CASEMBC(0x1b5) CASEMBC(0x1e90) CASEMBC(0x1e94)
273 +                     regmbc('Z'); REGMBC(0x179) REGMBC(0x17b)
274 +                     REGMBC(0x17d) REGMBC(0x1b5) REGMBC(0x1e90)
275 +                     REGMBC(0x1e94)
276                       return;
277             case 'a': case '\340': case '\341': case '\342':
278             case '\343': case '\344': case '\345':
279 +           CASEMBC(0x101) CASEMBC(0x103) CASEMBC(0x105) CASEMBC(0x1ce)
280 +           CASEMBC(0x1df) CASEMBC(0x1e1) CASEMBC(0x1ea3)
281                       regmbc('a'); regmbc('\340'); regmbc('\341');
282                       regmbc('\342'); regmbc('\343'); regmbc('\344');
283                       regmbc('\345');
284 +                     REGMBC(0x101) REGMBC(0x103) REGMBC(0x105)
285 +                     REGMBC(0x1ce) REGMBC(0x1df) REGMBC(0x1e1)
286 +                     REGMBC(0x1ea3)
287 +                     return;
288 +           case 'b': CASEMBC(0x1e03) CASEMBC(0x1e07)
289 +                     regmbc('b'); REGMBC(0x1e03) REGMBC(0x1e07)
290                       return;
291             case 'c': case '\347':
292 +           CASEMBC(0x107) CASEMBC(0x109) CASEMBC(0x10b) CASEMBC(0x10d)
293                       regmbc('c'); regmbc('\347');
294 +                     REGMBC(0x107) REGMBC(0x109) REGMBC(0x10b)
295 +                     REGMBC(0x10d)
296 +                     return;
297 +           case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1d0b)
298 +           CASEMBC(0x1e11)
299 +                     regmbc('d'); REGMBC(0x10f) REGMBC(0x111)
300 +                     REGMBC(0x1e0b) REGMBC(0x01e0f) REGMBC(0x1e11)
301                       return;
302             case 'e': case '\350': case '\351': case '\352': case '\353':
303 +           CASEMBC(0x113) CASEMBC(0x115) CASEMBC(0x117) CASEMBC(0x119)
304 +           CASEMBC(0x11b) CASEMBC(0x1ebb) CASEMBC(0x1ebd)
305                       regmbc('e'); regmbc('\350'); regmbc('\351');
306                       regmbc('\352'); regmbc('\353');
307 +                     REGMBC(0x113) REGMBC(0x115) REGMBC(0x117)
308 +                     REGMBC(0x119) REGMBC(0x11b) REGMBC(0x1ebb)
309 +                     REGMBC(0x1ebd)
310 +                     return;
311 +           case 'f': CASEMBC(0x1e1f)
312 +                     regmbc('f'); REGMBC(0x1e1f)
313 +                     return;
314 +           case 'g': CASEMBC(0x11d) CASEMBC(0x11f) CASEMBC(0x121)
315 +           CASEMBC(0x123) CASEMBC(0x1e5) CASEMBC(0x1e7) CASEMBC(0x1f5)
316 +           CASEMBC(0x1e21)
317 +                     regmbc('g'); REGMBC(0x11d) REGMBC(0x11f)
318 +                     REGMBC(0x121) REGMBC(0x123) REGMBC(0x1e5)
319 +                     REGMBC(0x1e7) REGMBC(0x1f5) REGMBC(0x1e21)
320 +                     return;
321 +           case 'h': CASEMBC(0x125) CASEMBC(0x127) CASEMBC(0x1e23)
322 +           CASEMBC(0x1e27) CASEMBC(0x1e29) CASEMBC(0x1e96)
323 +                     regmbc('h'); REGMBC(0x125) REGMBC(0x127)
324 +                     REGMBC(0x1e23) REGMBC(0x1e27) REGMBC(0x1e29)
325 +                     REGMBC(0x1e96)
326                       return;
327             case 'i': case '\354': case '\355': case '\356': case '\357':
328 +           CASEMBC(0x129) CASEMBC(0x12b) CASEMBC(0x12d) CASEMBC(0x12f)
329 +           CASEMBC(0x1d0) CASEMBC(0x1ec9)
330                       regmbc('i'); regmbc('\354'); regmbc('\355');
331                       regmbc('\356'); regmbc('\357');
332 +                     REGMBC(0x129) REGMBC(0x12b) REGMBC(0x12d)
333 +                     REGMBC(0x12f) REGMBC(0x1d0) REGMBC(0x1ec9)
334 +                     return;
335 +           case 'j': CASEMBC(0x135) CASEMBC(0x1f0)
336 +                     regmbc('j'); REGMBC(0x135) REGMBC(0x1f0)
337 +                     return;
338 +           case 'k': CASEMBC(0x137) CASEMBC(0x1e9) CASEMBC(0x1e31)
339 +           CASEMBC(0x1e35)
340 +                     regmbc('k'); REGMBC(0x137) REGMBC(0x1e9)
341 +                     REGMBC(0x1e31) REGMBC(0x1e35)
342 +                     return;
343 +           case 'l': CASEMBC(0x13a) CASEMBC(0x13c) CASEMBC(0x13e)
344 +           CASEMBC(0x140) CASEMBC(0x142) CASEMBC(0x1e3b)
345 +                     regmbc('l'); REGMBC(0x13a) REGMBC(0x13c)
346 +                     REGMBC(0x13e) REGMBC(0x140) REGMBC(0x142)
347 +                     REGMBC(0x1e3b)
348 +                     return;
349 +           case 'm': CASEMBC(0x1e3f) CASEMBC(0x1e41)
350 +                     regmbc('m'); REGMBC(0x1e3f) REGMBC(0x1e41)
351                       return;
352             case 'n': case '\361':
353 +           CASEMBC(0x144) CASEMBC(0x146) CASEMBC(0x148) CASEMBC(0x149)
354 +           CASEMBC(0x1e45) CASEMBC(0x1e49)
355                       regmbc('n'); regmbc('\361');
356 +                     REGMBC(0x144) REGMBC(0x146) REGMBC(0x148)
357 +                     REGMBC(0x149) REGMBC(0x1e45) REGMBC(0x1e49)
358                       return;
359             case 'o': case '\362': case '\363': case '\364': case '\365':
360 !           case '\366': case '\370':
361 !           CASEMBC(0x14d) CASEMBC(0x14f) CASEMBC(0x151) CASEMBC(0x1a1)
362 !           CASEMBC(0x1d2) CASEMBC(0x1eb) CASEMBC(0x1ed) CASEMBC(0x1ecf)
363                       regmbc('o'); regmbc('\362'); regmbc('\363');
364                       regmbc('\364'); regmbc('\365'); regmbc('\366');
365 +                     regmbc('\370');
366 +                     REGMBC(0x14d) REGMBC(0x14f) REGMBC(0x151)
367 +                     REGMBC(0x1a1) REGMBC(0x1d2) REGMBC(0x1eb)
368 +                     REGMBC(0x1ed) REGMBC(0x1ecf)
369 +                     return;
370 +           case 'p': CASEMBC(0x1e55) CASEMBC(0x1e57)
371 +                     regmbc('p'); REGMBC(0x1e55) REGMBC(0x1e57)
372 +                     return;
373 +           case 'r': CASEMBC(0x155) CASEMBC(0x157) CASEMBC(0x159)
374 +           CASEMBC(0x1e59) CASEMBC(0x1e5f)
375 +                     regmbc('r'); REGMBC(0x155) REGMBC(0x157) REGMBC(0x159)
376 +                     REGMBC(0x1e59) REGMBC(0x1e5f)
377 +                     return;
378 +           case 's': CASEMBC(0x15b) CASEMBC(0x15d) CASEMBC(0x15f)
379 +           CASEMBC(0x161) CASEMBC(0x1e61)
380 +                     regmbc('s'); REGMBC(0x15b) REGMBC(0x15d)
381 +                     REGMBC(0x15f) REGMBC(0x161) REGMBC(0x1e61)
382 +                     return;
383 +           case 't': CASEMBC(0x163) CASEMBC(0x165) CASEMBC(0x167)
384 +           CASEMBC(0x1e6b) CASEMBC(0x1e6f) CASEMBC(0x1e97)
385 +                     regmbc('t'); REGMBC(0x163) REGMBC(0x165) REGMBC(0x167)
386 +                     REGMBC(0x1e6b) REGMBC(0x1e6f) REGMBC(0x1e97)
387                       return;
388             case 'u': case '\371': case '\372': case '\373': case '\374':
389 +           CASEMBC(0x169) CASEMBC(0x16b) CASEMBC(0x16d) CASEMBC(0x16f)
390 +           CASEMBC(0x171) CASEMBC(0x173) CASEMBC(0x1b0) CASEMBC(0x1d4)
391 +           CASEMBC(0x1ee7)
392                       regmbc('u'); regmbc('\371'); regmbc('\372');
393                       regmbc('\373'); regmbc('\374');
394 +                     REGMBC(0x169) REGMBC(0x16b) REGMBC(0x16d)
395 +                     REGMBC(0x16f) REGMBC(0x171) REGMBC(0x173)
396 +                     REGMBC(0x1b0) REGMBC(0x1d4) REGMBC(0x1ee7)
397 +                     return;
398 +           case 'v': CASEMBC(0x1e7d)
399 +                     regmbc('v'); REGMBC(0x1e7d)
400 +                     return;
401 +           case 'w': CASEMBC(0x175) CASEMBC(0x1e81) CASEMBC(0x1e83)
402 +           CASEMBC(0x1e85) CASEMBC(0x1e87) CASEMBC(0x1e98)
403 +                     regmbc('w'); REGMBC(0x175) REGMBC(0x1e81)
404 +                     REGMBC(0x1e83) REGMBC(0x1e85) REGMBC(0x1e87)
405 +                     REGMBC(0x1e98)
406 +                     return;
407 +           case 'x': CASEMBC(0x1e8b) CASEMBC(0x1e8d)
408 +                     regmbc('x'); REGMBC(0x1e8b) REGMBC(0x1e8d)
409                       return;
410             case 'y': case '\375': case '\377':
411 +           CASEMBC(0x177) CASEMBC(0x1e8f) CASEMBC(0x1e99)
412 +           CASEMBC(0x1ef3) CASEMBC(0x1ef7) CASEMBC(0x1ef9)
413                       regmbc('y'); regmbc('\375'); regmbc('\377');
414 +                     REGMBC(0x177) REGMBC(0x1e8f) REGMBC(0x1e99)
415 +                     REGMBC(0x1ef3) REGMBC(0x1ef7) REGMBC(0x1ef9)
416 +                     return;
417 +           case 'z': CASEMBC(0x17a) CASEMBC(0x17c) CASEMBC(0x17e)
418 +           CASEMBC(0x1b6) CASEMBC(0x1e91) CASEMBC(0x1e95)
419 +                     regmbc('z'); REGMBC(0x17a) REGMBC(0x17c)
420 +                     REGMBC(0x17e) REGMBC(0x1b6) REGMBC(0x1e91)
421 +                     REGMBC(0x1e95)
422                       return;
423         }
424   #endif
425 ***************
426 *** 2468,2473 ****
427 --- 2699,2706 ----
428   regmbc(c)
429       int               c;
430   {
431 +     if (!has_mbyte && c > 0xff)
432 +       return;
433       if (regcode == JUST_CALC_SIZE)
434         regsize += (*mb_char2len)(c);
435       else
436 ***************
437 *** 2588,2594 ****
438       else
439         offset = (int)(val - scan);
440       /* When the offset uses more than 16 bits it can no longer fit in the two
441 !      * bytes avaliable.  Use a global flag to avoid having to check return
442        * values in too many places. */
443       if (offset > 0xffff)
444         reg_toolong = TRUE;
445 --- 2821,2827 ----
446       else
447         offset = (int)(val - scan);
448       /* When the offset uses more than 16 bits it can no longer fit in the two
449 !      * bytes available.  Use a global flag to avoid having to check return
450        * values in too many places. */
451       if (offset > 0xffff)
452         reg_toolong = TRUE;
453 *** ../vim-7.3.258/src/testdir/test44.in        2010-08-15 21:57:29.000000000 +0200
454 --- src/testdir/test44.in       2011-07-20 17:36:49.000000000 +0200
455 ***************
456 *** 27,32 ****
457 --- 27,34 ----
458   x/\%U12345678
459   x/[\U1234abcd\u1234\uabcd]
460   x/\%d21879b
461 + x/ [[=A=]]* [[=B=]]* [[=C=]]* [[=D=]]* [[=E=]]* [[=F=]]* [[=G=]]* [[=H=]]* [[=I=]]* [[=J=]]* [[=K=]]* [[=L=]]* [[=M=]]* [[=N=]]* [[=O=]]* [[=P=]]* [[=Q=]]* [[=R=]]* [[=S=]]* [[=T=]]* [[=U=]]* [[=V=]]* [[=W=]]* [[=X=]]* [[=Y=]]* [[=Z=]]*/e
462 + x/ [[=a=]]* [[=b=]]* [[=c=]]* [[=d=]]* [[=e=]]* [[=f=]]* [[=g=]]* [[=h=]]* [[=i=]]* [[=j=]]* [[=k=]]* [[=l=]]* [[=m=]]* [[=n=]]* [[=o=]]* [[=p=]]* [[=q=]]* [[=r=]]* [[=s=]]* [[=t=]]* [[=u=]]* [[=v=]]* [[=w=]]* [[=x=]]* [[=y=]]* [[=z=]]*/e
463   x:?^1?,$w! test.out
464   :e! test.out
465   G:put =matchstr(\"אבגד\", \".\", 0, 2) " ב
466 ***************
467 *** 53,55 ****
468 --- 55,59 ----
469   e y
470   f z
471   g a啷bb
472 + h AÀÁÂÃÄÅĀĂĄǍǞǠẢ BḂḆ CÇĆĈĊČ DĎĐḊḎḐ EÈÉÊËĒĔĖĘĚẺẼ FḞ GĜĞĠĢǤǦǴḠ HĤĦḢḦḨ IÌÍÎÏĨĪĬĮİǏỈ JĴ KĶǨḰḴ LĹĻĽĿŁḺ MḾṀ NÑŃŅŇṄṈ OÒÓÔÕÖØŌŎŐƠǑǪǬỎ PṔṖ Q RŔŖŘṘṞ SŚŜŞŠṠ TŢŤŦṪṮ UÙÚÛÜŨŪŬŮŰŲƯǓỦ VṼ WŴẀẂẄẆ XẊẌ YÝŶŸẎỲỶỸ ZŹŻŽƵẐẔ
473 + i aàáâãäåāăąǎǟǡả bḃḇ cçćĉċč dďđḋḏḑ eèéêëēĕėęěẻẽ fḟ gĝğġģǥǧǵḡ hĥħḣḧḩẖ iìíîïĩīĭįǐỉ jĵǰ kķǩḱḵ lĺļľŀłḻ mḿṁ nñńņňʼnṅṉ oòóôõöøōŏőơǒǫǭỏ pṕṗ q rŕŗřṙṟ sśŝşšṡ tţťŧṫṯẗ uùúûüũūŭůűųưǔủ vṽ wŵẁẃẅẇẘ xẋẍ yýÿŷẏẙỳỷỹ zźżžƶẑẕ
474 *** ../vim-7.3.258/src/testdir/test44.ok        2010-08-15 21:57:29.000000000 +0200
475 --- src/testdir/test44.ok       2011-07-20 17:36:49.000000000 +0200
476 ***************
477 *** 14,19 ****
478 --- 14,21 ----
479   e y
480   f z
481   g abb
482 + h AÀÁÂÃÄÅĀĂĄǍǞǠẢ BḂḆ CÇĆĈĊČ DĎĐḊḎḐ EÈÉÊËĒĔĖĘĚẺẼ FḞ GĜĞĠĢǤǦǴḠ HĤĦḢḦḨ IÌÍÎÏĨĪĬĮİǏỈ JĴ KĶǨḰḴ LĹĻĽĿŁḺ MḾṀ NÑŃŅŇṄṈ OÒÓÔÕÖØŌŎŐƠǑǪǬỎ PṔṖ Q RŔŖŘṘṞ SŚŜŞŠṠ TŢŤŦṪṮ UÙÚÛÜŨŪŬŮŰŲƯǓỦ VṼ WŴẀẂẄẆ XẊẌ YÝŶŸẎỲỶỸ ZŹŻŽƵẐ
483 + i aàáâãäåāăąǎǟǡả bḃḇ cçćĉċč dďđḋḏḑ eèéêëēĕėęěẻẽ fḟ gĝğġģǥǧǵḡ hĥħḣḧḩẖ iìíîïĩīĭįǐỉ jĵǰ kķǩḱḵ lĺļľŀłḻ mḿṁ nñńņňʼnṅṉ oòóôõöøōŏőơǒǫǭỏ pṕṗ q rŕŗřṙṟ sśŝşšṡ tţťŧṫṯẗ uùúûüũūŭůűųưǔủ vṽ wŵẁẃẅẇẘ xẋẍ yýÿŷẏẙỳỷỹ zźżžƶẑ
484   ב
485   בג
486   א
487 *** ../vim-7.3.258/src/version.c        2011-07-20 17:27:17.000000000 +0200
488 --- src/version.c       2011-07-20 17:38:32.000000000 +0200
489 ***************
490 *** 711,712 ****
491 --- 711,714 ----
492   {   /* Add new patch number below this line */
493 + /**/
494 +     259,
495   /**/
496
497 -- 
498 Not too long ago, compress was something you did to garbage...
499
500  /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
501 ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
502 \\\  an exciting new programming language -- http://www.Zimbu.org        ///
503  \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///
This page took 0.079124 seconds and 3 git commands to generate.