Neverending Perpetual Motion

    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

    Install

    npm i grunt-inliner

    DownloadsWeekly Downloads

    7

    Version

    0.4.0

    License

    none

    Last publish

    Collaborators

    • rizzenvrinn