grunt-fixmyjs

Automatically fix JavaScript lint errors.

grunt-fixmyjs

Automatically fix silly lint errors.

Please go to fixmyjs to create issues or ask questions related to that project. This is just a grunt plugin for running fixmyjs.

If you haven't used grunt before, be sure to check out the Getting Started guide.

From the same directory as your project's Gruntfile and package.json, install this plugin with the following command:

npm install grunt-fixmyjs --save-dev

Once that's done, add this line to your project's Gruntfile:

grunt.loadNpmTasks('grunt-fixmyjs');

If the plugin has been installed correctly, running grunt --help at the command line should list the newly-installed plugin's task or tasks. In addition, the plugin should be listed in package.json as a devDependency, which ensures that it will be installed whenever the npm install command is run.

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

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

Type: Object Default value: .jshintrc

Load your own config file.

Type: Boolean Default value: False

Similar to dry-run

Type: Boolean Default value: False

Use legacy fixmyjs

Type: String Default value: spaces Options: tabs|spaces

Your indentation preference

Type: Boolean Default value: False

Output a patch file to stdout

Type: Boolean Default value: False

Performs a dry-run and shows you a diff

Type: Boolean Default value: False

A useless option.

  • asi Missing semicolons.
  • camelcase|snakecase Enforces camelCase and snake_case convention.
  • curly Adds curly braces to statements.
  • debugger Removes debugger statements
  • plusplus Converts plusplus and minusminus.
  • quotmark Enforces single and double quote style.
  • Adds parenthesis when invoking a constructor
  • Adds the radix parameter to parseInt
  • Convert to use array literal and object literal
  • Dot notation conversion
  • Extra trailing commas
  • Leading and trailing zeroes on decimals.
  • Missing whitespaces.
  • Mixed spaces/tabs
  • Proper indentation
  • Removes deletion of variables
  • Removes when assigning to variables
  • Removes unnecessary semicolons
  • Uses isNaN function rather than comparing to NaN
grunt.initConfig({
  fixmyjs: {
    options: {
      config: '.jshintrc',
      indentpref: 'spaces'
    },
    test: {
      files: [
        {expand: true, cwd: 'test/fixtures', src: ['**/*.js'], dest: 'test/actual/', ext: '.js'}
      ]
    }
  }
});

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.

  • 2013-08-17   v0.1.0   First commit.