class Rouge::Theme
Public Class Methods
base_style()
click to toggle source
# File lib/rouge/theme.rb, line 97 def base_style styles[Token::Tokens::Text] end
find(n)
click to toggle source
# File lib/rouge/theme.rb, line 108 def find(n) registry[n.to_s] end
get_own_style(token)
click to toggle source
# File lib/rouge/theme.rb, line 85 def get_own_style(token) token.token_chain.each do |anc| return styles[anc] if styles[anc] end nil end
get_style(token)
click to toggle source
# File lib/rouge/theme.rb, line 93 def get_style(token) get_own_style(token) || base_style end
name(n=nil)
click to toggle source
# File lib/rouge/theme.rb, line 101 def name(n=nil) return @name if n.nil? @name = n.to_s Theme.registry[@name] = self end
palette(arg={})
click to toggle source
# File lib/rouge/theme.rb, line 49 def self.palette(arg={}) @palette ||= InheritableHash.new(superclass.palette) if arg.is_a? Hash @palette.merge! arg @palette else case arg when /#[0-9a-f]+/i arg else @palette[arg] or raise "not in palette: #{arg.inspect}" end end end
registry()
click to toggle source
# File lib/rouge/theme.rb, line 112 def registry @registry ||= {} end
render(opts={}, &b)
click to toggle source
# File lib/rouge/theme.rb, line 70 def self.render(opts={}, &b) new(opts).render(&b) end
style(*tokens)
click to toggle source
# File lib/rouge/theme.rb, line 75 def style(*tokens) style = tokens.last.is_a?(Hash) ? tokens.pop : {} style = Style.new(self, style) tokens.each do |tok| styles[tok] = style end end
styles()
click to toggle source
# File lib/rouge/theme.rb, line 66 def self.styles @styles ||= InheritableHash.new(superclass.styles) end
Public Instance Methods
styles()
click to toggle source
# File lib/rouge/theme.rb, line 44 def styles @styles ||= self.class.styles.dup end