Rubylexer 0.7.6 Released

rubylexer version 0.7.6 has been released!

RubyLexer is a lexer library for Ruby, written in Ruby. Rubylexer is

as a lexer for Ruby that’s complete and correct; all legal Ruby

code should be lexed correctly by RubyLexer as well. Just enough parsing

capability is included to give RubyLexer enough context to tokenize

in all cases. (This turned out to be more parsing than I had thought or

wanted to take on at first.) RubyLexer handles the hard things like

complicated strings, the ambiguous nature of some punctuation characters

keywords in ruby, and distinguishing methods and local variables.



  • 5 Bugfixes:

    • don’t treat <, <=, <=> as starting variables (only << for here

    • space between break/return/next and following open paren is ignored

    • fixed unusual whitespace is unlikely places (module header)

    • some parentheses weren’t being decorated right

    • rescue should not end implicit parameter lists… unless its an op

  • 3 new ruby 1.9 features:

    • stabby blocks

    • dot at beginning of line

    • !, !=, !~ are now valid method/symbol names