abemedia / jekyll-pdf Goto Github PK
View Code? Open in Web Editor NEWCreate PDFs from Jekyll pages & documents.
Home Page: http://abemedia.co.uk/jekyll-pdf/
License: GNU General Public License v3.0
Create PDFs from Jekyll pages & documents.
Home Page: http://abemedia.co.uk/jekyll-pdf/
License: GNU General Public License v3.0
When running bundle
with ruby 2.6.1
and no other non jekyll starter gems installed.
Fetching jekyll-pdf 0.1.7
Downloading jekyll-pdf-0.1.7 revealed dependencies not in the API or the lockfile (digest (~> 0)).
Either installing with `--full-index` or running `bundle update jekyll-pdf` should fix the problem.
I get this error executing bundle exec jekyll build
.
/var/lib/gems/2.3.0/gems/sass-3.5.5/lib/sass/engine.rb:2:in `require': undefined class/module Digest::Base (ArgumentError)
from /var/lib/gems/2.3.0/gems/sass-3.5.5/lib/sass/engine.rb:2:in `<top (required)>'
from /var/lib/gems/2.3.0/gems/sass-3.5.5/lib/sass.rb:99:in `require'
from /var/lib/gems/2.3.0/gems/sass-3.5.5/lib/sass.rb:99:in `<top (required)>'
from /var/lib/gems/2.3.0/gems/jekyll-sass-converter-1.5.1/lib/jekyll/converters/scss.rb:3:in `require'
from /var/lib/gems/2.3.0/gems/jekyll-sass-converter-1.5.1/lib/jekyll/converters/scss.rb:3:in `<top (required)>'
from /var/lib/gems/2.3.0/gems/jekyll-sass-converter-1.5.1/lib/jekyll-sass-converter.rb:4:in `require'
from /var/lib/gems/2.3.0/gems/jekyll-sass-converter-1.5.1/lib/jekyll-sass-converter.rb:4:in `<top (required)>'
from /var/lib/gems/2.3.0/gems/jekyll-3.7.0/lib/jekyll.rb:198:in `require'
from /var/lib/gems/2.3.0/gems/jekyll-3.7.0/lib/jekyll.rb:198:in `<top (required)>'
from /var/lib/gems/2.3.0/gems/jekyll-3.7.0/exe/jekyll:8:in `require'
from /var/lib/gems/2.3.0/gems/jekyll-3.7.0/exe/jekyll:8:in `<top (required)>'
from /usr/local/bin/jekyll:23:in `load'
from /usr/local/bin/jekyll:23:in `<main>'
part of my Gemfile.lock:
GEM
remote: https://rubygems.org/
specs:
addressable (2.5.2)
public_suffix (>= 2.0.2, < 4.0)
bibtex-ruby (4.4.5)
latex-decode (~> 0.0)
citeproc (1.0.8)
namae (~> 1.0)
citeproc-ruby (1.1.8)
citeproc (>= 1.0.4, < 2.0)
csl (~> 1.4)
colorator (1.1.0)
concurrent-ruby (1.0.5)
csl (1.5.0)
namae (~> 1.0)
csl-styles (1.0.1.8)
csl (~> 1.0)
digest (0.0.1)
em-websocket (0.5.1)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
eventmachine (1.2.5)
ffi (1.9.18)
forwardable-extended (2.6.0)
http_parser.rb (0.6.0)
i18n (0.9.3)
concurrent-ruby (~> 1.0)
jekyll (3.7.0)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 0.7)
jekyll-sass-converter (~> 1.0)
jekyll-watch (~> 2.0)
kramdown (~> 1.14)
liquid (~> 4.0)
mercenary (~> 0.3.3)
pathutil (~> 0.9)
rouge (>= 1.7, < 4)
safe_yaml (~> 1.0)
jekyll-feed (0.9.2)
jekyll (~> 3.3)
jekyll-pdf (0.1.7)
digest (~> 0)
jekyll (~> 3.1, >= 2.0)
pdfkit (~> 0.8)
wkhtmltopdf-installer (~> 0.12)
jekyll-sass-converter (1.5.1)
sass (~> 3.4)
jekyll-scholar (5.11.0)
bibtex-ruby (~> 4.0, >= 4.0.13)
citeproc-ruby (~> 1.0)
csl-styles (~> 1.0)
jekyll (~> 3.0)
jekyll-seo-tag (2.4.0)
jekyll (~> 3.3)
jekyll-watch (2.0.0)
listen (~> 3.0)
Is there a way to create a single PDF out of all pages ?
I'm getting the following output, when trying to build my Jekyll site using jekyll-pdf:
yzjm@yzsputnik:/yz/mxdocs$ jekyll build -t
Configuration file: /yz/mxdocs/_config.yml
Source: /yz/mxdocs
Destination: /yz/mxdocs/_site
Incremental build: disabled. Enable with --incremental
Generating...
/home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf/document.rb:46:in `getConfig': undefined method `data' for nil:NilClass (NoMethodError)
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf/document.rb:25:in `initialize'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf/generator.rb:11:in `new'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf/generator.rb:11:in `block (2 levels) in generate'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf/generator.rb:10:in `each'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf/generator.rb:10:in `block in generate'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf/generator.rb:9:in `each'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf/generator.rb:9:in `generate'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-3.3.1/lib/jekyll/site.rb:174:in `block in generate'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-3.3.1/lib/jekyll/site.rb:172:in `each'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-3.3.1/lib/jekyll/site.rb:172:in `generate'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-3.3.1/lib/jekyll/site.rb:68:in `process'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-3.3.1/lib/jekyll/command.rb:26:in `process_site'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-3.3.1/lib/jekyll/commands/build.rb:63:in `build'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-3.3.1/lib/jekyll/commands/build.rb:34:in `process'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-3.3.1/lib/jekyll/commands/build.rb:16:in `block (2 levels) in init_with_program'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `block in execute'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `each'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `execute'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/mercenary-0.3.6/lib/mercenary/program.rb:42:in `go'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/mercenary-0.3.6/lib/mercenary.rb:19:in `program'
from /home/yzjm/.rvm/gems/ruby-2.3.3/gems/jekyll-3.3.1/exe/jekyll:13:in `<top (required)>'
from /home/yzjm/.rvm/gems/ruby-2.3.3/bin/jekyll:22:in `load'
from /home/yzjm/.rvm/gems/ruby-2.3.3/bin/jekyll:22:in `<main>'
from /home/yzjm/.rvm/gems/ruby-2.3.3/bin/ruby_executable_hooks:15:in `eval'
from /home/yzjm/.rvm/gems/ruby-2.3.3/bin/ruby_executable_hooks:15:in `<main>'
Has anyone any idea what might be causing this?
There seems to be a fair number of open requests (14) and a fair number of pull requests (5) to this gem. Because of this, might I suggest that other people be granted access to this project to help make sure that this project is maintained and kept up to date?
The following line in generator.rb causes an infinite loop since it is appending an item to the array it is iterating on that meets the condition:
site.pages << Document.new(site, site.source, item) if item.data['pdf']
I found that prepending the item instead seemed to have the desired effect.
Accessing assets using file://absolute_url runs before these assets exist. Create a post_write hook in PDF::Document.write to generate PDF after sprockets has completed.
This plugin is limited to Jekyll version 2.0 and 3.1 jekyll (>= 2.0, ~> 3.1)
what about version 4.0.0 jekyll (~> 4.0.0)
. Is there a way to use it with Jekyll v4?
I got an Error if i try bulid the site with Jekyll 3.3.0
/Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf/liquid/tags/jekyll-assets.rb:1:in `<top (required)>': undefined method `try_require' for main:Object (NoMethodError)
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf.rb:1:in `require'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf.rb:1:in `block in <top (required)>'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf.rb:1:in `each'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-pdf-0.1.6/lib/jekyll/pdf.rb:1:in `<top (required)>'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-pdf-0.1.6/lib/jekyll-pdf.rb:1:in `require'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-pdf-0.1.6/lib/jekyll-pdf.rb:1:in `<top (required)>'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/external.rb:43:in `require'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/external.rb:43:in `block in require_with_graceful_fail'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/external.rb:40:in `each'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/external.rb:40:in `require_with_graceful_fail'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/plugin_manager.rb:27:in `require_gems'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/plugin_manager.rb:19:in `conscientious_require'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/site.rb:111:in `setup'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/site.rb:33:in `initialize'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/commands/doctor.rb:21:in `new'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/commands/doctor.rb:21:in `process'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/lib/jekyll/commands/doctor.rb:15:in `block (2 levels) in init_with_program'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `block in execute'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `each'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `execute'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/mercenary-0.3.6/lib/mercenary/program.rb:42:in `go'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/mercenary-0.3.6/lib/mercenary.rb:19:in `program'
from /Users/doc/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/jekyll-3.3.0/exe/jekyll:13:in `<top (required)>'
from /Users/doc/.rbenv/versions/2.3.1/bin/jekyll:23:in `load'
from /Users/doc/.rbenv/versions/2.3.1/bin/jekyll:23:in `<main>'
An idea what caused this?
RubyGem.org : "The gem digest is no longer accessible, as the name was in the reserved namespace we've locked off -- it was only in the search results by accident, and we no longer are able to provide access to it via rubygems.org. I apologize for any disruption this has caused you!"
As this (the main repo) was abandoned in 2017, I decided to open a new organization in order to be able to continue. the new repo is here:
https://github.com/jekyll-pdf/jekyll-pdf
I forked from the fork that seemed most alive (as of 28. June 2019),
and I invite(d) a few contributors that had at some point committed to the project,
even if mostly just in their own forks.
The configuration is explained (Gemfile and _config.yml modifications) but not how to actually cause the PDFs to be generated. Does it happen at jekyll build time? Or when the site is served? Where is the file stored? I have made the specified changes, but cannot find any sign that a PDF has been generated. Thank you.
The PDFs generated by the plugin appear to have the raw markdown content embedded in them instead of the generated HTML.
Is there an undocumented setting to get the generated contents instead of the raw markdown within the PDFs?
Hi,
Because of the wkhtmltopdf-installer dependency that doesn't run on windows, this gem cannot be used on Windows
Is there something that I am missing?
gem install jekyll-pdf
ERROR: Could not find a valid gem 'digest' (~> 0) (required by 'jekyll-pdf' (>= 0)) in any repository
ERROR: Possible alternatives: acts_as_digested_on, application_digester, attr_digest, cache_digests, carrierwave-digest, digest, digest-base32, digest-blake2b, digest-blake3, digest-cmac
I've managed to setup the plugin however I am running into a weird issue. The generated pdfs end up in the wrong folder. For example: administrator%20articles
instead of administrator articles
.
Is there a setting to generate the PDFs in the correct directory?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.