Turbolinks for Jekyll
Turbolinks is a Javascript
library for accelerating web navigation by preventing the browser to
reload the full page, thus making it reload Javascript and CSS.
This plugin enables Turbolinks in all generated pages and adds Liquid
tags to insert turbolinks.js
into your template in case you want to
include in your Javascript.
How to use it
Setup
Add jekyll-turbolinks
to your Gemfile
:
group :jekyll_plugins do
gem 'jekyll-turbolinks'
end
And add it to your _config.yml
file:
plugins:
- jekyll-turbolinks
turbolinks:
enabled: true
url: turbolinks.js
You can also control if you want a page to have turbolinks disabled by
adding this to its front matter:
---
turbolinks: false
---
Automatic
That's it! Turbolinks will be loaded and enabled by default.
Keep in mind that if you're not using relative urls you must set the turbolinks
path to an absolute path, like so:
turbolinks:
url: /turbolinks.js
Manual
To add it manually call the turbolinks
Liquid tag to insert the actual
contents of turbolinks.js
into your Javascript file.
---
# The triple dashes are needed for Jekyll to process this file as a
# Liquid template
---
{% turbolinks %}
// ... rest of your Javascript
And call it from your _layouts/default.html
file:
<head>
<script type="text/javascript" src="path/to/file.js"></script>
</head>
License
Copyright (c) 2019 Sutty hi@sutty.nl
jekyll-turbolinks is free software: you can redistribute it and/or
modify it under the terms of the GNU General Public License as published
by the Free Software Foundation, either version 3 of the License, or (at
your option) any later version.
jekyll-turbolinks is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License along
with jekyll-turbolinks. If not, see https://www.gnu.org/licenses/.