summaryrefslogtreecommitdiff
path: root/lib/coderay/scanners/ruby.rb
Commit message (Collapse)AuthorAgeFilesLines
* Bug #6: merge ConradIrwin's approach with korny'sKornelius Kalnbach2011-12-271-2/+2
|
* Remove assumption about a stable $:Conrad Irwin2011-12-231-2/+2
| | | | | | | | | | In some environments (e.g. [1]) $: can change between loading the library and using it. To avoid this problem, we always pass an absolute path to autoload internal modules. [1] https://github.com/pry/pry/issues/280
* Ruby scanner accepts :state options and provides #interpreted_string_state ↵Kornelius Kalnbach2011-09-091-1/+5
| | | | method
* pretty (longer) token class names; closes #347Kornelius Kalnbach2011-08-191-1/+1
|
* Major rewrite of encoders to support IO output; fixed some minor scanner ↵Kornelius Kalnbach2011-08-191-6/+11
| | | | bugs; cleanups; dropped NitroXHTML scanner; improved tests
* fixing strange bug in Ruby scanner (very rare!)murphy2011-07-081-2/+2
|
* #309 Improved highlighting of Ruby inside diffsmurphy2011-06-221-3/+12
|
* changed :reserved to :keyword in Ruby scanner (issue #43)murphy2011-06-161-1/+1
|
* new method Scanner#scan_rest (upported from 0.9.8), and Scanner::ScanError ↵murphy2011-05-211-11/+4
| | | | is now a StandardError
* lots of fixes and improvements to the Ruby scanner (part 2)murphy2011-03-071-193/+193
|
* Ruby scanner does no longer highlight \ at the end of the input as :error. ↵murphy2010-06-011-2/+5
| | | | This is more friendly for intelligent diff highlighting.
* Ruby scanner raises exception on unknown state.murphy2010-05-211-0/+2
|
* Ruby scanner handles :keep_state option.murphy2010-05-181-1/+12
|
* Got rid of the old streaming system (see #142).murphy2010-05-011-2/+0
|
* Direct Streaming! See #142 and Changes.textile.murphy2010-05-011-105/+81
|
* More cleanup.murphy2010-04-151-2/+6
|
* Cleanups.murphy2010-04-151-11/+11
|
* Improved Ruby scanner (see #147 and Changes.textile.)murphy2010-03-311-90/+142
|
* Cleanups.murphy2009-12-301-7/+3
|
* Copying changes and fixes for 0.9.0rc3 from terminal-encoder branch over to ↵murphy2009-12-281-2/+2
| | | | trunk.
* Updated Ruby scanner:murphy2009-10-191-5/+8
| | | | | | | * cleanup (FIXMEs, dead code, comments) * improved value_expected detection using VALUE_EXPECTING_KEYWORDS * support for self.method style definitions
* Improved UTF-8 support for Ruby Scanner. Also fixed a minor bug.murphy2009-06-071-7/+26
| | | | | | | | | * closes #108 (new Ruby 1.9 call operator syntax sugar) * Added an example for unicode code. * automatic UTF-8 detection (experimental) * Still problems with different Ruby versions; new unicode test fails in Ruby 1.9 and JRuby.
* Ruby Scanner: Shebang comments are highlighted as :doctype.murphy2009-01-131-0/+4
|
* Fixed a bug in Ruby scanner that broke tests with JRuby.murphy2009-01-111-1/+2
|
* Improved Ruby scanner to use +/- signs only when appropriate (tests adjusted.)murphy2008-01-211-6/+11
| | | | | Ignore test/scanners/*/*.expected.html
* Lib:murphy2008-01-071-14/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | - Encoder: removed a warning - Encoders::HTML: don't shadow outer variable - Plugin: move require_plugin into class namespace - Ruby Scanner: - "alias" keyword recognition - better regexp/division distinction - recognize ~, !, !=, and !~ as method names (partly Ruby 1.9 only) - reordered states for speed Tests: - updated coderay-suite to use gem instead of require_gem - general improvements (more colors!, new parameter: new, new syntax lang.test for only and new) - fixed ruby suite - adjusted a lot of Ruby tests (alias uses methods now) - new tests: ruby/operators, ruby/regexp Samples: - fixed/updated ('bout time) Rake tasks: - updated to use new rubygems API
* New Scanner: Scheme (thanks closure!)murphy2007-01-011-0/+1
| | | | | | | | | | | | | | | Test and example added. Token changed: operator_fat instead of operator_name (for use with LISP-like parentheses). Added file_extension for Scanners. Improved CodeRay::Suite: - uses scanners file extension now - example parameter is now named "only" - only param overwrite MAX_CODE_SIZE_TO_HIGHLIGHT
* Done:murphy2007-01-011-31/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | General: - Declared version 0.7.6. - Moved WordList, CaseIgnoringWordList, Plugin, PluginHost and FileType into CodeRay namespace. CodeRay should be "clean" now, except for the String#to_unix helper function. - Fixed a bit of documentation. - CodeRay binary: Prepare for streaming switch. Scanners: - Added code= alias for string=. - Added streaming? method: Is this Scanner in streaming mode? - Enhanced error info a bit. - Ruby scanner: - Highlights Regexp heredocs now. They may be added to Ruby 1.9. - Speedups with better support for Ruby 1.9. - Change in whitespace handling (faster and cleaner now.) - Speed up some operator recognition (saving two string comparisons). - Declared C and Plaintext Scanners as Streamable. Tokens: - Changed Text/Block token recognition (#is_a? ::String for Ruby 1.9 support). - New method: Tokens#text yields the code string. - text_size fixed. - Token kind shortcuts (like r for reserved) are now defined in token_classes.rb (instead of encoders/html/classes.rb). Encoders: - Debug Scanner added. - Base encoder class adds to @out when encoding (if @out is set). - A little Tokens scanner speedup. - Text encoder uses text_token. - Statistic encoder counts block tokens. - Smaller changes in XML and HTML encoders. Styles: - cYcnus style defines a debug class now. Duo: - scanner and encoder are now methods. Scanner and Encoder are created (and cached) when needed, not earlier. - Documented. Tests: - Disabled encoder and scanner list check (breaks too often). - Added identity test, which checks if tokens#text matches the input. - Added nocolor switch. Developer tools: - Benchmark uses Encoder#file_extension for output now. - Rakefile: Support for 19, 18, yarv and ruby switches for easy comparing different Ruby versions. - Statistic: Demos are no longer tests.
* Ruby scanner: #{...} delimiters are now :inline_delimiter to solve CSS problem.murphy2006-10-181-2/+2
| | | | | | New token: :inline_delimiter Scanner tests suite revamped: colorization, split up into methods.
* Fixed warning in bench.rb.murphy2006-10-181-19/+22
| | | | | | | | | | Ruby Scanner: improved handling of ambiguos values. - operator methods are now :ident instead of :operator - fancy_allowed and regexp_allowed are now value_expected - value_expected works in operator method calls - tests enhanced and adjusted Scanner tests: new diffed option, diff doesn't imply noassert anymore
* Fixed functional test.murphy2006-10-181-1/+1
| | | | | | | Fixed Ruby scanner (/= was scanned as regexp!) Made bench.rb run from any folder. Made scanner test diff function work via EDITOR instead of gvimdiff.
* Ruby scanner: deleted regexp highlighting (didn't work anyway)murphy2006-09-281-40/+0
| | | | | HTML highlighter: unknown token classes now yield a CSS class with that name instead of :error A new Ruby test
* Changed error handling of all scanners: :error tokens are OK now, even in ↵murphy2006-07-111-400/+404
| | | | | | | | | | | | | debug mode, but token kind is nil unless assigned. Small fixes for C and Ruby scanners. Renamed local variable type to kind in Ruby scanner. Improved RHTML scanner to recognize -%> as delimiter. HTML encoder: improved handling of malformed token strings. Fixed PluginHost#inspect including docu. Scanner#raise_inspect also shows state if given.
* Big re-indenting - no more tabs!murphy2006-07-101-16/+16
|
* Fixed another bug in the Ruby scanner, this time it was unfinished heredocs ↵murphy2006-07-091-364/+365
| | | | | | with empty delimiter. Fixed documentation uploading.
* [BUG] Fixed bug in Ruby-Scanner (input ends with unfinished escape in ↵murphy2006-07-091-0/+2
| | | | | | string) (thanks to bovi again.) Test case added.
* Re-indented everything. Sorry to break the blame chain.murphy2006-04-161-2/+5
|
* All scanners revisited not to produce errors unless in DEBUG mode. [thx@Daniel]murphy2006-04-161-2/+4
| | | | | | | Fixed numerization for input not ending with \n. Added test cases in C scanner tests. Added WoNáDo as contributer for last Ruby scanner fix. Updated TODO.
* styles/_map.rb added. :cycnus is now default style. html/css.rb adjusted.murphy2006-04-151-33/+33
| | | | | | | | | | ROADMAP and TODO updated. Ruby scanner: Fixed a bug: Fancy strings don't allow \w delimiters. They _do_ also allow whitespace delimiters, but adding this would cause many scan errors. So I leave this bug unfixed.
* Large update: Scanners for HTML, RHTML and Nitro-XHTML added.murphy2006-04-101-14/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | CSS style changes/enhancments (mainly the new background color for inline code, affects all Ruby code.) Demos and tests adjusted. Plugin: new PluginHost::default method. Scanner: - New setup method - ability to re-use a scanner - ability to keep the tokens - minor changes to token caching and string flattening Encoder: Error if token content is neither String nor Symbol. HTML encoder: - more warnings for unclosed tokens - output now UTF-8 Ruby Scanner: - bug: symbols before => now do not include =; {:foo=>bar} is valid Ruby code - try to close all open tokens - constants now all with specific namespace (for speed, I hope) Styles: new :entity/en class. Test suite now gives hinted HTML output.
* Added HTML scanner!murphy2006-04-041-2/+2
| | | | | | | Added test/html/suite.rb and tolkien.in.html test. Benchmark produces inline line numbers now. Minor changes to Ruby and C scanners. Rakefile: unit tests now in -d mode.
* Ruby Scanner: Capital methods (Kernel#Array etc.) are now highlighted as idents.murphy2006-03-241-2/+2
| | | | | Tests adjusted. highlight.rb updated.
* Ruby scanner errors fixed.murphy2006-03-151-4/+4
| | | | | demo_dump and demo_encoder updated for new YAML version. Fixes in output.rb and numerization.rb
* Plugin System extended:murphy2005-12-101-1/+1
| | | | | | | | | | - helper method - path names are expanded encoders/html.rb, div.rb, span.rb, ruby.rb: - using new methods (fixes problems with rdoc and test tasks): renamed scanners/ruby/helper.rb to patterns.rb encoders/statistic.rb: sorting made deterministic (for unit testing)
* New helper module scheme, step 3murphy2005-11-051-1/+1
|
* scanners/ruby.rb: changed operator handling = fix and speedup.murphy2005-10-291-19/+23
| | | | Test fixtures adjusted.
* scanners/ruby.rb, ruby_helper.rb: Fixes, changes.murphy2005-10-291-11/+52
|
* demo/demo_server.rb: Debug mode.murphy2005-10-221-1/+2
| | | | | tokens.rb: orig_each alias deleted; using super now. scanners/ruby.rb: experimental Regexp/Fancy string recognition for "method /.../" cases.
* scanners/ruby.rb: fixed string inline codemurphy2005-10-161-4/+3
| | | | | encoders/helpers/html_css.rb and html_helper.rb: added :inline token encoders/helpers/html_output.rb: made wrapped_in an attr_accessor; fixed option handling in numerize!
* Two new encoders: debug and xml.murphy2005-10-041-14/+17
| | | | | | | | | | | | | | | | encoder.rb: new token handling encoders/statistic.rb: using new handling ruby_helper.rb: small improvements ruby.rb: - escapes in subtoken - Float detection changed - some multi-char operators are now scanned as one token - def and module definition handling changed bin/coderay: improved, new interface (still in progress) plugin.rb: more expressive load error message