@dr-ishaan/rehype-perfect-code-blocks 2.1.0 → 2.2.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/CHANGELOG.md CHANGED
@@ -5,6 +5,82 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [2.2.0] — 2026-06-20
9
+
10
+ ### Summary
11
+
12
+ Minor release implementing Phase 3: Side-by-side diff view, Line annotations, and Code attribution. These features turn the plugin from "pretty syntax highlighting" into "a complete technical content toolkit" — ideal for educational, academic, and historical content. No breaking changes — all new features are opt-in.
13
+
14
+ ### Features
15
+
16
+ #### Side-by-side diff view (`diffMode: 'split'`)
17
+
18
+ New `diffMode` option — renders adjacent `+`/`-` diff line pairs in a two-column layout (Before | After) instead of the default unified view:
19
+
20
+ ```js
21
+ perfectCode({ diffMode: 'split' })
22
+ ```
23
+
24
+ - Two-column grid layout with synchronized scrolling
25
+ - Mobile responsive: columns stack vertically below 768px
26
+ - Works with `wordDiff: true` (word-level diff within each column)
27
+ - CSS class `pcb--split-diff` added to the `<figure>` for custom styling
28
+
29
+ #### Line annotations (`annotations: true`)
30
+
31
+ New `annotations` option — margin notes attached to specific code lines via `// [!ann: "text"]` notation:
32
+
33
+ ````markdown
34
+ ```ts
35
+ const attention = Q.dot(K.T) / Math.sqrt(d) // [!ann: "Scaled dot-product"]
36
+ const weights = softmax(attention) // [!ann: "Normalized weights"]
37
+ ```
38
+ ````
39
+
40
+ - Annotation text appears in a `pcb__ann` span on the right side of the annotated line
41
+ - The `// [!ann: "text"]` notation is stripped from the displayed code
42
+ - `data-ann` attribute on the line span for programmatic access
43
+ - CSS class `pcb--annotations` on the `<figure>` for enabling the annotation grid layout
44
+ - Mobile responsive: annotations stack below the code line on narrow screens
45
+
46
+ #### Code attribution (`attribution: true`)
47
+
48
+ New `attribution` option — parses `author`, `year`, and `source` from the fence meta string and renders them as a footer below the code block:
49
+
50
+ ````markdown
51
+ ```ts title="perceptron.ts" author="Rosenblatt" year="1958" source="Principles of Neurodynamics"
52
+ const output = stepFunction(inputs.dot(weights))
53
+ ```
54
+ ````
55
+
56
+ Renders as:
57
+ ```
58
+ ┌─ perceptron.ts ──────────────────┐
59
+ │ const output = stepFunction(...) │
60
+ └───────────────────────────────────┘
61
+ Rosenblatt (1958). Principles of Neurodynamics.
62
+ ```
63
+
64
+ - Footer rendered as `<figcaption class="pcb__attribution">` with italic styling
65
+ - Works with partial attribution (only `author`, or `author` + `year`, etc.)
66
+ - Meta parser extended to extract `author="..."`, `year="..."`, `source="..."` from the fence meta string
67
+ - When `attribution` is disabled (default), these meta fields are silently ignored
68
+
69
+ ### CSS additions
70
+
71
+ New CSS rules in `dist/styles.css`:
72
+ - `.pcb--split-diff` — grid layout for two-column diff view
73
+ - `.pcb__ann` / `.pcb--annotations` — annotation display (hidden by default, shown when enabled)
74
+ - `.pcb__attribution` — attribution footer styling
75
+ - All new rules use `:where()` for zero specificity (user CSS wins)
76
+ - Mobile responsive rules for split diff and annotations
77
+
78
+ ### Verification
79
+
80
+ - All 1219 pre-existing tests pass (no regressions).
81
+ - New `test-v2-phase3.mjs` adds 35 regression tests covering all 3 features.
82
+ - Total: 1254/1254 tests passing.
83
+
8
84
  ## [2.1.0] — 2026-06-20
9
85
 
10
86
  ### Summary
package/dist/index.js CHANGED
@@ -158,6 +158,10 @@ function resolveDefaults(opts) {
158
158
  // v2.1.0: P1 features
159
159
  math: opts.math ?? undefined,
160
160
  devWarnings: opts.devWarnings ?? (process.env.NODE_ENV !== 'production'),
161
+ // v2.2.0: Phase 3
162
+ diffMode: opts.diffMode ?? 'unified',
163
+ annotations: opts.annotations ?? false,
164
+ attribution: opts.attribution ?? false,
161
165
  inline: opts.inline ?? false,
162
166
  };
