grunt-todo
Find TODO, FIXME and NOTE inside project files.
Getting Started
This plugin requires Grunt~0.4
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-todo --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-todo');
The "todo" task
Overview
In your project's Gruntfile, add a section namedtodo
to the data object passed into grunt.initConfig()
.grunt.initConfig({
todo: {
options: {
// Task-specific options go here.
},
your_target: {
// Target-specific file lists and/or options go here.
},
},
});
Options
options.marks
Type:Array
Default value:
{
name: "FIX",
pattern: /FIXME/,
color: "red"
},
{
name: "TODO",
pattern: /TODO/,
color: "yellow"
},
{
name: "NOTE",
pattern: /NOTE/,
color: "blue"
}
An Array of objects representing the marks to find inside the files.
pattern
can be a string or a RegExp
.
color
is a color-name string allowed by chalk. If the color is not one of these, grunt-todo will use cyan.options.file
Type:String
(file path)Default value:
false
A file path to log the founded marks, in markdown format.
If
false
is given, the file will not be written.options.githubBoxes
Type:Boolean
Default value:
false
When logging the found marks to a file, add a github flavoured markdown checkbox for each mark.
options.title
Type:String
Default value:
Grunt TODO
When logging the founded marks to file, use this as title of the markdown document.
options.colophon
Type:Boolean
Default value:
false
When logging the found marks to file, use colophon and timestamp as footer of the markdown document.
options.usePackage
Type:Boolean
Default value:
false
When enabled, if you launch your grunt-todo task from a folder containing a
package.json
file (like 99% of use cases), grunt-todo will use some of the package's informations to make the report file a little more informative (use project's name as title, show version and description, links to the homepage…).options.logOutput
Type:Boolean
Default value:
true
You can disable the task to output the marks on the console by setting this to
false
.Usage Examples
Default Options
In this example, the default options are used to shows the TODO, FIXME and NOTE marks founded in the given files.grunt.initConfig({
todo: {
options: {},
src: [
'test/*'
],
},
});
Custom Options
In this example, custom options are used to shows the TODO and BURP marks founded in the given files, and write the results on a file namedreport.md
grunt.initConfig({
todo: {
options: {
marks: [
{
pattern: "BURP",
color: "pink"
},
{
name: "TODO",
pattern: /TODO/,
color: "yellow"
}
],
file: "report.md",
githubBoxes: true,
colophon: true,
usePackage: true
},
src: [
'test/*'
]
}
});
Contributing
In lieu of a formal styleguide, take care to maintain the existing coding style.Lint and test your code using Grunt.
Contributors
Many thanks to them. :)
Release History
- 2015/02/28 : v0.5.0
- 2014/08/07 : v0.4.0
- 2014/07/15 : v0.3.1
- 2014/05/15 : v0.3.0
- 2014/04/28 : v0.2.3
- 2014/04/27 : v0.2.2
- 2014/04/27 : v0.2.1
- 2014/03/14 : v0.2.0
- 2014/01/26 : v0.1.2
- 2014/01/26 : v0.1.1
- 2013/12/29 : v0.1.0