Nonsense Parser Microframework

    grunt-absurd

    0.1.0 • Public • Published

    grunt-absurd

    Grunt plugin for AbsurdJS (https://github.com/krasimir/absurd)

    Getting Started

    This plugin requires Grunt ~0.4.1

    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-absurd

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

    grunt.loadNpmTasks('grunt-absurd');

    The "absurd" task

    Overview

    In your project's Gruntfile, add a section named absurd to the data object passed into grunt.initConfig().

    grunt.initConfig({
      absurd: {
        task: {
          src: 'path to your .js file',
          dest: 'path to your .css file',
          options: {
            minify: true,
          }
        }
      },
    })

    Options

    require

    Type: Array Default: []

    A list of files loaded before process the src files.

    extCSS

    Type: String Default: '.css'

    The css file extension used in the output of morph: "component"

    extHTML

    Type: String Default: '.html'

    The html file extension used in the output of morph: "component"

    Other Absurd Options

    morph

    Type: null | 'html' | 'component' Default: null

    combineSelectors

    Type: Boolean Default: true

    minify

    Type: Boolean Default: false

    keepCamelCase

    Type: Boolean Default: false

    Usage example

    ...
      grunt.initConfig({
        testSrc: 'tests/data',
        testResult: 'tests/results',
     
        absurd: {
          buildCSS: {
            options: {
              require: ['<%= testSrc %>/**/*.plugin.js'],
              minify: false,
              combineSelectors: false,
              keepCamelCase: true
            },
            expand: true,
            cwd: '<%= testSrc %>',
            src: ['**/*.css.js'],
            dest: '<%= testResult %>',
            ext: '.absurd.css'
          },
          compileCSS: {
            options: {
              require: ['<%= testSrc %>/**/*.plugin.js'],
              minify: false
            },
            src: ['<%= testSrc %>/**/*.css.js'],
            dest: '<%= testResult %>/compiledCSS.css',
          },
          buildHTML: {
            options: {
              minify: false,
              morph: 'html'
            },
            expand: true,
            cwd: '<%= testSrc %>/',
            src: ['**/*.html.js'],
            dest: '<%= testResult %>',
            ext: '.absurd.html'
          },
          compileHTML: {
            options: {
              minify: true,
              morph: 'html'
            },
            src: ['<%= testSrc %>/**/*.html.js'],
            dest: '<%= testResult %>/compiledHTML.html',
          },
          buildComponent: {
            options: {
              require: ['<%= testSrc %>/**/*.plugin.js'],
              minify: false,
              morph: 'component'
            },
            expand: true,
            cwd: '<%= testSrc %>/',
            src: ['**/*.component.js'],
            dest: '<%= testResult %>',
            ext: '.absurd'
          },
          compileComponent: {
            options: {
              require: ['<%= testSrc %>/**/*.plugin.js'],
              minify: true,
              morph: 'component'
            },
            src: ['<%= testSrc %>/**/*.component.js'],
            dest: '<%= testResult %>/compileComponent.absurd'
          }
        },
    ...

    Use dynamic_mappings to create separate output files. use static_mappings to create single output file.

    Install

    npm i grunt-absurd

    DownloadsWeekly Downloads

    6

    Version

    0.1.0

    License

    none

    Last publish

    Collaborators

    • krasimir