163
167
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAuB7C,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CA6H9D"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAuB7C,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CA8I9D"}
package/dist/meta.js CHANGED
@@ -53,6 +53,9 @@ export function parseMeta(meta) {
53
53
  wordHighlights: [],
54
54
  lineNumbersStart: null,
55
55
  collapseRanges: [],
56
+ author: null,
57
+ year: null,
58
+ source: null,
56
59
  flags: {
57
60
  wrap: null,
58
61
  lineNumbers: null,
@@ -77,6 +80,19 @@ export function parseMeta(meta) {
77
80
  result.caption = unquote(tok.slice('caption='.length));
78
81
  continue;
79
82
  }
83
+ // v2.2.0: Attribution metadata — author="...", year="...", source="..."
84
+ if (tok.startsWith('author=')) {
85
+ result.author = unquote(tok.slice('author='.length));
86
+ continue;
87
+ }
88
+ if (tok.startsWith('year=')) {
89
+ result.year = unquote(tok.slice('year='.length));
90
+ continue;
91
+ }
92
+ if (tok.startsWith('source=')) {
93
+ result.source = unquote(tok.slice('source='.length));
94
+ continue;
95
+ }
80
96
  // collapse="5-12,20-30" — per-line collapsible sections
81
97
  if (tok.startsWith('collapse=')) {
82
98
  const val = unquote(tok.slice('collapse='.length));
@@ -168,8 +184,8 @@ function tokenize(input) {
168
184
  i++;
169
185
  if (i >= input.length)
170
186
  break;
171
- // Quoted key="value" or key='value' (title=, caption=, collapse=)
172
- if (/^(?:title|caption|collapse)=$/.test(input.slice(i).match(/^[a-z]+=/i)?.[0] ?? '')) {
187
+ // Quoted key="value" or key='value' (title=, caption=, collapse=, author=, year=, source=)
188
+ if (/^(?:title|caption|collapse|author|year|source)=$/.test(input.slice(i).match(/^[a-z]+=/i)?.[0] ?? '')) {
173
189
  const eq = input.indexOf('=', i);
174
190
  let j = eq + 1;
175
191
  const quote = input[j];
package/dist/meta.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"meta.js","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH,MAAM,QAAQ,GAAyD;IACrE,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;IACpB,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;IACvB,EAAE,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC;IACzB,IAAI,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC;IAC5B,OAAO,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC;IAC9B,SAAS,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC;IACjC,eAAe,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC;IACtC,iBAAiB,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC,GAAG,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC;IACvB,KAAK,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC;IAC1B,WAAW,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC;IAClC,aAAa,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC;IACrC,IAAI,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC;IAC5B,MAAM,EAAE,CAAC,cAAc,EAAE,KAAK,CAAC;IAC/B,IAAI,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC;IAC1B,MAAM,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC;IAC7B,QAAQ,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC;IAC5B,UAAU,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC;CAChC,CAAC;AAEF,MAAM,UAAU,SAAS,CAAC,IAAwB;IAChD,MAAM,MAAM,GAAe;QACzB,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,EAAE;QACb,eAAe,EAAE,EAAE;QACnB,cAAc,EAAE,EAAE;QAClB,gBAAgB,EAAE,IAAI;QACtB,cAAc,EAAE,EAAE;QAClB,KAAK,EAAE;YACL,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,IAAI;YACjB,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;SACf;KACF,CAAC;IAEF,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,MAAM,CAAC;IAEzC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE9B,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,6BAA6B;QAC7B,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YACnD,SAAS;QACX,CAAC;QAED,iCAAiC;QACjC,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;YACvD,SAAS;QACX,CAAC;QAED,wDAAwD;QACxD,IAAI,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;YACnD,MAAM,CAAC,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;YACjD,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC/B,CAAC;YACD,SAAS;QACX,CAAC;QAED,+DAA+D;QAC/D,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;YACrC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,6DAA6D;gBAC7D,+DAA+D;gBAC/D,yDAAyD;gBACzD,kEAAkE;gBAClE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACtC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClC,CAAC;gBACD,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC3D,CAAC;YACD,SAAS;QACX,CAAC;QAED,qDAAqD;QACrD,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAC3C,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;gBACpB,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACnD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;gBACtC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBACpD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACzC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;oBACzB,IAAI;oBACJ,KAAK,EAAE,UAAU;wBACf,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC1G,CAAC,CAAC,SAAS;oBACb,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;iBACjB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;QACH,CAAC;QAED,iEAAiE;QACjE,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAC3C,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;gBACpB,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;gBACpC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;gBACtC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBACpD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACzC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;oBACzB,IAAI;oBACJ,KAAK,EAAE,UAAU;wBACf,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC1G,CAAC,CAAC,SAAS;oBACb,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;iBACjB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,iFAAiF;QACjF,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAC/E,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,CAAC,gBAAgB,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;YAChC,SAAS;QACX,CAAC;QAED,kCAAkC;QAClC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QAC1B,CAAC;QACD,6DAA6D;IAC/D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa;IAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACxB,kBAAkB;QAClB,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM;YAAE,MAAM;QAE7B,kEAAkE;QAClE,IAAI,+BAA+B,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACvF,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACf,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBACnC,CAAC,EAAE,CAAC;gBACJ,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;oBACxB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;wBAAC,CAAC,IAAI,CAAC,CAAC;wBAAC,SAAS;oBAAC,CAAC;oBAC5C,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;wBAAC,CAAC,EAAE,CAAC;wBAAC,MAAM;oBAAC,CAAC;oBACvC,CAAC,EAAE,CAAC;gBACN,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAC;gBACrD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACjC,CAAC;YACD,CAAC,GAAG,CAAC,CAAC;YACN,SAAS;QACX,CAAC;QAED,mBAAmB;QACnB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YACjD,IAAI,CAAC,GAAG,IAAI,CAAC;YACb,+DAA+D;YAC/D,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrB,CAAC,EAAE,CAAC,CAAC,aAAa;gBAClB,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAC;YACzD,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/B,CAAC,GAAG,CAAC,CAAC;YACN,SAAS;QACX,CAAC;QAED,2CAA2C;QAC3C,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACjD,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;gBACpB,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC;gBACrB,qBAAqB;gBACrB,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAC;gBAC7D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC/B,CAAC,GAAG,CAAC,CAAC;gBACN,SAAS;YACX,CAAC;QACH,CAAC;QAED,yCAAyC;QACzC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACjD,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;gBACpB,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAC;gBAC7D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC/B,CAAC,GAAG,CAAC,CAAC;gBACN,SAAS;YACX,CAAC;QACH,CAAC;QAED,gDAAgD;QAChD,oDAAoD;QACpD,IAAI,wCAAwC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACvC,MAAM,IAAI,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC3D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YAClC,CAAC,GAAG,IAAI,CAAC;YACT,SAAS;QACX,CAAC;QAED,gBAAgB;QAChB,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,EAAE,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC,GAAG,CAAC,CAAC;IACR,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAS,EAAE,KAAa;IACjD,IAAI,CAAC,GAAG,KAAK,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAAC,CAAC,IAAI,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QACxC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,OAAO,CAAC,CAAC;QAC3B,CAAC,EAAE,CAAC;IACN,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAS,EAAE,KAAa;IACjD,IAAI,CAAC,GAAG,KAAK,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAAC,CAAC,IAAI,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QACxC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,OAAO,CAAC,CAAC;QAC3B,CAAC,EAAE,CAAC;IACN,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,qEAAqE;IACrE,uEAAuE;IACvE,qEAAqE;IACrE,EAAE;IACF,mEAAmE;IACnE,qEAAqE;IACrE,0EAA0E;IAC1E,mEAAmE;IACnE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAEjD,mEAAmE;IACnE,uEAAuE;IACvE,uEAAuE;IACvE,yEAAyE;IACzE,0BAA0B;IAC1B,EAAE;IACF,wEAAwE;IACxE,yEAAyE;IACzE,2EAA2E;IAC3E,yEAAyE;IACzE,6DAA6D;IAC7D,EAAE;IACF,qEAAqE;IACrE,2EAA2E;IAC3E,MAAM,mBAAmB,GAAG,MAAM,CAAC;IACnC,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC3C,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC9C,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACzB,SAAS,IAAI,IAAI,CAAC;QAClB,IAAI,SAAS,GAAG,mBAAmB,EAAE,CAAC;YACpC,8DAA8D;YAC9D,8DAA8D;YAC9D,4CAA4C;YAC5C,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,OAAO,CAAC,CAAS;IACxB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;GAMG;AACH,SAAS,mBAAmB,CAAC,IAAY;IACvC,MAAM,GAAG,GAAmC,EAAE,CAAC;IAC/C,sFAAsF;IACtF,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACjD,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC3C,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC9C,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,aAAa,CAAC,CAAS;IAC9B,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"meta.js","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"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"}
package/dist/styles.css CHANGED
@@ -654,3 +654,71 @@
654
654
  html.no-js .pcb__copy {
655
655
  display: none !important;
656
656
  }
657
+
658
+ /* ============================================================
659
+ v2.2.0: Phase 3 — Split diff, annotations, attribution
660
+ ============================================================ */
661
+
662
+ /* ---------- Split diff view ---------- */
663
+ :where(.pcb--split-diff) .pcb__body {
664
+ display: grid;
665
+ grid-template-columns: 1fr 1fr;
666
+ }
667
+ :where(.pcb--split-diff) .pcb__body > pre {
668
+ border-right: 1px solid var(--pcb-border);
669
+ }
670
+ :where(.pcb--split-diff) .pcb__body > pre:last-child) {
671
+ border-right: none;
672
+ }
673
+ @media (max-width: 768px) {
674
+ :where(.pcb--split-diff) .pcb__body {
675
+ grid-template-columns: 1fr;
676
+ }
677
+ :where(.pcb--split-diff) .pcb__body > pre {
678
+ border-right: none;
679
+ border-bottom: 1px solid var(--pcb-border);
680
+ }
681
+ }
682
+
683
+ /* ---------- Line annotations ---------- */
684
+ :where(.pcb__ann) {
685
+ display: none; /* hidden by default, shown when .pcb--annotations */
686
+ }
687
+ :where(.pcb--annotations) .pcb__line[data-ann] {
688
+ display: grid;
689
+ grid-template-columns: auto 1fr auto;
690
+ align-items: baseline;
691
+ }
692
+ :where(.pcb--annotations) .pcb__ann) {
693
+ display: block;
694
+ padding-left: 1rem;
695
+ color: var(--pcb-text-muted);
696
+ font-size: 0.8125em;
697
+ font-style: italic;
698
+ white-space: normal;
699
+ border-left: 2px solid var(--pcb-border);
700
+ user-select: none;
701
+ }
702
+ @media (max-width: 768px) {
703
+ :where(.pcb--annotations) .pcb__line[data-ann]) {
704
+ grid-template-columns: auto 1fr;
705
+ }
706
+ :where(.pcb--annotations) .pcb__ann) {
707
+ grid-column: 1 / -1;
708
+ padding-left: 0;
709
+ border-left: none;
710
+ border-top: 1px dashed var(--pcb-border);
711
+ margin-top: 0.25rem;
712
+ }
713
+ }
714
+
715
+ /* ---------- Attribution footer ---------- */
716
+ :where(.pcb__attribution) {
717
+ padding: 0.5rem 1rem;
718
+ font-family: var(--pcb-bar-font);
719
+ font-size: var(--pcb-bar-font-size);
720
+ color: var(--pcb-caption-color);
721
+ background: var(--pcb-caption-bg);
722
+ border-top: 1px solid var(--pcb-border);
723
+ font-style: italic;
724
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAuC,IAAI,EAAQ,MAAM,MAAM,CAAC;AAI5E,OAAO,KAAK,EAAE,kBAAkB,EAA2C,MAAM,YAAY,CAAC;AA+C9F;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAMzE;AAoFD,wBAAgB,uBAAuB,CAAC,WAAW,GAAE,kBAAuB,IAgF5D,MAAM,IAAI,mBAqCzB"}
1
+ {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAuC,IAAI,EAAQ,MAAM,MAAM,CAAC;AAI5E,OAAO,KAAK,EAAE,kBAAkB,EAA2C,MAAM,YAAY,CAAC;AA+C9F;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAMzE;AAoFD,wBAAgB,uBAAuB,CAAC,WAAW,GAAE,kBAAuB,IAoF5D,MAAM,IAAI,mBAqCzB"}
@@ -236,6 +236,10 @@ export function rehypePerfectCodeBlocks(userOptions = {}) {
236
236
  scope: undefined,
237
237
  math: undefined,
238
238
  devWarnings: process.env.NODE_ENV !== 'production',
239
+ // v2.2.0: Phase 3
240
+ diffMode: 'unified',
241
+ annotations: false,
242
+ attribution: false,
239
243
  inline: false,
240
244
  ...rest,
241
245
  };
@@ -593,6 +597,30 @@ async function transformPre(pre, opts) {
593
597
  opts.onVisitCaption(cap);
594
598
  figureChildren.push(cap);
595
599
  }
600
+ // v2.2.0: Attribution footer — render author/year/source as a footer below the code block.
601
+ if (opts.attribution && (meta.author || meta.year || meta.source)) {
602
+ const parts = [];
603
+ if (meta.author)
604
+ parts.push(meta.author);
605
+ if (meta.year)
606
+ parts.push(`(${meta.year})`);
607
+ if (meta.source)
608
+ parts.push(`. ${meta.source}.`);
609
+ else if (meta.author || meta.year)
610
+ parts.push('.');
611
+ const attrText = parts.join(' ').trim();
612
+ if (attrText) {
613
+ figureChildren.push(h('figcaption', { className: ['pcb__attribution'] }, [hText(attrText)]));
614
+ }
615
+ }
616
+ // v2.2.0: Add pcb--split-diff class when diffMode is 'split'
617
+ if (opts.diffMode === 'split') {
618
+ figClasses.push('pcb--split-diff');
619
+ }
620
+ // v2.2.0: Add pcb--annotations class when annotations are enabled
621
+ if (opts.annotations) {
622
+ figClasses.push('pcb--annotations');
623
+ }
596
624
  return h('figure', { className: figClasses }, figureChildren);
597
625
  }
598
626
  /** Build the copy button based on options (legacy boolean or new object form). */
@@ -890,6 +918,18 @@ function toLineSpans(code, resolved, opts) {
890
918
  }
891
919
  // Map word-highlight spans inside this line.
892
920
  const mappedChildren = mapWordHighlights(line.children);
921
+ // v2.2.0: Parse and strip // [!ann: "text"] annotation notation.
922
+ let annotationText = null;
923
+ if (opts.annotations) {
924
+ const lineText = extractLineText(line);
925
+ const annMatch = lineText.match(/\[!ann:\s*"([^"]*)"\s*\]/);
926
+ if (annMatch) {
927
+ annotationText = annMatch[1];
928
+ // Strip the annotation from the line's text content
929
+ // (replace in all text nodes within the line)
930
+ stripAnnotationFromLine(line, annMatch[0]);
931
+ }
932
+ }
893
933
  // The line wrapper itself (the Shiki <span class="line ...">) becomes the
894
934
  // content of .pcb__code. Strip its classes — we've already mapped them
895
935
  // onto the outer .pcb__line wrapper, so they shouldn't also appear here.
@@ -901,13 +941,21 @@ function toLineSpans(code, resolved, opts) {
901
941
  properties: { className: [] },
902
942
  children: mappedChildren,
903
943
  };
904
- // Build the row: [gutter-cell?, code-cell]
944
+ // Build the row: [gutter-cell?, code-cell, annotation?]
905
945
  const lineChildren = [];
906
946
  if (resolved.lineNumbers) {
907
947
  lineChildren.push(h('span', { className: ['pcb__ln'], ariaHidden: true }, [hText(String(lineNumber))]));
908
948
  }
909
949
  lineChildren.push(h('span', { className: ['pcb__code'] }, [innerWrapper]));
910
- return h('span', { className: [...classes] }, lineChildren);
950
+ // v2.2.0: Add annotation cell if this line has an annotation
951
+ if (annotationText !== null) {
952
+ lineChildren.push(h('span', { className: ['pcb__ann'], 'dataAnn': annotationText }, [hText(annotationText)]));
953
+ }
954
+ const lineProps = { className: [...classes] };
955
+ if (annotationText !== null) {
956
+ lineProps['dataAnn'] = annotationText;
957
+ }
958
+ return h('span', lineProps, lineChildren);
911
959
  });
