module Octopress::Ink::Plugins

Attributes

css_asset_paths[R]
js_asset_paths[R]
registered[R]

Public Instance Methods

add_assets(assets) click to toggle source
# File lib/octopress-ink/plugins.rb, line 69
def add_assets(assets)
  plugins.each do |p| 
    p.add_asset_files(assets)
  end
end
add_css_tag(tag) click to toggle source
# File lib/octopress-ink/plugins.rb, line 75
def add_css_tag(tag)
  @css_tags << tag
end
add_files() click to toggle source
# File lib/octopress-ink/plugins.rb, line 63
def add_files
  add_assets(%w{images pages files fonts docs})
  add_stylesheets
  add_javascripts
end
add_javascripts() click to toggle source

Copy/Generate Javascripts

# File lib/octopress-ink/plugins.rb, line 143
def add_javascripts
  if Ink.configuration['asset_pipeline']['combine_js']
    PluginAssetPipeline.write_combined_javascript
  else
    add_assets(%w{js coffee})
  end
end
add_js_tag(tag) click to toggle source
# File lib/octopress-ink/plugins.rb, line 79
def add_js_tag(tag)
  @js_tags << tag
end
add_stylesheets() click to toggle source

Copy/Generate Stylesheets

# File lib/octopress-ink/plugins.rb, line 133
def add_stylesheets
  if Ink.configuration['asset_pipeline']['combine_css']
    PluginAssetPipeline.write_combined_stylesheet
  else
    add_assets(%w{css sass})
  end
end
config(lang=nil) click to toggle source
# File lib/octopress-ink/plugins.rb, line 98
def config(lang=nil)
  @configs ||= {}
  @configs[lang || 'default'] ||= get_config(lang)
end
css_tags() click to toggle source
# File lib/octopress-ink/plugins.rb, line 151
def css_tags
  if Ink.configuration['asset_pipeline']['combine_css']
    PluginAssetPipeline.stylesheet_tag
  else
    @css_tags.join('')
  end
end
custom_dir() click to toggle source

Read plugin dir from site configs

# File lib/octopress-ink/plugins.rb, line 127
def custom_dir
  Octopress.site.plugin_manager.plugins_path.first
end
each(&block) click to toggle source
# File lib/octopress-ink/plugins.rb, line 15
def each(&block)
  plugins.each(&block)
end
get_config(lang=nil) click to toggle source
# File lib/octopress-ink/plugins.rb, line 103
def get_config(lang=nil)
  config            = {}
  config['plugins'] = {}

  plugins.each do |p|
    if p == theme
      config['theme'] = p.config(lang)
    else
      config['plugins'][p.slug] = p.config(lang)
    end
  end

  config
end
include(name, file) click to toggle source

Inclue partials from plugins

# File lib/octopress-ink/plugins.rb, line 120
def include(name, file)
  p = plugin(name)
  p.include(file)
end
js_tags() click to toggle source
# File lib/octopress-ink/plugins.rb, line 159
def js_tags
  if Ink.configuration['asset_pipeline']['combine_js']
    PluginAssetPipeline.javascript_tag
  else
    @js_tags.join('')
  end
end
plugin(slug) click to toggle source
# File lib/octopress-ink/plugins.rb, line 29
def plugin(slug)
  if slug == 'theme'
    @theme
  else
    found = plugins.reject { |p| p.slug != slug }
    if found.empty?
      raise IOError.new "No Theme or Plugin with the slug '#{slug}' was found."
    end
    found.first
  end
end
plugins() click to toggle source
# File lib/octopress-ink/plugins.rb, line 41
def plugins
  [@theme].concat(@plugins).concat(@user_plugins).compact
end
register() click to toggle source
# File lib/octopress-ink/plugins.rb, line 49
def register
  unless @registered
    @registered = true
    @static_files = []
    @css_tags = []
    @js_tags = []
    Cache.reset
    Bootstrap.reset
    PluginAssetPipeline.reset

    plugins.each(&:register) 
  end
end
register_plugin(plugin, options=nil) click to toggle source
# File lib/octopress-ink/plugins.rb, line 83
def register_plugin(plugin, options=nil)
  new_plugin = plugin.new(options)

  case new_plugin.type
  when 'theme'
    @theme = new_plugin
  else
    if new_plugin.local
      @user_plugins << new_plugin
    else
      @plugins << new_plugin
    end
  end
end
reset() click to toggle source
# File lib/octopress-ink/plugins.rb, line 45
def reset
  @registered = false
end
size() click to toggle source
# File lib/octopress-ink/plugins.rb, line 25
def size
  plugins.size
end
static_files() click to toggle source

Store static files to be written

# File lib/octopress-ink/plugins.rb, line 21
def static_files
  @static_files
end
theme() click to toggle source
# File lib/octopress-ink/plugins.rb, line 11
def theme
  @theme
end