fs = require 'fs' CoffeeScript = require '../../lib/coffeescript' module.exports = -> counter = 0 hljs = require 'highlight.js' hljs.configure classPrefix: '' (file, executable = no, showLoad = yes) -> counter++ cs = fs.readFileSync "documentation/examples/#{file}.coffee", 'utf-8' js = CoffeeScript.compile cs, bare: yes js = js.replace /^\/\/ generated.*?\n/i, '' cshtml = "
#{hljs.highlight('coffeescript', cs).value}
" jshtml = "
#{hljs.highlight('javascript', js).value}
" append = if executable is yes then '' else "alert(#{executable});".replace /"/g, '"' if executable and executable isnt yes cs.replace /(\S)\s*\Z/m, "$1\n\nalert #{executable}" run = if executable is yes then 'run' else "run: #{executable}" name = "example#{counter}" script = "" load = if showLoad then "
load
" else '' button = if executable then """
#{run}
""" else '' "
#{cshtml}#{jshtml}#{script}#{load}#{button}
"