/**
* Copyright (c) 2011, Yahoo! Inc. All rights reserved.
* Code licensed under the BSD License:
* https://github.com/yui/yuidoc/blob/master/LICENSE
*/
'use strict';
YUI.add('help', function (Y) {
/**
* Shows the help text
* @module yuidoc
* @class Help
*/
/**
* The help text to display
* @private
* @property help
* @type Array
*/
var help = [
'',
'YUI Doc generates API documentation from a modified JavaDoc syntax.',
'',
'Current version ({VERSION})',
'',
'Usage: yuidoc <options> <input path>',
'',
'Common Options:',
' -c, --config, --configfile <filename> A JSON config file to provide configuration data.',
' You can also create a yuidoc.json file and place it',
' anywhere under your source tree and YUI Doc will find it',
' and use it.',
' -e, --extension <comma sep list of file extensions> The list of file extensions to parse ',
' for api documentation. (defaults to .js)',
' -x, --exclude <comma sep list of directories> Directories to exclude from parsing ',
' (defaults to \'.DS_Store,.svn,CVS,.git,build_rollup_tmp,build_tmp\')',
' -v, --version Show the current YUIDoc version',
' --project-version Set the doc version for the template',
' -N, --no-color Turn off terminal colors (for automation)',
' -C, --no-code Turn off code generation (don\'t include source files in output)',
' -n, --norecurse Do not recurse directories (default is to recurse)',
' --no-sort Do not alphabetical sorting of attributes, events, methods, and properties',
' -S, --selleck Look for Selleck component data and attach to API meta data',
' -V, --view Dump the Handlebars.js view data instead of writing template files',
' -p, --parse-only Only parse the API docs and create the JSON data, do not render templates',
' -o, --outdir <directory path> Path to put the generated files (defaults to ./out)',
' -t, --themedir <directory path> Path to a custom theme directory containing Handlebars templates',
' -H, --helpers <comma separated list of paths to files> Require these file and add Handlebars helpers. See docs for more information',
' --charset CHARSET Use this as the default charset for all file operations. Defaults to \'utf8\'',
' -h, --help Show this help',
' -q, --quiet Supress logging output',
' -T, --theme <simple|default> Choose one of the built in themes (default is default)',
' --syntaxtype <js|coffee> Choose comment syntax type (default is js)',
' --server <port> Fire up the YUIDoc server for faster API doc developement. Pass optional port to listen on. (default is 3000)',
' --lint Lint your docs, will print parser warnings and exit code 1 if there are any',
'',
' <input path> Supply a list of paths (shell globbing is handy here)',
''
].join('\n');
/**
* Render the help message as a string
* @method renderHelp
* @return {String} The help screen to display
*/
Y.renderHelp = function () {
return Y.Lang.sub(help, {
VERSION: Y.packageInfo.version
});
};
/**
* Display the help message, write it to the screen and exit
* @method showHelp
*/
Y.showHelp = function () {
console.error(Y.renderHelp());
process.exit(0); //Shouldn't exit one on help
};
});