@next_term/core 0.0.1-next.0 → 0.0.1-next.11
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/LICENSE +21 -0
- package/README.md +103 -0
- package/dist/buffer.d.ts +14 -3
- package/dist/buffer.d.ts.map +1 -1
- package/dist/buffer.js +35 -8
- package/dist/buffer.js.map +1 -1
- package/dist/cell-grid.d.ts +5 -1
- package/dist/cell-grid.d.ts.map +1 -1
- package/dist/cell-grid.js +29 -6
- package/dist/cell-grid.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/parser/index.d.ts.map +1 -1
- package/dist/parser/index.js +88 -5
- package/dist/parser/index.js.map +1 -1
- package/dist/wcwidth.d.ts +24 -0
- package/dist/wcwidth.d.ts.map +1 -0
- package/dist/wcwidth.js +603 -0
- package/dist/wcwidth.js.map +1 -0
- package/package.json +5 -5
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Rahul Pandita
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# @next_term/core
|
|
2
|
+
|
|
3
|
+
Low-level terminal core: cell grid, VT parser, and buffer management. This package has no DOM dependencies and can run in any JavaScript environment (browser, Node, worker).
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @next_term/core
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
Most users should use `@next_term/react` or `@next_term/web` instead. This package is for building custom terminal implementations or working directly with the VT parser.
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
import { BufferSet, VTParser, CellGrid, DEFAULT_THEME } from "@next_term/core";
|
|
17
|
+
|
|
18
|
+
// Create a buffer set (normal + alternate screen)
|
|
19
|
+
const bufferSet = new BufferSet(80, 24, 1000); // cols, rows, scrollback
|
|
20
|
+
|
|
21
|
+
// Create a VT parser
|
|
22
|
+
const parser = new VTParser(bufferSet);
|
|
23
|
+
|
|
24
|
+
// Parse terminal data
|
|
25
|
+
parser.write(new Uint8Array([0x1b, 0x5b, 0x31, 0x6d])); // ESC[1m (bold)
|
|
26
|
+
parser.write(new TextEncoder().encode("Hello, world!\r\n"));
|
|
27
|
+
|
|
28
|
+
// Read cell data
|
|
29
|
+
const grid = bufferSet.active.grid;
|
|
30
|
+
const codepoint = grid.getCodepoint(0, 0); // 'H' = 72
|
|
31
|
+
const fgIndex = grid.getFgIndex(0, 0); // foreground color index
|
|
32
|
+
const attrs = grid.getAttrs(0, 0); // bold, italic, underline, etc.
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Cell Format
|
|
36
|
+
|
|
37
|
+
Each cell is packed into 2 x Uint32 (8 bytes):
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
Word 0: [0-20] codepoint (21 bits — full Unicode)
|
|
41
|
+
[21] fg-is-RGB flag
|
|
42
|
+
[22] bg-is-RGB flag
|
|
43
|
+
[23-30] fg color index (0-255)
|
|
44
|
+
[31] reserved
|
|
45
|
+
|
|
46
|
+
Word 1: [0-7] bg color index (0-255)
|
|
47
|
+
[8] bold
|
|
48
|
+
[9] italic
|
|
49
|
+
[10] underline
|
|
50
|
+
[11] strikethrough
|
|
51
|
+
[12-13] underline style
|
|
52
|
+
[14] inverse
|
|
53
|
+
[15] wide character flag (ATTR_WIDE — set on first cell of a 2-column wide char)
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Wide characters (CJK, Hangul, emoji, fullwidth forms) set `ATTR_WIDE` on the first cell and write a spacer cell (codepoint 0) in the next column. Renderers skip spacer cells and draw wide chars at 2× cell width.
|
|
57
|
+
|
|
58
|
+
## Wide Character Support
|
|
59
|
+
|
|
60
|
+
The VT parser handles Unicode character widths automatically:
|
|
61
|
+
|
|
62
|
+
- **Wide chars** (CJK, Hangul, Hiragana/Katakana, emoji, fullwidth forms): occupy 2 columns, set `ATTR_WIDE` flag
|
|
63
|
+
- **Combining marks** (U+0300+, variation selectors, ZWJ): absorbed without advancing the cursor
|
|
64
|
+
- **Normal chars**: occupy 1 column as usual
|
|
65
|
+
|
|
66
|
+
The `wcwidth` and `isCombining` utilities are exposed for custom integrations:
|
|
67
|
+
|
|
68
|
+
```ts
|
|
69
|
+
import { wcwidth, isCombining } from '@next_term/core';
|
|
70
|
+
|
|
71
|
+
wcwidth(0x4e2d); // 2 — '中' (CJK)
|
|
72
|
+
wcwidth(0x1f600); // 2 — '😀' (emoji)
|
|
73
|
+
wcwidth(0xff41); // 2 — fullwidth 'a'
|
|
74
|
+
wcwidth(0x0041); // 1 — 'A'
|
|
75
|
+
wcwidth(0x0300); // 0 — combining grave accent
|
|
76
|
+
|
|
77
|
+
isCombining(0x0300); // true — no cursor advance
|
|
78
|
+
isCombining(0x200d); // true — ZWJ
|
|
79
|
+
isCombining(0x0041); // false
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## SharedArrayBuffer
|
|
83
|
+
|
|
84
|
+
When `SharedArrayBuffer` is available (requires cross-origin isolation), `CellGrid` automatically uses shared memory. This enables zero-copy sharing between the main thread and Web Workers.
|
|
85
|
+
|
|
86
|
+
Dirty row tracking uses `Int32Array` with `Atomics` (not `Uint8Array` -- Atomics requires >= 32-bit typed arrays).
|
|
87
|
+
|
|
88
|
+
## Exports
|
|
89
|
+
|
|
90
|
+
```ts
|
|
91
|
+
export { CellGrid, CELL_SIZE, DEFAULT_CELL_W0, DEFAULT_CELL_W1 } from "@next_term/core";
|
|
92
|
+
export { BufferSet } from "@next_term/core";
|
|
93
|
+
export { VTParser } from "@next_term/core";
|
|
94
|
+
export { DEFAULT_THEME } from "@next_term/core";
|
|
95
|
+
export { extractText, normalizeSelection } from "@next_term/core";
|
|
96
|
+
export { wcwidth, isCombining } from "@next_term/core";
|
|
97
|
+
|
|
98
|
+
export type { Theme, CursorState, TerminalOptions, SelectionRange } from "@next_term/core";
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## License
|
|
102
|
+
|
|
103
|
+
MIT
|
package/dist/buffer.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export declare class Buffer {
|
|
|
12
12
|
/** Custom tab stops (column indices). */
|
|
13
13
|
tabStops: Set<number>;
|
|
14
14
|
private savedCursor;
|
|
15
|
-
constructor(cols: number, rows: number);
|
|
15
|
+
constructor(cols: number, rows: number, existingGrid?: CellGrid);
|
|
16
16
|
private resetTabStops;
|
|
17
17
|
nextTabStop(col: number): number;
|
|
18
18
|
prevTabStop(col: number): number;
|
|
@@ -34,12 +34,23 @@ export declare class BufferSet {
|
|
|
34
34
|
/** Scrollback lines for the normal buffer (array of Uint32Array). */
|
|
35
35
|
scrollback: Uint32Array[];
|
|
36
36
|
readonly maxScrollback: number;
|
|
37
|
-
constructor(cols: number, rows: number, maxScrollback?: number);
|
|
37
|
+
constructor(cols: number, rows: number, maxScrollback?: number, sharedBuffer?: SharedArrayBuffer, sharedAltBuffer?: SharedArrayBuffer);
|
|
38
38
|
get isAlternate(): boolean;
|
|
39
39
|
activateAlternate(): void;
|
|
40
40
|
activateNormal(): void;
|
|
41
|
-
/**
|
|
41
|
+
/**
|
|
42
|
+
* Push a line into scrollback (for the normal buffer).
|
|
43
|
+
*
|
|
44
|
+
* IMPORTANT: push() must happen before shift() — borrowRowBuffer()
|
|
45
|
+
* returns scrollback[0] which the caller fills before calling this.
|
|
46
|
+
* Reversing the order would evict the buffer before it's appended.
|
|
47
|
+
*/
|
|
42
48
|
pushScrollback(line: Uint32Array): void;
|
|
49
|
+
/**
|
|
50
|
+
* Get a reusable row buffer or allocate a new one.
|
|
51
|
+
* Reuses the buffer that's about to be evicted from scrollback.
|
|
52
|
+
*/
|
|
53
|
+
borrowRowBuffer(size: number): Uint32Array;
|
|
43
54
|
/** Scroll the active buffer up, pushing the top line into scrollback if normal buffer. */
|
|
44
55
|
scrollUpWithHistory(): void;
|
|
45
56
|
}
|
package/dist/buffer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["../src/buffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,qBAAa,MAAM;aAcC,IAAI,EAAE,MAAM;aACZ,IAAI,EAAE,MAAM;IAd9B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAK;IAC9B,yCAAyC;IACzC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAGtB,OAAO,CAAC,WAAW,CAA4B;gBAG7B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["../src/buffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,qBAAa,MAAM;aAcC,IAAI,EAAE,MAAM;aACZ,IAAI,EAAE,MAAM;IAd9B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAK;IAC9B,yCAAyC;IACzC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAGtB,OAAO,CAAC,WAAW,CAA4B;gBAG7B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EAC5B,YAAY,CAAC,EAAE,QAAQ;IAUzB,OAAO,CAAC,aAAa;IAOrB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAOhC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAOhC,UAAU,IAAI,IAAI;IAIlB,aAAa,IAAI,IAAI;IAMrB,+CAA+C;IAC/C,QAAQ,IAAI,IAAI;IAmBhB;;OAEG;IACH,UAAU,IAAI,IAAI;CAkBnB;AAED,qBAAa,SAAS;aAUF,IAAI,EAAE,MAAM;aACZ,IAAI,EAAE,MAAM;IAV9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IAEf,qEAAqE;IACrE,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAGb,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EAC5B,aAAa,SAAO,EACpB,YAAY,CAAC,EAAE,iBAAiB,EAChC,eAAe,CAAC,EAAE,iBAAiB;IAarC,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,iBAAiB,IAAI,IAAI;IASzB,cAAc,IAAI,IAAI;IAKtB;;;;;;OAMG;IACH,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAOvC;;;OAGG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW;IAU1C,0FAA0F;IAC1F,mBAAmB,IAAI,IAAI;CAU5B"}
|
package/dist/buffer.js
CHANGED
|
@@ -12,10 +12,10 @@ export class Buffer {
|
|
|
12
12
|
tabStops;
|
|
13
13
|
// Saved cursor for DECSC / DECRC
|
|
14
14
|
savedCursor = null;
|
|
15
|
-
constructor(cols, rows) {
|
|
15
|
+
constructor(cols, rows, existingGrid) {
|
|
16
16
|
this.cols = cols;
|
|
17
17
|
this.rows = rows;
|
|
18
|
-
this.grid = new CellGrid(cols, rows);
|
|
18
|
+
this.grid = existingGrid ?? new CellGrid(cols, rows);
|
|
19
19
|
this.cursor = { row: 0, col: 0, visible: true, style: "block", wrapPending: false };
|
|
20
20
|
this.scrollTop = 0;
|
|
21
21
|
this.scrollBottom = rows - 1;
|
|
@@ -102,11 +102,15 @@ export class BufferSet {
|
|
|
102
102
|
/** Scrollback lines for the normal buffer (array of Uint32Array). */
|
|
103
103
|
scrollback;
|
|
104
104
|
maxScrollback;
|
|
105
|
-
constructor(cols, rows, maxScrollback = 5000) {
|
|
105
|
+
constructor(cols, rows, maxScrollback = 5000, sharedBuffer, sharedAltBuffer) {
|
|
106
106
|
this.cols = cols;
|
|
107
107
|
this.rows = rows;
|
|
108
|
-
this.normal =
|
|
109
|
-
|
|
108
|
+
this.normal = sharedBuffer
|
|
109
|
+
? new Buffer(cols, rows, new CellGrid(cols, rows, sharedBuffer))
|
|
110
|
+
: new Buffer(cols, rows);
|
|
111
|
+
this.alternate = sharedAltBuffer
|
|
112
|
+
? new Buffer(cols, rows, new CellGrid(cols, rows, sharedAltBuffer))
|
|
113
|
+
: new Buffer(cols, rows);
|
|
110
114
|
this.active = this.normal;
|
|
111
115
|
this.scrollback = [];
|
|
112
116
|
this.maxScrollback = maxScrollback;
|
|
@@ -128,17 +132,40 @@ export class BufferSet {
|
|
|
128
132
|
return;
|
|
129
133
|
this.active = this.normal;
|
|
130
134
|
}
|
|
131
|
-
/**
|
|
135
|
+
/**
|
|
136
|
+
* Push a line into scrollback (for the normal buffer).
|
|
137
|
+
*
|
|
138
|
+
* IMPORTANT: push() must happen before shift() — borrowRowBuffer()
|
|
139
|
+
* returns scrollback[0] which the caller fills before calling this.
|
|
140
|
+
* Reversing the order would evict the buffer before it's appended.
|
|
141
|
+
*/
|
|
132
142
|
pushScrollback(line) {
|
|
133
143
|
this.scrollback.push(line);
|
|
134
|
-
|
|
144
|
+
if (this.scrollback.length > this.maxScrollback) {
|
|
135
145
|
this.scrollback.shift();
|
|
136
146
|
}
|
|
137
147
|
}
|
|
148
|
+
/**
|
|
149
|
+
* Get a reusable row buffer or allocate a new one.
|
|
150
|
+
* Reuses the buffer that's about to be evicted from scrollback.
|
|
151
|
+
*/
|
|
152
|
+
borrowRowBuffer(size) {
|
|
153
|
+
if (this.scrollback.length >= this.maxScrollback && this.maxScrollback > 0) {
|
|
154
|
+
const existing = this.scrollback[0];
|
|
155
|
+
if (existing && existing.length >= size) {
|
|
156
|
+
return existing;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return new Uint32Array(size);
|
|
160
|
+
}
|
|
138
161
|
/** Scroll the active buffer up, pushing the top line into scrollback if normal buffer. */
|
|
139
162
|
scrollUpWithHistory() {
|
|
140
163
|
if (this.maxScrollback > 0 && this.active === this.normal && this.active.scrollTop === 0) {
|
|
141
|
-
this.
|
|
164
|
+
const grid = this.active.grid;
|
|
165
|
+
const rowSize = grid.cols * CELL_SIZE;
|
|
166
|
+
const dest = this.borrowRowBuffer(rowSize);
|
|
167
|
+
grid.copyRowInto(0, dest);
|
|
168
|
+
this.pushScrollback(dest);
|
|
142
169
|
}
|
|
143
170
|
this.active.scrollUp();
|
|
144
171
|
}
|
package/dist/buffer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffer.js","sourceRoot":"","sources":["../src/buffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAGrD,MAAM,OAAO,MAAM;IAcC;IACA;IAdT,IAAI,CAAW;IACxB,MAAM,CAAc;IACpB,SAAS,CAAS;IAClB,YAAY,CAAS;IACrB,iCAAiC;IAChB,QAAQ,GAAG,CAAC,CAAC;IAC9B,yCAAyC;IACzC,QAAQ,CAAc;IAEtB,iCAAiC;IACzB,WAAW,GAAuB,IAAI,CAAC;IAE/C,YACkB,IAAY,EACZ,IAAY;
|
|
1
|
+
{"version":3,"file":"buffer.js","sourceRoot":"","sources":["../src/buffer.ts"],"names":[],"mappings":"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"}
|
package/dist/cell-grid.d.ts
CHANGED
|
@@ -26,7 +26,7 @@ export declare class CellGrid {
|
|
|
26
26
|
* instead of copying cell data, making full-screen scroll O(1).
|
|
27
27
|
*/
|
|
28
28
|
readonly rowOffsetData: Int32Array;
|
|
29
|
-
constructor(cols: number, rows: number);
|
|
29
|
+
constructor(cols: number, rows: number, existingBuffer?: SharedArrayBuffer);
|
|
30
30
|
/** Map logical row to physical row in the circular buffer. */
|
|
31
31
|
physicalRow(row: number): number;
|
|
32
32
|
/** Get the data array offset for the start of a logical row. */
|
|
@@ -47,6 +47,8 @@ export declare class CellGrid {
|
|
|
47
47
|
isStrikethrough(row: number, col: number): boolean;
|
|
48
48
|
isInverse(row: number, col: number): boolean;
|
|
49
49
|
isWide(row: number, col: number): boolean;
|
|
50
|
+
/** True if this cell is the right half of a wide character (spacer with codepoint 0). */
|
|
51
|
+
isSpacerCell(row: number, col: number): boolean;
|
|
50
52
|
setCell(row: number, col: number, codepoint: number, fgIndex: number, bgIndex: number, attrs: number, fgIsRGB?: boolean, bgIsRGB?: boolean): void;
|
|
51
53
|
markDirty(row: number): void;
|
|
52
54
|
/** Mark a contiguous range of rows [from..to] dirty. */
|
|
@@ -57,6 +59,8 @@ export declare class CellGrid {
|
|
|
57
59
|
clear(): void;
|
|
58
60
|
/** Copy a logical row of cell data into a new Uint32Array. */
|
|
59
61
|
copyRow(row: number): Uint32Array;
|
|
62
|
+
/** Copy a logical row into an existing buffer (avoids allocation). */
|
|
63
|
+
copyRowInto(row: number, dest: Uint32Array): void;
|
|
60
64
|
/** Overwrite a logical row from a previously copied Uint32Array. */
|
|
61
65
|
pasteRow(row: number, src: Uint32Array): void;
|
|
62
66
|
/** Fill a logical row with spaces and default attributes. */
|
package/dist/cell-grid.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cell-grid.d.ts","sourceRoot":"","sources":["../src/cell-grid.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,SAAS,IAAI,CAAC;AAE3B,mEAAmE;AACnE,eAAO,MAAM,eAAe,QAAmB,CAAC;AAChD,sDAAsD;AACtD,eAAO,MAAM,eAAe,IAAI,CAAC;AAEjC,mFAAmF;AACnF,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,qBAAa,QAAQ;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;IACzD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAE3C;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAEhC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;gBAEvB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"cell-grid.d.ts","sourceRoot":"","sources":["../src/cell-grid.ts"],"names":[],"mappings":"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"}
|
package/dist/cell-grid.js
CHANGED
|
@@ -35,18 +35,26 @@ export class CellGrid {
|
|
|
35
35
|
* instead of copying cell data, making full-screen scroll O(1).
|
|
36
36
|
*/
|
|
37
37
|
rowOffsetData;
|
|
38
|
-
constructor(cols, rows) {
|
|
38
|
+
constructor(cols, rows, existingBuffer) {
|
|
39
39
|
this.cols = cols;
|
|
40
40
|
this.rows = rows;
|
|
41
|
-
this.isShared = SAB_AVAILABLE;
|
|
42
41
|
const cellBytes = cols * rows * CELL_SIZE * 4;
|
|
43
42
|
const dirtyBytes = rows * 4; // Int32Array: 4 bytes per element
|
|
44
43
|
const rgbBytes = 512 * 4;
|
|
45
44
|
const cursorBytes = 4 * 4; // 4 x Int32: row, col, visible, style
|
|
46
45
|
const offsetBytes = 1 * 4; // 1 x Int32: row offset for circular buffer
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
if (existingBuffer) {
|
|
47
|
+
// Create views over an existing SharedArrayBuffer (used by workers
|
|
48
|
+
// to share the same memory as the main thread).
|
|
49
|
+
this.buffer = existingBuffer;
|
|
50
|
+
this.isShared = true;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
const totalBytes = cellBytes + dirtyBytes + rgbBytes + cursorBytes + offsetBytes;
|
|
54
|
+
const BufferType = SAB_AVAILABLE ? SharedArrayBuffer : ArrayBuffer;
|
|
55
|
+
this.buffer = new BufferType(totalBytes);
|
|
56
|
+
this.isShared = SAB_AVAILABLE;
|
|
57
|
+
}
|
|
50
58
|
this.data = new Uint32Array(this.buffer, 0, cols * rows * CELL_SIZE);
|
|
51
59
|
this.dirtyRows = new Int32Array(this.buffer, cellBytes, rows);
|
|
52
60
|
this.rgbColors = new Uint32Array(this.buffer, cellBytes + dirtyBytes, 512);
|
|
@@ -58,7 +66,11 @@ export class CellGrid {
|
|
|
58
66
|
this._templateRow[c * CELL_SIZE] = DEFAULT_CELL_W0;
|
|
59
67
|
// [c * CELL_SIZE + 1] is already DEFAULT_CELL_W1 (0)
|
|
60
68
|
}
|
|
61
|
-
|
|
69
|
+
// Only clear when creating a fresh buffer — an existing buffer
|
|
70
|
+
// already contains valid data from the main thread.
|
|
71
|
+
if (!existingBuffer) {
|
|
72
|
+
this.clear();
|
|
73
|
+
}
|
|
62
74
|
}
|
|
63
75
|
/** Map logical row to physical row in the circular buffer. */
|
|
64
76
|
physicalRow(row) {
|
|
@@ -117,6 +129,10 @@ export class CellGrid {
|
|
|
117
129
|
isWide(row, col) {
|
|
118
130
|
return (this.data[this.rowStart(row) + col * CELL_SIZE + 1] & (1 << 15)) !== 0;
|
|
119
131
|
}
|
|
132
|
+
/** True if this cell is the right half of a wide character (spacer with codepoint 0). */
|
|
133
|
+
isSpacerCell(row, col) {
|
|
134
|
+
return col > 0 && this.getCodepoint(row, col) === 0 && this.isWide(row, col - 1);
|
|
135
|
+
}
|
|
120
136
|
setCell(row, col, codepoint, fgIndex, bgIndex, attrs, fgIsRGB = false, bgIsRGB = false) {
|
|
121
137
|
const idx = this.rowStart(row) + col * CELL_SIZE;
|
|
122
138
|
this.data[idx] =
|
|
@@ -176,6 +192,13 @@ export class CellGrid {
|
|
|
176
192
|
const start = this.rowStart(row);
|
|
177
193
|
return new Uint32Array(this.data.slice(start, start + this.cols * CELL_SIZE));
|
|
178
194
|
}
|
|
195
|
+
/** Copy a logical row into an existing buffer (avoids allocation). */
|
|
196
|
+
copyRowInto(row, dest) {
|
|
197
|
+
const start = this.rowStart(row);
|
|
198
|
+
const len = this.cols * CELL_SIZE;
|
|
199
|
+
for (let i = 0; i < len; i++)
|
|
200
|
+
dest[i] = this.data[start + i];
|
|
201
|
+
}
|
|
179
202
|
/** Overwrite a logical row from a previously copied Uint32Array. */
|
|
180
203
|
pasteRow(row, src) {
|
|
181
204
|
const start = this.rowStart(row);
|
package/dist/cell-grid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cell-grid.js","sourceRoot":"","sources":["../src/cell-grid.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cell-grid.js","sourceRoot":"","sources":["../src/cell-grid.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -8,4 +8,5 @@ export { VTParser } from "./parser/index.js";
|
|
|
8
8
|
export { Action, State, TABLE, unpackAction, unpackState } from "./parser/states.js";
|
|
9
9
|
export type { CursorState, SelectionState, TerminalOptions, Theme } from "./types.js";
|
|
10
10
|
export { DEFAULT_THEME, DirtyState } from "./types.js";
|
|
11
|
+
export { isCombining, wcwidth } from "./wcwidth.js";
|
|
11
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACL,SAAS,EACT,QAAQ,EACR,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,EACX,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACrF,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACL,SAAS,EACT,QAAQ,EACR,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,EACX,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACrF,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -4,4 +4,5 @@ export { GestureHandler, GestureState } from "./gesture-handler.js";
|
|
|
4
4
|
export { VTParser } from "./parser/index.js";
|
|
5
5
|
export { Action, State, TABLE, unpackAction, unpackState } from "./parser/states.js";
|
|
6
6
|
export { DEFAULT_THEME, DirtyState } from "./types.js";
|
|
7
|
+
export { isCombining, wcwidth } from "./wcwidth.js";
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EACL,SAAS,EACT,QAAQ,EACR,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,EACX,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAErF,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EACL,SAAS,EACT,QAAQ,EACR,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,EACX,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAErF,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAe/C,+BAA+B;AAC/B,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;AACtE,6BAA6B;AAC7B,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,KAAK,CAAC;AAE9C,qBAAa,QAAQ;IACnB,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IAGtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAM;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,QAAQ,CAAS;IAOzB,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,UAAU,CAAK;IAGvB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,KAAK,CAAK;IAGlB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAQ;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2C;IACpE,OAAO,CAAC,SAAS,CAAK;IAGtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAQ;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2C;IACpE,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,QAAQ,CAAK;IAMrB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAQ;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA4C;IACtE,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,SAAS,CAAK;IAGtB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,aAAa,CAAK;IAG1B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,UAAU,CAAS;IAG3B,qBAAqB,UAAS;IAC9B,iBAAiB,UAAS;IAC1B,kBAAkB,UAAS;IAC3B,YAAY,UAAS;IACrB,aAAa,EAAE,aAAa,CAAU;IACtC,aAAa,EAAE,aAAa,CAAa;IACzC,eAAe,UAAS;IAGxB,UAAU,SAAK;IACf,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgB;IAGhD,OAAO,CAAC,oBAAoB,CAAK;IAGjC,OAAO,CAAC,cAAc,CAAoB;IAG1C,OAAO,CAAC,UAAU,CAAgB;IAGlC,OAAO,CAAC,aAAa,CAA0C;IAI/D,OAAO,CAAC,OAAO,CAAmE;IAIlF,OAAO,CAAC,MAAM,CAA+D;IAG7E,OAAO,CAAC,MAAM,CAAwC;IAItD,OAAO,CAAC,OAAO,CAAgD;IAG/D,OAAO,CAAC,OAAO,CAAgD;IAG/D,OAAO,CAAC,OAAO,CAAgD;IAI/D,OAAO,CAAC,QAAQ,CAA0C;IAK1D,OAAO,CAAC,MAAM,CAAwD;IAOtE,OAAO,CAAC,QAAQ,CAA0D;IAI1E,OAAO,CAAC,YAAY,CAA4C;IAOhE,OAAO,CAAC,KAAK,CAEG;IAMhB,OAAO,CAAC,SAAS,CAA6C;IAG9D,OAAO,CAAC,YAAY,CAA0C;gBAElD,SAAS,EAAE,SAAS;IAIhC,yDAAyD;IACzD,sBAAsB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIzD;;;OAGG;IACH,gBAAgB,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI;IAI5E;;;;OAIG;IACH,eAAe,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI;IAIvE;;OAEG;IACH,eAAe,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIhD;;OAEG;IACH,gBAAgB,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI;IAIzD;;OAEG;IACH,gBAAgB,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI;IAIzD;;OAEG;IACH,gBAAgB,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI;IAIzD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIpD;;;OAGG;IACH,eAAe,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIhE;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIpE;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAI1D;;;;;;OAMG;IACH,cAAc,CACZ,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,MAAM,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAC7F,IAAI;IAIP;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIxD,kFAAkF;IAClF,qBAAqB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIxD,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,OAAO,KAAK,GAAG,GAEd;IAED,OAAO,KAAK,IAAI,GAEf;IAED,oDAAoD;IACpD,WAAW,IAAI,OAAO;IAItB,uDAAuD;IACvD,YAAY,IAAI,UAAU,GAAG,IAAI;IAIjC,sCAAsC;IACtC,KAAK,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAugB7B,OAAO,CAAC,cAAc;IA8FtB,OAAO,CAAC,OAAO;IA8Bf,OAAO,CAAC,QAAQ;IAShB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IA0BrB,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,WAAW;IAuOnB,OAAO,CAAC,UAAU;IA2BlB,OAAO,CAAC,MAAM;IA4Ed,kCAAkC;IAClC,OAAO,CAAC,OAAO;IAQf,oCAAoC;IACpC,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,WAAW;IA+DnB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,WAAW;IAsOnB,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,cAAc;IAgCtB,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,GAAG;IAqIX,6DAA6D;IAC7D,OAAO,CAAC,aAAa;IAuCrB,OAAO,CAAC,SAAS;IA0BjB,OAAO,CAAC,SAAS;CAclB"}
|