jekyll-retinamagick 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/lib/jekyll-retinamagick.rb +12 -11
- data/lib/jekyll-retinamagick/version.rb +1 -1
- data/readme.md +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1f059a36c0d5a85e6ea78310cc4d7981cf2a3013
|
4
|
+
data.tar.gz: 301979a3cf3257a1cc1132a31a234ff1e4b449da
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 15be8a6357ddd63372e12d83599caa02896321b12db0a7a2ecb443a983b009fa1f30dff284851d2103e441fa56aa43c8aa21737bba7918c0d1cd28e8e614c809
|
7
|
+
data.tar.gz: 8d164bede5fc3a86400ca20c05f821b8460d83aaaf9d6c1ce4a19d3ea265dea341666e942654384f7f0b8f7ad27049cc2310b3164296dfbf3afffc42b420aa24
|
data/lib/jekyll-retinamagick.rb
CHANGED
@@ -12,7 +12,7 @@ module Jekyll
|
|
12
12
|
# +preset+ is the Preset hash from the config.
|
13
13
|
#
|
14
14
|
# Returns <GeneratedImageFile>
|
15
|
-
def initialize(site, base, dir, name, preset)
|
15
|
+
def initialize(site, base, dir, name, preset, retina)
|
16
16
|
@site = site
|
17
17
|
@base = base
|
18
18
|
@dir = dir
|
@@ -20,6 +20,7 @@ module Jekyll
|
|
20
20
|
@dst_dir = preset.delete('destination')
|
21
21
|
@src_dir = preset.delete('source')
|
22
22
|
@commands = preset
|
23
|
+
@retina = retina
|
23
24
|
end
|
24
25
|
|
25
26
|
# Obtains source file path by substituting the preset's source directory
|
@@ -37,6 +38,10 @@ module Jekyll
|
|
37
38
|
# Returns false if the file was not modified since last time (no-op).
|
38
39
|
def write(dest)
|
39
40
|
dest_path = destination(dest)
|
41
|
+
if @retina
|
42
|
+
filepath, extension = dest_path.match(/(.+)(\.[a-zA-Z]{3,4})/i).captures
|
43
|
+
dest_path = "#{filepath}@2x#{extension}"
|
44
|
+
end
|
40
45
|
|
41
46
|
return false if File.exist? dest_path and !modified?
|
42
47
|
|
@@ -45,19 +50,14 @@ module Jekyll
|
|
45
50
|
FileUtils.mkdir_p(File.dirname(dest_path))
|
46
51
|
image = ::MiniMagick::Image.open(path)
|
47
52
|
@commands.each_pair do |command, arg|
|
53
|
+
if @retina
|
54
|
+
width, height = arg.match(/([0-9]+)x([0-9]+)/i).captures
|
55
|
+
arg = "#{Integer(width) * 2}x#{Integer(height) * 2}"
|
56
|
+
end
|
48
57
|
image.resize arg
|
49
|
-
@size = arg
|
50
58
|
end
|
51
59
|
image.write dest_path
|
52
60
|
|
53
|
-
width, height = @size.match(/([0-9]+)x([0-9]+)/i).captures
|
54
|
-
retinaSize = "#{Integer(width) * 2}x#{Integer(height) * 2}"
|
55
|
-
filepath, extension = dest_path.match(/(.+)(\.[a-zA-Z]{3,4})/i).captures
|
56
|
-
dest_path = "#{filepath}@2x#{extension}"
|
57
|
-
retinaImage = ::MiniMagick::Image.open(path)
|
58
|
-
retinaImage.resize retinaSize
|
59
|
-
retinaImage.write dest_path
|
60
|
-
|
61
61
|
true
|
62
62
|
end
|
63
63
|
|
@@ -74,7 +74,8 @@ module Jekyll
|
|
74
74
|
|
75
75
|
site.config['retinamagick'].each_pair do |name, preset|
|
76
76
|
Dir.glob(File.join(site.source, preset['source'], "*.{png,jpg,jpeg,gif}")) do |source|
|
77
|
-
site.static_files << GeneratedImageFile.new(site, site.source, preset['destination'], File.basename(source), preset.clone)
|
77
|
+
site.static_files << GeneratedImageFile.new(site, site.source, preset['destination'], File.basename(source), preset.clone, false)
|
78
|
+
site.static_files << GeneratedImageFile.new(site, site.source, preset['destination'], File.basename(source), preset.clone, true)
|
78
79
|
end
|
79
80
|
end
|
80
81
|
end
|
data/readme.md
CHANGED
@@ -40,7 +40,7 @@ Define presets in your _config.yml file, like this:
|
|
40
40
|
resize: "600x400"
|
41
41
|
|
42
42
|
This configuration will create a 100x100 thumbnail for each image in
|
43
|
-
`img/photos/original` and put it in
|
43
|
+
`img/photos/original` and put it in `_site/img/photos/thumbnail`. It will also
|
44
44
|
generate a 200x200 thumbnail and add an `@2x` between the file name and the
|
45
45
|
extention. It will also generate a 600x400 and 1200x800 image in a similar way
|
46
46
|
and then place them in `_site/img/photos/medium`.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-retinamagick
|
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
|
- Brendan Tobolaski
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-10-
|
11
|
+
date: 2013-10-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|