Compare commits

...

2 commits
main ... search

Author SHA1 Message Date
n
d2e7a17c7a Add elasticlunr 2021-08-16 16:44:31 +09:00
n
f6062d30cb Add search index 2021-08-16 16:43:43 +09:00
6 changed files with 53 additions and 2 deletions

View file

@ -3,7 +3,7 @@ const syntaxHighlightingPlugin = require("@11ty/eleventy-plugin-syntaxhighlight"
const markdownIt = require('markdown-it');
const markdownItClass = require('@toycode/markdown-it-class');
const markdownItAnchor = require('markdown-it-anchor')
const searchFilter = require("./content/filters/searchFilter");
module.exports = function(eleventyConfig) {
eleventyConfig.addPlugin(navigationPlugin)
@ -12,6 +12,8 @@ module.exports = function(eleventyConfig) {
eleventyConfig.addPassthroughCopy("assets")
eleventyConfig.addPassthroughCopy("fonts")
eleventyConfig.addFilter("search", searchFilter);
eleventyConfig.addShortcode("fas_icon", function(name) { return `<span class="fas fa-${name}"></span>` })
const mapping = {

10
assets/js/elasticlunr.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,19 @@
const elasticlunr = require("elasticlunr");
module.exports = function (collection) {
var index = elasticlunr(function () {
this.setRef("id");
this.addField("title");
this.addField("content");
});
collection.forEach((page) => {
index.addDoc({
id: page.url,
title: page.title,
content: page.content,
});
});
return index.toJSON();
};

6
content/search-index.njk Normal file
View file

@ -0,0 +1,6 @@
---
permalink: /search-index.json
layout: null
---
{{ collections.all | search | dump | safe }}

13
package-lock.json generated
View file

@ -10,6 +10,7 @@
"@11ty/eleventy-navigation": "^0.3.2",
"@11ty/eleventy-plugin-syntaxhighlight": "^3.1.2",
"@toycode/markdown-it-class": "^1.2.4",
"elasticlunr": "^0.9.5",
"markdown-it-anchor": "^8.1.2"
}
},
@ -1073,6 +1074,12 @@
"node": ">=0.10.0"
}
},
"node_modules/elasticlunr": {
"version": "0.9.5",
"resolved": "https://registry.npmjs.org/elasticlunr/-/elasticlunr-0.9.5.tgz",
"integrity": "sha1-ZVQbswnd3Qz5Ty0ciGGyvmUbsNU=",
"dev": true
},
"node_modules/emoji-regex": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
@ -4880,6 +4887,12 @@
"integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==",
"dev": true
},
"elasticlunr": {
"version": "0.9.5",
"resolved": "https://registry.npmjs.org/elasticlunr/-/elasticlunr-0.9.5.tgz",
"integrity": "sha1-ZVQbswnd3Qz5Ty0ciGGyvmUbsNU=",
"dev": true
},
"emoji-regex": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",

View file

@ -13,6 +13,7 @@
"@11ty/eleventy-navigation": "^0.3.2",
"@11ty/eleventy-plugin-syntaxhighlight": "^3.1.2" ,
"@toycode/markdown-it-class": "^1.2.4",
"markdown-it-anchor": "^8.1.2"
"markdown-it-anchor": "^8.1.2",
"elasticlunr": "^0.9.5"
}
}