bobkit 0.0.2 → 0.0.3
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/README.md +25 -3
- data/lib/bobkit.rb +6 -1
- data/lib/bobkit/sass_bridge.rb +1 -0
- data/lib/bobkit/sass_options.rb +16 -0
- data/lib/bobkit/scope_options.rb +9 -0
- data/lib/bobkit/slim_bridge.rb +1 -0
- data/lib/bobkit/slim_options.rb +13 -0
- data/lib/bobkit/tasks.rb +13 -0
- data/lib/bobkit/version.rb +1 -1
- data/lib/bobkit/watcher.rb +27 -0
- metadata +20 -2
- data/lib/bobkit/actions.rb +0 -34
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ded1105026bb28b99fef542edb1421bbeb61d6a4
|
4
|
+
data.tar.gz: 4f544c6cc88490ebcbbc42417a1e0a906e9cc594
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b17f6df9d253d6067e3503d1b28f28b9978ccf25efac452aa2dd8a6c28676a75ba46755a5d67d201b448acae18d430d2696244171e1a4a442da287ac9378c1df
|
7
|
+
data.tar.gz: b815b313bbad1238f78e3cbe0929f4c9075f790bd512c6396dbfe89683608688769ba7feee9fa02f7887d558e18da79de57ff75315ca4e4b052beade5b1a4716
|
data/README.md
CHANGED
@@ -19,7 +19,7 @@ The design intentions were:
|
|
19
19
|
- To be packaged as a library, and not a command line tool.
|
20
20
|
- To provide sensible default locations that are easily overridable.
|
21
21
|
- To add `render` and `layout` support to Slim (Rails-like).
|
22
|
-
- To add `@import 'globbing
|
22
|
+
- To add `@import 'globbing/*'` support to SCSS (Rails-like).
|
23
23
|
|
24
24
|
---
|
25
25
|
|
@@ -50,7 +50,7 @@ The basic usage pattern is this:
|
|
50
50
|
|
51
51
|
```ruby
|
52
52
|
require 'bobkit'
|
53
|
-
include Bobkit::
|
53
|
+
include Bobkit::Tasks
|
54
54
|
|
55
55
|
# Convert Slim to HTML string
|
56
56
|
html = render 'youtube', video: 'hi9tOILaiNs'
|
@@ -190,12 +190,34 @@ create_folder_for 'some/folder/with/file.png'
|
|
190
190
|
```
|
191
191
|
|
192
192
|
|
193
|
+
### File Watcher
|
194
|
+
|
195
|
+
Bobkit comes bundled with FileWatcher, and has a shortcut method to
|
196
|
+
use it.
|
197
|
+
|
198
|
+
```ruby
|
199
|
+
include Bobkit::Watcher
|
200
|
+
|
201
|
+
watch do |filename, event|
|
202
|
+
puts "#{event}: #{filename}"
|
203
|
+
generate
|
204
|
+
end
|
205
|
+
|
206
|
+
def generate
|
207
|
+
# Your generation logic here
|
208
|
+
end
|
209
|
+
```
|
210
|
+
|
211
|
+
The watch command is just like
|
212
|
+
`FileWatcher.new([...]).watch() do |filename, event|`
|
213
|
+
with the exception that the array of paths to watch is optional. If none
|
214
|
+
provided, we will watch all the input folders.
|
215
|
+
|
193
216
|
Todo
|
194
217
|
--------------------------------------------------
|
195
218
|
|
196
219
|
- [ ] YAML loader (data_folder?)
|
197
220
|
- [ ] CSV Loader (data_folder?)
|
198
|
-
- [ ] Maybe: Include file watcher and auto generate
|
199
221
|
- [ ] Maybe: Render from/to Markdown
|
200
222
|
- [ ] Maybe: Render to JSON
|
201
223
|
|
data/lib/bobkit.rb
CHANGED
@@ -3,14 +3,19 @@ require 'sass'
|
|
3
3
|
require 'sass-globbing'
|
4
4
|
require 'slim'
|
5
5
|
require 'coffee_script'
|
6
|
+
require 'filewatcher'
|
6
7
|
|
7
8
|
require 'bobkit/options_base'
|
8
9
|
require 'bobkit/location_options'
|
9
10
|
require 'bobkit/file_helpers'
|
11
|
+
require 'bobkit/scope_options'
|
12
|
+
require 'bobkit/sass_options'
|
10
13
|
require 'bobkit/sass_bridge'
|
14
|
+
require 'bobkit/slim_options'
|
11
15
|
require 'bobkit/slim_bridge'
|
12
16
|
require 'bobkit/coffee_bridge'
|
13
17
|
require 'bobkit/assets'
|
18
|
+
require 'bobkit/watcher'
|
14
19
|
|
15
20
|
require 'bobkit/scope'
|
16
|
-
require 'bobkit/
|
21
|
+
require 'bobkit/tasks'
|
data/lib/bobkit/sass_bridge.rb
CHANGED
@@ -0,0 +1,16 @@
|
|
1
|
+
module Bobkit
|
2
|
+
module SassOptions
|
3
|
+
def scss_options(options=nil)
|
4
|
+
setopt :scss_options, options, scss_defaults
|
5
|
+
end
|
6
|
+
alias_method :sass_options, :scss_options
|
7
|
+
|
8
|
+
|
9
|
+
protected
|
10
|
+
|
11
|
+
def scss_defaults
|
12
|
+
{ cache: true, syntax: :scss, style: :nested,
|
13
|
+
load_paths: [styles_folder] }
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/lib/bobkit/slim_bridge.rb
CHANGED
data/lib/bobkit/tasks.rb
ADDED
data/lib/bobkit/version.rb
CHANGED
@@ -0,0 +1,27 @@
|
|
1
|
+
module Bobkit
|
2
|
+
module Watcher
|
3
|
+
def watch(paths=nil, &block)
|
4
|
+
# :nocov:
|
5
|
+
@paths = paths
|
6
|
+
filewatcher.watch &block
|
7
|
+
# :nocov:
|
8
|
+
end
|
9
|
+
|
10
|
+
def filewatcher
|
11
|
+
FileWatcher.new(paths)
|
12
|
+
end
|
13
|
+
|
14
|
+
protected
|
15
|
+
|
16
|
+
def paths
|
17
|
+
@paths ||= all_input_paths
|
18
|
+
end
|
19
|
+
|
20
|
+
def all_input_paths
|
21
|
+
[ templates_folder, layouts_folder, styles_folder,
|
22
|
+
coffee_folder, assets_folder ]
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bobkit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Danny Ben Shitrit
|
@@ -66,6 +66,20 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '2.4'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: filewatcher
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0.5'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0.5'
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: runfile
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -116,16 +130,20 @@ extra_rdoc_files: []
|
|
116
130
|
files:
|
117
131
|
- README.md
|
118
132
|
- lib/bobkit.rb
|
119
|
-
- lib/bobkit/actions.rb
|
120
133
|
- lib/bobkit/assets.rb
|
121
134
|
- lib/bobkit/coffee_bridge.rb
|
122
135
|
- lib/bobkit/file_helpers.rb
|
123
136
|
- lib/bobkit/location_options.rb
|
124
137
|
- lib/bobkit/options_base.rb
|
125
138
|
- lib/bobkit/sass_bridge.rb
|
139
|
+
- lib/bobkit/sass_options.rb
|
126
140
|
- lib/bobkit/scope.rb
|
141
|
+
- lib/bobkit/scope_options.rb
|
127
142
|
- lib/bobkit/slim_bridge.rb
|
143
|
+
- lib/bobkit/slim_options.rb
|
144
|
+
- lib/bobkit/tasks.rb
|
128
145
|
- lib/bobkit/version.rb
|
146
|
+
- lib/bobkit/watcher.rb
|
129
147
|
homepage: https://github.com/DannyBen/bobkit
|
130
148
|
licenses:
|
131
149
|
- MIT
|
data/lib/bobkit/actions.rb
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
module Bobkit
|
2
|
-
module Actions
|
3
|
-
include OptionsBase
|
4
|
-
include LocationOptions
|
5
|
-
include SassBridge
|
6
|
-
include SlimBridge
|
7
|
-
include CoffeeBridge
|
8
|
-
include Assets
|
9
|
-
|
10
|
-
def slim_options(options=nil)
|
11
|
-
setopt :slim_options, options, slim_defaults
|
12
|
-
end
|
13
|
-
|
14
|
-
def scss_options(options=nil)
|
15
|
-
setopt :scss_options, options, scss_defaults
|
16
|
-
end
|
17
|
-
|
18
|
-
def scope(scope=nil)
|
19
|
-
scope ? setopt(:scope, Scope.new(scope)) : options[:scope]
|
20
|
-
end
|
21
|
-
|
22
|
-
protected
|
23
|
-
|
24
|
-
def slim_defaults
|
25
|
-
{ pretty: true, disable_escape: true }
|
26
|
-
end
|
27
|
-
|
28
|
-
def scss_defaults
|
29
|
-
{ cache: true, syntax: :scss, style: :nested,
|
30
|
-
load_paths: [styles_folder] }
|
31
|
-
end
|
32
|
-
|
33
|
-
end
|
34
|
-
end
|