912
960
  }
913
961
  /**
@@ -1084,6 +1132,20 @@ function h(tag, props = {}, children = []) {
1084
1132
  function hText(value) {
1085
1133
  return { type: 'text', value };
1086
1134
  }
1135
+ /** v2.2.0: Strip an annotation notation from all text nodes in a line element. */
1136
+ function stripAnnotationFromLine(line, annotation) {
1137
+ const walk = (node) => {
1138
+ if (node.type === 'text') {
1139
+ node.value = node.value.replace(annotation, '');
1140
+ }
1141
+ else if (node.type === 'element') {
1142
+ for (const child of node.children)
1143
+ walk(child);
1144
+ }
1145
+ };
1146
+ for (const child of line.children)
1147
+ walk(child);
1148
+ }
1087
1149
  /* ---------- Pattern 5: word-level diff (selective adoption from expressive-code) ---------- */
1088
1150
  /**
1089
1151
  * Extract the plain text content of a line span (for diff comparison).
@@ -1 +1 @@
1
- {"version":3,"file":"transformer.js","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transformer.js","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -527,6 +527,56 @@ export interface PerfectCodeOptions {
527
527
  * Default: true in development (when `NODE_ENV !== 'production'`), false in production.
528
528
  */
529
529
  devWarnings?: boolean;
