Top Level Namespace

Defined Under Namespace

Modules: Configuration, Options, Plugins, Shortcuts, Templates, Utils

Instance Method Summary collapse

Instance Method Details

#parse(args = []) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/bujo.rb', line 8

def parse(args = [])
  template_renderer = Templates::TemplateRenderer.new

  if File.exists?(Configuration::Structure.local_path("bujo.yaml"))
    configuration = Configuration::Configuration.load
    plugin_repository = Plugins::PluginRepository.new(configuration, template_renderer)
    Plugins::PluginRegister.new(plugin_repository.find_all).parse(args)
  else
    Plugins::PluginRegister
        .new([Plugins::InitPlugin.new({template_renderer: template_renderer})])
        .parse(args)
  end
end