/*! * nodeclub - common/render_helpers.js * Copyright(c) 2013 fengmk2 * MIT Licensed */ "use strict"; /** * Module dependencies. */ var marked = require('marked'); var utils = require('./util'); var _ = require('lodash'); var config = require('../config'); var path = require('path'); // Set default options var renderer = new marked.Renderer(); renderer.code = function (code, lang) { var language = lang && (' language-' + lang) || ''; return '
'
    + '' + code.replace(//g, '>') + ''
    + '
'; }; marked.setOptions({ renderer: renderer, gfm: true, tables: true, breaks: true, pedantic: false, sanitize: false, smartLists: true }); exports.markdown = function (text) { return '
' + utils.xss(marked(text || '')) + '
'; }; exports.escapeSignature = function (signature) { return signature.split('\n').map(function (p) { return _.escape(p); }).join('
'); }; exports.staticFile = function (filePath) { return config.site_static_host + filePath; };