#!/usr/bin/env ruby ROOT = ARGV[0] SNIPPETS = File.join(File.dirname(__FILE__), "snippets") def nav cat html = "" html end def file_html basename path = File.join(SNIPPETS, basename + ".html") html = File.read(File.join(SNIPPETS, "head.html")) html += nav basename html += "
" cover = File.join("/", dir.sub(ROOT, ''), "cover.jpeg") html += "" html += "
#{File.basename(mp3, '.mp3')} | " html += "
Bandcamp: #{bc}" html += "
© pdp8 Creative Commons Attribution 4.0 International License' html += File.read(File.join(SNIPPETS, "tail.html")) print_html "music", html end def video_html videos = Dir[File.join(ROOT, "videos", "*")].sort.reverse html = File.read(File.join(SNIPPETS, "head.html")) html += nav "videos" videos.each_with_index do |dir, i| date = File.basename(dir).split("_")[0] html += "
" mp4 = File.join("/videos", File.basename(dir), title.gsub(" ", "_") + ".mp4") webm = File.join("/videos", File.basename(dir), title.gsub(" ", "_") + ".webm") poster = File.join("/videos", File.basename(dir), "poster.png") html += "
"
html += lines.join("
")
html += "
© pdp8 Creative Commons Attribution 4.0 International License' html += File.read(File.join(SNIPPETS, "tail.html")) print_html "videos", html end music_html video_html ["about", "code", "pictures", "contact"].each do |basename| file_html basename end last = (Dir[File.join(ROOT, "music", "*")] + Dir[File.join(ROOT, "videos", "*")]).sort_by { |d| File.basename(d) }.last.split("/")[-2] + '.html' puts `cp "#{File.join(ROOT, last)}" "#{File.join(ROOT, "index.html")}"` [ "pdp8.png", "540px-PDP-8_.jpg", "style.css", "slideshow.js", "robots.txt" ].each { |f| puts `rsync -av "#{File.join(SNIPPETS, f)}" "#{ROOT}"` }