From e82ba97a396e4e9d77486b48e6ee8b1dfd1c1b4c Mon Sep 17 00:00:00 2001 From: Jacky Zhao <j.zhao2k19@gmail.com> Date: Mon, 24 Jul 2023 07:07:58 +0000 Subject: [PATCH] actually add processed tag to frontmatter --- content/features/full-text search.md | 28 ++++++++++++++++++++++++++++ 1 files changed, 28 insertions(+), 0 deletions(-) diff --git a/content/features/full-text search.md b/content/features/full-text search.md index e69de29..cb0567f 100644 --- a/content/features/full-text search.md +++ b/content/features/full-text search.md @@ -0,0 +1,28 @@ +--- +title: Full-text Search +tags: + - component +--- + +Full-text search in Quartz is powered by [Flexsearch](https://github.com/nextapps-de/flexsearch). It's fast enough to return search results in under 10ms for Quartzs as large as half a million words. + +It can be opened by either clicking on the search bar or pressing ⌘+K. The top 5 search results are shown on each query. Matching subterms are highlighted and the most relevant 30 words are excerpted. Clicking on a search result will navigate to that page. + +This component is also keyboard accessible: Tab and Shift+Tab will cycle forward and backward through search results and Enter will navigate to the highlighted result (first result by default). + +> [!info] +> Search requires the `ContentIndex` emitter plugin to be present in the [[configuration]]. + +### Indexing Behaviour + +By default, it indexes every page on the site with **Markdown syntax removed**. This means link URLs for instance are not indexed. + +It properly tokenizes Chinese, Korean, and Japenese characters and constructs separate indexes for the title and content, weighing title matches above content matches. + +## Customization + +- Removing search: delete all usages of `Component.Search()` from `quartz.config.ts`. +- Component: `quartz/components/Search.tsx` +- Style: `quartz/components/styles/search.scss` +- Script: `quartz/components/scripts/search.inline.ts` + - You can edit `contextWindowWords` or `numSearchResults` to suit your needs -- Gitblit v1.10.0