summaryrefslogtreecommitdiff
path: root/lib/coderay/encoders
Commit message (Collapse)AuthorAgeFilesLines
...
* Added alias :remove_comments for CommentFilter.murphy2010-03-301-0/+1
|
* Added documentation to encoders; more code cleanups.murphy2010-03-3012-23/+113
|
* Renamed token_classes to token_kinds (closes #122).murphy2010-03-305-106/+135
| | | | | | | | | * *RENAMED* from ClassOfKind. The term "token class" is no longer used in CodeRay. Instead, tokens have _kinds_. * *RENAMED* TokenKindFilter to TokenClassFilter. * *ADDED* documentation on encoders affected by the term change. * *REMOVED* token kinds :attribute_name_fat, :attribute_value_fat, :operator_fat, :tag_fat, and :xml_text. * *ADDED* token kind :filename.
* Renamed Terminal encoder, cleanups.murphy2010-01-062-7/+8
|
* Encoders::HTML#token's second parameter is no longer optional.murphy2010-01-061-1/+1
|
* Cleanups.murphy2010-01-061-2/+2
|
* Cleanup.murphy2010-01-011-1/+1
|
* Fixed example tests.murphy2009-12-313-4/+67
| | | | | | | | | | | * test:clean task also deletes .expected.html files * LinesOfCode encoder can deal with tokens that have no scanner. Tests were added for this. * JSON encoder load rubygems if necessary. * NEW :loc as an alias for :lines_of_code * NEW Scanner methods marshal_dump, marshal_load FIXED Tokens dumping (failed while trying to dump @scanner)
* JSON encoder: New format to preserve all information and be more accessible ↵murphy2009-12-301-2/+47
| | | | for JavaScript programmers (each token is an object). Also a refactorization. Added tests.
* Cleanup.murphy2009-12-301-2/+1
|
* Filters: Cleanups, refactorization, tests.murphy2009-12-303-6/+144
|
* Copying changes and fixes for 0.9.0rc3 from terminal-encoder branch over to ↵murphy2009-12-281-0/+137
| | | | trunk.
* LinesOfCode: Language dependent via KINDS_NOT_LOC, documentation.murphy2009-10-181-1/+16
|
* TokenClassFilter: Support for :exclud => :all.murphy2009-10-181-2/+3
|
* We don't need Tokens encoder any more.murphy2009-10-101-44/+0
|
* Added LinesOfCode encoder (issue #123) - simple version.murphy2009-06-291-0/+19
|
* Renamed TokenFilter to TokenClassFilter.murphy2009-06-282-5/+5
|
* Added a Filter class; filters inherit from it and yield tokens.murphy2009-06-203-11/+27
| | | | | | | You can write something like this now: @CodeRay.scan('puts "Hello, world"! # secret', :ruby).token_filter(:exclude => [:comment]).div@
* * Improved implementation of Encoder *token callbacks.murphy2009-06-206-12/+56
| | | | | | | | * Documentation for these methods. * Added two new encoders: CommentFilter < TokenFilter. * Simplified Text encoder. * Code cleanup in HTML encoder subclasses.
* Fixed XML Encoder; closes #94.murphy2009-06-091-1/+1
|
* Removed obsolete :level property from HTML Encoder.murphy2009-06-071-1/+1
| | | | | Thanks to Gavin for pointing that out.
* Changed a $DEBUG raise into a puts (issue #99).murphy2009-05-021-1/+1
| | | | Thanks to sunaku for reporting this.
* Updated some comments for XML and HTML encoder.murphy2009-04-202-1/+1
| | | | | | * XML encoder is actually broken! REXML fault? * Firefox can handle long HTML tables now.
* New: *JSON Encoder*murphy2009-04-201-0/+19
| | | | | Very simple. Not streamable yet.
* Added a :title option for the HTML Encoder. Closes #55.murphy2009-04-142-2/+18
|
* New feature: HTML encode option :highlight_lines. See documentation.murphy2009-01-222-1/+22
| | | | | | * The scanner test suite uses it and highlights the lines that differ after a failed complete test in *.actual.html.
* Fixes for Ruby 1.9.murphy2008-12-251-45/+46
|
* New: *YAML* (#53). Preparing for version 0.8.1.murphy2008-10-201-1/+1
| | | | | | | | | | | | | | * Based on the YAML scanner from Jamis Buck's Syntax lib. * Some YAML examples from Ruby gems. * Doesn't handle string yet; alpha state. More changes: * coderay_suite: new parameter "fast" makes testing faster (for development). * Changed the title of HTML page output (Page Encoder). * FileType: Added new file types. * cYcnus style: simplified some token group styles. * Cleanup in CSS and HTML Scanners.
* New: *Simple Diff Scanner* (closes #22).murphy2008-09-304-3/+40
| | | | | | | | | | | | | | * Highlights unified diffs, especially like the ones svn diff outputs. * Changes to make highlighting of whole lines were necessary. * I added two example files. More changes: * Added token classes :head, :delete, :insert, and :change along with styles. * Added two new special token types: :begin_line and :end_line. They mark token groups that explicitly span whole lines and should be highlighted as such. * The HTML encoder converts these new tokens to DIVs. May need more work. * The Debug Encoder uses square brackets for line tokens. * Some cleanups.
* Optimized CSS styles, improved coderay_suite, new HTML test.murphy2008-09-241-1/+1
| | | | | | | * CSS styles are shortened more to optimize HTML output. * Added a longer example file for the HTML Scanner. * coderay_suite prints more accurate and sensible benchmarks.
* New: *JavaScript Scanner* (closes #23).murphy2008-09-161-8/+13
| | | | | | | | | | | * It's quite good and fast, but still a beta. * I included Prototype and script.aculo.us as example code for testing. More changes: * Added two new token classes, :keyword and :key, along with CSS styles. ** Actually, we should use :keyword for most scanners that now use :reserved. * HTML Encoder: The CSS parser understands multiple selectors separated by commas.
* Lib:murphy2008-01-072-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* - Ruby 1.9 fixesmurphy2007-11-221-1/+1
| | | | | | - rake commands for jruby and rubinius - absolutized CodeRay::Tokens::ClassOfKind
* Benchmark, comparison: replaced SilverCity with pygmentsmurphy2007-04-243-5/+9
| | | | | | | A bit of code and documentation cleanup HTML encoder: fixed css class output for NO_HIGHLIGHT tokens when :info is set. Fixed Text encoder.
* Done:murphy2007-01-018-118/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* HTML encoder: Fixed :css => :style output and made some code cleanup.murphy2006-10-191-8/+19
|
* Ruby scanner: #{...} delimiters are now :inline_delimiter to solve CSS problem.murphy2006-10-181-0/+1
| | | | | | New token: :inline_delimiter Scanner tests suite revamped: colorization, split up into methods.
* Ruby scanner: deleted regexp highlighting (didn't work anyway)murphy2006-09-281-2/+5
| | | | | HTML highlighter: unknown token classes now yield a CSS class with that name instead of :error A new Ruby test
* rake test now runs in debug mode.murphy2006-07-1116-868/+868
| | | | All .rb files converted to UNIX format (where did the \r come from?)
* Changed error handling of all scanners: :error tokens are OK now, even in ↵murphy2006-07-111-245/+249
| | | | | | | | | | | | | 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-1017-922/+922
|
* Encoders::HTML: Removed option caching.murphy2006-06-281-9/+1
|
* new version: 0.7.1murphy2006-05-111-0/+21
| | | | | | | improved bin/coderay and included it into package added gem:install task added Duo#highlight (alias for encode) fixed a Plugin bug
* Re-indented everything. Sorry to break the blame chain.murphy2006-04-1613-164/+187
|
* All scanners revisited not to produce errors unless in DEBUG mode. [thx@Daniel]murphy2006-04-161-3/+11
| | | | | | | 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-4/+1
| | | | | | | | | | 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-103-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* HTML Encoder: inline numerization corrected.murphy2006-03-231-1/+3
| | | | | | | | New demo: demo/demo_html_list.rb. Some demos adjusted. C Scanner: error messages fixed. Rakefile: test_demos now in debug mode. test/suite.rb is using reusable Scanners now.
* CodeRay::Duo added for cool caching!murphy2006-03-213-25/+22
| | | | | | | | bench/caching.rb added t´for demonstrating this. HTML Encoder: creates unwrapped output by default (still problems with that.) Numerizing changed (doesn't try to prevent nesting errors) Speedup: "::String" is faster.
* Changed HTML encoder evil char handling (allowing for UTF-8 now.)murphy2006-03-161-5/+6
|