You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Now that we have keywords, #888, I think it would be useful to generate a page that maps keywords to the associated pages. Something as simple as:
# Keywords## Computation Expressions- Tutorial 1
- How To Guide 4
- Explanation Guide 2
## Tasks- Tutorial 1
- How To Guide 2
## ValueTasks- Tutorial 1
- Tutorial 2
- How to Guide 1
- Explanation Guide 1
Additionally be useful to list those keywords on the pages be clickable and take you to that keyword page at the appropriate keyword slug and selector.
This is a nice follow-on to the keywords front-matter feature. Here's a quick technical overview of how it could be implemented:
Current state: Keywords declared in a page's front matter (keywords: foo, bar) are currently processed in Formatting.fs and written as (meta name="keywords" content="...") tags only — they aren't stored anywhere for cross-page aggregation.
What the feature would need:
Collect keywords during the build phase: BuildCommand.fs processes each doc file. After processing, it would need to accumulate a (keyword, pageTitle, pageUrl) list.
Generate the glossary page: After all pages are processed, iterate the collected map keyword → [(title, url)] and write docs/output/keywords.html (or a similar path) using the standard template system.
Optionally: add a {{fsdocs-keywords-list}} substitution key (like {{fsdocs-list-of-documents}}) so the template can render a keywords cloud/nav element on every page.
The main challenge is threading the per-page keyword data through the build pipeline — BuildCommand.fs runs each document somewhat independently. A ref-based accumulator or a two-pass approach (collect all, then emit the glossary page at the end) would work.
This is a self-contained enhancement and would be a good contribution — the scope is bounded to BuildCommand.fs + a bit of Formatting.fs/Templating.fs.
Activity
github-actions commentedon Feb 23, 2026
🤖 This is an automated response from Repo Assist.
This is a nice follow-on to the keywords front-matter feature. Here's a quick technical overview of how it could be implemented:
Current state: Keywords declared in a page's front matter (
keywords: foo, bar) are currently processed inFormatting.fsand written as(meta name="keywords" content="...")tags only — they aren't stored anywhere for cross-page aggregation.What the feature would need:
BuildCommand.fsprocesses each doc file. After processing, it would need to accumulate a(keyword, pageTitle, pageUrl)list.keyword → [(title, url)]and writedocs/output/keywords.html(or a similar path) using the standard template system.{{fsdocs-keywords-list}}substitution key (like{{fsdocs-list-of-documents}}) so the template can render a keywords cloud/nav element on every page.The main challenge is threading the per-page keyword data through the build pipeline —
BuildCommand.fsruns each document somewhat independently. Aref-based accumulator or a two-pass approach (collect all, then emit the glossary page at the end) would work.This is a self-contained enhancement and would be a good contribution — the scope is bounded to
BuildCommand.fs+ a bit ofFormatting.fs/Templating.fs.