From 65f7f7f0b3fa2264336d21a169b7ef426079dd2d Mon Sep 17 00:00:00 2001 From: Brandon Mathis Date: Tue, 1 Jan 2013 14:22:48 -0600 Subject: [PATCH] Rake task new_post now accepts titles through stdin This should help resolve issues for zsh users and make it easier to enter titles which freak out Rake's argument processing --- Rakefile | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Rakefile b/Rakefile index ef9af47..6c699df 100644 --- a/Rakefile +++ b/Rakefile @@ -92,10 +92,13 @@ end # usage rake new_post[my-new-post] or rake new_post['my new post'] or rake new_post (defaults to "new-post") desc "Begin a new post in #{source_dir}/#{posts_dir}" task :new_post, :title do |t, args| + if args.title + title = args.title + else + title = get_stdin("Enter a title for your post: ") + end raise "### You haven't set anything up yet. First run `rake install` to set up an Octopress theme." unless File.directory?(source_dir) mkdir_p "#{source_dir}/#{posts_dir}" - args.with_defaults(:title => 'new-post') - title = args.title filename = "#{source_dir}/#{posts_dir}/#{Time.now.strftime('%Y-%m-%d')}-#{title.to_url}.#{new_post_ext}" if File.exist?(filename) abort("rake aborted!") if ask("#{filename} already exists. Do you want to overwrite?", ['y', 'n']) == 'n'