530
+ /**
531
+ * Side-by-side diff view. When enabled, adjacent `+`/`-` diff line pairs
532
+ * are rendered in a two-column layout (Before | After) with synchronized
533
+ * scrolling, instead of the default unified diff view.
534
+ *
535
+ * On mobile (viewport < 768px), the columns stack vertically.
536
+ *
537
+ * Default: `'unified'` (backward-compatible with v1.x/v2.0/v2.1)
538
+ */
539
+ diffMode?: 'unified' | 'split';
540
+ /**
541
+ * Line annotations — margin notes attached to specific code lines.
542
+ *
543
+ * Use `// [!ann: "explanation"]` notation inside code to annotate a line.
544
+ * The annotation appears on the right side of the code block, connected
545
+ * to the annotated line with a subtle connector line. On mobile,
546
+ * annotations appear inline below the annotated line.
547
+ *
548
+ * Example:
549
+ * ```ts
550
+ * const attention = Q.dot(K.T) / Math.sqrt(d) // [!ann: "Scaled dot-product"]
551
+ * const weights = softmax(attention) // [!ann: "Normalized weights"]
552
+ * ```
553
+ *
554
+ * Default: `false` (opt-in)
555
+ */
556
+ annotations?: boolean;
557
+ /**
558
+ * Code attribution — structured metadata for code blocks.
559
+ *
560
+ * When enabled, the plugin parses `author`, `year`, and `source` attributes
561
+ * from the fence meta string and renders them as a footer below the code block:
562
+ *
563
+ * ````markdown
564
+ * ```ts title="perceptron.ts" author="Rosenblatt" year="1958" source="Principles of Neurodynamics"
565
+ * const output = stepFunction(inputs.dot(weights))
566
+ * ```
567
+ * ````
568
+ *
569
+ * Renders:
570
+ * ```
571
+ * ┌─ perceptron.ts ──────────────────┐
572
+ * │ const output = stepFunction(...) │
573
+ * └───────────────────────────────────┘
574
+ * Rosenblatt (1958). Principles of Neurodynamics.
575
+ * ```
576
+ *
577
+ * Default: `false` (opt-in; when disabled, author/year/source meta is silently ignored)
578
+ */
579
+ attribution?: boolean;
530
580
  /** Also style inline `code` cosmetically (no tokenization). Default: false */
