@tooee/marks 0.12.0 → 0.14.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/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mark-set-builder.d.ts.map +1 -1
- package/dist/mark-set-builder.js.map +1 -1
- package/dist/mark-set.d.ts.map +1 -1
- package/dist/mark-set.js.map +1 -1
- package/dist/mark-state.d.ts.map +1 -1
- package/dist/mark-state.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +4 -0
- package/src/mark-set-builder.ts +3 -0
- package/src/mark-set.ts +21 -0
- package/src/mark-state.ts +9 -0
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEzF,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAIxC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAIvD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mark-set-builder.d.ts","sourceRoot":"","sources":["../src/mark-set-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEhE,qBAAa,cAAc;;IAGzB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"mark-set-builder.d.ts","sourceRoot":"","sources":["../src/mark-set-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEhE,qBAAa,cAAc;;IAGzB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAQjE;IAED,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAQ1F;IAED,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAIxB;IAED,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAElD;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mark-set-builder.js","sourceRoot":"","sources":["../src/mark-set-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,MAAM,OAAO,cAAc;IAChB,MAAM,GAAW,EAAE,CAAC;IAE7B,OAAO,CAAC,IAAY,EAAE,KAAgB,EAAE,IAAmB;QACzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACf,IAAI;YACJ,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;YACvC,KAAK;SACN,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"mark-set-builder.js","sourceRoot":"","sources":["../src/mark-set-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,MAAM,OAAO,cAAc;IAChB,MAAM,GAAW,EAAE,CAAC;IAE7B,OAAO,CAAC,IAAY,EAAE,KAAgB,EAAE,IAAmB;QACzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACf,IAAI;YACJ,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;YACvC,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,IAAkB,EAAE,EAAgB,EAAE,KAAgB,EAAE,IAAmB;QAClF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACf,IAAI;YACJ,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YACnB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,IAAU;QAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,SAAiB,EAAE,QAAgB;QACvC,OAAO,IAAI,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC;CACF"}
|
package/dist/mark-set.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mark-set.d.ts","sourceRoot":"","sources":["../src/mark-set.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,iFAAiF;AACjF,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACtC;
|
|
1
|
+
{"version":3,"file":"mark-set.d.ts","sourceRoot":"","sources":["../src/mark-set.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,iFAAiF;AACjF,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACtC;AAYD,qBAAa,OAAO;;IAClB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAK1B,YAAY,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAiB7D;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,CA8ChC;IAED,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,CAe7C;IAEA,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,CA2BlE;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAElC;CACF"}
|
package/dist/mark-set.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mark-set.js","sourceRoot":"","sources":["../src/mark-set.ts"],"names":[],"mappings":"AAUA,MAAM,cAAc,GAAG,SAAS,cAAc,CAAC,IAAU;IACvD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"mark-set.js","sourceRoot":"","sources":["../src/mark-set.ts"],"names":[],"mappings":"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"}
|
package/dist/mark-state.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mark-state.d.ts","sourceRoot":"","sources":["../src/mark-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAAE,CAAC;IACtC,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,GAAG,IAAI,CAAC;IACzD,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,CAAC;CACpD;
|
|
1
|
+
{"version":3,"file":"mark-state.d.ts","sourceRoot":"","sources":["../src/mark-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAAE,CAAC;IACtC,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,GAAG,IAAI,CAAC;IACzD,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,CAAC;CACpD;AA0CD,eAAO,MAAM,eAAe,SAAkC,OAAO,EAAE,KAAG,SAEzE,CAAC;AAEF,eAAO,MAAM,eAAe,UACnB,SAAS,aACL,MAAM,UACT,OAAO,GAAG,IAAI,KACrB,SAYF,CAAC"}
|
package/dist/mark-state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mark-state.js","sourceRoot":"","sources":["../src/mark-state.ts"],"names":[],"mappings":"AAWA,MAAM,aAAa,GAAG,SAAS,aAAa,CAAC,IAAwB;IACnE,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAEtD,OAAO;QACL,oBAAoB,CAAC,IAAY;YAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"mark-state.js","sourceRoot":"","sources":["../src/mark-state.ts"],"names":[],"mappings":"AAWA,MAAM,aAAa,GAAG,SAAS,aAAa,CAAC,IAAwB;IACnE,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAEtD,OAAO;QACL,oBAAoB,CAAC,IAAY;YAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAErC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC;QACrC,CAAC;QACD,MAAM,CAAC,SAAiB;YACtB,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;QAC3D,CAAC;QACD,WAAW,CAAC,IAAY;YACtB,MAAM,OAAO,GAAW,EAAE,CAAC;YAE3B,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,OAAO,CAAC,IAAI,CAAC;wBACX,GAAG,IAAI;wBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ;qBACxC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC;YAE9D,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,UAAU;QACV,IAAI,EAAE,UAAU;KACjB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,eAAe,CAAC,IAAe;IACrE,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,eAAe,CACrD,KAAgB,EAChB,SAAiB,EACjB,MAAsB;IAEtB,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,iCAAiC,SAAS,WAAW,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;IAC5F,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IAErE,IAAI,MAAM,EAAE,CAAC;QACX,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC,CAAC"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
export type { MarkPosition, MarkRange, MarkStyle, Mark, MarkPriority } from "./types.js";
|
|
2
|
+
|
|
2
3
|
export { MarkPriorities } from "./types.js";
|
|
3
4
|
|
|
4
5
|
export { MarkSet } from "./mark-set.js";
|
|
6
|
+
|
|
5
7
|
export type { RowDecoration } from "./mark-set.js";
|
|
8
|
+
|
|
6
9
|
export { MarkSetBuilder } from "./mark-set-builder.js";
|
|
7
10
|
|
|
8
11
|
export type { MarkState } from "./mark-state.js";
|
|
12
|
+
|
|
9
13
|
export { createMarkState, updateMarkState } from "./mark-state.js";
|
package/src/mark-set-builder.ts
CHANGED
|
@@ -10,6 +10,7 @@ export class MarkSetBuilder {
|
|
|
10
10
|
range: { from: { line }, to: { line } },
|
|
11
11
|
style,
|
|
12
12
|
});
|
|
13
|
+
|
|
13
14
|
return this;
|
|
14
15
|
}
|
|
15
16
|
|
|
@@ -19,11 +20,13 @@ export class MarkSetBuilder {
|
|
|
19
20
|
range: { from, to },
|
|
20
21
|
style,
|
|
21
22
|
});
|
|
23
|
+
|
|
22
24
|
return this;
|
|
23
25
|
}
|
|
24
26
|
|
|
25
27
|
addMark(mark: Mark): this {
|
|
26
28
|
this.#marks.push(mark);
|
|
29
|
+
|
|
27
30
|
return this;
|
|
28
31
|
}
|
|
29
32
|
|
package/src/mark-set.ts
CHANGED
|
@@ -14,6 +14,7 @@ const deepFreezeMark = function deepFreezeMark(mark: Mark): Mark {
|
|
|
14
14
|
Object.freeze(mark.range);
|
|
15
15
|
Object.freeze(mark.style);
|
|
16
16
|
Object.freeze(mark);
|
|
17
|
+
|
|
17
18
|
return mark;
|
|
18
19
|
};
|
|
19
20
|
|
|
@@ -27,15 +28,19 @@ export class MarkSet {
|
|
|
27
28
|
constructor(namespace: string, priority: number, marks: Mark[]) {
|
|
28
29
|
this.namespace = namespace;
|
|
29
30
|
this.priority = priority;
|
|
31
|
+
|
|
30
32
|
const sorted = [...marks]
|
|
31
33
|
.toSorted((a, b) => a.range.from.line - b.range.from.line)
|
|
32
34
|
.map(deepFreezeMark);
|
|
35
|
+
|
|
33
36
|
this.#marks = sorted;
|
|
34
37
|
const maxEnd: number[] = [];
|
|
38
|
+
|
|
35
39
|
for (let i = 0; i < sorted.length; i += 1) {
|
|
36
40
|
const end = sorted[i].range.to.line;
|
|
37
41
|
maxEnd[i] = i === 0 ? end : Math.max(maxEnd[i - 1], end);
|
|
38
42
|
}
|
|
43
|
+
|
|
39
44
|
this.#maxEnd = maxEnd;
|
|
40
45
|
}
|
|
41
46
|
|
|
@@ -48,70 +53,86 @@ export class MarkSet {
|
|
|
48
53
|
// Binary search for the first mark whose from.line >= line
|
|
49
54
|
let lo = 0;
|
|
50
55
|
let hi = this.#marks.length;
|
|
56
|
+
|
|
51
57
|
while (lo < hi) {
|
|
52
58
|
// `no-bitwise` is a typo-avoidance rule (`&` vs `&&`). An unsigned shift is the
|
|
53
59
|
// canonical overflow-safe binary-search midpoint and is intentional here.
|
|
54
60
|
// oxlint-disable-next-line no-bitwise -- deliberate binary-search midpoint
|
|
55
61
|
const mid = (lo + hi) >>> 1;
|
|
62
|
+
|
|
56
63
|
if (this.#marks[mid].range.from.line < line) {
|
|
57
64
|
lo = mid + 1;
|
|
58
65
|
} else {
|
|
59
66
|
hi = mid;
|
|
60
67
|
}
|
|
61
68
|
}
|
|
69
|
+
|
|
62
70
|
for (let i = lo - 1; i >= 0; i -= 1) {
|
|
63
71
|
// If the max end line among marks[0..i] is before the target,
|
|
64
72
|
// no mark at or before index i can reach the target line.
|
|
65
73
|
if (this.#maxEnd[i] < line) {
|
|
66
74
|
break;
|
|
67
75
|
}
|
|
76
|
+
|
|
68
77
|
const mark = this.#marks[i];
|
|
78
|
+
|
|
69
79
|
if (mark.range.to.line >= line) {
|
|
70
80
|
results.push(mark);
|
|
71
81
|
}
|
|
72
82
|
}
|
|
83
|
+
|
|
73
84
|
// Marks starting at this line
|
|
74
85
|
for (let i = lo; i < this.#marks.length; i += 1) {
|
|
75
86
|
const mark = this.#marks[i];
|
|
87
|
+
|
|
76
88
|
if (mark.range.from.line > line) {
|
|
77
89
|
break;
|
|
78
90
|
}
|
|
91
|
+
|
|
79
92
|
// from.line === line
|
|
80
93
|
results.push(mark);
|
|
81
94
|
}
|
|
95
|
+
|
|
82
96
|
return results;
|
|
83
97
|
}
|
|
84
98
|
|
|
85
99
|
marksInRange(from: number, to: number): Mark[] {
|
|
86
100
|
const results: Mark[] = [];
|
|
101
|
+
|
|
87
102
|
for (const mark of this.#marks) {
|
|
88
103
|
// A mark overlaps [from, to] if mark.from.line <= to && mark.to.line >= from
|
|
89
104
|
if (mark.range.from.line > to) {
|
|
90
105
|
break;
|
|
91
106
|
}
|
|
107
|
+
|
|
92
108
|
if (mark.range.to.line >= from) {
|
|
93
109
|
results.push(mark);
|
|
94
110
|
}
|
|
95
111
|
}
|
|
112
|
+
|
|
96
113
|
return results;
|
|
97
114
|
}
|
|
98
115
|
|
|
99
116
|
*forVisibleRows(from: number, to: number): Generator<RowDecoration> {
|
|
100
117
|
const marks = this.marksInRange(from, to);
|
|
118
|
+
|
|
101
119
|
for (const mark of marks) {
|
|
102
120
|
const startLine = Math.max(from, mark.range.from.line);
|
|
103
121
|
const endLine = Math.min(to, mark.range.to.line);
|
|
122
|
+
|
|
104
123
|
for (let line = startLine; line <= endLine; line += 1) {
|
|
105
124
|
const decoration: RowDecoration = { row: line };
|
|
106
125
|
|
|
107
126
|
if ((mark.style.background?.length ?? 0) > 0) {
|
|
108
127
|
decoration.background = mark.style.background;
|
|
109
128
|
}
|
|
129
|
+
|
|
110
130
|
if ((mark.style.gutterBackground?.length ?? 0) > 0) {
|
|
111
131
|
decoration.gutterBackground = mark.style.gutterBackground;
|
|
112
132
|
}
|
|
113
133
|
|
|
114
134
|
const signText = (mark.style.signBefore ?? "") + (mark.style.signAfter ?? "");
|
|
135
|
+
|
|
115
136
|
if (signText) {
|
|
116
137
|
decoration.sign = { fg: mark.style.foreground, text: signText };
|
|
117
138
|
}
|
package/src/mark-state.ts
CHANGED
|
@@ -16,9 +16,11 @@ const makeMarkState = function makeMarkState(sets: readonly MarkSet[]): MarkStat
|
|
|
16
16
|
return {
|
|
17
17
|
effectiveStyleAtLine(line: number): MarkStyle | null {
|
|
18
18
|
const marks = this.marksAtLine(line);
|
|
19
|
+
|
|
19
20
|
if (marks.length === 0) {
|
|
20
21
|
return null;
|
|
21
22
|
}
|
|
23
|
+
|
|
22
24
|
return marks.at(-1)?.style ?? null;
|
|
23
25
|
},
|
|
24
26
|
getSet(namespace: string): MarkSet | undefined {
|
|
@@ -26,8 +28,10 @@ const makeMarkState = function makeMarkState(sets: readonly MarkSet[]): MarkStat
|
|
|
26
28
|
},
|
|
27
29
|
marksAtLine(line: number): Mark[] {
|
|
28
30
|
const results: Mark[] = [];
|
|
31
|
+
|
|
29
32
|
for (const set of sortedSets) {
|
|
30
33
|
const marks = set.marksAtLine(line);
|
|
34
|
+
|
|
31
35
|
for (const mark of marks) {
|
|
32
36
|
results.push({
|
|
33
37
|
...mark,
|
|
@@ -35,7 +39,9 @@ const makeMarkState = function makeMarkState(sets: readonly MarkSet[]): MarkStat
|
|
|
35
39
|
});
|
|
36
40
|
}
|
|
37
41
|
}
|
|
42
|
+
|
|
38
43
|
results.sort((a, b) => (a.priority ?? 0) - (b.priority ?? 0));
|
|
44
|
+
|
|
39
45
|
return results;
|
|
40
46
|
},
|
|
41
47
|
namespaces,
|
|
@@ -55,9 +61,12 @@ export const updateMarkState = function updateMarkState(
|
|
|
55
61
|
if (newSet && newSet.namespace !== namespace) {
|
|
56
62
|
throw new Error(`Namespace mismatch: expected "${namespace}", got "${newSet.namespace}"`);
|
|
57
63
|
}
|
|
64
|
+
|
|
58
65
|
const filtered = state.sets.filter((s) => s.namespace !== namespace);
|
|
66
|
+
|
|
59
67
|
if (newSet) {
|
|
60
68
|
filtered.push(newSet);
|
|
61
69
|
}
|
|
70
|
+
|
|
62
71
|
return makeMarkState(filtered);
|
|
63
72
|
};
|