jekyll-responsive_image 0.11.3 → 0.12.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/.travis.yml +1 -0
- data/Gemfile +2 -1
- data/README.md +3 -2
- data/jekyll-responsive_image.gemspec +7 -1
- data/lib/jekyll/responsive_image.rb +1 -0
- data/lib/jekyll/responsive_image/block.rb +3 -2
- data/lib/jekyll/responsive_image/common.rb +17 -0
- data/lib/jekyll/responsive_image/resize_handler.rb +5 -5
- data/lib/jekyll/responsive_image/tag.rb +3 -2
- data/lib/jekyll/responsive_image/utils.rb +5 -0
- data/lib/jekyll/responsive_image/version.rb +1 -1
- metadata +13 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f1a977d6f85c94a62c44f642c1c5db654858934c
|
|
4
|
+
data.tar.gz: ef3148da73fb5d20263355e5e11fe1b8b1b2c1de
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 65376dfb2c03ddd25ca527dba6a222821fd4b2ec4b19877fa6b9c4cb3cb74e605c0bdeb951fbe6fd26dcea006d84992e6ab04a1b6e7456667bcc45751836735a
|
|
7
|
+
data.tar.gz: c47166b22a9acc36d355f700c49cf42ba115284470ce3365cf914ce188cdcff8522a621fa6f91e9adeeb647d13fc865b59b46a17bd38fcd890330c8460aa321f
|
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
data/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Jekyll Responsive Images is a [Jekyll](http://jekyllrb.com/) plugin and utility for automatically resizing images. Its intended use is for sites which want to display responsive images using something like [`srcset`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Img#Specifications) or [Imager.js](https://github.com/BBC-News/Imager.js/).
|
|
4
4
|
|
|
5
5
|
[](https://travis-ci.org/wildlyinaccurate/jekyll-responsive-image)
|
|
6
|
-
[](https://coveralls.io/github/wildlyinaccurate/jekyll-responsive-images?branch=master)
|
|
7
7
|
[](https://gemnasium.com/wildlyinaccurate/jekyll-responsive-images)
|
|
8
8
|
|
|
9
9
|
## Installation
|
|
@@ -46,7 +46,8 @@ responsive_image:
|
|
|
46
46
|
quality: 90
|
|
47
47
|
|
|
48
48
|
# [Optional, Default: assets/resized/%{filename}-%{width}x%{height}.%{extension}]
|
|
49
|
-
# The template used when generating filenames for resized images.
|
|
49
|
+
# The template used when generating filenames for resized images. Must be a
|
|
50
|
+
# relative path.
|
|
50
51
|
#
|
|
51
52
|
# Parameters available are:
|
|
52
53
|
# %{basename} Basename of the file (assets/some-file.jpg => some-file.jpg)
|
|
@@ -22,6 +22,12 @@ Gem::Specification.new do |spec|
|
|
|
22
22
|
spec.executables = []
|
|
23
23
|
spec.require_path = 'lib'
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.0.0')
|
|
26
|
+
max_jekyll_version = '3.0'
|
|
27
|
+
else
|
|
28
|
+
max_jekyll_version = '4.0'
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
spec.add_runtime_dependency 'jekyll', ['>= 2.0', "< #{max_jekyll_version}"]
|
|
26
32
|
spec.add_runtime_dependency 'rmagick'
|
|
27
33
|
end
|
|
@@ -9,6 +9,7 @@ require 'jekyll/responsive_image/defaults'
|
|
|
9
9
|
require 'jekyll/responsive_image/utils'
|
|
10
10
|
require 'jekyll/responsive_image/image_processor'
|
|
11
11
|
require 'jekyll/responsive_image/resize_handler'
|
|
12
|
+
require 'jekyll/responsive_image/common'
|
|
12
13
|
require 'jekyll/responsive_image/tag'
|
|
13
14
|
require 'jekyll/responsive_image/block'
|
|
14
15
|
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
module Jekyll
|
|
2
2
|
class ResponsiveImage
|
|
3
3
|
class Block < Liquid::Block
|
|
4
|
+
include Jekyll::ResponsiveImage::Common
|
|
5
|
+
|
|
4
6
|
def render(context)
|
|
5
|
-
config =
|
|
6
|
-
config.merge!(context.registers[:site].config['responsive_image'])
|
|
7
|
+
config = make_config(context.registers[:site])
|
|
7
8
|
|
|
8
9
|
attributes = YAML.load(super)
|
|
9
10
|
image_template = attributes['template'] || config['template']
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
module Jekyll
|
|
2
|
+
class ResponsiveImage
|
|
3
|
+
module Common
|
|
4
|
+
include Jekyll::ResponsiveImage::Utils
|
|
5
|
+
|
|
6
|
+
def make_config(site)
|
|
7
|
+
config = ResponsiveImage.defaults.dup.merge(site.config['responsive_image']).merge(:site_dest => site.dest)
|
|
8
|
+
|
|
9
|
+
# Not very nice, but this is needed to create a clean path to add to keep_files
|
|
10
|
+
output_dir = format_output_path(config['output_path_format'], '*', '*', '*')
|
|
11
|
+
site.config['keep_files'] << output_dir unless site.config['keep_files'].include?(output_dir)
|
|
12
|
+
|
|
13
|
+
config
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -28,17 +28,17 @@ module Jekyll
|
|
|
28
28
|
f.quality = size['quality'] || config['default_quality']
|
|
29
29
|
end
|
|
30
30
|
|
|
31
|
+
# Ensure the generated file is copied to the _site directory
|
|
32
|
+
site_dest_filepath = File.expand_path(filepath, config[:site_dest])
|
|
33
|
+
ensure_output_dir_exists!(File.dirname(site_dest_filepath))
|
|
34
|
+
FileUtils.copy(filepath, site_dest_filepath)
|
|
35
|
+
|
|
31
36
|
i.destroy!
|
|
32
37
|
end
|
|
33
38
|
|
|
34
39
|
resized
|
|
35
40
|
end
|
|
36
41
|
|
|
37
|
-
def format_output_path(format, path, width, height)
|
|
38
|
-
params = symbolize_keys(image_hash(path, width, height))
|
|
39
|
-
format % params
|
|
40
|
-
end
|
|
41
|
-
|
|
42
42
|
def needs_resizing?(img, width)
|
|
43
43
|
img.columns > width
|
|
44
44
|
end
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
module Jekyll
|
|
2
2
|
class ResponsiveImage
|
|
3
3
|
class Tag < Liquid::Tag
|
|
4
|
+
include Jekyll::ResponsiveImage::Common
|
|
5
|
+
|
|
4
6
|
def initialize(tag_name, markup, tokens)
|
|
5
7
|
super
|
|
6
8
|
|
|
@@ -13,8 +15,7 @@ module Jekyll
|
|
|
13
15
|
end
|
|
14
16
|
|
|
15
17
|
def render(context)
|
|
16
|
-
config =
|
|
17
|
-
config.merge!(context.registers[:site].config['responsive_image'])
|
|
18
|
+
config = make_config(context.registers[:site])
|
|
18
19
|
|
|
19
20
|
image = ImageProcessor.process(@attributes['path'], config)
|
|
20
21
|
@attributes['original'] = image[:original]
|
|
@@ -9,6 +9,11 @@ module Jekyll
|
|
|
9
9
|
result
|
|
10
10
|
end
|
|
11
11
|
|
|
12
|
+
def format_output_path(format, path, width, height)
|
|
13
|
+
params = symbolize_keys(image_hash(path, width, height))
|
|
14
|
+
format % params
|
|
15
|
+
end
|
|
16
|
+
|
|
12
17
|
# Build a hash containing image information
|
|
13
18
|
def image_hash(path, width, height)
|
|
14
19
|
{
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: jekyll-responsive_image
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.12.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Joseph Wynn
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2015-04
|
|
11
|
+
date: 2015-11-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: jekyll
|
|
@@ -71,6 +71,7 @@ files:
|
|
|
71
71
|
- jekyll-responsive_image.gemspec
|
|
72
72
|
- lib/jekyll/responsive_image.rb
|
|
73
73
|
- lib/jekyll/responsive_image/block.rb
|
|
74
|
+
- lib/jekyll/responsive_image/common.rb
|
|
74
75
|
- lib/jekyll/responsive_image/defaults.rb
|
|
75
76
|
- lib/jekyll/responsive_image/image_processor.rb
|
|
76
77
|
- lib/jekyll/responsive_image/resize_handler.rb
|
|
@@ -97,8 +98,16 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
97
98
|
version: '0'
|
|
98
99
|
requirements: []
|
|
99
100
|
rubyforge_project:
|
|
100
|
-
rubygems_version: 2.4.5
|
|
101
|
+
rubygems_version: 2.4.5.1
|
|
101
102
|
signing_key:
|
|
102
103
|
specification_version: 4
|
|
103
104
|
summary: Responsive images for Jekyll via srcset
|
|
104
|
-
test_files:
|
|
105
|
+
test_files:
|
|
106
|
+
- features/fixtures/_includes/custom-template.html
|
|
107
|
+
- features/fixtures/_includes/responsive-image.html
|
|
108
|
+
- features/fixtures/assets/test.png
|
|
109
|
+
- features/responsive-image-block.feature
|
|
110
|
+
- features/responsive-image-tag.feature
|
|
111
|
+
- features/step_definitions/jekyll_steps.rb
|
|
112
|
+
- features/support/env.rb
|
|
113
|
+
- features/support/hooks.rb
|