jekyllpress 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: cfb2cb90d22fa0b368ec4e7def04966f91fa9cce
4
+ data.tar.gz: 44b872c9516a654f601a496c42957498c2f85f4f
5
+ SHA512:
6
+ metadata.gz: c213b8d99c204c76c21c1332a9a472d88d873d76153dee373e21fc1ea489db75e9709803dcd5a00cfcf807f57e090bde1ad8fd9f719f232132078ce1d8fd71f3
7
+ data.tar.gz: 098b81d69ea6f71156d4b75acec098b1c20448ecf6f7efbbc4f0ef212d05bd62214b302bb5ea0109b0ca642da1fed1edeb36a1fd22cab4e9b5db81e89b265a28
data/.gitignore ADDED
@@ -0,0 +1,17 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /spec/test_site/pages/
10
+ /spec/test_site/_posts/
11
+ /spec/test_site/_site/
12
+ /tmp/
13
+ *.bundle
14
+ *.so
15
+ *.o
16
+ *.a
17
+ mkmf.log
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format documentation
2
+ --color
data/.travis.yml ADDED
@@ -0,0 +1,3 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.0.0
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in jekyllpress.gemspec
4
+ gemspec
data/Guardfile ADDED
@@ -0,0 +1,6 @@
1
+ guard :rspec, cmd: 'bundle exec rspec', :all_on_start => true, :after_all_pass => true do
2
+ watch(%r{^spec/.+_spec\.rb$})
3
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
4
+ watch('spec/spec_helper.rb') { "spec" }
5
+ end
6
+
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2014 Tamara Temple
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,21 @@
1
+ # Jekyllpress
2
+
3
+ A [Thor](http://whatisthor.com) script that provides several actions to help support and use a [Jekyll](http://jekyllrb.com) site.
4
+
5
+ ## Installation
6
+
7
+ $ gem install jekyllpress
8
+
9
+ ## Usage
10
+
11
+ $ jekyllpress help
12
+
13
+ ## Contributing
14
+
15
+ *"Fork it, Branch it, Commit it, Push it"*
16
+
17
+ 1. Fork it ( https://github.com/tamouse/jekyllpress/fork )
18
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
19
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
20
+ 4. Push to the branch (`git push origin my-new-feature`)
21
+ 5. Create a new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,7 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
7
+
data/bin/jekyllpress ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'jekyllpress'
4
+ Jekyllpress::App.start(ARGV)
@@ -0,0 +1,31 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'jekyllpress/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "jekyllpress"
8
+ spec.version = Jekyllpress::VERSION
9
+ spec.authors = ["Tamara Temple"]
10
+ spec.email = ["tamouse@gmail.com"]
11
+ spec.summary = %q{Thor utility to do neat jekyll stuff.}
12
+ spec.homepage = "https://github.com/tamouse/jekyllpress"
13
+ spec.license = "MIT"
14
+
15
+ spec.files = `git ls-files -z`.split("\x0")
16
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
+ spec.require_paths = ["lib"]
19
+
20
+ spec.add_dependency "jekyll", ">= 2.1"
21
+ spec.add_dependency "stringex", ">= 2"
22
+
23
+ spec.add_development_dependency "bundler", "~> 1.6"
24
+ spec.add_development_dependency "rake", "~> 10.0"
25
+ spec.add_development_dependency "rspec"
26
+ spec.add_development_dependency "pry", "~> 0.9"
27
+ spec.add_development_dependency "pry-debugger"
28
+ spec.add_development_dependency "awesome_print"
29
+ spec.add_development_dependency "guard"
30
+ spec.add_development_dependency "guard-rspec"
31
+ end
@@ -0,0 +1,157 @@
1
+ require 'thor'
2
+ require 'jekyll'
3
+ require 'fileutils'
4
+ require 'stringex_lite'
5
+ require "jekyllpress/version"
6
+
7
+ module Jekyllpress
8
+
9
+ class App < Thor
10
+ include Thor::Actions
11
+ package_name 'Jekyllpress::App'
12
+ map ["-V","--version"] => :version
13
+
14
+ desc "version", "Display Jekyllpress::App version string"
15
+ def version
16
+ say "Jekyllpress Version: #{Jekyllpress::VERSION}"
17
+ Jekyllpress::VERSION
18
+ end
19
+
20
+ desc "setup", "Set up templates"
21
+ def setup()
22
+ with_config do |config|
23
+ empty_directory(File.join(source, template_dir))
24
+ create_file(File.join(source, template_dir, new_post_template),
25
+ %q{---
26
+ layout: post
27
+ title: <%= @title %>
28
+ date: <%= Time.now.strftime("%Y-%m-%d %H:%M") %>
29
+ categories: <%= @categories %>
30
+ tags: <%= @tags %>
31
+ ---
32
+ }.gsub(/^\s*/,''))
33
+ create_file(File.join(source, template_dir, new_page_template),
34
+ %q{---
35
+ layout: page
36
+ title: <%= @title %>
37
+ date: <%= Time.now.strftime("%Y-%m-%d %H:%M") %>
38
+ ---
39
+ }.gsub(/^\s*/,''))
40
+ [__method__, source, template_dir, new_post_template, new_page_template]
41
+ end
42
+ end
43
+
44
+ desc "new_post TITLE", "Create a new posts with title TITLE"
45
+ method_option :categories, :desc => "list of categories to assign this post", :type => :array, :aliases => %w[-c]
46
+ method_option :tags, :desc => "list of tags to assign this post", :type => :array, :aliases => %w[-t]
47
+ def new_post(title="")
48
+ check_templates
49
+ @title = title.to_s
50
+ @title = ask("Title for your post: ") if @title.empty?
51
+
52
+ @categories = options.fetch("categories", [])
53
+ @tags = options.fetch("tags", [])
54
+
55
+ with_config do |config|
56
+ check_templates
57
+ filename = destination(source, posts_dir, post_filename(title))
58
+
59
+ template(File.join(template_dir,new_post_template), filename)
60
+
61
+ [__method__, @title, filename, @categories, @tags]
62
+ end
63
+ end
64
+
65
+ desc "new_page TITLE", "Create a new page with title TITLE"
66
+ method_option :location, :desc => "Location for page to appear in directory", :type => :string, :aliases => %w[-l --loc]
67
+ def new_page(title="")
68
+ check_templates
69
+ @title = title.to_s
70
+ @title = ask("Page title: ") if @title.empty?
71
+
72
+ location = options.fetch("location", nil)
73
+
74
+ with_config do |config|
75
+ filename = destination(source, location, page_dirname(title), index_name)
76
+
77
+ template(File.join(template_dir, new_page_template), filename)
78
+
79
+ [__method__, @title, filename, location]
80
+ end
81
+ end
82
+
83
+ private
84
+
85
+ def with_config
86
+ raise "no block given at #{caller[1]}" unless block_given?
87
+ self.class.source_root(jekyll_config["source"])
88
+ yield jekyll_config
89
+ end
90
+
91
+ def check_templates
92
+ File.stat(File.join(source, template_dir))
93
+ File.stat(File.join(source, template_dir, new_page_template))
94
+ File.stat(File.join(source, template_dir, new_post_template))
95
+ rescue ::Errno::ENOENT => error
96
+ warn "It appears you have not set up a template directory yet.",
97
+ "Run `#{$0} setup` to set up the templates directory"
98
+ raise error
99
+ end
100
+
101
+ def jekyll_config
102
+ @jekyll_config ||= begin
103
+ conf = Jekyll.configuration({})
104
+ unless conf.has_key?("templates")
105
+ conf.merge!({
106
+ "templates" => {
107
+ "template_dir" => "_templates",
108
+ "new_post_template" => "new_post.markdown",
109
+ "new_page_template" => "new_page.markdown"
110
+ }
111
+ })
112
+ end
113
+ end
114
+
115
+ end
116
+ def new_ext
117
+ jekyll_config["markdown_ext"].split(',').first
118
+ end
119
+
120
+ def source
121
+ jekyll_config['source']
122
+ end
123
+
124
+ def post_filename(title)
125
+ "#{Time.now.strftime("%Y-%m-%d")}-#{title.to_url}.#{new_ext}"
126
+ end
127
+
128
+ def page_dirname(title)
129
+ "#{title.to_url}"
130
+ end
131
+
132
+ def index_name(default="index")
133
+ "#{default}.#{new_ext}"
134
+ end
135
+
136
+ def posts_dir
137
+ '_posts'
138
+ end
139
+
140
+ def destination(*paths)
141
+ File.join(paths.compact.map(&:to_s))
142
+ end
143
+
144
+ def template_dir
145
+ jekyll_config["templates"]["template_dir"]
146
+ end
147
+
148
+ def new_post_template
149
+ jekyll_config["templates"]["new_post_template"]
150
+ end
151
+
152
+ def new_page_template
153
+ jekyll_config["templates"]["new_page_template"]
154
+ end
155
+ end
156
+
157
+ end
@@ -0,0 +1,3 @@
1
+ module Jekyllpress
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,7 @@
1
+ require 'spec_helper'
2
+
3
+ describe Jekyllpress do
4
+ it 'has a version number' do
5
+ expect(Jekyllpress::VERSION).not_to be nil
6
+ end
7
+ end
@@ -0,0 +1,94 @@
1
+ require 'spec_helper'
2
+
3
+ jekyll_match = %r[(gems/jekyll-.+/lib/jekyll)]
4
+ # load 'jekyllpress.rb'; STDERR.puts $".grep(jekyll_match); exit;
5
+
6
+ Dir.chdir('spec/test_site') do |test_dir|
7
+ $".delete_if{|x| x.match(jekyll_match)} ; load 'jekyllpress.rb' # Have to load this *after* we're in the working directory
8
+ # load 'jekyllpress.rb'
9
+ describe Jekyllpress::App do
10
+ describe ":version returns the version string" do
11
+ it {expect(Jekyllpress::App.start(%w[version])).to include(Jekyllpress::VERSION)}
12
+ it {expect(Jekyllpress::App.start(%w[-V])).to include(Jekyllpress::VERSION)}
13
+ it {expect(Jekyllpress::App.start(%w[--version])).to include(Jekyllpress::VERSION)}
14
+ end
15
+
16
+ describe ":new_post returns the title, categories and tags" do
17
+ FileUtils.rm_rf "_posts/"
18
+ action, title, filename, categories, tags = Jekyllpress::App.start(%w[new_post A\ New\ Post -c=one two three -t=a b c])
19
+
20
+ it {expect(action).to eq :new_post}
21
+ it {expect(title).to eq "A New Post"}
22
+ it {expect(categories).to eq %w[one two three]}
23
+ it {expect(tags).to eq %w[a b c]}
24
+ it {expect(filename).to be_a String}
25
+ it {expect(filename).not_to be_empty}
26
+ it {expect(filename).to include("#{test_dir}/_posts/#{Time.now.strftime("%Y-%m-%d")}-a-new-post.markdown")}
27
+ end
28
+
29
+ describe ":new_page returns title, filename, location" do
30
+ FileUtils.rm_rf "pages/a-new-page"
31
+ action, title, filename, location = Jekyllpress::App.start(%w[new_page A\ New\ Page -l=pages])
32
+
33
+ it {expect(action).to eq :new_page}
34
+ it {expect(title).to eq "A New Page"}
35
+ it {expect(location).to eq "pages"}
36
+ it {expect(filename).to be_a String}
37
+ it {expect(filename).not_to be_empty}
38
+ it {expect(filename).to include("#{test_dir}/pages/a-new-page/index.markdown")}
39
+ end
40
+ end
41
+ end
42
+
43
+ Dir.chdir('tmp') do |test_dir|
44
+
45
+ FileUtils.rm_rf 'blank'
46
+ raise "failed to erase blank" if File.directory?('blank')
47
+ x = `bundle exec jekyll new blank`
48
+ raise "jekyll new failed: #{x}" unless $?.success?
49
+ Dir.chdir('blank') do |blank|
50
+ $".delete_if{|x| x.match(jekyll_match)} ; load 'jekyllpress.rb' # Have to load this *after* we're in the working directory
51
+ describe "pristine jekyll installation" do
52
+
53
+ it "should bloody well be inside the blank directory!!!" do
54
+ expect(Jekyll::Configuration::DEFAULTS["source"]).to include("blank")
55
+ end
56
+ it "should abort when no templates are found" do
57
+ templates_dir = File.join(test_dir, blank, '_templates')
58
+ FileUtils.rm_rf templates_dir
59
+ expect{Jekyllpress::App.start(%w[new_page blah])}.to raise_error(::Errno::ENOENT)
60
+ expect(File.directory?(templates_dir)).not_to eq(true)
61
+ end
62
+
63
+ describe ":setup creates the template directory and contents" do
64
+ before(:all) do
65
+ @templates_dir = File.join(test_dir, blank, '_templates')
66
+ FileUtils.rm_rf @templates_dir
67
+ @result = Jekyllpress::App.start(%w[setup])
68
+ end
69
+
70
+ it {expect(@result[0]).to eq(:setup)}
71
+ it {expect(@result[1]).to include('blank')}
72
+ it {expect(@result[2]).to eq("_templates")}
73
+ it {expect(@result[4]).to eq("new_page.markdown")}
74
+ it {expect(@result[3]).to eq("new_post.markdown")}
75
+ it "templates directory exists" do
76
+ expect(File.directory?(@templates_dir)).to eq(true)
77
+ end
78
+ it "new_page_template exists" do
79
+ Dir.chdir(@templates_dir) do |templates_dir|
80
+ expect(File.exist?("new_page.markdown")).to eq(true)
81
+ end
82
+ end
83
+ it "new_post_template exists" do
84
+ Dir.chdir(@templates_dir) do |templates_dir|
85
+ expect(File.exist?("new_post.markdown")).to eq(true)
86
+ end
87
+ end
88
+ end
89
+ end
90
+
91
+
92
+ end
93
+
94
+ end
@@ -0,0 +1,4 @@
1
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
+ require 'pry'
3
+ require 'fileutils'
4
+ $0 = 'jekyllpress'
@@ -0,0 +1 @@
1
+ _site
@@ -0,0 +1,12 @@
1
+ # Site settings
2
+ title: Your awesome title
3
+ email: your-email@domain.com
4
+ description: "Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description."
5
+ baseurl: ""
6
+ url: "http://yourdomain.com"
7
+ twitter_username: jekyllrb
8
+ github_username: jekyll
9
+
10
+ # Build settings
11
+ markdown: kramdown
12
+ permalink: pretty
@@ -0,0 +1,61 @@
1
+ <footer class="site-footer">
2
+
3
+ <div class="wrap">
4
+
5
+ <h2 class="footer-heading">{{ site.title }}</h2>
6
+
7
+ <div class="footer-col-1 column">
8
+ <ul>
9
+ <li>{{ site.title }}</li>
10
+ <li><a href="mailto:{{ site.email }}">{{ site.email }}</a></li>
11
+ </ul>
12
+ </div>
13
+
14
+ <div class="footer-col-2 column">
15
+ <ul>
16
+ {% if site.github_username %}<li>
17
+ <a href="https://github.com/{{ site.github_username }}">
18
+ <span class="icon github">
19
+ <svg version="1.1" class="github-icon-svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
20
+ viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
21
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#C2C2C2" d="M7.999,0.431c-4.285,0-7.76,3.474-7.76,7.761
22
+ c0,3.428,2.223,6.337,5.307,7.363c0.388,0.071,0.53-0.168,0.53-0.374c0-0.184-0.007-0.672-0.01-1.32
23
+ c-2.159,0.469-2.614-1.04-2.614-1.04c-0.353-0.896-0.862-1.135-0.862-1.135c-0.705-0.481,0.053-0.472,0.053-0.472
24
+ c0.779,0.055,1.189,0.8,1.189,0.8c0.692,1.186,1.816,0.843,2.258,0.645c0.071-0.502,0.271-0.843,0.493-1.037
25
+ C4.86,11.425,3.049,10.76,3.049,7.786c0-0.847,0.302-1.54,0.799-2.082C3.768,5.507,3.501,4.718,3.924,3.65
26
+ c0,0,0.652-0.209,2.134,0.796C6.677,4.273,7.34,4.187,8,4.184c0.659,0.003,1.323,0.089,1.943,0.261
27
+ c1.482-1.004,2.132-0.796,2.132-0.796c0.423,1.068,0.157,1.857,0.077,2.054c0.497,0.542,0.798,1.235,0.798,2.082
28
+ c0,2.981-1.814,3.637-3.543,3.829c0.279,0.24,0.527,0.713,0.527,1.437c0,1.037-0.01,1.874-0.01,2.129
29
+ c0,0.208,0.14,0.449,0.534,0.373c3.081-1.028,5.302-3.935,5.302-7.362C15.76,3.906,12.285,0.431,7.999,0.431z"/>
30
+ </svg>
31
+ </span>
32
+ <span class="username">{{ site.github_username }}</span>
33
+ </a>
34
+ </li>{% endif %}
35
+ {% if site.twitter_username %}<li>
36
+ <a href="https://twitter.com/{{ site.twitter_username }}">
37
+ <span class="icon twitter">
38
+ <svg version="1.1" class="twitter-icon-svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
39
+ viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
40
+ <path fill="#C2C2C2" d="M15.969,3.058c-0.586,0.26-1.217,0.436-1.878,0.515c0.675-0.405,1.194-1.045,1.438-1.809
41
+ c-0.632,0.375-1.332,0.647-2.076,0.793c-0.596-0.636-1.446-1.033-2.387-1.033c-1.806,0-3.27,1.464-3.27,3.27
42
+ c0,0.256,0.029,0.506,0.085,0.745C5.163,5.404,2.753,4.102,1.14,2.124C0.859,2.607,0.698,3.168,0.698,3.767
43
+ c0,1.134,0.577,2.135,1.455,2.722C1.616,6.472,1.112,6.325,0.671,6.08c0,0.014,0,0.027,0,0.041c0,1.584,1.127,2.906,2.623,3.206
44
+ C3.02,9.402,2.731,9.442,2.433,9.442c-0.211,0-0.416-0.021-0.615-0.059c0.416,1.299,1.624,2.245,3.055,2.271
45
+ c-1.119,0.877-2.529,1.4-4.061,1.4c-0.264,0-0.524-0.015-0.78-0.046c1.447,0.928,3.166,1.469,5.013,1.469
46
+ c6.015,0,9.304-4.983,9.304-9.304c0-0.142-0.003-0.283-0.009-0.423C14.976,4.29,15.531,3.714,15.969,3.058z"/>
47
+ </svg>
48
+ </span>
49
+ <span class="username">{{ site.twitter_username }}</span>
50
+ </a>
51
+ </li>{% endif %}
52
+ </ul>
53
+ </div>
54
+
55
+ <div class="footer-col-3 column">
56
+ <p class="text">{{ site.description }}</p>
57
+ </div>
58
+
59
+ </div>
60
+
61
+ </footer>
@@ -0,0 +1,12 @@
1
+ <head>
2
+ <meta charset="utf-8">
3
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
4
+ <title>{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}</title>
5
+ <meta name="viewport" content="width=device-width">
6
+ <meta name="description" content="{{ site.description }}">
7
+ <link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}">
8
+
9
+ <!-- Custom CSS -->
10
+ <link rel="stylesheet" href="{{ "/css/main.css" | prepend: site.baseurl }}">
11
+
12
+ </head>
@@ -0,0 +1,28 @@
1
+ <header class="site-header">
2
+
3
+ <div class="wrap">
4
+
5
+ <a class="site-title" href="{{ site.baseurl }}/">{{ site.title }}</a>
6
+
7
+ <nav class="site-nav">
8
+ <a href="#" class="menu-icon">
9
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
10
+ viewBox="0 0 18 15" enable-background="new 0 0 18 15" xml:space="preserve">
11
+ <path fill="#505050" d="M18,1.484c0,0.82-0.665,1.484-1.484,1.484H1.484C0.665,2.969,0,2.304,0,1.484l0,0C0,0.665,0.665,0,1.484,0
12
+ h15.031C17.335,0,18,0.665,18,1.484L18,1.484z"/>
13
+ <path fill="#505050" d="M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0c0-0.82,0.665-1.484,1.484-1.484
14
+ h15.031C17.335,6.031,18,6.696,18,7.516L18,7.516z"/>
15
+ <path fill="#505050" d="M18,13.516C18,14.335,17.335,15,16.516,15H1.484C0.665,15,0,14.335,0,13.516l0,0
16
+ c0-0.82,0.665-1.484,1.484-1.484h15.031C17.335,12.031,18,12.696,18,13.516L18,13.516z"/>
17
+ </svg>
18
+ </a>
19
+ <div class="trigger">
20
+ {% for page in site.pages %}
21
+ {% if page.title %}<a class="page-link" href="{{ page.url | prepend: site.baseurl }}">{{ page.title }}</a>{% endif %}
22
+ {% endfor %}
23
+ </div>
24
+ </nav>
25
+
26
+ </div>
27
+
28
+ </header>
@@ -0,0 +1,19 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+
4
+ {% include head.html %}
5
+
6
+ <body>
7
+
8
+ {% include header.html %}
9
+
10
+ <div class="page-content">
11
+ <div class="wrap">
12
+ {{ content }}
13
+ </div>
14
+ </div>
15
+
16
+ {% include footer.html %}
17
+
18
+ </body>
19
+ </html>
@@ -0,0 +1,14 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ <div class="post">
5
+
6
+ <header class="post-header">
7
+ <h1>{{ page.title }}</h1>
8
+ </header>
9
+
10
+ <article class="post-content">
11
+ {{ content }}
12
+ </article>
13
+
14
+ </div>
@@ -0,0 +1,15 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ <div class="post">
5
+
6
+ <header class="post-header">
7
+ <h1>{{ page.title }}</h1>
8
+ <p class="meta">{{ page.date | date: "%b %-d, %Y" }}{% if page.author %} • {{ page.author }}{% endif %}{% if page.meta %} • {{ page.meta }}{% endif %}</p>
9
+ </header>
10
+
11
+ <article class="post-content">
12
+ {{ content }}
13
+ </article>
14
+
15
+ </div>
@@ -0,0 +1,5 @@
1
+ ---
2
+ layout: page
3
+ title: <%= @title %>
4
+ date: <%= Time.now.strftime("%Y-%m-%d %H:%M") %>
5
+ ---
@@ -0,0 +1,7 @@
1
+ ---
2
+ layout: post
3
+ title: <%= @title %>
4
+ date: <%= Time.now.strftime("%Y-%m-%d %H:%M") %>
5
+ categories: <%= @categories %>
6
+ tags: <%= @tags %>
7
+ ---
@@ -0,0 +1,11 @@
1
+ ---
2
+ layout: page
3
+ title: About
4
+ permalink: /about/
5
+ ---
6
+
7
+ This is the base Jekyll theme. You can find out more info about customizing your Jekyll theme, as well as basic Jekyll usage documentation at [jekyllrb.com](http://jekyllrb.com/)
8
+
9
+ You can find the source code for the Jekyll new theme at: [github.com/jglovier/jekyll-new](https://github.com/jglovier/jekyll-new)
10
+
11
+ You can find the source code for Jekyll at [github.com/jekyll/jekyll](https://github.com/jekyll/jekyll)
@@ -0,0 +1,410 @@
1
+ /* Base */
2
+ /* ----------------------------------------------------------*/
3
+
4
+ * {
5
+ margin: 0;
6
+ padding: 0;
7
+ }
8
+
9
+ html, body { height: 100%; }
10
+
11
+ body {
12
+ font-family: Helvetica, Arial, sans-serif;
13
+ font-size: 16px;
14
+ line-height: 1.5;
15
+ font-weight: 300;
16
+ background-color: #fdfdfd;
17
+ }
18
+
19
+ h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: 400; }
20
+
21
+ a { color: #2a7ae2; text-decoration: none; }
22
+ a:hover { color: #000; text-decoration: underline; }
23
+ a:visited { color: #205caa; }
24
+
25
+ /* Utility */
26
+
27
+ .wrap:before,
28
+ .wrap:after { content:""; display:table; }
29
+ .wrap:after { clear: both; }
30
+ .wrap {
31
+ max-width: 800px;
32
+ padding: 0 30px;
33
+ margin: 0 auto;
34
+ zoom: 1;
35
+ }
36
+
37
+
38
+ /* Layout Styles */
39
+ /* ----------------------------------------------------------*/
40
+
41
+ /* Site header */
42
+
43
+ .site-header {
44
+ border-top: 5px solid #333;
45
+ border-bottom: 1px solid #e8e8e8;
46
+ min-height: 56px;
47
+ background-color: white;
48
+ }
49
+
50
+ .site-title,
51
+ .site-title:hover,
52
+ .site-title:visited {
53
+ display: block;
54
+ color: #333;
55
+ font-size: 26px;
56
+ letter-spacing: -1px;
57
+ float: left;
58
+ line-height: 56px;
59
+ position: relative;
60
+ z-index: 1;
61
+ }
62
+
63
+ .site-nav {
64
+ float: right;
65
+ line-height: 56px;
66
+ }
67
+
68
+ .site-nav .menu-icon { display: none; }
69
+
70
+ .site-nav .page-link {
71
+ margin-left: 20px;
72
+ color: #727272;
73
+ letter-spacing: -.5px;
74
+ }
75
+
76
+ /* Site footer */
77
+
78
+ .site-footer {
79
+ border-top: 1px solid #e8e8e8;
80
+ padding: 30px 0;
81
+ }
82
+
83
+ .footer-heading {
84
+ font-size: 18px;
85
+ font-weight: 300;
86
+ letter-spacing: -.5px;
87
+ margin-bottom: 15px;
88
+ }
89
+
90
+ .site-footer .column { float: left; margin-bottom: 15px; }
91
+
92
+ .footer-col-1 {
93
+ width: 270px; /*fallback*/
94
+ width: -webkit-calc(35% - 10px);
95
+ width: -moz-calc(35% - 10px);
96
+ width: -o-calc(35% - 10px);
97
+ width: calc(35% - 10px);
98
+ margin-right: 10px
99
+ }
100
+ .footer-col-2 {
101
+ width: 175px; /*fallback*/
102
+ width: -webkit-calc(23.125% - 10px);
103
+ width: -moz-calc(23.125% - 10px);
104
+ width: -o-calc(23.125% - 10px);
105
+ width: calc(23.125% - 10px);
106
+ margin-right: 10px
107
+ }
108
+ .footer-col-3 {
109
+ width: 335px; /*fallback*/
110
+ width: -webkit-calc(41.875%);
111
+ width: -moz-calc(41.875%);
112
+ width: -o-calc(41.875%);
113
+ width: calc(41.875%);
114
+ }
115
+
116
+ .site-footer ul { list-style: none; }
117
+
118
+ .site-footer li,
119
+ .site-footer p {
120
+ font-size: 15px;
121
+ letter-spacing: -.3px;
122
+ color: #828282;
123
+ }
124
+
125
+ .github-icon-svg,
126
+ .twitter-icon-svg {
127
+ display: inline-block;
128
+ width: 16px;
129
+ height: 16px;
130
+ position: relative;
131
+ top: 3px;
132
+ }
133
+
134
+
135
+ /* Page Content styles */
136
+ /* ----------------------------------------------------------*/
137
+
138
+ .page-content {
139
+ padding: 30px 0;
140
+ background-color: #fff;
141
+ }
142
+
143
+
144
+ /* Home styles */
145
+ /* ----------------------------------------------------------*/
146
+
147
+ .home h1 { margin-bottom: 25px; }
148
+
149
+ .posts { list-style-type: none; }
150
+
151
+ .posts li { margin-bottom: 30px; }
152
+
153
+ .posts .post-link {
154
+ font-size: 24px;
155
+ letter-spacing: -1px;
156
+ line-height: 1;
157
+ }
158
+
159
+ .posts .post-date {
160
+ display: block;
161
+ font-size: 15px;
162
+ color: #818181;
163
+ }
164
+
165
+
166
+ /* Post styles */
167
+ /* ----------------------------------------------------------*/
168
+
169
+ .post-header { margin: 10px 0 30px; }
170
+
171
+ .post-header h1 {
172
+ font-size: 42px;
173
+ letter-spacing: -1.75px;
174
+ line-height: 1;
175
+ font-weight: 300;
176
+ }
177
+
178
+ .post-header .meta {
179
+ font-size: 15px;
180
+ color: #818181;
181
+ margin-top: 5px;
182
+ }
183
+
184
+ .post-content { margin: 0 0 30px; }
185
+
186
+ .post-content > * { margin: 20px 0; }
187
+
188
+
189
+ .post-content h1,
190
+ .post-content h2,
191
+ .post-content h3,
192
+ .post-content h4,
193
+ .post-content h5,
194
+ .post-content h6 {
195
+ line-height: 1;
196
+ font-weight: 300;
197
+ margin: 40px 0 20px;
198
+ }
199
+
200
+ .post-content h2 {
201
+ font-size: 32px;
202
+ letter-spacing: -1.25px;
203
+ }
204
+
205
+ .post-content h3 {
206
+ font-size: 26px;
207
+ letter-spacing: -1px;
208
+ }
209
+
210
+ .post-content h4 {
211
+ font-size: 20px;
212
+ letter-spacing: -1px;
213
+ }
214
+
215
+ .post-content blockquote {
216
+ border-left: 4px solid #e8e8e8;
217
+ padding-left: 20px;
218
+ font-size: 18px;
219
+ opacity: .6;
220
+ letter-spacing: -1px;
221
+ font-style: italic;
222
+ margin: 30px 0;
223
+ }
224
+
225
+ .post-content ul,
226
+ .post-content ol { padding-left: 20px; }
227
+
228
+ .post pre,
229
+ .post code {
230
+ border: 1px solid #d5d5e9;
231
+ background-color: #eef;
232
+ padding: 8px 12px;
233
+ -webkit-border-radius: 3px;
234
+ -moz-border-radius: 3px;
235
+ border-radius: 3px;
236
+ font-size: 15px;
237
+ overflow:scroll;
238
+ }
239
+
240
+ .post code { padding: 1px 5px; }
241
+
242
+ .post ul,
243
+ .post ol { margin-left: 1.35em; }
244
+
245
+ .post pre code {
246
+ border: 0;
247
+ padding-right: 0;
248
+ padding-left: 0;
249
+ }
250
+
251
+ /* terminal */
252
+ .post pre.terminal {
253
+ border: 1px solid #000;
254
+ background-color: #333;
255
+ color: #FFF;
256
+ -webkit-border-radius: 3px;
257
+ -moz-border-radius: 3px;
258
+ border-radius: 3px;
259
+ }
260
+
261
+ .post pre.terminal code { background-color: #333; }
262
+
263
+ /* Syntax highlighting styles */
264
+ /* ----------------------------------------------------------*/
265
+
266
+ .highlight { background: #ffffff; }
267
+ .highlight .c { color: #999988; font-style: italic } /* Comment */
268
+ .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
269
+ .highlight .k { font-weight: bold } /* Keyword */
270
+ .highlight .o { font-weight: bold } /* Operator */
271
+ .highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
272
+ .highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
273
+ .highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
274
+ .highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
275
+ .highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
276
+ .highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
277
+ .highlight .ge { font-style: italic } /* Generic.Emph */
278
+ .highlight .gr { color: #aa0000 } /* Generic.Error */
279
+ .highlight .gh { color: #999999 } /* Generic.Heading */
280
+ .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
281
+ .highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
282
+ .highlight .go { color: #888888 } /* Generic.Output */
283
+ .highlight .gp { color: #555555 } /* Generic.Prompt */
284
+ .highlight .gs { font-weight: bold } /* Generic.Strong */
285
+ .highlight .gu { color: #aaaaaa } /* Generic.Subheading */
286
+ .highlight .gt { color: #aa0000 } /* Generic.Traceback */
287
+ .highlight .kc { font-weight: bold } /* Keyword.Constant */
288
+ .highlight .kd { font-weight: bold } /* Keyword.Declaration */
289
+ .highlight .kp { font-weight: bold } /* Keyword.Pseudo */
290
+ .highlight .kr { font-weight: bold } /* Keyword.Reserved */
291
+ .highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
292
+ .highlight .m { color: #009999 } /* Literal.Number */
293
+ .highlight .s { color: #d14 } /* Literal.String */
294
+ .highlight .na { color: #008080 } /* Name.Attribute */
295
+ .highlight .nb { color: #0086B3 } /* Name.Builtin */
296
+ .highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
297
+ .highlight .no { color: #008080 } /* Name.Constant */
298
+ .highlight .ni { color: #800080 } /* Name.Entity */
299
+ .highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
300
+ .highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
301
+ .highlight .nn { color: #555555 } /* Name.Namespace */
302
+ .highlight .nt { color: #000080 } /* Name.Tag */
303
+ .highlight .nv { color: #008080 } /* Name.Variable */
304
+ .highlight .ow { font-weight: bold } /* Operator.Word */
305
+ .highlight .w { color: #bbbbbb } /* Text.Whitespace */
306
+ .highlight .mf { color: #009999 } /* Literal.Number.Float */
307
+ .highlight .mh { color: #009999 } /* Literal.Number.Hex */
308
+ .highlight .mi { color: #009999 } /* Literal.Number.Integer */
309
+ .highlight .mo { color: #009999 } /* Literal.Number.Oct */
310
+ .highlight .sb { color: #d14 } /* Literal.String.Backtick */
311
+ .highlight .sc { color: #d14 } /* Literal.String.Char */
312
+ .highlight .sd { color: #d14 } /* Literal.String.Doc */
313
+ .highlight .s2 { color: #d14 } /* Literal.String.Double */
314
+ .highlight .se { color: #d14 } /* Literal.String.Escape */
315
+ .highlight .sh { color: #d14 } /* Literal.String.Heredoc */
316
+ .highlight .si { color: #d14 } /* Literal.String.Interpol */
317
+ .highlight .sx { color: #d14 } /* Literal.String.Other */
318
+ .highlight .sr { color: #009926 } /* Literal.String.Regex */
319
+ .highlight .s1 { color: #d14 } /* Literal.String.Single */
320
+ .highlight .ss { color: #990073 } /* Literal.String.Symbol */
321
+ .highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
322
+ .highlight .vc { color: #008080 } /* Name.Variable.Class */
323
+ .highlight .vg { color: #008080 } /* Name.Variable.Global */
324
+ .highlight .vi { color: #008080 } /* Name.Variable.Instance */
325
+ .highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
326
+
327
+
328
+ /* media queries */
329
+ /* ----------------------------------------------------------*/
330
+
331
+
332
+ @media screen and (max-width: 750px) {
333
+
334
+ .footer-col-1 { width: 50%; }
335
+
336
+ .footer-col-2 {
337
+ width: 45%; /*fallback*/
338
+ width: -webkit-calc(50% - 10px);
339
+ width: -moz-calc(50% - 10px);
340
+ width: -o-calc(50% - 10px);
341
+ width: calc(50% - 10px);
342
+ margin-right: 0;
343
+ }
344
+
345
+ .site-footer .column.footer-col-3 {
346
+ width: auto;
347
+ float: none;
348
+ clear: both;
349
+ }
350
+
351
+ }
352
+
353
+ @media screen and (max-width: 600px) {
354
+
355
+ .wrap { padding: 0 12px; }
356
+
357
+ .site-nav {
358
+ position: fixed;
359
+ z-index: 10;
360
+ top: 14px; right: 8px;
361
+ background-color: white;
362
+ -webkit-border-radius: 5px;
363
+ -moz-border-radius: 5px;
364
+ border-radius: 5px;
365
+ border: 1px solid #e8e8e8;
366
+ }
367
+
368
+ .site-nav .menu-icon {
369
+ display: block;
370
+ font-size: 24px;
371
+ color: #505050;
372
+ float: right;
373
+ width: 36px;
374
+ text-align: center;
375
+ line-height: 36px;
376
+ }
377
+
378
+ .site-nav .menu-icon svg { width: 18px; height: 16px; }
379
+
380
+ .site-nav .trigger {
381
+ clear: both;
382
+ margin-bottom: 5px;
383
+ display: none;
384
+ }
385
+
386
+ .site-nav:hover .trigger { display: block; }
387
+
388
+ .site-nav .page-link {
389
+ display: block;
390
+ text-align: right;
391
+ line-height: 1.25;
392
+ padding: 5px 10px;
393
+ margin: 0;
394
+ }
395
+
396
+ .post-header h1 { font-size: 36px; }
397
+ .post-content h2 { font-size: 28px; }
398
+ .post-content h3 { font-size: 22px; }
399
+ .post-content h4 { font-size: 18px; }
400
+ .post-content blockquote { padding-left: 10px; }
401
+ .post-content ul,
402
+ .post-content ol { padding-left: 10px; }
403
+
404
+ .site-footer .column {
405
+ float: none;
406
+ clear: both;
407
+ width: auto;
408
+ margin: 0 0 15px; }
409
+
410
+ }
@@ -0,0 +1,30 @@
1
+ ---
2
+ layout: none
3
+ ---
4
+ <?xml version="1.0" encoding="UTF-8"?>
5
+ <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
6
+ <channel>
7
+ <title>{{ site.title | xml_escape }}</title>
8
+ <description>{{ site.description | xml_escape }}</description>
9
+ <link>{{ site.url }}{{ site.baseurl }}/</link>
10
+ <atom:link href="{{ "/feed.xml" | prepend: site.baseurl | prepend: site.url }}" rel="self" type="application/rss+xml" />
11
+ <pubDate>{{ site.time | date_to_rfc822 }}</pubDate>
12
+ <lastBuildDate>{{ site.time | date_to_rfc822 }}</lastBuildDate>
13
+ <generator>Jekyll v{{ jekyll.version }}</generator>
14
+ {% for post in site.posts limit:10 %}
15
+ <item>
16
+ <title>{{ post.title | xml_escape }}</title>
17
+ <description>{{ post.content | xml_escape }}</description>
18
+ <pubDate>{{ post.date | date_to_rfc822 }}</pubDate>
19
+ <link>{{ post.url | prepend: site.baseurl | prepend: site.url }}</link>
20
+ <guid isPermaLink="true">{{ post.url | prepend: site.baseurl | prepend: site.url }}</guid>
21
+ {% for tag in post.tags %}
22
+ <category>{{ tag | xml_escape }}</category>
23
+ {% endfor %}
24
+ {% for cat in post.categories %}
25
+ <category>{{ cat | xml_escape }}</category>
26
+ {% endfor %}
27
+ </item>
28
+ {% endfor %}
29
+ </channel>
30
+ </rss>
@@ -0,0 +1,20 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <div class="home">
6
+
7
+ <h1>Posts</h1>
8
+
9
+ <ul class="posts">
10
+ {% for post in site.posts %}
11
+ <li>
12
+ <span class="post-date">{{ post.date | date: "%b %-d, %Y" }}</span>
13
+ <a class="post-link" href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
14
+ </li>
15
+ {% endfor %}
16
+ </ul>
17
+
18
+ <p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | prepend: site.baseurl }}">via RSS</a></p>
19
+
20
+ </div>
metadata ADDED
@@ -0,0 +1,231 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jekyllpress
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Tamara Temple
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-07-28 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: jekyll
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '2.1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '2.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: stringex
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '2'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '2'
41
+ - !ruby/object:Gem::Dependency
42
+ name: bundler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '1.6'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '1.6'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rake
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '10.0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: '10.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: pry
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: '0.9'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ~>
95
+ - !ruby/object:Gem::Version
96
+ version: '0.9'
97
+ - !ruby/object:Gem::Dependency
98
+ name: pry-debugger
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: awesome_print
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: guard
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - '>='
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: guard-rspec
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - '>='
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ description:
154
+ email:
155
+ - tamouse@gmail.com
156
+ executables:
157
+ - jekyllpress
158
+ extensions: []
159
+ extra_rdoc_files: []
160
+ files:
161
+ - .gitignore
162
+ - .rspec
163
+ - .travis.yml
164
+ - Gemfile
165
+ - Guardfile
166
+ - LICENSE.txt
167
+ - README.md
168
+ - Rakefile
169
+ - bin/jekyllpress
170
+ - jekyllpress.gemspec
171
+ - lib/jekyllpress.rb
172
+ - lib/jekyllpress/version.rb
173
+ - spec/jekyllpress_spec.rb
174
+ - spec/lib/jekyllpress_spec.rb
175
+ - spec/spec_helper.rb
176
+ - spec/test_site/.gitignore
177
+ - spec/test_site/_config.yml
178
+ - spec/test_site/_includes/footer.html
179
+ - spec/test_site/_includes/head.html
180
+ - spec/test_site/_includes/header.html
181
+ - spec/test_site/_layouts/default.html
182
+ - spec/test_site/_layouts/page.html
183
+ - spec/test_site/_layouts/post.html
184
+ - spec/test_site/_templates/new_page.markdown
185
+ - spec/test_site/_templates/new_post.markdown
186
+ - spec/test_site/about.md
187
+ - spec/test_site/css/main.css
188
+ - spec/test_site/feed.xml
189
+ - spec/test_site/index.html
190
+ homepage: https://github.com/tamouse/jekyllpress
191
+ licenses:
192
+ - MIT
193
+ metadata: {}
194
+ post_install_message:
195
+ rdoc_options: []
196
+ require_paths:
197
+ - lib
198
+ required_ruby_version: !ruby/object:Gem::Requirement
199
+ requirements:
200
+ - - '>='
201
+ - !ruby/object:Gem::Version
202
+ version: '0'
203
+ required_rubygems_version: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - '>='
206
+ - !ruby/object:Gem::Version
207
+ version: '0'
208
+ requirements: []
209
+ rubyforge_project:
210
+ rubygems_version: 2.2.2
211
+ signing_key:
212
+ specification_version: 4
213
+ summary: Thor utility to do neat jekyll stuff.
214
+ test_files:
215
+ - spec/jekyllpress_spec.rb
216
+ - spec/lib/jekyllpress_spec.rb
217
+ - spec/spec_helper.rb
218
+ - spec/test_site/.gitignore
219
+ - spec/test_site/_config.yml
220
+ - spec/test_site/_includes/footer.html
221
+ - spec/test_site/_includes/head.html
222
+ - spec/test_site/_includes/header.html
223
+ - spec/test_site/_layouts/default.html
224
+ - spec/test_site/_layouts/page.html
225
+ - spec/test_site/_layouts/post.html
226
+ - spec/test_site/_templates/new_page.markdown
227
+ - spec/test_site/_templates/new_post.markdown
228
+ - spec/test_site/about.md
229
+ - spec/test_site/css/main.css
230
+ - spec/test_site/feed.xml
231
+ - spec/test_site/index.html