Module: RedQuilt::Theme
- Defined in:
- lib/red_quilt/theme.rb
Overview
Optional bundled stylesheets for standalone HTML output. ‘:none` (the default) embeds no CSS and leaves the bare document untouched; named themes load a stylesheet shipped under lib/red_quilt/themes/.
Constant Summary collapse
- NAMES =
Theme names that embed a bundled stylesheet (excludes :none).
%i[default].freeze
Class Method Summary collapse
-
.css(name) ⇒ Object
Returns the CSS for ‘name`, or nil for :none / nil (no embedded CSS).
Class Method Details
.css(name) ⇒ Object
Returns the CSS for ‘name`, or nil for :none / nil (no embedded CSS). Raises ArgumentError for an unknown name.
18 19 20 21 22 23 24 25 26 |
# File 'lib/red_quilt/theme.rb', line 18 def css(name) name = (name || :none).to_sym return nil if name == :none unless NAMES.include?(name) raise ArgumentError, "unknown theme #{name.inspect} (available: none, #{NAMES.join(', ')})" end (@cache ||= {})[name] ||= File.read(File.join(DIR, "#{name}.css")).freeze end |