summaryrefslogtreecommitdiffstats
path: root/lib/parse/page.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/parse/page.js')
-rw-r--r--lib/parse/page.js15
1 files changed, 5 insertions, 10 deletions
diff --git a/lib/parse/page.js b/lib/parse/page.js
index ae71666..846d339 100644
--- a/lib/parse/page.js
+++ b/lib/parse/page.js
@@ -5,7 +5,7 @@ var hljs = require('highlight.js');
var lex = require('./lex');
var renderer = require('./renderer');
-var codeInclude = require('./code_include');
+var include = require('./include');
var lnormalize = require('../utils/lang').normalize;
@@ -51,7 +51,7 @@ function parsePage(src, options) {
options = options || {};
// Lex if not already lexed
- return (_.isArray(src) ? src : lex(src))
+ return (_.isArray(src) ? src : lex(include(src, options.dir, options.variables)))
.map(function(section) {
// Transform given type
if(section.type === 'exercise') {
@@ -74,20 +74,15 @@ function parsePage(src, options) {
// Main language
var lang = validLangs ? langs[0] : null;
- // codeInclude shortcut
- var ci = function(code) {
- return codeInclude(code, options.dir);
- };
-
return {
id: section.id,
type: section.type,
content: render(nonCodeNodes, options),
lang: lang,
code: {
- base: ci(codeNodes[0].text),
- solution: ci(codeNodes[1].text),
- validation: ci(codeNodes[2].text),
+ base: codeNodes[0].text,
+ solution: codeNodes[1].text,
+ validation: codeNodes[2].text,
// Context is optional
context: codeNodes[3] ? codeNodes[3].text : null,
}