Revision: 10761 https://osdn.net/projects/ttssh2/scm/svn/commits/10761 Author: zmatsuo Date: 2023-06-13 00:20:50 +0900 (Tue, 13 Jun 2023) Log Message: ----------- テスト用文字コードを拡充 - jp_euc.txt 半角カナを追加 - jp_jis_7bit.txt jp_jis.txtからリネーム - dump_code.pl JIS半角表示で未定義文字いを表示しないようにした Modified Paths: -------------- trunk/tests/various_code_texts/dump_code.pl trunk/tests/various_code_texts/jp_euc.txt Added Paths: ----------- trunk/tests/various_code_texts/.editorconfig trunk/tests/various_code_texts/jp_jis_7bit.txt Removed Paths: ------------- trunk/tests/various_code_texts/jp_jis.txt -------------- next part -------------- Added: trunk/tests/various_code_texts/.editorconfig =================================================================== --- trunk/tests/various_code_texts/.editorconfig (rev 0) +++ trunk/tests/various_code_texts/.editorconfig 2023-06-12 15:20:50 UTC (rev 10761) @@ -0,0 +1,3 @@ +[*.txt] +end_of_line = +charset = Modified: trunk/tests/various_code_texts/dump_code.pl =================================================================== --- trunk/tests/various_code_texts/dump_code.pl 2023-06-12 15:20:40 UTC (rev 10760) +++ trunk/tests/various_code_texts/dump_code.pl 2023-06-12 15:20:50 UTC (rev 10761) @@ -35,6 +35,7 @@ return 0; } +# C0, C1, DEL 以外表示可能 sub IsPrintableUTF8 { my $ch= shift; if (IsC0($ch) || IsC1($ch)) { @@ -83,6 +84,22 @@ return 1; } +# 7bit 半角カタカナ +sub IsPrintableJIShankakukatakana { + my $ch= shift; + if (IsC0($ch)) { + return 0; + } + if ($ch == 0x7f) { + # DEL + return 0; + } + if (0x21 <= $ch && $ch <= 0x5f) { + return 1; + } + return 0; +} + sub IsPrintableEUCJP { my $ch= shift; if (IsC0($ch)) { @@ -108,6 +125,7 @@ 'shift_jis' => \&IsPrintableShiftJIS, 'euc-jp' => \&IsPrintableEUCJP, 'jis' => \&IsPrintableJIS, + 'jishankana' => \&IsPrintableJIShankakukatakana, ); sub usage { @@ -234,10 +252,10 @@ u Unicode + UTF-8 CES(character encoding scheme) = UTF-8 U+0000...U+00FF -7 ISO/IEC 2022 7bit (jis) +7 ISO/IEC 2022 7bit (JIS 7bit) s Shift_JIS -e Japanese/EUC (euc-jp) -j JIS +e Japanese/EUC (EUC-JP) +j JIS 8bit q quit EOF print "> "; @@ -263,16 +281,16 @@ ShowCode('iso8859', 0x00, 0xff); } elsif ($c eq '7') { print "GL(0x20-0x7F) <- G0:\n"; - $invoke_enter = chr(0x0f); + $invoke_enter = chr(0x0f); # SI LS0 $invoke_leave = chr(0x0f); ShowCode('utf8', 0x00, 0x7f); print "GL(0x20-0x7F) <- G1:\n"; - $invoke_enter = chr(0x0e); - $invoke_leave = chr(0x0f); - ShowCode('utf8', 0x00, 0x7f); + $invoke_enter = chr(0x0e); # SO LS1 + $invoke_leave = chr(0x0f); # SI LS0 + ShowCode('jishankana', 0x00, 0x7f); print "GL(0x20-0x7F) <- G3, 0x21XX:\n"; $invoke_enter = chr(0x1b) . "o" . chr(0x21); # LS3(GL<-G3) + 0x21xx - $invoke_leave = chr(0x0f); # GL<-G0 + $invoke_leave = chr(0x0f); # SI LS0 (GL<-G0) $cell = 2; ShowCode('utf8', 0x00, 0x7f); $invoke_enter = ""; Modified: trunk/tests/various_code_texts/jp_euc.txt =================================================================== --- trunk/tests/various_code_texts/jp_euc.txt 2023-06-12 15:20:40 UTC (rev 10760) +++ trunk/tests/various_code_texts/jp_euc.txt 2023-06-12 15:20:50 UTC (rev 10761) @@ -14,3 +14,9 @@ \xBE夲\xA1\xA2\xA5\xBD\xA1\xBC\xA5\xB9\xA5\xB3\xA1\xBC\xA5ɤ\xF2\xB0\xEC\xC8̤˸\x{CEB937}\xA4ƥ\xBD\xA5եȥ\xA6\xA5\xA7\xA5\xA2\xA4\xCE\xCD\xF8\xCDѼԤˤ\xE8\xA4\xEB\xCD\xF8\xCDѡ\xA6\xBD\xA4\xC0\xB5\xA1\xA6 \xBA\xC6\xC8\xD2\xC9ۤ\xF2\xB5\x{1A4E64}\xB3\xA4Ȥˤ\xE8\xA4륽\xA5եȥ\xA6\xA5\xA7\xA5\xA2\xB3\xABȯ\xA4\xCEȯŸ\xA4\xF2\xC4\xB7\xA1\xA2\xA5\xAA\xA1\xBC\xA5ץ\xBC\xA5\xB9\xA5\xBD \xA5եȥ\xA6\xA5\xA7\xA5\xA2\xA4\xCEʸ\xB2\xBD\xA4\xAC\xA4Ǥ\xAD\xA4\xA2\xA4\xAC\xA4ä\xBF\xA1\xA3 + +Ⱦ\xB3ѥ\xAB\xA5\xCA,hankakukana (0x8ea1...0x8edf) + \x8E\xA1\x8E\xA2\x8E\xA3\x8E\xA4\x8E\xA5\x8E\xA6\x8E\xA7\x8E\xA8\x8E\xA9\x8E\xAA\x8E\xAB\x8E\xAC\x8E\xAD\x8E\xAE\x8E\xAF +\x8E\xB0\x8E\xB1\x8E\xB2\x8E\xB3\x8E\xB4\x8E\xB5\x8E\xB6\x8E\xB7\x8E\xB8\x8E\xB9\x8E\xBA\x8E\xBB\x8E\xBC\x8E\xBD\x8E\xBE\x8E\xBF +\x8E\xC0\x8E\xC1\x8EÎĎŎƎǎȎɎʎˎ͎̎Ύ\xCF +\x8EЎюҎӎԎՎ֎؎َڎێݎގ\xDF Deleted: trunk/tests/various_code_texts/jp_jis.txt =================================================================== --- trunk/tests/various_code_texts/jp_jis.txt 2023-06-12 15:20:40 UTC (rev 10760) +++ trunk/tests/various_code_texts/jp_jis.txt 2023-06-12 15:20:50 UTC (rev 10761) @@ -1,16 +0,0 @@ -https://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2 - -$B%*!<%W%s%=!<%9%=%U%H%&%'%"!J1Q(B: Open Source Software$B!"N,>N(B: OSS$B!K$H$O!"(B -$BMxMQ<T$NL\E*$rLd$o$:%=!<%9%3!<%I$r;HMQ!"D4::!":FMxMQ!"=$@5!"3HD%!":FG[(B -$BI[$,2DG=$J%=%U%H%&%'%"$NAm>N$G$"$k!#(B - -1950$BG/Be$N%3%s%T%e!<%?>e$G%=%U%H%&%'%"$,2TF/$9$k$h$&$K$J$C$?:"!"3X=Q5!(B -$B4X!&8&5f5!4X$N4V$G%=%U%H%&%'%"$N%=!<%9%3!<%I$O%Q%V%j%C%/%I%a%$%s$G6&M-(B -$B$5$l$F$$$?!#(B1970$BG/BeA08e$h$j%=%U%H%&%'%"3+H/$O=y!9$K>&6H$H$J$j!"%=%U%H(B -$B%&%'%"$N:FHRI[$r6X;_$9$k%W%m%W%i%$%(%?%j!&%=%U%H%&%'%"!"%=!<%9%3!<%I$r(B -$BHs8x3+$H$9$k%/%m!<%:%I%=!<%9$NJ82=$,$G$-$"$,$C$?(B[2]$B!#(B1980$BG/Be$h$jMxMQ(B -$B<T$,%=%U%H%&%'%"$N%=!<%9%3!<%I$r<+M3$KMxMQ$G$-$J$$$3$H$r%9%H%l%9$K46$8(B -$B$??M$?$A$O%U%j!<%=%U%H%&%'%":bCD$d%*!<%W%s%=!<%9!&%$%K%7%"%F%#%V$rN)$A(B -$B>e$2!"%=!<%9%3!<%I$r0lHL$K8x3+$7$F%=%U%H%&%'%"$NMxMQ<T$K$h$kMxMQ!&=$@5!&(B -$B:FHRI[$r5v$9$3$H$K$h$k%=%U%H%&%'%"3+H/$NH/E8$rDs>'$7!"%*!<%W%s%=!<%9%=(B -$B%U%H%&%'%"$NJ82=$,$G$-$"$,$C$?!#(B Copied: trunk/tests/various_code_texts/jp_jis_7bit.txt (from rev 10760, trunk/tests/various_code_texts/jp_jis.txt) =================================================================== --- trunk/tests/various_code_texts/jp_jis_7bit.txt (rev 0) +++ trunk/tests/various_code_texts/jp_jis_7bit.txt 2023-06-12 15:20:50 UTC (rev 10761) @@ -0,0 +1,22 @@ +https://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2 + +$B%*!<%W%s%=!<%9%=%U%H%&%'%"!J1Q(B: Open Source Software$B!"N,>N(B: OSS$B!K$H$O!"(B +$BMxMQ<T$NL\E*$rLd$o$:%=!<%9%3!<%I$r;HMQ!"D4::!":FMxMQ!"=$@5!"3HD%!":FG[(B +$BI[$,2DG=$J%=%U%H%&%'%"$NAm>N$G$"$k!#(B + +1950$BG/Be$N%3%s%T%e!<%?>e$G%=%U%H%&%'%"$,2TF/$9$k$h$&$K$J$C$?:"!"3X=Q5!(B +$B4X!&8&5f5!4X$N4V$G%=%U%H%&%'%"$N%=!<%9%3!<%I$O%Q%V%j%C%/%I%a%$%s$G6&M-(B +$B$5$l$F$$$?!#(B1970$BG/BeA08e$h$j%=%U%H%&%'%"3+H/$O=y!9$K>&6H$H$J$j!"%=%U%H(B +$B%&%'%"$N:FHRI[$r6X;_$9$k%W%m%W%i%$%(%?%j!&%=%U%H%&%'%"!"%=!<%9%3!<%I$r(B +$BHs8x3+$H$9$k%/%m!<%:%I%=!<%9$NJ82=$,$G$-$"$,$C$?(B[2]$B!#(B1980$BG/Be$h$jMxMQ(B +$B<T$,%=%U%H%&%'%"$N%=!<%9%3!<%I$r<+M3$KMxMQ$G$-$J$$$3$H$r%9%H%l%9$K46$8(B +$B$??M$?$A$O%U%j!<%=%U%H%&%'%":bCD$d%*!<%W%s%=!<%9!&%$%K%7%"%F%#%V$rN)$A(B +$B>e$2!"%=!<%9%3!<%I$r0lHL$K8x3+$7$F%=%U%H%&%'%"$NMxMQ<T$K$h$kMxMQ!&=$@5!&(B +$B:FHRI[$r5v$9$3$H$K$h$k%=%U%H%&%'%"3+H/$NH/E8$rDs>'$7!"%*!<%W%s%=!<%9%=(B +$B%U%H%&%'%"$NJ82=$,$G$-$"$,$C$?!#(B + +$BH>3Q%+%J(B,hankakukana (ESC ( I (0x1b 0x28 0x4s) + 0x21...0x5f, 7bit JIS) + (I!"#$%&'()*+,-./(B +(I0123456789:;<=>?(B +(I @ ABCDEFGHIJKLMNO(B +(IPQRSTUVWXYZ[\]^_(B