diff options
| author | Miroslav Kratochvil <miroslav.kratochvil@uni.lu> | 2023-06-22 11:43:39 +0200 |
|---|---|---|
| committer | Miroslav Kratochvil <miroslav.kratochvil@uni.lu> | 2023-06-22 11:43:39 +0200 |
| commit | 2ea84315db882c3341ae25f0fe2591a2de109d49 (patch) | |
| tree | f1acf23252898ff53fede0d38d71a4f653763e33 /make-search-index.js | |
| parent | 73d1920b6296bf73fbef87c9e8460cd5d2c2071e (diff) | |
| parent | a2dd9384b4e0eb67346848bdb90a35b039640669 (diff) | |
| download | reploy-2ea84315db882c3341ae25f0fe2591a2de109d49.tar.gz reploy-2ea84315db882c3341ae25f0fe2591a2de109d49.tar.bz2 | |
Merge branch 'mk-modification-timestamps' into 'master'
add a script for sourcing the timestamps from gits
Closes #2
See merge request R3-core/websites-dev/reploy!3
Diffstat (limited to 'make-search-index.js')
| -rw-r--r-- | make-search-index.js | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/make-search-index.js b/make-search-index.js deleted file mode 100644 index 8d9f4cb..0000000 --- a/make-search-index.js +++ /dev/null @@ -1,39 +0,0 @@ - -/* - * make-search-index.js - * - * This converts a "search data" file produced by the haskell site builder into - * a lunr.js index and saves it in JSON. Metadata for rendering search output - * (currently titles and tags) are stored separately in an extra file. - * - * Installing dependencies: - * yarnpkg add lunr - * - * Usage: - * site ....some args.... --search-data-output tmp/search-raw.json - * node make-search-index.js tmp/search-raw.json _site/search-index.json _site/search-metadata.json - */ - -lunr = require("lunr") -fs = require("fs") - -if(process.argv.length !== 5) { - console.error('Needs exactly 3 arguments (input json, output index).'); - process.exit(1); -} - -documents = JSON.parse(fs.readFileSync(process.argv[2], {encoding: 'utf8'})) - -var idx = lunr(function () { - this.ref('link') - this.field('title', {boost: 10}) - this.field('text') - documents.forEach(function (doc) { - this.add(doc) - }, this) -}) - -fs.writeFileSync(process.argv[3], JSON.stringify(idx), {encoding: 'utf8'}) -fs.writeFileSync(process.argv[4], JSON.stringify( - Object.fromEntries(documents.map(x => [x.link, {"title": x.title, "tags": x.tags}])) - ), {encoding: 'utf8'}) |
