midwife 0.0.1 → 0.0.2
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.
- data/.gitignore +1 -0
- data/Gemfile.lock +6 -1
- data/README.md +25 -0
- data/lib/midwife/tasks.rb +20 -0
- data/lib/midwife/version.rb +1 -1
- data/midwife.gemspec +2 -1
- metadata +36 -40
- data/lib/tasks/care.rake +0 -51
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,9 +1,11 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
midwife (0.0.
|
4
|
+
midwife (0.0.2)
|
5
5
|
haml (= 3.1.7)
|
6
6
|
listen (= 0.5.3)
|
7
|
+
rack (= 1.4.1)
|
8
|
+
rack-contrib (= 1.1.0)
|
7
9
|
rake (= 0.9.2.2)
|
8
10
|
rb-fsevent (~> 0.9.1)
|
9
11
|
sass (= 3.2.1)
|
@@ -13,6 +15,9 @@ GEM
|
|
13
15
|
specs:
|
14
16
|
haml (3.1.7)
|
15
17
|
listen (0.5.3)
|
18
|
+
rack (1.4.1)
|
19
|
+
rack-contrib (1.1.0)
|
20
|
+
rack (>= 0.9.1)
|
16
21
|
rake (0.9.2.2)
|
17
22
|
rb-fsevent (0.9.2)
|
18
23
|
sass (3.2.1)
|
data/README.md
CHANGED
@@ -0,0 +1,25 @@
|
|
1
|
+
## Midwife
|
2
|
+
A collection of preprocessors for frontend development.
|
3
|
+
|
4
|
+
## Install
|
5
|
+
|
6
|
+
$ gem install midwife
|
7
|
+
|
8
|
+
## Setup
|
9
|
+
|
10
|
+
In Rakefile:
|
11
|
+
|
12
|
+
```ruby
|
13
|
+
require 'midwife'
|
14
|
+
```
|
15
|
+
|
16
|
+
## Usage
|
17
|
+
|
18
|
+
rake care # Care for your haml/scss
|
19
|
+
rake clean # Remove any temporary products.
|
20
|
+
rake clobber # Remove any generated file.
|
21
|
+
rake listen # Listen to your haml/scss
|
22
|
+
|
23
|
+
---
|
24
|
+
|
25
|
+
Make an `assets` folder, and drop your haml and scss files in there. Running `rake care` will compile haml and scss files once and drop the artifacts into the `public` fodler. Run `rake listen` will compile each time you touch the files. I recommend `brew install mongoose` and run `mongoose` in the `public` folder to start a web server running on [localhost:8080](http://localhost:8080).
|
data/lib/midwife/tasks.rb
CHANGED
@@ -12,7 +12,27 @@ module Midwife
|
|
12
12
|
|
13
13
|
CLEAN.include HTML + CSS
|
14
14
|
|
15
|
+
CONFIG = <<FILE
|
16
|
+
require 'rack'
|
17
|
+
require 'rack/contrib/try_static'
|
18
|
+
|
19
|
+
use Rack::TryStatic, :root => "public",
|
20
|
+
:urls => %w[/],
|
21
|
+
:try => ['.html', 'index.html', '/index.html']
|
22
|
+
|
23
|
+
run lambda { |env| [404, {'Content-type' => 'text/plain'}, ['Not found']] }
|
24
|
+
FILE
|
25
|
+
|
15
26
|
def self.build
|
27
|
+
desc 'Setup your environment'
|
28
|
+
task :setup do
|
29
|
+
FileUtils.mkdir_p(ASSETS) unless File.exists?(ASSETS)
|
30
|
+
FileUtils.mkdir_p(PUBLIC) unless File.exists?(PUBLIC)
|
31
|
+
File.open("config.ru", "w") do |file|
|
32
|
+
file.write(CONFIG)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
16
36
|
desc 'Care for your haml/scss'
|
17
37
|
task :care => HTML + CSS
|
18
38
|
|
data/lib/midwife/version.rb
CHANGED
data/midwife.gemspec
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
1
|
$:.push File.expand_path("../lib", __FILE__)
|
3
2
|
require "midwife/version"
|
4
3
|
|
@@ -17,6 +16,8 @@ Gem::Specification.new do |s|
|
|
17
16
|
s.add_dependency "rb-fsevent", "~> 0.9.1"
|
18
17
|
s.add_dependency "haml", "3.1.7"
|
19
18
|
s.add_dependency "sass", "3.2.1"
|
19
|
+
s.add_dependency "rack", "1.4.1"
|
20
|
+
s.add_dependency "rack-contrib", "1.1.0"
|
20
21
|
|
21
22
|
s.files = `git ls-files`.split("\n")
|
22
23
|
s.require_paths = ["lib"]
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: midwife
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,39 +13,29 @@ date: 2012-10-13 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirement: &2161190480 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
|
-
- -
|
19
|
+
- - =
|
20
20
|
- !ruby/object:Gem::Version
|
21
21
|
version: 0.9.2.2
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - '='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: 0.9.2.2
|
24
|
+
version_requirements: *2161190480
|
30
25
|
- !ruby/object:Gem::Dependency
|
31
26
|
name: listen
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
27
|
+
requirement: &2161189960 !ruby/object:Gem::Requirement
|
33
28
|
none: false
|
34
29
|
requirements:
|
35
|
-
- -
|
30
|
+
- - =
|
36
31
|
- !ruby/object:Gem::Version
|
37
32
|
version: 0.5.3
|
38
33
|
type: :runtime
|
39
34
|
prerelease: false
|
40
|
-
version_requirements:
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - '='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: 0.5.3
|
35
|
+
version_requirements: *2161189960
|
46
36
|
- !ruby/object:Gem::Dependency
|
47
37
|
name: rb-fsevent
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirement: &2161189420 !ruby/object:Gem::Requirement
|
49
39
|
none: false
|
50
40
|
requirements:
|
51
41
|
- - ~>
|
@@ -53,44 +43,51 @@ dependencies:
|
|
53
43
|
version: 0.9.1
|
54
44
|
type: :runtime
|
55
45
|
prerelease: false
|
56
|
-
version_requirements:
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ~>
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: 0.9.1
|
46
|
+
version_requirements: *2161189420
|
62
47
|
- !ruby/object:Gem::Dependency
|
63
48
|
name: haml
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirement: &2161188940 !ruby/object:Gem::Requirement
|
65
50
|
none: false
|
66
51
|
requirements:
|
67
|
-
- -
|
52
|
+
- - =
|
68
53
|
- !ruby/object:Gem::Version
|
69
54
|
version: 3.1.7
|
70
55
|
type: :runtime
|
71
56
|
prerelease: false
|
72
|
-
version_requirements:
|
57
|
+
version_requirements: *2161188940
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: sass
|
60
|
+
requirement: &2161188460 !ruby/object:Gem::Requirement
|
73
61
|
none: false
|
74
62
|
requirements:
|
75
|
-
- -
|
63
|
+
- - =
|
76
64
|
- !ruby/object:Gem::Version
|
77
|
-
version: 3.1
|
65
|
+
version: 3.2.1
|
66
|
+
type: :runtime
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: *2161188460
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
|
-
name:
|
80
|
-
requirement: !ruby/object:Gem::Requirement
|
70
|
+
name: rack
|
71
|
+
requirement: &2161187980 !ruby/object:Gem::Requirement
|
81
72
|
none: false
|
82
73
|
requirements:
|
83
|
-
- -
|
74
|
+
- - =
|
84
75
|
- !ruby/object:Gem::Version
|
85
|
-
version:
|
76
|
+
version: 1.4.1
|
86
77
|
type: :runtime
|
87
78
|
prerelease: false
|
88
|
-
version_requirements:
|
79
|
+
version_requirements: *2161187980
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: rack-contrib
|
82
|
+
requirement: &2161187500 !ruby/object:Gem::Requirement
|
89
83
|
none: false
|
90
84
|
requirements:
|
91
|
-
- -
|
85
|
+
- - =
|
92
86
|
- !ruby/object:Gem::Version
|
93
|
-
version:
|
87
|
+
version: 1.1.0
|
88
|
+
type: :runtime
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: *2161187500
|
94
91
|
description: ''
|
95
92
|
email:
|
96
93
|
- lihsuan@8thlight.com
|
@@ -106,7 +103,6 @@ files:
|
|
106
103
|
- lib/midwife.rb
|
107
104
|
- lib/midwife/tasks.rb
|
108
105
|
- lib/midwife/version.rb
|
109
|
-
- lib/tasks/care.rake
|
110
106
|
- midwife.gemspec
|
111
107
|
homepage: http://github.com/naush/midwife
|
112
108
|
licenses: []
|
@@ -122,7 +118,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
122
118
|
version: '0'
|
123
119
|
segments:
|
124
120
|
- 0
|
125
|
-
hash:
|
121
|
+
hash: 3301392848472631424
|
126
122
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
127
123
|
none: false
|
128
124
|
requirements:
|
@@ -131,10 +127,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
131
127
|
version: '0'
|
132
128
|
segments:
|
133
129
|
- 0
|
134
|
-
hash:
|
130
|
+
hash: 3301392848472631424
|
135
131
|
requirements: []
|
136
132
|
rubyforge_project:
|
137
|
-
rubygems_version: 1.8.
|
133
|
+
rubygems_version: 1.8.4
|
138
134
|
signing_key:
|
139
135
|
specification_version: 3
|
140
136
|
summary: A collection of preprocessors for frontend development
|
data/lib/tasks/care.rake
DELETED
@@ -1,51 +0,0 @@
|
|
1
|
-
include Rake::DSL
|
2
|
-
require 'rake/clean'
|
3
|
-
require 'listen'
|
4
|
-
|
5
|
-
HAML = FileList['**/*.haml']
|
6
|
-
HTML = HAML.ext('html')
|
7
|
-
SCSS = FileList['**/*.scss']
|
8
|
-
CSS = SCSS.ext('css')
|
9
|
-
|
10
|
-
ASSETS = 'assets'
|
11
|
-
PUBLIC = 'public'
|
12
|
-
|
13
|
-
CLEAN.include HTML + CSS
|
14
|
-
|
15
|
-
desc 'Care for your haml/scss'
|
16
|
-
task :care => HTML + CSS
|
17
|
-
task :default => :care
|
18
|
-
|
19
|
-
desc 'Listen to your haml/scss'
|
20
|
-
task :listen do |t|
|
21
|
-
Listen.to(ASSETS) do |modified, added, removed|
|
22
|
-
(modified + added).each do |source|
|
23
|
-
extension = File.extname(source)
|
24
|
-
if extension == '.haml'
|
25
|
-
target = source.ext('html')
|
26
|
-
compile('haml', source, target)
|
27
|
-
elsif extension == '.scss'
|
28
|
-
target = source.ext('css')
|
29
|
-
compile('sass', source, target)
|
30
|
-
end
|
31
|
-
end
|
32
|
-
removed.each do |source|
|
33
|
-
destination = source.gsub(ASSETS, PUBLIC).ext('html')
|
34
|
-
File.delete(destination)
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
rule '.html' => '.haml' do |t|
|
40
|
-
compile("haml", t.source, t.name)
|
41
|
-
end
|
42
|
-
|
43
|
-
rule '.css' => '.scss' do |t|
|
44
|
-
compile("sass", t.source, t.name)
|
45
|
-
end
|
46
|
-
|
47
|
-
def compile(command, source, target)
|
48
|
-
destination = target.gsub(ASSETS, PUBLIC)
|
49
|
-
FileUtils.mkdir_p(File.dirname(destination))
|
50
|
-
sh "#{command} #{source} #{destination}"
|
51
|
-
end
|