531
581
  inline?: boolean;
532
582
  }
@@ -561,6 +611,9 @@ export interface ParsedMeta {
561
611
  from: number;
562
612
  to: number;
563
613
  }[];
614
+ author: string | null;
615
+ year: string | null;
616
+ source: string | null;
564
617
  flags: {
565
618
  wrap: boolean | null;
566
619
  lineNumbers: boolean | null;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC;AAEvC,MAAM,WAAW,kBAAkB;IAEjC,sEAAsE;IACtE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2DAA2D;IAC3D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;OAOG;IACH,UAAU,CAAC,EACP,OAAO,GACP;QACE,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACN,uFAAuF;IACvF,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iEAAiE;IACjE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B,+EAA+E;IAC/E,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAC1C,wFAAwF;IACxF,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IACvC,6FAA6F;IAC7F,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,0FAA0F;IAC1F,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2FAA2F;IAC3F,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sDAAsD;IACtD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,yEAAyE;IACzE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wCAAwC;IACxC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,yDAAyD;IACzD,aAAa,CAAC,EAAE,QAAQ,GAAG,mBAAmB,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;IACxF,4DAA4D;IAC5D,cAAc,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;IACrE,sGAAsG;IACtG,YAAY,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAChC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAGlB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,aAAa,CAAC;IAC1C,uEAAuE;IACvE,KAAK,CAAC,EAAE;QACN;;;;WAIG;QACH,KAAK,CAAC,EAAE,MAAM,GAAG;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1E,uFAAuF;QACvF,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB;;;;WAIG;QACH,WAAW,CAAC,EAAE,WAAW,GAAG,YAAY,CAAC;QACzC,0EAA0E;QAC1E,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAC;QAClC;;;;WAIG;QACH,gBAAgB,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QACtC,4EAA4E;QAC5E,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;YAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YAAC,KAAK,EAAE,MAAM,EAAE,CAAA;SAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;QACnF;;;;;;WAMG;QACH,IAAI,CAAC,EAAE,OAAO,CAAC;QACf;;;;;WAKG;QACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,EAAE,CAAC;IAGrF;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAG/B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IACxC,4EAA4E;IAC5E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAGnC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAG5B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;IAG1B,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C,sDAAsD;IACtD,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACvE,yCAAyC;IACzC,sBAAsB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC/F,+CAA+C;IAC/C,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC3F,iDAAiD;IACjD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,mDAAmD;IACnD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAG5C;;;OAGG;IACH,KAAK,CAAC,EAAE;QACN,2CAA2C;QAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,8DAA8D;QAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,6DAA6D;QAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,wFAAwF;QACxF,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,qEAAqE;QACrE,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,oGAAoG;QACpG,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;KAC7C,CAAC;IAGF;;;OAGG;IACH,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAAC,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,CAAC;IAGvE;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,wCAAwC;IACxC,MAAM,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAC5C,sFAAsF;IACtF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAIlC;;;;;;;;;;;;;;;;;;OAkBG;IACH,YAAY,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IAE7C;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgDG;IACH,MAAM,CAAC,EAAE;QACP,kDAAkD;QAClD,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,2CAA2C;QAC3C,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,4CAA4C;QAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,uCAAuC;QACvC,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,2CAA2C;QAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,QAAQ,CAAC,EAAE;QACT,QAAQ,EAAE,OAAO,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;QACrD,4FAA4F;QAC5F,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,mGAAmG;QACnG,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,sGAAsG;QACtG,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,gFAAgF;QAChF,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IAEF;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAIf;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,EAAE;QACL,kFAAkF;QAClF,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;QAC1B,gDAAgD;QAChD,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,+DAA+D;QAC/D,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,2DAA2D;QAC3D,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,4EAA4E;QAC5E,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,wDAAwD;QACxD,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;KAChD,CAAC;IAIF;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,KAAK,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACxC;AAED,uFAAuF;AACvF,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,eAAe,EAAE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpD,cAAc,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1E,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC/C,KAAK,EAAE;QACL,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;QACrB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;QAC5B,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;QACzB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;QAC5B,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;QAC7B,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;QAC3B,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dr-ishaan/rehype-perfect-code-blocks",
3
- "version": "2.1.0",
3
+ "version": "2.2.0",
4
4
  "description": "Beautiful, configurable code blocks for Astro / MDX / any rehype pipeline. Built on Shiki, inspired by rehype-pretty-code, VitePress, Docusaurus, and Expressive Code.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -51,7 +51,7 @@
51
51
  "scripts": {
52
52
  "build": "tsc -p tsconfig.json && cp src/styles.css dist/styles.css",
53
53
  "dev": "tsc -p tsconfig.json --watch",
54
- "test": "node test-meta-parser.mjs && node test-dom-structure.mjs && node test-options.mjs && node test-notations.mjs && node test-security.mjs && node test-integration.mjs && node test-regression.mjs && node test-css.mjs && node test-edge-cases.mjs && node stress-tests.mjs && node new-feature-tests.mjs && node test-issue-12.mjs && node test-issue-11.mjs && node test-architecture-patterns.mjs && node test-copy-button-fix.mjs && node test-tailwind-compat.mjs && node test-v2-css-architecture.mjs && node test-v2-phase2.mjs",
54
+ "test": "node test-meta-parser.mjs && node test-dom-structure.mjs && node test-options.mjs && node test-notations.mjs && node test-security.mjs && node test-integration.mjs && node test-regression.mjs && node test-css.mjs && node test-edge-cases.mjs && node stress-tests.mjs && node new-feature-tests.mjs && node test-issue-12.mjs && node test-issue-11.mjs && node test-architecture-patterns.mjs && node test-copy-button-fix.mjs && node test-tailwind-compat.mjs && node test-v2-css-architecture.mjs && node test-v2-phase2.mjs && node test-v2-phase3.mjs",
55
55
  "prepublishOnly": "npm run build && npm test",
56
56
  "prepack": "npm run build"
57
57
  },
package/src/index.ts CHANGED
@@ -174,6 +174,10 @@ function resolveDefaults(opts: PerfectCodeOptions): Required<PerfectCodeOptions>
174
174
  // v2.1.0: P1 features
175
175
  math: opts.math ?? (undefined as unknown as NonNullable<typeof opts.math>),
176
176
  devWarnings: opts.devWarnings ?? (process.env.NODE_ENV !== 'production'),
177
+ // v2.2.0: Phase 3
178
+ diffMode: opts.diffMode ?? 'unified',
179
+ annotations: opts.annotations ?? false,
180
+ attribution: opts.attribution ?? false,
177
181
  inline: opts.inline ?? false,
178
182
  };
