nanoc-sprockets 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +42 -3
- data/lib/nanoc-sprockets.rb +17 -11
- data/nanoc-sprockets.gemspec +3 -3
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d5fddcc2e8cd9e9914b917fcbdf22ae16a26acd6
|
4
|
+
data.tar.gz: 8fcdcd1039cc8531b35dd7a660f9edc192daa257
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 213ed748b50091aa45914092bda54071d768133831b8af64191d6ca10d7cc55323345bee20b46d12e8e4b259f573c60cd00a336b17cf64e734449d27b6a3f425
|
7
|
+
data.tar.gz: 511c13e519aa1365e62ef6f292d66cb0ab388bf438956aac61f26ea3715d9f5fa58ee369c47c23dcb594f39d07a57b332ae84dfef3cb90612f65c363c51fb80c
|
data/README.md
CHANGED
@@ -15,7 +15,11 @@ Add *nanoc-sprockets* to you Gemfile.
|
|
15
15
|
|
16
16
|
gem 'nanoc-sprockets'
|
17
17
|
|
18
|
-
|
18
|
+
## Config
|
19
|
+
|
20
|
+
In default.rb, require nanoc-sprockets:
|
21
|
+
|
22
|
+
require 'nanoc-sprockets'
|
19
23
|
|
20
24
|
Add a new entry in your *nanoc.yaml*.
|
21
25
|
|
@@ -32,11 +36,46 @@ data_sources:
|
|
32
36
|
js_compressor: uglifier
|
33
37
|
```
|
34
38
|
|
35
|
-
|
39
|
+
* items_root: the default prefix for you assets identifier
|
40
|
+
* compile: an array of js and css files to load as nanoc's items. Any other files are loaded automatically
|
41
|
+
* path: the path to the assets
|
42
|
+
* css_compressor: See [sprockets minifying assets][sprockets-minify-assets]
|
43
|
+
* js_compressor: See [sprockets minifying assets][sprockets-minify-assets]
|
44
|
+
* assets_additionnal_paths: an array of paths to be added to sprockets. Can be vendor/assets/javascript for example
|
45
|
+
* digest: The assets path will have a digest. You should toggle it to false during development.
|
46
|
+
* assets_host: Link to assets from a dedicated server.
|
47
|
+
|
48
|
+
Add specific rules for assets in *Rules*:
|
49
|
+
|
50
|
+
```ruby
|
51
|
+
compile '/assets/*/' do
|
52
|
+
end
|
53
|
+
route '/assets/*/' do
|
54
|
+
Sprockets::Helpers.asset_path(item[:filename])
|
55
|
+
end
|
56
|
+
```
|
57
|
+
|
58
|
+
If you plan to use sass, you should probably install the *[sprockets-sass][]* gem. Also install the *[uglifier][]* gem to minify javascript.
|
59
|
+
|
60
|
+
## Usage
|
61
|
+
|
62
|
+
To link to any assets, use the helpers providers by [sprockets-helpers][].
|
63
|
+
|
64
|
+
* image_path
|
65
|
+
* font_path
|
66
|
+
* stylesheet_path
|
67
|
+
* javascript_path
|
68
|
+
* asset_path
|
69
|
+
|
70
|
+
## License
|
36
71
|
|
37
72
|
(c) 2014 Stormz
|
38
73
|
|
39
74
|
MIT
|
40
75
|
|
41
|
-
[sprockets]: https://github.com/sstephenson/sprockets
|
76
|
+
[sprockets]: https://github.com/sstephenson/sprockets-minify-assets
|
42
77
|
[nanoc]: http://nanoc.ws/
|
78
|
+
[sprockets-minify-assets]: https://github.com/sstephenson/sprockets#minifying-assets
|
79
|
+
[sprockets-sass]: https://github.com/petebrowne/sprockets-sass/
|
80
|
+
[sprockets-helpers]: https://github.com/petebrowne/sprockets-helpers
|
81
|
+
[uglifier]: https://github.com/lautis/uglifier
|
data/lib/nanoc-sprockets.rb
CHANGED
@@ -10,6 +10,14 @@ module Nanoc::DataSources
|
|
10
10
|
path =~ /assets/ && !%w(.js .css).include?(File.extname(filename))
|
11
11
|
end
|
12
12
|
|
13
|
+
def up
|
14
|
+
@config = {
|
15
|
+
path: 'assets',
|
16
|
+
compile: [],
|
17
|
+
assets_additionnal_paths: []
|
18
|
+
}.merge(@config)
|
19
|
+
end
|
20
|
+
|
13
21
|
def items
|
14
22
|
assets = environment.each_logical_path(*compiled_assets).to_a
|
15
23
|
|
@@ -17,12 +25,9 @@ module Nanoc::DataSources
|
|
17
25
|
asset = environment.find_asset(bundle)
|
18
26
|
is_binary = !!(asset.pathname && !@site.config[:text_extensions].include?(File.extname(asset.pathname)[1..-1]))
|
19
27
|
|
28
|
+
content_of_filename = is_binary ? asset.pathname : asset.to_s
|
20
29
|
attributes = {filename: bundle, binary: is_binary, mtime: asset.mtime}
|
21
|
-
|
22
|
-
Nanoc::Item.new(asset.pathname, attributes, bundle, attributes)
|
23
|
-
else
|
24
|
-
Nanoc::Item.new(asset.to_s, attributes, bundle, attributes)
|
25
|
-
end
|
30
|
+
Nanoc::Item.new(content_of_filename, attributes, bundle, attributes)
|
26
31
|
end
|
27
32
|
end
|
28
33
|
|
@@ -34,11 +39,11 @@ module Nanoc::DataSources
|
|
34
39
|
def create_environment
|
35
40
|
env = ::Sprockets::Environment.new
|
36
41
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
config[:
|
41
|
-
env.append_path
|
42
|
+
%w(javascripts images stylesheets fonts).each do |asset|
|
43
|
+
env.append_path File.join(config[:path], asset)
|
44
|
+
end
|
45
|
+
config[:assets_additionnal_paths].each do |path|
|
46
|
+
env.append_path path
|
42
47
|
end
|
43
48
|
env.js_compressor = config[:js_compressor].to_sym
|
44
49
|
env.css_compressor = config[:css_compressor].to_sym
|
@@ -47,7 +52,8 @@ module Nanoc::DataSources
|
|
47
52
|
Sprockets::Helpers.configure do |c|
|
48
53
|
c.environment = env
|
49
54
|
c.prefix = config[:items_root]
|
50
|
-
c.
|
55
|
+
c.asset_host = config[:asset_host] if config[:asset_host]
|
56
|
+
c.digest = config[:digest] if config[:digest]
|
51
57
|
end
|
52
58
|
env
|
53
59
|
end
|
data/nanoc-sprockets.gemspec
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = 'nanoc-sprockets'
|
5
|
-
s.version = '0.0.
|
6
|
-
s.summary =
|
7
|
-
s.description =
|
5
|
+
s.version = '0.0.2'
|
6
|
+
s.summary = 'Use sprockets as a datasource for nanoc.'
|
7
|
+
s.description = 'Use sprockets as a datasource for nanoc.'
|
8
8
|
s.homepage = 'https://github.com/stormz/nanoc-sprockets'
|
9
9
|
s.license = 'MIT'
|
10
10
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nanoc-sprockets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- François de Metz
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-03-
|
11
|
+
date: 2014-03-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sprockets
|
@@ -38,7 +38,7 @@ dependencies:
|
|
38
38
|
- - '>='
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 1.1.0
|
41
|
-
description:
|
41
|
+
description: Use sprockets as a datasource for nanoc.
|
42
42
|
email: francois@2metz.fr
|
43
43
|
executables: []
|
44
44
|
extensions: []
|
@@ -70,6 +70,6 @@ rubyforge_project:
|
|
70
70
|
rubygems_version: 2.1.5
|
71
71
|
signing_key:
|
72
72
|
specification_version: 4
|
73
|
-
summary: Use sprockets as a datasource for nanoc
|
73
|
+
summary: Use sprockets as a datasource for nanoc.
|
74
74
|
test_files: []
|
75
75
|
has_rdoc:
|