# \$B8=:_\$N(B script encoding [email protected]\$kJ}K!\$O!)(B

e\$B1J0f!wCNG=!%6e9)Bg\$G\$9!%e(B

e\$B\$9\$\$^\$;\$s\$,!\$\$o\$+\$i\$J\$+\$C\$?\$N\$G65\$(\$F\$/[email protected]\$5\$\$!%e(B
-K e\$B%*%W%7%g%s\$de(B magic comment e\$B\$K4p\$E\$\$\$F7hDj\$5\$l\$?e(B
e\$B8=:
\$Ne(B script encoding e\$B\$r<B9TCf\$N%9%/%j%W%HFb\$GCN\$k\$K\$Oe(B
e\$B\$I\$&\$9\$l\$P\$\$\$\$\$N\$G\$7\$g\$&\$+!%e(B

e\$B6qBNE*\$JOC\$H\$7\$F\$O!\$e(BRuby/Tk e\$B\$K\$*\$\$\$Fe(B Tk -> Ruby
e\$B\$GJ8;zNs\$rJV\$9:]\$Ke(B
e\$BJ8;zNs\$r\$I\$Ne(B encoding e\$B\$GJV\$9\$Y\$-\$+\$r9M\$(\$?\$H\$-!\$e(B
e\$B\$=\$N;[email protected]\$Ne(B script encoding
e\$B\$GJV\$9J}\$,JXMx\$+\$J\$H9M\$(\$?\$?\$a\$G\$9!%e(B

e\$B\$H\$+\$J\$i!\$e(B

# UTF-8 e\$B\$GJV\$9\$3\$H\$K\$9\$kM=Dj\$G\$9\$,!%e(B

e\$BCN\$k\$3\$H\$,\$G\$-\$J\$1\$l\$P!\$\$9\$Y\$Fe(B UTF-8
e\$B\$GJV\$9\$7\$+\$J\$5\$=\$&\$J\$N\$G\$9\$,!\$e(B
e\$B\$=\$N>l9g\$O<u\$1<h\$C\$?B&\$,KhEYe(B encoding
e\$B\$r\$\$\$8\$kI,MW\$,@8\$8\$=\$&\$G\$9!%e(B

e\$B\$b\$A\$m\$s!\$JQ49\$G\$-\$J\$\$J8;z\$r4^\$s\$G\$\$\$k>l9g\$O\$I\$&\$9\$k\$+\$H\$\$\$&e(B
e\$BLdBj\$,\$"\$k\$3\$H\$O>5CN\$7\$F\$^\$9!%e(B
e\$B\$=\$&\$7\$?>l9g\$Oe(B script encoding e\$B\$re(B UTF-8
e\$B\$K\$7\$F\$b\$i\$&\$+!\$e(B
Ruby/Tk e\$B\$,JV\$9\$Y\$-e(B encoding
[email protected]<(E*\$K;XDj\$7\$F\$b\$i\$&\$D\$b\$j\$G\$9!%e(B

e\$B\$^\$D\$b\$He(B e\$B\$f\$-\$R\$m\$G\$9e(B

In message “Re: [ruby-dev:33488] e\$B8=:_\$Ne(B script encoding
[email protected]\$kJ}K!\$O!)e(B”
on Tue, 29 Jan 2008 11:19:50 +0900, Hidetoshi NAGAI
[email protected] writes:

|e\$B\$9\$\$^\$;\$s\$,!\$\$o\$+\$i\$J\$+\$C\$?\$N\$G65\$(\$F\$/[email protected]\$5\$\$!%e(B
|-K e\$B%*%W%7%g%s\$de(B magic comment e\$B\$K4p\$E\$\$\$F7hDj\$5\$l\$?e(B
|e\$B8=:
\$Ne(B script encoding e\$B\$r<B9TCf\$N%9%/%j%W%HFb\$GCN\$k\$K\$Oe(B
|e\$B\$I\$&\$9\$l\$P\$\$\$\$\$N\$G\$7\$g\$&\$+!%e(B

e\$B\$=\$N%U%!%\$%k\$Ne(Bscript
encodinge\$B\$Oe([email protected]\$i\$l\$^\$9!#e(B

e\$B\$G\$b!"e(B

|e\$B6qBNE*\$JOC\$H\$7\$F\$O!\$e(BRuby/Tk e\$B\$K\$*\$\$\$Fe(B Tk -> Ruby e\$B\$GJ8;zNs\$rJV\$9:]\$Ke(B
|e\$BJ8;zNs\$r\$I\$Ne(B encoding e\$B\$GJV\$9\$Y\$-\$+\$r9M\$(\$?\$H\$-!\$e(B
|e\$B\$=\$N;[email protected]\$Ne(B script encoding e\$B\$GJV\$9J}\$,JXMx\$+\$J\$H9M\$(\$?\$?\$a\$G\$9!%e(B

e\$B\$H\$\$\$&\$3\$H\$O!V\$=\$N;[email protected]!W\$H\$\$\$&\$N\$O!V\$=\$N%U%!%\$%k!W\$G\$O\$J\$/\$F!“e(B
e\$B\$=\$N%a%=%C%I\$N8F\$S=P\$785\$Ne(Bencodinge\$B\$G\$O\$J\$\$\$G\$9\$+\$M\$(!#[email protected]\$H\$9e(B
e\$B\$k\$H!”<B\$O8=>u3N<B\$KCN\$kJ}K!\$O\$J\$\$\$N\$G\$9!#e(B

``                            e\$B\$^\$D\$b\$He(B e\$B\$f\$-\$R\$me(B /:|)``

e\$B1J0f!wCNG=!%6e9)Bg\$G\$9!%e(B

From: Yukihiro M. [email protected]
Subject: [ruby-dev:33491] Re: e\$B8=:_\$Ne(B script encoding
[email protected]\$kJ}K!\$O!)e(B
Date: Tue, 29 Jan 2008 14:27:05 +0900
Message-ID: [email protected]

In message “Re: [ruby-dev:33488] e\$B8=:_\$Ne(B script encoding [email protected]\$kJ}K!\$O!)e(B”
on Tue, 29 Jan 2008 11:19:50 +0900, Hidetoshi NAGAI [email protected] writes:
|e\$B6qBNE*\$JOC\$H\$7\$F\$O!\$e(BRuby/Tk e\$B\$K\$*\$\$\$Fe(B Tk -> Ruby e\$B\$GJ8;zNs\$rJV\$9:]\$Ke(B
|e\$BJ8;zNs\$r\$I\$Ne(B encoding e\$B\$GJV\$9\$Y\$-\$+\$r9M\$(\$?\$H\$-!\$e(B
|e\$B\$=\$N;[email protected]\$Ne(B script encoding e\$B\$GJV\$9J}\$,JXMx\$+\$J\$H9M\$(\$?\$?\$a\$G\$9!%e(B

e\$B\$H\$\$\$&\$3\$H\$O!V\$=\$N;[email protected]!W\$H\$\$\$&\$N\$O!V\$=\$N%U%!%\$%k!W\$G\$O\$J\$/\$F!"e(B
e\$B\$=\$N%a%=%C%I\$N8F\$S=P\$785\$Ne(Bencodinge\$B\$G\$O\$J\$\$\$G\$9\$+\$M\$(!#e(B

e\$B\$"!\$\$4\$a\$s\$J\$5\$\$!%\$=\$NDL\$j\$G\$9!%e(B
require ‘tk’ e\$B\$r\$7\$?%9%/%j%W%H\$Ne(B encoding
e\$B\$rCN\$j\$?\$+\$C\$?\$N\$G\$7\$?!%e(B
tk.rb e\$B\$,FI\$_9~\$^\$l\$F\$\$\$k;[email protected]\$G\$O!V\$=\$N%U%!%\$%k!W\$Oe(B tk.rb
e\$B\$NJ}\$Ke(B
e\$B\$J\$C\$A\$c\$\$\$^\$9\$M!%e(B

[email protected]\$H\$9\$k\$H!"<B\$O8=>u3N<B\$KCN\$kJ}K!\$O\$J\$\$\$N\$G\$9!#e(B

e\$B\$=\$&\$G\$9\$+!%:\$\$j\$^\$7\$?!%e(B
require e\$B\$5\$l\$?%i%\$%V%i%j\$,e(B require e\$B\$7\$?%9%/%j%W%H\$Ne(B
encoding e\$B\$K9g\$o\$;\$F=hM}e(B/e\$BF0:n\$rA*Br\$9\$k\$H\$\$\$&\$N\$Oe(B
e\$B7k9=\$"\$j\$=\$&\$JOC\$K;W\$(\$?\$N\$G\$9\$,!%!%!%e(B

e\$B8F=P85\$Ne(B encoding e\$B>pJs\$r>o\$KJ];}\$7\$F%a%=%C%I\$r8F\$V\$J\$s\$Fe(B
e\$B%3%9%HE*[email protected]\$NOC\$G\$7\$g\$&\$7!\$e(B
require e\$B\$5\$l\$?;[email protected]\$G\$Ne(B require
e\$B85\$N>pJs\$rJ];}\$5\$;\$k\$/\$i\$\$\$J\$ie(B
e\$B\$=\$l\$[\$I%3%9%H\$OBg\$-\$/\$J\$5\$=\$&\$G\$O\$"\$k\$1\$l\$I!\$e(B

e\$B\$+\$H\$\$\$C\$F!\$e(Bscript encoding e\$B\$,6/\$\$NO\$r;}\$C\$F\$\$\$k>u67\$Ge(B
Tk e\$B\$Ne(B encoding_system e\$B\$N>pJs\$re(B default
e\$B\$K\$7\$F\$7\$^\$&\$N\$Oe(B
e\$B>/!94m81\$J5\$\$b\$9\$k\$7!%!%!%e(B

e\$B\$&!A\$`!%\$I\$&\$7\$h\$&!%e(B(^_^;

e\$B\$o\$6\$o\$6;XDj\$7\$F\$b\$i\$o\$M\$P\$J\$i\$J\$\$\$3\$H\$re(B
e\$BA}\$d\$7\$?\$/\$O\$J\$\$\$N\$G\$9\$,!\$e(B

e\$B!Ve(B Tk e\$B\$+\$i\$NLa\$jCM\$Ne(B encoding e\$B\$Oe(B Tk.encoding_system =
e\$B\$Ge(B
[email protected]<(\$7\$F\$/[email protected]\$5\$\$!%e(B
[email protected]<(\$,\$J\$1\$l\$P%7%9%F%`\$K0MB8\$7\$?%G%U%)%k%H\$Ne(B
Tk.encoding_system e\$B\$Ne(B encoding e\$B\$GJV\$5\$l\$^\$9e(B e\$B!We(B

e\$B\$H\$9\$k\$N\$,BEEv\$J\$H\$3\$m\$+\$b\$7\$l\$^\$;\$s!%e(B
e\$B\$I\$J\$?\$+NI\$\$%"%\$%G%#%"\$r\$*;}\$A\$NJ}\$O\$\$\$i\$C\$7\$c\$\$\$^\$;\$s\$+!)e(B

e\$B\$^\$?!\$\$b\$7>e5-\$N\$h\$&\$JBP1~\$H\$;\$6\$k\$r\$(\$J\$\$\$J\$i!\$e(B
Ruby e\$B\$Ne(B encoding -> Tcl/Tk e\$B\$Ne(B encoding
e\$B\$NBP1~I=\$,I,MW\$G\$9!%e(B
e\$B\$3\$l\$r0BA43N<B\$K:[email protected]\$70];}\$G\$-\$k\$h\$&\$K\$9\$k\$?\$a\$K!\$e(B
e\$B\$&\$^\$\$J}K!\$O\$J\$\$\$G\$7\$g\$&\$+!)e(B

[email protected]@%\$G\$9!#e(B

Hidetoshi NAGAI wrote:

[email protected]\$H\$9\$k\$H!"<B\$O8=>u3N<B\$KCN\$kJ}K!\$O\$J\$\$\$N\$G\$9!#e(B

e\$B\$=\$&\$G\$9\$+!%:\$\$j\$^\$7\$?!%e(B
require e\$B\$5\$l\$?%i%\$%V%i%j\$,e(B require e\$B\$7\$?%9%/%j%W%H\$Ne(B
encoding e\$B\$K9g\$o\$;\$F=hM}e(B/e\$BF0:n\$rA*Br\$9\$k\$H\$\$\$&\$N\$Oe(B
e\$B7k9=\$"\$j\$=\$&\$JOC\$K;W\$(\$?\$N\$G\$9\$,!%!%!%e(B

e\$B!Ve(Brequire e\$B\$7\$?%9%/%j%W%H\$Ne(B
encodinge\$B!W\$H\$\$\$&35G0\$,<B:]\$O2?\$r;X\$7\$F\$\$\$ke(B
e\$B\$+!"\$H\$\$\$&\$N\$O\$\$=\$i\$/e(B Ruby 1.9
e\$B\$K\$
[email protected]@\$+\$H;W\$\$\$^\$9!#\$h\$/[email protected]\$oe(B
e\$B\$l\$k!VFbIt%(%s%3!<%G%#%s%[email protected]\$H;W\$&\$N\$G\$9\$,!"e(BPerl e\$B\$de(B
Java e\$B\$J\$ie(B
UTF-8 e\$B\$de(B UTF-16 e\$B\$G7h\$^\$j\$^\$9\$1\$l\$I!“e(BRuby 1.9 e\$B\$Oe(B CSI
e\$B\$J\$?\$a!“7h\$^\$i\$J\$\$\$Ie(B
e\$B\$3\$m\$+!”\$=\$N\$h\$&\$J0lDj\$NFbIt%(%s%3!<%G%#%s%0\$,B8:[email protected]\$b\$”\$j\$^\$9!#e(B

e\$BM#0l9b\$\$3NEY\$G?dDj\$G\$-\$k\$N\$,e(B -K
e\$B\$,;XDj\$5\$l\$F\$\$\$k>l9g\$G!"\$3\$l\$Oe(B -K e\$B\$N%(%se(B
e\$B%3!<%G%#%s%[email protected]\$H;W\$o\$l\$^\$9\$,!#e(B

e\$B\$+\$H\$\$\$C\$F!\$e(Bscript encoding e\$B\$,6/\$\$NO\$r;}\$C\$F\$\$\$k>u67\$Ge(B
Tk e\$B\$Ne(B encoding_system e\$B\$N>pJs\$re(B default e\$B\$K\$7\$F\$7\$^\$&\$N\$Oe(B
e\$B>/!94m81\$J5\$\$b\$9\$k\$7!%!%!%e(B

script encoding
e\$B\$O6/\$\$\$H\$O;W\$\$\$^\$9\$,!"\$=\$l\$b\$^\$?\$=\$N%U%!%\$%k%m!<%+%k\$NOCe(B
e\$B\$G!"\$=\$N%7%9%F%`\$N!VFbIt%(%s%3!<%G%#%s%0!W\$H0c\$&%1!<%9\$O\$=\$l\$J\$j\$K\$"[email protected](B
e\$B\$^\$9\$M!#e(B

e\$B\$o\$6\$o\$6;XDj\$7\$F\$b\$i\$o\$M\$P\$J\$i\$J\$\$\$3\$H\$re(B
e\$BA}\$d\$7\$?\$/\$O\$J\$\$\$N\$G\$9\$,!\$e(B

e\$B!Ve(B Tk e\$B\$+\$i\$NLa\$jCM\$Ne(B encoding e\$B\$Oe(B Tk.encoding_system = e\$B\$Ge(B
[email protected]<(\$7\$F\$/[email protected]\$5\$\$!%e(B
[email protected]<(\$,\$J\$1\$l\$P%7%9%F%`\$K0MB8\$7\$?%G%U%)%k%H\$Ne(B
Tk.encoding_system e\$B\$Ne(B encoding e\$B\$GJV\$5\$l\$^\$9e(B e\$B!We(B

e\$B\$H\$9\$k\$N\$,BEEv\$J\$H\$3\$m\$+\$b\$7\$l\$^\$;\$s!%e(B
e\$B\$I\$J\$?\$+NI\$\$%"%\$%G%#%"\$r\$*;}\$A\$NJ}\$O\$\$\$i\$C\$7\$c\$\$\$^\$;\$s\$+!)e(B

Tk.encoding_system e\$B\$O%7%9%F%`0MB8\$G\$J\$/!"e(BEncoding.default_external
e\$B\$K0le(B
e\$BCW\$5\$;\$F\$*\$\$\$?J}\$,%H%i%V%k\$,>/\$J\$\$\$N\$G\$O\$J\$\$\$+\$J\$!\$H;W\$\$\$^\$9!#e(B

e\$B\$^\$?!\$\$b\$7>e5-\$N\$h\$&\$JBP1~\$H\$;\$6\$k\$r\$(\$J\$\$\$J\$i!\$e(B
Ruby e\$B\$Ne(B encoding -> Tcl/Tk e\$B\$Ne(B encoding e\$B\$NBP1~I=\$,I,MW\$G\$9!%e(B
e\$B\$3\$l\$r0BA43N<B\$K:[email protected]\$70];}\$G\$-\$k\$h\$&\$K\$9\$k\$?\$a\$K!\$e(B
e\$B\$&\$^\$\$J}K!\$O\$J\$\$\$G\$7\$g\$&\$+!)e(B

tk_encoding.each do |name|
enc = Encoding.find(name)
puts ‘%s -> %s’ % [enc.to_s, name]
end
e\$B\$3\$l\$G:n\$l\$^\$9!#e(B

e\$B1J0f!wCNG=!%6e9)Bg\$G\$9!%e(B

From: “NARUSE, Yui” [email protected]
Subject: [ruby-dev:33501] Re: e\$B8=:_\$Ne(B script encoding
[email protected]\$kJ}K!\$O!)e(B
Date: Tue, 29 Jan 2008 19:51:30 +0900
Message-ID: [email protected]

e\$B!Ve(Brequire e\$B\$7\$?%9%/%j%W%H\$Ne(B encodinge\$B!W\$H\$\$\$&35G0\$,<B:]\$O2?\$r;X\$7\$F\$\$\$ke(B
e\$B\$+!"\$H\$\$\$&\$N\$O\$\$=\$i\$/e(B Ruby 1.9 e\$B\$K\$[email protected]@\$+\$H;W\$\$\$^\$9!#\$h\$/[email protected]\$oe(B
e\$B\$l\$k!VFbIt%(%s%3!<%G%#%s%[email protected]\$H;W\$&\$N\$G\$9\$,!"e(BPerl e\$B\$de(B Java e\$B\$J\$ie(B
UTF-8 e\$B\$de(B UTF-16 e\$B\$G7h\$^\$j\$^\$9\$1\$l\$I!“e(BRuby 1.9 e\$B\$Oe(B CSI e\$B\$J\$?\$a!“7h\$^\$i\$J\$\$\$Ie(B
e\$B\$3\$m\$+!”\$=\$N\$h\$&\$J0lDj\$NFbIt%(%s%3!<%G%#%s%0\$,B8:[email protected]\$b\$”\$j\$^\$9!#e(B

e\$B\$^\$D\$b\$H\$5\$s\$K65\$([email protected]\$\$\$?e(B ENCODING
e\$B\$r;n\$7\$F\$\$^\$7\$?\$,!\$e(B
require e\$B\$5\$l\$?%U%!%\$%k\$GDj5A\$5\$l\$?%a%=%C%I\$+\$i8+\$?e(B ENCODING
e\$B\$Oe(B
require e\$B40N;8e\$KB>=j\$+\$i8F\$P\$l\$F\$b\$-\$A\$s\$HJ]\$?\$l\$F\$\$\$^\$9\$M!%e(B
e\$B\$*\$C\$7\$c\$kDL\$j!\$!V0lDj\$NFbIt%(%s%3!<%G%#%s%0\$OB8:
\$7\$J\$\$!W\$He(B
e\$B2r<a\$9\$kJ}\$,NI\$\$\$h\$&\$G\$9!%e(B

e\$BM#0l9b\$\$3NEY\$G?dDj\$G\$-\$k\$N\$,e(B -K e\$B\$,;XDj\$5\$l\$F\$\$\$k>l9g\$G!"\$3\$l\$Oe(B -K e\$B\$N%(%se(B
e\$B%3!<%G%#%s%[email protected]\$H;W\$o\$l\$^\$9\$,!#e(B

e\$B\$J\$k\$[\$I!%e(B
e\$B\$7\$+\$7!\$e(B-K
e\$B\$,;XDj\$5\$l\$?\$+\$I\$&\$+\$O%9%/%j%W%HB&\$+\$i\$O\$o\$+\$i\$J\$\$\$N\$G!\$e(B
e\$B\$3\$l\$K\$h\$C\$FH=CG\$9\$k\$3\$H\$O\$G\$-\$J\$\$\$N\$,;DG0\$G\$9!%e(B
e\$B\$=\$l\$H\$b;d\$,K:[email protected][email protected]\$kJ}K!\$,B8:_\$7\$?\$G\$7\$g\$&\$+!)e(B

Tk.encoding_system e\$B\$O%7%9%F%`0MB8\$G\$J\$/!"e(BEncoding.default_external e\$B\$K0le(B
e\$BCW\$5\$;\$F\$*\$\$\$?J}\$,%H%i%V%k\$,>/\$J\$\$\$N\$G\$O\$J\$\$\$+\$J\$!\$H;W\$\$\$^\$9!#e(B

[email protected]@\$,B-\$j\$^\$;\$s\$G\$7\$?!%e(B
e\$B%7%9%F%`\$K0MB8\$7\$?%G%U%)%k%H\$Ne(B Tk.encoding_system e\$B\$Oe(B
e\$BDL>o\$Oe(B locale e\$B\$K0MB8\$7\$F7h\$^\$j\$^\$9!%e(B
Encoding.default_external e\$B\$bDL>o\$Oe(B locale e\$B0MB8\$G7h\$^\$k\$He(B
e\$B9M\$(\$F\$bNI\$+\$C\$?\$G\$9\$h\$M!)e(B
[email protected]<(\$,L5\$\$>l9g\$Oe(B Encoding.default_external e\$B\$He(B
e\$BL7=b\$7\$J\$\$e(B encoding e\$B\$,@_Dj\$5\$l\$k\$b\$N\$H9M\$(\$F\$\$\$^\$7\$?!%e(B

e\$B\$G\$9\$,!\$e(B-K e\$B%%W%7%g%s\$N\$3\$H\$b9M\$(\$k\$H!\$\$\$C\$7\$c\$kDL\$je(B
[email protected]<(\$,\$J\$1\$l\$Pe(B tk e\$B\$re(B require e\$B\$7\$?;[email protected]\$Ne(B
Encoding.default_external e\$B\$GJV\$9\$h\$&[email protected]_Dj\$5\$l\$^\$9!We(B
e\$B\$H\$9\$kJ}K!\$b\$"\$j\$J\$N\$+\$b\$7\$l\$^\$;\$s!%e(B

e\$B\$G\$b!\$e(B-E e\$B%*%W%7%g%s\$,;XDj\$5\$l\$?>l9g\$r9M\$(\$k\$H!\$e(B
Encoding.default_external e\$B\$K9g\$o\$;\$F\$7\$^\$&\$He(B
e\$B%9%/%j%W%H>e\$Ge(B Tk e\$B\$+\$i\$NLaCM\$rMxMQe(B (e\$BJ8;zNsHf3S\$H\$+e(B)
e\$B\$9\$k:]\$Ke(B
encoding e\$B\$r>o\$K5\$\$K\$7\$J\$1\$l\$P\$J\$i\$:!\$ITJX\$=\$&\$K46\$8\$^\$9!%e(B

e\$B\$I\$&\$9\$k\$N\$,%9%/%j%W%H\$r=q\$/?M\$NIiC4\$r:G>.8B\$K\$9\$k\$+!\$e(B
e\$B\$b\$&>/\$79M\$(\$kI,MW\$,\$"\$j\$=\$&\$G\$9\$M!%e(B

# e\$BB?J,!\$e(BTk.encoding_system e\$B\$He(B Encoding.default_external

e\$B\$OB7\$(\$k\$,!\$e(B

# Tk e\$B"*e(B Ruby e\$B\$N<u\$1EO\$7\$Ne(B encoding

e\$B\$OFHN)[email protected]_Dj2DG=\$H\$\$\$&\$h\$&\$K\$Oe(B

e\$B\$Ke(B

# e\$BB7\$(\$F\$7\$^\$&\$N\$,E,@Z\$JH=CG\$+\$I\$&\$+\$H\$\$\$&OC\$G\$9!%e(B

e\$B\$^\$?!\$\$b\$7>e5-\$N\$h\$&\$JBP1~\$H\$;\$6\$k\$r\$(\$J\$\$\$J\$i!\$e(B
Ruby e\$B\$Ne(B encoding -> Tcl/Tk e\$B\$Ne(B encoding e\$B\$NBP1~I=\$,I,MW\$G\$9!%e(B
e\$B\$3\$l\$r0BA43N<B\$K:[email protected]\$70];}\$G\$-\$k\$h\$&\$K\$9\$k\$?\$a\$K!\$e(B
e\$B\$&\$^\$\$J}K!\$O\$J\$\$\$G\$7\$g\$&\$+!)e(B

tk_encoding.each do |name|
enc = Encoding.find(name)
puts ‘%s -> %s’ % [enc.to_s, name]
end
e\$B\$3\$l\$G:n\$l\$^\$9!#e(B

e\$B\$"!\$\$4\$a\$s\$J\$5\$\$!%e(B
tk e\$B\$Ne(B encoding e\$BL>\$K4p\$E\$\$\$F!\$e(BEncoding.find e\$B\$r;H\$C\$Fe(B
e\$BD>@\BP1~\$9\$ke(B encoding [email protected]\$k\$3\$H\$O\$o\$+\$j\$^\$9!%e(B
aliase e\$B\$K\$D\$\$\$F\$be(B Encoding.aliases e\$B\$N7k2L\$K4p\$E\$\$\$Fe(B
e\$BBP1~\$r8!:w\$9\$k\$h\$&\$K\$9\$l\$P\$J\$s\$H\$+\$J\$j\$=\$&\$G\$9!%e(B

# Encoding.aliases e\$B\$OBP1~4X78\$N\$"\$kA4e(B encoding

e\$BL>\$rLVMe\$7\$F\$\$\$k\$He(B

# e\$B9M\$(\$F\$\$\$\$\$N\$G\$9\$h\$M!)e(B

e\$B5\$\$K\$7\$F\$\$\$?\$N\$OD>@\BP1~\$9\$ke(B encoding e\$B\$G\$O\$J\$/!\$e(B
e\$B\$=\$Ne(B replica e\$B\$,;XDj\$5\$l\$?%1!<%9!\$\$"\$k\$\$\$Oe(B
e\$BD>@\BP1~\$9\$ke(B encoding e\$B\$H6&DL\$Ne(B replica e\$B85\$r;}\$D\$b\$N\$,e(B
e\$B;XDj\$5\$l\$?%1!<%9\$G\$9!%e(B
e\$B\$=\$&\$7\$?>l9g\$K\$O!\$e(Breplica e\$B4X78\$+\$iD>@\BP1~\$9\$ke(B encoding
e\$B\$re(B
e\$B8!:w\$7\$F;XDj\$7\$J\$1\$l\$P\$J\$i\$J\$\$\$h\$&\$K;W\$&\$N\$G\$9\$,!\$e(B
e\$B\$3\$N4X78\$O%9%/%j%W%H>e\$+\$i\$OD4\$Y\$h\$&\$,\$J\$\$\$N\$G\$9\$h\$M!)e(B
e\$B\$=\$l\$H\$b!\$e(Breplica e\$B\$KBP\$9\$k;d\$NB*\$(J}\$,ITE,@Z\$G!\$e(B
e\$B\$b\$74X78\$,\$o\$+\$C\$?\$H\$7\$F\$b\$=\$l\$rA*Br\$7\$F\$O\$J\$i\$J\$\$\$N\$G\$7\$g\$&\$+!)e(B

e\$BBP1~\$G\$-\$k\$b\$N\$,A4\$/B8:_\$7\$J\$\$>l9g\$Oe(B
UTF-8 e\$B\$K\$9\$k\$+Nc30\$r>[email protected]\$H\$O;W\$\$\$^\$9\$,!%!%!%e(B

[email protected]\$G\$9!#e(B

At Wed, 30 Jan 2008 10:19:46 +0900,
Hidetoshi NAGAI wrote in [ruby-dev:33515]:

e\$BBP1~\$G\$-\$k\$b\$N\$,A4\$/B8:_\$7\$J\$\$>l9g\$Oe(B
UTF-8 e\$B\$K\$9\$k\$+Nc30\$r>[email protected]\$H\$O;W\$\$\$^\$9\$,!%!%!%e(B

e\$B\$I\$&\$;e(BTke\$BFbIt\$G\$O\$9\$Y\$Fe(BUTF-8e\$B\$J\$N\$G\$"\$l\$P!"e(BRuby<->Tke\$B\$N\$d\$j\$H\$j\$NCJe(B
e\$B3,\$Ge(BUTF-8e\$B\$KJQ49\$7\$F\$7\$^\$&\$[\$&\$,\$\$\$\$\$s\$8\$c\$J\$\$\$G\$7\$g\$&\$+!#e(B

[email protected]@%\$G\$9!#e(B

Hidetoshi NAGAI wrote:

e\$BM#0l9b\$\$3NEY\$G?dDj\$G\$-\$k\$N\$,e(B -K e\$B\$,;XDj\$5\$l\$F\$\$\$k>l9g\$G!"\$3\$l\$Oe(B -K e\$B\$N%(%se(B
e\$B%3!<%G%#%s%[email protected]\$H;W\$o\$l\$^\$9\$,!#e(B

e\$B\$J\$k\$[\$I!%e(B
e\$B\$7\$+\$7!\$e(B-K e\$B\$,;XDj\$5\$l\$?\$+\$I\$&\$+\$O%9%/%j%W%HB&\$+\$i\$O\$o\$+\$i\$J\$\$\$N\$G!\$e(B
e\$B\$3\$l\$K\$h\$C\$FH=CG\$9\$k\$3\$H\$O\$G\$-\$J\$\$\$N\$,;DG0\$G\$9!%e(B
e\$B\$=\$l\$H\$b;d\$,K:[email protected][email protected]\$kJ}K!\$,B8:_\$7\$?\$G\$7\$g\$&\$+!)e(B

e\$B\$(!<\$C\$H!“e(BKCODE_CHECKER =”\x80"
e\$B\$H\$+=q\$\$\$?%U%!%\$%k\$rCV\$\$\$F!"\$=\$l\$rFI\$9~e(B
e\$B\$`\$H\$+!#e(B-K e\$B\$,;XDj\$5\$l\$F\$\$\$k\$He(B e\$B%G%U%)%k%H\$Ne(B script
encoding e\$B\$,M?\$(\$i\$l\$ke(B
e\$B\$N\$G!"e(BKCODE_CHECKER.encoding e\$B\$,e(B ASCII-8BIT
e\$B0J30\$K\$J\$j\$^\$9!#B8:
\$O\$9\$k\$1e(B
e\$B\$I!<!"\$H\$\$\$&46\$8\$G\$9\$M!J\$)\$#e(B

e\$B\$G\$b!\$e(B-E e\$B%*%W%7%g%s\$,;XDj\$5\$l\$?>l9g\$r9M\$(\$k\$H!\$e(B
Encoding.default_external e\$B\$K9g\$o\$;\$F\$7\$^\$&\$He(B
e\$B%9%/%j%W%H>e\$Ge(B Tk e\$B\$+\$i\$NLaCM\$rMxMQe(B (e\$BJ8;zNsHf3S\$H\$+e(B) e\$B\$9\$k:]\$Ke(B
encoding e\$B\$r>o\$K5\$\$K\$7\$J\$1\$l\$P\$J\$i\$:!\$ITJX\$=\$&\$K46\$8\$^\$9!%e(B

-E
e\$B\$K9g\$o\$;\$FJQ\$o\$k\$Y\$-!"[email protected]\$&<gD%\$G\$7\$?!#FHN)[email protected]\$&<gD%\$b0lM}e(B
e\$B\$"\$k\$H\$O;W\$\$\$^\$9!#e(B

e\$B\$"!\$\$4\$a\$s\$J\$5\$\$!%e(B
tk e\$B\$Ne(B encoding e\$BL>\$K4p\$E\$\$\$F!\$e(BEncoding.find e\$B\$r;H\$C\$Fe(B
e\$BD>@\BP1~\$9\$ke(B encoding [email protected]\$k\$3\$H\$O\$o\$+\$j\$^\$9!%e(B
aliase e\$B\$K\$D\$\$\$F\$be(B Encoding.aliases e\$B\$N7k2L\$K4p\$E\$\$\$Fe(B
e\$BBP1~\$r8!:w\$9\$k\$h\$&\$K\$9\$l\$P\$J\$s\$H\$+\$J\$j\$=\$&\$G\$9!%e(B

‘%s -> %s’ % [enc.to_s, name]
e\$B\$H\$J\$C\$F\$\$\$k\$H\$3\$m\$K0U?^\$,\$"\$C\$F!"<B:]\$Oe(B
Ruby e\$BB&\$Ne(B encoding e\$B\$+\$ie(B Tk e\$BB&\$Ne(B encoding
e\$B\$K\$A\$c\$s\$H\$J\$C\$F\$\$\$^\$9!#e(B

r2t_table = {}
tk_encoding.each do |name|
enc = Encoding.find(name)
r2t_table[enc] = name
end

def rubyenc2tkenc(name)
r2t_table[Encoding.find(name)]
end

e\$B\$3\$l\$G!"e(Balias e\$B\$b9MN8\$7\$Fe(B Ruby e\$B\$Ne(B encoding name
e\$B\$+\$ie(B tk e\$B\$Ne(B encoding name
e\$B\$,<h\$l\$^\$9!#e(B

# e\$B9M\$(\$F\$\$\$\$\$N\$G\$9\$h\$M!)e(B

e\$BLVMe\$7\$F\$\$\$J\$+\$C\$?\$i%P%0\$J\$N\$G65\$(\$F\$/[email protected]\$5\$\$!#;d\$N5\$IU\$\$\$?HO0O\$G\$OLVMe\$5e(B
e\$B\$;\$F\$\$\$k\$O\$:\$G\$9!#e(B

e\$B5\$\$K\$7\$F\$\$\$?\$N\$OD>@\BP1~\$9\$ke(B encoding e\$B\$G\$O\$J\$/!\$e(B
e\$B\$=\$Ne(B replica e\$B\$,;XDj\$5\$l\$?%1!<%9!\$\$"\$k\$\$\$Oe(B
e\$BD>@\BP1~\$9\$ke(B encoding e\$B\$H6&DL\$Ne(B replica e\$B85\$r;}\$D\$b\$N\$,e(B
e\$B;XDj\$5\$l\$?%1!<%9\$G\$9!%e(B
e\$B\$=\$&\$7\$?>l9g\$K\$O!\$e(Breplica e\$B4X78\$+\$iD>@\BP1~\$9\$ke(B encoding e\$B\$re(B
e\$B8!:w\$7\$F;XDj\$7\$J\$1\$l\$P\$J\$i\$J\$\$\$h\$&\$K;W\$&\$N\$G\$9\$,!\$e(B
e\$B\$3\$N4X78\$O%9%/%j%W%H>e\$+\$i\$OD4\$Y\$h\$&\$,\$J\$\$\$N\$G\$9\$h\$M!)e(B
e\$B\$=\$l\$H\$b!\$e(Breplica e\$B\$KBP\$9\$k;d\$NB*\$(J}\$,ITE,@Z\$G!\$e(B
e\$B\$b\$74X78\$,\$o\$+\$C\$?\$H\$7\$F\$b\$=\$l\$rA*Br\$7\$F\$O\$J\$i\$J\$\$\$N\$G\$7\$g\$&\$+!)e(B

e\$B\$(\$’!“4X78\$,\$”\$C\$?\$H\$7\$F\$b\$=\$l\$rABr\$7\$F\$O\$J\$j\$^\$;\$s!#e(Breplica
e\$B4X78\$G\$O4pe(B
e\$BK\E
\$Ke(B CES e\$B\$K\$D\$\$\$F\$7\$+8+\$F\$\$\$^\$;\$s\$+\$i!"F1\$8e(B CES
e\$B\$G\$bA4\$/0c\$&J8;z=89g\$,e(B
e\$BF~\$C\$F\$\$\$k>l9g\$K\$O\$&\$^\$/\$\$\$+\$J\$/\$J\$j\$^\$9!#e(B

e\$B0l1~Cm0U\$9\$l\$Pe(B replica e\$B4X78\$Ge(B fallback
[email protected][email protected]\$H\$O;W\$&\$Ne(B
e\$B\$G\$9\$,!"A4\$F\$Ne(B encoding
e\$B\$rCN\$C\$F\$\$\$k\$o\$1\$G\$b\$J\$\$\$N\$G!“8=;[email protected]\$G\$=\$&\$\$\$C\$?e(B
e\$B5!9=\$r4|BT\$5\$;\$F\$7\$^\$&[email protected]\$H46\$8\$F\$\$\$^\$9!#\$^\$?!”\$h\$&\$Oe(B(chr)1000
e\$B\$_e(B
e\$B\$?\$\$\$J%-%c%9%H\$r\$d\$C\$F\$\$\$k\$3\$H\$KB>\$J\$i\$J\$\$\$N\$G!“[email protected]<(E*\$K;XDj\$7\$F\$[\$7\$\$e(B
e\$B\$J\$!\$H\$\$\$&;W\$\$\$b\$”\$j\$^\$9!#e(B

e\$B8=;[email protected]\$G\$Ne(B replica e\$B\$O!"\$"\$/\$^\$Ge(B encoding
e\$Be\$NET9g\$G!"%f!<%6\$,8+\$k\$be(B
e\$B\$N\$G\$O\$J\$\$!"\$H\$\$\$&\$3\$H\$K\$J\$C\$F\$\$\$k\$H;W\$\$\$^\$9!#e(B

e\$B1J0f!wCNG=!%6e9)Bg\$G\$9!%e(B

Subject: [ruby-dev:33517] Re: e\$B8=:_\$Ne(B script encoding
[email protected]\$kJ}K!\$O!)e(B
Date: Wed, 30 Jan 2008 11:25:38 +0900
Message-ID: [email protected]

e\$B\$I\$&\$;e(BTke\$BFbIt\$G\$O\$9\$Y\$Fe(BUTF-8e\$B\$J\$N\$G\$"\$l\$P!"e(BRuby<->Tke\$B\$N\$d\$j\$H\$j\$NCJe(B
e\$B3,\$Ge(BUTF-8e\$B\$KJQ49\$7\$F\$7\$^\$&\$[\$&\$,\$\$\$\$\$s\$8\$c\$J\$\$\$G\$7\$g\$&\$+!#e(B

e\$B\$(\$(!\$e(BRuby -> Tk e\$B\$O\$9\$Y\$Fe(B UTF-8
e\$B\$K<+F0E*\$KJQ49\$7\$F\$+\$iEO\$7\$F\$^\$9!%e(B
e\$B\$G\$9\$,!\$e(BTk -> Ruby e\$B\$N>l9g\$K\$9\$Y\$Fe(B UTF-8
e\$B\$GLa\$7\$F\$7\$^\$&\$H!\$e(B
e\$B%9%/%j%W%H\$r=q\$/B&\$OKhEYe(B encoding e\$BJQ49\$r0U<1\$7\$?\$je(B
[email protected]<(\$7\$?\$j\$;\$M\$P\$J\$i\$:[email protected]\$H;W\$&\$N\$G\$9!%e(B
e\$B=q\$+\$:\$K:Q\$`\$b\$N\$J\$i\$=\$l\$G:Q\$^\$;\$?\$\$\$G\$9\$h\$M!%e(B

# e\$B2aJ]8n\$G\$9\$+\$M!)e(B

e\$B1J0f!wCNG=!%6e9)Bg\$G\$9!%e(B

From: “NARUSE, Yui” [email protected]
Subject: [ruby-dev:33516] Re: e\$B8=:_\$Ne(B script encoding
[email protected]\$kJ}K!\$O!)e(B
Date: Wed, 30 Jan 2008 11:23:38 +0900
Message-ID: [email protected]

e\$B\$(!<\$C\$H!“e(BKCODE_CHECKER =”\x80" e\$B\$H\$+=q\$\$\$?%U%!%\$%k\$rCV\$\$\$F!"\$=\$l\$rFI\$9~e(B
e\$B\$`\$H\$+!#e(B-K e\$B\$,;XDj\$5\$l\$F\$\$\$k\$He(B e\$B%G%U%)%k%H\$Ne(B script encoding e\$B\$,M?\$(\$i\$l\$ke(B
e\$B\$N\$G!"e(BKCODE_CHECKER.encoding e\$B\$,e(B ASCII-8BIT e\$B0J30\$K\$J\$j\$^\$9!#B8:
\$O\$9\$k\$1e(B
e\$B\$I!<!"\$H\$\$\$&46\$8\$G\$9\$M!J\$)\$#e(B

e\$B\$=\$l\$O\$"\$^\$j\$H\$\$\$(\$P\$"\$s\$^\$j\$J!%e(B(^_^;

r2t_table[Encoding.find(name)]
end

e\$B\$3\$l\$G!"e(Balias e\$B\$b9MN8\$7\$Fe(B Ruby e\$B\$Ne(B encoding name e\$B\$+\$ie(B tk e\$B\$Ne(B encoding name
e\$B\$,<h\$l\$^\$9!#e(B

e\$B\$"\$!!\$\$=\$&\$G\$9\$M!%e(B
e\$B\$D\$\$\$D\$\$J8;zNs\$G\$NL>A0\$+\$iD>@\0z\$/\$3\$H\$r9M\$(\$F\$7\$^\$C\$F\$^\$7\$?!%e(B
Encoding.find e\$B\$G\$-\$A\$s\$He(B Encoding object
[email protected]\$1\$G\$7\$?!%e(B
e\$B\$*CQ\$:\$+\$7\$\$!%e(B

e\$B\$=\$l\$O\$=\$l\$H\$7\$F!\$e(BTcl/Tk8.4 on Linux e\$B\$G\$Ne(B encoding names
e\$B\$Ge(B
[email protected]\$i\$l\$k\$b\$N\$KBP\$7\$F<B9T\$9\$k\$H!\$0J2<\$N\$b\$N\$Ge(B
e\$BBP1~\$9\$k\$b\$N\$,8+\$D\$+\$i\$:\$KNc30\$,@8\$8\$^\$9!%e(B

## X11ControlChars cp153 dingbats ebcdic gb12345 gb2312-raw gb2312 identity iso2022 iso2022-kr jis0201 jis0208 jis0212 ksc5601 macDingbats shiftjis symbol ucs-2be unicode

ebcdic e\$B\$N\$h\$&\$KEvLL\$OHsBP1~\$H\$J\$C\$F\$\$\$k\$b\$N\$d!\$e(B
X11ControlChars e\$B\$de(B symbol e\$B\$N\$h\$&\$Ke(B
ASCII-8BIT e\$B\$K\$9\$k\$7\$+\$J\$5\$=\$&\$J\$b\$N\$b\$"\$j\$^\$9\$,!\$e(B
shiftjis e\$B\$N\$h\$&\$KBP1~\$7\$F\$*\$\$\$?J}\$,\$h\$5\$=\$&\$J\$b\$N\$b\$"\$j\$^\$9!%e(B

# e\$B\$"\$H!\$%a%=%C%IL>\$H\$+\$Ge(B *utf8

e\$B\$H\$+\$N\$h\$&\$K%O%\$%U%s\$J\$7\$J\$N\$,B?\$\$\$N\$G!\$e(B

# encoding e\$B\$N;XDj\$G\$be(B utf8

e\$B\$H%O%\$%U%s\$rK:\$l\$F=q\$\$\$F\$7\$^\$&\$3\$H\$b!%e(B(^_^;

e\$B\$=\$l\$H\$b!\$e(Breplica e\$B\$KBP\$9\$k;d\$NB*\$(J}\$,ITE,@Z\$G!\$e(B
e\$B\$b\$74X78\$,\$o\$+\$C\$?\$H\$7\$F\$b\$=\$l\$rA*Br\$7\$F\$O\$J\$i\$J\$\$\$N\$G\$7\$g\$&\$+!)e(B

e\$B\$(\$’!“4X78\$,\$”\$C\$?\$H\$7\$F\$b\$=\$l\$rABr\$7\$F\$O\$J\$j\$^\$;\$s!#e(Breplica e\$B4X78\$G\$O4pe(B
e\$BK\E
\$Ke(B CES e\$B\$K\$D\$\$\$F\$7\$+8+\$F\$\$\$^\$;\$s\$+\$i!"F1\$8e(B CES e\$B\$G\$bA4\$/0c\$&J8;z=89g\$,e(B
e\$BF~\$C\$F\$\$\$k>l9g\$K\$O\$&\$^\$/\$\$\$+\$J\$/\$J\$j\$^\$9!#e(B

e\$B\$o\$+\$j\$^\$7\$?!%\$"\$j\$,\$H\$&\$4\$6\$\$\$^\$9!%e(B

[email protected]@%\$G\$9!#e(B

Hidetoshi NAGAI wrote:

e\$B\$=\$l\$O\$=\$l\$H\$7\$F!\$e(BTcl/Tk8.4 on Linux e\$B\$G\$Ne(B encoding names e\$B\$Ge(B
[email protected]\$i\$l\$k\$b\$N\$KBP\$7\$F<B9T\$9\$k\$H!\$0J2<\$N\$b\$N\$Ge(B
e\$BBP1~\$9\$k\$b\$N\$,8+\$D\$+\$i\$:\$KNc30\$,@8\$8\$^\$9!%e(B

ebcdic e\$B\$N\$h\$&\$KEvLL\$OHsBP1~\$H\$J\$C\$F\$\$\$k\$b\$N\$d!\$e(B
X11ControlChars e\$B\$de(B symbol e\$B\$N\$h\$&\$Ke(B
ASCII-8BIT e\$B\$K\$9\$k\$7\$+\$J\$5\$=\$&\$J\$b\$N\$b\$"\$j\$^\$9\$,!\$e(B
shiftjis e\$B\$N\$h\$&\$KBP1~\$7\$F\$*\$\$\$?J}\$,\$h\$5\$=\$&\$J\$b\$N\$b\$"\$j\$^\$9!%e(B

e\$B\$(\$C\$H!"e(B

X11ControlChars
dingbats
ebcdic
identity
macDingbats
symbol

e\$B\$^\$:!"\$3\$l\$OI,[email protected]\$C\$?\$ie(B dummy e\$B\$rDj5A\$7\$F\$/[email protected]\$5\$\$!#e(B

iso2022
iso2022-kr

e\$B\$3\$l\$b%9%F!<%H%U%k\$J\$N\$Ge(B dummy e\$B\$K\$7\$F\$/[email protected]\$5\$\$!#e(B

gb2312

e\$B\$3\$l\$O?tF|A0\$K%5%]!<%H\$7\$^\$7\$?!#e(B

gb12345

e\$B\$3\$l\$Oe(B GB2312 e\$B\$Ne(B replica
e\$B\$G\$\$\$\$\$N\$+\$J!&!&!&\$=\$&\$7\$F\$*\$-\$^\$9!#e(B

gb2312-raw
jis0201
jis0208
jis0212
ksc5601

[email protected]\$N%G!<%?\$N\$O\$:\$J\$N\$G\$9\$,!"\$&!<\$s!&!&!&!#e(BJIS X 0212
e\$B\$J\$s\$+C1BNe(B
e\$B\$8\$c5!G=\$7\$J\$\$\$O\$:\$G\$9\$7!"2?\$N\$?\$a\$KB8:_\$9\$k\$N\$+J,\$+\$i\$J\$\$\$N\$GJ]N1\$G!#8=e(B
e\$B;[email protected]\$G\$Oe(B ASCII-8BIT e\$B\$+!<!&!&!&e(B2e\$B%P%\$%H8GDj\$J\$N\$+\$J\$!!#e(B

e\$B<B:]\$K\$I\$s\$JCf?H\$J\$N\$+\$N>pJs\$,\$"\$C\$?\$i65\$(\$F\$/[email protected]\$5\$\$!#e(B

ucs-2be
unicode

UCS-2BE e\$B\$Oe(B UTF-16BE e\$B\$Ne(B alias e\$B\$K\$7\$H\$-\$^\$9!#e(B
unicode e\$B\$Oe(B UTF-16LE
[email protected]\$H;W\$&\$N\$G\$9\$,!"\$A\$g\$C\$H\$3\$l\$rK\BN\$G%5%]!<%He(B
e\$B\$9\$k\$N\$O\$?\$a\$i\$o\$l\$k\$N\$Ge(B Tk e\$BB&\$G\$d\$C\$F\$/[email protected]\$5\$\$\$^\$7!#e(B

cp153

e\$B\$3\$l\$O\$6\$C\$H\$0\$0\$C\$F=P\$F\$3\$J\$+\$C\$?\$N\$G8e\$G2~\$a\$FD4\$Y\$^\$9!#e(B

shiftjis

# encoding e\$B\$N;XDj\$G\$be(B utf8 e\$B\$H%O%\$%U%s\$rK:\$l\$F=q\$\$\$F\$7\$^\$&\$3\$H\$b!%e(B(^_^;

e\$B\$&!<\$s!"\$3\$l\$OB>\$NJ}\$N0U8+\$bJ9\$\$\$F\$_\$?\$\$\$G\$9!#3N\$+\$Ke(B oneliner
e\$B\$Ge(B utf8 e\$B\$He(B
e\$B\$+=q\$-\$?\$/\$J\$k\$3\$H\$O\$"\$k\$s\$G\$9\$1\$I\$M!#e(B

e\$B1J0f!wCNG=!%6e9)Bg\$G\$9!%e(B

From: “NARUSE, Yui” [email protected]
Subject: [ruby-dev:33522] Re: e\$B8=:_\$Ne(B script encoding
[email protected]\$kJ}K!\$O!)e(B
Date: Wed, 30 Jan 2008 14:43:29 +0900
Message-ID: [email protected]

cp153

e\$B\$3\$l\$O\$6\$C\$H\$0\$0\$C\$F=P\$F\$3\$J\$+\$C\$?\$N\$G8e\$G2~\$a\$FD4\$Y\$^\$9!#e(B

e\$B\$4\$a\$s\$J\$5\$\$!*e(B e\$B\$3\$l!\$e(B"cp1253" e\$B\$G\$7\$?e(B
e\$BJ8;zNs\$r%3%T!<\$7\$?\$H\$-\$K\$J\$<\$+7gMn\$7\$?\$_\$?\$\$\$G\$9!%e(B
e\$B\$7\$?\$,\$C\$F!\$e(Bcp153 e\$B\$J\$s\$F\$b\$N\$O\$"\$j\$^\$;\$s\$G\$7\$?!%e(B
e\$B?=\$7Lu\$"\$j\$^\$;\$s!%\$3\$NJ,\$OL5;k\$7\$F\$/[email protected]\$5\$\$!%e(B

In article [email protected],
“NARUSE, Yui” [email protected] writes:

gb12345

e\$B\$3\$l\$Oe(B GB2312 e\$B\$Ne(B replica e\$B\$G\$\$\$\$\$N\$+\$J!&!&!&\$=\$&\$7\$F\$*\$-\$^\$9!#e(B

[ruby-dev:33080] e\$B\$r=q\$\$\$?\$H\$-\$KD4\$Y\$?\$N\$G\$9\$,!"\$*\$=\$i\$/!"e(B
jis0208 e\$B\$de(B jis0212 e\$B\$H\$+\$HF1\$8\$h\$&[email protected]\$H;W\$\$\$^\$9!#e(B

[email protected]@%\$G\$9!#e(B

Tanaka A. wrote:

In article [email protected],
“NARUSE, Yui” [email protected] writes:

gb12345
e\$B\$3\$l\$Oe(B GB2312 e\$B\$Ne(B replica e\$B\$G\$\$\$\$\$N\$+\$J!&!&!&\$=\$&\$7\$F\$*\$-\$^\$9!#e(B

[ruby-dev:33080] e\$B\$r=q\$\$\$?\$H\$-\$KD4\$Y\$?\$N\$G\$9\$,!"\$*\$=\$i\$/!"e(B
jis0208 e\$B\$de(B jis0212 e\$B\$H\$+\$HF1\$8\$h\$&[email protected]\$H;W\$\$\$^\$9!#e(B

GB2312
e\$B\$rHKBN;z\$K\$7\$?J8;z=89g\$i\$7\$\$\$N\$G\$9\$,!"[email protected]\$C\$F\$\$\$k!Ve(BGB12345e\$B!We(B
e\$B\$,\$=\$NJ8;z=89g\$re(B EUC-CN
e\$B\$G%(%s%3!<%[email protected]\$J\$N\$+\$,\$o\$+\$i\$J\$\$\$N\$G\$9\$he(B
e\$B\$M\$’!#e(B

In article [email protected],
Tanaka A. [email protected] writes:

GB2312 e\$B\$rHKBN;z\$K\$7\$?J8;z=89g\$i\$7\$\$\$N\$G\$9\$,!"[email protected]\$C\$F\$\$\$k!Ve(BGB12345e\$B!We(B
e\$B\$,\$=\$NJ8;z=89g\$re(B EUC-CN e\$B\$G%(%s%3!<%[email protected]\$J\$N\$+\$,\$o\$+\$i\$J\$\$\$N\$G\$9\$he(B
e\$B\$M\$’!#e(B

e\$B\$*\$=\$i\$/!"@8\$G\$9!#e(B

e\$B\$;\$C\$+\$/\$J\$N\$G;n\$7\$F\$_\$^\$7\$?!#e(B

UTF-8 e\$B\$J4D6-\$G!"0J2<\$N\$h\$&\$Ke(B HIRAGANA LETTER A e\$B\$J\$I\$,e(B ASCII
e\$BJ8;z\$H\$7\$F=P\$F\$-\$^\$9!#e(B(gb2312 e\$B\$K\$O\$R\$i\$,\$J\$bF~\$C\$F\$\$\$k\$N\$G!"e(B
gb12345 e\$B\$K\$bF~\$C\$F\$\$\$k\$N\$G\$7\$g\$&e(B)

% tclsh
% encoding convertto gb12345 e\$B\$"\$\$\$&\$(\$e(B
\$"\$\$\$&\$(\$

encoding convertto e\$B\$O7k2L\$re(B ISO-8859-1
e\$B\$JJ8;zNs\$H\$9\$k\$h\$&\$G!"e(B
gb12345 e\$B\$NItJ,\$re(B euc-jp e\$B\$K\$9\$k\$H!"e(B0xa4 e\$B\$KBP1~\$9\$ke(B
CURRENCY
SIGN e\$B\$J\$I\$,I=<(\$5\$l\$^\$9!#e(B

e\$B\$^\$?!"e(BASCIIe\$BJ8;z\$rM?\$(\$k\$H2=\$1\$^\$9!#e(B

% encoding convertto gb12345 abcd
#?#?#?#?

e\$B\$H\$\$\$&\$o\$1\$G!"[email protected]\$G\$9!#e(B

[email protected]@%\$G\$9!#e(B

Tanaka A. wrote:

e\$B\$H\$\$\$&\$o\$1\$G!"[email protected]\$G\$9!#e(B

e\$B\$U!<\$`!"\$J\$k\$[\$I!#e(B
e\$B\$3\$&\$\$\$&\$N\$O\$I\$&\$7\$^\$7\$g\$&\$+\$M\$’!#e(B
16bit
e\$B8GDj\$N%(%s%3!<%G%#%s%0\$r:n\$k\$H\$\$\$&<j\$b2DG=\$G\$O\$"\$k\$1\$l\$I!"e(Bdummy
e\$B\$Ne(B
e\$BJ}\$,\$\$\$\$\$N\$+\$J\$!!#e(B

In article [email protected],
“NARUSE, Yui” [email protected] writes:

e\$B\$3\$&\$\$\$&\$N\$O\$I\$&\$7\$^\$7\$g\$&\$+\$M\$’!#e(B
16bit e\$B8GDj\$N%(%s%3!<%G%#%s%0\$r:n\$k\$H\$\$\$&<j\$b2DG=\$G\$O\$"\$k\$1\$l\$I!"e(Bdummy e\$B\$Ne(B
e\$BJ}\$,\$\$\$\$\$N\$+\$J\$!!#e(B

locale encoding e\$B\$K\$O\$J\$i\$J\$\$\$N\$G\$=\$b\$=\$bITMW\$J\$h\$&\$K;W\$&\$s\$Ge(B
e\$B\$9\$,!“I,MW\$J\$3\$H\$C\$F\$”\$k\$s\$G\$7\$?\$C\$1e(B?

In article [email protected],
“NARUSE, Yui” [email protected] writes:

GB2312 e\$B\$rHKBN;z\$K\$7\$?J8;z=89g\$i\$7\$\$\$N\$G\$9\$,!"[email protected]\$C\$F\$\$\$k!Ve(BGB12345e\$B!We(B
e\$B\$,\$=\$NJ8;z=89g\$re(B EUC-CN e\$B\$G%(%s%3!<%[email protected]\$J\$N\$+\$,\$o\$+\$i\$J\$\$\$N\$G\$9\$he(B
e\$B\$M\$’!#e(B

e\$B\$*\$=\$i\$/!"@8\$G\$9!#e(B

tcl8.5.0 e\$B\$Ne(B library/encoding/gb12345.enc e\$B\$He(B
library/encoding/jis0208.enc e\$B\$de(B
library/encoding/gb2312.enc e\$B\$rHf3S\$7\$F!"\$\$\$/\$i\$+A[A|NO\$rF/\$+e(B
e\$B\$;\$k\$H!"@[email protected]\$H;d\$O9M\$(\$^\$7\$?!#e(B

[email protected]@%\$G\$9!#e(B

Tanaka A. wrote:

In article removed_email_[email protected],
“NARUSE, Yui” [email protected] writes:

e\$B\$3\$&\$\$\$&\$N\$O\$I\$&\$7\$^\$7\$g\$&\$+\$M\$’!#e(B
16bit e\$B8GDj\$N%(%s%3!<%G%#%s%0\$r:n\$k\$H\$\$\$&<j\$b2DG=\$G\$O\$"\$k\$1\$l\$I!"e(Bdummy e\$B\$Ne(B
e\$BJ}\$,\$\$\$\$\$N\$+\$J\$!!#e(B

locale encoding e\$B\$K\$O\$J\$i\$J\$\$\$N\$G\$=\$b\$=\$bITMW\$J\$h\$&\$K;W\$&\$s\$Ge(B
e\$B\$9\$,!“I,MW\$J\$3\$H\$C\$F\$”\$k\$s\$G\$7\$?\$C\$1e(B?

e\$B\$?\$7\$+e(B GNU libiconv
e\$B\$b\$3\$N<[email protected]%G!<%?\$KBP1~\$7\$F\$\$\$?5\$\$,\$9\$k\$N\$G!“e(Blocale
encoding
e\$B\$K\$O\$J\$i\$J\$/\$H\$b!”\$J\$K\$+\$7\$iK\BN\$G07\$&%K!<%:\$,B8:_\$9\$k\$N\$+\$J\$!e(B
e\$B\$H!#e(BISO 2022
[email protected]\$1\$H\$+\$J\$i!";He(B
e\$B\$&;~\$K<+J,\$Ge(B dummy e\$B\$K\$7\$F\$M!"\$G\$\$\$\$\$N\$G\$9\$,!#e(B

In article [email protected],
“NARUSE, Yui” [email protected] writes:

e\$B\$?\$7\$+e(B GNU libiconv e\$B\$b\$3\$N<[email protected]%G!<%?\$KBP1~\$7\$F\$\$\$?5\$\$,\$9\$k\$N\$G!“e(Blocale
encoding e\$B\$K\$O\$J\$i\$J\$/\$H\$b!”\$J\$K\$+\$7\$iK\BN\$G07\$&%K!<%:\$,B8:_\$9\$k\$N\$+\$J\$!e(B
e\$B\$H!#e(BISO 2022 [email protected]\$1\$H\$+\$J\$i!";He(B
e\$B\$&;~\$K<+J,\$Ge(B dummy e\$B\$K\$7\$F\$M!"\$G\$\$\$\$\$N\$G\$9\$,!#e(B

e\$B\$=\$l\$O%K!<%:\$,[email protected]\$7\$F\$+\$i\$G\$\$\$\$\$N\$G\$O!#e(B

e\$B\$"\$H!"e(BASCII e\$BHs8_49\$J%(%s%3!<%G%#%s%0\$O\$7\$P\$i\$/e(B UTF-16
e\$B\$G7P83e(B
[email protected]\$[\$&\$,\$\$\$\$\$N\$G\$O\$J\$\$\$+\$H;W\$C\$F\$\$\$^\$9!#e(B

test_utf16.rb e\$B\$,\$\$\$/\$D\$+<:GT\$7\$F\$\$\$k\$h\$&\$K!"\$A\$c\$s\$H07\$(\$k\$oe(B
e\$B\$1\$G\$O\$"\$j\$^\$;\$s\$+\$i!#e(B

e\$B\$G\$b!“e(Bgb12345 [email protected]\$He(B ASCII e\$BJ8;z\$b\$J\$\$\$+\$ie(B UTF-16
e\$B\$H\$O0[\$Je(B
e\$B\$kLq2p\$5\$b\$”\$C\$F6=L#?<\$\$\$+\$J!#e(BASCII e\$BJ8;z\$,\$J\$\$\$H\$\$\$&[email protected]\$G\$Oe(B
BINARY e\$B\$NLq2p\$5\$H\$b=E\$J\$j\$^\$9\$M!#e(B

[email protected]@%\$G\$9!#e(B

Tanaka A. wrote:

In article [email protected],
“NARUSE, Yui” [email protected] writes:

e\$B\$?\$7\$+e(B GNU libiconv e\$B\$b\$3\$N<[email protected]%G!<%?\$KBP1~\$7\$F\$\$\$?5\$\$,\$9\$k\$N\$G!“e(Blocale
encoding e\$B\$K\$O\$J\$i\$J\$/\$H\$b!”\$J\$K\$+\$7\$iK\BN\$G07\$&%K!<%:\$,B8:_\$9\$k\$N\$+\$J\$!e(B
e\$B\$H!#e(BISO 2022 [email protected]\$1\$H\$+\$J\$i!";He(B
e\$B\$&;~\$K<+J,\$Ge(B dummy e\$B\$K\$7\$F\$M!"\$G\$\$\$\$\$N\$G\$9\$,!#e(B

e\$B\$=\$l\$O%K!<%:\$,[email protected]\$7\$F\$+\$i\$G\$\$\$\$\$N\$G\$O!#e(B

e\$B\$=\$&\$G\$9\$M!#e(B

e\$B\$"\$H!"e(BASCII e\$BHs8_49\$J%(%s%3!<%G%#%s%0\$O\$7\$P\$i\$/e(B UTF-16 e\$B\$G7P83e(B
[email protected]\$[\$&\$,\$\$\$\$\$N\$G\$O\$J\$\$\$+\$H;W\$C\$F\$\$\$^\$9!#e(B

test_utf16.rb e\$B\$,\$\$\$/\$D\$+<:GT\$7\$F\$\$\$k\$h\$&\$K!"\$A\$c\$s\$H07\$(\$k\$oe(B
e\$B\$1\$G\$O\$"\$j\$^\$;\$s\$+\$i!#e(B

e\$B\$G\$b!“e(Bgb12345 [email protected]\$He(B ASCII e\$BJ8;z\$b\$J\$\$\$+\$ie(B UTF-16 e\$B\$H\$O0[\$Je(B
e\$B\$kLq2p\$5\$b\$”\$C\$F6=L#?<\$\$\$+\$J!#e(BASCII e\$BJ8;z\$,\$J\$\$\$H\$\$\$&[email protected]\$G\$Oe(B
BINARY e\$B\$NLq2p\$5\$H\$b=E\$J\$j\$^\$9\$M!#e(B

e\$B0lJ}\$G%5%m%2!<%H%Z%"\$b\$J\$/!“40A4e(B 2
e\$B%P%\$%H8GDj\$H\$\$\$&\$”\$?\$j!"\$"\$k<oe(B UTF-16
e\$B\$h\$j%7%s%W%k\$J5\$\$b\$7\$?\$N\$G\$9\$,!"%K!<%:\$,\$J\$\$\$H;H\$C\$F\$/\$l\$J\$/\$F%F%9%H\$K\$Je(B
e\$B\$i\$J\$5\$=\$&\$H\$\$\$&\$N\$,%M%C%/\$G\$9\$+\$M\$’!#e(B