blob: d992d4d6fae6c189b39de688d2a2aea94043ab04 [file] [log] [blame]
Bram Moolenaar745c6eb2013-09-19 17:04:30 +02001Tests for regexp with multi-byte encoding and various magic settings.
2Test matchstr() with a count and multi-byte chars.
3See test44 for exactly the same test with re=1.
4
5STARTTEST
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
11x/\Md\*e\{2}f\+/e
12x:set nomagic
13/g\*h\{2}i\+/e
14x/\mj*k\{2}l\+/e
15x/\vm*n{2}o+/e
16x/\V^aa$
17x:set magic
18/\v(a)(b)\2\1\1/e
19x/\V[ab]\(\[xy]\)\1
20x:" Now search for multi-byte without composing char
21/ม
22x:" Now search for multi-byte with composing char
23/ม่
24x:" find word by change of word class
25/ち\<カヨ\>は
26x:" Test \%u, [\u] and friends
27/\%u20ac
28x/[\u4f7f\u5929]\+
29x/\%U12345678
30x/[\U1234abcd\u1234\uabcd]
31x/\%d21879b
32x/ [[=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
33x/ [[=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
34x:" Test backwards search from a multi-byte char
35/x
36x?.
37x:let @w=':%s#comb[i]nations#œ̄ṣ́m̥̄ᾱ̆́#g'
38:@w
Bram Moolenaar96c664a2015-12-31 16:21:52 +010039:"
40:" l Test what 7.3.192 fixed
41/^l
42:s/ \?/ /g
Bram Moolenaar745c6eb2013-09-19 17:04:30 +020043:?^1?,$w! test.out
44:e! test.out
45G:put =matchstr(\"אבגד\", \".\", 0, 2) " ב
46:put =matchstr(\"אבגד\", \"..\", 0, 2) " בג
47:put =matchstr(\"אבגד\", \".\", 0, 0) " א
48:put =matchstr(\"אבגד\", \".\", 4, -1) " ג
49:w!
50:qa!
51ENDTEST
52
531 a aa abb abbccc
542 d dd dee deefff
553 g gg ghh ghhiii
564 j jj jkk jkklll
575 m mm mnn mnnooo
586 x ^aa$ x
597 (a)(b) abbaa
608 axx [ab]xx
619 หม่x อมx
62a อมx หม่x
63b ちカヨは
64c x ¬€x
65d 天使x
66e ü’…™¸y
67f ü’Š¯z
68g a啷bb
69h 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ŹŻŽƵẐẔ
70i 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źżžƶẑẕ
71j 0123❤x
72k combinations
Bram Moolenaar96c664a2015-12-31 16:21:52 +010073l äö üᾱ̆́