diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2006-07-24 22:00:19 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2006-07-24 22:00:19 +0000 |
commit | 50e9ab122b5022d8e90facb6ca01b32996ea16d1 (patch) | |
tree | 0bf441f7d4a77ac25fbe8ddcf8087f8526d72955 /Test | |
parent | 6ca7b6abdf90d68c64bd57ac07d8a52ac6dc075b (diff) | |
download | zsh-50e9ab122b5022d8e90facb6ca01b32996ea16d1.tar.gz zsh-50e9ab122b5022d8e90facb6ca01b32996ea16d1.tar.xz zsh-50e9ab122b5022d8e90facb6ca01b32996ea16d1.zip |
22556: Multibyte separators and delimiters
Diffstat (limited to 'Test')
-rw-r--r-- | Test/D04parameter.ztst | 23 | ||||
-rw-r--r-- | Test/D07multibyte.ztst | 54 |
2 files changed, 77 insertions, 0 deletions
diff --git a/Test/D04parameter.ztst b/Test/D04parameter.ztst index 73e87d0f8..6e97d7450 100644 --- a/Test/D04parameter.ztst +++ b/Test/D04parameter.ztst @@ -725,6 +725,29 @@ >7 >8 +# Tests a long-standing bug with joining on metafied characters in IFS + (array=(one two three) + IFS=$'\0' + foo="$array" + for (( i = 1; i <= ${#foo}; i++ )); do + char=${foo[i]} + print $(( #char )) + done) +0:Joining with NULL character from IFS +>111 +>110 +>101 +>0 +>116 +>119 +>111 +>0 +>116 +>104 +>114 +>101 +>101 + unset SHLVL (( SHLVL++ )) print $SHLVL diff --git a/Test/D07multibyte.ztst b/Test/D07multibyte.ztst index 20c967540..683e8350e 100644 --- a/Test/D07multibyte.ztst +++ b/Test/D07multibyte.ztst @@ -174,3 +174,57 @@ 1:POSIX_IDENTIFIERS option >3 ?(eval):1: command not found: hähä=3 + + foo="Ølaf«Ødd«øpénëd«ån«àpple" + print -l ${(s.«.)foo} + ioh="Ἐν ἀρχῇ ἦν ὁ λόγος, καὶ ὁ λόγος ἦν πρὸς τὸν θεόν, καὶ θεὸς ἦν ὁ λόγος." + print -l ${=ioh} + print ${(w)#ioh} +0:Splitting with multibyte characters +>Ølaf +>Ødd +>øpénëd +>ån +>àpple +>Ἐν +>ἀρχῇ +>ἦν +>ὁ +>λόγος, +>καὶ +>ὁ +>λόγος +>ἦν +>πρὸς +>τὸν +>θεόν, +>καὶ +>θεὸς +>ἦν +>ὁ +>λόγος. +>17 + + read -d £ one + read -d £ two + print $one + print $two +0:read with multibyte delimiter +<first£second£ +>first +>second + + (IFS=« + read -d » -A array + print -l $array) +0:read -A with multibyte IFS +<dominus«illuminatio«mea»ignored +>dominus +>illuminatio +>mea + + read -k2 -u0 twochars + print $twochars +0:read multibyte characters +<«»ignored +>«» |