grunt-inliner

0.4.0 • Public • Published

grunt-inliner

A no-nonsense style inliner that will take care of relative paths and won't mess up your documents.

Overview

While there are plenty inliners out there, each seems to have its own set of problems. Turning your documents into XHTML while stripping the doctype, inlining everything including images, or not taking into account that url() in stylesheets can contain data payload or absolute paths. This inliner does none of that — it simply inlines all the referenced stylesheets, including the remote ones if desired, and by default fixes any relative path they may contain.

Getting Started

This plugin requires Grunt ~0.4.5

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-inliner --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-inliner');

Inliner

Run this task with the grunt inliner command.

Options

options.rebase

Type: Boolean Default value: true

Whether paths found in stylesheet should be rebased relative to a document or not.

options.remote

Type: Boolean Default value: false

Should remote stylesheets be inlined?

options.css

Type: Boolean Default value: true

Should stylesheets be inlined?

options.js

Type: Boolean Default value: false

Should scripts in head be inlined?

options.baseDir

Type: String Default value: null

Specify if the base directory differs from the location of the targeted static HTML files or templates.

Usage Examples

grunt.initConfig({
   inliner: {
      options: {
         rebase: false,
         remote: true,
         js: true
      },
      files: [{
         expand: true,
         cwd: 'public',
         src: ['*.html']
      }],
   },
});

Release History

  • 2014-06-05   v0.4.0   Added option to define base directory.
  • 2014-08-15   v0.3.0   Added option to inline scripts.
  • 2014-08-15   v0.2.0   Added option to inline remote stylesheets.
  • 2014-08-14   v0.1.2   Fixed link selector.
  • 2014-08-14   v0.1.1   Skip entity decoding.
  • 2014-08-14   v0.1.0   Inliner released.

Release History

MIT © Adam Havel

Package Sidebar

Install

npm i grunt-inliner

Weekly Downloads

0

Version

0.4.0

License

none

Last publish

Collaborators

  • rizzenvrinn