From 6c6de993df7a381b996c58166b2fbb6927ce80ac Mon Sep 17 00:00:00 2001 From: Stephen Belanger Date: Tue, 6 Oct 2015 21:28:38 -0700 Subject: [PATCH 1/3] Add auto-generated index to knowledge base --- build.js | 24 ++++++++++++++++++++++++ layouts/docs.hbs | 3 +++ locale/en/site.json | 4 ++++ 3 files changed, 31 insertions(+) diff --git a/build.js b/build.js index c298e4c6cd572..4ef4846c0581a 100755 --- a/build.js +++ b/build.js @@ -103,6 +103,7 @@ function buildlocale (source, locale) { refer: false } })) + .use(knowledgeBase(locale)) .use(markdown(markedOptions)) .use(prism()) .use(filterStylusPartials()) @@ -160,6 +161,29 @@ function buildlocale (source, locale) { }) } +function knowledgeBase (locale) { + return function (files, metalsmith, done) { + var path = 'knowledge/index.md' + var index = files[path] + if (index) { + var lines = index.contents.toString().split('\n') + + Object.keys(files).forEach(function (file) { + if (file === path) return + if (/^knowledge\//.test(file)) { + var data = files[file] + var link = file.replace(/^knowledge\/(.*)\.md$/, '$1') + lines.push(`- [${data.title}](${link})`) + } + }) + + index.contents = new Buffer(lines.join('\n')) + } + + done() + } +} + function copystatic () { console.time('[metalsmith] build/static finished') fs.mkdir(path.join(__dirname, 'build'), function () { diff --git a/layouts/docs.hbs b/layouts/docs.hbs index b8c055ee14ad6..67d34eb567eff 100644 --- a/layouts/docs.hbs +++ b/layouts/docs.hbs @@ -13,6 +13,9 @@ {{site.docs.text}} + + {{site.docs.knowledge.text}} + {{site.docs.es6.text}} diff --git a/locale/en/site.json b/locale/en/site.json index eb8842cf200e5..b252f45365d9a 100644 --- a/locale/en/site.json +++ b/locale/en/site.json @@ -73,6 +73,10 @@ "api": { "link": "/api/", "text": "API" + }, + "knowledge": { + "link": "knowledge", + "text": "Knowledge Base" } }, "foundation": { From 733804a711bd9060025ddc8b985f20a81a657c9f Mon Sep 17 00:00:00 2001 From: Stephen Belanger Date: Wed, 7 Oct 2015 15:27:38 -0700 Subject: [PATCH 2/3] Use knowledge-base-index layout rather than custom metalsmith plugin --- build.js | 28 +++----------------- layouts/knowledge-base-index.hbs | 44 ++++++++++++++++++++++++++++++++ locale/en/knowledge/index.md | 6 +++++ 3 files changed, 54 insertions(+), 24 deletions(-) create mode 100644 layouts/knowledge-base-index.hbs create mode 100644 locale/en/knowledge/index.md diff --git a/build.js b/build.js index 4ef4846c0581a..195903db35b9b 100755 --- a/build.js +++ b/build.js @@ -101,9 +101,12 @@ function buildlocale (source, locale) { sortBy: 'date', reverse: true, refer: false + }, + knowledgeBase: { + pattern: 'knowledge/**/*.md', + refer: false } })) - .use(knowledgeBase(locale)) .use(markdown(markedOptions)) .use(prism()) .use(filterStylusPartials()) @@ -161,29 +164,6 @@ function buildlocale (source, locale) { }) } -function knowledgeBase (locale) { - return function (files, metalsmith, done) { - var path = 'knowledge/index.md' - var index = files[path] - if (index) { - var lines = index.contents.toString().split('\n') - - Object.keys(files).forEach(function (file) { - if (file === path) return - if (/^knowledge\//.test(file)) { - var data = files[file] - var link = file.replace(/^knowledge\/(.*)\.md$/, '$1') - lines.push(`- [${data.title}](${link})`) - } - }) - - index.contents = new Buffer(lines.join('\n')) - } - - done() - } -} - function copystatic () { console.time('[metalsmith] build/static finished') fs.mkdir(path.join(__dirname, 'build'), function () { diff --git a/layouts/knowledge-base-index.hbs b/layouts/knowledge-base-index.hbs new file mode 100644 index 0000000000000..895fd178fb9f1 --- /dev/null +++ b/layouts/knowledge-base-index.hbs @@ -0,0 +1,44 @@ + + +{{> html-head }} + + + {{> header }} + +
+
+ + + +
+ {{{ contents }}} + + {{#each collections.knowledgeBase}} +
  • {{ title }}
  • + {{/each}} +
    + +
    +
    + + {{> footer }} + + diff --git a/locale/en/knowledge/index.md b/locale/en/knowledge/index.md new file mode 100644 index 0000000000000..e6ee74d2e977d --- /dev/null +++ b/locale/en/knowledge/index.md @@ -0,0 +1,6 @@ +--- +title: Knowledge Base +layout: knowledge-base-index.hbs +--- + +# Knowledge Base From 9729af8065ec979781b7b40adeb954a24fb095a4 Mon Sep 17 00:00:00 2001 From: Stephen Belanger Date: Wed, 7 Oct 2015 15:32:39 -0700 Subject: [PATCH 3/3] Move docs sidebar menu to partial --- layouts/docs.hbs | 20 +------------------- layouts/knowledge-base-index.hbs | 20 +------------------- 2 files changed, 2 insertions(+), 38 deletions(-) diff --git a/layouts/docs.hbs b/layouts/docs.hbs index 67d34eb567eff..fba38c572324e 100644 --- a/layouts/docs.hbs +++ b/layouts/docs.hbs @@ -8,25 +8,7 @@
    - + {{> docs-menu }}