From: "turboladen (Steve Loveless)" Date: 2012-06-02T06:10:23+09:00 Subject: [ruby-core:45371] [ruby-trunk - Bug #6306] Ripper lexes :on_kw when it should find :on_ident Issue #6306 has been updated by turboladen (Steve Loveless). That is correct. I've used Ripper.sexp() a tad, but will look to using that more. Thank you for the feedback. ---------------------------------------- Bug #6306: Ripper lexes :on_kw when it should find :on_ident https://bugs.ruby-lang.org/issues/6306#change-26960 Author: turboladen (Steve Loveless) Status: Rejected Priority: Normal Assignee: Category: Target version: ruby -v: ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-darwin11.3.0] =begin 1.9.3-p125 :001 > require 'ripper' => true 1.9.3-p125 :002 > Ripper.lex %Q{:def} => [[[1, 0], :on_symbeg, ":"], [[1, 1], :on_kw, "def"]] I'd expect (({[[1, 1], :on_kw, "def"]})) to be (({[[1, 1], :on_ident, "def]})). Sure, "def" is a keyword, but since it's prefaced by a ':', it's not necessarily being used in that context. The same behavior pertains to all other keywords that are used as Symbols. =end -- http://bugs.ruby-lang.org/