Little speedups
authorJoerg Jaspert <joerg@debian.org>
Sat, 12 Mar 2016 22:21:07 +0000 (23:21 +0100)
committerJoerg Jaspert <joerg@debian.org>
Sat, 12 Mar 2016 22:21:07 +0000 (23:21 +0100)
Rakefile
_plugins/alias_generator.rb
_plugins/pageless-redirects.rb

index 9bd6b60..e3e506a 100644 (file)
--- a/Rakefile
+++ b/Rakefile
@@ -85,7 +85,7 @@ end
 
 # rake post["Title"]
 desc "Create a post in _posts"
-task :post, [:title] do |t, args|
+multitask :post, [:title] do |t, args|
   args.with_defaults(:title => "Forgot to enter a title")
   template = CONFIG["post"]["template"]
   extension = CONFIG["post"]["extension"]
@@ -98,7 +98,7 @@ end
 
 # rake draft["Title"]
 desc "Create a post in _drafts"
-task :draft, [:title, :category, :content] do |t, args|
+multitask :draft, [:title, :category, :content] do |t, args|
   if args.title == nil then
     puts "Error! title is empty"
     puts "Usage: draft[title,category,content]"
@@ -117,7 +117,7 @@ end
 
 # rake publish
 desc "Move a post from _drafts to _posts"
-task :publish do
+multitask :publish do
   extension = CONFIG["post"]["extension"]
   files = Dir["#{DRAFTS}/*.#{extension}"]
   files.each_with_index do |file, index|
@@ -137,7 +137,7 @@ end
 # rake page["Title"]
 # rake page["Title","Path/to/folder"]
 desc "Create a page (optional filepath)"
-task :page, :title, :path do |t, args|
+multitask :page, :title, :path do |t, args|
   title = args[:title]
   template = CONFIG["page"]["template"]
   extension = CONFIG["page"]["extension"]
@@ -156,7 +156,7 @@ end
 
 # rake build
 desc "Build the site, optionally with changed destination path"
-task :build, :option do |t, args|
+multitask :build, :option do |t, args|
   option = args[:option]
   if option.nil? or option.empty?
     execute("jekyll build")
@@ -169,7 +169,7 @@ end
 # rake watch[number]
 # rake watch["drafts"]
 desc "Serve and watch the site (with post limit or drafts)"
-task :watch, :option do |t, args|
+multitask :watch, :option do |t, args|
   option = args[:option]
   interrupted = false
   trap("INT") { interrupted = true }
@@ -189,7 +189,7 @@ end
 
 # rake preview
 desc "Launch a preview of the site in the browser"
-task :preview do
+multitask :preview do
   port = CONFIG["port"]
   if port.nil? or port.empty?
     port = 4000
index 5eea7f2..87a4e4a 100644 (file)
@@ -28,7 +28,7 @@
 # Plugin License: MIT
 
 module Jekyll
-
+  require 'peach'
   class AliasGenerator < Generator
 
     @@nginxaliases = Hash.new
@@ -42,13 +42,13 @@ module Jekyll
     end
 
     def process_posts
-      @site.posts.each do |post|
+      @site.posts.peach do |post|
         generate_aliases(post.url, post.data['alias'])
       end
     end
 
     def process_pages
-      @site.pages.each do |page|
+      @site.pages.peach do |page|
         generate_aliases(page.destination('').gsub(/index\.(html|htm)$/, ''), page.data['alias'])
       end
     end
@@ -56,7 +56,7 @@ module Jekyll
     def write_nginx
       File.open(File.join(@site.dest, '../nginx.rewrite'), 'w') do |file|
         @@nginxaliases.each_pair do |dest, aliases|
-          aliases.each do |falias|
+          aliases.peach do |falias|
             file.write("rewrite #{falias} #{dest} permanent;\n")
           end
         end
@@ -69,7 +69,7 @@ module Jekyll
       alias_paths.compact!
       @@nginxaliases[destination_path]=Array.new
 
-      alias_paths.flatten.each do |alias_path|
+      alias_paths.flatten.peach do |alias_path|
         alias_path = File.join('/', alias_path.to_s)
 
         alias_dir  = File.extname(alias_path).empty? ? alias_path : File.dirname(alias_path)
index 0314eb5..be00b8e 100644 (file)
@@ -52,7 +52,7 @@
 require 'json'
 
 module Jekyll
-
+  require 'peach'
   class PagelessRedirectGenerator < Generator
 
     def generate(site)
@@ -66,7 +66,7 @@ module Jekyll
     def process_yaml
       file_path = @site.source + "/_redirects.yml"
       if File.exists?(file_path)
-        YAML.load_file(file_path).each do | new_url, old_url |
+        YAML.load_file(file_path).peach do | new_url, old_url |
           generate_aliases( old_url, new_url )
         end
       end
@@ -92,7 +92,7 @@ module Jekyll
       if File.exists?(file_path)
         file = File.new(file_path, "r")
         content = JSON.parse(file.read)
-        content.each do |new_url, old_url|
+        content.peach do |new_url, old_url|
             generate_aliases(old_url, new_url)
         end
         file.close
@@ -104,7 +104,7 @@ module Jekyll
       alias_paths << aliases
       alias_paths.compact!
 
-      alias_paths.flatten.each do |alias_path|
+      alias_paths.flatten.peach do |alias_path|
         alias_path = alias_path.to_s
 
         alias_dir  = File.extname(alias_path).empty? ? alias_path : File.dirname(alias_path)