markdown-lsp 0.2.1 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +148 -52
- package/bin/markdown-lsp +1 -1
- package/dist/bridge/richDocGraph.d.ts +11 -0
- package/dist/bridge/richDocGraph.d.ts.map +1 -1
- package/dist/bridge/richDocGraph.js +156 -0
- package/dist/bridge/richDocGraph.js.map +1 -1
- package/dist/cli.d.ts +2 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +265 -0
- package/dist/cli.js.map +1 -0
- package/dist/core/findReferences.d.ts +1 -1
- package/dist/db/schema.d.ts +1 -1
- package/dist/graph.d.ts +4 -0
- package/dist/graph.d.ts.map +1 -0
- package/dist/graph.js +70 -0
- package/dist/graph.js.map +1 -0
- package/dist/lsp.d.ts +2 -0
- package/dist/lsp.d.ts.map +1 -0
- package/dist/lsp.js +343 -0
- package/dist/lsp.js.map +1 -0
- package/package.json +6 -5
package/README.md
CHANGED
|
@@ -6,87 +6,179 @@
|
|
|
6
6
|
[](https://github.com/Docsbook-io/markdown-lsp/blob/main/LICENSE)
|
|
7
7
|
[](https://www.npmjs.com/package/markdown-lsp)
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
CLI and library for querying Markdown documentation graphs. Point it at a folder of `.md` files and get instant full-text search, outline, link analysis, and symbol lookup — all as JSON.
|
|
10
10
|
|
|
11
|
-
**Status:
|
|
11
|
+
**Status: v1.0.0. CLI is the default interface. LSP stdio mode available as a subcommand.**
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
---
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
## Quick Start
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
-
|
|
20
|
-
- `workspace/symbol` — fuzzy subsequence search across all headings (e.g. `oaf` matches `OAuth flow`)
|
|
21
|
-
- `textDocument/definition` — jump from a link to its target document
|
|
22
|
-
- `textDocument/references` — find every page linking to the current document
|
|
23
|
-
- `textDocument/completion` — wiki-link completion `[[...]]`
|
|
24
|
-
- `textDocument/publishDiagnostics` — warnings for unresolved link targets
|
|
25
|
-
- `workspace.executeCommand("markdownLsp/reindex")` — force re-index of the workspace
|
|
26
|
-
- Incremental indexing via content-hash diff; watched-files cleanup
|
|
17
|
+
```bash
|
|
18
|
+
# List all pages
|
|
19
|
+
npx markdown-lsp workspace-outline ./docs
|
|
27
20
|
|
|
28
|
-
|
|
21
|
+
# Full-text search (natural-language, ranked)
|
|
22
|
+
npx markdown-lsp search-text ./docs "getting started"
|
|
29
23
|
|
|
30
|
-
|
|
24
|
+
# Fuzzy heading search
|
|
25
|
+
npx markdown-lsp search-symbols ./docs "auth" --limit 10
|
|
26
|
+
```
|
|
31
27
|
|
|
32
|
-
|
|
33
|
-
references survive synonym variation (`auth` ≡ `authentication` ≡ `OAuth` ≡ `login`).
|
|
28
|
+
---
|
|
34
29
|
|
|
35
|
-
|
|
30
|
+
## Installation
|
|
36
31
|
|
|
37
32
|
```bash
|
|
38
|
-
|
|
39
|
-
|
|
33
|
+
npm install -g markdown-lsp
|
|
34
|
+
# or per-project
|
|
35
|
+
npm install markdown-lsp
|
|
40
36
|
```
|
|
41
37
|
|
|
42
|
-
|
|
43
|
-
pure-structural LSP — no key required.
|
|
38
|
+
Node.js >= 20 required.
|
|
44
39
|
|
|
45
|
-
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Subcommands
|
|
46
43
|
|
|
47
|
-
|
|
48
|
-
- pgvector (Neon serverless) for cosine search on canonical-term embeddings (only when AI layer is enabled)
|
|
49
|
-
- Drizzle ORM; all tables prefixed `mdlsp_`
|
|
50
|
-
- Vercel AI Gateway (`text-embedding-3-small` for embeddings, `gpt-4o-mini` for extraction) — when AI on
|
|
51
|
-
- An optional MCP HTTP facade (M3) over the same handlers — for AI agents like Claude Code
|
|
44
|
+
All subcommands accept a **`--pretty`** flag for indented JSON output (compact by default).
|
|
52
45
|
|
|
53
|
-
|
|
46
|
+
| Subcommand | Arguments | Description |
|
|
47
|
+
|---|---|---|
|
|
48
|
+
| `workspace-outline` | `<docs-dir> [--prefix p] [--limit n]` | List all pages with metadata |
|
|
49
|
+
| `outline` | `<docs-dir> <page>` | Heading outline of a single page |
|
|
50
|
+
| `search-text` | `<docs-dir> <query> [--mode ranked\|verbatim] [--regex] [--case-sensitive] [--prefix p] [--limit n] [--context n]` | Full-text search |
|
|
51
|
+
| `search-symbols` | `<docs-dir> <query> [--limit n]` | Fuzzy subsequence search across headings |
|
|
52
|
+
| `search-paths` | `<docs-dir> <glob>` | List pages matching a glob pattern |
|
|
53
|
+
| `links-to` | `<docs-dir> <page>` | All pages that link to `<page>` |
|
|
54
|
+
| `links-from` | `<docs-dir> <page>` | All links originating from `<page>` |
|
|
55
|
+
| `resolve-link` | `<docs-dir> <from-page> <link-text>` | Resolve a specific link text from a page |
|
|
56
|
+
| `get-section` | `<docs-dir> <page> <anchor>` | Get a section by anchor slug |
|
|
57
|
+
| `lsp` / `serve` | `[--stdio]` | Start the LSP stdio server |
|
|
58
|
+
|
|
59
|
+
### search-text modes
|
|
60
|
+
|
|
61
|
+
- **ranked** (default) — tokenizes query, drops stop words, ranks by coverage/heading/proximity. Best for natural-language questions.
|
|
62
|
+
- **verbatim** (`--mode verbatim`) — literal substring match. Use `--regex` for regex.
|
|
63
|
+
|
|
64
|
+
### Output format
|
|
65
|
+
|
|
66
|
+
All subcommands print JSON to stdout. Use `--pretty` for human-readable output:
|
|
54
67
|
|
|
55
68
|
```bash
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
69
|
+
markdown-lsp search-text ./docs "authentication" --limit 5 --pretty
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Examples
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# Workspace overview
|
|
78
|
+
markdown-lsp workspace-outline ./docs --limit 20 --pretty
|
|
79
|
+
|
|
80
|
+
# Find pages about authentication
|
|
81
|
+
markdown-lsp search-text ./docs "authentication flow" --pretty
|
|
82
|
+
|
|
83
|
+
# What links to README.md?
|
|
84
|
+
markdown-lsp links-to ./docs README.md
|
|
85
|
+
|
|
86
|
+
# Glob search: all files under api/
|
|
87
|
+
markdown-lsp search-paths ./docs "api/**"
|
|
88
|
+
|
|
89
|
+
# Outline of a specific page
|
|
90
|
+
markdown-lsp outline ./docs quick-start.md --pretty
|
|
91
|
+
|
|
92
|
+
# Find headings containing "auth"
|
|
93
|
+
markdown-lsp search-symbols ./docs "auth" --limit 10
|
|
94
|
+
|
|
95
|
+
# Resolve a link from a page
|
|
96
|
+
markdown-lsp resolve-link ./docs README.md "Getting Started"
|
|
97
|
+
|
|
98
|
+
# Get a specific section by anchor
|
|
99
|
+
markdown-lsp get-section ./docs overview.md quick-links --pretty
|
|
60
100
|
```
|
|
61
101
|
|
|
62
|
-
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## LSP mode (editor integration)
|
|
63
105
|
|
|
64
|
-
|
|
106
|
+
`markdown-lsp` also works as a Language Server Protocol server for editors (VS Code, Zed, Neovim, etc.).
|
|
65
107
|
|
|
66
108
|
```bash
|
|
67
|
-
|
|
109
|
+
# Recommended (v1.0.0+)
|
|
110
|
+
npx markdown-lsp lsp --stdio
|
|
111
|
+
|
|
112
|
+
# Back-compat — old LSP flag style still works so existing editor configs don't break
|
|
113
|
+
npx markdown-lsp --stdio
|
|
68
114
|
```
|
|
69
115
|
|
|
70
|
-
|
|
116
|
+
The LSP server speaks the standard protocol over stdio. It requires a Postgres database for the structural index (see Setup below).
|
|
117
|
+
|
|
118
|
+
### Editor configuration example (VS Code)
|
|
71
119
|
|
|
72
|
-
|
|
120
|
+
In your `settings.json`:
|
|
121
|
+
|
|
122
|
+
```json
|
|
123
|
+
{
|
|
124
|
+
"markdown-lsp.serverPath": "markdown-lsp",
|
|
125
|
+
"markdown-lsp.args": ["lsp", "--stdio"]
|
|
126
|
+
}
|
|
127
|
+
```
|
|
73
128
|
|
|
74
|
-
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
## Use as a library
|
|
75
132
|
|
|
76
133
|
```ts
|
|
77
|
-
import {
|
|
78
|
-
import {
|
|
134
|
+
import { buildGraph, loadDocsAsFiles } from "markdown-lsp/graph"
|
|
135
|
+
import { searchTextRanked, searchSymbols, listPages } from "markdown-lsp/bridge"
|
|
136
|
+
|
|
137
|
+
const graph = buildGraph("./docs")
|
|
138
|
+
const hits = searchTextRanked(graph, "authentication flow")
|
|
139
|
+
const pages = listPages(graph, { limit: 50 })
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Available entry points:
|
|
143
|
+
- `markdown-lsp/bridge` — search functions + `RichDocGraph`, `buildInMemoryGraph`, types
|
|
144
|
+
- `markdown-lsp/graph` — `buildGraph(docsRoot)`, `loadDocsAsFiles(docsRoot)`
|
|
145
|
+
- `markdown-lsp/indexer` — SQLite/Postgres workspace indexer (for LSP use)
|
|
146
|
+
- `markdown-lsp/core` — document symbols and references (for LSP use)
|
|
147
|
+
- `markdown-lsp/parser` — raw Markdown parser
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## LSP Setup (for editor / structural indexer use)
|
|
152
|
+
|
|
153
|
+
The CLI subcommands work **without any database** — they build an in-memory graph on the fly.
|
|
154
|
+
|
|
155
|
+
The LSP server requires Postgres (for the incremental index):
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
pnpm install
|
|
159
|
+
cp .env.example .env.local # fill DATABASE_URL; AI_GATEWAY_API_KEY only if you want the AI layer
|
|
160
|
+
pnpm migrate # runs scripts/apply-migration.ts against DATABASE_URL
|
|
161
|
+
pnpm build
|
|
162
|
+
```
|
|
79
163
|
|
|
80
|
-
|
|
81
|
-
const ws = await ensureWorkspace("./tmp/42")
|
|
82
|
-
await indexWorkspace(ws)
|
|
164
|
+
Optional AI layer (semantic synonym resolution):
|
|
83
165
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
166
|
+
```bash
|
|
167
|
+
export MARKDOWN_LSP_AI_ENABLED=1
|
|
168
|
+
export AI_GATEWAY_API_KEY=... # Vercel AI Gateway
|
|
87
169
|
```
|
|
88
170
|
|
|
89
|
-
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## Architecture
|
|
174
|
+
|
|
175
|
+
- **CLI** — `node:util parseArgs`, zero extra deps, reads `.md` files into an in-memory graph
|
|
176
|
+
- **Graph** — pure TypeScript, no DB needed; `buildGraph(docsRoot)` walks the directory tree
|
|
177
|
+
- **LSP** — `vscode-languageserver/node` over stdio; requires Postgres (Drizzle ORM, `mdlsp_` prefix)
|
|
178
|
+
- **AI layer** (opt-in) — pgvector cosine search on canonical-term embeddings; `text-embedding-3-small` via Vercel AI Gateway
|
|
179
|
+
- **Bridge** — pure in-memory search (searchText, searchTextRanked, searchSymbols, searchPaths, listPages)
|
|
180
|
+
|
|
181
|
+
---
|
|
90
182
|
|
|
91
183
|
## Tests
|
|
92
184
|
|
|
@@ -94,17 +186,21 @@ No AI required.
|
|
|
94
186
|
pnpm test
|
|
95
187
|
```
|
|
96
188
|
|
|
97
|
-
27 tests cover the parser, indexer,
|
|
189
|
+
27 tests cover the parser, indexer, core handlers, and bridge search functions.
|
|
190
|
+
|
|
191
|
+
---
|
|
98
192
|
|
|
99
193
|
## Milestones
|
|
100
194
|
|
|
101
195
|
- **M0 — Scaffold** ✅
|
|
102
196
|
- **M1 — Structural layer** ✅
|
|
103
|
-
- M2 — Semantic extract (opt-in, code present, awaiting live AI Gateway credit)
|
|
104
|
-
- M3 —
|
|
197
|
+
- **M2 — Semantic extract** (opt-in, code present, awaiting live AI Gateway credit)
|
|
198
|
+
- **M3 — CLI-first interface** ✅ (v1.0.0)
|
|
105
199
|
- M4 — User overrides for the glossary (merge / split / rename / add_synonym)
|
|
106
200
|
- M5 — Docsbook integration
|
|
107
201
|
|
|
202
|
+
---
|
|
203
|
+
|
|
108
204
|
## License
|
|
109
205
|
|
|
110
206
|
MIT
|
package/bin/markdown-lsp
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import("../dist/
|
|
2
|
+
import("../dist/cli.js")
|
|
@@ -79,6 +79,17 @@ export interface SearchTextOptions {
|
|
|
79
79
|
pathPrefix?: string;
|
|
80
80
|
}
|
|
81
81
|
export declare function searchText(graph: RichDocGraph, query: string, opts?: SearchTextOptions): SearchHit[];
|
|
82
|
+
export interface RankedSearchHit extends SearchHit {
|
|
83
|
+
matchScore: number;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Tokenized, ranked full-text search across the graph. Unlike `searchText`, this
|
|
87
|
+
* matches on individual query WORDS (after stop-word removal) rather than the
|
|
88
|
+
* literal phrase, then ranks pages by coverage / frequency / heading hits /
|
|
89
|
+
* proximity. Best for natural-language questions from an AI chat. One hit per
|
|
90
|
+
* page (the best window), highest score first.
|
|
91
|
+
*/
|
|
92
|
+
export declare function searchTextRanked(graph: RichDocGraph, query: string, opts?: SearchTextOptions): RankedSearchHit[];
|
|
82
93
|
export interface PageSummary {
|
|
83
94
|
path: string;
|
|
84
95
|
title: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"richDocGraph.d.ts","sourceRoot":"","sources":["../../src/bridge/richDocGraph.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"richDocGraph.d.ts","sourceRoot":"","sources":["../../src/bridge/richDocGraph.ts"],"names":[],"mappings":"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"}
|
|
@@ -245,6 +245,162 @@ export function searchText(graph, query, opts = {}) {
|
|
|
245
245
|
}
|
|
246
246
|
return hits;
|
|
247
247
|
}
|
|
248
|
+
// ── Ranked full-text search ────────────────────────────────────────────────────
|
|
249
|
+
//
|
|
250
|
+
// `searchText` above is a verbatim (or regex) matcher — it only fires when the
|
|
251
|
+
// query string appears literally in a page. That's right for grep, but wrong for
|
|
252
|
+
// natural-language questions ("how to create docs", "what formats can I use"):
|
|
253
|
+
// the exact phrase rarely exists, so it returns nothing and a chat agent answers
|
|
254
|
+
// "the documentation does not cover that".
|
|
255
|
+
//
|
|
256
|
+
// `searchTextRanked` fixes that: it tokenizes the query into words, finds pages
|
|
257
|
+
// that contain those words (not the literal phrase), and ranks them by how many
|
|
258
|
+
// distinct query words they cover, frequency, whether words land in a heading,
|
|
259
|
+
// and how tightly the words cluster (a near-phrase match scores higher). The
|
|
260
|
+
// returned snippet is centred on the best-matching window. Stop words are
|
|
261
|
+
// dropped so "how to create docs" effectively searches for "create" + "docs".
|
|
262
|
+
const STOP_WORDS = new Set([
|
|
263
|
+
"a", "an", "and", "are", "as", "at", "be", "by", "can", "do", "does", "for",
|
|
264
|
+
"from", "how", "i", "in", "is", "it", "its", "me", "my", "of", "on", "or",
|
|
265
|
+
"our", "that", "the", "their", "them", "this", "to", "use", "using", "was",
|
|
266
|
+
"we", "what", "when", "where", "which", "who", "why", "will", "with", "you",
|
|
267
|
+
"your",
|
|
268
|
+
]);
|
|
269
|
+
/** Split free text into lowercased word tokens (letters/digits, length ≥ 2). */
|
|
270
|
+
function tokenizeText(text) {
|
|
271
|
+
return (text.toLowerCase().match(/[\p{L}\p{N}]{2,}/gu) ?? []);
|
|
272
|
+
}
|
|
273
|
+
/** Query tokens: dedup, drop stop words. If every token is a stop word (a very
|
|
274
|
+
* short query like "do it"), keep them so the search still has something to do. */
|
|
275
|
+
function queryTokens(query) {
|
|
276
|
+
const all = Array.from(new Set(tokenizeText(query)));
|
|
277
|
+
const meaningful = all.filter((t) => !STOP_WORDS.has(t));
|
|
278
|
+
return meaningful.length > 0 ? meaningful : all;
|
|
279
|
+
}
|
|
280
|
+
/** All occurrences of any query token in a page, in document order. */
|
|
281
|
+
function tokenOccurrences(content, tokens) {
|
|
282
|
+
const occ = [];
|
|
283
|
+
const lower = content.toLowerCase();
|
|
284
|
+
for (const token of tokens) {
|
|
285
|
+
let from = 0;
|
|
286
|
+
for (;;) {
|
|
287
|
+
const at = lower.indexOf(token, from);
|
|
288
|
+
if (at === -1)
|
|
289
|
+
break;
|
|
290
|
+
// word-ish boundary check so "doc" doesn't match inside "docker" only when
|
|
291
|
+
// it's clearly a substring of a longer word on BOTH sides; we still allow
|
|
292
|
+
// prefix/suffix matches (plurals, "docs" ⊃ "doc") for recall.
|
|
293
|
+
occ.push({ token, index: at });
|
|
294
|
+
from = at + token.length;
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
occ.sort((a, b) => a.index - b.index);
|
|
298
|
+
return occ;
|
|
299
|
+
}
|
|
300
|
+
/**
|
|
301
|
+
* Find the tightest window (by char span) that covers the most DISTINCT query
|
|
302
|
+
* tokens. Returns the covered token set and the [start,end] char span of that
|
|
303
|
+
* window, used both for scoring (proximity) and for centring the snippet.
|
|
304
|
+
*/
|
|
305
|
+
function bestWindow(occ, tokenCount) {
|
|
306
|
+
if (occ.length === 0)
|
|
307
|
+
return null;
|
|
308
|
+
let best = null;
|
|
309
|
+
// Sliding window over occurrences ordered by position.
|
|
310
|
+
let left = 0;
|
|
311
|
+
const counts = new Map();
|
|
312
|
+
let distinct = 0;
|
|
313
|
+
for (let right = 0; right < occ.length; right++) {
|
|
314
|
+
const tk = occ[right].token;
|
|
315
|
+
const c = counts.get(tk) ?? 0;
|
|
316
|
+
counts.set(tk, c + 1);
|
|
317
|
+
if (c === 0)
|
|
318
|
+
distinct++;
|
|
319
|
+
// Shrink from the left while we still keep all distinct tokens in window.
|
|
320
|
+
while (left < right) {
|
|
321
|
+
const lt = occ[left].token;
|
|
322
|
+
const lc = counts.get(lt) ?? 0;
|
|
323
|
+
if (lc <= 1)
|
|
324
|
+
break;
|
|
325
|
+
counts.set(lt, lc - 1);
|
|
326
|
+
left++;
|
|
327
|
+
}
|
|
328
|
+
const start = occ[left].index;
|
|
329
|
+
const end = occ[right].index + occ[right].token.length;
|
|
330
|
+
const span = end - start;
|
|
331
|
+
if (!best ||
|
|
332
|
+
distinct > best.covered.size ||
|
|
333
|
+
(distinct === best.covered.size && span < best.span)) {
|
|
334
|
+
best = {
|
|
335
|
+
covered: new Set([...counts.entries()].filter(([, n]) => n > 0).map(([t]) => t)),
|
|
336
|
+
start,
|
|
337
|
+
end,
|
|
338
|
+
span,
|
|
339
|
+
};
|
|
340
|
+
}
|
|
341
|
+
if (distinct === tokenCount && span === 0)
|
|
342
|
+
break;
|
|
343
|
+
}
|
|
344
|
+
return best;
|
|
345
|
+
}
|
|
346
|
+
/**
|
|
347
|
+
* Tokenized, ranked full-text search across the graph. Unlike `searchText`, this
|
|
348
|
+
* matches on individual query WORDS (after stop-word removal) rather than the
|
|
349
|
+
* literal phrase, then ranks pages by coverage / frequency / heading hits /
|
|
350
|
+
* proximity. Best for natural-language questions from an AI chat. One hit per
|
|
351
|
+
* page (the best window), highest score first.
|
|
352
|
+
*/
|
|
353
|
+
export function searchTextRanked(graph, query, opts = {}) {
|
|
354
|
+
const tokens = queryTokens(query);
|
|
355
|
+
if (tokens.length === 0)
|
|
356
|
+
return [];
|
|
357
|
+
const limit = opts.limit ?? 20;
|
|
358
|
+
const ctx = opts.contextChars ?? 120;
|
|
359
|
+
const hits = [];
|
|
360
|
+
for (const p of graph.pages) {
|
|
361
|
+
if (opts.pathPrefix && !p.path.startsWith(opts.pathPrefix))
|
|
362
|
+
continue;
|
|
363
|
+
const occ = tokenOccurrences(p.content, tokens);
|
|
364
|
+
if (occ.length === 0)
|
|
365
|
+
continue;
|
|
366
|
+
const win = bestWindow(occ, tokens.length);
|
|
367
|
+
if (!win)
|
|
368
|
+
continue;
|
|
369
|
+
const coverage = win.covered.size / tokens.length; // 0..1 fraction of query words present
|
|
370
|
+
const frequency = occ.length; // total token occurrences (capped in score)
|
|
371
|
+
// Heading bonus: any query token appearing in a page heading or title.
|
|
372
|
+
const headingHay = ((p.title ?? "") + " " + p.sections.map((s) => s.headingPath.join(" ")).join(" ")).toLowerCase();
|
|
373
|
+
const headingHits = tokens.filter((t) => headingHay.includes(t)).length;
|
|
374
|
+
// Proximity bonus: tighter windows (near-phrase) score higher. A window that
|
|
375
|
+
// spans roughly the matched tokens' own length is ~phrase-adjacent.
|
|
376
|
+
const idealSpan = win.covered.size * 12;
|
|
377
|
+
const proximity = win.span <= 0 ? 1 : Math.max(0, 1 - win.span / Math.max(idealSpan * 8, 1));
|
|
378
|
+
const matchScore = coverage * 100 + // dominant: how much of the query is present
|
|
379
|
+
headingHits * 8 + // strong signal: the words are in a heading/title
|
|
380
|
+
proximity * 12 + // near-phrase matches beat scattered words
|
|
381
|
+
Math.min(frequency, 10) * 0.5; // mild frequency nudge, capped
|
|
382
|
+
// Snippet centred on the best window.
|
|
383
|
+
const snippetStart = Math.max(0, win.start - ctx);
|
|
384
|
+
const snippetEnd = Math.min(p.content.length, win.end + ctx);
|
|
385
|
+
const snippet = (snippetStart > 0 ? "…" : "") +
|
|
386
|
+
p.content.slice(snippetStart, snippetEnd).replace(/\s+/g, " ").trim() +
|
|
387
|
+
(snippetEnd < p.content.length ? "…" : "");
|
|
388
|
+
const { line: startLine, col: startCol } = offsetToLineCol(p.content, win.start);
|
|
389
|
+
const { line: endLine, col: endCol } = offsetToLineCol(p.content, win.end);
|
|
390
|
+
const containingSection = p.sections.find((s) => s.positionStartLine <= startLine && s.positionEndLine >= startLine);
|
|
391
|
+
hits.push({
|
|
392
|
+
pagePath: p.path,
|
|
393
|
+
pageTitle: p.title,
|
|
394
|
+
headingPath: containingSection?.headingPath ?? [],
|
|
395
|
+
anchor: containingSection?.anchor ?? null,
|
|
396
|
+
snippet,
|
|
397
|
+
range: { start: { line: startLine, col: startCol }, end: { line: endLine, col: endCol } },
|
|
398
|
+
matchScore,
|
|
399
|
+
});
|
|
400
|
+
}
|
|
401
|
+
hits.sort((a, b) => b.matchScore - a.matchScore);
|
|
402
|
+
return hits.slice(0, limit);
|
|
403
|
+
}
|
|
248
404
|
export function listPages(graph, opts = {}) {
|
|
249
405
|
const limit = opts.limit ?? 1000;
|
|
250
406
|
const out = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"richDocGraph.js","sourceRoot":"","sources":["../../src/bridge/richDocGraph.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"richDocGraph.js","sourceRoot":"","sources":["../../src/bridge/richDocGraph.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
|