@coderline/alphatab-monaco 1.9.0-alpha.1883 → 1.9.0-alpha.1962
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/alphaTab.monaco.mjs +1 -1
- package/dist/alphatex.mjs +1 -1
- package/dist/lsp.mjs +1 -1
- package/dist/lspMonacoMappings.mjs +1 -1
- package/dist/textmate.mjs +1 -1
- package/dist/types.mjs +1 -1
- package/dist/types2.mjs +1 -1
- package/dist/worker.mjs +328 -29
- package/package.json +10 -10
package/dist/alphaTab.monaco.mjs
CHANGED
package/dist/alphatex.mjs
CHANGED
package/dist/lsp.mjs
CHANGED
package/dist/textmate.mjs
CHANGED
package/dist/types.mjs
CHANGED
package/dist/types2.mjs
CHANGED
package/dist/worker.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* alphaTab Monaco v1.9.0-alpha.
|
|
2
|
+
* alphaTab Monaco v1.9.0-alpha.1962 (develop, build 1962)
|
|
3
3
|
*
|
|
4
4
|
* Copyright © 2026, Daniel Kuschny and Contributors, All rights reserved.
|
|
5
5
|
*
|
|
@@ -11,9 +11,8 @@
|
|
|
11
11
|
* @license
|
|
12
12
|
*/
|
|
13
13
|
import { a as ParameterInformation, c as TextDocument, d as TextEdit, f as uinteger, i as InsertTextFormat, l as TextDocumentSyncKind, n as DiagnosticSeverity, o as PositionEncodingKind, r as DocumentDiagnosticReportKind, s as SignatureInformation, t as CompletionItemKind, u as TextDocuments } from "./types2.mjs";
|
|
14
|
-
import * as alphaTab from "@coderline/alphatab";
|
|
15
14
|
import { BrowserMessageReader, BrowserMessageWriter, createConnection } from "vscode-languageserver/browser";
|
|
16
|
-
import
|
|
15
|
+
import * as alphaTab from "@coderline/alphatab";
|
|
17
16
|
//#region ../alphatex/src/metadata/bar/ac.ts
|
|
18
17
|
var ac = {
|
|
19
18
|
tag: "\\ac",
|
|
@@ -29,7 +28,7 @@ var ac = {
|
|
|
29
28
|
\\ks D \\ts 24 16 \\ac r.16 6.3 7.3 9.3 7.3 6.3 | r.16 5.4 7.4 9.4 7.4 5.4 6.3.4{d} 9.6.16 10.6 12.6 10.6 9.6 14.6.4{d} r.16
|
|
30
29
|
`
|
|
31
30
|
};
|
|
32
|
-
alphaTab.model.WhammyType, alphaTab.model.BendStyle, alphaTab.model.GraceType, alphaTab.model.FermataType, alphaTab.importer.alphaTex.AlphaTexAccidentalMode, alphaTab.importer.alphaTex.AlphaTexVoiceMode, alphaTab.model.NoteAccidentalMode, alphaTab.model.BarreShape, alphaTab.model.Ottavia, alphaTab.model.Rasgueado, alphaTab.model.DynamicValue, alphaTab.model.BracketExtendMode, alphaTab.model.TrackNamePolicy, alphaTab.model.TrackNameOrientation, alphaTab.model.TrackNameMode, alphaTab.model.TuningDisplayMode, alphaTab.platform.TextAlign, alphaTab.model.BendType, alphaTab.model.KeySignature, alphaTab.model.KeySignatureType, alphaTab.model.Clef, alphaTab.model.TripletFeel, alphaTab.model.BarLineStyle, alphaTab.model.SimileMark, alphaTab.model.Direction, alphaTab.model.TremoloPickingStyle, alphaTab.model.BarNumberDisplay;
|
|
31
|
+
alphaTab.model.WhammyType, alphaTab.model.BendStyle, alphaTab.model.GraceType, alphaTab.model.FermataType, alphaTab.importer.alphaTex.AlphaTexAccidentalMode, alphaTab.importer.alphaTex.AlphaTexVoiceMode, alphaTab.importer.alphaTex.AlphaTexStaffType, alphaTab.model.NoteAccidentalMode, alphaTab.model.BarreShape, alphaTab.model.Ottavia, alphaTab.model.Rasgueado, alphaTab.model.DynamicValue, alphaTab.model.BracketExtendMode, alphaTab.model.TrackNamePolicy, alphaTab.model.TrackNameOrientation, alphaTab.model.TrackNameMode, alphaTab.model.TuningDisplayMode, alphaTab.platform.TextAlign, alphaTab.model.BendType, alphaTab.model.KeySignature, alphaTab.model.KeySignatureType, alphaTab.model.Clef, alphaTab.model.TripletFeel, alphaTab.model.BarLineStyle, alphaTab.model.SimileMark, alphaTab.model.Direction, alphaTab.model.TremoloPickingStyle, alphaTab.model.BarNumberDisplay, alphaTab.model.StaffPlacement, alphaTab.model.SystemDisplay, alphaTab.TabRhythmMode;
|
|
33
32
|
var alphaTexMappedEnumMapping = {
|
|
34
33
|
WhammyType: {
|
|
35
34
|
None: null,
|
|
@@ -132,6 +131,24 @@ var alphaTexMappedEnumMapping = {
|
|
|
132
131
|
longDescription: "A new voice adds a new voice to the current bar only."
|
|
133
132
|
}
|
|
134
133
|
},
|
|
134
|
+
AlphaTexStaffType: {
|
|
135
|
+
Score: {
|
|
136
|
+
snippet: "score",
|
|
137
|
+
shortDescription: "Standard notation"
|
|
138
|
+
},
|
|
139
|
+
Tabs: {
|
|
140
|
+
snippet: "tabs",
|
|
141
|
+
shortDescription: "Guitar tablature"
|
|
142
|
+
},
|
|
143
|
+
Slash: {
|
|
144
|
+
snippet: "slash",
|
|
145
|
+
shortDescription: "Slash notation"
|
|
146
|
+
},
|
|
147
|
+
Numbered: {
|
|
148
|
+
snippet: "numbered",
|
|
149
|
+
shortDescription: "Numbered notation (Jianpu)"
|
|
150
|
+
}
|
|
151
|
+
},
|
|
135
152
|
NoteAccidentalMode: {
|
|
136
153
|
Default: {
|
|
137
154
|
snippet: "default",
|
|
@@ -891,6 +908,44 @@ var alphaTexMappedEnumMapping = {
|
|
|
891
908
|
snippet: "hide",
|
|
892
909
|
shortDescription: "Hide"
|
|
893
910
|
}
|
|
911
|
+
},
|
|
912
|
+
StaffPlacement: {
|
|
913
|
+
AllStaves: {
|
|
914
|
+
snippet: "allStaves",
|
|
915
|
+
shortDescription: "All staves"
|
|
916
|
+
},
|
|
917
|
+
Primary: {
|
|
918
|
+
snippet: "primary",
|
|
919
|
+
shortDescription: "Only the primary (topmost) staff"
|
|
920
|
+
}
|
|
921
|
+
},
|
|
922
|
+
SystemDisplay: {
|
|
923
|
+
AllSystems: {
|
|
924
|
+
snippet: "allSystems",
|
|
925
|
+
shortDescription: "All systems"
|
|
926
|
+
},
|
|
927
|
+
FirstSystemOnly: {
|
|
928
|
+
snippet: "firstSystemOnly",
|
|
929
|
+
shortDescription: "Only the first system"
|
|
930
|
+
}
|
|
931
|
+
},
|
|
932
|
+
TabRhythmMode: {
|
|
933
|
+
Hidden: {
|
|
934
|
+
snippet: "hidden",
|
|
935
|
+
shortDescription: "Hidden"
|
|
936
|
+
},
|
|
937
|
+
ShowWithBeams: {
|
|
938
|
+
snippet: "showWithBeams",
|
|
939
|
+
shortDescription: "Individual beams per beat"
|
|
940
|
+
},
|
|
941
|
+
ShowWithBars: {
|
|
942
|
+
snippet: "showWithBars",
|
|
943
|
+
shortDescription: "Connected bars like standard notation"
|
|
944
|
+
},
|
|
945
|
+
Automatic: {
|
|
946
|
+
snippet: "automatic",
|
|
947
|
+
shortDescription: "Shown if no standard notation is shown"
|
|
948
|
+
}
|
|
894
949
|
}
|
|
895
950
|
};
|
|
896
951
|
function enumParameter(type) {
|
|
@@ -1371,7 +1426,7 @@ var sync = {
|
|
|
1371
1426
|
{
|
|
1372
1427
|
name: "millisecondOffset",
|
|
1373
1428
|
shortDescription: "The absolute millisecond offset within the external media",
|
|
1374
|
-
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.
|
|
1429
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.RequiredAsFloat,
|
|
1375
1430
|
type: alphaTab.importer.alphaTex.AlphaTexNodeType.Number
|
|
1376
1431
|
},
|
|
1377
1432
|
{
|
|
@@ -2381,6 +2436,33 @@ function properties(...props) {
|
|
|
2381
2436
|
function metadata(...metadata) {
|
|
2382
2437
|
return new Map(metadata.map((t) => [t.tag.toLowerCase(), t]));
|
|
2383
2438
|
}
|
|
2439
|
+
/**
|
|
2440
|
+
* Creates the signatures for a boolean-like value: no value (= true), `true|false`, `"true"|"false"` or `1|0`.
|
|
2441
|
+
*/
|
|
2442
|
+
function booleanSignatures(name, shortDescription, trueDescription, falseDescription) {
|
|
2443
|
+
const overload = (type, t, f, quote) => ({ parameters: [{
|
|
2444
|
+
name,
|
|
2445
|
+
shortDescription,
|
|
2446
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.Required,
|
|
2447
|
+
type,
|
|
2448
|
+
values: [{
|
|
2449
|
+
name: t,
|
|
2450
|
+
snippet: `${quote}${t}${quote}`,
|
|
2451
|
+
shortDescription: trueDescription
|
|
2452
|
+
}, {
|
|
2453
|
+
name: f,
|
|
2454
|
+
snippet: `${quote}${f}${quote}`,
|
|
2455
|
+
shortDescription: falseDescription
|
|
2456
|
+
}]
|
|
2457
|
+
}] });
|
|
2458
|
+
const types = alphaTab.importer.alphaTex.AlphaTexNodeType;
|
|
2459
|
+
return [
|
|
2460
|
+
{ parameters: [] },
|
|
2461
|
+
overload(types.String, "true", "false", "\""),
|
|
2462
|
+
overload(types.Ident, "true", "false", ""),
|
|
2463
|
+
overload(types.Number, "1", "0", "")
|
|
2464
|
+
];
|
|
2465
|
+
}
|
|
2384
2466
|
//#endregion
|
|
2385
2467
|
//#region ../alphatex/src/metadata/staff/chord.ts
|
|
2386
2468
|
var chord = {
|
|
@@ -4225,7 +4307,7 @@ var ah = {
|
|
|
4225
4307
|
shortDescription: "The harmonic value",
|
|
4226
4308
|
longDescription: harmonicValueDocs,
|
|
4227
4309
|
type: alphaTab.importer.alphaTex.AlphaTexNodeType.Number,
|
|
4228
|
-
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.
|
|
4310
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.OptionalAsFloat
|
|
4229
4311
|
}] }],
|
|
4230
4312
|
examples: `
|
|
4231
4313
|
C4 {volume 8} D4 E4 {tempo 16} F4
|
|
@@ -4341,7 +4423,7 @@ var fh = {
|
|
|
4341
4423
|
shortDescription: "The harmonic value",
|
|
4342
4424
|
longDescription: harmonicValueDocs,
|
|
4343
4425
|
type: alphaTab.importer.alphaTex.AlphaTexNodeType.Number,
|
|
4344
|
-
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.
|
|
4426
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.OptionalAsFloat
|
|
4345
4427
|
}] }],
|
|
4346
4428
|
examples: `
|
|
4347
4429
|
:8 3.3{fh} 3.3{ah} 3.3{ph} 3.3{th} 3.3{sh}
|
|
@@ -4516,7 +4598,7 @@ var ph = {
|
|
|
4516
4598
|
shortDescription: "The harmonic value",
|
|
4517
4599
|
longDescription: harmonicValueDocs,
|
|
4518
4600
|
type: alphaTab.importer.alphaTex.AlphaTexNodeType.Number,
|
|
4519
|
-
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.
|
|
4601
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.OptionalAsFloat
|
|
4520
4602
|
}] }],
|
|
4521
4603
|
examples: `
|
|
4522
4604
|
:8 3.3{nh} 3.3{ah} 3.3{ph} 3.3{th} 3.3{sh}
|
|
@@ -4591,7 +4673,7 @@ var sh = {
|
|
|
4591
4673
|
shortDescription: "The harmonic value",
|
|
4592
4674
|
longDescription: harmonicValueDocs,
|
|
4593
4675
|
type: alphaTab.importer.alphaTex.AlphaTexNodeType.Number,
|
|
4594
|
-
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.
|
|
4676
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.OptionalAsFloat
|
|
4595
4677
|
}] }],
|
|
4596
4678
|
examples: `
|
|
4597
4679
|
:8 3.3{nh} 3.3{ah} 3.3{ph} 3.3{th} 3.3{sh}
|
|
@@ -4733,11 +4815,33 @@ var string = {
|
|
|
4733
4815
|
property: "string",
|
|
4734
4816
|
snippet: "string",
|
|
4735
4817
|
shortDescription: "Show String Number",
|
|
4736
|
-
longDescription:
|
|
4737
|
-
|
|
4738
|
-
|
|
4818
|
+
longDescription: `
|
|
4819
|
+
Adds an annotation showing the string number of the note above the staff.
|
|
4820
|
+
|
|
4821
|
+
For fretted notes the string is taken from the note value (\`fret.string\`).
|
|
4822
|
+
For pitched notes the string number can be specified explicitly (e.g. string indications in classical guitar music).
|
|
4823
|
+
It is only shown as annotation and has no effect on the playback.
|
|
4824
|
+
`,
|
|
4825
|
+
signatures: [{
|
|
4826
|
+
description: "Show the string number of a fretted note",
|
|
4827
|
+
parameters: []
|
|
4828
|
+
}, {
|
|
4829
|
+
description: "Show the given string number on a pitched note",
|
|
4830
|
+
parameters: [{
|
|
4831
|
+
name: "string",
|
|
4832
|
+
shortDescription: "The string number (1 is the highest string)",
|
|
4833
|
+
longDescription: "The string number to show. Like for fretted notes 1 is the highest string. On staves without tuning a standard 6 string instrument is assumed. Only allowed on pitched notes.",
|
|
4834
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.Required,
|
|
4835
|
+
type: alphaTab.importer.alphaTex.AlphaTexNodeType.Number
|
|
4836
|
+
}]
|
|
4837
|
+
}],
|
|
4838
|
+
examples: [`
|
|
4739
4839
|
3.3{string} 3.4{string} 3.5{string}
|
|
4740
|
-
`
|
|
4840
|
+
`, `
|
|
4841
|
+
\\tuning piano
|
|
4842
|
+
.
|
|
4843
|
+
a4{string 1} c4{string 2} g3{string 3} e3{string 4}
|
|
4844
|
+
`]
|
|
4741
4845
|
};
|
|
4742
4846
|
//#endregion
|
|
4743
4847
|
//#region ../alphatex/src/properties/note/t.ts
|
|
@@ -4803,7 +4907,7 @@ var th = {
|
|
|
4803
4907
|
shortDescription: "The harmonic value",
|
|
4804
4908
|
longDescription: harmonicValueDocs,
|
|
4805
4909
|
type: alphaTab.importer.alphaTex.AlphaTexNodeType.Number,
|
|
4806
|
-
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.
|
|
4910
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.OptionalAsFloat
|
|
4807
4911
|
}] }],
|
|
4808
4912
|
examples: `
|
|
4809
4913
|
:8 3.3{nh} 3.3{ah} 3.3{ph} 3.3{th} 3.3{sh}
|
|
@@ -5269,11 +5373,211 @@ var restDisplayPitch = {
|
|
|
5269
5373
|
`
|
|
5270
5374
|
};
|
|
5271
5375
|
//#endregion
|
|
5376
|
+
//#region ../alphatex/src/metadata/bar/barNumber.ts
|
|
5377
|
+
var barNumber = {
|
|
5378
|
+
tag: "\\barNumber",
|
|
5379
|
+
snippet: "\\barNumber ${1:1}$0",
|
|
5380
|
+
shortDescription: "Sets the bar number display.",
|
|
5381
|
+
signatures: [{ parameters: [{
|
|
5382
|
+
name: "text",
|
|
5383
|
+
shortDescription: "THe custom text shown instead of the number",
|
|
5384
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.Required,
|
|
5385
|
+
type: alphaTab.importer.alphaTex.AlphaTexNodeType.String,
|
|
5386
|
+
allowAllStringTypes: true
|
|
5387
|
+
}] }, { parameters: [{
|
|
5388
|
+
name: "number",
|
|
5389
|
+
shortDescription: "The new number (affects subsequent counting)",
|
|
5390
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.Required,
|
|
5391
|
+
type: alphaTab.importer.alphaTex.AlphaTexNodeType.Number,
|
|
5392
|
+
allowAllStringTypes: true
|
|
5393
|
+
}] }],
|
|
5394
|
+
examples: [{ tex: `
|
|
5395
|
+
// anacrusis (no number)
|
|
5396
|
+
\\ac
|
|
5397
|
+
C4.1
|
|
5398
|
+
|
|
|
5399
|
+
// standard bar number 1
|
|
5400
|
+
C4
|
|
5401
|
+
|
|
|
5402
|
+
// custom text instead of bar number 2
|
|
5403
|
+
\\barNumber "Hello"
|
|
5404
|
+
C4
|
|
5405
|
+
|
|
|
5406
|
+
// a jump to 10
|
|
5407
|
+
\\barNumber 10
|
|
5408
|
+
C4
|
|
5409
|
+
|
|
|
5410
|
+
// now becomes 11 after the customization before
|
|
5411
|
+
C4
|
|
5412
|
+
` }]
|
|
5413
|
+
};
|
|
5414
|
+
//#endregion
|
|
5415
|
+
//#region ../alphatex/src/staffDisplay.ts
|
|
5416
|
+
/**
|
|
5417
|
+
* Creates the signatures selecting the staff types to which the staff display properties apply.
|
|
5418
|
+
*/
|
|
5419
|
+
function staffDisplayTargetSignatures() {
|
|
5420
|
+
return [{ parameters: [{
|
|
5421
|
+
name: "staffTypes",
|
|
5422
|
+
shortDescription: "The staff types to which the properties apply. If omitted, every property applies to all staff types supporting it.",
|
|
5423
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.ValueListWithoutParenthesis,
|
|
5424
|
+
...enumParameter("AlphaTexStaffType")
|
|
5425
|
+
}] }];
|
|
5426
|
+
}
|
|
5427
|
+
function enumSignatures(name, shortDescription, type) {
|
|
5428
|
+
return [{ parameters: [{
|
|
5429
|
+
name,
|
|
5430
|
+
shortDescription,
|
|
5431
|
+
parseMode: alphaTab.importer.alphaTex.ArgumentListParseTypesMode.Required,
|
|
5432
|
+
...enumParameter(type)
|
|
5433
|
+
}] }];
|
|
5434
|
+
}
|
|
5435
|
+
function staffDisplayExample(tag, level, props) {
|
|
5436
|
+
const meta = `${tag} { ${props} }`;
|
|
5437
|
+
const bars = [
|
|
5438
|
+
"\\ks D 3.3.4 r 3.3 3.3",
|
|
5439
|
+
"3.3.4 3.3 r 3.3",
|
|
5440
|
+
"\\ts (3 4) \\ks A 3.3.4 3.3 r",
|
|
5441
|
+
"3.3.4 r 3.3"
|
|
5442
|
+
];
|
|
5443
|
+
if (level === "bar") bars[2] = `${meta} ${bars[2]}`;
|
|
5444
|
+
return {
|
|
5445
|
+
options: { display: { layoutMode: "Parchment" } },
|
|
5446
|
+
tex: [
|
|
5447
|
+
level === "score" ? meta : "",
|
|
5448
|
+
"\\track { defaultSystemsLayout 2 }",
|
|
5449
|
+
" \\staff {score tabs}",
|
|
5450
|
+
level === "staff" ? ` ${meta}` : "",
|
|
5451
|
+
` ${bars.join(" | ")}`
|
|
5452
|
+
].filter((l) => l.length > 0).join("\n")
|
|
5453
|
+
};
|
|
5454
|
+
}
|
|
5455
|
+
/**
|
|
5456
|
+
* The elements configured via `<prefix>Visibility`, `<prefix>Placement` and `<prefix>Systems`:
|
|
5457
|
+
* prefix, name, supported staff types, available on bar level.
|
|
5458
|
+
*/
|
|
5459
|
+
var staffDisplayElements = [
|
|
5460
|
+
[
|
|
5461
|
+
"clef",
|
|
5462
|
+
"clef",
|
|
5463
|
+
"`score`, `tabs`",
|
|
5464
|
+
true
|
|
5465
|
+
],
|
|
5466
|
+
[
|
|
5467
|
+
"ks",
|
|
5468
|
+
"key signature",
|
|
5469
|
+
"`score`, `slash`",
|
|
5470
|
+
true
|
|
5471
|
+
],
|
|
5472
|
+
[
|
|
5473
|
+
"ts",
|
|
5474
|
+
"time signature",
|
|
5475
|
+
"`score`, `tabs`, `slash`, `numbered`",
|
|
5476
|
+
true
|
|
5477
|
+
],
|
|
5478
|
+
[
|
|
5479
|
+
"rests",
|
|
5480
|
+
"rests",
|
|
5481
|
+
"`tabs`",
|
|
5482
|
+
false
|
|
5483
|
+
]
|
|
5484
|
+
];
|
|
5485
|
+
/**
|
|
5486
|
+
* Creates the properties of a staff display tag. Every tag gets own definitions as the definitions
|
|
5487
|
+
* are prepared in place and the examples use the tag.
|
|
5488
|
+
*/
|
|
5489
|
+
function staffDisplayProperties(tag, level) {
|
|
5490
|
+
const prop = (property, shortDescription, signatures, value) => ({
|
|
5491
|
+
property,
|
|
5492
|
+
snippet: `${property} $0`,
|
|
5493
|
+
shortDescription,
|
|
5494
|
+
signatures,
|
|
5495
|
+
examples: staffDisplayExample(tag, level, `${property} ${value}`)
|
|
5496
|
+
});
|
|
5497
|
+
const props = [];
|
|
5498
|
+
for (const [prefix, name, staffTypes, barLevel] of staffDisplayElements) {
|
|
5499
|
+
if (level === "bar" && !barLevel) continue;
|
|
5500
|
+
const supported = `Supported staff types: ${staffTypes}.`;
|
|
5501
|
+
props.push(prop(`${prefix}Visibility`, `Show or hide the ${name}. ${supported}`, booleanSignatures("visibility", `Whether the ${name} is shown`, `Show the ${name}`, `Hide the ${name}`), "false"), prop(`${prefix}Placement`, `Show the ${name} on all staves or only on the primary (topmost) staff. ${supported}`, enumSignatures("placement", `On which staves the ${name} is shown`, "StaffPlacement"), "primary"), prop(`${prefix}Systems`, `Show the ${name} on all systems or only on the first system. ${supported}`, enumSignatures("systems", `On which systems the ${name} is shown`, "SystemDisplay"), "firstSystemOnly"));
|
|
5502
|
+
}
|
|
5503
|
+
props.push(prop("barNumber", "Set how bar numbers are shown. Supported staff types: all.", enumSignatures("mode", "The mode to use", "BarNumberDisplay"), "allBars"));
|
|
5504
|
+
if (level !== "bar") props.push(prop("rhythm", "Set how the rhythm notation is shown. Supported staff types: `tabs`.", enumSignatures("mode", "The mode to use", "TabRhythmMode"), "showWithBeams"));
|
|
5505
|
+
return properties(...props);
|
|
5506
|
+
}
|
|
5507
|
+
//#endregion
|
|
5508
|
+
//#region ../alphatex/src/metadata/score/defaultStaffDisplay.ts
|
|
5509
|
+
var defaultStaffDisplay = {
|
|
5510
|
+
tag: "\\defaultStaffDisplay",
|
|
5511
|
+
snippet: "\\defaultStaffDisplay $1 {$2}$0",
|
|
5512
|
+
shortDescription: "Sets how elements are displayed on the staves of the whole song.",
|
|
5513
|
+
longDescription: `
|
|
5514
|
+
Defines the song-wide display of elements like clefs, key signatures, time signatures, rests and bar numbers.
|
|
5515
|
+
|
|
5516
|
+
The arguments select the staff types to which the properties apply. If no staff types are specified, every property applies to all staff types supporting the related element.
|
|
5517
|
+
|
|
5518
|
+
All properties are optional. Properties which are not specified keep their default. The values can be overridden per staff with [\`\\staffDisplay\`](https://alphatab.net/docs/alphatex/staff-metadata#staffdisplay) and per bar with [\`\\barDisplay\`](https://alphatab.net/docs/alphatex/bar-metadata#bardisplay).
|
|
5519
|
+
`,
|
|
5520
|
+
signatures: staffDisplayTargetSignatures(),
|
|
5521
|
+
examples: `
|
|
5522
|
+
\\defaultStaffDisplay { clefPlacement primary }
|
|
5523
|
+
\\defaultStaffDisplay tabs { tsVisibility true tsPlacement allStaves }
|
|
5524
|
+
\\track
|
|
5525
|
+
\\staff {score tabs}
|
|
5526
|
+
3.3.4 3.3 3.3 3.3 | 3.3 3.3 3.3 3.3
|
|
5527
|
+
`,
|
|
5528
|
+
properties: staffDisplayProperties("\\defaultStaffDisplay", "score")
|
|
5529
|
+
};
|
|
5530
|
+
//#endregion
|
|
5531
|
+
//#region ../alphatex/src/metadata/staff/staffDisplay.ts
|
|
5532
|
+
var staffDisplay = {
|
|
5533
|
+
tag: "\\staffDisplay",
|
|
5534
|
+
snippet: "\\staffDisplay $1 {$2}$0",
|
|
5535
|
+
shortDescription: "Sets how elements are displayed on the current staff.",
|
|
5536
|
+
longDescription: `
|
|
5537
|
+
Defines the display of elements like clefs, key signatures, time signatures, rests and bar numbers for the current staff.
|
|
5538
|
+
|
|
5539
|
+
The arguments select the staff types to which the properties apply. If no staff types are specified, every property applies to all staff types supporting the related element.
|
|
5540
|
+
|
|
5541
|
+
All properties are optional. Properties which are not specified are inherited from [\`\\defaultStaffDisplay\`](https://alphatab.net/docs/alphatex/score-metadata#defaultstaffdisplay). The values can be overridden per bar with [\`\\barDisplay\`](https://alphatab.net/docs/alphatex/bar-metadata#bardisplay).
|
|
5542
|
+
`,
|
|
5543
|
+
signatures: staffDisplayTargetSignatures(),
|
|
5544
|
+
examples: `
|
|
5545
|
+
\\track
|
|
5546
|
+
\\staff {score tabs}
|
|
5547
|
+
\\staffDisplay tabs { tsPlacement allStaves rhythm showWithBeams }
|
|
5548
|
+
3.3.4 3.3 3.3 3.3 | 3.3 3.3 3.3 3.3
|
|
5549
|
+
`,
|
|
5550
|
+
properties: staffDisplayProperties("\\staffDisplay", "staff")
|
|
5551
|
+
};
|
|
5552
|
+
//#endregion
|
|
5553
|
+
//#region ../alphatex/src/metadata/bar/barDisplay.ts
|
|
5554
|
+
var barDisplay = {
|
|
5555
|
+
tag: "\\barDisplay",
|
|
5556
|
+
snippet: "\\barDisplay $1 {$2}$0",
|
|
5557
|
+
shortDescription: "Sets how elements are displayed on the current bar.",
|
|
5558
|
+
longDescription: `
|
|
5559
|
+
Defines the display of elements like clefs, key signatures, time signatures and bar numbers for the current bar.
|
|
5560
|
+
|
|
5561
|
+
The arguments select the staff types to which the properties apply. If no staff types are specified, every property applies to all staff types supporting the related element.
|
|
5562
|
+
|
|
5563
|
+
All properties are optional. Properties which are not specified are inherited from [\`\\staffDisplay\`](https://alphatab.net/docs/alphatex/staff-metadata#staffdisplay) and [\`\\defaultStaffDisplay\`](https://alphatab.net/docs/alphatex/score-metadata#defaultstaffdisplay). The values only apply to the bar they are specified on.
|
|
5564
|
+
`,
|
|
5565
|
+
signatures: staffDisplayTargetSignatures(),
|
|
5566
|
+
examples: `
|
|
5567
|
+
\\track
|
|
5568
|
+
\\staff {score tabs}
|
|
5569
|
+
\\ks D 3.3.4 3.3 3.3 3.3 |
|
|
5570
|
+
\\barDisplay score { ksVisibility false } \\ks A 3.3 3.3 3.3 3.3 |
|
|
5571
|
+
3.3 3.3 3.3 3.3
|
|
5572
|
+
`,
|
|
5573
|
+
properties: staffDisplayProperties("\\barDisplay", "bar")
|
|
5574
|
+
};
|
|
5575
|
+
//#endregion
|
|
5272
5576
|
//#region ../alphatex/src/definitions.ts
|
|
5273
5577
|
var structuralMetaData = metadata(track, staff, voice);
|
|
5274
|
-
var scoreMetaData = metadata(title, subtitle, artist, album, words, music, wordsAndMusic, copyright, copyright2, instructions, notices, tab, systemsLayout, defaultSystemsLayout, showDynamics, hideDynamics, useSystemSignSeparator, tuningDisplayMode, multiBarRest, bracketExtendMode, singleTrackTrackNamePolicy, multiTrackTrackNamePolicy, firstSystemTrackNameMode, otherSystemsTrackNameMode, firstSystemTrackNameOrientation, otherSystemsTrackNameOrientation, extendBarLines, chordDiagramsInScore, hideEmptyStaves, hideEmptyStavesInFirstSystem, showSingleStaffBrackets, defaultBarNumberDisplay);
|
|
5275
|
-
var staffMetaData = metadata(tuning, chord, capo, lyrics, articulation, displayTranspose, transpose, instrumentMeta);
|
|
5276
|
-
var barMetaData = metadata(ts, ro, rc, ae, ks, clef, ottava, tempo, tf, ac, section, jump, ft, simile, barlineLeft, barlineRight, scale, width, sync, accidentals, spd, sph, spu, db, voiceMode, barNumberDisplay, beaming);
|
|
5578
|
+
var scoreMetaData = metadata(title, subtitle, artist, album, words, music, wordsAndMusic, copyright, copyright2, instructions, notices, tab, systemsLayout, defaultSystemsLayout, showDynamics, hideDynamics, useSystemSignSeparator, tuningDisplayMode, multiBarRest, bracketExtendMode, singleTrackTrackNamePolicy, multiTrackTrackNamePolicy, firstSystemTrackNameMode, otherSystemsTrackNameMode, firstSystemTrackNameOrientation, otherSystemsTrackNameOrientation, extendBarLines, chordDiagramsInScore, hideEmptyStaves, hideEmptyStavesInFirstSystem, showSingleStaffBrackets, defaultBarNumberDisplay, defaultStaffDisplay);
|
|
5579
|
+
var staffMetaData = metadata(tuning, chord, capo, lyrics, articulation, displayTranspose, transpose, instrumentMeta, staffDisplay);
|
|
5580
|
+
var barMetaData = metadata(ts, ro, rc, ae, ks, clef, ottava, tempo, tf, ac, section, jump, ft, simile, barlineLeft, barlineRight, scale, width, sync, accidentals, spd, sph, spu, db, voiceMode, barNumberDisplay, beaming, barNumber, barDisplay);
|
|
5277
5581
|
var allMetadata = new Map([
|
|
5278
5582
|
...structuralMetaData.entries(),
|
|
5279
5583
|
...scoreMetaData.entries(),
|
|
@@ -5572,8 +5876,10 @@ function createMetaDataCompletions(barIndex, metaData, offset, endOfMetaData) {
|
|
|
5572
5876
|
}));
|
|
5573
5877
|
}
|
|
5574
5878
|
return completions;
|
|
5575
|
-
} else if (offset >= metaData.end.offset)
|
|
5576
|
-
|
|
5879
|
+
} else if (offset >= metaData.end.offset) {
|
|
5880
|
+
if (barIndex === 0) completions.push(...topLevelCompletions);
|
|
5881
|
+
else completions.push(...createMetaDataDocCompletions(structuralMetaData), ...createMetaDataDocCompletions(barMetaData));
|
|
5882
|
+
}
|
|
5577
5883
|
const metaDataDocs = allMetadata.get(`\\${metaData.tag.tag.text.toLowerCase()}`);
|
|
5578
5884
|
if (!metaDataDocs) return completions;
|
|
5579
5885
|
const endOfArguments = metaData.arguments?.closeParenthesis?.start?.offset ?? metaData.arguments?.end?.offset ?? metaData.properties?.start?.offset ?? endOfMetaData;
|
|
@@ -5992,7 +6298,7 @@ function signatureDefinitionToHelp(label, docs, signature) {
|
|
|
5992
6298
|
return signatureDocs;
|
|
5993
6299
|
}
|
|
5994
6300
|
//#endregion
|
|
5995
|
-
//#region ../lsp/src/server/
|
|
6301
|
+
//#region ../lsp/src/server/common.ts
|
|
5996
6302
|
function startLanguageServer(serverConnection) {
|
|
5997
6303
|
const documents = new TextDocuments(TextDocument);
|
|
5998
6304
|
serverConnection.onInitialize((params) => {
|
|
@@ -6019,6 +6325,8 @@ function startLanguageServer(serverConnection) {
|
|
|
6019
6325
|
documents.listen(serverConnection);
|
|
6020
6326
|
serverConnection.listen();
|
|
6021
6327
|
}
|
|
6328
|
+
//#endregion
|
|
6329
|
+
//#region ../lsp/src/server/browser.ts
|
|
6022
6330
|
/**
|
|
6023
6331
|
* Starts a new language server communicating via WebWorker.
|
|
6024
6332
|
* @param readerPort The port used to reading incoming language server messages
|
|
@@ -6027,15 +6335,6 @@ function startLanguageServer(serverConnection) {
|
|
|
6027
6335
|
function startWebWorkerLanguageServer(readerPort, writerPort) {
|
|
6028
6336
|
startLanguageServer(createConnection(new BrowserMessageReader(readerPort), new BrowserMessageWriter(writerPort)));
|
|
6029
6337
|
}
|
|
6030
|
-
/**
|
|
6031
|
-
* Starts a new language server communicating from a Node.js process with a parent Node.js.
|
|
6032
|
-
*/
|
|
6033
|
-
function startNodeLanguageServer() {
|
|
6034
|
-
startLanguageServer(createConnection$1(ProposedFeatures.all));
|
|
6035
|
-
}
|
|
6036
|
-
//#endregion
|
|
6037
|
-
//#region ../lsp/src/index.ts
|
|
6038
|
-
if (import.meta.main) startNodeLanguageServer();
|
|
6039
6338
|
//#endregion
|
|
6040
6339
|
//#region src/worker.ts
|
|
6041
6340
|
var workerGlobalThis = globalThis;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coderline/alphatab-monaco",
|
|
3
|
-
"version": "1.9.0-alpha.
|
|
3
|
+
"version": "1.9.0-alpha.1962",
|
|
4
4
|
"description": "A Monaco editor integration for alphaTab providing coding assistance for alphaTex.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"guitar",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"license": "MPL-2.0",
|
|
21
21
|
"repository": {
|
|
22
22
|
"type": "git",
|
|
23
|
-
"url": "git+https://github.com/
|
|
23
|
+
"url": "git+https://github.com/CoderLine/alphaTab.git"
|
|
24
24
|
},
|
|
25
25
|
"scripts": {
|
|
26
26
|
"clean": "rimraf dist",
|
|
@@ -32,22 +32,22 @@
|
|
|
32
32
|
"test-web": "npm run test"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@coderline/alphatab": "^1.9.0-alpha.
|
|
36
|
-
"@coderline/alphatab-language-server": "^1.9.0-alpha.
|
|
37
|
-
"monaco-editor": "^0.
|
|
35
|
+
"@coderline/alphatab": "^1.9.0-alpha.1962",
|
|
36
|
+
"@coderline/alphatab-language-server": "^1.9.0-alpha.1962",
|
|
37
|
+
"monaco-editor": "^0.57.0",
|
|
38
38
|
"vscode-languageserver-types": "^3.17.5",
|
|
39
39
|
"vscode-oniguruma": "^2.0.1",
|
|
40
40
|
"vscode-textmate": "^9.3.2"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@biomejs/biome": "^2.5.
|
|
44
|
-
"@microsoft/api-extractor": "^7.
|
|
45
|
-
"@types/node": "^26.
|
|
43
|
+
"@biomejs/biome": "^2.5.14",
|
|
44
|
+
"@microsoft/api-extractor": "^7.59.1",
|
|
45
|
+
"@types/node": "^26.6.2",
|
|
46
46
|
"rimraf": "^6.1.3",
|
|
47
47
|
"tslib": "^2.8.1",
|
|
48
|
-
"tsx": "^4.23.
|
|
48
|
+
"tsx": "^4.23.15",
|
|
49
49
|
"typescript": "^6.0.3",
|
|
50
|
-
"vitest": "^
|
|
50
|
+
"vitest": "^5.0.1"
|
|
51
51
|
},
|
|
52
52
|
"bin": "./dist/alphaTab.monaco.mjs",
|
|
53
53
|
"main": "./dist/alphaTab.monaco.mjs",
|