Module: Archival
- Defined in:
- lib/archival.rb,
lib/archival/config.rb,
lib/archival/listen.rb,
lib/archival/logger.rb,
lib/archival/parser.rb,
lib/archival/builder.rb,
lib/archival/version.rb,
lib/archival/helper_server.rb,
lib/archival/template_array.rb,
lib/archival/markdown_renderer.rb
Defined Under Namespace
Classes: Builder, Change, Config, DuplicateKeyError, DuplicateStaticFileError, HelperServer, Logger, MarkdownRenderer, Parser, TemplateArray
Constant Summary collapse
- VERSION =
'0.0.12'
Class Method Summary collapse
Class Method Details
.listen(config = {}) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/archival/listen.rb', line 9 def listen(config = {}) @config = Config.new(config.merge(dev_mode: true)) builder = Builder.new(@config) Logger.benchmark('built') do builder.write_all end ignore = %r{/dist/} listener = Listen.to(@config.root, ignore: ignore) do |modified, added, removed| changes = { pages: [], objects: [], assets: [], layout: [], config: [] } add_change = lambda { |file, type| c_type = change_type(file) changes[c_type] << change(file, type) unless c_type == :none } added.each do |file| add_change.call(file, :added) end modified.each do |file| add_change.call(file, :modified) end removed.each do |file| add_change.call(file, :removed) end @server.refresh_client if rebuild?(builder, changes) end listener.start serve_helpers end |