summaryrefslogtreecommitdiff
path: root/assets/js/search.js
diff options
context:
space:
mode:
Diffstat (limited to 'assets/js/search.js')
-rw-r--r--assets/js/search.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/assets/js/search.js b/assets/js/search.js
new file mode 100644
index 0000000..8784541
--- /dev/null
+++ b/assets/js/search.js
@@ -0,0 +1,30 @@
+---
+---
+
+// data
+var pages = [
+{% for post in site.posts %}
+ {
+ "id": "{{ post.url | slufigy }}",
+ "title": {{ post.title | jsonify }},
+ "content": {{ post.content | strip_html | jsonify }},
+ "url": "{{ post.url | xml_escape }}"
+ }
+ {% unless forloop.last %},{% endunless %}
+{% endfor %}
+];
+
+// index
+var idx = lunr(function () {
+ this.ref('url');
+ this.field('title');
+ this.field('content');
+ pages.forEach(function (doc) {
+ this.add(doc);
+ }, this);
+});
+
+
+function do_search(queryterm) {
+ return idx.search(queryterm);
+}