nanoc-sprockets 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.
- 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:
|