Fix asset paths in partials

This commit is contained in:
Adam Bouqdib 2016-06-15 18:21:02 +00:00
parent b14ef9be32
commit 9ffbaa101c
3 changed files with 11 additions and 9 deletions

View File

@ -1,5 +1,5 @@
Gem::Specification.new do |spec|
spec.version = "0.1.2"
spec.version = "0.1.3"
spec.homepage = "http://github.com/abemedia/jekyll-pdf/"
spec.authors = ["Adam Bouqdib"]
spec.email = ["adam@abemedia.co.uk"]

View File

@ -1,9 +1,9 @@
try_require "jekyll-assets" do
module Jekyll
module PDF
class AssetsTag < Jekyll::Assets::Liquid::Tag
# --------------------------------------------------------------------
# Tags that we allow our users to use.
# --------------------------------------------------------------------
@ -18,29 +18,29 @@ try_require "jekyll-assets" do
pdf_css
pdf_js
).freeze
def initialize(tag, args, tokens)
tag = tag.to_s.sub!("pdf_", "")
super(tag, args, tokens)
end
def render(context)
@path_prefix = "file://" + context.registers[:site].dest
super
end
private
def build_html(args, sprockets, asset, path = get_path(sprockets, asset))
data = @path_prefix + (args.key?(:data) && args[:data].key?(:uri) ? asset.data_uri : path)
format(Jekyll::Assets::Liquid::Tag::Tags[@tag], data, args.to_html)
end
end
end
end
Jekyll::PDF::AssetsTag::AcceptableTags.each do |tag|
Liquid::Template.register_tag tag, Jekyll::PDF::AssetsTag
end
end

View File

@ -5,6 +5,7 @@ module Jekyll
module PDF
class Partial
extend Forwardable
include Helper
attr_accessor :doc
attr_accessor :partial
@ -76,6 +77,7 @@ module Jekyll
tempfile = File.absolute_path(File.join(dir, id))
unless File.exist?(tempfile)
FileUtils.mkdir_p(File.dirname(tempfile)) unless File.exist?(File.dirname(tempfile))
fix_relative_paths
File.open(tempfile, 'w') {|f| f.write(to_s) }
end
@output = tempfile