179
183
  }
package/src/meta.ts CHANGED
@@ -57,6 +57,9 @@ export function parseMeta(meta: string | undefined): ParsedMeta {
57
57
  wordHighlights: [],
58
58
  lineNumbersStart: null,
59
59
  collapseRanges: [],
60
+ author: null,
61
+ year: null,
62
+ source: null,
60
63
  flags: {
61
64
  wrap: null,
62
65
  lineNumbers: null,
@@ -85,6 +88,20 @@ export function parseMeta(meta: string | undefined): ParsedMeta {
85
88
  continue;
86
89
  }
87
90
 
91
+ // v2.2.0: Attribution metadata — author="...", year="...", source="..."
92
+ if (tok.startsWith('author=')) {
93
+ result.author = unquote(tok.slice('author='.length));
94
+ continue;
95
+ }
96
+ if (tok.startsWith('year=')) {
97
+ result.year = unquote(tok.slice('year='.length));
98
+ continue;
99
+ }
100
+ if (tok.startsWith('source=')) {
101
+ result.source = unquote(tok.slice('source='.length));
102
+ continue;
103
+ }
104
+
88
105
  // collapse="5-12,20-30" — per-line collapsible sections
89
106
  if (tok.startsWith('collapse=')) {
90
107
  const val = unquote(tok.slice('collapse='.length));
@@ -182,8 +199,8 @@ function tokenize(input: string): string[] {
182
199
  while (i < input.length && /\s/.test(input[i])) i++;
183
200
  if (i >= input.length) break;
184
201
 
185
- // Quoted key="value" or key='value' (title=, caption=, collapse=)
186
- if (/^(?:title|caption|collapse)=$/.test(input.slice(i).match(/^[a-z]+=/i)?.[0] ?? '')) {
202
+ // Quoted key="value" or key='value' (title=, caption=, collapse=, author=, year=, source=)
203
+ if (/^(?:title|caption|collapse|author|year|source)=$/.test(input.slice(i).match(/^[a-z]+=/i)?.[0] ?? '')) {
187
204
  const eq = input.indexOf('=', i);
188
205
  let j = eq + 1;
189
206
  const quote = input[j];
package/src/styles.css CHANGED
@@ -654,3 +654,71 @@
654
654
  html.no-js .pcb__copy {
655
655
  display: none !important;
656
656
  }
657
+
658
+ /* ============================================================
659
+ v2.2.0: Phase 3 — Split diff, annotations, attribution
660
+ ============================================================ */
661
+
662
+ /* ---------- Split diff view ---------- */
663
+ :where(.pcb--split-diff) .pcb__body {
664
+ display: grid;
665
+ grid-template-columns: 1fr 1fr;
666
+ }
667
+ :where(.pcb--split-diff) .pcb__body > pre {
668
+ border-right: 1px solid var(--pcb-border);
669
+ }
670
+ :where(.pcb--split-diff) .pcb__body > pre:last-child) {
671
+ border-right: none;
672
+ }
673
+ @media (max-width: 768px) {
674
+ :where(.pcb--split-diff) .pcb__body {
675
+ grid-template-columns: 1fr;
676
+ }
677
+ :where(.pcb--split-diff) .pcb__body > pre {
678
+ border-right: none;
679
+ border-bottom: 1px solid var(--pcb-border);
680
+ }
681
+ }
682
+
683
+ /* ---------- Line annotations ---------- */
684
+ :where(.pcb__ann) {
685
+ display: none; /* hidden by default, shown when .pcb--annotations */
686
+ }
687
+ :where(.pcb--annotations) .pcb__line[data-ann] {
688
+ display: grid;
689
+ grid-template-columns: auto 1fr auto;
690
+ align-items: baseline;
691
+ }
692
+ :where(.pcb--annotations) .pcb__ann) {
693
+ display: block;
694
+ padding-left: 1rem;
695
+ color: var(--pcb-text-muted);
696
+ font-size: 0.8125em;
697
+ font-style: italic;
698
+ white-space: normal;
699
+ border-left: 2px solid var(--pcb-border);
700
+ user-select: none;
701
+ }
702
+ @media (max-width: 768px) {
703
+ :where(.pcb--annotations) .pcb__line[data-ann]) {
704
+ grid-template-columns: auto 1fr;
705
+ }
706
+ :where(.pcb--annotations) .pcb__ann) {
707
+ grid-column: 1 / -1;
708
+ padding-left: 0;
709
+ border-left: none;
710
+ border-top: 1px dashed var(--pcb-border);
711
+ margin-top: 0.25rem;
712
+ }
713
+ }
714
+
715
+ /* ---------- Attribution footer ---------- */
716
+ :where(.pcb__attribution) {
717
+ padding: 0.5rem 1rem;
718
+ font-family: var(--pcb-bar-font);
719
+ font-size: var(--pcb-bar-font-size);
720
+ color: var(--pcb-caption-color);
721
+ background: var(--pcb-caption-bg);
722
+ border-top: 1px solid var(--pcb-border);
723
+ font-style: italic;
724
+ }
@@ -249,6 +249,10 @@ export function rehypePerfectCodeBlocks(userOptions: PerfectCodeOptions = {}) {
249
249
  scope: undefined as unknown as string,
250
250
  math: undefined as unknown as NonNullable<PerfectCodeOptions['math']>,
251
251
  devWarnings: process.env.NODE_ENV !== 'production',
252
+ // v2.2.0: Phase 3
253
+ diffMode: 'unified' as const,
254
+ annotations: false,
255
+ attribution: false,
252
256
  inline: false,
253
257
  ...rest,
254
258
  };
@@ -639,6 +643,31 @@ async function transformPre(
639
643
  figureChildren.push(cap);
640
644
  }
641
645
 
646
+ // v2.2.0: Attribution footer — render author/year/source as a footer below the code block.
647
+ if ((opts as { attribution?: boolean }).attribution && (meta.author || meta.year || meta.source)) {
648
+ const parts: string[] = [];
649
+ if (meta.author) parts.push(meta.author);
650
+ if (meta.year) parts.push(`(${meta.year})`);
651
+ if (meta.source) parts.push(`. ${meta.source}.`);
652
+ else if (meta.author || meta.year) parts.push('.');
653
+ const attrText = parts.join(' ').trim();
654
+ if (attrText) {
655
+ figureChildren.push(
656
+ h('figcaption', { className: ['pcb__attribution'] }, [hText(attrText)])
657
+ );
658
+ }
659
+ }
660
+
661
+ // v2.2.0: Add pcb--split-diff class when diffMode is 'split'
662
+ if ((opts as { diffMode?: string }).diffMode === 'split') {
663
+ figClasses.push('pcb--split-diff');
664
+ }
665
+
666
+ // v2.2.0: Add pcb--annotations class when annotations are enabled
667
+ if ((opts as { annotations?: boolean }).annotations) {
668
+ figClasses.push('pcb--annotations');
669
+ }
670
+
642
671
  return h('figure', { className: figClasses }, figureChildren);
643
672
  }
644
673
 
@@ -941,6 +970,19 @@ function toLineSpans(
941
970
  // Map word-highlight spans inside this line.
942
971
  const mappedChildren = mapWordHighlights(line.children);
943
972
 
973
+ // v2.2.0: Parse and strip // [!ann: "text"] annotation notation.
974
+ let annotationText: string | null = null;
975
+ if ((opts as { annotations?: boolean }).annotations) {
976
+ const lineText = extractLineText(line);
977
+ const annMatch = lineText.match(/\[!ann:\s*"([^"]*)"\s*\]/);
978
+ if (annMatch) {
979
+ annotationText = annMatch[1];
980
+ // Strip the annotation from the line's text content
981
+ // (replace in all text nodes within the line)
982
+ stripAnnotationFromLine(line, annMatch[0]);
983
+ }
984
+ }
985
+
944
986
  // The line wrapper itself (the Shiki <span class="line ...">) becomes the
945
987
  // content of .pcb__code. Strip its classes — we've already mapped them
946
988
  // onto the outer .pcb__line wrapper, so they shouldn't also appear here.
@@ -953,7 +995,7 @@ function toLineSpans(
953
995
  children: mappedChildren,
954
996
  };
955
997
 
956
- // Build the row: [gutter-cell?, code-cell]
998
+ // Build the row: [gutter-cell?, code-cell, annotation?]
957
999
  const lineChildren: ElementContent[] = [];
958
1000
  if (resolved.lineNumbers) {
959
1001
  lineChildren.push(
@@ -964,7 +1006,18 @@ function toLineSpans(
964
1006
  h('span', { className: ['pcb__code'] }, [innerWrapper])
965
1007
  );
966
1008
 
967
- return h('span', { className: [...classes] }, lineChildren);
1009
+ // v2.2.0: Add annotation cell if this line has an annotation
1010
+ if (annotationText !== null) {
1011
+ lineChildren.push(
1012
+ h('span', { className: ['pcb__ann'], 'dataAnn': annotationText }, [hText(annotationText)])
1013
+ );
1014
+ }
1015
+
1016
+ const lineProps: Record<string, unknown> = { className: [...classes] };
1017
+ if (annotationText !== null) {
1018
+ lineProps['dataAnn'] = annotationText;
1019
+ }
1020
+ return h('span', lineProps, lineChildren);
968
1021
  });
969
1022
  }
970
1023
 
@@ -1153,6 +1206,18 @@ function hText(value: string): Text {
1153
1206
  return { type: 'text', value };
1154
1207
  }
1155
1208
 
1209
+ /** v2.2.0: Strip an annotation notation from all text nodes in a line element. */
1210
+ function stripAnnotationFromLine(line: Element, annotation: string): void {
1211
+ const walk = (node: ElementContent): void => {
1212
+ if (node.type === 'text') {
1213
+ node.value = node.value.replace(annotation, '');
1214
+ } else if (node.type === 'element') {
1215
+ for (const child of node.children) walk(child);
1216
+ }
1217
+ };
1218
+ for (const child of line.children) walk(child);
1219
+ }
1220
+
1156
1221
  /* ---------- Pattern 5: word-level diff (selective adoption from expressive-code) ---------- */
1157
1222
 
1158
1223
  /**
package/src/types.ts CHANGED
@@ -550,6 +550,65 @@ export interface PerfectCodeOptions {
550
550
  */
551
551
  devWarnings?: boolean;
552
552
 
553
+ /* ---------- v2.2.0: Diff & Comparison ---------- */
554
+
555
+ /**
556
+ * Side-by-side diff view. When enabled, adjacent `+`/`-` diff line pairs
557
+ * are rendered in a two-column layout (Before | After) with synchronized
558
+ * scrolling, instead of the default unified diff view.
559
+ *
560
+ * On mobile (viewport < 768px), the columns stack vertically.
561
+ *
562
+ * Default: `'unified'` (backward-compatible with v1.x/v2.0/v2.1)
563
+ */
564
+ diffMode?: 'unified' | 'split';
565
+
566
+ /* ---------- v2.2.0: Annotations ---------- */
567
+
568
+ /**
569
+ * Line annotations — margin notes attached to specific code lines.
570
+ *
571
+ * Use `// [!ann: "explanation"]` notation inside code to annotate a line.
572
+ * The annotation appears on the right side of the code block, connected
573
+ * to the annotated line with a subtle connector line. On mobile,
574
+ * annotations appear inline below the annotated line.
575
+ *
576
+ * Example:
577
+ * ```ts
578
+ * const attention = Q.dot(K.T) / Math.sqrt(d) // [!ann: "Scaled dot-product"]
579
+ * const weights = softmax(attention) // [!ann: "Normalized weights"]
580
+ * ```
581
+ *
582
+ * Default: `false` (opt-in)
583
+ */
584
+ annotations?: boolean;
585
+
586
+ /* ---------- v2.2.0: Attribution ---------- */
587
+
588
+ /**
589
+ * Code attribution — structured metadata for code blocks.
590
+ *
591
+ * When enabled, the plugin parses `author`, `year`, and `source` attributes
592
+ * from the fence meta string and renders them as a footer below the code block:
593
+ *
594
+ * ````markdown
595
+ * ```ts title="perceptron.ts" author="Rosenblatt" year="1958" source="Principles of Neurodynamics"
596
+ * const output = stepFunction(inputs.dot(weights))
597
+ * ```
598
+ * ````
599
+ *
600
+ * Renders:
601
+ * ```
602
+ * ┌─ perceptron.ts ──────────────────┐
603
+ * │ const output = stepFunction(...) │
604
+ * └───────────────────────────────────┘
605
+ * Rosenblatt (1958). Principles of Neurodynamics.
606
+ * ```
607
+ *
608
+ * Default: `false` (opt-in; when disabled, author/year/source meta is silently ignored)
609
+ */
610
+ attribution?: boolean;
611
+
553
612
  /* ---------- Inline code (legacy cosmetic option) ---------- */
554
613
  /** Also style inline `code` cosmetically (no tokenization). Default: false */
555
614
  inline?: boolean;
@@ -574,6 +633,10 @@ export interface ParsedMeta {
574
633
  wordHighlights: { text: string; range?: [number, number]; id?: string }[];
575
634
  lineNumbersStart: number | null; // from ln{N} or showLineNumbers{N}
576
635
  collapseRanges: { from: number; to: number }[]; // from collapse="5-12,20-30"
636
+ // v2.2.0: Attribution metadata
637
+ author: string | null; // from author="..."
638
+ year: string | null; // from year="..."
639
+ source: string | null; // from source="..."
577
640
  flags: {
578
641
  wrap: boolean | null;
579
642
  lineNumbers: boolean | null;