From: "H.Yamamoto" Date: 2006-02-27T21:19:49+09:00 Subject: [ruby-dev:28404] irb cannot parse /\^/ 山本です。 http://rubyforge.org/tracker/index.php?func=detail&aid=3302&group_id=426&atid=1698 の問題なのですが、下のパッチで治るようです。これで間違いないでしょうか? # [ruby-talk:181631] の方に rdoc の同様の問題が報告されてたのですが、パッチも # 全く同じになりました。コードの出所が同じ? Index: ruby-lex.rb =================================================================== RCS file: /src/ruby/lib/irb/ruby-lex.rb,v retrieving revision 1.28 diff -u -w -b -p -r1.28 ruby-lex.rb --- ruby-lex.rb 30 Jun 2005 10:07:29 -0000 1.28 +++ ruby-lex.rb 27 Feb 2006 12:10:40 -0000 @@ -309,7 +309,7 @@ class RubyLex "q" => "\'", "Q" => "\"", "x" => "\`", - "r" => "\/", + "r" => "/", "w" => "]", "W" => "]", "s" => ":" @@ -326,14 +326,14 @@ class RubyLex "\'" => TkSTRING, "\"" => TkSTRING, "\`" => TkXSTRING, - "\/" => TkREGEXP, + "/" => TkREGEXP, "]" => TkDSTRING, ":" => TkSYMBOL } DLtype2Token = { "\"" => TkDSTRING, "\`" => TkDXSTRING, - "\/" => TkDREGEXP, + "/" => TkDREGEXP, } def lex_init() @@ -1040,7 +1040,7 @@ class RubyLex break elsif @ltype != "'" && @ltype != "]" && @ltype != ":" and ch == "#" subtype = true - elsif ch == '\\' #' + elsif @ltype != "'" && @ltype != "/" and ch == '\\' #' read_escape end if PERCENT_PAREN.values.include?(@quoted)