Skip to content

frontendfriends/grunt-combine-mq

Repository files navigation

grunt-combine-mq

NPM version

Combine matching media queries into one media query definition. Useful for CSS generated by preprocessors using nested media queries.

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-combine-mq --save-dev

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

grunt.loadNpmTasks('grunt-combine-mq');

The 'combine_mq' task

Overview

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

grunt.initConfig({
  combine_mq: {
    options: {
      // Task-specific options go here.
    },
    your_target: {
      // Target-specific file lists and/or options go here.
    }
  }
});

Usage Examples

Default Options

In this example, the default options are used to do combine media queries in all .css files in the src directory and outputs them to the dist directory.

grunt.initConfig({
  combine_mq: {
    default_options: {
      expand: true,
      cwd: 'src',
      src: '*.css',
      dest: 'dist/'
    }
  }
});

New filename

In this example, the custom options are used to do combine media queries in the test.css files in the src directory and outputs to the dist directory with a new filename - new_filename.css.

grunt.initConfig({
  combine_mq: {
    new_filename: {
    	options: {
				beautify: false
    	},
      src: 'src/test.css',
      dest: 'dist/new_filename.css'
    }
  }
});

Contributing

Build Status

To contribute check the GitHub issues then work away!

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.

Release History

  • 11-04-15 - v0.9.0 - Logs out original and processed file sizes
  • 07-04-15 - v0.8.0 - Updates to Node combine-mq v0.8.0. See releases for more info.
  • 22-12-14 - v0.7.0 - Updates to latest node package, adds tasks and rewrites tests for it
  • 21-12-14 - v0.6.0 - Updates to Node combine-mq v0.6.0. See releases for more info.
  • 21-12-14 - v0.5.0 - Updates to Node combine-mq v0.5.0. See releases for more info.
  • 27-09-14 - v0.2.0 - Adds tests.
  • 26-09-14 - v0.1.0 - Initial release.

See releases for more info.

License

MIT License