class Fontastic2Sass::Sass

Attributes

code[R]
syntax[R]

Public Class Methods

new(font, syntax = 'sass', compatible = false) click to toggle source
# File lib/fontastic2sass/sass.rb, line 7
def initialize(font, syntax = 'sass', compatible = false)
  @font = font
  @syntax = syntax

  @format = compatible ? 'list' : 'map'

  @code = sass_convert 'sass', syntax, template(@format)
end

Public Instance Methods

oocss() click to toggle source
# File lib/fontastic2sass/sass.rb, line 16
def oocss
  sass_convert 'sass', syntax, template("oocss_#{@format}")
end

Private Instance Methods

sass_convert(from_syntax, to_syntax, sass) click to toggle source
# File lib/fontastic2sass/sass.rb, line 31
def sass_convert(from_syntax, to_syntax, sass)
  return sass if from_syntax == to_syntax

  begin
    Sass::Engine.new(sass, {:from => from_syntax.to_sym, :to => to_syntax.to_sym, :syntax => from_syntax.to_sym}).to_tree.send("to_#{to_syntax}").chomp
  rescue Sass::SyntaxError => e
    sass
  end
end
template(tmpl) click to toggle source
# File lib/fontastic2sass/sass.rb, line 22
def template(tmpl)
  icons = @font.icons
  font_family = @font.font_family

  renderer = ERB.new File.read("#{File.dirname(__FILE__)}/templates/#{tmpl}.sass.erb")
  renderer.result(binding)
end