[Feature:1.9] io/console

e$B$J$+$@$G$9!#e(B

e$B3HD%%i%$%V%i%je(Bio/consolee$B$N<h$j9~$_$r%j%/%(%9%H$7$^$9!#e(B

http://www.rubyist.net/~nobu/ruby/io-console-0.2.gem
http://www.rubyist.net/~nobu/ruby/io-console-20080905.tar.bz2

readlinee$B$de(Bcursese$B$^$G$OI,MW$O$J$$$1$l$I!“C1$J$ke(Bgetse$B$de(Bgetce$B$G$O:$$ke(B
e$B$H$$$&>l9g$KJXMx$G$9!#$3$&$$$&5!G=$O!“7k9=<ALd$,=P$k3d$K$O!”%7%9e(B
e$B%F%`0MB8$GLLE]$J$3$H$K$J$j$^$9!#e(Bhighlinee$B$J$I$N$h$j9b5!G=$Je(Bgeme$B$be(B
e$B$”$j$^$9$,!"<B:]$K$OCf$G$Oe(Bsttye$B$r8F$s$G$$$?$j$7$F%]!<%?%V%k$G$O$"e(B
e$B$j$^$;$s!#e(Bio/consolee$B$O$3$&$$$C$?%i%$%V%i%j$K%]!<%?%V%k$J2<0LAX$re(B
e$BDs6!$9$k$3$H$b$G$-$^$9!#e(B

e$B0J2<$N$h$&$J%a%=%C%I$,Ds6!$5$l$^$9!#e(B

IO#noecho
IO#noecho {|io| }
IO#raw
IO#raw {|io| }
IO#getch
IO#winsize
IO.console #=> IO for console device

2010e$BG/e(B4e$B7ne(B1e$BF|e(B8:58 Nobuyoshi N.
[email protected]:

readlinee$B$de(Bcursese$B$^$G$OI,MW$O$J$$$1$l$I!“C1$J$ke(Bgetse$B$de(Bgetce$B$G$O:$$ke(B
e$B$H$$$&>l9g$KJXMx$G$9!#$3$&$$$&5!G=$O!“7k9=<ALd$,=P$k3d$K$O!”%7%9e(B
e$B%F%`0MB8$GLLE]$J$3$H$K$J$j$^$9!#e(Bhighlinee$B$J$I$N$h$j9b5!G=$Je(Bgeme$B$be(B
e$B$”$j$^$9$,!"<B:]$K$OCf$G$Oe(Bsttye$B$r8F$s$G$$$?$j$7$F%]!<%?%V%k$G$O$"e(B
e$B$j$^$;$s!#e(Bio/consolee$B$O$3$&$$$C$?%i%$%V%i%j$K%]!<%?%V%k$J2<0LAX$re(B
e$BDs6!$9$k$3$H$b$G$-$^$9!#e(B

e$B5!G=$H$7$F$O!“e(BPTY.open e$B$N%I%-%e%a%s%H$G;H$o$6$k$rF@$J$+$C$?e(B
stty e$B$r=|5n$G$-$=$&$J$N$G!”$h$5$=$&$@$J$!!"$H;W$$$^$9!#e(B

IO#raw

raw e$B$N0UL#$Ke(B noecho e$B$O4^$^$l$^$9$+e(B?

IO#noecho {|io| }
IO#raw {|io| }

e$B%V%m%C%/0z?t$Ne(B io e$B$O$J$s$G$9$+e(B?

IO#getch

e$BJV$jCM$OJ8;z$He(B byte e$B$N$I$A$i$G$7$g$&e(B?

e$B$J$+$@$G$9!#e(B

At Thu, 1 Apr 2010 10:05:46 +0900,
Tanaka A. wrote in [ruby-dev:40900]:

IO#raw

raw e$B$N0UL#$Ke(B noecho e$B$O4^$^$l$^$9$+e(B?

e$B4^$^$l$^$9!#e(B

IO#noecho {|io| }
IO#raw {|io| }

e$B%V%m%C%/0z?t$Ne(B io e$B$O$J$s$G$9$+e(B?

ioe$B%$%s%9%?%s%9<+?H$rEO$7$^$9!#e(BSymbol#to_proce$B$HAH$_9g$o$;$l$Pe(B
STDIN.noecho(&:gets) e$B$G%(%3!<%P%C%/$J$7$N0l9TF~NO$K$J$j$^$9!#e(B

IO#getch

e$BJV$jCM$OJ8;z$He(B byte e$B$N$I$A$i$G$7$g$&e(B?

e$B$3$l$Oe(B raw(&:getc)
e$B$HEy2A$J$N$G!“e(B1.9e$B$G$OJ8;z$,5”$j$^$9!#e(B

e$B%A%1%C%He(B #3073 e$B$,99?7$5$l$^$7$?!#e(B (by Nobuyoshi N.)

e$B%9%F!<%?%9e(B Assignede$B$+$ie(BClosede$B$KJQ99e(B
e$B?JD=e(B % 0e$B$+$ie(B100e$B$KJQ99e(B

This issue was solved with changeset r27668.
Nobuyoshi, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


http://redmine.ruby-lang.org/issues/show/3073

2010/4/1 Nobuyoshi N. [email protected]:

e$B3HD%%i%$%V%i%je(Bio/consolee$B$N<h$j9~$_$r%j%/%(%9%H$7$^$9!#e(B

e$B$"$!!#$3$l$ONI$$$G$9$M!#;?@.$7$^$9!#e(B

e$B$J$*!“8@$&$^$G$b$J$$$G$9$,4|8B$r2a$.$F$$$k$N$Ge(B1.9.2e$B$K$O<h$j9~$$^$;$s!#e(B
e$B$9$
$^$;$s$,!”%3%_%C%H$9$k$H$7$F$be(Bruby_1_9_2e$B$,J,4t$9$k$^$GBT$C$F$/$@$5$$!#e(B