freeze$BMn$AJf=&$$(B

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

e$B%3!<%I%U%j!<%:$K4V$K9g$o$J$+$C$?$b$N$,$$$/$D$+$"$j$^$9$N$G!“e(B
e$B%j%j!<%9%^%M!<%8%c$NH=CG$r$”$*$0I,MW$,$"$j$^$9!#e(B

  • Encoding.default_internal

    e$B<h$j9~$$^$9!#e(BYuguie$B$5$s$K$OJs9p:Q$!#$?$@$7!“5,LO$,Bg$-$$e(B
    e$B>e!”$3$l$KBP1~$7$?$$%i%$%V%i%j$b$"$k$G$7$g$&$+$i!"%j%9%1e(B
    e$B%8%e!<%k$,I,MW$+$b$7$l$^$;$s!#e(B[ruby-dev:36558]

  • lib/delegate.rb

    e$B;~4V$,B-$j$J$/$F%A%’%C%/%$%s$G$-$^$;$s$G$7$?!#e(B1.8e$B$N5sF0$re(B
    e$BI|3h$5$;$^$9!#$3$l$be(BYuguie$B$5$s$KJs9p:Q$_!#e(B

  • String#gsub

    String#scane$B$H%V%m%C%/%Q%i%a!<%?$r9g$o$;$?$$$H$$$&0MMj!#1Fe(B
    e$B6AEY$r8+@Q$b$k;~4V$,$H$l$^$;$s$G$7$?!#4V$K9g$o$J$$$N$G$"$-e(B
    e$B$i$a$k$Y$-$+e(B

  • sprintf, String#%

    e$B%G%6%$%s%_!<%F%#%s%0$G$O!V$H$j$3$`!W$HH/8@$7$?$b$N$N%A%’%Ce(B
    e$B%/%$%s$,4V$K9g$$$^$;$s$G$7$?!#e(B

  • EncodingError

    Encoding::*Errore$B$N6&DL$N%9!<%Q!<%/%i%9!#e(B[ruby-dev:36371]
    e$B<j85$K%Q%C%A$OMQ0U$7$F$"$C$F%3%_%C%H$9$k$@$1$J$s$G$9$,e(B

Yuguie$B$G$9!#e(B

Yukihiro M. e$B$5$s$O=q$-$^$7$?e(B:

  • Encoding.default_internal

    e$B<h$j9~$$^$9!#e(BYuguie$B$5$s$K$OJs9p:Q$!#$?$@$7!“5,LO$,Bg$-$$e(B
    e$B>e!”$3$l$KBP1~$7$?$$%i%$%V%i%j$b$“$k$G$7$g$&$+$i!”%j%9%1e(B
    e$B%8%e!<%k$,I,MW$+$b$7$l$^$;$s!#e(B[ruby-dev:36558]

e$B$=$N>e!"$^$@:YIt$G5DO@$,<}B+$7$F$$$J$$$h$&$K;W$($^$9!#e(B

e$B$?$@$7!“Ev3:%9%l%C%I$G;d$,;XE&$7$?$h$&$K$3$NLdBj$O%”%W%j%1!<%7%g%s%f!<e(B
e$B%6!<$,JQ992DG=$JHO0OFb$N$_$J$i$:!“$=$3$+$ie(Brequiree$B$5$l$?%i%$%V%i%j$d3HD%e(B
e$B%i%$%V%i%j$K$^$GGH5Z$9$k2DG=@-$,$”$kJQ99$G$9!#$G$9$+$i!"A*Br;h$Oe(B

  • 1.9.1e$B$K<h$j9~$`e(B
  • 2.0e$B$^$GBT$De(B
    e$B$NFsBr$G$9!#e(B1.9.1e$B$K<h$j9~$^$J$$$J$i$P!"e(B1.9.2e$B$K<h$j9~$`$3$H$O;Y;}$G$-$^$;$s!#e(B

e$B$h$C$F!“e(Binternal_encodinge$B<+BN$r5Q2<$9$k$N$G$J$$8B$j!”$“$H$O%9%1%8%e!<%ke(B
e$B$NOC$G$9!#e(B
(1)
e$B%j%j!<%9$re(B1e$B%v7nCY$i$;$ke(B(e$B%/%j%9%^%9$K$Oe(B1.9.1-RC3e$B$r%j%j!<%9e(B)
(2)
11e$B7n:”$K$J$C$F$+$i$d$C$Q$j%j%j!<%9$,1d4|$5$l$k%j%9%/$rGXIi$$$D$D!"e(B
e$B6/9T%9%1%8%e!<%k$rJb$`e(B

e$B$H$O$$$(!“e(B10e$B7n$^$G$K%3%_%C%H$7$F$$$?$@$1$l$P%l%S%e!<4|4V$Oe(B2e$B%v7n$”$k$Ne(B
e$B$G!"6/9T%9%1%8%e!<%k$G$b$J$s$H$+$J$k$+$b$7$l$^$;$s!#e(B

e$B;d$K$H$C$F:G$b=EMW$J$N$O%/%j%9%^%9$K%j%j!<%9$5$l$k$3$H$G$O$J$/e(B1.9.1e$B$,$=e(B
e$B$N8e$Ne(B1.9e$B7ONs$N5/E@$H$7$F0B?4$7$FMxMQ$G$-$k;EMM0BDj@-!“F0:n0BDj@-$r;}$De(B
e$B$3$H$@!”$H$$$&$N$O$CG$j$7$F$$-$^$9!#e(B
(2)e$B$rA*Br$7$?$H$7$F$b!“M=A[0J>e$K1F6A$,$”$C$?$j!"$d$O$j;H$$$E$i$$$H$7$Fe(B
e$B5DO@$,:F3+$7$?>l9g$K$Oe(B1.9.1e$B$N%j%j!<%9%9%1%8%e!<%k$rCY$i$;$^$9!#e(B

e$B8@8l%G%6%$%J$H$7$F$N$^$D$b$H$5$s$K;G$$$^$9!#e(B
*
internal_encodinge$B$O!“%j%j!<%9$N1d4|!”$^$?$O$=$N%j%9%/$rJz$($F$^$G<h$je(B
e$B9~$`2ACM$N$"$k5!G=$G$9$+e(B?

e$B$?$V$se(BYESe$B$J$s$@$m$&$J$HM=B,$7$D$D!"$3$l$^$G%/%j%9%^%9$K%j%j!<%9$7$F$-$?e(B
e$B?M$H$7$F$N$^$D$b$H$5$s$K;G$$$^$9!#e(B
*
e$B:#$NCJ3,$G%j%j!<%91d4|$r7hDj$9$k$N$H!“1d4|$;$:$K4V$K9g$&2DG=@-$KER$1e(B
e$B$F$d$k$@$1$d$C$F$_$k$N$H!”$I$C$A$,$h$$$G$9$+e(B?

e$B8e<T$rA*Br$9$k$J$i$P!"e(Binternal_encodinge$B$NMM;R$r8+$F;d$,e(B10e$B7ne(B25e$BF|$^$G$K1de(B
e$B4|$9$k$+$7$J$$$+7hDj$7$^$9!#e(B

  • lib/delegate.rb

    e$B;~4V$,B-$j$J$/$F%A%'%C%/%$%s$G$-$^$;$s$G$7$?!#e(B1.8e$B$N5sF0$re(B
    e$BI|3h$5$;$^$9!#$3$l$be(BYuguie$B$5$s$KJs9p:Q$_!#e(B

e$B3+H/<T2q5D$G;EMM$O8G$^$C$F$^$9$7!"e(Binternal_encodinge$B$KHf$Y$l$P1F6AHO0O$Oe(B
e$B69$$$N$GNI$$$s$8$c$J$$$G$7$g$&$+!#$G$-$l$P?tF|Cf$K$*4j$$$7$^$9!#e(B

  • String#gsub

    String#scane$B$H%V%m%C%/%Q%i%a!<%?$r9g$o$;$?$$$H$$$&0MMj!#1Fe(B
    e$B6AEY$r8+@Q$b$k;~4V$,$H$l$^$;$s$G$7$?!#4V$K9g$o$J$$$N$G$"$-e(B
    e$B$i$a$k$Y$-$+e(B

e$B3+H/<T2q5D$G$b7k6I!"$3$l$H$$$&0F$O=P$J$+$C$?$s$G$9$h$M!#e(B
e$BD|$a$k$Y$-$@$H;W$$$^$9!#e(B

  • sprintf, String#%

    e$B%G%6%$%s%_!<%F%#%s%0$G$O!V$H$j$3$`!W$HH/8@$7$?$b$N$N%A%'%Ce(B
    e$B%/%$%s$,4V$K9g$$$^$;$s$G$7$?!#e(B

e$B;EMM$O8G$^$C$F$^$9$7!“1F6AHO0O$O69$$$N$GNI$$$s$8$c$J$$$G$7$g$&$+!#e(B
e$B$?$V$s!”$3$l$G1F6A$r<u$1$k$N$OE:IU%i%$%V%i%j$K$O$J$5$=$&$G$9$h$M!#e(B

  • EncodingError

    Encoding::*Errore$B$N6&DL$N%9!<%Q!<%/%i%9!#e(B[ruby-dev:36371]
    e$B<j85$K%Q%C%A$OMQ0U$7$F$"$C$F%3%_%C%H$9$k$@$1$J$s$G$9$,e(B

e$BNI$$$s$8$c$J$$$G$7$g$&$+!#%3%_%C%H$7$F$/$@$5$$!#e(B

e$B$^$?!";d$be(BErrno.const_missinge$B$N=$@5$,4V$K9g$$$^$;$s$G$7$?!#e(B
http://redmine.ruby-lang.org/issues/show/494

e$B<+J,$H$7$F$O>e$N!V;EMM$O8G$^$C$F$$$F1F6AHO0O$,69$$!W$H$$$&4p=`$K>H$i$7$Fe(B
e$BLdBj$J$$$H;W$C$F$$$^$9!#0[O@$,$J$1$l$P?tF|Cf$K%3%_%C%H$7$^$9!#e(B

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

In message “Re: [ruby-dev:36595] (Re:freezee$BMn$AJf=&$$e(B) + 1”
on Fri, 26 Sep 2008 11:43:09 +0900, “Yugui (Yuki S.)”
[email protected] writes:

|> e$B<h$j9~$$^$9!#e(BYuguie$B$5$s$K$OJs9p:Q$!#$?$@$7!“5,LO$,Bg$-$$e(B
|> e$B>e!”$3$l$KBP1~$7$?$$%i%$%V%i%j$b$“$k$G$7$g$&$+$i!”%j%9%1e(B
|> e$B%8%e!<%k$,I,MW$+$b$7$l$^$;$s!#e(B[ruby-dev:36558]
|
|e$B$=$N>e!"$^$@:YIt$G5DO@$,<}B+$7$F$$$J$$$h$&$K;W$($^$9!#e(B

e$B$^$C$?$/$G$9!#:GDc$G$b$b$&#2=54VAa$/$J$K$+=P$9$Y$-$G$7$?!#e(B

|e$B$?$@$7!“Ev3:%9%l%C%I$G;d$,;XE&$7$?$h$&$K$3$NLdBj$O%”%W%j%1!<%7%g%s%f!<e(B
|e$B%6!<$,JQ992DG=$JHO0OFb$N$_$J$i$:!“$=$3$+$ie(Brequiree$B$5$l$?%i%$%V%i%j$d3HD%e(B
|e$B%i%$%V%i%j$K$^$GGH5Z$9$k2DG=@-$,$”$kJQ99$G$9!#$G$9$+$i!"A*Br;h$Oe(B
| * 1.9.1e$B$K<h$j9~$e(B | * 2.0e$B$^$GBT$De(B |e$B$NFsBr$G$9!#e(B1.9.1e$B$K<h$j9~$^$J$$$J$i$P!"e(B1.9.2e$B$K<h$j9~$$3$H$O;Y;}$G$-$^$;$s!#e(B

e$BF10U$7$^$9!#e(B

|e$B8@8l%G%6%$%J$H$7$F$N$^$D$b$H$5$s$K;G$$$^$9!#e(B
| * internal_encodinge$B$O!“%j%j!<%9$N1d4|!”$^$?$O$=$N%j%9%/$rJz$($F$^$G<h$je(B
|e$B9~$`2ACM$N$"$k5!G=$G$9$+e(B?

e$B$=$&;W$$$^$9!#e(B

|e$B$?$V$se(BYESe$B$J$s$@$m$&$J$HM=B,$7$D$D!"$3$l$^$G%/%j%9%^%9$K%j%j!<%9$7$F$-$?e(B
|e$B?M$H$7$F$N$^$D$b$H$5$s$K;G$$$^$9!#e(B
| * e$B:#$NCJ3,$G%j%j!<%91d4|$r7hDj$9$k$N$H!“1d4|$;$:$K4V$K9g$&2DG=@-$KER$1e(B
|e$B$F$d$k$@$1$d$C$F$_$k$N$H!”$I$C$A$,$h$$$G$9$+e(B?
|
|e$B8e<T$rA*Br$9$k$J$i$P!"e(Binternal_encodinge$B$NMM;R$r8+$F;d$,e(B10e$B7ne(B25e$BF|$^$G$K1de(B
|e$B4|$9$k$+$7$J$$$+7hDj$7$^$9!#e(B

e$B$3$l$K$D$$$F$O<B:]$K%Q%C%A$r<h$j9~$s$G$+$i$I$l$@$1LdBj$,H/@8e(B
e$B$9$k$+8+$F$+$iH=CG$7$F$$$?$@$$$?$[$&$,$h$$$H;W$$$^$9!#%/%j%9e(B
e$B%^%9A0$H$$$&$N$O$5$[$I=EMW$G$O$J$$$N$G!“%H%i%V%k$,$”$k$h$&$Je(B
e$B$i1sN8$J$/1d4|$7$F$/$@$5$$!#$H$$$&$3$H$G!"e(B

e$B%Q%C%AF3F~8e0lDj4|4Ve(B(e$B#2=54Ve(B)e$B8eH=CG$9$ke(B

e$B$3$H$rDs0F$7$^$9!#$G!“$^$@%Q%C%A=q$$$F$J$$e(B(e$B$^$:$Oe(BPROe$B$N$?$a$Ke(B
e$BO@J8=q$+$J$-$ce(B)e$B$J$N$G!”%3%_%C%H$OMh=58eH>$K$J$k$H;W$$$^$9!#e(B

|> * lib/delegate.rb
|>
|> e$B;~4V$,B-$j$J$/$F%A%‘%C%/%$%s$G$-$^$;$s$G$7$?!#e(B1.8e$B$N5sF0$re(B
|> e$BI|3h$5$;$^$9!#$3$l$be(BYuguie$B$5$s$KJs9p:Q$!#e(B
|
|e$B3+H/<T2q5D$G;EMM$O8G$^$C$F$^$9$7!“e(Binternal_encodinge$B$KHf$Y$l$P1F6AHO0O$Oe(B
|e$B69$$$N$GNI$$$s$8$c$J$$$G$7$g$&$+!#$G$-$l$P?tF|Cf$K$*4j$$$7$^$9!#e(B
|
|> * String#gsub
|>
|> String#scane$B$H%V%m%C%/%Q%i%a!<%?$r9g$o$;$?$$$H$$$&0MMj!#1Fe(B
|> e$B6AEY$r8+@Q$b$k;~4V$,$H$l$^$;$s$G$7$?!#4V$K9g$o$J$$$N$G$”$-e(B
|> e$B$i$a$k$Y$-$+e(B
|
|e$B3+H/<T2q5D$G$b7k6I!"$3$l$H$$$&0F$O=P$J$+$C$?$s$G$9$h$M!#e(B
|e$BD|$a$k$Y$-$@$H;W$$$^$9!#e(B
|
|> * sprintf, String#%
|>
|> e$B%G%6%$%s%
!<%F%#%s%0$G$O!V$H$j$3$`!W$HH/8@$7$?$b$N$N%A%’%Ce(B
|> e$B%/%$%s$,4V$K9g$$$^$;$s$G$7$?!#e(B
|
|e$B;EMM$O8G$^$C$F$^$9$7!“1F6AHO0O$O69$$$N$GNI$$$s$8$c$J$$$G$7$g$&$+!#e(B
|e$B$?$V$s!”$3$l$G1F6A$r<u$1$k$N$OE:IU%i%$%V%i%j$K$O$J$5$=$&$G$9$h$M!#e(B
|
|> * EncodingError
|>
|> Encoding::*Errore$B$N6&DL$N%9!<%Q!<%/%i%9!#e(B[ruby-dev:36371]
|> e$B<j85$K%Q%C%A$OMQ0U$7$F$"$C$F%3%%C%H$9$k$@$1$J$s$G$9$,e(B
|
|e$BNI$$$s$8$c$J$$$G$7$g$&$+!#%3%
%C%H$7$F$/$@$5$$!#e(B

e$B>e5-#4E@!"N;2r$7$^$7$?!#e(B

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