/** * Created by Tivie on 13-07-2015. */ function getDefaultOpts (simple) { 'use strict'; var defaultOptions = { omitExtraWLInCodeBlocks: { defaultValue: false, describe: 'Omit the default extra whiteline added to code blocks', type: 'boolean' }, noHeaderId: { defaultValue: false, describe: 'Turn on/off generated header id', type: 'boolean' }, prefixHeaderId: { defaultValue: false, describe: 'Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to true will add a generic \'section-\' prefix', type: 'string' }, rawPrefixHeaderId: { defaultValue: false, describe: 'Setting this option to true will prevent showdown from modifying the prefix. This might result in malformed IDs (if, for instance, the " char is used in the prefix)', type: 'boolean' }, ghCompatibleHeaderId: { defaultValue: false, describe: 'Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)', type: 'boolean' }, rawHeaderId: { defaultValue: false, describe: 'Remove only spaces, \' and " from generated header ids (including prefixes), replacing them with dashes (-). WARNING: This might result in malformed ids', type: 'boolean' }, headerLevelStart: { defaultValue: false, describe: 'The header blocks level start', type: 'integer' }, parseImgDimensions: { defaultValue: false, describe: 'Turn on/off image dimension parsing', type: 'boolean' }, simplifiedAutoLink: { defaultValue: false, describe: 'Turn on/off GFM autolink style', type: 'boolean' }, literalMidWordUnderscores: { defaultValue: false, describe: 'Parse midword underscores as literal underscores', type: 'boolean' }, literalMidWordAsterisks: { defaultValue: false, describe: 'Parse midword asterisks as literal asterisks', type: 'boolean' }, strikethrough: { defaultValue: false, describe: 'Turn on/off strikethrough support', type: 'boolean' }, tables: { defaultValue: false, describe: 'Turn on/off tables support', type: 'boolean' }, tablesHeaderId: { defaultValue: false, describe: 'Add an id to table headers', type: 'boolean' }, ghCodeBlocks: { defaultValue: true, describe: 'Turn on/off GFM fenced code blocks support', type: 'boolean' }, tasklists: { defaultValue: false, describe: 'Turn on/off GFM tasklist support', type: 'boolean' }, smoothLivePreview: { defaultValue: false, describe: 'Prevents weird effects in live previews due to incomplete input', type: 'boolean' }, smartIndentationFix: { defaultValue: false, describe: 'Tries to smartly fix indentation in es6 strings', type: 'boolean' }, disableForced4SpacesIndentedSublists: { defaultValue: false, describe: 'Disables the requirement of indenting nested sublists by 4 spaces', type: 'boolean' }, simpleLineBreaks: { defaultValue: false, describe: 'Parses simple line breaks as
(GFM Style)', type: 'boolean' }, requireSpaceBeforeHeadingText: { defaultValue: false, describe: 'Makes adding a space between `#` and the header text mandatory (GFM Style)', type: 'boolean' }, ghMentions: { defaultValue: false, describe: 'Enables github @mentions', type: 'boolean' }, ghMentionsLink: { defaultValue: 'https://github.com/{u}', describe: 'Changes the link generated by @mentions. Only applies if ghMentions option is enabled.', type: 'string' }, encodeEmails: { defaultValue: true, describe: 'Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities', type: 'boolean' }, openLinksInNewWindow: { defaultValue: false, describe: 'Open all links in new windows', type: 'boolean' }, backslashEscapesHTMLTags: { defaultValue: false, describe: 'Support for HTML Tag escaping. ex: \
foo\
', type: 'boolean' }, emoji: { defaultValue: false, describe: 'Enable emoji support. Ex: `this is a :smile: emoji`', type: 'boolean' }, underline: { defaultValue: false, describe: 'Enable support for underline. Syntax is double or triple underscores: `__underline word__`. With this option enabled, underscores no longer parses into `` and ``', type: 'boolean' }, ellipsis: { defaultValue: true, describe: 'Replaces three dots with the ellipsis unicode character', type: 'boolean' }, completeHTMLDocument: { defaultValue: false, describe: 'Outputs a complete html document, including ``, `` and `` tags', type: 'boolean' }, metadata: { defaultValue: false, describe: 'Enable support for document metadata (defined at the top of the document between `«««` and `»»»` or between `---` and `---`).', type: 'boolean' }, splitAdjacentBlockquotes: { defaultValue: false, describe: 'Split adjacent blockquote blocks', type: 'boolean' }, moreStyling: { defaultValue: false, describe: 'Adds some useful styling css classes in the generated html', type: 'boolean' }, relativePathBaseUrl: { defaultValue: false, describe: 'Prepends a base URL to relative paths', type: 'string' }, }; if (simple === false) { return JSON.parse(JSON.stringify(defaultOptions)); } var ret = {}; for (var opt in defaultOptions) { if (defaultOptions.hasOwnProperty(opt)) { ret[opt] = defaultOptions[opt].defaultValue; } } return ret; } function allOptionsOn () { 'use strict'; var options = getDefaultOpts(true), ret = {}; for (var opt in options) { if (options.hasOwnProperty(opt)) { ret[opt] = true; } } return ret; }