middleman-tansu 0.0.4 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -0
- data/Gemfile +0 -2
- data/lib/middleman-tansu/command.rb +39 -41
- data/lib/middleman-tansu/drawer.rb +13 -9
- data/lib/middleman-tansu/extension.rb +15 -11
- data/lib/middleman-tansu/helpers.rb +33 -33
- data/lib/middleman-tansu/template.rb +2 -1
- data/lib/middleman-tansu/template/shared/Gemfile.tt +0 -1
- data/lib/middleman-tansu/template/source/stylesheets/all.css.sass +2 -2
- data/lib/middleman-tansu/template/source/stylesheets/pure-min.css +11 -0
- data/lib/middleman-tansu/version.rb +1 -1
- metadata +3 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 27da6c6ed9ffd1dbb12b0cdf45fc12789d9f8cab
|
|
4
|
+
data.tar.gz: 933d41129781ed6dd98a0757b0542265c7cc22c6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 258b6ca68827569e42e27e3638380b13859efc696787dfb645cb118744e4149e0bb17f5faff8c19083b8a132a8703f4c6137b3fba906cabe4fa528242b02721e
|
|
7
|
+
data.tar.gz: 66fcb8c4cf77cbcd6a232047d42b14663104937742cff4767aef17e49c7d9dbfafc6d91d00d1a3100dda2736143582af5802fcf20a1825a0b68c9bb06c7eb69d
|
data/CHANGELOG.md
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# 0.1.0
|
|
2
|
+
|
|
3
|
+
- Release 1st stable version.
|
|
4
|
+
- Add command: `$ bundle exec middleman tansu path/to/page_name`.
|
|
5
|
+
- You must use this command with bundler.(`require` problems)
|
|
6
|
+
- Add auto index function.
|
|
7
|
+
- Search empty directory that doesn't have `index.html.\*`.
|
|
8
|
+
- Create index.html under these directories using `proxy`.
|
|
9
|
+
- Add some helpers.
|
|
10
|
+
- Add project template `tansu`.
|
|
11
|
+
- You can use: `$ middleman init PROJECT --template tansu`
|
data/Gemfile
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
require
|
|
2
|
-
require
|
|
1
|
+
require 'middleman-core/cli'
|
|
2
|
+
require 'active_support/core_ext/time/zones'
|
|
3
3
|
|
|
4
4
|
module Middleman
|
|
5
5
|
module Cli
|
|
6
|
-
# This class provides a "tansu" command for
|
|
6
|
+
# This class provides a "tansu" command for middleman CLI.
|
|
7
|
+
#
|
|
7
8
|
# "tansu" command has some options:
|
|
8
9
|
# - '-f': set file extension, default "md"
|
|
9
10
|
# - '-d': set date(yyyy-mm-dd). Default is now. This is used in Frontmatter.
|
|
@@ -19,7 +20,7 @@ module Middleman
|
|
|
19
20
|
|
|
20
21
|
def initialize(*args)
|
|
21
22
|
super
|
|
22
|
-
Time.zone = ENV['TZ'] ||
|
|
23
|
+
Time.zone = ENV['TZ'] || 'UTC'
|
|
23
24
|
end
|
|
24
25
|
|
|
25
26
|
def self.source_root
|
|
@@ -31,31 +32,31 @@ module Middleman
|
|
|
31
32
|
true
|
|
32
33
|
end
|
|
33
34
|
|
|
34
|
-
desc
|
|
35
|
-
method_option
|
|
36
|
-
aliases:
|
|
37
|
-
desc:
|
|
38
|
-
default:
|
|
39
|
-
method_option
|
|
40
|
-
aliases:
|
|
41
|
-
desc:
|
|
42
|
-
method_option
|
|
43
|
-
aliases:
|
|
44
|
-
desc:
|
|
35
|
+
desc 'tansu path/to/TITLE', 'Create a new Tansu page'
|
|
36
|
+
method_option 'file',
|
|
37
|
+
aliases: '-f',
|
|
38
|
+
desc: 'The file extension of file (default: md)',
|
|
39
|
+
default: 'md'
|
|
40
|
+
method_option 'timezone',
|
|
41
|
+
aliases: '-z',
|
|
42
|
+
desc: 'The timezone of Frontmatter (default: ENV["TZ"])'
|
|
43
|
+
method_option 'date',
|
|
44
|
+
aliases: '-d',
|
|
45
|
+
desc: 'The date of Frontmatter (default: Time.zone.now)',
|
|
45
46
|
default: nil
|
|
46
|
-
method_option
|
|
47
|
-
aliases:
|
|
48
|
-
desc:
|
|
49
|
-
method_option
|
|
50
|
-
desc:
|
|
51
|
-
default:
|
|
47
|
+
method_option 'author',
|
|
48
|
+
aliases: '-a',
|
|
49
|
+
desc: 'The author name of Frontmatter (default: ENV["USER"])'
|
|
50
|
+
method_option 'frontmatter',
|
|
51
|
+
desc: 'Additions of Frontmatter ex:"category:sample,tags:frontmatter"',
|
|
52
|
+
default: ''
|
|
52
53
|
def tansu(path)
|
|
53
|
-
paths = path.split(
|
|
54
|
+
paths = path.split('/')
|
|
54
55
|
title = paths.pop
|
|
55
56
|
ext = options[:file]
|
|
56
|
-
Time.zone = options[:timezone] || ENV['TZ'] ||
|
|
57
|
+
Time.zone = options[:timezone] || ENV['TZ'] || 'UTC'
|
|
57
58
|
date = options[:date] ? Time.zone.parse(options[:date]) : Time.zone.now
|
|
58
|
-
author = options[:author] || ENV[
|
|
59
|
+
author = options[:author] || ENV['USER']
|
|
59
60
|
add_frontmatter = options[:frontmatter]
|
|
60
61
|
|
|
61
62
|
if Regexp.new(".html.#{ext}$") !~ title
|
|
@@ -65,11 +66,9 @@ module Middleman
|
|
|
65
66
|
dir = destination_dir(paths)
|
|
66
67
|
file = File.join(dir, filename)
|
|
67
68
|
|
|
68
|
-
|
|
69
|
-
FileUtils.mkdir_p dir
|
|
70
|
-
end
|
|
69
|
+
FileUtils.mkdir_p dir unless Dir.exist?(dir)
|
|
71
70
|
|
|
72
|
-
if File.
|
|
71
|
+
if File.exist?(file)
|
|
73
72
|
puts "#{file} is exist"
|
|
74
73
|
exit
|
|
75
74
|
end
|
|
@@ -83,20 +82,20 @@ module Middleman
|
|
|
83
82
|
no_tasks do
|
|
84
83
|
def frontmatter(title, author, date, frontmatter)
|
|
85
84
|
data = {
|
|
86
|
-
:
|
|
87
|
-
:
|
|
88
|
-
:
|
|
85
|
+
title: title,
|
|
86
|
+
author: author,
|
|
87
|
+
date: date
|
|
89
88
|
}
|
|
90
89
|
|
|
91
|
-
|
|
90
|
+
unless frontmatter.empty?
|
|
92
91
|
data = data.merge(add_frontmatter(frontmatter))
|
|
93
92
|
end
|
|
94
93
|
|
|
95
|
-
rows = [
|
|
96
|
-
data.each do |label,
|
|
97
|
-
rows << "#{label}: #{
|
|
94
|
+
rows = ['---']
|
|
95
|
+
data.each do |label, val|
|
|
96
|
+
rows << "#{label}: #{val.to_s.strip}"
|
|
98
97
|
end
|
|
99
|
-
rows << [
|
|
98
|
+
rows << ['---']
|
|
100
99
|
rows << "\n\n"
|
|
101
100
|
|
|
102
101
|
rows.join("\n")
|
|
@@ -104,14 +103,13 @@ module Middleman
|
|
|
104
103
|
|
|
105
104
|
def add_frontmatter(str)
|
|
106
105
|
{} if str.empty?
|
|
107
|
-
|
|
108
106
|
frontmatter = {}
|
|
109
|
-
str.split(
|
|
107
|
+
str.split(',').each do |row|
|
|
110
108
|
if /.+:.+/ =~ row
|
|
111
|
-
|
|
109
|
+
_, label, data = row.split(/(.+?):(.+)$/)
|
|
112
110
|
frontmatter[label] = data
|
|
113
111
|
else
|
|
114
|
-
frontmatter[row] =
|
|
112
|
+
frontmatter[row] = ''
|
|
115
113
|
end
|
|
116
114
|
end
|
|
117
115
|
frontmatter
|
|
@@ -121,7 +119,7 @@ module Middleman
|
|
|
121
119
|
app = Middleman::Application
|
|
122
120
|
source = File.join(app.root, app.config.source)
|
|
123
121
|
|
|
124
|
-
if dir
|
|
122
|
+
if dir.nil? || dir == '.'
|
|
125
123
|
source
|
|
126
124
|
else
|
|
127
125
|
File.join(source, dir)
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
module Middleman
|
|
2
2
|
module Tansu
|
|
3
|
+
# Drawer search empty(index.html.* isn't exist) directory
|
|
4
|
+
# in app.config.source
|
|
5
|
+
#
|
|
6
|
+
# example:
|
|
7
|
+
# ary = Drawer.new(app, options, exclude_path).empty
|
|
3
8
|
class Drawer
|
|
4
9
|
def initialize(app, options, exclude_path = [])
|
|
5
10
|
@config = app.config
|
|
6
11
|
@options = options
|
|
7
|
-
@dirs = [
|
|
12
|
+
@dirs = ['/']
|
|
8
13
|
@exclude_path = exclude(exclude_path)
|
|
9
14
|
end
|
|
10
15
|
|
|
@@ -12,19 +17,18 @@ module Middleman
|
|
|
12
17
|
search_directory(@config.source)
|
|
13
18
|
empty = []
|
|
14
19
|
@dirs.each do |dir|
|
|
15
|
-
glob_path = File.join(@config.source, dir,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
end
|
|
20
|
+
glob_path = File.join(@config.source, dir,
|
|
21
|
+
"#{@config.tansu[:default_document].strip}*")
|
|
22
|
+
empty.push(dir) if Dir.glob(glob_path).length == 0
|
|
19
23
|
end
|
|
20
24
|
empty
|
|
21
25
|
end
|
|
22
26
|
|
|
23
27
|
def search_directory(dir)
|
|
24
|
-
regex = Regexp.new(
|
|
28
|
+
regex = Regexp.new('^' + @config.source)
|
|
25
29
|
Dir.glob(File.join(dir, '*')).each do |path|
|
|
26
|
-
if File.ftype(path) ==
|
|
27
|
-
@dirs.push(path.gsub(regex,
|
|
30
|
+
if File.ftype(path) == 'directory' && !exclude?(path)
|
|
31
|
+
@dirs.push(path.gsub(regex, ''))
|
|
28
32
|
search_directory(path)
|
|
29
33
|
end
|
|
30
34
|
end
|
|
@@ -42,7 +46,7 @@ module Middleman
|
|
|
42
46
|
end
|
|
43
47
|
|
|
44
48
|
def exclude?(path)
|
|
45
|
-
regex = Regexp.new("^#{@config.source}/(#{@exclude_path.join(
|
|
49
|
+
regex = Regexp.new("^#{@config.source}/(#{@exclude_path.join('|')})")
|
|
46
50
|
regex =~ path
|
|
47
51
|
end
|
|
48
52
|
end
|
|
@@ -1,23 +1,27 @@
|
|
|
1
|
-
require
|
|
2
|
-
require
|
|
1
|
+
require 'middleman-tansu/drawer'
|
|
2
|
+
require 'middleman-tansu/helpers'
|
|
3
3
|
|
|
4
4
|
module Middleman
|
|
5
5
|
module Tansu
|
|
6
|
+
# A Extension class of Middleman
|
|
7
|
+
#
|
|
8
|
+
# In config.rb:
|
|
9
|
+
# activate :tansu
|
|
6
10
|
class Extension < ::Middleman::Extension
|
|
7
|
-
option :exclude_path, %w(sitemap.xml),
|
|
8
|
-
option :templates_dir,
|
|
9
|
-
option :index_template_name,
|
|
10
|
-
option :default_document,
|
|
11
|
+
option :exclude_path, %w(sitemap.xml), 'Path list that you don not want to see'
|
|
12
|
+
option :templates_dir, 'templates', 'Path of template directory in source direcotry'
|
|
13
|
+
option :index_template_name, 'index.html', 'Name of index template'
|
|
14
|
+
option :default_document, 'index.html', 'Name of default document. When you use IIS, set "default.html"'
|
|
11
15
|
|
|
12
16
|
# Helpers for use within templates and layouts.
|
|
13
|
-
self.defined_helpers = [
|
|
17
|
+
self.defined_helpers = [::Middleman::Tansu::Helpers]
|
|
14
18
|
|
|
15
19
|
def initialize(app, options_hash = {}, &block)
|
|
16
20
|
super
|
|
17
21
|
app.config.tansu = {
|
|
18
|
-
:
|
|
19
|
-
:
|
|
20
|
-
:
|
|
22
|
+
exclude_path: options[:exclude_path],
|
|
23
|
+
templates_dir: options[:templates_dir],
|
|
24
|
+
default_document: options[:default_document]
|
|
21
25
|
}
|
|
22
26
|
end
|
|
23
27
|
|
|
@@ -25,7 +29,7 @@ module Middleman
|
|
|
25
29
|
exclude_path = options.exclude_path || []
|
|
26
30
|
Drawer.new(app, options, exclude_path).empty.each do |path|
|
|
27
31
|
app.proxy(File.join(path, options[:default_document]),
|
|
28
|
-
File.join(
|
|
32
|
+
File.join('/', options.templates_dir, options.index_template_name),
|
|
29
33
|
ignore: true)
|
|
30
34
|
end
|
|
31
35
|
end
|
|
@@ -1,26 +1,29 @@
|
|
|
1
1
|
module Middleman
|
|
2
2
|
module Tansu
|
|
3
|
+
# Tansu Helpers
|
|
3
4
|
module Helpers
|
|
4
5
|
def path_list(current_path)
|
|
5
|
-
paths
|
|
6
|
-
splited = current_path.split(
|
|
6
|
+
paths = []
|
|
7
|
+
splited = current_path.split('/')
|
|
8
|
+
|
|
7
9
|
splited.each_with_index do |val, index|
|
|
8
|
-
path
|
|
9
|
-
path
|
|
10
|
-
val
|
|
11
|
-
paths.push(
|
|
10
|
+
path = File.join('/', splited[0..index])
|
|
11
|
+
path += '/' unless /\.html$/ =~ path
|
|
12
|
+
val = val.sub('.html', '') if /\.html$/ =~ val
|
|
13
|
+
paths.push(path: path, name: val) unless /^index$/ =~ val
|
|
12
14
|
end
|
|
13
15
|
paths
|
|
14
16
|
end
|
|
15
17
|
|
|
16
|
-
def breadcrumbs(klass = 'breadcrumbs', root =
|
|
17
|
-
li
|
|
18
|
-
root = page_title(
|
|
19
|
-
li.push("<li class=\"root\">#{link_to(root,
|
|
18
|
+
def breadcrumbs(klass = 'breadcrumbs', root = 'Top')
|
|
19
|
+
li = []
|
|
20
|
+
root = page_title('/') || root
|
|
21
|
+
li.push("<li class=\"root\">#{link_to(root, '/')}</li>")
|
|
20
22
|
|
|
21
23
|
paths = path_list(current_resource.path)
|
|
22
24
|
paths.each do |path|
|
|
23
25
|
name = page_title(path[:path]) || path[:name]
|
|
26
|
+
|
|
24
27
|
if path == paths.last
|
|
25
28
|
li.push("<li class=\"current\">#{h(name)}</li>")
|
|
26
29
|
else
|
|
@@ -38,13 +41,11 @@ module Middleman
|
|
|
38
41
|
end
|
|
39
42
|
|
|
40
43
|
def page_title_or_path(path)
|
|
41
|
-
page_title(path) || path.gsub(/(index)?\.html$/,
|
|
44
|
+
page_title(path) || path.gsub(/(index)?\.html$/, '')
|
|
42
45
|
end
|
|
43
46
|
|
|
44
47
|
def title(splitter = ' - ')
|
|
45
|
-
base_title = base_title()
|
|
46
48
|
page_title = page_title_or_path(current_resource.path)
|
|
47
|
-
|
|
48
49
|
if !page_title.empty?
|
|
49
50
|
"#{page_title}#{splitter}#{base_title}"
|
|
50
51
|
else
|
|
@@ -53,9 +54,7 @@ module Middleman
|
|
|
53
54
|
end
|
|
54
55
|
|
|
55
56
|
def heading
|
|
56
|
-
base_title = base_title()
|
|
57
57
|
page_title = page_title_or_path(current_resource.path)
|
|
58
|
-
|
|
59
58
|
if !page_title.empty?
|
|
60
59
|
page_title
|
|
61
60
|
else
|
|
@@ -64,12 +63,12 @@ module Middleman
|
|
|
64
63
|
end
|
|
65
64
|
|
|
66
65
|
def base_title
|
|
67
|
-
config[:site_title] ||
|
|
66
|
+
config[:site_title] || 'Middleman-Tansu'
|
|
68
67
|
end
|
|
69
68
|
|
|
70
69
|
def index?
|
|
71
70
|
regex = Regexp.new("#{config.tansu[:default_document]}$")
|
|
72
|
-
regex =~ current_resource.path ||
|
|
71
|
+
regex =~ current_resource.path || '/' == current_resource.path
|
|
73
72
|
end
|
|
74
73
|
|
|
75
74
|
def children_pages(key = :date, order_by = :asc)
|
|
@@ -77,41 +76,42 @@ module Middleman
|
|
|
77
76
|
pages = []
|
|
78
77
|
|
|
79
78
|
current_resource.children.each do |page|
|
|
80
|
-
|
|
79
|
+
unless exclude?(page.path)
|
|
81
80
|
if /index\.html$/ =~ page.path
|
|
82
81
|
dirs.push(page)
|
|
83
82
|
else
|
|
84
83
|
pages.push(page)
|
|
85
84
|
end
|
|
86
85
|
end
|
|
86
|
+
next
|
|
87
87
|
end
|
|
88
88
|
|
|
89
89
|
# Sorting pages and dirs
|
|
90
90
|
if order_by == :desc
|
|
91
|
-
pages = pages.sort
|
|
91
|
+
pages = pages.sort do |a, b|
|
|
92
92
|
b.data[key] <=> a.data[key]
|
|
93
|
-
|
|
94
|
-
dirs = dirs.sort
|
|
93
|
+
end
|
|
94
|
+
dirs = dirs.sort do |a, b|
|
|
95
95
|
b.path <=> a.path
|
|
96
|
-
|
|
96
|
+
end
|
|
97
97
|
else
|
|
98
|
-
pages = pages.sort
|
|
98
|
+
pages = pages.sort do |a, b|
|
|
99
99
|
a.data[key] <=> b.data[key]
|
|
100
|
-
|
|
101
|
-
dirs = dirs.sort
|
|
100
|
+
end
|
|
101
|
+
dirs = dirs.sort do |a, b|
|
|
102
102
|
a.path <=> b.path
|
|
103
|
-
|
|
103
|
+
end
|
|
104
104
|
end
|
|
105
105
|
|
|
106
106
|
dirs | pages
|
|
107
107
|
end
|
|
108
108
|
|
|
109
109
|
def exclude?(path)
|
|
110
|
-
regex = Regexp.new("^(#{exclude
|
|
110
|
+
regex = Regexp.new("^(#{exclude.join('|')})")
|
|
111
111
|
regex =~ path
|
|
112
112
|
end
|
|
113
113
|
|
|
114
|
-
def exclude
|
|
114
|
+
def exclude
|
|
115
115
|
default = [
|
|
116
116
|
config.images_dir,
|
|
117
117
|
config.js_dir,
|
|
@@ -119,21 +119,21 @@ module Middleman
|
|
|
119
119
|
config.layouts_dir,
|
|
120
120
|
config.tansu[:templates_dir]
|
|
121
121
|
]
|
|
122
|
-
|
|
122
|
+
default | config.tansu[:exclude_path]
|
|
123
123
|
end
|
|
124
124
|
|
|
125
125
|
def page_name(page)
|
|
126
126
|
if page.data.title
|
|
127
|
-
paths = page.path.split(
|
|
127
|
+
paths = page.path.split('/')
|
|
128
128
|
paths.pop
|
|
129
|
-
File.join(paths, page.data.title).gsub(/^\//,
|
|
129
|
+
File.join(paths, page.data.title).gsub(/^\//, '')
|
|
130
130
|
else
|
|
131
|
-
page.path.gsub(/(\/index)?\.html$/,
|
|
131
|
+
page.path.gsub(/(\/index)?\.html$/, '')
|
|
132
132
|
end
|
|
133
133
|
end
|
|
134
134
|
|
|
135
135
|
def page_url(page)
|
|
136
|
-
File.join(
|
|
136
|
+
File.join('/', page.path.gsub(/index\.html$/, ''))
|
|
137
137
|
end
|
|
138
138
|
end
|
|
139
139
|
end
|
|
@@ -2,7 +2,7 @@ require 'middleman-core/templates'
|
|
|
2
2
|
|
|
3
3
|
module Middleman
|
|
4
4
|
module Tansu
|
|
5
|
-
|
|
5
|
+
# Template class of Middleman
|
|
6
6
|
class Template < Middleman::Templates::Base
|
|
7
7
|
class_option 'css_dir',
|
|
8
8
|
default: 'stylesheets',
|
|
@@ -33,6 +33,7 @@ module Middleman
|
|
|
33
33
|
copy_file 'source/layouts/layout.slim', File.join(location, 'source/layouts/layout.slim')
|
|
34
34
|
copy_file 'source/templates/index.html.slim', File.join(location, 'source/templates/index.html.slim')
|
|
35
35
|
copy_file 'source/stylesheets/all.css.sass', File.join(location, 'source', options[:css_dir], 'all.css.sass')
|
|
36
|
+
copy_file 'source/stylesheets/pure-min.css', File.join(location, 'source', options[:css_dir], 'pure-min.css')
|
|
36
37
|
copy_file 'source/stylesheets/github-markdown.css', File.join(location, 'source', options[:css_dir], 'github-markdown.css')
|
|
37
38
|
end
|
|
38
39
|
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
Pure v0.5.0
|
|
3
|
+
Copyright 2014 Yahoo! Inc. All rights reserved.
|
|
4
|
+
Licensed under the BSD License.
|
|
5
|
+
https://github.com/yui/pure/blob/master/LICENSE.md
|
|
6
|
+
*/
|
|
7
|
+
/*!
|
|
8
|
+
normalize.css v1.1.3 | MIT License | git.io/normalize
|
|
9
|
+
Copyright (c) Nicolas Gallagher and Jonathan Neal
|
|
10
|
+
*/
|
|
11
|
+
/*! normalize.css v1.1.3 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}html,button,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.67em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:1em 40px}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:none}q:before,q:after{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ul,nav ol{list-style:none;list-style-image:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure{margin:0}form{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal;*margin-left:-7px}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}[hidden]{display:none!important}.pure-img{max-width:100%;height:auto;display:block}.pure-g{letter-spacing:-.31em;*letter-spacing:normal;*word-spacing:-.43em;text-rendering:optimizespeed;font-family:FreeSans,Arimo,"Droid Sans",Helvetica,Arial,sans-serif;display:-webkit-flex;-webkit-flex-flow:row wrap;display:-ms-flexbox;-ms-flex-flow:row wrap}.opera-only :-o-prefocus,.pure-g{word-spacing:-.43em}.pure-u{display:inline-block;*display:inline;zoom:1;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.pure-g [class *="pure-u"]{font-family:sans-serif}.pure-u-1,.pure-u-1-1,.pure-u-1-2,.pure-u-1-3,.pure-u-2-3,.pure-u-1-4,.pure-u-3-4,.pure-u-1-5,.pure-u-2-5,.pure-u-3-5,.pure-u-4-5,.pure-u-5-5,.pure-u-1-6,.pure-u-5-6,.pure-u-1-8,.pure-u-3-8,.pure-u-5-8,.pure-u-7-8,.pure-u-1-12,.pure-u-5-12,.pure-u-7-12,.pure-u-11-12,.pure-u-1-24,.pure-u-2-24,.pure-u-3-24,.pure-u-4-24,.pure-u-5-24,.pure-u-6-24,.pure-u-7-24,.pure-u-8-24,.pure-u-9-24,.pure-u-10-24,.pure-u-11-24,.pure-u-12-24,.pure-u-13-24,.pure-u-14-24,.pure-u-15-24,.pure-u-16-24,.pure-u-17-24,.pure-u-18-24,.pure-u-19-24,.pure-u-20-24,.pure-u-21-24,.pure-u-22-24,.pure-u-23-24,.pure-u-24-24{display:inline-block;*display:inline;zoom:1;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.pure-u-1-24{width:4.1667%;*width:4.1357%}.pure-u-1-12,.pure-u-2-24{width:8.3333%;*width:8.3023%}.pure-u-1-8,.pure-u-3-24{width:12.5%;*width:12.469%}.pure-u-1-6,.pure-u-4-24{width:16.6667%;*width:16.6357%}.pure-u-1-5{width:20%;*width:19.969%}.pure-u-5-24{width:20.8333%;*width:20.8023%}.pure-u-1-4,.pure-u-6-24{width:25%;*width:24.969%}.pure-u-7-24{width:29.1667%;*width:29.1357%}.pure-u-1-3,.pure-u-8-24{width:33.3333%;*width:33.3023%}.pure-u-3-8,.pure-u-9-24{width:37.5%;*width:37.469%}.pure-u-2-5{width:40%;*width:39.969%}.pure-u-5-12,.pure-u-10-24{width:41.6667%;*width:41.6357%}.pure-u-11-24{width:45.8333%;*width:45.8023%}.pure-u-1-2,.pure-u-12-24{width:50%;*width:49.969%}.pure-u-13-24{width:54.1667%;*width:54.1357%}.pure-u-7-12,.pure-u-14-24{width:58.3333%;*width:58.3023%}.pure-u-3-5{width:60%;*width:59.969%}.pure-u-5-8,.pure-u-15-24{width:62.5%;*width:62.469%}.pure-u-2-3,.pure-u-16-24{width:66.6667%;*width:66.6357%}.pure-u-17-24{width:70.8333%;*width:70.8023%}.pure-u-3-4,.pure-u-18-24{width:75%;*width:74.969%}.pure-u-19-24{width:79.1667%;*width:79.1357%}.pure-u-4-5{width:80%;*width:79.969%}.pure-u-5-6,.pure-u-20-24{width:83.3333%;*width:83.3023%}.pure-u-7-8,.pure-u-21-24{width:87.5%;*width:87.469%}.pure-u-11-12,.pure-u-22-24{width:91.6667%;*width:91.6357%}.pure-u-23-24{width:95.8333%;*width:95.8023%}.pure-u-1,.pure-u-1-1,.pure-u-5-5,.pure-u-24-24{width:100%}.pure-button{display:inline-block;*display:inline;zoom:1;line-height:normal;white-space:nowrap;vertical-align:baseline;text-align:center;cursor:pointer;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pure-button::-moz-focus-inner{padding:0;border:0}.pure-button{font-family:inherit;font-size:100%;*font-size:90%;*overflow:visible;padding:.5em 1em;color:#444;color:rgba(0,0,0,.8);*color:#444;border:1px solid #999;border:0 rgba(0,0,0,0);background-color:#E6E6E6;text-decoration:none;border-radius:2px}.pure-button-hover,.pure-button:hover,.pure-button:focus{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#1a000000', GradientType=0);background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),color-stop(40%,rgba(0,0,0,.05)),to(rgba(0,0,0,.1)));background-image:-webkit-linear-gradient(transparent,rgba(0,0,0,.05) 40%,rgba(0,0,0,.1));background-image:-moz-linear-gradient(top,rgba(0,0,0,.05) 0,rgba(0,0,0,.1));background-image:-o-linear-gradient(transparent,rgba(0,0,0,.05) 40%,rgba(0,0,0,.1));background-image:linear-gradient(transparent,rgba(0,0,0,.05) 40%,rgba(0,0,0,.1))}.pure-button:focus{outline:0}.pure-button-active,.pure-button:active{box-shadow:0 0 0 1px rgba(0,0,0,.15) inset,0 0 6px rgba(0,0,0,.2) inset}.pure-button[disabled],.pure-button-disabled,.pure-button-disabled:hover,.pure-button-disabled:focus,.pure-button-disabled:active{border:0;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);filter:alpha(opacity=40);-khtml-opacity:.4;-moz-opacity:.4;opacity:.4;cursor:not-allowed;box-shadow:none}.pure-button-hidden{display:none}.pure-button::-moz-focus-inner{padding:0;border:0}.pure-button-primary,.pure-button-selected,a.pure-button-primary,a.pure-button-selected{background-color:#0078e7;color:#fff}.pure-form input[type=text],.pure-form input[type=password],.pure-form input[type=email],.pure-form input[type=url],.pure-form input[type=date],.pure-form input[type=month],.pure-form input[type=time],.pure-form input[type=datetime],.pure-form input[type=datetime-local],.pure-form input[type=week],.pure-form input[type=number],.pure-form input[type=search],.pure-form input[type=tel],.pure-form input[type=color],.pure-form select,.pure-form textarea{padding:.5em .6em;display:inline-block;border:1px solid #ccc;box-shadow:inset 0 1px 3px #ddd;border-radius:4px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.pure-form input:not([type]){padding:.5em .6em;display:inline-block;border:1px solid #ccc;box-shadow:inset 0 1px 3px #ddd;border-radius:4px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.pure-form input[type=color]{padding:.2em .5em}.pure-form input[type=text]:focus,.pure-form input[type=password]:focus,.pure-form input[type=email]:focus,.pure-form input[type=url]:focus,.pure-form input[type=date]:focus,.pure-form input[type=month]:focus,.pure-form input[type=time]:focus,.pure-form input[type=datetime]:focus,.pure-form input[type=datetime-local]:focus,.pure-form input[type=week]:focus,.pure-form input[type=number]:focus,.pure-form input[type=search]:focus,.pure-form input[type=tel]:focus,.pure-form input[type=color]:focus,.pure-form select:focus,.pure-form textarea:focus{outline:0;outline:thin dotted \9;border-color:#129FEA}.pure-form input:not([type]):focus{outline:0;outline:thin dotted \9;border-color:#129FEA}.pure-form input[type=file]:focus,.pure-form input[type=radio]:focus,.pure-form input[type=checkbox]:focus{outline:thin dotted #333;outline:1px auto #129FEA}.pure-form .pure-checkbox,.pure-form .pure-radio{margin:.5em 0;display:block}.pure-form input[type=text][disabled],.pure-form input[type=password][disabled],.pure-form input[type=email][disabled],.pure-form input[type=url][disabled],.pure-form input[type=date][disabled],.pure-form input[type=month][disabled],.pure-form input[type=time][disabled],.pure-form input[type=datetime][disabled],.pure-form input[type=datetime-local][disabled],.pure-form input[type=week][disabled],.pure-form input[type=number][disabled],.pure-form input[type=search][disabled],.pure-form input[type=tel][disabled],.pure-form input[type=color][disabled],.pure-form select[disabled],.pure-form textarea[disabled]{cursor:not-allowed;background-color:#eaeded;color:#cad2d3}.pure-form input:not([type])[disabled]{cursor:not-allowed;background-color:#eaeded;color:#cad2d3}.pure-form input[readonly],.pure-form select[readonly],.pure-form textarea[readonly]{background:#eee;color:#777;border-color:#ccc}.pure-form input:focus:invalid,.pure-form textarea:focus:invalid,.pure-form select:focus:invalid{color:#b94a48;border-color:#ee5f5b}.pure-form input:focus:invalid:focus,.pure-form textarea:focus:invalid:focus,.pure-form select:focus:invalid:focus{border-color:#e9322d}.pure-form input[type=file]:focus:invalid:focus,.pure-form input[type=radio]:focus:invalid:focus,.pure-form input[type=checkbox]:focus:invalid:focus{outline-color:#e9322d}.pure-form select{border:1px solid #ccc;background-color:#fff}.pure-form select[multiple]{height:auto}.pure-form label{margin:.5em 0 .2em}.pure-form fieldset{margin:0;padding:.35em 0 .75em;border:0}.pure-form legend{display:block;width:100%;padding:.3em 0;margin-bottom:.3em;color:#333;border-bottom:1px solid #e5e5e5}.pure-form-stacked input[type=text],.pure-form-stacked input[type=password],.pure-form-stacked input[type=email],.pure-form-stacked input[type=url],.pure-form-stacked input[type=date],.pure-form-stacked input[type=month],.pure-form-stacked input[type=time],.pure-form-stacked input[type=datetime],.pure-form-stacked input[type=datetime-local],.pure-form-stacked input[type=week],.pure-form-stacked input[type=number],.pure-form-stacked input[type=search],.pure-form-stacked input[type=tel],.pure-form-stacked input[type=color],.pure-form-stacked select,.pure-form-stacked label,.pure-form-stacked textarea{display:block;margin:.25em 0}.pure-form-stacked input:not([type]){display:block;margin:.25em 0}.pure-form-aligned input,.pure-form-aligned textarea,.pure-form-aligned select,.pure-form-aligned .pure-help-inline,.pure-form-message-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.pure-form-aligned textarea{vertical-align:top}.pure-form-aligned .pure-control-group{margin-bottom:.5em}.pure-form-aligned .pure-control-group label{text-align:right;display:inline-block;vertical-align:middle;width:10em;margin:0 1em 0 0}.pure-form-aligned .pure-controls{margin:1.5em 0 0 10em}.pure-form input.pure-input-rounded,.pure-form .pure-input-rounded{border-radius:2em;padding:.5em 1em}.pure-form .pure-group fieldset{margin-bottom:10px}.pure-form .pure-group input{display:block;padding:10px;margin:0;border-radius:0;position:relative;top:-1px}.pure-form .pure-group input:focus{z-index:2}.pure-form .pure-group input:first-child{top:1px;border-radius:4px 4px 0 0}.pure-form .pure-group input:last-child{top:-2px;border-radius:0 0 4px 4px}.pure-form .pure-group button{margin:.35em 0}.pure-form .pure-input-1{width:100%}.pure-form .pure-input-2-3{width:66%}.pure-form .pure-input-1-2{width:50%}.pure-form .pure-input-1-3{width:33%}.pure-form .pure-input-1-4{width:25%}.pure-form .pure-help-inline,.pure-form-message-inline{display:inline-block;padding-left:.3em;color:#666;vertical-align:middle;font-size:.875em}.pure-form-message{display:block;color:#666;font-size:.875em}@media only screen and (max-width :480px){.pure-form button[type=submit]{margin:.7em 0 0}.pure-form input:not([type]),.pure-form input[type=text],.pure-form input[type=password],.pure-form input[type=email],.pure-form input[type=url],.pure-form input[type=date],.pure-form input[type=month],.pure-form input[type=time],.pure-form input[type=datetime],.pure-form input[type=datetime-local],.pure-form input[type=week],.pure-form input[type=number],.pure-form input[type=search],.pure-form input[type=tel],.pure-form input[type=color],.pure-form label{margin-bottom:.3em;display:block}.pure-group input:not([type]),.pure-group input[type=text],.pure-group input[type=password],.pure-group input[type=email],.pure-group input[type=url],.pure-group input[type=date],.pure-group input[type=month],.pure-group input[type=time],.pure-group input[type=datetime],.pure-group input[type=datetime-local],.pure-group input[type=week],.pure-group input[type=number],.pure-group input[type=search],.pure-group input[type=tel],.pure-group input[type=color]{margin-bottom:0}.pure-form-aligned .pure-control-group label{margin-bottom:.3em;text-align:left;display:block;width:100%}.pure-form-aligned .pure-controls{margin:1.5em 0 0}.pure-form .pure-help-inline,.pure-form-message-inline,.pure-form-message{display:block;font-size:.75em;padding:.2em 0 .8em}}.pure-menu ul{position:absolute;visibility:hidden}.pure-menu.pure-menu-open{visibility:visible;z-index:2;width:100%}.pure-menu ul{left:-10000px;list-style:none;margin:0;padding:0;top:-10000px;z-index:1}.pure-menu>ul{position:relative}.pure-menu-open>ul{left:0;top:0;visibility:visible}.pure-menu-open>ul:focus{outline:0}.pure-menu li{position:relative}.pure-menu a,.pure-menu .pure-menu-heading{display:block;color:inherit;line-height:1.5em;padding:5px 20px;text-decoration:none;white-space:nowrap}.pure-menu.pure-menu-horizontal>.pure-menu-heading{display:inline-block;*display:inline;zoom:1;margin:0;vertical-align:middle}.pure-menu.pure-menu-horizontal>ul{display:inline-block;*display:inline;zoom:1;vertical-align:middle}.pure-menu li a{padding:5px 20px}.pure-menu-can-have-children>.pure-menu-label:after{content:'\25B8';float:right;font-family:'Lucida Grande','Lucida Sans Unicode','DejaVu Sans',sans-serif;margin-right:-20px;margin-top:-1px}.pure-menu-can-have-children>.pure-menu-label{padding-right:30px}.pure-menu-separator{background-color:#dfdfdf;display:block;height:1px;font-size:0;margin:7px 2px;overflow:hidden}.pure-menu-hidden{display:none}.pure-menu-fixed{position:fixed;top:0;left:0;width:100%}.pure-menu-horizontal li{display:inline-block;*display:inline;zoom:1;vertical-align:middle}.pure-menu-horizontal li li{display:block}.pure-menu-horizontal>.pure-menu-children>.pure-menu-can-have-children>.pure-menu-label:after{content:"\25BE"}.pure-menu-horizontal>.pure-menu-children>.pure-menu-can-have-children>.pure-menu-label{padding-right:30px}.pure-menu-horizontal li.pure-menu-separator{height:50%;width:1px;margin:0 7px}.pure-menu-horizontal li li.pure-menu-separator{height:1px;width:auto;margin:7px 2px}.pure-menu.pure-menu-open,.pure-menu.pure-menu-horizontal li .pure-menu-children{background:#fff;border:1px solid #b7b7b7}.pure-menu.pure-menu-horizontal,.pure-menu.pure-menu-horizontal .pure-menu-heading{border:0}.pure-menu a{border:1px solid transparent;border-left:0;border-right:0}.pure-menu a,.pure-menu .pure-menu-can-have-children>li:after{color:#777}.pure-menu .pure-menu-can-have-children>li:hover:after{color:#fff}.pure-menu .pure-menu-open{background:#dedede}.pure-menu li a:hover,.pure-menu li a:focus{background:#eee}.pure-menu li.pure-menu-disabled a:hover,.pure-menu li.pure-menu-disabled a:focus{background:#fff;color:#bfbfbf}.pure-menu .pure-menu-disabled>a{background-image:none;border-color:transparent;cursor:default}.pure-menu .pure-menu-disabled>a,.pure-menu .pure-menu-can-have-children.pure-menu-disabled>a:after{color:#bfbfbf}.pure-menu .pure-menu-heading{color:#565d64;text-transform:uppercase;font-size:90%;margin-top:.5em;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#dfdfdf}.pure-menu .pure-menu-selected a{color:#000}.pure-menu.pure-menu-open.pure-menu-fixed{border:0;border-bottom:1px solid #b7b7b7}.pure-paginator{letter-spacing:-.31em;*letter-spacing:normal;*word-spacing:-.43em;text-rendering:optimizespeed;list-style:none;margin:0;padding:0}.opera-only :-o-prefocus,.pure-paginator{word-spacing:-.43em}.pure-paginator li{display:inline-block;*display:inline;zoom:1;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.pure-paginator .pure-button{border-radius:0;padding:.8em 1.4em;vertical-align:top;height:1.1em}.pure-paginator .pure-button:focus,.pure-paginator .pure-button:active{outline-style:none}.pure-paginator .prev,.pure-paginator .next{color:#C0C1C3;text-shadow:0 -1px 0 rgba(0,0,0,.45)}.pure-paginator .prev{border-radius:2px 0 0 2px}.pure-paginator .next{border-radius:0 2px 2px 0}@media (max-width:480px){.pure-menu-horizontal{width:100%}.pure-menu-children li{display:block;border-bottom:1px solid #000}}.pure-table{border-collapse:collapse;border-spacing:0;empty-cells:show;border:1px solid #cbcbcb}.pure-table caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.pure-table td,.pure-table th{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:.5em 1em}.pure-table td:first-child,.pure-table th:first-child{border-left-width:0}.pure-table thead{background:#e0e0e0;color:#000;text-align:left;vertical-align:bottom}.pure-table td{background-color:transparent}.pure-table-odd td{background-color:#f2f2f2}.pure-table-striped tr:nth-child(2n-1) td{background-color:#f2f2f2}.pure-table-bordered td{border-bottom:1px solid #cbcbcb}.pure-table-bordered tbody>tr:last-child td,.pure-table-horizontal tbody>tr:last-child td{border-bottom-width:0}.pure-table-horizontal td,.pure-table-horizontal th{border-width:0 0 1px;border-bottom:1px solid #cbcbcb}.pure-table-horizontal tbody>tr:last-child td{border-bottom-width:0}
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: middleman-tansu
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0
|
|
4
|
+
version: 0.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Yuya Terajima
|
|
@@ -159,6 +159,7 @@ extra_rdoc_files: []
|
|
|
159
159
|
files:
|
|
160
160
|
- ".gitignore"
|
|
161
161
|
- ".travis.yml"
|
|
162
|
+
- CHANGELOG.md
|
|
162
163
|
- Gemfile
|
|
163
164
|
- LICENSE.txt
|
|
164
165
|
- README.ja.md
|
|
@@ -285,6 +286,7 @@ files:
|
|
|
285
286
|
- lib/middleman-tansu/template/source/sitemap.xml.builder
|
|
286
287
|
- lib/middleman-tansu/template/source/stylesheets/all.css.sass
|
|
287
288
|
- lib/middleman-tansu/template/source/stylesheets/github-markdown.css
|
|
289
|
+
- lib/middleman-tansu/template/source/stylesheets/pure-min.css
|
|
288
290
|
- lib/middleman-tansu/template/source/templates/index.html.slim
|
|
289
291
|
- lib/middleman-tansu/version.rb
|
|
290
292
|
- lib/middleman_extension.rb
|