lib/hyde/renderer.rb in hydeweb-0.0.5 vs lib/hyde/renderer.rb in hydeweb-0.0.7
- old
+ new
@@ -1,9 +1,21 @@
require "ostruct"
module Hyde
module Renderer
+ extend self
+
+ def get(extname, default=Hyde::Renderer::Passthru)
+ klass = extname.to_s.capitalize.to_sym
+
+ begin
+ Hyde::Renderers.const_get(klass)
+ rescue NameError
+ default
+ end
+ end
+
class Base
include Hyde::Utils
# Reference to {Page}
attr_reader :page
@@ -24,12 +36,14 @@
def markup
File.open(filename) { |f| @markup = f.read } unless @markup
@markup
end
- def self.default_ext
- ''
- end
+ def layoutable?(*a) self.class.layoutable?(*a); end
+ def default_ext(*a) self.class.default_ext(*a); end
+
+ def self.layoutable?() false; end
+ def self.default_ext() ''; end
protected
def require_lib(lib, gem=lib)
begin
require lib