diff options
author | Kornelius Kalnbach <murphy@rubychan.de> | 2013-10-03 13:42:59 +0200 |
---|---|---|
committer | Kornelius Kalnbach <murphy@rubychan.de> | 2013-10-03 13:42:59 +0200 |
commit | 0023deede4144b4d7e8aa90a6557a3df00b88edc (patch) | |
tree | 847d7baf6e4cb034e3f97ecdc98eb9e0cbee8035 | |
parent | 9cd856dc12a14856b747faed7b5855b9de19d07c (diff) | |
download | coderay-0023deede4144b4d7e8aa90a6557a3df00b88edc.tar.gz |
don't break old API
-rw-r--r-- | lib/coderay/encoders/html/css.rb | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/lib/coderay/encoders/html/css.rb b/lib/coderay/encoders/html/css.rb index 32470b4..e78d062 100644 --- a/lib/coderay/encoders/html/css.rb +++ b/lib/coderay/encoders/html/css.rb @@ -3,21 +3,22 @@ module Encoders class HTML class CSS # :nodoc: - def initialize style = :default - @style = style + def initialize style_name = :default + @style_name = style_name end - - def stylesheet - @stylesheet ||= CodeRay::Styles[@style] + + def style + @style ||= CodeRay::Styles[@style_name] end - + def css - [ - stylesheet::CSS_MAIN_STYLES, - stylesheet::TOKEN_COLORS.gsub(/^(?!$)/, '.CodeRay ') + @css ||= [ + style::CSS_MAIN_STYLES, + style::TOKEN_COLORS.gsub(/^(?!$)/, '.CodeRay ') ].join("\n") end - + alias stylesheet css + def get_style_for_css_classes css_classes cl = styles[css_classes.first] return '' unless cl @@ -29,7 +30,7 @@ module Encoders return style end - private + private CSS_CLASS_PATTERN = / ( # $1 = selectors @@ -46,7 +47,7 @@ module Encoders /mx def styles @styles ||= Hash.new.tap do |styles| - stylesheet::TOKEN_COLORS.scan CSS_CLASS_PATTERN do |selectors, style, error| + style::TOKEN_COLORS.scan CSS_CLASS_PATTERN do |selectors, style, error| raise "CSS parse error: '#{error.inspect}' not recognized" if error for selector in selectors.split(',') classes = selector.scan(/[-\w]+/) |