|
| 1 | +Tests for regexp with multi-byte encoding and various magic settings. |
| 2 | +Test matchstr() with a count and multi-byte chars. |
| 3 | +See test44 for exactly the same test with re=1. |
| 4 | + |
| 5 | +STARTTEST |
| 6 | +:so mbyte.vim |
| 7 | +:set nocompatible encoding=utf-8 termencoding=latin1 viminfo+=nviminfo |
| 8 | +:set re=2 |
| 9 | +/^1 |
| 10 | +/a*b\{2}c\+/e |
| 11 | +x/\Md\*e\{2}f\+/e |
| 12 | +x:set nomagic |
| 13 | +/g\*h\{2}i\+/e |
| 14 | +x/\mj*k\{2}l\+/e |
| 15 | +x/\vm*n{2}o+/e |
| 16 | +x/\V^aa$ |
| 17 | +x:set magic |
| 18 | +/\v(a)(b)\2\1\1/e |
| 19 | +x/\V[ab]\(\[xy]\)\1 |
| 20 | +x:" Now search for multi-byte without composing char |
| 21 | +/ม |
| 22 | +x:" Now search for multi-byte with composing char |
| 23 | +/ม่ |
| 24 | +x:" find word by change of word class |
| 25 | +/ち\<カヨ\>は |
| 26 | +x:" Test \%u, [\u] and friends |
| 27 | +/\%u20ac |
| 28 | +x/[\u4f7f\u5929]\+ |
| 29 | +x/\%U12345678 |
| 30 | +x/[\U1234abcd\u1234\uabcd] |
| 31 | +x/\%d21879b |
| 32 | +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 |
| 33 | +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 |
| 34 | +x:" Test backwards search from a multi-byte char |
| 35 | +/x |
| 36 | +x?. |
| 37 | +x:let @w=':%s#comb[i]nations#œ̄ṣ́m̥̄ᾱ̆́#g' |
| 38 | +:@w |
| 39 | +:?^1?,$w! test.out |
| 40 | +:e! test.out |
| 41 | +G:put =matchstr(\"אבגד\", \".\", 0, 2) " ב |
| 42 | +:put =matchstr(\"אבגד\", \"..\", 0, 2) " בג |
| 43 | +:put =matchstr(\"אבגד\", \".\", 0, 0) " א |
| 44 | +:put =matchstr(\"אבגד\", \".\", 4, -1) " ג |
| 45 | +:w! |
| 46 | +:qa! |
| 47 | +ENDTEST |
| 48 | + |
| 49 | +1 a aa abb abbccc |
| 50 | +2 d dd dee deefff |
| 51 | +3 g gg ghh ghhiii |
| 52 | +4 j jj jkk jkklll |
| 53 | +5 m mm mnn mnnooo |
| 54 | +6 x ^aa$ x |
| 55 | +7 (a)(b) abbaa |
| 56 | +8 axx [ab]xx |
| 57 | +9 หม่x อมx |
| 58 | +a อมx หม่x |
| 59 | +b ちカヨは |
| 60 | +c x ¬€x |
| 61 | +d 天使x |
| 62 | +e ������y |
| 63 | +f ������z |
| 64 | +g a啷bb |
| 65 | +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ŹŻŽƵẐẔ |
| 66 | +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źżžƶẑẕ |
| 67 | +j 0123❤x |
| 68 | +k combinations |
0 commit comments