From 739cc1437eacd6c4f4550fab910cc7058fa6e104 Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Sun, 2 Mar 2014 15:31:36 -0500 Subject: [PATCH] Build YAML list of gifs --- script/build_site_index | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/script/build_site_index b/script/build_site_index index dec14857b..563855918 100755 --- a/script/build_site_index +++ b/script/build_site_index @@ -1,6 +1,8 @@ #! /usr/bin/env ruby require 'builder' +require 'fileutils' +require 'yaml' def dir_blacklist ["css", "sass", "script"] @@ -17,13 +19,23 @@ def get_gif_dirs Dir.foreach(".").map { |f| f unless useless?(f) }.compact end +def liquid_info_for_file(dir, filename) + path = File.join(filename) + { + "path" => path, + "modified_time" => File.mtime(path).to_i, + "extname" => File.extname(path) + } +end + list = Builder::XmlMarkup.new( target: File.open("_includes/site-index.html", 'w'), indent: 0, margin: 0 ) -dirs = get_gif_dirs +dirs = get_gif_dirs +files = [] list.ul do |builder| dirs.each do |dir| @@ -31,6 +43,7 @@ list.ul do |builder| dir_element.text!(dir) dir_element.ul do |ul| Dir.glob("#{dir}/*.gif") do |gif| + files << liquid_info_for_file(dir, gif) ul.li do |li| li.a( File.basename(gif), @@ -44,3 +57,6 @@ list.ul do |builder| end end end + +FileUtils.mkdir_p("_data") unless File.directory?("_data") +File.open("_data/static_files.yml", 'w') { |f| f.write(YAML.dump(files)) }