react-ai-renderer 0.1.7 → 0.1.8
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.cjs +2342 -2145
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2342 -2145
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -6246,475 +6246,484 @@ function asmatmel(Prism) {
|
|
|
6246
6246
|
};
|
|
6247
6247
|
}
|
|
6248
6248
|
|
|
6249
|
-
var csharp_1
|
|
6250
|
-
|
|
6251
|
-
|
|
6252
|
-
function
|
|
6249
|
+
var csharp_1;
|
|
6250
|
+
var hasRequiredCsharp;
|
|
6251
|
+
|
|
6252
|
+
function requireCsharp () {
|
|
6253
|
+
if (hasRequiredCsharp) return csharp_1;
|
|
6254
|
+
hasRequiredCsharp = 1;
|
|
6255
|
+
|
|
6256
|
+
csharp_1 = csharp;
|
|
6257
|
+
csharp.displayName = 'csharp';
|
|
6258
|
+
csharp.aliases = ['dotnet', 'cs'];
|
|
6259
|
+
function csharp(Prism) {
|
|
6253
6260
|
(function (Prism) {
|
|
6254
|
-
|
|
6255
|
-
|
|
6256
|
-
|
|
6257
|
-
|
|
6258
|
-
|
|
6259
|
-
|
|
6260
|
-
|
|
6261
|
-
|
|
6262
|
-
|
|
6263
|
-
|
|
6264
|
-
|
|
6265
|
-
|
|
6266
|
-
|
|
6267
|
-
|
|
6268
|
-
|
|
6269
|
-
|
|
6270
|
-
|
|
6271
|
-
|
|
6272
|
-
|
|
6273
|
-
|
|
6274
|
-
|
|
6275
|
-
|
|
6276
|
-
|
|
6277
|
-
|
|
6278
|
-
|
|
6279
|
-
|
|
6280
|
-
|
|
6281
|
-
|
|
6282
|
-
|
|
6283
|
-
|
|
6284
|
-
|
|
6285
|
-
|
|
6286
|
-
|
|
6287
|
-
|
|
6288
|
-
|
|
6289
|
-
|
|
6290
|
-
|
|
6291
|
-
|
|
6292
|
-
|
|
6293
|
-
|
|
6294
|
-
|
|
6295
|
-
|
|
6296
|
-
|
|
6297
|
-
|
|
6298
|
-
|
|
6299
|
-
|
|
6300
|
-
|
|
6301
|
-
|
|
6302
|
-
|
|
6303
|
-
|
|
6304
|
-
|
|
6305
|
-
|
|
6306
|
-
|
|
6307
|
-
|
|
6308
|
-
|
|
6309
|
-
|
|
6310
|
-
|
|
6311
|
-
|
|
6312
|
-
|
|
6313
|
-
|
|
6314
|
-
|
|
6315
|
-
|
|
6316
|
-
|
|
6317
|
-
|
|
6318
|
-
|
|
6319
|
-
|
|
6320
|
-
|
|
6321
|
-
|
|
6322
|
-
|
|
6323
|
-
|
|
6324
|
-
|
|
6325
|
-
|
|
6326
|
-
|
|
6327
|
-
|
|
6328
|
-
|
|
6329
|
-
|
|
6330
|
-
|
|
6331
|
-
|
|
6332
|
-
|
|
6333
|
-
|
|
6334
|
-
|
|
6335
|
-
|
|
6336
|
-
|
|
6337
|
-
|
|
6338
|
-
|
|
6339
|
-
|
|
6340
|
-
|
|
6341
|
-
|
|
6342
|
-
|
|
6343
|
-
|
|
6344
|
-
|
|
6345
|
-
|
|
6346
|
-
|
|
6347
|
-
|
|
6348
|
-
|
|
6349
|
-
|
|
6350
|
-
|
|
6351
|
-
|
|
6352
|
-
|
|
6353
|
-
|
|
6354
|
-
|
|
6355
|
-
|
|
6356
|
-
|
|
6357
|
-
|
|
6358
|
-
|
|
6359
|
-
|
|
6360
|
-
|
|
6361
|
-
|
|
6362
|
-
|
|
6363
|
-
|
|
6364
|
-
|
|
6365
|
-
|
|
6366
|
-
|
|
6367
|
-
|
|
6368
|
-
|
|
6369
|
-
|
|
6370
|
-
|
|
6371
|
-
|
|
6372
|
-
|
|
6373
|
-
|
|
6374
|
-
|
|
6375
|
-
|
|
6376
|
-
|
|
6377
|
-
|
|
6378
|
-
|
|
6379
|
-
|
|
6380
|
-
|
|
6381
|
-
|
|
6382
|
-
|
|
6383
|
-
|
|
6384
|
-
|
|
6385
|
-
|
|
6386
|
-
|
|
6387
|
-
|
|
6388
|
-
|
|
6389
|
-
|
|
6390
|
-
|
|
6391
|
-
|
|
6392
|
-
|
|
6393
|
-
|
|
6394
|
-
|
|
6395
|
-
|
|
6396
|
-
|
|
6397
|
-
|
|
6398
|
-
|
|
6399
|
-
|
|
6400
|
-
|
|
6401
|
-
|
|
6402
|
-
|
|
6403
|
-
|
|
6404
|
-
|
|
6405
|
-
|
|
6406
|
-
|
|
6407
|
-
|
|
6408
|
-
|
|
6409
|
-
|
|
6410
|
-
|
|
6411
|
-
|
|
6412
|
-
|
|
6413
|
-
|
|
6414
|
-
|
|
6415
|
-
|
|
6416
|
-
|
|
6417
|
-
|
|
6418
|
-
|
|
6419
|
-
|
|
6420
|
-
|
|
6421
|
-
|
|
6422
|
-
|
|
6423
|
-
|
|
6424
|
-
|
|
6425
|
-
|
|
6426
|
-
|
|
6427
|
-
|
|
6428
|
-
|
|
6429
|
-
|
|
6430
|
-
|
|
6431
|
-
|
|
6432
|
-
|
|
6433
|
-
|
|
6434
|
-
|
|
6435
|
-
|
|
6436
|
-
|
|
6437
|
-
|
|
6438
|
-
|
|
6439
|
-
|
|
6440
|
-
|
|
6441
|
-
|
|
6442
|
-
|
|
6443
|
-
|
|
6444
|
-
|
|
6445
|
-
|
|
6446
|
-
|
|
6447
|
-
|
|
6448
|
-
|
|
6449
|
-
|
|
6450
|
-
|
|
6451
|
-
|
|
6452
|
-
|
|
6453
|
-
|
|
6454
|
-
|
|
6455
|
-
|
|
6456
|
-
|
|
6457
|
-
|
|
6458
|
-
|
|
6459
|
-
|
|
6460
|
-
|
|
6461
|
-
|
|
6462
|
-
|
|
6463
|
-
|
|
6464
|
-
|
|
6465
|
-
|
|
6466
|
-
|
|
6467
|
-
|
|
6468
|
-
|
|
6469
|
-
|
|
6470
|
-
|
|
6471
|
-
|
|
6472
|
-
|
|
6473
|
-
|
|
6474
|
-
|
|
6475
|
-
|
|
6476
|
-
|
|
6477
|
-
|
|
6478
|
-
|
|
6479
|
-
|
|
6480
|
-
|
|
6481
|
-
|
|
6482
|
-
|
|
6483
|
-
|
|
6484
|
-
|
|
6485
|
-
|
|
6486
|
-
|
|
6487
|
-
|
|
6488
|
-
|
|
6489
|
-
|
|
6490
|
-
|
|
6491
|
-
|
|
6492
|
-
|
|
6493
|
-
|
|
6494
|
-
|
|
6495
|
-
|
|
6496
|
-
|
|
6497
|
-
|
|
6498
|
-
|
|
6499
|
-
|
|
6500
|
-
|
|
6501
|
-
|
|
6502
|
-
|
|
6503
|
-
|
|
6504
|
-
|
|
6505
|
-
|
|
6506
|
-
|
|
6507
|
-
|
|
6508
|
-
|
|
6509
|
-
|
|
6510
|
-
|
|
6511
|
-
|
|
6512
|
-
|
|
6513
|
-
|
|
6514
|
-
|
|
6515
|
-
|
|
6516
|
-
// int IFoo<Foo>.Bar => 0; void IFoo<Foo<Foo>>.Foo<T>();
|
|
6517
|
-
pattern: replace(/\b<<0>>(?=\.<<1>>)/, className, methodOrPropertyDeclaration),
|
|
6518
|
-
inside: classNameInside,
|
|
6519
|
-
alias: 'class-name'
|
|
6520
|
-
},*/
|
|
6521
|
-
|
|
6522
|
-
|
|
6523
|
-
|
|
6524
|
-
|
|
6525
|
-
|
|
6526
|
-
|
|
6527
|
-
|
|
6528
|
-
|
|
6529
|
-
|
|
6530
|
-
|
|
6531
|
-
|
|
6532
|
-
|
|
6533
|
-
|
|
6534
|
-
|
|
6535
|
-
|
|
6536
|
-
|
|
6537
|
-
|
|
6538
|
-
|
|
6539
|
-
|
|
6540
|
-
|
|
6541
|
-
|
|
6542
|
-
|
|
6543
|
-
|
|
6544
|
-
|
|
6545
|
-
|
|
6546
|
-
|
|
6547
|
-
|
|
6548
|
-
|
|
6549
|
-
|
|
6550
|
-
|
|
6551
|
-
|
|
6552
|
-
|
|
6553
|
-
|
|
6554
|
-
|
|
6555
|
-
|
|
6556
|
-
|
|
6557
|
-
|
|
6558
|
-
|
|
6559
|
-
|
|
6560
|
-
|
|
6561
|
-
|
|
6562
|
-
|
|
6563
|
-
|
|
6564
|
-
|
|
6565
|
-
|
|
6566
|
-
|
|
6567
|
-
|
|
6568
|
-
|
|
6569
|
-
|
|
6570
|
-
|
|
6571
|
-
|
|
6572
|
-
|
|
6573
|
-
|
|
6574
|
-
|
|
6575
|
-
|
|
6576
|
-
|
|
6577
|
-
|
|
6578
|
-
|
|
6579
|
-
|
|
6580
|
-
|
|
6581
|
-
|
|
6582
|
-
|
|
6583
|
-
|
|
6584
|
-
|
|
6585
|
-
|
|
6586
|
-
|
|
6587
|
-
|
|
6588
|
-
|
|
6589
|
-
|
|
6590
|
-
|
|
6591
|
-
|
|
6592
|
-
|
|
6593
|
-
|
|
6594
|
-
|
|
6595
|
-
|
|
6596
|
-
|
|
6597
|
-
|
|
6598
|
-
|
|
6599
|
-
|
|
6600
|
-
|
|
6601
|
-
|
|
6602
|
-
|
|
6603
|
-
|
|
6604
|
-
|
|
6605
|
-
|
|
6606
|
-
|
|
6607
|
-
|
|
6608
|
-
|
|
6609
|
-
|
|
6610
|
-
|
|
6611
|
-
|
|
6612
|
-
|
|
6613
|
-
|
|
6614
|
-
|
|
6615
|
-
|
|
6616
|
-
|
|
6617
|
-
|
|
6618
|
-
|
|
6619
|
-
|
|
6620
|
-
|
|
6621
|
-
|
|
6622
|
-
|
|
6623
|
-
|
|
6624
|
-
|
|
6625
|
-
|
|
6626
|
-
|
|
6627
|
-
|
|
6628
|
-
|
|
6629
|
-
|
|
6630
|
-
|
|
6631
|
-
|
|
6632
|
-
|
|
6633
|
-
|
|
6634
|
-
|
|
6635
|
-
|
|
6636
|
-
|
|
6637
|
-
|
|
6638
|
-
|
|
6639
|
-
|
|
6640
|
-
|
|
6641
|
-
|
|
6642
|
-
|
|
6643
|
-
|
|
6644
|
-
|
|
6645
|
-
|
|
6646
|
-
|
|
6647
|
-
|
|
6648
|
-
|
|
6649
|
-
|
|
6650
|
-
|
|
6651
|
-
|
|
6652
|
-
|
|
6653
|
-
|
|
6654
|
-
|
|
6655
|
-
|
|
6656
|
-
|
|
6657
|
-
|
|
6658
|
-
|
|
6659
|
-
|
|
6660
|
-
|
|
6661
|
-
|
|
6662
|
-
|
|
6663
|
-
|
|
6664
|
-
|
|
6665
|
-
|
|
6666
|
-
|
|
6667
|
-
|
|
6668
|
-
|
|
6669
|
-
|
|
6670
|
-
|
|
6671
|
-
|
|
6672
|
-
|
|
6673
|
-
|
|
6674
|
-
|
|
6675
|
-
|
|
6676
|
-
|
|
6677
|
-
|
|
6678
|
-
|
|
6679
|
-
|
|
6680
|
-
|
|
6681
|
-
|
|
6682
|
-
|
|
6683
|
-
|
|
6684
|
-
|
|
6685
|
-
|
|
6686
|
-
|
|
6687
|
-
|
|
6688
|
-
|
|
6689
|
-
|
|
6690
|
-
|
|
6691
|
-
|
|
6692
|
-
|
|
6693
|
-
|
|
6694
|
-
|
|
6695
|
-
|
|
6696
|
-
|
|
6697
|
-
|
|
6698
|
-
|
|
6699
|
-
|
|
6700
|
-
|
|
6701
|
-
|
|
6702
|
-
|
|
6703
|
-
|
|
6704
|
-
|
|
6705
|
-
|
|
6706
|
-
|
|
6707
|
-
|
|
6708
|
-
|
|
6709
|
-
|
|
6261
|
+
/**
|
|
6262
|
+
* Replaces all placeholders "<<n>>" of given pattern with the n-th replacement (zero based).
|
|
6263
|
+
*
|
|
6264
|
+
* Note: This is a simple text based replacement. Be careful when using backreferences!
|
|
6265
|
+
*
|
|
6266
|
+
* @param {string} pattern the given pattern.
|
|
6267
|
+
* @param {string[]} replacements a list of replacement which can be inserted into the given pattern.
|
|
6268
|
+
* @returns {string} the pattern with all placeholders replaced with their corresponding replacements.
|
|
6269
|
+
* @example replace(/a<<0>>a/.source, [/b+/.source]) === /a(?:b+)a/.source
|
|
6270
|
+
*/
|
|
6271
|
+
function replace(pattern, replacements) {
|
|
6272
|
+
return pattern.replace(/<<(\d+)>>/g, function (m, index) {
|
|
6273
|
+
return '(?:' + replacements[+index] + ')'
|
|
6274
|
+
})
|
|
6275
|
+
}
|
|
6276
|
+
/**
|
|
6277
|
+
* @param {string} pattern
|
|
6278
|
+
* @param {string[]} replacements
|
|
6279
|
+
* @param {string} [flags]
|
|
6280
|
+
* @returns {RegExp}
|
|
6281
|
+
*/
|
|
6282
|
+
function re(pattern, replacements, flags) {
|
|
6283
|
+
return RegExp(replace(pattern, replacements), flags || '')
|
|
6284
|
+
}
|
|
6285
|
+
/**
|
|
6286
|
+
* Creates a nested pattern where all occurrences of the string `<<self>>` are replaced with the pattern itself.
|
|
6287
|
+
*
|
|
6288
|
+
* @param {string} pattern
|
|
6289
|
+
* @param {number} depthLog2
|
|
6290
|
+
* @returns {string}
|
|
6291
|
+
*/
|
|
6292
|
+
function nested(pattern, depthLog2) {
|
|
6293
|
+
for (var i = 0; i < depthLog2; i++) {
|
|
6294
|
+
pattern = pattern.replace(/<<self>>/g, function () {
|
|
6295
|
+
return '(?:' + pattern + ')'
|
|
6296
|
+
});
|
|
6297
|
+
}
|
|
6298
|
+
return pattern.replace(/<<self>>/g, '[^\\s\\S]')
|
|
6299
|
+
} // https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/
|
|
6300
|
+
var keywordKinds = {
|
|
6301
|
+
// keywords which represent a return or variable type
|
|
6302
|
+
type: 'bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void',
|
|
6303
|
+
// keywords which are used to declare a type
|
|
6304
|
+
typeDeclaration: 'class enum interface record struct',
|
|
6305
|
+
// contextual keywords
|
|
6306
|
+
// ("var" and "dynamic" are missing because they are used like types)
|
|
6307
|
+
contextual:
|
|
6308
|
+
'add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)',
|
|
6309
|
+
// all other keywords
|
|
6310
|
+
other:
|
|
6311
|
+
'abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield'
|
|
6312
|
+
}; // keywords
|
|
6313
|
+
function keywordsToPattern(words) {
|
|
6314
|
+
return '\\b(?:' + words.trim().replace(/ /g, '|') + ')\\b'
|
|
6315
|
+
}
|
|
6316
|
+
var typeDeclarationKeywords = keywordsToPattern(
|
|
6317
|
+
keywordKinds.typeDeclaration
|
|
6318
|
+
);
|
|
6319
|
+
var keywords = RegExp(
|
|
6320
|
+
keywordsToPattern(
|
|
6321
|
+
keywordKinds.type +
|
|
6322
|
+
' ' +
|
|
6323
|
+
keywordKinds.typeDeclaration +
|
|
6324
|
+
' ' +
|
|
6325
|
+
keywordKinds.contextual +
|
|
6326
|
+
' ' +
|
|
6327
|
+
keywordKinds.other
|
|
6328
|
+
)
|
|
6329
|
+
);
|
|
6330
|
+
var nonTypeKeywords = keywordsToPattern(
|
|
6331
|
+
keywordKinds.typeDeclaration +
|
|
6332
|
+
' ' +
|
|
6333
|
+
keywordKinds.contextual +
|
|
6334
|
+
' ' +
|
|
6335
|
+
keywordKinds.other
|
|
6336
|
+
);
|
|
6337
|
+
var nonContextualKeywords = keywordsToPattern(
|
|
6338
|
+
keywordKinds.type +
|
|
6339
|
+
' ' +
|
|
6340
|
+
keywordKinds.typeDeclaration +
|
|
6341
|
+
' ' +
|
|
6342
|
+
keywordKinds.other
|
|
6343
|
+
); // types
|
|
6344
|
+
var generic = nested(/<(?:[^<>;=+\-*/%&|^]|<<self>>)*>/.source, 2); // the idea behind the other forbidden characters is to prevent false positives. Same for tupleElement.
|
|
6345
|
+
var nestedRound = nested(/\((?:[^()]|<<self>>)*\)/.source, 2);
|
|
6346
|
+
var name = /@?\b[A-Za-z_]\w*\b/.source;
|
|
6347
|
+
var genericName = replace(/<<0>>(?:\s*<<1>>)?/.source, [name, generic]);
|
|
6348
|
+
var identifier = replace(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source, [
|
|
6349
|
+
nonTypeKeywords,
|
|
6350
|
+
genericName
|
|
6351
|
+
]);
|
|
6352
|
+
var array = /\[\s*(?:,\s*)*\]/.source;
|
|
6353
|
+
var typeExpressionWithoutTuple = replace(
|
|
6354
|
+
/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source,
|
|
6355
|
+
[identifier, array]
|
|
6356
|
+
);
|
|
6357
|
+
var tupleElement = replace(
|
|
6358
|
+
/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source,
|
|
6359
|
+
[generic, nestedRound, array]
|
|
6360
|
+
);
|
|
6361
|
+
var tuple = replace(/\(<<0>>+(?:,<<0>>+)+\)/.source, [tupleElement]);
|
|
6362
|
+
var typeExpression = replace(
|
|
6363
|
+
/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source,
|
|
6364
|
+
[tuple, identifier, array]
|
|
6365
|
+
);
|
|
6366
|
+
var typeInside = {
|
|
6367
|
+
keyword: keywords,
|
|
6368
|
+
punctuation: /[<>()?,.:[\]]/
|
|
6369
|
+
}; // strings & characters
|
|
6370
|
+
// https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/language-specification/lexical-structure#character-literals
|
|
6371
|
+
// https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/language-specification/lexical-structure#string-literals
|
|
6372
|
+
var character = /'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source; // simplified pattern
|
|
6373
|
+
var regularString = /"(?:\\.|[^\\"\r\n])*"/.source;
|
|
6374
|
+
var verbatimString = /@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;
|
|
6375
|
+
Prism.languages.csharp = Prism.languages.extend('clike', {
|
|
6376
|
+
string: [
|
|
6377
|
+
{
|
|
6378
|
+
pattern: re(/(^|[^$\\])<<0>>/.source, [verbatimString]),
|
|
6379
|
+
lookbehind: true,
|
|
6380
|
+
greedy: true
|
|
6381
|
+
},
|
|
6382
|
+
{
|
|
6383
|
+
pattern: re(/(^|[^@$\\])<<0>>/.source, [regularString]),
|
|
6384
|
+
lookbehind: true,
|
|
6385
|
+
greedy: true
|
|
6386
|
+
}
|
|
6387
|
+
],
|
|
6388
|
+
'class-name': [
|
|
6389
|
+
{
|
|
6390
|
+
// Using static
|
|
6391
|
+
// using static System.Math;
|
|
6392
|
+
pattern: re(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source, [
|
|
6393
|
+
identifier
|
|
6394
|
+
]),
|
|
6395
|
+
lookbehind: true,
|
|
6396
|
+
inside: typeInside
|
|
6397
|
+
},
|
|
6398
|
+
{
|
|
6399
|
+
// Using alias (type)
|
|
6400
|
+
// using Project = PC.MyCompany.Project;
|
|
6401
|
+
pattern: re(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source, [
|
|
6402
|
+
name,
|
|
6403
|
+
typeExpression
|
|
6404
|
+
]),
|
|
6405
|
+
lookbehind: true,
|
|
6406
|
+
inside: typeInside
|
|
6407
|
+
},
|
|
6408
|
+
{
|
|
6409
|
+
// Using alias (alias)
|
|
6410
|
+
// using Project = PC.MyCompany.Project;
|
|
6411
|
+
pattern: re(/(\busing\s+)<<0>>(?=\s*=)/.source, [name]),
|
|
6412
|
+
lookbehind: true
|
|
6413
|
+
},
|
|
6414
|
+
{
|
|
6415
|
+
// Type declarations
|
|
6416
|
+
// class Foo<A, B>
|
|
6417
|
+
// interface Foo<out A, B>
|
|
6418
|
+
pattern: re(/(\b<<0>>\s+)<<1>>/.source, [
|
|
6419
|
+
typeDeclarationKeywords,
|
|
6420
|
+
genericName
|
|
6421
|
+
]),
|
|
6422
|
+
lookbehind: true,
|
|
6423
|
+
inside: typeInside
|
|
6424
|
+
},
|
|
6425
|
+
{
|
|
6426
|
+
// Single catch exception declaration
|
|
6427
|
+
// catch(Foo)
|
|
6428
|
+
// (things like catch(Foo e) is covered by variable declaration)
|
|
6429
|
+
pattern: re(/(\bcatch\s*\(\s*)<<0>>/.source, [identifier]),
|
|
6430
|
+
lookbehind: true,
|
|
6431
|
+
inside: typeInside
|
|
6432
|
+
},
|
|
6433
|
+
{
|
|
6434
|
+
// Name of the type parameter of generic constraints
|
|
6435
|
+
// where Foo : class
|
|
6436
|
+
pattern: re(/(\bwhere\s+)<<0>>/.source, [name]),
|
|
6437
|
+
lookbehind: true
|
|
6438
|
+
},
|
|
6439
|
+
{
|
|
6440
|
+
// Casts and checks via as and is.
|
|
6441
|
+
// as Foo<A>, is Bar<B>
|
|
6442
|
+
// (things like if(a is Foo b) is covered by variable declaration)
|
|
6443
|
+
pattern: re(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source, [
|
|
6444
|
+
typeExpressionWithoutTuple
|
|
6445
|
+
]),
|
|
6446
|
+
lookbehind: true,
|
|
6447
|
+
inside: typeInside
|
|
6448
|
+
},
|
|
6449
|
+
{
|
|
6450
|
+
// Variable, field and parameter declaration
|
|
6451
|
+
// (Foo bar, Bar baz, Foo[,,] bay, Foo<Bar, FooBar<Bar>> bax)
|
|
6452
|
+
pattern: re(
|
|
6453
|
+
/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/
|
|
6454
|
+
.source,
|
|
6455
|
+
[typeExpression, nonContextualKeywords, name]
|
|
6456
|
+
),
|
|
6457
|
+
inside: typeInside
|
|
6458
|
+
}
|
|
6459
|
+
],
|
|
6460
|
+
keyword: keywords,
|
|
6461
|
+
// https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/language-specification/lexical-structure#literals
|
|
6462
|
+
number:
|
|
6463
|
+
/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,
|
|
6464
|
+
operator: />>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,
|
|
6465
|
+
punctuation: /\?\.?|::|[{}[\];(),.:]/
|
|
6466
|
+
});
|
|
6467
|
+
Prism.languages.insertBefore('csharp', 'number', {
|
|
6468
|
+
range: {
|
|
6469
|
+
pattern: /\.\./,
|
|
6470
|
+
alias: 'operator'
|
|
6471
|
+
}
|
|
6472
|
+
});
|
|
6473
|
+
Prism.languages.insertBefore('csharp', 'punctuation', {
|
|
6474
|
+
'named-parameter': {
|
|
6475
|
+
pattern: re(/([(,]\s*)<<0>>(?=\s*:)/.source, [name]),
|
|
6476
|
+
lookbehind: true,
|
|
6477
|
+
alias: 'punctuation'
|
|
6478
|
+
}
|
|
6479
|
+
});
|
|
6480
|
+
Prism.languages.insertBefore('csharp', 'class-name', {
|
|
6481
|
+
namespace: {
|
|
6482
|
+
// namespace Foo.Bar {}
|
|
6483
|
+
// using Foo.Bar;
|
|
6484
|
+
pattern: re(
|
|
6485
|
+
/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source,
|
|
6486
|
+
[name]
|
|
6487
|
+
),
|
|
6488
|
+
lookbehind: true,
|
|
6489
|
+
inside: {
|
|
6490
|
+
punctuation: /\./
|
|
6491
|
+
}
|
|
6492
|
+
},
|
|
6493
|
+
'type-expression': {
|
|
6494
|
+
// default(Foo), typeof(Foo<Bar>), sizeof(int)
|
|
6495
|
+
pattern: re(
|
|
6496
|
+
/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/
|
|
6497
|
+
.source,
|
|
6498
|
+
[nestedRound]
|
|
6499
|
+
),
|
|
6500
|
+
lookbehind: true,
|
|
6501
|
+
alias: 'class-name',
|
|
6502
|
+
inside: typeInside
|
|
6503
|
+
},
|
|
6504
|
+
'return-type': {
|
|
6505
|
+
// Foo<Bar> ForBar(); Foo IFoo.Bar() => 0
|
|
6506
|
+
// int this[int index] => 0; T IReadOnlyList<T>.this[int index] => this[index];
|
|
6507
|
+
// int Foo => 0; int Foo { get; set } = 0;
|
|
6508
|
+
pattern: re(
|
|
6509
|
+
/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source,
|
|
6510
|
+
[typeExpression, identifier]
|
|
6511
|
+
),
|
|
6512
|
+
inside: typeInside,
|
|
6513
|
+
alias: 'class-name'
|
|
6514
|
+
},
|
|
6515
|
+
'constructor-invocation': {
|
|
6516
|
+
// new List<Foo<Bar[]>> { }
|
|
6517
|
+
pattern: re(/(\bnew\s+)<<0>>(?=\s*[[({])/.source, [typeExpression]),
|
|
6518
|
+
lookbehind: true,
|
|
6519
|
+
inside: typeInside,
|
|
6520
|
+
alias: 'class-name'
|
|
6521
|
+
},
|
|
6522
|
+
/*'explicit-implementation': {
|
|
6523
|
+
// int IFoo<Foo>.Bar => 0; void IFoo<Foo<Foo>>.Foo<T>();
|
|
6524
|
+
pattern: replace(/\b<<0>>(?=\.<<1>>)/, className, methodOrPropertyDeclaration),
|
|
6525
|
+
inside: classNameInside,
|
|
6526
|
+
alias: 'class-name'
|
|
6527
|
+
},*/
|
|
6528
|
+
'generic-method': {
|
|
6529
|
+
// foo<Bar>()
|
|
6530
|
+
pattern: re(/<<0>>\s*<<1>>(?=\s*\()/.source, [name, generic]),
|
|
6531
|
+
inside: {
|
|
6532
|
+
function: re(/^<<0>>/.source, [name]),
|
|
6533
|
+
generic: {
|
|
6534
|
+
pattern: RegExp(generic),
|
|
6535
|
+
alias: 'class-name',
|
|
6536
|
+
inside: typeInside
|
|
6537
|
+
}
|
|
6538
|
+
}
|
|
6539
|
+
},
|
|
6540
|
+
'type-list': {
|
|
6541
|
+
// The list of types inherited or of generic constraints
|
|
6542
|
+
// class Foo<F> : Bar, IList<FooBar>
|
|
6543
|
+
// where F : Bar, IList<int>
|
|
6544
|
+
pattern: re(
|
|
6545
|
+
/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/
|
|
6546
|
+
.source,
|
|
6547
|
+
[
|
|
6548
|
+
typeDeclarationKeywords,
|
|
6549
|
+
genericName,
|
|
6550
|
+
name,
|
|
6551
|
+
typeExpression,
|
|
6552
|
+
keywords.source,
|
|
6553
|
+
nestedRound,
|
|
6554
|
+
/\bnew\s*\(\s*\)/.source
|
|
6555
|
+
]
|
|
6556
|
+
),
|
|
6557
|
+
lookbehind: true,
|
|
6558
|
+
inside: {
|
|
6559
|
+
'record-arguments': {
|
|
6560
|
+
pattern: re(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source, [
|
|
6561
|
+
genericName,
|
|
6562
|
+
nestedRound
|
|
6563
|
+
]),
|
|
6564
|
+
lookbehind: true,
|
|
6565
|
+
greedy: true,
|
|
6566
|
+
inside: Prism.languages.csharp
|
|
6567
|
+
},
|
|
6568
|
+
keyword: keywords,
|
|
6569
|
+
'class-name': {
|
|
6570
|
+
pattern: RegExp(typeExpression),
|
|
6571
|
+
greedy: true,
|
|
6572
|
+
inside: typeInside
|
|
6573
|
+
},
|
|
6574
|
+
punctuation: /[,()]/
|
|
6575
|
+
}
|
|
6576
|
+
},
|
|
6577
|
+
preprocessor: {
|
|
6578
|
+
pattern: /(^[\t ]*)#.*/m,
|
|
6579
|
+
lookbehind: true,
|
|
6580
|
+
alias: 'property',
|
|
6581
|
+
inside: {
|
|
6582
|
+
// highlight preprocessor directives as keywords
|
|
6583
|
+
directive: {
|
|
6584
|
+
pattern:
|
|
6585
|
+
/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,
|
|
6586
|
+
lookbehind: true,
|
|
6587
|
+
alias: 'keyword'
|
|
6588
|
+
}
|
|
6589
|
+
}
|
|
6590
|
+
}
|
|
6591
|
+
}); // attributes
|
|
6592
|
+
var regularStringOrCharacter = regularString + '|' + character;
|
|
6593
|
+
var regularStringCharacterOrComment = replace(
|
|
6594
|
+
/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source,
|
|
6595
|
+
[regularStringOrCharacter]
|
|
6596
|
+
);
|
|
6597
|
+
var roundExpression = nested(
|
|
6598
|
+
replace(/[^"'/()]|<<0>>|\(<<self>>*\)/.source, [
|
|
6599
|
+
regularStringCharacterOrComment
|
|
6600
|
+
]),
|
|
6601
|
+
2
|
|
6602
|
+
); // https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/attributes/#attribute-targets
|
|
6603
|
+
var attrTarget =
|
|
6604
|
+
/\b(?:assembly|event|field|method|module|param|property|return|type)\b/
|
|
6605
|
+
.source;
|
|
6606
|
+
var attr = replace(/<<0>>(?:\s*\(<<1>>*\))?/.source, [
|
|
6607
|
+
identifier,
|
|
6608
|
+
roundExpression
|
|
6609
|
+
]);
|
|
6610
|
+
Prism.languages.insertBefore('csharp', 'class-name', {
|
|
6611
|
+
attribute: {
|
|
6612
|
+
// Attributes
|
|
6613
|
+
// [Foo], [Foo(1), Bar(2, Prop = "foo")], [return: Foo(1), Bar(2)], [assembly: Foo(Bar)]
|
|
6614
|
+
pattern: re(
|
|
6615
|
+
/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/
|
|
6616
|
+
.source,
|
|
6617
|
+
[attrTarget, attr]
|
|
6618
|
+
),
|
|
6619
|
+
lookbehind: true,
|
|
6620
|
+
greedy: true,
|
|
6621
|
+
inside: {
|
|
6622
|
+
target: {
|
|
6623
|
+
pattern: re(/^<<0>>(?=\s*:)/.source, [attrTarget]),
|
|
6624
|
+
alias: 'keyword'
|
|
6625
|
+
},
|
|
6626
|
+
'attribute-arguments': {
|
|
6627
|
+
pattern: re(/\(<<0>>*\)/.source, [roundExpression]),
|
|
6628
|
+
inside: Prism.languages.csharp
|
|
6629
|
+
},
|
|
6630
|
+
'class-name': {
|
|
6631
|
+
pattern: RegExp(identifier),
|
|
6632
|
+
inside: {
|
|
6633
|
+
punctuation: /\./
|
|
6634
|
+
}
|
|
6635
|
+
},
|
|
6636
|
+
punctuation: /[:,]/
|
|
6637
|
+
}
|
|
6638
|
+
}
|
|
6639
|
+
}); // string interpolation
|
|
6640
|
+
var formatString = /:[^}\r\n]+/.source; // multi line
|
|
6641
|
+
var mInterpolationRound = nested(
|
|
6642
|
+
replace(/[^"'/()]|<<0>>|\(<<self>>*\)/.source, [
|
|
6643
|
+
regularStringCharacterOrComment
|
|
6644
|
+
]),
|
|
6645
|
+
2
|
|
6646
|
+
);
|
|
6647
|
+
var mInterpolation = replace(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source, [
|
|
6648
|
+
mInterpolationRound,
|
|
6649
|
+
formatString
|
|
6650
|
+
]); // single line
|
|
6651
|
+
var sInterpolationRound = nested(
|
|
6652
|
+
replace(
|
|
6653
|
+
/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<<self>>*\)/
|
|
6654
|
+
.source,
|
|
6655
|
+
[regularStringOrCharacter]
|
|
6656
|
+
),
|
|
6657
|
+
2
|
|
6658
|
+
);
|
|
6659
|
+
var sInterpolation = replace(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source, [
|
|
6660
|
+
sInterpolationRound,
|
|
6661
|
+
formatString
|
|
6662
|
+
]);
|
|
6663
|
+
function createInterpolationInside(interpolation, interpolationRound) {
|
|
6664
|
+
return {
|
|
6665
|
+
interpolation: {
|
|
6666
|
+
pattern: re(/((?:^|[^{])(?:\{\{)*)<<0>>/.source, [interpolation]),
|
|
6667
|
+
lookbehind: true,
|
|
6668
|
+
inside: {
|
|
6669
|
+
'format-string': {
|
|
6670
|
+
pattern: re(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source, [
|
|
6671
|
+
interpolationRound,
|
|
6672
|
+
formatString
|
|
6673
|
+
]),
|
|
6674
|
+
lookbehind: true,
|
|
6675
|
+
inside: {
|
|
6676
|
+
punctuation: /^:/
|
|
6677
|
+
}
|
|
6678
|
+
},
|
|
6679
|
+
punctuation: /^\{|\}$/,
|
|
6680
|
+
expression: {
|
|
6681
|
+
pattern: /[\s\S]+/,
|
|
6682
|
+
alias: 'language-csharp',
|
|
6683
|
+
inside: Prism.languages.csharp
|
|
6684
|
+
}
|
|
6685
|
+
}
|
|
6686
|
+
},
|
|
6687
|
+
string: /[\s\S]+/
|
|
6688
|
+
}
|
|
6689
|
+
}
|
|
6690
|
+
Prism.languages.insertBefore('csharp', 'string', {
|
|
6691
|
+
'interpolation-string': [
|
|
6692
|
+
{
|
|
6693
|
+
pattern: re(
|
|
6694
|
+
/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source,
|
|
6695
|
+
[mInterpolation]
|
|
6696
|
+
),
|
|
6697
|
+
lookbehind: true,
|
|
6698
|
+
greedy: true,
|
|
6699
|
+
inside: createInterpolationInside(mInterpolation, mInterpolationRound)
|
|
6700
|
+
},
|
|
6701
|
+
{
|
|
6702
|
+
pattern: re(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source, [
|
|
6703
|
+
sInterpolation
|
|
6704
|
+
]),
|
|
6705
|
+
lookbehind: true,
|
|
6706
|
+
greedy: true,
|
|
6707
|
+
inside: createInterpolationInside(sInterpolation, sInterpolationRound)
|
|
6708
|
+
}
|
|
6709
|
+
],
|
|
6710
|
+
char: {
|
|
6711
|
+
pattern: RegExp(character),
|
|
6712
|
+
greedy: true
|
|
6713
|
+
}
|
|
6714
|
+
});
|
|
6715
|
+
Prism.languages.dotnet = Prism.languages.cs = Prism.languages.csharp;
|
|
6716
|
+
})(Prism);
|
|
6717
|
+
}
|
|
6718
|
+
return csharp_1;
|
|
6710
6719
|
}
|
|
6711
6720
|
|
|
6712
|
-
var refractorCsharp
|
|
6721
|
+
var refractorCsharp = requireCsharp();
|
|
6713
6722
|
var aspnet_1 = aspnet;
|
|
6714
6723
|
aspnet.displayName = 'aspnet';
|
|
6715
6724
|
aspnet.aliases = [];
|
|
6716
6725
|
function aspnet(Prism) {
|
|
6717
|
-
Prism.register(refractorCsharp
|
|
6726
|
+
Prism.register(refractorCsharp);
|
|
6718
6727
|
Prism.languages.aspnet = Prism.languages.extend('markup', {
|
|
6719
6728
|
'page-directive': {
|
|
6720
6729
|
pattern: /<%\s*@.*%>/,
|
|
@@ -7027,56 +7036,65 @@ function avisynth(Prism) {
|
|
|
7027
7036
|
})(Prism);
|
|
7028
7037
|
}
|
|
7029
7038
|
|
|
7030
|
-
var avroIdl_1
|
|
7031
|
-
|
|
7032
|
-
|
|
7033
|
-
function
|
|
7034
|
-
|
|
7035
|
-
|
|
7036
|
-
|
|
7037
|
-
|
|
7038
|
-
|
|
7039
|
-
|
|
7040
|
-
|
|
7041
|
-
|
|
7042
|
-
|
|
7043
|
-
|
|
7044
|
-
|
|
7045
|
-
|
|
7046
|
-
|
|
7047
|
-
|
|
7048
|
-
|
|
7049
|
-
|
|
7050
|
-
|
|
7051
|
-
|
|
7052
|
-
|
|
7053
|
-
|
|
7054
|
-
|
|
7055
|
-
|
|
7056
|
-
|
|
7057
|
-
|
|
7058
|
-
|
|
7059
|
-
|
|
7060
|
-
|
|
7061
|
-
|
|
7062
|
-
|
|
7063
|
-
|
|
7064
|
-
|
|
7065
|
-
|
|
7066
|
-
|
|
7067
|
-
|
|
7068
|
-
|
|
7069
|
-
|
|
7070
|
-
|
|
7071
|
-
|
|
7072
|
-
|
|
7073
|
-
|
|
7074
|
-
|
|
7075
|
-
|
|
7076
|
-
|
|
7077
|
-
|
|
7078
|
-
|
|
7079
|
-
|
|
7039
|
+
var avroIdl_1;
|
|
7040
|
+
var hasRequiredAvroIdl;
|
|
7041
|
+
|
|
7042
|
+
function requireAvroIdl () {
|
|
7043
|
+
if (hasRequiredAvroIdl) return avroIdl_1;
|
|
7044
|
+
hasRequiredAvroIdl = 1;
|
|
7045
|
+
|
|
7046
|
+
avroIdl_1 = avroIdl;
|
|
7047
|
+
avroIdl.displayName = 'avroIdl';
|
|
7048
|
+
avroIdl.aliases = [];
|
|
7049
|
+
function avroIdl(Prism) {
|
|
7050
|
+
// GitHub: https://github.com/apache/avro
|
|
7051
|
+
// Docs: https://avro.apache.org/docs/current/idl.html
|
|
7052
|
+
Prism.languages['avro-idl'] = {
|
|
7053
|
+
comment: {
|
|
7054
|
+
pattern: /\/\/.*|\/\*[\s\S]*?\*\//,
|
|
7055
|
+
greedy: true
|
|
7056
|
+
},
|
|
7057
|
+
string: {
|
|
7058
|
+
pattern: /(^|[^\\])"(?:[^\r\n"\\]|\\.)*"/,
|
|
7059
|
+
lookbehind: true,
|
|
7060
|
+
greedy: true
|
|
7061
|
+
},
|
|
7062
|
+
annotation: {
|
|
7063
|
+
pattern: /@(?:[$\w.-]|`[^\r\n`]+`)+/,
|
|
7064
|
+
greedy: true,
|
|
7065
|
+
alias: 'function'
|
|
7066
|
+
},
|
|
7067
|
+
'function-identifier': {
|
|
7068
|
+
pattern: /`[^\r\n`]+`(?=\s*\()/,
|
|
7069
|
+
greedy: true,
|
|
7070
|
+
alias: 'function'
|
|
7071
|
+
},
|
|
7072
|
+
identifier: {
|
|
7073
|
+
pattern: /`[^\r\n`]+`/,
|
|
7074
|
+
greedy: true
|
|
7075
|
+
},
|
|
7076
|
+
'class-name': {
|
|
7077
|
+
pattern: /(\b(?:enum|error|protocol|record|throws)\b\s+)[$\w]+/,
|
|
7078
|
+
lookbehind: true,
|
|
7079
|
+
greedy: true
|
|
7080
|
+
},
|
|
7081
|
+
keyword:
|
|
7082
|
+
/\b(?:array|boolean|bytes|date|decimal|double|enum|error|false|fixed|float|idl|import|int|local_timestamp_ms|long|map|null|oneway|protocol|record|schema|string|throws|time_ms|timestamp_ms|true|union|uuid|void)\b/,
|
|
7083
|
+
function: /\b[a-z_]\w*(?=\s*\()/i,
|
|
7084
|
+
number: [
|
|
7085
|
+
{
|
|
7086
|
+
pattern:
|
|
7087
|
+
/(^|[^\w.])-?(?:(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|0x(?:[a-f0-9]+(?:\.[a-f0-9]*)?|\.[a-f0-9]+)(?:p[+-]?\d+)?)[dfl]?(?![\w.])/i,
|
|
7088
|
+
lookbehind: true
|
|
7089
|
+
},
|
|
7090
|
+
/-?\b(?:Infinity|NaN)\b/
|
|
7091
|
+
],
|
|
7092
|
+
operator: /=/,
|
|
7093
|
+
punctuation: /[()\[\]{}<>.:,;-]/
|
|
7094
|
+
};
|
|
7095
|
+
Prism.languages.avdl = Prism.languages['avro-idl'];
|
|
7096
|
+
}
|
|
7097
|
+
return avroIdl_1;
|
|
7080
7098
|
}
|
|
7081
7099
|
|
|
7082
7100
|
var bash_1 = bash;
|
|
@@ -7658,30 +7676,39 @@ function bnf(Prism) {
|
|
|
7658
7676
|
Prism.languages.rbnf = Prism.languages.bnf;
|
|
7659
7677
|
}
|
|
7660
7678
|
|
|
7661
|
-
var brainfuck_1
|
|
7662
|
-
|
|
7663
|
-
|
|
7664
|
-
function
|
|
7665
|
-
|
|
7666
|
-
|
|
7667
|
-
|
|
7668
|
-
|
|
7669
|
-
|
|
7670
|
-
|
|
7671
|
-
|
|
7672
|
-
|
|
7673
|
-
|
|
7674
|
-
|
|
7675
|
-
|
|
7676
|
-
|
|
7677
|
-
|
|
7678
|
-
|
|
7679
|
-
|
|
7680
|
-
|
|
7681
|
-
|
|
7682
|
-
|
|
7683
|
-
|
|
7684
|
-
|
|
7679
|
+
var brainfuck_1;
|
|
7680
|
+
var hasRequiredBrainfuck;
|
|
7681
|
+
|
|
7682
|
+
function requireBrainfuck () {
|
|
7683
|
+
if (hasRequiredBrainfuck) return brainfuck_1;
|
|
7684
|
+
hasRequiredBrainfuck = 1;
|
|
7685
|
+
|
|
7686
|
+
brainfuck_1 = brainfuck;
|
|
7687
|
+
brainfuck.displayName = 'brainfuck';
|
|
7688
|
+
brainfuck.aliases = [];
|
|
7689
|
+
function brainfuck(Prism) {
|
|
7690
|
+
Prism.languages.brainfuck = {
|
|
7691
|
+
pointer: {
|
|
7692
|
+
pattern: /<|>/,
|
|
7693
|
+
alias: 'keyword'
|
|
7694
|
+
},
|
|
7695
|
+
increment: {
|
|
7696
|
+
pattern: /\+/,
|
|
7697
|
+
alias: 'inserted'
|
|
7698
|
+
},
|
|
7699
|
+
decrement: {
|
|
7700
|
+
pattern: /-/,
|
|
7701
|
+
alias: 'deleted'
|
|
7702
|
+
},
|
|
7703
|
+
branching: {
|
|
7704
|
+
pattern: /\[|\]/,
|
|
7705
|
+
alias: 'important'
|
|
7706
|
+
},
|
|
7707
|
+
operator: /[.,]/,
|
|
7708
|
+
comment: /\S+/
|
|
7709
|
+
};
|
|
7710
|
+
}
|
|
7711
|
+
return brainfuck_1;
|
|
7685
7712
|
}
|
|
7686
7713
|
|
|
7687
7714
|
var brightscript_1 = brightscript;
|
|
@@ -8076,951 +8103,1012 @@ function cmake(Prism) {
|
|
|
8076
8103
|
};
|
|
8077
8104
|
}
|
|
8078
8105
|
|
|
8079
|
-
var cobol_1 = cobol;
|
|
8080
|
-
cobol.displayName = 'cobol';
|
|
8081
|
-
cobol.aliases = [];
|
|
8082
|
-
function cobol(Prism) {
|
|
8083
|
-
Prism.languages.cobol = {
|
|
8084
|
-
comment: {
|
|
8085
|
-
pattern: /\*>.*|(^[ \t]*)\*.*/m,
|
|
8086
|
-
lookbehind: true,
|
|
8087
|
-
greedy: true
|
|
8088
|
-
},
|
|
8089
|
-
string: {
|
|
8090
|
-
pattern: /[xzgn]?(?:"(?:[^\r\n"]|"")*"(?!")|'(?:[^\r\n']|'')*'(?!'))/i,
|
|
8091
|
-
greedy: true
|
|
8092
|
-
},
|
|
8093
|
-
level: {
|
|
8094
|
-
pattern: /(^[ \t]*)\d+\b/m,
|
|
8095
|
-
lookbehind: true,
|
|
8096
|
-
greedy: true,
|
|
8097
|
-
alias: 'number'
|
|
8098
|
-
},
|
|
8099
|
-
'class-name': {
|
|
8100
|
-
// https://github.com/antlr/grammars-v4/blob/42edd5b687d183b5fa679e858a82297bd27141e7/cobol85/Cobol85.g4#L1015
|
|
8101
|
-
pattern:
|
|
8102
|
-
/(\bpic(?:ture)?\s+)(?:(?:[-\w$/,:*+<>]|\.(?!\s|$))(?:\(\d+\))?)+/i,
|
|
8103
|
-
lookbehind: true,
|
|
8104
|
-
inside: {
|
|
8105
|
-
number: {
|
|
8106
|
-
pattern: /(\()\d+/,
|
|
8107
|
-
lookbehind: true
|
|
8108
|
-
},
|
|
8109
|
-
punctuation: /[()]/
|
|
8110
|
-
}
|
|
8111
|
-
},
|
|
8112
|
-
keyword: {
|
|
8113
|
-
pattern:
|
|
8114
|
-
/(^|[^\w-])(?:ABORT|ACCEPT|ACCESS|ADD|ADDRESS|ADVANCING|AFTER|ALIGNED|ALL|ALPHABET|ALPHABETIC|ALPHABETIC-LOWER|ALPHABETIC-UPPER|ALPHANUMERIC|ALPHANUMERIC-EDITED|ALSO|ALTER|ALTERNATE|ANY|ARE|AREA|AREAS|AS|ASCENDING|ASCII|ASSIGN|ASSOCIATED-DATA|ASSOCIATED-DATA-LENGTH|AT|ATTRIBUTE|AUTHOR|AUTO|AUTO-SKIP|BACKGROUND-COLOR|BACKGROUND-COLOUR|BASIS|BEEP|BEFORE|BEGINNING|BELL|BINARY|BIT|BLANK|BLINK|BLOCK|BOTTOM|BOUNDS|BY|BYFUNCTION|BYTITLE|CALL|CANCEL|CAPABLE|CCSVERSION|CD|CF|CH|CHAINING|CHANGED|CHANNEL|CHARACTER|CHARACTERS|CLASS|CLASS-ID|CLOCK-UNITS|CLOSE|CLOSE-DISPOSITION|COBOL|CODE|CODE-SET|COL|COLLATING|COLUMN|COM-REG|COMMA|COMMITMENT|COMMON|COMMUNICATION|COMP|COMP-1|COMP-2|COMP-3|COMP-4|COMP-5|COMPUTATIONAL|COMPUTATIONAL-1|COMPUTATIONAL-2|COMPUTATIONAL-3|COMPUTATIONAL-4|COMPUTATIONAL-5|COMPUTE|CONFIGURATION|CONTAINS|CONTENT|CONTINUE|CONTROL|CONTROL-POINT|CONTROLS|CONVENTION|CONVERTING|COPY|CORR|CORRESPONDING|COUNT|CRUNCH|CURRENCY|CURSOR|DATA|DATA-BASE|DATE|DATE-COMPILED|DATE-WRITTEN|DAY|DAY-OF-WEEK|DBCS|DE|DEBUG-CONTENTS|DEBUG-ITEM|DEBUG-LINE|DEBUG-NAME|DEBUG-SUB-1|DEBUG-SUB-2|DEBUG-SUB-3|DEBUGGING|DECIMAL-POINT|DECLARATIVES|DEFAULT|DEFAULT-DISPLAY|DEFINITION|DELETE|DELIMITED|DELIMITER|DEPENDING|DESCENDING|DESTINATION|DETAIL|DFHRESP|DFHVALUE|DISABLE|DISK|DISPLAY|DISPLAY-1|DIVIDE|DIVISION|DONTCARE|DOUBLE|DOWN|DUPLICATES|DYNAMIC|EBCDIC|EGCS|EGI|ELSE|EMI|EMPTY-CHECK|ENABLE|END|END-ACCEPT|END-ADD|END-CALL|END-COMPUTE|END-DELETE|END-DIVIDE|END-EVALUATE|END-IF|END-MULTIPLY|END-OF-PAGE|END-PERFORM|END-READ|END-RECEIVE|END-RETURN|END-REWRITE|END-SEARCH|END-START|END-STRING|END-SUBTRACT|END-UNSTRING|END-WRITE|ENDING|ENTER|ENTRY|ENTRY-PROCEDURE|ENVIRONMENT|EOL|EOP|EOS|ERASE|ERROR|ESCAPE|ESI|EVALUATE|EVENT|EVERY|EXCEPTION|EXCLUSIVE|EXHIBIT|EXIT|EXPORT|EXTEND|EXTENDED|EXTERNAL|FD|FILE|FILE-CONTROL|FILLER|FINAL|FIRST|FOOTING|FOR|FOREGROUND-COLOR|FOREGROUND-COLOUR|FROM|FULL|FUNCTION|FUNCTION-POINTER|FUNCTIONNAME|GENERATE|GIVING|GLOBAL|GO|GOBACK|GRID|GROUP|HEADING|HIGH-VALUE|HIGH-VALUES|HIGHLIGHT|I-O|I-O-CONTROL|ID|IDENTIFICATION|IF|IMPLICIT|IMPORT|IN|INDEX|INDEXED|INDICATE|INITIAL|INITIALIZE|INITIATE|INPUT|INPUT-OUTPUT|INSPECT|INSTALLATION|INTEGER|INTO|INVALID|INVOKE|IS|JUST|JUSTIFIED|KANJI|KEPT|KEY|KEYBOARD|LABEL|LANGUAGE|LAST|LB|LD|LEADING|LEFT|LEFTLINE|LENGTH|LENGTH-CHECK|LIBACCESS|LIBPARAMETER|LIBRARY|LIMIT|LIMITS|LINAGE|LINAGE-COUNTER|LINE|LINE-COUNTER|LINES|LINKAGE|LIST|LOCAL|LOCAL-STORAGE|LOCK|LONG-DATE|LONG-TIME|LOW-VALUE|LOW-VALUES|LOWER|LOWLIGHT|MEMORY|MERGE|MESSAGE|MMDDYYYY|MODE|MODULES|MORE-LABELS|MOVE|MULTIPLE|MULTIPLY|NAMED|NATIONAL|NATIONAL-EDITED|NATIVE|NEGATIVE|NETWORK|NEXT|NO|NO-ECHO|NULL|NULLS|NUMBER|NUMERIC|NUMERIC-DATE|NUMERIC-EDITED|NUMERIC-TIME|OBJECT-COMPUTER|OCCURS|ODT|OF|OFF|OMITTED|ON|OPEN|OPTIONAL|ORDER|ORDERLY|ORGANIZATION|OTHER|OUTPUT|OVERFLOW|OVERLINE|OWN|PACKED-DECIMAL|PADDING|PAGE|PAGE-COUNTER|PASSWORD|PERFORM|PF|PH|PIC|PICTURE|PLUS|POINTER|PORT|POSITION|POSITIVE|PRINTER|PRINTING|PRIVATE|PROCEDURE|PROCEDURE-POINTER|PROCEDURES|PROCEED|PROCESS|PROGRAM|PROGRAM-ID|PROGRAM-LIBRARY|PROMPT|PURGE|QUEUE|QUOTE|QUOTES|RANDOM|RD|READ|READER|REAL|RECEIVE|RECEIVED|RECORD|RECORDING|RECORDS|RECURSIVE|REDEFINES|REEL|REF|REFERENCE|REFERENCES|RELATIVE|RELEASE|REMAINDER|REMARKS|REMOTE|REMOVAL|REMOVE|RENAMES|REPLACE|REPLACING|REPORT|REPORTING|REPORTS|REQUIRED|RERUN|RESERVE|RESET|RETURN|RETURN-CODE|RETURNING|REVERSE-VIDEO|REVERSED|REWIND|REWRITE|RF|RH|RIGHT|ROUNDED|RUN|SAME|SAVE|SCREEN|SD|SEARCH|SECTION|SECURE|SECURITY|SEGMENT|SEGMENT-LIMIT|SELECT|SEND|SENTENCE|SEPARATE|SEQUENCE|SEQUENTIAL|SET|SHARED|SHAREDBYALL|SHAREDBYRUNUNIT|SHARING|SHIFT-IN|SHIFT-OUT|SHORT-DATE|SIGN|SIZE|SORT|SORT-CONTROL|SORT-CORE-SIZE|SORT-FILE-SIZE|SORT-MERGE|SORT-MESSAGE|SORT-MODE-SIZE|SORT-RETURN|SOURCE|SOURCE-COMPUTER|SPACE|SPACES|SPECIAL-NAMES|STANDARD|STANDARD-1|STANDARD-2|START|STATUS|STOP|STRING|SUB-QUEUE-1|SUB-QUEUE-2|SUB-QUEUE-3|SUBTRACT|SUM|SUPPRESS|SYMBOL|SYMBOLIC|SYNC|SYNCHRONIZED|TABLE|TALLY|TALLYING|TAPE|TASK|TERMINAL|TERMINATE|TEST|TEXT|THEN|THREAD|THREAD-LOCAL|THROUGH|THRU|TIME|TIMER|TIMES|TITLE|TO|TODAYS-DATE|TODAYS-NAME|TOP|TRAILING|TRUNCATED|TYPE|TYPEDEF|UNDERLINE|UNIT|UNSTRING|UNTIL|UP|UPON|USAGE|USE|USING|VALUE|VALUES|VARYING|VIRTUAL|WAIT|WHEN|WHEN-COMPILED|WITH|WORDS|WORKING-STORAGE|WRITE|YEAR|YYYYDDD|YYYYMMDD|ZERO-FILL|ZEROES|ZEROS)(?![\w-])/i,
|
|
8115
|
-
lookbehind: true
|
|
8116
|
-
},
|
|
8117
|
-
boolean: {
|
|
8118
|
-
pattern: /(^|[^\w-])(?:false|true)(?![\w-])/i,
|
|
8119
|
-
lookbehind: true
|
|
8120
|
-
},
|
|
8121
|
-
number: {
|
|
8122
|
-
pattern:
|
|
8123
|
-
/(^|[^\w-])(?:[+-]?(?:(?:\d+(?:[.,]\d+)?|[.,]\d+)(?:e[+-]?\d+)?|zero))(?![\w-])/i,
|
|
8124
|
-
lookbehind: true
|
|
8125
|
-
},
|
|
8126
|
-
operator: [
|
|
8127
|
-
/<>|[<>]=?|[=+*/&]/,
|
|
8128
|
-
{
|
|
8129
|
-
pattern: /(^|[^\w-])(?:-|and|equal|greater|less|not|or|than)(?![\w-])/i,
|
|
8130
|
-
lookbehind: true
|
|
8131
|
-
}
|
|
8132
|
-
],
|
|
8133
|
-
punctuation: /[.:,()]/
|
|
8134
|
-
};
|
|
8135
|
-
}
|
|
8136
|
-
|
|
8137
|
-
var coffeescript_1 = coffeescript;
|
|
8138
|
-
coffeescript.displayName = 'coffeescript';
|
|
8139
|
-
coffeescript.aliases = ['coffee'];
|
|
8140
|
-
function coffeescript(Prism) {
|
|
8141
|
-
(function (Prism) {
|
|
8142
|
-
// Ignore comments starting with { to privilege string interpolation highlighting
|
|
8143
|
-
var comment = /#(?!\{).+/;
|
|
8144
|
-
var interpolation = {
|
|
8145
|
-
pattern: /#\{[^}]+\}/,
|
|
8146
|
-
alias: 'variable'
|
|
8147
|
-
};
|
|
8148
|
-
Prism.languages.coffeescript = Prism.languages.extend('javascript', {
|
|
8149
|
-
comment: comment,
|
|
8150
|
-
string: [
|
|
8151
|
-
// Strings are multiline
|
|
8152
|
-
{
|
|
8153
|
-
pattern: /'(?:\\[\s\S]|[^\\'])*'/,
|
|
8154
|
-
greedy: true
|
|
8155
|
-
},
|
|
8156
|
-
{
|
|
8157
|
-
// Strings are multiline
|
|
8158
|
-
pattern: /"(?:\\[\s\S]|[^\\"])*"/,
|
|
8159
|
-
greedy: true,
|
|
8160
|
-
inside: {
|
|
8161
|
-
interpolation: interpolation
|
|
8162
|
-
}
|
|
8163
|
-
}
|
|
8164
|
-
],
|
|
8165
|
-
keyword:
|
|
8166
|
-
/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,
|
|
8167
|
-
'class-member': {
|
|
8168
|
-
pattern: /@(?!\d)\w+/,
|
|
8169
|
-
alias: 'variable'
|
|
8170
|
-
}
|
|
8171
|
-
});
|
|
8172
|
-
Prism.languages.insertBefore('coffeescript', 'comment', {
|
|
8173
|
-
'multiline-comment': {
|
|
8174
|
-
pattern: /###[\s\S]+?###/,
|
|
8175
|
-
alias: 'comment'
|
|
8176
|
-
},
|
|
8177
|
-
// Block regexp can contain comments and interpolation
|
|
8178
|
-
'block-regex': {
|
|
8179
|
-
pattern: /\/{3}[\s\S]*?\/{3}/,
|
|
8180
|
-
alias: 'regex',
|
|
8181
|
-
inside: {
|
|
8182
|
-
comment: comment,
|
|
8183
|
-
interpolation: interpolation
|
|
8184
|
-
}
|
|
8185
|
-
}
|
|
8186
|
-
});
|
|
8187
|
-
Prism.languages.insertBefore('coffeescript', 'string', {
|
|
8188
|
-
'inline-javascript': {
|
|
8189
|
-
pattern: /`(?:\\[\s\S]|[^\\`])*`/,
|
|
8190
|
-
inside: {
|
|
8191
|
-
delimiter: {
|
|
8192
|
-
pattern: /^`|`$/,
|
|
8193
|
-
alias: 'punctuation'
|
|
8194
|
-
},
|
|
8195
|
-
script: {
|
|
8196
|
-
pattern: /[\s\S]+/,
|
|
8197
|
-
alias: 'language-javascript',
|
|
8198
|
-
inside: Prism.languages.javascript
|
|
8199
|
-
}
|
|
8200
|
-
}
|
|
8201
|
-
},
|
|
8202
|
-
// Block strings
|
|
8203
|
-
'multiline-string': [
|
|
8204
|
-
{
|
|
8205
|
-
pattern: /'''[\s\S]*?'''/,
|
|
8206
|
-
greedy: true,
|
|
8207
|
-
alias: 'string'
|
|
8208
|
-
},
|
|
8209
|
-
{
|
|
8210
|
-
pattern: /"""[\s\S]*?"""/,
|
|
8211
|
-
greedy: true,
|
|
8212
|
-
alias: 'string',
|
|
8213
|
-
inside: {
|
|
8214
|
-
interpolation: interpolation
|
|
8215
|
-
}
|
|
8216
|
-
}
|
|
8217
|
-
]
|
|
8218
|
-
});
|
|
8219
|
-
Prism.languages.insertBefore('coffeescript', 'keyword', {
|
|
8220
|
-
// Object property
|
|
8221
|
-
property: /(?!\d)\w+(?=\s*:(?!:))/
|
|
8222
|
-
});
|
|
8223
|
-
delete Prism.languages.coffeescript['template-string'];
|
|
8224
|
-
Prism.languages.coffee = Prism.languages.coffeescript;
|
|
8225
|
-
})(Prism);
|
|
8226
|
-
}
|
|
8227
|
-
|
|
8228
|
-
var concurnas_1 = concurnas;
|
|
8229
|
-
concurnas.displayName = 'concurnas';
|
|
8230
|
-
concurnas.aliases = ['conc'];
|
|
8231
|
-
function concurnas(Prism) {
|
|
8232
|
-
Prism.languages.concurnas = {
|
|
8106
|
+
var cobol_1 = cobol;
|
|
8107
|
+
cobol.displayName = 'cobol';
|
|
8108
|
+
cobol.aliases = [];
|
|
8109
|
+
function cobol(Prism) {
|
|
8110
|
+
Prism.languages.cobol = {
|
|
8233
8111
|
comment: {
|
|
8234
|
-
pattern:
|
|
8112
|
+
pattern: /\*>.*|(^[ \t]*)\*.*/m,
|
|
8235
8113
|
lookbehind: true,
|
|
8236
8114
|
greedy: true
|
|
8237
8115
|
},
|
|
8238
|
-
|
|
8239
|
-
pattern:
|
|
8116
|
+
string: {
|
|
8117
|
+
pattern: /[xzgn]?(?:"(?:[^\r\n"]|"")*"(?!")|'(?:[^\r\n']|'')*'(?!'))/i,
|
|
8118
|
+
greedy: true
|
|
8119
|
+
},
|
|
8120
|
+
level: {
|
|
8121
|
+
pattern: /(^[ \t]*)\d+\b/m,
|
|
8122
|
+
lookbehind: true,
|
|
8240
8123
|
greedy: true,
|
|
8124
|
+
alias: 'number'
|
|
8125
|
+
},
|
|
8126
|
+
'class-name': {
|
|
8127
|
+
// https://github.com/antlr/grammars-v4/blob/42edd5b687d183b5fa679e858a82297bd27141e7/cobol85/Cobol85.g4#L1015
|
|
8128
|
+
pattern:
|
|
8129
|
+
/(\bpic(?:ture)?\s+)(?:(?:[-\w$/,:*+<>]|\.(?!\s|$))(?:\(\d+\))?)+/i,
|
|
8130
|
+
lookbehind: true,
|
|
8241
8131
|
inside: {
|
|
8242
|
-
|
|
8243
|
-
|
|
8244
|
-
pattern: /(^\s*\|\|)[\s\S]+(?=\|\|$)/,
|
|
8132
|
+
number: {
|
|
8133
|
+
pattern: /(\()\d+/,
|
|
8245
8134
|
lookbehind: true
|
|
8246
8135
|
},
|
|
8247
|
-
punctuation:
|
|
8136
|
+
punctuation: /[()]/
|
|
8248
8137
|
}
|
|
8249
8138
|
},
|
|
8250
|
-
|
|
8251
|
-
pattern:
|
|
8139
|
+
keyword: {
|
|
8140
|
+
pattern:
|
|
8141
|
+
/(^|[^\w-])(?:ABORT|ACCEPT|ACCESS|ADD|ADDRESS|ADVANCING|AFTER|ALIGNED|ALL|ALPHABET|ALPHABETIC|ALPHABETIC-LOWER|ALPHABETIC-UPPER|ALPHANUMERIC|ALPHANUMERIC-EDITED|ALSO|ALTER|ALTERNATE|ANY|ARE|AREA|AREAS|AS|ASCENDING|ASCII|ASSIGN|ASSOCIATED-DATA|ASSOCIATED-DATA-LENGTH|AT|ATTRIBUTE|AUTHOR|AUTO|AUTO-SKIP|BACKGROUND-COLOR|BACKGROUND-COLOUR|BASIS|BEEP|BEFORE|BEGINNING|BELL|BINARY|BIT|BLANK|BLINK|BLOCK|BOTTOM|BOUNDS|BY|BYFUNCTION|BYTITLE|CALL|CANCEL|CAPABLE|CCSVERSION|CD|CF|CH|CHAINING|CHANGED|CHANNEL|CHARACTER|CHARACTERS|CLASS|CLASS-ID|CLOCK-UNITS|CLOSE|CLOSE-DISPOSITION|COBOL|CODE|CODE-SET|COL|COLLATING|COLUMN|COM-REG|COMMA|COMMITMENT|COMMON|COMMUNICATION|COMP|COMP-1|COMP-2|COMP-3|COMP-4|COMP-5|COMPUTATIONAL|COMPUTATIONAL-1|COMPUTATIONAL-2|COMPUTATIONAL-3|COMPUTATIONAL-4|COMPUTATIONAL-5|COMPUTE|CONFIGURATION|CONTAINS|CONTENT|CONTINUE|CONTROL|CONTROL-POINT|CONTROLS|CONVENTION|CONVERTING|COPY|CORR|CORRESPONDING|COUNT|CRUNCH|CURRENCY|CURSOR|DATA|DATA-BASE|DATE|DATE-COMPILED|DATE-WRITTEN|DAY|DAY-OF-WEEK|DBCS|DE|DEBUG-CONTENTS|DEBUG-ITEM|DEBUG-LINE|DEBUG-NAME|DEBUG-SUB-1|DEBUG-SUB-2|DEBUG-SUB-3|DEBUGGING|DECIMAL-POINT|DECLARATIVES|DEFAULT|DEFAULT-DISPLAY|DEFINITION|DELETE|DELIMITED|DELIMITER|DEPENDING|DESCENDING|DESTINATION|DETAIL|DFHRESP|DFHVALUE|DISABLE|DISK|DISPLAY|DISPLAY-1|DIVIDE|DIVISION|DONTCARE|DOUBLE|DOWN|DUPLICATES|DYNAMIC|EBCDIC|EGCS|EGI|ELSE|EMI|EMPTY-CHECK|ENABLE|END|END-ACCEPT|END-ADD|END-CALL|END-COMPUTE|END-DELETE|END-DIVIDE|END-EVALUATE|END-IF|END-MULTIPLY|END-OF-PAGE|END-PERFORM|END-READ|END-RECEIVE|END-RETURN|END-REWRITE|END-SEARCH|END-START|END-STRING|END-SUBTRACT|END-UNSTRING|END-WRITE|ENDING|ENTER|ENTRY|ENTRY-PROCEDURE|ENVIRONMENT|EOL|EOP|EOS|ERASE|ERROR|ESCAPE|ESI|EVALUATE|EVENT|EVERY|EXCEPTION|EXCLUSIVE|EXHIBIT|EXIT|EXPORT|EXTEND|EXTENDED|EXTERNAL|FD|FILE|FILE-CONTROL|FILLER|FINAL|FIRST|FOOTING|FOR|FOREGROUND-COLOR|FOREGROUND-COLOUR|FROM|FULL|FUNCTION|FUNCTION-POINTER|FUNCTIONNAME|GENERATE|GIVING|GLOBAL|GO|GOBACK|GRID|GROUP|HEADING|HIGH-VALUE|HIGH-VALUES|HIGHLIGHT|I-O|I-O-CONTROL|ID|IDENTIFICATION|IF|IMPLICIT|IMPORT|IN|INDEX|INDEXED|INDICATE|INITIAL|INITIALIZE|INITIATE|INPUT|INPUT-OUTPUT|INSPECT|INSTALLATION|INTEGER|INTO|INVALID|INVOKE|IS|JUST|JUSTIFIED|KANJI|KEPT|KEY|KEYBOARD|LABEL|LANGUAGE|LAST|LB|LD|LEADING|LEFT|LEFTLINE|LENGTH|LENGTH-CHECK|LIBACCESS|LIBPARAMETER|LIBRARY|LIMIT|LIMITS|LINAGE|LINAGE-COUNTER|LINE|LINE-COUNTER|LINES|LINKAGE|LIST|LOCAL|LOCAL-STORAGE|LOCK|LONG-DATE|LONG-TIME|LOW-VALUE|LOW-VALUES|LOWER|LOWLIGHT|MEMORY|MERGE|MESSAGE|MMDDYYYY|MODE|MODULES|MORE-LABELS|MOVE|MULTIPLE|MULTIPLY|NAMED|NATIONAL|NATIONAL-EDITED|NATIVE|NEGATIVE|NETWORK|NEXT|NO|NO-ECHO|NULL|NULLS|NUMBER|NUMERIC|NUMERIC-DATE|NUMERIC-EDITED|NUMERIC-TIME|OBJECT-COMPUTER|OCCURS|ODT|OF|OFF|OMITTED|ON|OPEN|OPTIONAL|ORDER|ORDERLY|ORGANIZATION|OTHER|OUTPUT|OVERFLOW|OVERLINE|OWN|PACKED-DECIMAL|PADDING|PAGE|PAGE-COUNTER|PASSWORD|PERFORM|PF|PH|PIC|PICTURE|PLUS|POINTER|PORT|POSITION|POSITIVE|PRINTER|PRINTING|PRIVATE|PROCEDURE|PROCEDURE-POINTER|PROCEDURES|PROCEED|PROCESS|PROGRAM|PROGRAM-ID|PROGRAM-LIBRARY|PROMPT|PURGE|QUEUE|QUOTE|QUOTES|RANDOM|RD|READ|READER|REAL|RECEIVE|RECEIVED|RECORD|RECORDING|RECORDS|RECURSIVE|REDEFINES|REEL|REF|REFERENCE|REFERENCES|RELATIVE|RELEASE|REMAINDER|REMARKS|REMOTE|REMOVAL|REMOVE|RENAMES|REPLACE|REPLACING|REPORT|REPORTING|REPORTS|REQUIRED|RERUN|RESERVE|RESET|RETURN|RETURN-CODE|RETURNING|REVERSE-VIDEO|REVERSED|REWIND|REWRITE|RF|RH|RIGHT|ROUNDED|RUN|SAME|SAVE|SCREEN|SD|SEARCH|SECTION|SECURE|SECURITY|SEGMENT|SEGMENT-LIMIT|SELECT|SEND|SENTENCE|SEPARATE|SEQUENCE|SEQUENTIAL|SET|SHARED|SHAREDBYALL|SHAREDBYRUNUNIT|SHARING|SHIFT-IN|SHIFT-OUT|SHORT-DATE|SIGN|SIZE|SORT|SORT-CONTROL|SORT-CORE-SIZE|SORT-FILE-SIZE|SORT-MERGE|SORT-MESSAGE|SORT-MODE-SIZE|SORT-RETURN|SOURCE|SOURCE-COMPUTER|SPACE|SPACES|SPECIAL-NAMES|STANDARD|STANDARD-1|STANDARD-2|START|STATUS|STOP|STRING|SUB-QUEUE-1|SUB-QUEUE-2|SUB-QUEUE-3|SUBTRACT|SUM|SUPPRESS|SYMBOL|SYMBOLIC|SYNC|SYNCHRONIZED|TABLE|TALLY|TALLYING|TAPE|TASK|TERMINAL|TERMINATE|TEST|TEXT|THEN|THREAD|THREAD-LOCAL|THROUGH|THRU|TIME|TIMER|TIMES|TITLE|TO|TODAYS-DATE|TODAYS-NAME|TOP|TRAILING|TRUNCATED|TYPE|TYPEDEF|UNDERLINE|UNIT|UNSTRING|UNTIL|UP|UPON|USAGE|USE|USING|VALUE|VALUES|VARYING|VIRTUAL|WAIT|WHEN|WHEN-COMPILED|WITH|WORDS|WORKING-STORAGE|WRITE|YEAR|YYYYDDD|YYYYMMDD|ZERO-FILL|ZEROES|ZEROS)(?![\w-])/i,
|
|
8252
8142
|
lookbehind: true
|
|
8253
8143
|
},
|
|
8254
|
-
|
|
8255
|
-
|
|
8256
|
-
|
|
8257
|
-
number:
|
|
8258
|
-
/\b0b[01][01_]*L?\b|\b0x(?:[\da-f_]*\.)?[\da-f_p+-]+\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfls]?/i,
|
|
8259
|
-
punctuation: /[{}[\];(),.:]/,
|
|
8260
|
-
operator:
|
|
8261
|
-
/<==|>==|=>|->|<-|<>|&==|&<>|\?:?|\.\?|\+\+|--|[-+*/=<>]=?|[!^~]|\b(?:and|as|band|bor|bxor|comp|is|isnot|mod|or)\b=?/,
|
|
8262
|
-
annotation: {
|
|
8263
|
-
pattern: /@(?:\w+:)?(?:\w+|\[[^\]]+\])?/,
|
|
8264
|
-
alias: 'builtin'
|
|
8265
|
-
}
|
|
8266
|
-
};
|
|
8267
|
-
Prism.languages.insertBefore('concurnas', 'langext', {
|
|
8268
|
-
'regex-literal': {
|
|
8269
|
-
pattern: /\br("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,
|
|
8270
|
-
greedy: true,
|
|
8271
|
-
inside: {
|
|
8272
|
-
interpolation: {
|
|
8273
|
-
pattern:
|
|
8274
|
-
/((?:^|[^\\])(?:\\{2})*)\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,
|
|
8275
|
-
lookbehind: true,
|
|
8276
|
-
inside: Prism.languages.concurnas
|
|
8277
|
-
},
|
|
8278
|
-
regex: /[\s\S]+/
|
|
8279
|
-
}
|
|
8144
|
+
boolean: {
|
|
8145
|
+
pattern: /(^|[^\w-])(?:false|true)(?![\w-])/i,
|
|
8146
|
+
lookbehind: true
|
|
8280
8147
|
},
|
|
8281
|
-
|
|
8282
|
-
pattern:
|
|
8283
|
-
|
|
8284
|
-
|
|
8285
|
-
|
|
8286
|
-
|
|
8287
|
-
|
|
8288
|
-
|
|
8289
|
-
|
|
8290
|
-
|
|
8291
|
-
string: /[\s\S]+/
|
|
8148
|
+
number: {
|
|
8149
|
+
pattern:
|
|
8150
|
+
/(^|[^\w-])(?:[+-]?(?:(?:\d+(?:[.,]\d+)?|[.,]\d+)(?:e[+-]?\d+)?|zero))(?![\w-])/i,
|
|
8151
|
+
lookbehind: true
|
|
8152
|
+
},
|
|
8153
|
+
operator: [
|
|
8154
|
+
/<>|[<>]=?|[=+*/&]/,
|
|
8155
|
+
{
|
|
8156
|
+
pattern: /(^|[^\w-])(?:-|and|equal|greater|less|not|or|than)(?![\w-])/i,
|
|
8157
|
+
lookbehind: true
|
|
8292
8158
|
}
|
|
8293
|
-
|
|
8294
|
-
|
|
8295
|
-
|
|
8296
|
-
}
|
|
8297
|
-
|
|
8298
|
-
var coq_1 = coq;
|
|
8299
|
-
coq.displayName = 'coq';
|
|
8300
|
-
coq.aliases = [];
|
|
8301
|
-
function coq(Prism) {
|
|
8302
|
-
(function (Prism) {
|
|
8303
|
-
// https://github.com/coq/coq
|
|
8304
|
-
var commentSource = /\(\*(?:[^(*]|\((?!\*)|\*(?!\))|<self>)*\*\)/.source;
|
|
8305
|
-
for (var i = 0; i < 2; i++) {
|
|
8306
|
-
commentSource = commentSource.replace(/<self>/g, function () {
|
|
8307
|
-
return commentSource
|
|
8308
|
-
});
|
|
8309
|
-
}
|
|
8310
|
-
commentSource = commentSource.replace(/<self>/g, '[]');
|
|
8311
|
-
Prism.languages.coq = {
|
|
8312
|
-
comment: RegExp(commentSource),
|
|
8313
|
-
string: {
|
|
8314
|
-
pattern: /"(?:[^"]|"")*"(?!")/,
|
|
8315
|
-
greedy: true
|
|
8316
|
-
},
|
|
8317
|
-
attribute: [
|
|
8318
|
-
{
|
|
8319
|
-
pattern: RegExp(
|
|
8320
|
-
/#\[(?:[^\[\]("]|"(?:[^"]|"")*"(?!")|\((?!\*)|<comment>)*\]/.source.replace(
|
|
8321
|
-
/<comment>/g,
|
|
8322
|
-
function () {
|
|
8323
|
-
return commentSource
|
|
8324
|
-
}
|
|
8325
|
-
)
|
|
8326
|
-
),
|
|
8327
|
-
greedy: true,
|
|
8328
|
-
alias: 'attr-name',
|
|
8329
|
-
inside: {
|
|
8330
|
-
comment: RegExp(commentSource),
|
|
8331
|
-
string: {
|
|
8332
|
-
pattern: /"(?:[^"]|"")*"(?!")/,
|
|
8333
|
-
greedy: true
|
|
8334
|
-
},
|
|
8335
|
-
operator: /=/,
|
|
8336
|
-
punctuation: /^#\[|\]$|[,()]/
|
|
8337
|
-
}
|
|
8338
|
-
},
|
|
8339
|
-
{
|
|
8340
|
-
pattern:
|
|
8341
|
-
/\b(?:Cumulative|Global|Local|Monomorphic|NonCumulative|Polymorphic|Private|Program)\b/,
|
|
8342
|
-
alias: 'attr-name'
|
|
8343
|
-
}
|
|
8344
|
-
],
|
|
8345
|
-
keyword:
|
|
8346
|
-
/\b(?:Abort|About|Add|Admit|Admitted|All|Arguments|As|Assumptions|Axiom|Axioms|Back|BackTo|Backtrace|BinOp|BinOpSpec|BinRel|Bind|Blacklist|Canonical|Case|Cd|Check|Class|Classes|Close|CoFixpoint|CoInductive|Coercion|Coercions|Collection|Combined|Compute|Conjecture|Conjectures|Constant|Constants|Constraint|Constructors|Context|Corollary|Create|CstOp|Custom|Cut|Debug|Declare|Defined|Definition|Delimit|Dependencies|Dependent|Derive|Diffs|Drop|Elimination|End|Entry|Equality|Eval|Example|Existential|Existentials|Existing|Export|Extern|Extraction|Fact|Fail|Field|File|Firstorder|Fixpoint|Flags|Focus|From|Funclass|Function|Functional|GC|Generalizable|Goal|Grab|Grammar|Graph|Guarded|Haskell|Heap|Hide|Hint|HintDb|Hints|Hypotheses|Hypothesis|IF|Identity|Immediate|Implicit|Implicits|Import|Include|Induction|Inductive|Infix|Info|Initial|InjTyp|Inline|Inspect|Instance|Instances|Intro|Intros|Inversion|Inversion_clear|JSON|Language|Left|Lemma|Let|Lia|Libraries|Library|Load|LoadPath|Locate|Ltac|Ltac2|ML|Match|Method|Minimality|Module|Modules|Morphism|Next|NoInline|Notation|Number|OCaml|Obligation|Obligations|Opaque|Open|Optimize|Parameter|Parameters|Parametric|Path|Paths|Prenex|Preterm|Primitive|Print|Profile|Projections|Proof|Prop|PropBinOp|PropOp|PropUOp|Property|Proposition|Pwd|Qed|Quit|Rec|Record|Recursive|Redirect|Reduction|Register|Relation|Remark|Remove|Require|Reserved|Reset|Resolve|Restart|Rewrite|Right|Ring|Rings|SProp|Saturate|Save|Scheme|Scope|Scopes|Search|SearchHead|SearchPattern|SearchRewrite|Section|Separate|Set|Setoid|Show|Signatures|Solve|Solver|Sort|Sortclass|Sorted|Spec|Step|Strategies|Strategy|String|Structure|SubClass|Subgraph|SuchThat|Tactic|Term|TestCompile|Theorem|Time|Timeout|To|Transparent|Type|Typeclasses|Types|Typing|UnOp|UnOpSpec|Undelimit|Undo|Unfocus|Unfocused|Unfold|Universe|Universes|Unshelve|Variable|Variables|Variant|Verbose|View|Visibility|Zify|_|apply|as|at|by|cofix|else|end|exists|exists2|fix|for|forall|fun|if|in|let|match|measure|move|removed|return|struct|then|using|wf|where|with)\b/,
|
|
8347
|
-
number:
|
|
8348
|
-
/\b(?:0x[a-f0-9][a-f0-9_]*(?:\.[a-f0-9_]+)?(?:p[+-]?\d[\d_]*)?|\d[\d_]*(?:\.[\d_]+)?(?:e[+-]?\d[\d_]*)?)\b/i,
|
|
8349
|
-
punct: {
|
|
8350
|
-
pattern: /@\{|\{\||\[=|:>/,
|
|
8351
|
-
alias: 'punctuation'
|
|
8352
|
-
},
|
|
8353
|
-
operator:
|
|
8354
|
-
/\/\\|\\\/|\.{2,3}|:{1,2}=|\*\*|[-=]>|<(?:->?|[+:=>]|<:)|>(?:=|->)|\|[-|]?|[-!%&*+/<=>?@^~']/,
|
|
8355
|
-
punctuation: /\.\(|`\(|@\{|`\{|\{\||\[=|:>|[:.,;(){}\[\]]/
|
|
8356
|
-
};
|
|
8357
|
-
})(Prism);
|
|
8159
|
+
],
|
|
8160
|
+
punctuation: /[.:,()]/
|
|
8161
|
+
};
|
|
8358
8162
|
}
|
|
8359
8163
|
|
|
8360
|
-
var
|
|
8361
|
-
|
|
8362
|
-
|
|
8363
|
-
function
|
|
8164
|
+
var coffeescript_1 = coffeescript;
|
|
8165
|
+
coffeescript.displayName = 'coffeescript';
|
|
8166
|
+
coffeescript.aliases = ['coffee'];
|
|
8167
|
+
function coffeescript(Prism) {
|
|
8364
8168
|
(function (Prism) {
|
|
8365
|
-
|
|
8366
|
-
|
|
8367
|
-
pattern: /#.*|^=begin\s[\s\S]*?^=end/m,
|
|
8368
|
-
greedy: true
|
|
8369
|
-
},
|
|
8370
|
-
'class-name': {
|
|
8371
|
-
pattern:
|
|
8372
|
-
/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,
|
|
8373
|
-
lookbehind: true,
|
|
8374
|
-
inside: {
|
|
8375
|
-
punctuation: /[.\\]/
|
|
8376
|
-
}
|
|
8377
|
-
},
|
|
8378
|
-
keyword:
|
|
8379
|
-
/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,
|
|
8380
|
-
operator:
|
|
8381
|
-
/\.{2,3}|&\.|===|<?=>|[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,
|
|
8382
|
-
punctuation: /[(){}[\].,;]/
|
|
8383
|
-
});
|
|
8384
|
-
Prism.languages.insertBefore('ruby', 'operator', {
|
|
8385
|
-
'double-colon': {
|
|
8386
|
-
pattern: /::/,
|
|
8387
|
-
alias: 'punctuation'
|
|
8388
|
-
}
|
|
8389
|
-
});
|
|
8169
|
+
// Ignore comments starting with { to privilege string interpolation highlighting
|
|
8170
|
+
var comment = /#(?!\{).+/;
|
|
8390
8171
|
var interpolation = {
|
|
8391
|
-
pattern:
|
|
8392
|
-
|
|
8393
|
-
inside: {
|
|
8394
|
-
content: {
|
|
8395
|
-
pattern: /^(#\{)[\s\S]+(?=\}$)/,
|
|
8396
|
-
lookbehind: true,
|
|
8397
|
-
inside: Prism.languages.ruby
|
|
8398
|
-
},
|
|
8399
|
-
delimiter: {
|
|
8400
|
-
pattern: /^#\{|\}$/,
|
|
8401
|
-
alias: 'punctuation'
|
|
8402
|
-
}
|
|
8403
|
-
}
|
|
8172
|
+
pattern: /#\{[^}]+\}/,
|
|
8173
|
+
alias: 'variable'
|
|
8404
8174
|
};
|
|
8405
|
-
|
|
8406
|
-
|
|
8407
|
-
|
|
8408
|
-
|
|
8409
|
-
/([^a-zA-Z0-9\s{(\[<=])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,
|
|
8410
|
-
/\((?:[^()\\]|\\[\s\S]|\((?:[^()\\]|\\[\s\S])*\))*\)/.source,
|
|
8411
|
-
/\{(?:[^{}\\]|\\[\s\S]|\{(?:[^{}\\]|\\[\s\S])*\})*\}/.source,
|
|
8412
|
-
/\[(?:[^\[\]\\]|\\[\s\S]|\[(?:[^\[\]\\]|\\[\s\S])*\])*\]/.source,
|
|
8413
|
-
/<(?:[^<>\\]|\\[\s\S]|<(?:[^<>\\]|\\[\s\S])*>)*>/.source
|
|
8414
|
-
].join('|') +
|
|
8415
|
-
')';
|
|
8416
|
-
var symbolName =
|
|
8417
|
-
/(?:"(?:\\.|[^"\\\r\n])*"|(?:\b[a-zA-Z_]\w*|[^\s\0-\x7F]+)[?!]?|\$.)/
|
|
8418
|
-
.source;
|
|
8419
|
-
Prism.languages.insertBefore('ruby', 'keyword', {
|
|
8420
|
-
'regex-literal': [
|
|
8421
|
-
{
|
|
8422
|
-
pattern: RegExp(
|
|
8423
|
-
/%r/.source + percentExpression + /[egimnosux]{0,6}/.source
|
|
8424
|
-
),
|
|
8425
|
-
greedy: true,
|
|
8426
|
-
inside: {
|
|
8427
|
-
interpolation: interpolation,
|
|
8428
|
-
regex: /[\s\S]+/
|
|
8429
|
-
}
|
|
8430
|
-
},
|
|
8431
|
-
{
|
|
8432
|
-
pattern:
|
|
8433
|
-
/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,
|
|
8434
|
-
lookbehind: true,
|
|
8435
|
-
greedy: true,
|
|
8436
|
-
inside: {
|
|
8437
|
-
interpolation: interpolation,
|
|
8438
|
-
regex: /[\s\S]+/
|
|
8439
|
-
}
|
|
8440
|
-
}
|
|
8441
|
-
],
|
|
8442
|
-
variable: /[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,
|
|
8443
|
-
symbol: [
|
|
8444
|
-
{
|
|
8445
|
-
pattern: RegExp(/(^|[^:]):/.source + symbolName),
|
|
8446
|
-
lookbehind: true,
|
|
8447
|
-
greedy: true
|
|
8448
|
-
},
|
|
8175
|
+
Prism.languages.coffeescript = Prism.languages.extend('javascript', {
|
|
8176
|
+
comment: comment,
|
|
8177
|
+
string: [
|
|
8178
|
+
// Strings are multiline
|
|
8449
8179
|
{
|
|
8450
|
-
pattern:
|
|
8451
|
-
/([\r\n{(,][ \t]*)/.source + symbolName + /(?=:(?!:))/.source
|
|
8452
|
-
),
|
|
8453
|
-
lookbehind: true,
|
|
8180
|
+
pattern: /'(?:\\[\s\S]|[^\\'])*'/,
|
|
8454
8181
|
greedy: true
|
|
8455
|
-
}
|
|
8456
|
-
],
|
|
8457
|
-
'method-definition': {
|
|
8458
|
-
pattern: /(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,
|
|
8459
|
-
lookbehind: true,
|
|
8460
|
-
inside: {
|
|
8461
|
-
function: /\b\w+$/,
|
|
8462
|
-
keyword: /^self\b/,
|
|
8463
|
-
'class-name': /^\w+/,
|
|
8464
|
-
punctuation: /\./
|
|
8465
|
-
}
|
|
8466
|
-
}
|
|
8467
|
-
});
|
|
8468
|
-
Prism.languages.insertBefore('ruby', 'string', {
|
|
8469
|
-
'string-literal': [
|
|
8470
|
-
{
|
|
8471
|
-
pattern: RegExp(/%[qQiIwWs]?/.source + percentExpression),
|
|
8472
|
-
greedy: true,
|
|
8473
|
-
inside: {
|
|
8474
|
-
interpolation: interpolation,
|
|
8475
|
-
string: /[\s\S]+/
|
|
8476
|
-
}
|
|
8477
|
-
},
|
|
8478
|
-
{
|
|
8479
|
-
pattern:
|
|
8480
|
-
/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,
|
|
8481
|
-
greedy: true,
|
|
8482
|
-
inside: {
|
|
8483
|
-
interpolation: interpolation,
|
|
8484
|
-
string: /[\s\S]+/
|
|
8485
|
-
}
|
|
8486
|
-
},
|
|
8487
|
-
{
|
|
8488
|
-
pattern: /<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,
|
|
8489
|
-
alias: 'heredoc-string',
|
|
8490
|
-
greedy: true,
|
|
8491
|
-
inside: {
|
|
8492
|
-
delimiter: {
|
|
8493
|
-
pattern: /^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,
|
|
8494
|
-
inside: {
|
|
8495
|
-
symbol: /\b\w+/,
|
|
8496
|
-
punctuation: /^<<[-~]?/
|
|
8497
|
-
}
|
|
8498
|
-
},
|
|
8499
|
-
interpolation: interpolation,
|
|
8500
|
-
string: /[\s\S]+/
|
|
8501
|
-
}
|
|
8502
|
-
},
|
|
8503
|
-
{
|
|
8504
|
-
pattern: /<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,
|
|
8505
|
-
alias: 'heredoc-string',
|
|
8506
|
-
greedy: true,
|
|
8507
|
-
inside: {
|
|
8508
|
-
delimiter: {
|
|
8509
|
-
pattern: /^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,
|
|
8510
|
-
inside: {
|
|
8511
|
-
symbol: /\b\w+/,
|
|
8512
|
-
punctuation: /^<<[-~]?'|'$/
|
|
8513
|
-
}
|
|
8514
|
-
},
|
|
8515
|
-
string: /[\s\S]+/
|
|
8516
|
-
}
|
|
8517
|
-
}
|
|
8518
|
-
],
|
|
8519
|
-
'command-literal': [
|
|
8520
|
-
{
|
|
8521
|
-
pattern: RegExp(/%x/.source + percentExpression),
|
|
8522
|
-
greedy: true,
|
|
8523
|
-
inside: {
|
|
8524
|
-
interpolation: interpolation,
|
|
8525
|
-
command: {
|
|
8526
|
-
pattern: /[\s\S]+/,
|
|
8527
|
-
alias: 'string'
|
|
8528
|
-
}
|
|
8529
|
-
}
|
|
8530
8182
|
},
|
|
8531
8183
|
{
|
|
8532
|
-
|
|
8184
|
+
// Strings are multiline
|
|
8185
|
+
pattern: /"(?:\\[\s\S]|[^\\"])*"/,
|
|
8533
8186
|
greedy: true,
|
|
8534
8187
|
inside: {
|
|
8535
|
-
interpolation: interpolation
|
|
8536
|
-
command: {
|
|
8537
|
-
pattern: /[\s\S]+/,
|
|
8538
|
-
alias: 'string'
|
|
8539
|
-
}
|
|
8188
|
+
interpolation: interpolation
|
|
8540
8189
|
}
|
|
8541
8190
|
}
|
|
8542
|
-
]
|
|
8543
|
-
});
|
|
8544
|
-
delete Prism.languages.ruby.string;
|
|
8545
|
-
Prism.languages.insertBefore('ruby', 'number', {
|
|
8546
|
-
builtin:
|
|
8547
|
-
/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,
|
|
8548
|
-
constant: /\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/
|
|
8549
|
-
});
|
|
8550
|
-
Prism.languages.rb = Prism.languages.ruby;
|
|
8551
|
-
})(Prism);
|
|
8552
|
-
}
|
|
8553
|
-
|
|
8554
|
-
var refractorRuby = ruby_1;
|
|
8555
|
-
var crystal_1 = crystal;
|
|
8556
|
-
crystal.displayName = 'crystal';
|
|
8557
|
-
crystal.aliases = [];
|
|
8558
|
-
function crystal(Prism) {
|
|
8559
|
-
Prism.register(refractorRuby)
|
|
8560
|
-
;(function (Prism) {
|
|
8561
|
-
Prism.languages.crystal = Prism.languages.extend('ruby', {
|
|
8562
|
-
keyword: [
|
|
8563
|
-
/\b(?:__DIR__|__END_LINE__|__FILE__|__LINE__|abstract|alias|annotation|as|asm|begin|break|case|class|def|do|else|elsif|end|ensure|enum|extend|for|fun|if|ifdef|include|instance_sizeof|lib|macro|module|next|of|out|pointerof|private|protected|ptr|require|rescue|return|select|self|sizeof|struct|super|then|type|typeof|undef|uninitialized|union|unless|until|when|while|with|yield)\b/,
|
|
8564
|
-
{
|
|
8565
|
-
pattern: /(\.\s*)(?:is_a|responds_to)\?/,
|
|
8566
|
-
lookbehind: true
|
|
8567
|
-
}
|
|
8568
8191
|
],
|
|
8569
|
-
|
|
8570
|
-
/\b(?:
|
|
8571
|
-
|
|
8572
|
-
|
|
8573
|
-
|
|
8574
|
-
Prism.languages.insertBefore('crystal', 'string-literal', {
|
|
8575
|
-
attribute: {
|
|
8576
|
-
pattern: /@\[.*?\]/,
|
|
8577
|
-
inside: {
|
|
8578
|
-
delimiter: {
|
|
8579
|
-
pattern: /^@\[|\]$/,
|
|
8580
|
-
alias: 'punctuation'
|
|
8581
|
-
},
|
|
8582
|
-
attribute: {
|
|
8583
|
-
pattern: /^(\s*)\w+/,
|
|
8584
|
-
lookbehind: true,
|
|
8585
|
-
alias: 'class-name'
|
|
8586
|
-
},
|
|
8587
|
-
args: {
|
|
8588
|
-
pattern: /\S(?:[\s\S]*\S)?/,
|
|
8589
|
-
inside: Prism.languages.crystal
|
|
8590
|
-
}
|
|
8591
|
-
}
|
|
8592
|
-
},
|
|
8593
|
-
expansion: {
|
|
8594
|
-
pattern: /\{(?:\{.*?\}|%.*?%)\}/,
|
|
8595
|
-
inside: {
|
|
8596
|
-
content: {
|
|
8597
|
-
pattern: /^(\{.)[\s\S]+(?=.\}$)/,
|
|
8598
|
-
lookbehind: true,
|
|
8599
|
-
inside: Prism.languages.crystal
|
|
8600
|
-
},
|
|
8601
|
-
delimiter: {
|
|
8602
|
-
pattern: /^\{[\{%]|[\}%]\}$/,
|
|
8603
|
-
alias: 'operator'
|
|
8604
|
-
}
|
|
8605
|
-
}
|
|
8606
|
-
},
|
|
8607
|
-
char: {
|
|
8608
|
-
pattern:
|
|
8609
|
-
/'(?:[^\\\r\n]{1,2}|\\(?:.|u(?:[A-Fa-f0-9]{1,4}|\{[A-Fa-f0-9]{1,6}\})))'/,
|
|
8610
|
-
greedy: true
|
|
8192
|
+
keyword:
|
|
8193
|
+
/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,
|
|
8194
|
+
'class-member': {
|
|
8195
|
+
pattern: /@(?!\d)\w+/,
|
|
8196
|
+
alias: 'variable'
|
|
8611
8197
|
}
|
|
8612
8198
|
});
|
|
8613
|
-
|
|
8614
|
-
|
|
8615
|
-
|
|
8616
|
-
var refractorCsharp = csharp_1;
|
|
8617
|
-
var cshtml_1 = cshtml;
|
|
8618
|
-
cshtml.displayName = 'cshtml';
|
|
8619
|
-
cshtml.aliases = ['razor'];
|
|
8620
|
-
function cshtml(Prism) {
|
|
8621
|
-
Prism.register(refractorCsharp)
|
|
8622
|
-
// Docs:
|
|
8623
|
-
// https://docs.microsoft.com/en-us/aspnet/core/razor-pages/?view=aspnetcore-5.0&tabs=visual-studio
|
|
8624
|
-
// https://docs.microsoft.com/en-us/aspnet/core/mvc/views/razor?view=aspnetcore-5.0
|
|
8625
|
-
;(function (Prism) {
|
|
8626
|
-
var commentLike = /\/(?![/*])|\/\/.*[\r\n]|\/\*[^*]*(?:\*(?!\/)[^*]*)*\*\//
|
|
8627
|
-
.source;
|
|
8628
|
-
var stringLike =
|
|
8629
|
-
/@(?!")|"(?:[^\r\n\\"]|\\.)*"|@"(?:[^\\"]|""|\\[\s\S])*"(?!")/.source +
|
|
8630
|
-
'|' +
|
|
8631
|
-
/'(?:(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'|(?=[^\\](?!')))/.source;
|
|
8632
|
-
/**
|
|
8633
|
-
* Creates a nested pattern where all occurrences of the string `<<self>>` are replaced with the pattern itself.
|
|
8634
|
-
*
|
|
8635
|
-
* @param {string} pattern
|
|
8636
|
-
* @param {number} depthLog2
|
|
8637
|
-
* @returns {string}
|
|
8638
|
-
*/
|
|
8639
|
-
function nested(pattern, depthLog2) {
|
|
8640
|
-
for (var i = 0; i < depthLog2; i++) {
|
|
8641
|
-
pattern = pattern.replace(/<self>/g, function () {
|
|
8642
|
-
return '(?:' + pattern + ')'
|
|
8643
|
-
});
|
|
8644
|
-
}
|
|
8645
|
-
return pattern
|
|
8646
|
-
.replace(/<self>/g, '[^\\s\\S]')
|
|
8647
|
-
.replace(/<str>/g, '(?:' + stringLike + ')')
|
|
8648
|
-
.replace(/<comment>/g, '(?:' + commentLike + ')')
|
|
8649
|
-
}
|
|
8650
|
-
var round = nested(/\((?:[^()'"@/]|<str>|<comment>|<self>)*\)/.source, 2);
|
|
8651
|
-
var square = nested(/\[(?:[^\[\]'"@/]|<str>|<comment>|<self>)*\]/.source, 2);
|
|
8652
|
-
var curly = nested(/\{(?:[^{}'"@/]|<str>|<comment>|<self>)*\}/.source, 2);
|
|
8653
|
-
var angle = nested(/<(?:[^<>'"@/]|<str>|<comment>|<self>)*>/.source, 2); // Note about the above bracket patterns:
|
|
8654
|
-
// They all ignore HTML expressions that might be in the C# code. This is a problem because HTML (like strings and
|
|
8655
|
-
// comments) is parsed differently. This is a huge problem because HTML might contain brackets and quotes which
|
|
8656
|
-
// messes up the bracket and string counting implemented by the above patterns.
|
|
8657
|
-
//
|
|
8658
|
-
// This problem is not fixable because 1) HTML expression are highly context sensitive and very difficult to detect
|
|
8659
|
-
// and 2) they require one capturing group at every nested level. See the `tagRegion` pattern to admire the
|
|
8660
|
-
// complexity of an HTML expression.
|
|
8661
|
-
//
|
|
8662
|
-
// To somewhat alleviate the problem a bit, the patterns for characters (e.g. 'a') is very permissive, it also
|
|
8663
|
-
// allows invalid characters to support HTML expressions like this: <p>That's it!</p>.
|
|
8664
|
-
var tagAttrs =
|
|
8665
|
-
/(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?/
|
|
8666
|
-
.source;
|
|
8667
|
-
var tagContent = /(?!\d)[^\s>\/=$<%]+/.source + tagAttrs + /\s*\/?>/.source;
|
|
8668
|
-
var tagRegion =
|
|
8669
|
-
/\B@?/.source +
|
|
8670
|
-
'(?:' +
|
|
8671
|
-
/<([a-zA-Z][\w:]*)/.source +
|
|
8672
|
-
tagAttrs +
|
|
8673
|
-
/\s*>/.source +
|
|
8674
|
-
'(?:' +
|
|
8675
|
-
(/[^<]/.source +
|
|
8676
|
-
'|' + // all tags that are not the start tag
|
|
8677
|
-
// eslint-disable-next-line regexp/strict
|
|
8678
|
-
/<\/?(?!\1\b)/.source +
|
|
8679
|
-
tagContent +
|
|
8680
|
-
'|' + // nested start tag
|
|
8681
|
-
nested(
|
|
8682
|
-
// eslint-disable-next-line regexp/strict
|
|
8683
|
-
/<\1/.source +
|
|
8684
|
-
tagAttrs +
|
|
8685
|
-
/\s*>/.source +
|
|
8686
|
-
'(?:' +
|
|
8687
|
-
(/[^<]/.source +
|
|
8688
|
-
'|' + // all tags that are not the start tag
|
|
8689
|
-
// eslint-disable-next-line regexp/strict
|
|
8690
|
-
/<\/?(?!\1\b)/.source +
|
|
8691
|
-
tagContent +
|
|
8692
|
-
'|' +
|
|
8693
|
-
'<self>') +
|
|
8694
|
-
')*' + // eslint-disable-next-line regexp/strict
|
|
8695
|
-
/<\/\1\s*>/.source,
|
|
8696
|
-
2
|
|
8697
|
-
)) +
|
|
8698
|
-
')*' + // eslint-disable-next-line regexp/strict
|
|
8699
|
-
/<\/\1\s*>/.source +
|
|
8700
|
-
'|' +
|
|
8701
|
-
/</.source +
|
|
8702
|
-
tagContent +
|
|
8703
|
-
')'; // Now for the actual language definition(s):
|
|
8704
|
-
//
|
|
8705
|
-
// Razor as a language has 2 parts:
|
|
8706
|
-
// 1) CSHTML: A markup-like language that has been extended with inline C# code expressions and blocks.
|
|
8707
|
-
// 2) C#+HTML: A variant of C# that can contain CSHTML tags as expressions.
|
|
8708
|
-
//
|
|
8709
|
-
// In the below code, both CSHTML and C#+HTML will be create as separate language definitions that reference each
|
|
8710
|
-
// other. However, only CSHTML will be exported via `Prism.languages`.
|
|
8711
|
-
Prism.languages.cshtml = Prism.languages.extend('markup', {});
|
|
8712
|
-
var csharpWithHtml = Prism.languages.insertBefore(
|
|
8713
|
-
'csharp',
|
|
8714
|
-
'string',
|
|
8715
|
-
{
|
|
8716
|
-
html: {
|
|
8717
|
-
pattern: RegExp(tagRegion),
|
|
8718
|
-
greedy: true,
|
|
8719
|
-
inside: Prism.languages.cshtml
|
|
8720
|
-
}
|
|
8721
|
-
},
|
|
8722
|
-
{
|
|
8723
|
-
csharp: Prism.languages.extend('csharp', {})
|
|
8724
|
-
}
|
|
8725
|
-
);
|
|
8726
|
-
var cs = {
|
|
8727
|
-
pattern: /\S[\s\S]*/,
|
|
8728
|
-
alias: 'language-csharp',
|
|
8729
|
-
inside: csharpWithHtml
|
|
8730
|
-
};
|
|
8731
|
-
Prism.languages.insertBefore('cshtml', 'prolog', {
|
|
8732
|
-
'razor-comment': {
|
|
8733
|
-
pattern: /@\*[\s\S]*?\*@/,
|
|
8734
|
-
greedy: true,
|
|
8199
|
+
Prism.languages.insertBefore('coffeescript', 'comment', {
|
|
8200
|
+
'multiline-comment': {
|
|
8201
|
+
pattern: /###[\s\S]+?###/,
|
|
8735
8202
|
alias: 'comment'
|
|
8736
8203
|
},
|
|
8737
|
-
|
|
8738
|
-
|
|
8739
|
-
|
|
8740
|
-
|
|
8741
|
-
[
|
|
8742
|
-
// @{ ... }
|
|
8743
|
-
curly, // @code{ ... }
|
|
8744
|
-
/(?:code|functions)\s*/.source + curly, // @for (...) { ... }
|
|
8745
|
-
/(?:for|foreach|lock|switch|using|while)\s*/.source +
|
|
8746
|
-
round +
|
|
8747
|
-
/\s*/.source +
|
|
8748
|
-
curly, // @do { ... } while (...);
|
|
8749
|
-
/do\s*/.source +
|
|
8750
|
-
curly +
|
|
8751
|
-
/\s*while\s*/.source +
|
|
8752
|
-
round +
|
|
8753
|
-
/(?:\s*;)?/.source, // @try { ... } catch (...) { ... } finally { ... }
|
|
8754
|
-
/try\s*/.source +
|
|
8755
|
-
curly +
|
|
8756
|
-
/\s*catch\s*/.source +
|
|
8757
|
-
round +
|
|
8758
|
-
/\s*/.source +
|
|
8759
|
-
curly +
|
|
8760
|
-
/\s*finally\s*/.source +
|
|
8761
|
-
curly, // @if (...) {...} else if (...) {...} else {...}
|
|
8762
|
-
/if\s*/.source +
|
|
8763
|
-
round +
|
|
8764
|
-
/\s*/.source +
|
|
8765
|
-
curly +
|
|
8766
|
-
'(?:' +
|
|
8767
|
-
/\s*else/.source +
|
|
8768
|
-
'(?:' +
|
|
8769
|
-
/\s+if\s*/.source +
|
|
8770
|
-
round +
|
|
8771
|
-
')?' +
|
|
8772
|
-
/\s*/.source +
|
|
8773
|
-
curly +
|
|
8774
|
-
')*'
|
|
8775
|
-
].join('|') +
|
|
8776
|
-
')'
|
|
8777
|
-
),
|
|
8778
|
-
lookbehind: true,
|
|
8779
|
-
greedy: true,
|
|
8204
|
+
// Block regexp can contain comments and interpolation
|
|
8205
|
+
'block-regex': {
|
|
8206
|
+
pattern: /\/{3}[\s\S]*?\/{3}/,
|
|
8207
|
+
alias: 'regex',
|
|
8780
8208
|
inside: {
|
|
8781
|
-
|
|
8782
|
-
|
|
8209
|
+
comment: comment,
|
|
8210
|
+
interpolation: interpolation
|
|
8783
8211
|
}
|
|
8784
|
-
}
|
|
8785
|
-
|
|
8786
|
-
|
|
8787
|
-
|
|
8788
|
-
|
|
8789
|
-
greedy: true,
|
|
8212
|
+
}
|
|
8213
|
+
});
|
|
8214
|
+
Prism.languages.insertBefore('coffeescript', 'string', {
|
|
8215
|
+
'inline-javascript': {
|
|
8216
|
+
pattern: /`(?:\\[\s\S]|[^\\`])*`/,
|
|
8790
8217
|
inside: {
|
|
8791
|
-
|
|
8792
|
-
|
|
8218
|
+
delimiter: {
|
|
8219
|
+
pattern: /^`|`$/,
|
|
8220
|
+
alias: 'punctuation'
|
|
8221
|
+
},
|
|
8222
|
+
script: {
|
|
8223
|
+
pattern: /[\s\S]+/,
|
|
8224
|
+
alias: 'language-javascript',
|
|
8225
|
+
inside: Prism.languages.javascript
|
|
8226
|
+
}
|
|
8793
8227
|
}
|
|
8794
8228
|
},
|
|
8795
|
-
|
|
8796
|
-
|
|
8797
|
-
|
|
8798
|
-
|
|
8799
|
-
|
|
8800
|
-
|
|
8801
|
-
|
|
8802
|
-
|
|
8803
|
-
|
|
8804
|
-
|
|
8805
|
-
|
|
8806
|
-
|
|
8807
|
-
|
|
8808
|
-
|
|
8809
|
-
square +
|
|
8810
|
-
'|' +
|
|
8811
|
-
angle +
|
|
8812
|
-
round +
|
|
8813
|
-
')*'
|
|
8814
|
-
),
|
|
8815
|
-
lookbehind: true,
|
|
8816
|
-
greedy: true,
|
|
8817
|
-
alias: 'variable',
|
|
8818
|
-
inside: {
|
|
8819
|
-
keyword: /^@/,
|
|
8820
|
-
csharp: cs
|
|
8229
|
+
// Block strings
|
|
8230
|
+
'multiline-string': [
|
|
8231
|
+
{
|
|
8232
|
+
pattern: /'''[\s\S]*?'''/,
|
|
8233
|
+
greedy: true,
|
|
8234
|
+
alias: 'string'
|
|
8235
|
+
},
|
|
8236
|
+
{
|
|
8237
|
+
pattern: /"""[\s\S]*?"""/,
|
|
8238
|
+
greedy: true,
|
|
8239
|
+
alias: 'string',
|
|
8240
|
+
inside: {
|
|
8241
|
+
interpolation: interpolation
|
|
8242
|
+
}
|
|
8821
8243
|
}
|
|
8822
|
-
|
|
8823
|
-
|
|
8824
|
-
|
|
8825
|
-
|
|
8826
|
-
|
|
8827
|
-
}
|
|
8244
|
+
]
|
|
8245
|
+
});
|
|
8246
|
+
Prism.languages.insertBefore('coffeescript', 'keyword', {
|
|
8247
|
+
// Object property
|
|
8248
|
+
property: /(?!\d)\w+(?=\s*:(?!:))/
|
|
8828
8249
|
});
|
|
8829
|
-
|
|
8250
|
+
delete Prism.languages.coffeescript['template-string'];
|
|
8251
|
+
Prism.languages.coffee = Prism.languages.coffeescript;
|
|
8830
8252
|
})(Prism);
|
|
8831
8253
|
}
|
|
8832
8254
|
|
|
8833
|
-
var
|
|
8834
|
-
|
|
8835
|
-
|
|
8836
|
-
function
|
|
8837
|
-
|
|
8838
|
-
|
|
8839
|
-
|
|
8840
|
-
|
|
8841
|
-
|
|
8842
|
-
|
|
8843
|
-
|
|
8844
|
-
|
|
8845
|
-
|
|
8846
|
-
|
|
8847
|
-
|
|
8848
|
-
|
|
8849
|
-
|
|
8850
|
-
|
|
8851
|
-
|
|
8852
|
-
|
|
8853
|
-
|
|
8854
|
-
|
|
8855
|
-
|
|
8856
|
-
|
|
8857
|
-
|
|
8858
|
-
|
|
8859
|
-
|
|
8860
|
-
|
|
8861
|
-
|
|
8862
|
-
|
|
8863
|
-
|
|
8864
|
-
|
|
8865
|
-
|
|
8866
|
-
|
|
8867
|
-
|
|
8868
|
-
|
|
8869
|
-
|
|
8870
|
-
|
|
8871
|
-
|
|
8872
|
-
|
|
8873
|
-
|
|
8874
|
-
|
|
8875
|
-
|
|
8876
|
-
|
|
8877
|
-
|
|
8878
|
-
|
|
8879
|
-
|
|
8880
|
-
|
|
8881
|
-
|
|
8882
|
-
|
|
8883
|
-
|
|
8884
|
-
|
|
8885
|
-
|
|
8886
|
-
|
|
8887
|
-
|
|
8888
|
-
|
|
8889
|
-
|
|
8890
|
-
|
|
8891
|
-
|
|
8892
|
-
|
|
8893
|
-
|
|
8894
|
-
|
|
8895
|
-
|
|
8896
|
-
|
|
8897
|
-
|
|
8898
|
-
|
|
8899
|
-
|
|
8900
|
-
|
|
8901
|
-
|
|
8902
|
-
|
|
8255
|
+
var concurnas_1;
|
|
8256
|
+
var hasRequiredConcurnas;
|
|
8257
|
+
|
|
8258
|
+
function requireConcurnas () {
|
|
8259
|
+
if (hasRequiredConcurnas) return concurnas_1;
|
|
8260
|
+
hasRequiredConcurnas = 1;
|
|
8261
|
+
|
|
8262
|
+
concurnas_1 = concurnas;
|
|
8263
|
+
concurnas.displayName = 'concurnas';
|
|
8264
|
+
concurnas.aliases = ['conc'];
|
|
8265
|
+
function concurnas(Prism) {
|
|
8266
|
+
Prism.languages.concurnas = {
|
|
8267
|
+
comment: {
|
|
8268
|
+
pattern: /(^|[^\\])(?:\/\*[\s\S]*?(?:\*\/|$)|\/\/.*)/,
|
|
8269
|
+
lookbehind: true,
|
|
8270
|
+
greedy: true
|
|
8271
|
+
},
|
|
8272
|
+
langext: {
|
|
8273
|
+
pattern: /\b\w+\s*\|\|[\s\S]+?\|\|/,
|
|
8274
|
+
greedy: true,
|
|
8275
|
+
inside: {
|
|
8276
|
+
'class-name': /^\w+/,
|
|
8277
|
+
string: {
|
|
8278
|
+
pattern: /(^\s*\|\|)[\s\S]+(?=\|\|$)/,
|
|
8279
|
+
lookbehind: true
|
|
8280
|
+
},
|
|
8281
|
+
punctuation: /\|\|/
|
|
8282
|
+
}
|
|
8283
|
+
},
|
|
8284
|
+
function: {
|
|
8285
|
+
pattern: /((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/,
|
|
8286
|
+
lookbehind: true
|
|
8287
|
+
},
|
|
8288
|
+
keyword:
|
|
8289
|
+
/\b(?:abstract|actor|also|annotation|assert|async|await|bool|boolean|break|byte|case|catch|changed|char|class|closed|constant|continue|def|default|del|double|elif|else|enum|every|extends|false|finally|float|for|from|global|gpudef|gpukernel|if|import|in|init|inject|int|lambda|local|long|loop|match|new|nodefault|null|of|onchange|open|out|override|package|parfor|parforsync|post|pre|private|protected|provide|provider|public|return|shared|short|single|size_t|sizeof|super|sync|this|throw|trait|trans|transient|true|try|typedef|unchecked|using|val|var|void|while|with)\b/,
|
|
8290
|
+
boolean: /\b(?:false|true)\b/,
|
|
8291
|
+
number:
|
|
8292
|
+
/\b0b[01][01_]*L?\b|\b0x(?:[\da-f_]*\.)?[\da-f_p+-]+\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfls]?/i,
|
|
8293
|
+
punctuation: /[{}[\];(),.:]/,
|
|
8294
|
+
operator:
|
|
8295
|
+
/<==|>==|=>|->|<-|<>|&==|&<>|\?:?|\.\?|\+\+|--|[-+*/=<>]=?|[!^~]|\b(?:and|as|band|bor|bxor|comp|is|isnot|mod|or)\b=?/,
|
|
8296
|
+
annotation: {
|
|
8297
|
+
pattern: /@(?:\w+:)?(?:\w+|\[[^\]]+\])?/,
|
|
8298
|
+
alias: 'builtin'
|
|
8299
|
+
}
|
|
8300
|
+
};
|
|
8301
|
+
Prism.languages.insertBefore('concurnas', 'langext', {
|
|
8302
|
+
'regex-literal': {
|
|
8303
|
+
pattern: /\br("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,
|
|
8304
|
+
greedy: true,
|
|
8305
|
+
inside: {
|
|
8306
|
+
interpolation: {
|
|
8307
|
+
pattern:
|
|
8308
|
+
/((?:^|[^\\])(?:\\{2})*)\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,
|
|
8309
|
+
lookbehind: true,
|
|
8310
|
+
inside: Prism.languages.concurnas
|
|
8311
|
+
},
|
|
8312
|
+
regex: /[\s\S]+/
|
|
8313
|
+
}
|
|
8314
|
+
},
|
|
8315
|
+
'string-literal': {
|
|
8316
|
+
pattern: /(?:\B|\bs)("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,
|
|
8317
|
+
greedy: true,
|
|
8318
|
+
inside: {
|
|
8319
|
+
interpolation: {
|
|
8320
|
+
pattern:
|
|
8321
|
+
/((?:^|[^\\])(?:\\{2})*)\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,
|
|
8322
|
+
lookbehind: true,
|
|
8323
|
+
inside: Prism.languages.concurnas
|
|
8324
|
+
},
|
|
8325
|
+
string: /[\s\S]+/
|
|
8326
|
+
}
|
|
8327
|
+
}
|
|
8328
|
+
});
|
|
8329
|
+
Prism.languages.conc = Prism.languages.concurnas;
|
|
8330
|
+
}
|
|
8331
|
+
return concurnas_1;
|
|
8332
|
+
}
|
|
8333
|
+
|
|
8334
|
+
var coq_1;
|
|
8335
|
+
var hasRequiredCoq;
|
|
8336
|
+
|
|
8337
|
+
function requireCoq () {
|
|
8338
|
+
if (hasRequiredCoq) return coq_1;
|
|
8339
|
+
hasRequiredCoq = 1;
|
|
8340
|
+
|
|
8341
|
+
coq_1 = coq;
|
|
8342
|
+
coq.displayName = 'coq';
|
|
8343
|
+
coq.aliases = [];
|
|
8344
|
+
function coq(Prism) {
|
|
8345
|
+
(function (Prism) {
|
|
8346
|
+
// https://github.com/coq/coq
|
|
8347
|
+
var commentSource = /\(\*(?:[^(*]|\((?!\*)|\*(?!\))|<self>)*\*\)/.source;
|
|
8348
|
+
for (var i = 0; i < 2; i++) {
|
|
8349
|
+
commentSource = commentSource.replace(/<self>/g, function () {
|
|
8350
|
+
return commentSource
|
|
8351
|
+
});
|
|
8352
|
+
}
|
|
8353
|
+
commentSource = commentSource.replace(/<self>/g, '[]');
|
|
8354
|
+
Prism.languages.coq = {
|
|
8355
|
+
comment: RegExp(commentSource),
|
|
8356
|
+
string: {
|
|
8357
|
+
pattern: /"(?:[^"]|"")*"(?!")/,
|
|
8358
|
+
greedy: true
|
|
8359
|
+
},
|
|
8360
|
+
attribute: [
|
|
8361
|
+
{
|
|
8362
|
+
pattern: RegExp(
|
|
8363
|
+
/#\[(?:[^\[\]("]|"(?:[^"]|"")*"(?!")|\((?!\*)|<comment>)*\]/.source.replace(
|
|
8364
|
+
/<comment>/g,
|
|
8365
|
+
function () {
|
|
8366
|
+
return commentSource
|
|
8367
|
+
}
|
|
8368
|
+
)
|
|
8369
|
+
),
|
|
8370
|
+
greedy: true,
|
|
8371
|
+
alias: 'attr-name',
|
|
8372
|
+
inside: {
|
|
8373
|
+
comment: RegExp(commentSource),
|
|
8374
|
+
string: {
|
|
8375
|
+
pattern: /"(?:[^"]|"")*"(?!")/,
|
|
8376
|
+
greedy: true
|
|
8377
|
+
},
|
|
8378
|
+
operator: /=/,
|
|
8379
|
+
punctuation: /^#\[|\]$|[,()]/
|
|
8380
|
+
}
|
|
8381
|
+
},
|
|
8382
|
+
{
|
|
8383
|
+
pattern:
|
|
8384
|
+
/\b(?:Cumulative|Global|Local|Monomorphic|NonCumulative|Polymorphic|Private|Program)\b/,
|
|
8385
|
+
alias: 'attr-name'
|
|
8386
|
+
}
|
|
8387
|
+
],
|
|
8388
|
+
keyword:
|
|
8389
|
+
/\b(?:Abort|About|Add|Admit|Admitted|All|Arguments|As|Assumptions|Axiom|Axioms|Back|BackTo|Backtrace|BinOp|BinOpSpec|BinRel|Bind|Blacklist|Canonical|Case|Cd|Check|Class|Classes|Close|CoFixpoint|CoInductive|Coercion|Coercions|Collection|Combined|Compute|Conjecture|Conjectures|Constant|Constants|Constraint|Constructors|Context|Corollary|Create|CstOp|Custom|Cut|Debug|Declare|Defined|Definition|Delimit|Dependencies|Dependent|Derive|Diffs|Drop|Elimination|End|Entry|Equality|Eval|Example|Existential|Existentials|Existing|Export|Extern|Extraction|Fact|Fail|Field|File|Firstorder|Fixpoint|Flags|Focus|From|Funclass|Function|Functional|GC|Generalizable|Goal|Grab|Grammar|Graph|Guarded|Haskell|Heap|Hide|Hint|HintDb|Hints|Hypotheses|Hypothesis|IF|Identity|Immediate|Implicit|Implicits|Import|Include|Induction|Inductive|Infix|Info|Initial|InjTyp|Inline|Inspect|Instance|Instances|Intro|Intros|Inversion|Inversion_clear|JSON|Language|Left|Lemma|Let|Lia|Libraries|Library|Load|LoadPath|Locate|Ltac|Ltac2|ML|Match|Method|Minimality|Module|Modules|Morphism|Next|NoInline|Notation|Number|OCaml|Obligation|Obligations|Opaque|Open|Optimize|Parameter|Parameters|Parametric|Path|Paths|Prenex|Preterm|Primitive|Print|Profile|Projections|Proof|Prop|PropBinOp|PropOp|PropUOp|Property|Proposition|Pwd|Qed|Quit|Rec|Record|Recursive|Redirect|Reduction|Register|Relation|Remark|Remove|Require|Reserved|Reset|Resolve|Restart|Rewrite|Right|Ring|Rings|SProp|Saturate|Save|Scheme|Scope|Scopes|Search|SearchHead|SearchPattern|SearchRewrite|Section|Separate|Set|Setoid|Show|Signatures|Solve|Solver|Sort|Sortclass|Sorted|Spec|Step|Strategies|Strategy|String|Structure|SubClass|Subgraph|SuchThat|Tactic|Term|TestCompile|Theorem|Time|Timeout|To|Transparent|Type|Typeclasses|Types|Typing|UnOp|UnOpSpec|Undelimit|Undo|Unfocus|Unfocused|Unfold|Universe|Universes|Unshelve|Variable|Variables|Variant|Verbose|View|Visibility|Zify|_|apply|as|at|by|cofix|else|end|exists|exists2|fix|for|forall|fun|if|in|let|match|measure|move|removed|return|struct|then|using|wf|where|with)\b/,
|
|
8390
|
+
number:
|
|
8391
|
+
/\b(?:0x[a-f0-9][a-f0-9_]*(?:\.[a-f0-9_]+)?(?:p[+-]?\d[\d_]*)?|\d[\d_]*(?:\.[\d_]+)?(?:e[+-]?\d[\d_]*)?)\b/i,
|
|
8392
|
+
punct: {
|
|
8393
|
+
pattern: /@\{|\{\||\[=|:>/,
|
|
8394
|
+
alias: 'punctuation'
|
|
8395
|
+
},
|
|
8396
|
+
operator:
|
|
8397
|
+
/\/\\|\\\/|\.{2,3}|:{1,2}=|\*\*|[-=]>|<(?:->?|[+:=>]|<:)|>(?:=|->)|\|[-|]?|[-!%&*+/<=>?@^~']/,
|
|
8398
|
+
punctuation: /\.\(|`\(|@\{|`\{|\{\||\[=|:>|[:.,;(){}\[\]]/
|
|
8399
|
+
};
|
|
8400
|
+
})(Prism);
|
|
8401
|
+
}
|
|
8402
|
+
return coq_1;
|
|
8403
|
+
}
|
|
8404
|
+
|
|
8405
|
+
var ruby_1;
|
|
8406
|
+
var hasRequiredRuby;
|
|
8407
|
+
|
|
8408
|
+
function requireRuby () {
|
|
8409
|
+
if (hasRequiredRuby) return ruby_1;
|
|
8410
|
+
hasRequiredRuby = 1;
|
|
8411
|
+
|
|
8412
|
+
ruby_1 = ruby;
|
|
8413
|
+
ruby.displayName = 'ruby';
|
|
8414
|
+
ruby.aliases = ['rb'];
|
|
8415
|
+
function ruby(Prism) {
|
|
8416
|
+
(function (Prism) {
|
|
8417
|
+
Prism.languages.ruby = Prism.languages.extend('clike', {
|
|
8418
|
+
comment: {
|
|
8419
|
+
pattern: /#.*|^=begin\s[\s\S]*?^=end/m,
|
|
8420
|
+
greedy: true
|
|
8421
|
+
},
|
|
8422
|
+
'class-name': {
|
|
8423
|
+
pattern:
|
|
8424
|
+
/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,
|
|
8425
|
+
lookbehind: true,
|
|
8426
|
+
inside: {
|
|
8427
|
+
punctuation: /[.\\]/
|
|
8428
|
+
}
|
|
8429
|
+
},
|
|
8430
|
+
keyword:
|
|
8431
|
+
/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,
|
|
8432
|
+
operator:
|
|
8433
|
+
/\.{2,3}|&\.|===|<?=>|[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,
|
|
8434
|
+
punctuation: /[(){}[\].,;]/
|
|
8435
|
+
});
|
|
8436
|
+
Prism.languages.insertBefore('ruby', 'operator', {
|
|
8437
|
+
'double-colon': {
|
|
8438
|
+
pattern: /::/,
|
|
8439
|
+
alias: 'punctuation'
|
|
8440
|
+
}
|
|
8441
|
+
});
|
|
8442
|
+
var interpolation = {
|
|
8443
|
+
pattern: /((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,
|
|
8444
|
+
lookbehind: true,
|
|
8445
|
+
inside: {
|
|
8446
|
+
content: {
|
|
8447
|
+
pattern: /^(#\{)[\s\S]+(?=\}$)/,
|
|
8448
|
+
lookbehind: true,
|
|
8449
|
+
inside: Prism.languages.ruby
|
|
8450
|
+
},
|
|
8451
|
+
delimiter: {
|
|
8452
|
+
pattern: /^#\{|\}$/,
|
|
8453
|
+
alias: 'punctuation'
|
|
8454
|
+
}
|
|
8455
|
+
}
|
|
8456
|
+
};
|
|
8457
|
+
delete Prism.languages.ruby.function;
|
|
8458
|
+
var percentExpression =
|
|
8459
|
+
'(?:' +
|
|
8460
|
+
[
|
|
8461
|
+
/([^a-zA-Z0-9\s{(\[<=])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,
|
|
8462
|
+
/\((?:[^()\\]|\\[\s\S]|\((?:[^()\\]|\\[\s\S])*\))*\)/.source,
|
|
8463
|
+
/\{(?:[^{}\\]|\\[\s\S]|\{(?:[^{}\\]|\\[\s\S])*\})*\}/.source,
|
|
8464
|
+
/\[(?:[^\[\]\\]|\\[\s\S]|\[(?:[^\[\]\\]|\\[\s\S])*\])*\]/.source,
|
|
8465
|
+
/<(?:[^<>\\]|\\[\s\S]|<(?:[^<>\\]|\\[\s\S])*>)*>/.source
|
|
8466
|
+
].join('|') +
|
|
8467
|
+
')';
|
|
8468
|
+
var symbolName =
|
|
8469
|
+
/(?:"(?:\\.|[^"\\\r\n])*"|(?:\b[a-zA-Z_]\w*|[^\s\0-\x7F]+)[?!]?|\$.)/
|
|
8470
|
+
.source;
|
|
8471
|
+
Prism.languages.insertBefore('ruby', 'keyword', {
|
|
8472
|
+
'regex-literal': [
|
|
8473
|
+
{
|
|
8474
|
+
pattern: RegExp(
|
|
8475
|
+
/%r/.source + percentExpression + /[egimnosux]{0,6}/.source
|
|
8476
|
+
),
|
|
8477
|
+
greedy: true,
|
|
8478
|
+
inside: {
|
|
8479
|
+
interpolation: interpolation,
|
|
8480
|
+
regex: /[\s\S]+/
|
|
8481
|
+
}
|
|
8482
|
+
},
|
|
8483
|
+
{
|
|
8484
|
+
pattern:
|
|
8485
|
+
/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,
|
|
8486
|
+
lookbehind: true,
|
|
8487
|
+
greedy: true,
|
|
8488
|
+
inside: {
|
|
8489
|
+
interpolation: interpolation,
|
|
8490
|
+
regex: /[\s\S]+/
|
|
8491
|
+
}
|
|
8492
|
+
}
|
|
8493
|
+
],
|
|
8494
|
+
variable: /[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,
|
|
8495
|
+
symbol: [
|
|
8496
|
+
{
|
|
8497
|
+
pattern: RegExp(/(^|[^:]):/.source + symbolName),
|
|
8498
|
+
lookbehind: true,
|
|
8499
|
+
greedy: true
|
|
8500
|
+
},
|
|
8501
|
+
{
|
|
8502
|
+
pattern: RegExp(
|
|
8503
|
+
/([\r\n{(,][ \t]*)/.source + symbolName + /(?=:(?!:))/.source
|
|
8504
|
+
),
|
|
8505
|
+
lookbehind: true,
|
|
8506
|
+
greedy: true
|
|
8507
|
+
}
|
|
8508
|
+
],
|
|
8509
|
+
'method-definition': {
|
|
8510
|
+
pattern: /(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,
|
|
8511
|
+
lookbehind: true,
|
|
8512
|
+
inside: {
|
|
8513
|
+
function: /\b\w+$/,
|
|
8514
|
+
keyword: /^self\b/,
|
|
8515
|
+
'class-name': /^\w+/,
|
|
8516
|
+
punctuation: /\./
|
|
8517
|
+
}
|
|
8518
|
+
}
|
|
8519
|
+
});
|
|
8520
|
+
Prism.languages.insertBefore('ruby', 'string', {
|
|
8521
|
+
'string-literal': [
|
|
8522
|
+
{
|
|
8523
|
+
pattern: RegExp(/%[qQiIwWs]?/.source + percentExpression),
|
|
8524
|
+
greedy: true,
|
|
8525
|
+
inside: {
|
|
8526
|
+
interpolation: interpolation,
|
|
8527
|
+
string: /[\s\S]+/
|
|
8528
|
+
}
|
|
8529
|
+
},
|
|
8530
|
+
{
|
|
8531
|
+
pattern:
|
|
8532
|
+
/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,
|
|
8533
|
+
greedy: true,
|
|
8534
|
+
inside: {
|
|
8535
|
+
interpolation: interpolation,
|
|
8536
|
+
string: /[\s\S]+/
|
|
8537
|
+
}
|
|
8538
|
+
},
|
|
8539
|
+
{
|
|
8540
|
+
pattern: /<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,
|
|
8541
|
+
alias: 'heredoc-string',
|
|
8542
|
+
greedy: true,
|
|
8543
|
+
inside: {
|
|
8544
|
+
delimiter: {
|
|
8545
|
+
pattern: /^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,
|
|
8546
|
+
inside: {
|
|
8547
|
+
symbol: /\b\w+/,
|
|
8548
|
+
punctuation: /^<<[-~]?/
|
|
8549
|
+
}
|
|
8550
|
+
},
|
|
8551
|
+
interpolation: interpolation,
|
|
8552
|
+
string: /[\s\S]+/
|
|
8553
|
+
}
|
|
8554
|
+
},
|
|
8555
|
+
{
|
|
8556
|
+
pattern: /<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,
|
|
8557
|
+
alias: 'heredoc-string',
|
|
8558
|
+
greedy: true,
|
|
8559
|
+
inside: {
|
|
8560
|
+
delimiter: {
|
|
8561
|
+
pattern: /^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,
|
|
8562
|
+
inside: {
|
|
8563
|
+
symbol: /\b\w+/,
|
|
8564
|
+
punctuation: /^<<[-~]?'|'$/
|
|
8565
|
+
}
|
|
8566
|
+
},
|
|
8567
|
+
string: /[\s\S]+/
|
|
8568
|
+
}
|
|
8569
|
+
}
|
|
8570
|
+
],
|
|
8571
|
+
'command-literal': [
|
|
8572
|
+
{
|
|
8573
|
+
pattern: RegExp(/%x/.source + percentExpression),
|
|
8574
|
+
greedy: true,
|
|
8575
|
+
inside: {
|
|
8576
|
+
interpolation: interpolation,
|
|
8577
|
+
command: {
|
|
8578
|
+
pattern: /[\s\S]+/,
|
|
8579
|
+
alias: 'string'
|
|
8580
|
+
}
|
|
8581
|
+
}
|
|
8582
|
+
},
|
|
8583
|
+
{
|
|
8584
|
+
pattern: /`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,
|
|
8585
|
+
greedy: true,
|
|
8586
|
+
inside: {
|
|
8587
|
+
interpolation: interpolation,
|
|
8588
|
+
command: {
|
|
8589
|
+
pattern: /[\s\S]+/,
|
|
8590
|
+
alias: 'string'
|
|
8591
|
+
}
|
|
8592
|
+
}
|
|
8593
|
+
}
|
|
8594
|
+
]
|
|
8595
|
+
});
|
|
8596
|
+
delete Prism.languages.ruby.string;
|
|
8597
|
+
Prism.languages.insertBefore('ruby', 'number', {
|
|
8598
|
+
builtin:
|
|
8599
|
+
/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,
|
|
8600
|
+
constant: /\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/
|
|
8601
|
+
});
|
|
8602
|
+
Prism.languages.rb = Prism.languages.ruby;
|
|
8603
|
+
})(Prism);
|
|
8604
|
+
}
|
|
8605
|
+
return ruby_1;
|
|
8606
|
+
}
|
|
8607
|
+
|
|
8608
|
+
var crystal_1;
|
|
8609
|
+
var hasRequiredCrystal;
|
|
8610
|
+
|
|
8611
|
+
function requireCrystal () {
|
|
8612
|
+
if (hasRequiredCrystal) return crystal_1;
|
|
8613
|
+
hasRequiredCrystal = 1;
|
|
8614
|
+
var refractorRuby = requireRuby();
|
|
8615
|
+
crystal_1 = crystal;
|
|
8616
|
+
crystal.displayName = 'crystal';
|
|
8617
|
+
crystal.aliases = [];
|
|
8618
|
+
function crystal(Prism) {
|
|
8619
|
+
Prism.register(refractorRuby)
|
|
8620
|
+
;(function (Prism) {
|
|
8621
|
+
Prism.languages.crystal = Prism.languages.extend('ruby', {
|
|
8622
|
+
keyword: [
|
|
8623
|
+
/\b(?:__DIR__|__END_LINE__|__FILE__|__LINE__|abstract|alias|annotation|as|asm|begin|break|case|class|def|do|else|elsif|end|ensure|enum|extend|for|fun|if|ifdef|include|instance_sizeof|lib|macro|module|next|of|out|pointerof|private|protected|ptr|require|rescue|return|select|self|sizeof|struct|super|then|type|typeof|undef|uninitialized|union|unless|until|when|while|with|yield)\b/,
|
|
8624
|
+
{
|
|
8625
|
+
pattern: /(\.\s*)(?:is_a|responds_to)\?/,
|
|
8626
|
+
lookbehind: true
|
|
8627
|
+
}
|
|
8628
|
+
],
|
|
8629
|
+
number:
|
|
8630
|
+
/\b(?:0b[01_]*[01]|0o[0-7_]*[0-7]|0x[\da-fA-F_]*[\da-fA-F]|(?:\d(?:[\d_]*\d)?)(?:\.[\d_]*\d)?(?:[eE][+-]?[\d_]*\d)?)(?:_(?:[uif](?:8|16|32|64))?)?\b/,
|
|
8631
|
+
operator: [/->/, Prism.languages.ruby.operator],
|
|
8632
|
+
punctuation: /[(){}[\].,;\\]/
|
|
8633
|
+
});
|
|
8634
|
+
Prism.languages.insertBefore('crystal', 'string-literal', {
|
|
8635
|
+
attribute: {
|
|
8636
|
+
pattern: /@\[.*?\]/,
|
|
8637
|
+
inside: {
|
|
8638
|
+
delimiter: {
|
|
8639
|
+
pattern: /^@\[|\]$/,
|
|
8640
|
+
alias: 'punctuation'
|
|
8641
|
+
},
|
|
8642
|
+
attribute: {
|
|
8643
|
+
pattern: /^(\s*)\w+/,
|
|
8644
|
+
lookbehind: true,
|
|
8645
|
+
alias: 'class-name'
|
|
8646
|
+
},
|
|
8647
|
+
args: {
|
|
8648
|
+
pattern: /\S(?:[\s\S]*\S)?/,
|
|
8649
|
+
inside: Prism.languages.crystal
|
|
8650
|
+
}
|
|
8651
|
+
}
|
|
8652
|
+
},
|
|
8653
|
+
expansion: {
|
|
8654
|
+
pattern: /\{(?:\{.*?\}|%.*?%)\}/,
|
|
8655
|
+
inside: {
|
|
8656
|
+
content: {
|
|
8657
|
+
pattern: /^(\{.)[\s\S]+(?=.\}$)/,
|
|
8658
|
+
lookbehind: true,
|
|
8659
|
+
inside: Prism.languages.crystal
|
|
8660
|
+
},
|
|
8661
|
+
delimiter: {
|
|
8662
|
+
pattern: /^\{[\{%]|[\}%]\}$/,
|
|
8663
|
+
alias: 'operator'
|
|
8664
|
+
}
|
|
8665
|
+
}
|
|
8666
|
+
},
|
|
8667
|
+
char: {
|
|
8668
|
+
pattern:
|
|
8669
|
+
/'(?:[^\\\r\n]{1,2}|\\(?:.|u(?:[A-Fa-f0-9]{1,4}|\{[A-Fa-f0-9]{1,6}\})))'/,
|
|
8670
|
+
greedy: true
|
|
8671
|
+
}
|
|
8672
|
+
});
|
|
8673
|
+
})(Prism);
|
|
8674
|
+
}
|
|
8675
|
+
return crystal_1;
|
|
8676
|
+
}
|
|
8677
|
+
|
|
8678
|
+
var cshtml_1;
|
|
8679
|
+
var hasRequiredCshtml;
|
|
8680
|
+
|
|
8681
|
+
function requireCshtml () {
|
|
8682
|
+
if (hasRequiredCshtml) return cshtml_1;
|
|
8683
|
+
hasRequiredCshtml = 1;
|
|
8684
|
+
var refractorCsharp = requireCsharp();
|
|
8685
|
+
cshtml_1 = cshtml;
|
|
8686
|
+
cshtml.displayName = 'cshtml';
|
|
8687
|
+
cshtml.aliases = ['razor'];
|
|
8688
|
+
function cshtml(Prism) {
|
|
8689
|
+
Prism.register(refractorCsharp)
|
|
8690
|
+
// Docs:
|
|
8691
|
+
// https://docs.microsoft.com/en-us/aspnet/core/razor-pages/?view=aspnetcore-5.0&tabs=visual-studio
|
|
8692
|
+
// https://docs.microsoft.com/en-us/aspnet/core/mvc/views/razor?view=aspnetcore-5.0
|
|
8693
|
+
;(function (Prism) {
|
|
8694
|
+
var commentLike = /\/(?![/*])|\/\/.*[\r\n]|\/\*[^*]*(?:\*(?!\/)[^*]*)*\*\//
|
|
8695
|
+
.source;
|
|
8696
|
+
var stringLike =
|
|
8697
|
+
/@(?!")|"(?:[^\r\n\\"]|\\.)*"|@"(?:[^\\"]|""|\\[\s\S])*"(?!")/.source +
|
|
8698
|
+
'|' +
|
|
8699
|
+
/'(?:(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'|(?=[^\\](?!')))/.source;
|
|
8700
|
+
/**
|
|
8701
|
+
* Creates a nested pattern where all occurrences of the string `<<self>>` are replaced with the pattern itself.
|
|
8702
|
+
*
|
|
8703
|
+
* @param {string} pattern
|
|
8704
|
+
* @param {number} depthLog2
|
|
8705
|
+
* @returns {string}
|
|
8706
|
+
*/
|
|
8707
|
+
function nested(pattern, depthLog2) {
|
|
8708
|
+
for (var i = 0; i < depthLog2; i++) {
|
|
8709
|
+
pattern = pattern.replace(/<self>/g, function () {
|
|
8710
|
+
return '(?:' + pattern + ')'
|
|
8711
|
+
});
|
|
8712
|
+
}
|
|
8713
|
+
return pattern
|
|
8714
|
+
.replace(/<self>/g, '[^\\s\\S]')
|
|
8715
|
+
.replace(/<str>/g, '(?:' + stringLike + ')')
|
|
8716
|
+
.replace(/<comment>/g, '(?:' + commentLike + ')')
|
|
8717
|
+
}
|
|
8718
|
+
var round = nested(/\((?:[^()'"@/]|<str>|<comment>|<self>)*\)/.source, 2);
|
|
8719
|
+
var square = nested(/\[(?:[^\[\]'"@/]|<str>|<comment>|<self>)*\]/.source, 2);
|
|
8720
|
+
var curly = nested(/\{(?:[^{}'"@/]|<str>|<comment>|<self>)*\}/.source, 2);
|
|
8721
|
+
var angle = nested(/<(?:[^<>'"@/]|<str>|<comment>|<self>)*>/.source, 2); // Note about the above bracket patterns:
|
|
8722
|
+
// They all ignore HTML expressions that might be in the C# code. This is a problem because HTML (like strings and
|
|
8723
|
+
// comments) is parsed differently. This is a huge problem because HTML might contain brackets and quotes which
|
|
8724
|
+
// messes up the bracket and string counting implemented by the above patterns.
|
|
8725
|
+
//
|
|
8726
|
+
// This problem is not fixable because 1) HTML expression are highly context sensitive and very difficult to detect
|
|
8727
|
+
// and 2) they require one capturing group at every nested level. See the `tagRegion` pattern to admire the
|
|
8728
|
+
// complexity of an HTML expression.
|
|
8729
|
+
//
|
|
8730
|
+
// To somewhat alleviate the problem a bit, the patterns for characters (e.g. 'a') is very permissive, it also
|
|
8731
|
+
// allows invalid characters to support HTML expressions like this: <p>That's it!</p>.
|
|
8732
|
+
var tagAttrs =
|
|
8733
|
+
/(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?/
|
|
8734
|
+
.source;
|
|
8735
|
+
var tagContent = /(?!\d)[^\s>\/=$<%]+/.source + tagAttrs + /\s*\/?>/.source;
|
|
8736
|
+
var tagRegion =
|
|
8737
|
+
/\B@?/.source +
|
|
8738
|
+
'(?:' +
|
|
8739
|
+
/<([a-zA-Z][\w:]*)/.source +
|
|
8740
|
+
tagAttrs +
|
|
8741
|
+
/\s*>/.source +
|
|
8742
|
+
'(?:' +
|
|
8743
|
+
(/[^<]/.source +
|
|
8744
|
+
'|' + // all tags that are not the start tag
|
|
8745
|
+
// eslint-disable-next-line regexp/strict
|
|
8746
|
+
/<\/?(?!\1\b)/.source +
|
|
8747
|
+
tagContent +
|
|
8748
|
+
'|' + // nested start tag
|
|
8749
|
+
nested(
|
|
8750
|
+
// eslint-disable-next-line regexp/strict
|
|
8751
|
+
/<\1/.source +
|
|
8752
|
+
tagAttrs +
|
|
8753
|
+
/\s*>/.source +
|
|
8754
|
+
'(?:' +
|
|
8755
|
+
(/[^<]/.source +
|
|
8756
|
+
'|' + // all tags that are not the start tag
|
|
8757
|
+
// eslint-disable-next-line regexp/strict
|
|
8758
|
+
/<\/?(?!\1\b)/.source +
|
|
8759
|
+
tagContent +
|
|
8760
|
+
'|' +
|
|
8761
|
+
'<self>') +
|
|
8762
|
+
')*' + // eslint-disable-next-line regexp/strict
|
|
8763
|
+
/<\/\1\s*>/.source,
|
|
8764
|
+
2
|
|
8765
|
+
)) +
|
|
8766
|
+
')*' + // eslint-disable-next-line regexp/strict
|
|
8767
|
+
/<\/\1\s*>/.source +
|
|
8768
|
+
'|' +
|
|
8769
|
+
/</.source +
|
|
8770
|
+
tagContent +
|
|
8771
|
+
')'; // Now for the actual language definition(s):
|
|
8772
|
+
//
|
|
8773
|
+
// Razor as a language has 2 parts:
|
|
8774
|
+
// 1) CSHTML: A markup-like language that has been extended with inline C# code expressions and blocks.
|
|
8775
|
+
// 2) C#+HTML: A variant of C# that can contain CSHTML tags as expressions.
|
|
8776
|
+
//
|
|
8777
|
+
// In the below code, both CSHTML and C#+HTML will be create as separate language definitions that reference each
|
|
8778
|
+
// other. However, only CSHTML will be exported via `Prism.languages`.
|
|
8779
|
+
Prism.languages.cshtml = Prism.languages.extend('markup', {});
|
|
8780
|
+
var csharpWithHtml = Prism.languages.insertBefore(
|
|
8781
|
+
'csharp',
|
|
8782
|
+
'string',
|
|
8783
|
+
{
|
|
8784
|
+
html: {
|
|
8785
|
+
pattern: RegExp(tagRegion),
|
|
8786
|
+
greedy: true,
|
|
8787
|
+
inside: Prism.languages.cshtml
|
|
8788
|
+
}
|
|
8789
|
+
},
|
|
8790
|
+
{
|
|
8791
|
+
csharp: Prism.languages.extend('csharp', {})
|
|
8792
|
+
}
|
|
8793
|
+
);
|
|
8794
|
+
var cs = {
|
|
8795
|
+
pattern: /\S[\s\S]*/,
|
|
8796
|
+
alias: 'language-csharp',
|
|
8797
|
+
inside: csharpWithHtml
|
|
8798
|
+
};
|
|
8799
|
+
Prism.languages.insertBefore('cshtml', 'prolog', {
|
|
8800
|
+
'razor-comment': {
|
|
8801
|
+
pattern: /@\*[\s\S]*?\*@/,
|
|
8802
|
+
greedy: true,
|
|
8803
|
+
alias: 'comment'
|
|
8804
|
+
},
|
|
8805
|
+
block: {
|
|
8806
|
+
pattern: RegExp(
|
|
8807
|
+
/(^|[^@])@/.source +
|
|
8808
|
+
'(?:' +
|
|
8809
|
+
[
|
|
8810
|
+
// @{ ... }
|
|
8811
|
+
curly, // @code{ ... }
|
|
8812
|
+
/(?:code|functions)\s*/.source + curly, // @for (...) { ... }
|
|
8813
|
+
/(?:for|foreach|lock|switch|using|while)\s*/.source +
|
|
8814
|
+
round +
|
|
8815
|
+
/\s*/.source +
|
|
8816
|
+
curly, // @do { ... } while (...);
|
|
8817
|
+
/do\s*/.source +
|
|
8818
|
+
curly +
|
|
8819
|
+
/\s*while\s*/.source +
|
|
8820
|
+
round +
|
|
8821
|
+
/(?:\s*;)?/.source, // @try { ... } catch (...) { ... } finally { ... }
|
|
8822
|
+
/try\s*/.source +
|
|
8823
|
+
curly +
|
|
8824
|
+
/\s*catch\s*/.source +
|
|
8825
|
+
round +
|
|
8826
|
+
/\s*/.source +
|
|
8827
|
+
curly +
|
|
8828
|
+
/\s*finally\s*/.source +
|
|
8829
|
+
curly, // @if (...) {...} else if (...) {...} else {...}
|
|
8830
|
+
/if\s*/.source +
|
|
8831
|
+
round +
|
|
8832
|
+
/\s*/.source +
|
|
8833
|
+
curly +
|
|
8834
|
+
'(?:' +
|
|
8835
|
+
/\s*else/.source +
|
|
8836
|
+
'(?:' +
|
|
8837
|
+
/\s+if\s*/.source +
|
|
8838
|
+
round +
|
|
8839
|
+
')?' +
|
|
8840
|
+
/\s*/.source +
|
|
8841
|
+
curly +
|
|
8842
|
+
')*'
|
|
8843
|
+
].join('|') +
|
|
8844
|
+
')'
|
|
8845
|
+
),
|
|
8846
|
+
lookbehind: true,
|
|
8847
|
+
greedy: true,
|
|
8848
|
+
inside: {
|
|
8849
|
+
keyword: /^@\w*/,
|
|
8850
|
+
csharp: cs
|
|
8851
|
+
}
|
|
8852
|
+
},
|
|
8853
|
+
directive: {
|
|
8854
|
+
pattern:
|
|
8855
|
+
/^([ \t]*)@(?:addTagHelper|attribute|implements|inherits|inject|layout|model|namespace|page|preservewhitespace|removeTagHelper|section|tagHelperPrefix|using)(?=\s).*/m,
|
|
8856
|
+
lookbehind: true,
|
|
8857
|
+
greedy: true,
|
|
8858
|
+
inside: {
|
|
8859
|
+
keyword: /^@\w+/,
|
|
8860
|
+
csharp: cs
|
|
8861
|
+
}
|
|
8862
|
+
},
|
|
8863
|
+
value: {
|
|
8864
|
+
pattern: RegExp(
|
|
8865
|
+
/(^|[^@])@/.source +
|
|
8866
|
+
/(?:await\b\s*)?/.source +
|
|
8867
|
+
'(?:' +
|
|
8868
|
+
/\w+\b/.source +
|
|
8869
|
+
'|' +
|
|
8870
|
+
round +
|
|
8871
|
+
')' +
|
|
8872
|
+
'(?:' +
|
|
8873
|
+
/[?!]?\.\w+\b/.source +
|
|
8874
|
+
'|' +
|
|
8875
|
+
round +
|
|
8876
|
+
'|' +
|
|
8877
|
+
square +
|
|
8878
|
+
'|' +
|
|
8879
|
+
angle +
|
|
8880
|
+
round +
|
|
8881
|
+
')*'
|
|
8882
|
+
),
|
|
8883
|
+
lookbehind: true,
|
|
8884
|
+
greedy: true,
|
|
8885
|
+
alias: 'variable',
|
|
8886
|
+
inside: {
|
|
8887
|
+
keyword: /^@/,
|
|
8888
|
+
csharp: cs
|
|
8889
|
+
}
|
|
8890
|
+
},
|
|
8891
|
+
'delegate-operator': {
|
|
8892
|
+
pattern: /(^|[^@])@(?=<)/,
|
|
8893
|
+
lookbehind: true,
|
|
8894
|
+
alias: 'operator'
|
|
8895
|
+
}
|
|
8896
|
+
});
|
|
8897
|
+
Prism.languages.razor = Prism.languages.cshtml;
|
|
8898
|
+
})(Prism);
|
|
8899
|
+
}
|
|
8900
|
+
return cshtml_1;
|
|
8903
8901
|
}
|
|
8904
8902
|
|
|
8905
|
-
var
|
|
8906
|
-
|
|
8907
|
-
|
|
8908
|
-
function
|
|
8903
|
+
var csp_1;
|
|
8904
|
+
var hasRequiredCsp;
|
|
8905
|
+
|
|
8906
|
+
function requireCsp () {
|
|
8907
|
+
if (hasRequiredCsp) return csp_1;
|
|
8908
|
+
hasRequiredCsp = 1;
|
|
8909
|
+
|
|
8910
|
+
csp_1 = csp;
|
|
8911
|
+
csp.displayName = 'csp';
|
|
8912
|
+
csp.aliases = [];
|
|
8913
|
+
function csp(Prism) {
|
|
8909
8914
|
(function (Prism) {
|
|
8910
|
-
|
|
8911
|
-
|
|
8912
|
-
|
|
8913
|
-
|
|
8914
|
-
|
|
8915
|
-
|
|
8916
|
-
|
|
8917
|
-
|
|
8918
|
-
|
|
8919
|
-
|
|
8920
|
-
|
|
8921
|
-
|
|
8922
|
-
|
|
8923
|
-
|
|
8924
|
-
|
|
8925
|
-
|
|
8926
|
-
|
|
8927
|
-
|
|
8928
|
-
|
|
8929
|
-
|
|
8930
|
-
|
|
8931
|
-
|
|
8932
|
-
|
|
8933
|
-
|
|
8934
|
-
|
|
8935
|
-
|
|
8936
|
-
|
|
8937
|
-
|
|
8938
|
-
|
|
8939
|
-
|
|
8940
|
-
|
|
8941
|
-
|
|
8942
|
-
|
|
8943
|
-
|
|
8944
|
-
|
|
8945
|
-
|
|
8946
|
-
|
|
8947
|
-
|
|
8948
|
-
|
|
8949
|
-
|
|
8950
|
-
|
|
8951
|
-
|
|
8952
|
-
|
|
8953
|
-
|
|
8954
|
-
|
|
8955
|
-
|
|
8956
|
-
|
|
8957
|
-
|
|
8958
|
-
|
|
8959
|
-
|
|
8960
|
-
|
|
8961
|
-
|
|
8962
|
-
|
|
8963
|
-
|
|
8964
|
-
|
|
8965
|
-
|
|
8966
|
-
|
|
8967
|
-
|
|
8968
|
-
|
|
8969
|
-
|
|
8970
|
-
|
|
8971
|
-
|
|
8972
|
-
|
|
8973
|
-
|
|
8974
|
-
|
|
8975
|
-
|
|
8976
|
-
|
|
8977
|
-
|
|
8978
|
-
|
|
8979
|
-
|
|
8980
|
-
|
|
8981
|
-
|
|
8982
|
-
|
|
8983
|
-
|
|
8984
|
-
|
|
8985
|
-
|
|
8986
|
-
|
|
8987
|
-
|
|
8988
|
-
|
|
8989
|
-
|
|
8990
|
-
|
|
8991
|
-
|
|
8992
|
-
|
|
8993
|
-
|
|
8994
|
-
|
|
8995
|
-
|
|
8996
|
-
|
|
8997
|
-
|
|
8998
|
-
|
|
8999
|
-
|
|
9000
|
-
|
|
9001
|
-
|
|
9002
|
-
|
|
9003
|
-
|
|
9004
|
-
|
|
9005
|
-
|
|
9006
|
-
|
|
9007
|
-
|
|
9008
|
-
|
|
9009
|
-
|
|
9010
|
-
|
|
9011
|
-
|
|
9012
|
-
|
|
9013
|
-
|
|
9014
|
-
|
|
9015
|
-
|
|
9016
|
-
|
|
9017
|
-
|
|
9018
|
-
|
|
9019
|
-
|
|
9020
|
-
|
|
9021
|
-
|
|
9022
|
-
|
|
9023
|
-
|
|
8915
|
+
/**
|
|
8916
|
+
* @param {string} source
|
|
8917
|
+
* @returns {RegExp}
|
|
8918
|
+
*/
|
|
8919
|
+
function value(source) {
|
|
8920
|
+
return RegExp(
|
|
8921
|
+
/([ \t])/.source + '(?:' + source + ')' + /(?=[\s;]|$)/.source,
|
|
8922
|
+
'i'
|
|
8923
|
+
)
|
|
8924
|
+
}
|
|
8925
|
+
Prism.languages.csp = {
|
|
8926
|
+
directive: {
|
|
8927
|
+
pattern:
|
|
8928
|
+
/(^|[\s;])(?:base-uri|block-all-mixed-content|(?:child|connect|default|font|frame|img|manifest|media|object|prefetch|script|style|worker)-src|disown-opener|form-action|frame-(?:ancestors|options)|input-protection(?:-(?:clip|selectors))?|navigate-to|plugin-types|policy-uri|referrer|reflected-xss|report-(?:to|uri)|require-sri-for|sandbox|(?:script|style)-src-(?:attr|elem)|upgrade-insecure-requests)(?=[\s;]|$)/i,
|
|
8929
|
+
lookbehind: true,
|
|
8930
|
+
alias: 'property'
|
|
8931
|
+
},
|
|
8932
|
+
scheme: {
|
|
8933
|
+
pattern: value(/[a-z][a-z0-9.+-]*:/.source),
|
|
8934
|
+
lookbehind: true
|
|
8935
|
+
},
|
|
8936
|
+
none: {
|
|
8937
|
+
pattern: value(/'none'/.source),
|
|
8938
|
+
lookbehind: true,
|
|
8939
|
+
alias: 'keyword'
|
|
8940
|
+
},
|
|
8941
|
+
nonce: {
|
|
8942
|
+
pattern: value(/'nonce-[-+/\w=]+'/.source),
|
|
8943
|
+
lookbehind: true,
|
|
8944
|
+
alias: 'number'
|
|
8945
|
+
},
|
|
8946
|
+
hash: {
|
|
8947
|
+
pattern: value(/'sha(?:256|384|512)-[-+/\w=]+'/.source),
|
|
8948
|
+
lookbehind: true,
|
|
8949
|
+
alias: 'number'
|
|
8950
|
+
},
|
|
8951
|
+
host: {
|
|
8952
|
+
pattern: value(
|
|
8953
|
+
/[a-z][a-z0-9.+-]*:\/\/[^\s;,']*/.source +
|
|
8954
|
+
'|' +
|
|
8955
|
+
/\*[^\s;,']*/.source +
|
|
8956
|
+
'|' +
|
|
8957
|
+
/[a-z0-9-]+(?:\.[a-z0-9-]+)+(?::[\d*]+)?(?:\/[^\s;,']*)?/.source
|
|
8958
|
+
),
|
|
8959
|
+
lookbehind: true,
|
|
8960
|
+
alias: 'url',
|
|
8961
|
+
inside: {
|
|
8962
|
+
important: /\*/
|
|
8963
|
+
}
|
|
8964
|
+
},
|
|
8965
|
+
keyword: [
|
|
8966
|
+
{
|
|
8967
|
+
pattern: value(/'unsafe-[a-z-]+'/.source),
|
|
8968
|
+
lookbehind: true,
|
|
8969
|
+
alias: 'unsafe'
|
|
8970
|
+
},
|
|
8971
|
+
{
|
|
8972
|
+
pattern: value(/'[a-z-]+'/.source),
|
|
8973
|
+
lookbehind: true,
|
|
8974
|
+
alias: 'safe'
|
|
8975
|
+
}
|
|
8976
|
+
],
|
|
8977
|
+
punctuation: /;/
|
|
8978
|
+
};
|
|
8979
|
+
})(Prism);
|
|
8980
|
+
}
|
|
8981
|
+
return csp_1;
|
|
8982
|
+
}
|
|
8983
|
+
|
|
8984
|
+
var cssExtras_1;
|
|
8985
|
+
var hasRequiredCssExtras;
|
|
8986
|
+
|
|
8987
|
+
function requireCssExtras () {
|
|
8988
|
+
if (hasRequiredCssExtras) return cssExtras_1;
|
|
8989
|
+
hasRequiredCssExtras = 1;
|
|
8990
|
+
|
|
8991
|
+
cssExtras_1 = cssExtras;
|
|
8992
|
+
cssExtras.displayName = 'cssExtras';
|
|
8993
|
+
cssExtras.aliases = [];
|
|
8994
|
+
function cssExtras(Prism) {
|
|
8995
|
+
(function (Prism) {
|
|
8996
|
+
var string = /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;
|
|
8997
|
+
var selectorInside;
|
|
8998
|
+
Prism.languages.css.selector = {
|
|
8999
|
+
pattern: Prism.languages.css.selector.pattern,
|
|
9000
|
+
lookbehind: true,
|
|
9001
|
+
inside: (selectorInside = {
|
|
9002
|
+
'pseudo-element':
|
|
9003
|
+
/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,
|
|
9004
|
+
'pseudo-class': /:[-\w]+/,
|
|
9005
|
+
class: /\.[-\w]+/,
|
|
9006
|
+
id: /#[-\w]+/,
|
|
9007
|
+
attribute: {
|
|
9008
|
+
pattern: RegExp('\\[(?:[^[\\]"\']|' + string.source + ')*\\]'),
|
|
9009
|
+
greedy: true,
|
|
9010
|
+
inside: {
|
|
9011
|
+
punctuation: /^\[|\]$/,
|
|
9012
|
+
'case-sensitivity': {
|
|
9013
|
+
pattern: /(\s)[si]$/i,
|
|
9014
|
+
lookbehind: true,
|
|
9015
|
+
alias: 'keyword'
|
|
9016
|
+
},
|
|
9017
|
+
namespace: {
|
|
9018
|
+
pattern: /^(\s*)(?:(?!\s)[-*\w\xA0-\uFFFF])*\|(?!=)/,
|
|
9019
|
+
lookbehind: true,
|
|
9020
|
+
inside: {
|
|
9021
|
+
punctuation: /\|$/
|
|
9022
|
+
}
|
|
9023
|
+
},
|
|
9024
|
+
'attr-name': {
|
|
9025
|
+
pattern: /^(\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+/,
|
|
9026
|
+
lookbehind: true
|
|
9027
|
+
},
|
|
9028
|
+
'attr-value': [
|
|
9029
|
+
string,
|
|
9030
|
+
{
|
|
9031
|
+
pattern: /(=\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+(?=\s*$)/,
|
|
9032
|
+
lookbehind: true
|
|
9033
|
+
}
|
|
9034
|
+
],
|
|
9035
|
+
operator: /[|~*^$]?=/
|
|
9036
|
+
}
|
|
9037
|
+
},
|
|
9038
|
+
'n-th': [
|
|
9039
|
+
{
|
|
9040
|
+
pattern: /(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/,
|
|
9041
|
+
lookbehind: true,
|
|
9042
|
+
inside: {
|
|
9043
|
+
number: /[\dn]+/,
|
|
9044
|
+
operator: /[+-]/
|
|
9045
|
+
}
|
|
9046
|
+
},
|
|
9047
|
+
{
|
|
9048
|
+
pattern: /(\(\s*)(?:even|odd)(?=\s*\))/i,
|
|
9049
|
+
lookbehind: true
|
|
9050
|
+
}
|
|
9051
|
+
],
|
|
9052
|
+
combinator: />|\+|~|\|\|/,
|
|
9053
|
+
// the `tag` token has been existed and removed.
|
|
9054
|
+
// because we can't find a perfect tokenize to match it.
|
|
9055
|
+
// if you want to add it, please read https://github.com/PrismJS/prism/pull/2373 first.
|
|
9056
|
+
punctuation: /[(),]/
|
|
9057
|
+
})
|
|
9058
|
+
};
|
|
9059
|
+
Prism.languages.css['atrule'].inside['selector-function-argument'].inside =
|
|
9060
|
+
selectorInside;
|
|
9061
|
+
Prism.languages.insertBefore('css', 'property', {
|
|
9062
|
+
variable: {
|
|
9063
|
+
pattern:
|
|
9064
|
+
/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,
|
|
9065
|
+
lookbehind: true
|
|
9066
|
+
}
|
|
9067
|
+
});
|
|
9068
|
+
var unit = {
|
|
9069
|
+
pattern: /(\b\d+)(?:%|[a-z]+(?![\w-]))/,
|
|
9070
|
+
lookbehind: true
|
|
9071
|
+
}; // 123 -123 .123 -.123 12.3 -12.3
|
|
9072
|
+
var number = {
|
|
9073
|
+
pattern: /(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,
|
|
9074
|
+
lookbehind: true
|
|
9075
|
+
};
|
|
9076
|
+
Prism.languages.insertBefore('css', 'function', {
|
|
9077
|
+
operator: {
|
|
9078
|
+
pattern: /(\s)[+\-*\/](?=\s)/,
|
|
9079
|
+
lookbehind: true
|
|
9080
|
+
},
|
|
9081
|
+
// CAREFUL!
|
|
9082
|
+
// Previewers and Inline color use hexcode and color.
|
|
9083
|
+
hexcode: {
|
|
9084
|
+
pattern: /\B#[\da-f]{3,8}\b/i,
|
|
9085
|
+
alias: 'color'
|
|
9086
|
+
},
|
|
9087
|
+
color: [
|
|
9088
|
+
{
|
|
9089
|
+
pattern:
|
|
9090
|
+
/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,
|
|
9091
|
+
lookbehind: true
|
|
9092
|
+
},
|
|
9093
|
+
{
|
|
9094
|
+
pattern:
|
|
9095
|
+
/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,
|
|
9096
|
+
inside: {
|
|
9097
|
+
unit: unit,
|
|
9098
|
+
number: number,
|
|
9099
|
+
function: /[\w-]+(?=\()/,
|
|
9100
|
+
punctuation: /[(),]/
|
|
9101
|
+
}
|
|
9102
|
+
}
|
|
9103
|
+
],
|
|
9104
|
+
// it's important that there is no boundary assertion after the hex digits
|
|
9105
|
+
entity: /\\[\da-f]{1,8}/i,
|
|
9106
|
+
unit: unit,
|
|
9107
|
+
number: number
|
|
9108
|
+
});
|
|
9109
|
+
})(Prism);
|
|
9110
|
+
}
|
|
9111
|
+
return cssExtras_1;
|
|
9024
9112
|
}
|
|
9025
9113
|
|
|
9026
9114
|
var csv_1;
|
|
@@ -9043,298 +9131,343 @@ function requireCsv () {
|
|
|
9043
9131
|
return csv_1;
|
|
9044
9132
|
}
|
|
9045
9133
|
|
|
9046
|
-
var cypher_1
|
|
9047
|
-
|
|
9048
|
-
|
|
9049
|
-
function
|
|
9050
|
-
|
|
9051
|
-
|
|
9052
|
-
|
|
9053
|
-
|
|
9054
|
-
|
|
9055
|
-
|
|
9056
|
-
|
|
9057
|
-
|
|
9058
|
-
|
|
9059
|
-
|
|
9060
|
-
|
|
9061
|
-
|
|
9062
|
-
|
|
9063
|
-
|
|
9064
|
-
|
|
9065
|
-
|
|
9066
|
-
|
|
9067
|
-
|
|
9068
|
-
|
|
9069
|
-
|
|
9070
|
-
|
|
9071
|
-
|
|
9072
|
-
|
|
9073
|
-
|
|
9074
|
-
|
|
9075
|
-
|
|
9076
|
-
|
|
9077
|
-
|
|
9078
|
-
|
|
9079
|
-
|
|
9080
|
-
|
|
9081
|
-
|
|
9082
|
-
|
|
9083
|
-
|
|
9134
|
+
var cypher_1;
|
|
9135
|
+
var hasRequiredCypher;
|
|
9136
|
+
|
|
9137
|
+
function requireCypher () {
|
|
9138
|
+
if (hasRequiredCypher) return cypher_1;
|
|
9139
|
+
hasRequiredCypher = 1;
|
|
9140
|
+
|
|
9141
|
+
cypher_1 = cypher;
|
|
9142
|
+
cypher.displayName = 'cypher';
|
|
9143
|
+
cypher.aliases = [];
|
|
9144
|
+
function cypher(Prism) {
|
|
9145
|
+
Prism.languages.cypher = {
|
|
9146
|
+
// https://neo4j.com/docs/cypher-manual/current/syntax/comments/
|
|
9147
|
+
comment: /\/\/.*/,
|
|
9148
|
+
string: {
|
|
9149
|
+
pattern: /"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/,
|
|
9150
|
+
greedy: true
|
|
9151
|
+
},
|
|
9152
|
+
'class-name': {
|
|
9153
|
+
pattern: /(:\s*)(?:\w+|`(?:[^`\\\r\n])*`)(?=\s*[{):])/,
|
|
9154
|
+
lookbehind: true,
|
|
9155
|
+
greedy: true
|
|
9156
|
+
},
|
|
9157
|
+
relationship: {
|
|
9158
|
+
pattern:
|
|
9159
|
+
/(-\[\s*(?:\w+\s*|`(?:[^`\\\r\n])*`\s*)?:\s*|\|\s*:\s*)(?:\w+|`(?:[^`\\\r\n])*`)/,
|
|
9160
|
+
lookbehind: true,
|
|
9161
|
+
greedy: true,
|
|
9162
|
+
alias: 'property'
|
|
9163
|
+
},
|
|
9164
|
+
identifier: {
|
|
9165
|
+
pattern: /`(?:[^`\\\r\n])*`/,
|
|
9166
|
+
greedy: true
|
|
9167
|
+
},
|
|
9168
|
+
variable: /\$\w+/,
|
|
9169
|
+
// https://neo4j.com/docs/cypher-manual/current/syntax/reserved/
|
|
9170
|
+
keyword:
|
|
9171
|
+
/\b(?:ADD|ALL|AND|AS|ASC|ASCENDING|ASSERT|BY|CALL|CASE|COMMIT|CONSTRAINT|CONTAINS|CREATE|CSV|DELETE|DESC|DESCENDING|DETACH|DISTINCT|DO|DROP|ELSE|END|ENDS|EXISTS|FOR|FOREACH|IN|INDEX|IS|JOIN|KEY|LIMIT|LOAD|MANDATORY|MATCH|MERGE|NODE|NOT|OF|ON|OPTIONAL|OR|ORDER(?=\s+BY)|PERIODIC|REMOVE|REQUIRE|RETURN|SCALAR|SCAN|SET|SKIP|START|STARTS|THEN|UNION|UNIQUE|UNWIND|USING|WHEN|WHERE|WITH|XOR|YIELD)\b/i,
|
|
9172
|
+
function: /\b\w+\b(?=\s*\()/,
|
|
9173
|
+
boolean: /\b(?:false|null|true)\b/i,
|
|
9174
|
+
number: /\b(?:0x[\da-fA-F]+|\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)\b/,
|
|
9175
|
+
// https://neo4j.com/docs/cypher-manual/current/syntax/operators/
|
|
9176
|
+
operator: /:|<--?|--?>?|<>|=~?|[<>]=?|[+*/%^|]|\.\.\.?/,
|
|
9177
|
+
punctuation: /[()[\]{},;.]/
|
|
9178
|
+
};
|
|
9179
|
+
}
|
|
9180
|
+
return cypher_1;
|
|
9084
9181
|
}
|
|
9085
9182
|
|
|
9086
|
-
var d_1
|
|
9087
|
-
|
|
9088
|
-
|
|
9089
|
-
function
|
|
9090
|
-
|
|
9091
|
-
|
|
9092
|
-
|
|
9093
|
-
|
|
9094
|
-
|
|
9095
|
-
|
|
9096
|
-
|
|
9097
|
-
|
|
9098
|
-
|
|
9099
|
-
|
|
9100
|
-
|
|
9101
|
-
|
|
9102
|
-
|
|
9103
|
-
|
|
9104
|
-
|
|
9105
|
-
|
|
9106
|
-
|
|
9107
|
-
|
|
9108
|
-
|
|
9109
|
-
|
|
9110
|
-
|
|
9111
|
-
|
|
9112
|
-
|
|
9113
|
-
|
|
9114
|
-
|
|
9115
|
-
|
|
9116
|
-
|
|
9117
|
-
|
|
9118
|
-
|
|
9119
|
-
|
|
9120
|
-
|
|
9121
|
-
|
|
9122
|
-
|
|
9123
|
-
|
|
9124
|
-
|
|
9125
|
-
|
|
9126
|
-
|
|
9127
|
-
|
|
9128
|
-
|
|
9129
|
-
|
|
9130
|
-
|
|
9131
|
-
|
|
9132
|
-
|
|
9133
|
-
|
|
9134
|
-
|
|
9135
|
-
|
|
9136
|
-
|
|
9137
|
-
|
|
9138
|
-
|
|
9139
|
-
|
|
9140
|
-
|
|
9141
|
-
|
|
9142
|
-
|
|
9143
|
-
|
|
9144
|
-
|
|
9145
|
-
|
|
9146
|
-
|
|
9147
|
-
|
|
9148
|
-
|
|
9149
|
-
|
|
9150
|
-
|
|
9151
|
-
|
|
9152
|
-
|
|
9153
|
-
|
|
9154
|
-
|
|
9155
|
-
|
|
9156
|
-
|
|
9157
|
-
|
|
9158
|
-
|
|
9159
|
-
|
|
9160
|
-
|
|
9161
|
-
|
|
9162
|
-
|
|
9163
|
-
|
|
9164
|
-
|
|
9165
|
-
|
|
9166
|
-
|
|
9167
|
-
|
|
9168
|
-
|
|
9169
|
-
|
|
9183
|
+
var d_1;
|
|
9184
|
+
var hasRequiredD;
|
|
9185
|
+
|
|
9186
|
+
function requireD () {
|
|
9187
|
+
if (hasRequiredD) return d_1;
|
|
9188
|
+
hasRequiredD = 1;
|
|
9189
|
+
|
|
9190
|
+
d_1 = d;
|
|
9191
|
+
d.displayName = 'd';
|
|
9192
|
+
d.aliases = [];
|
|
9193
|
+
function d(Prism) {
|
|
9194
|
+
Prism.languages.d = Prism.languages.extend('clike', {
|
|
9195
|
+
comment: [
|
|
9196
|
+
{
|
|
9197
|
+
// Shebang
|
|
9198
|
+
pattern: /^\s*#!.+/,
|
|
9199
|
+
greedy: true
|
|
9200
|
+
},
|
|
9201
|
+
{
|
|
9202
|
+
pattern: RegExp(
|
|
9203
|
+
/(^|[^\\])/.source +
|
|
9204
|
+
'(?:' +
|
|
9205
|
+
[
|
|
9206
|
+
// /+ comment +/
|
|
9207
|
+
// Allow one level of nesting
|
|
9208
|
+
/\/\+(?:\/\+(?:[^+]|\+(?!\/))*\+\/|(?!\/\+)[\s\S])*?\+\//.source, // // comment
|
|
9209
|
+
/\/\/.*/.source, // /* comment */
|
|
9210
|
+
/\/\*[\s\S]*?\*\//.source
|
|
9211
|
+
].join('|') +
|
|
9212
|
+
')'
|
|
9213
|
+
),
|
|
9214
|
+
lookbehind: true,
|
|
9215
|
+
greedy: true
|
|
9216
|
+
}
|
|
9217
|
+
],
|
|
9218
|
+
string: [
|
|
9219
|
+
{
|
|
9220
|
+
pattern: RegExp(
|
|
9221
|
+
[
|
|
9222
|
+
// r"", x""
|
|
9223
|
+
/\b[rx]"(?:\\[\s\S]|[^\\"])*"[cwd]?/.source, // q"[]", q"()", q"<>", q"{}"
|
|
9224
|
+
/\bq"(?:\[[\s\S]*?\]|\([\s\S]*?\)|<[\s\S]*?>|\{[\s\S]*?\})"/.source, // q"IDENT
|
|
9225
|
+
// ...
|
|
9226
|
+
// IDENT"
|
|
9227
|
+
/\bq"((?!\d)\w+)$[\s\S]*?^\1"/.source, // q"//", q"||", etc.
|
|
9228
|
+
// eslint-disable-next-line regexp/strict
|
|
9229
|
+
/\bq"(.)[\s\S]*?\2"/.source, // eslint-disable-next-line regexp/strict
|
|
9230
|
+
/(["`])(?:\\[\s\S]|(?!\3)[^\\])*\3[cwd]?/.source
|
|
9231
|
+
].join('|'),
|
|
9232
|
+
'm'
|
|
9233
|
+
),
|
|
9234
|
+
greedy: true
|
|
9235
|
+
},
|
|
9236
|
+
{
|
|
9237
|
+
pattern: /\bq\{(?:\{[^{}]*\}|[^{}])*\}/,
|
|
9238
|
+
greedy: true,
|
|
9239
|
+
alias: 'token-string'
|
|
9240
|
+
}
|
|
9241
|
+
],
|
|
9242
|
+
// In order: $, keywords and special tokens, globally defined symbols
|
|
9243
|
+
keyword:
|
|
9244
|
+
/\$|\b(?:__(?:(?:DATE|EOF|FILE|FUNCTION|LINE|MODULE|PRETTY_FUNCTION|TIMESTAMP|TIME|VENDOR|VERSION)__|gshared|parameters|traits|vector)|abstract|alias|align|asm|assert|auto|body|bool|break|byte|case|cast|catch|cdouble|cent|cfloat|char|class|const|continue|creal|dchar|debug|default|delegate|delete|deprecated|do|double|dstring|else|enum|export|extern|false|final|finally|float|for|foreach|foreach_reverse|function|goto|idouble|if|ifloat|immutable|import|inout|int|interface|invariant|ireal|lazy|long|macro|mixin|module|new|nothrow|null|out|override|package|pragma|private|protected|ptrdiff_t|public|pure|real|ref|return|scope|shared|short|size_t|static|string|struct|super|switch|synchronized|template|this|throw|true|try|typedef|typeid|typeof|ubyte|ucent|uint|ulong|union|unittest|ushort|version|void|volatile|wchar|while|with|wstring)\b/,
|
|
9245
|
+
number: [
|
|
9246
|
+
// The lookbehind and the negative look-ahead try to prevent bad highlighting of the .. operator
|
|
9247
|
+
// Hexadecimal numbers must be handled separately to avoid problems with exponent "e"
|
|
9248
|
+
/\b0x\.?[a-f\d_]+(?:(?!\.\.)\.[a-f\d_]*)?(?:p[+-]?[a-f\d_]+)?[ulfi]{0,4}/i,
|
|
9249
|
+
{
|
|
9250
|
+
pattern:
|
|
9251
|
+
/((?:\.\.)?)(?:\b0b\.?|\b|\.)\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:e[+-]?\d[\d_]*)?[ulfi]{0,4}/i,
|
|
9252
|
+
lookbehind: true
|
|
9253
|
+
}
|
|
9254
|
+
],
|
|
9255
|
+
operator:
|
|
9256
|
+
/\|[|=]?|&[&=]?|\+[+=]?|-[-=]?|\.?\.\.|=[>=]?|!(?:i[ns]\b|<>?=?|>=?|=)?|\bi[ns]\b|(?:<[<>]?|>>?>?|\^\^|[*\/%^~])=?/
|
|
9257
|
+
});
|
|
9258
|
+
Prism.languages.insertBefore('d', 'string', {
|
|
9259
|
+
// Characters
|
|
9260
|
+
// 'a', '\\', '\n', '\xFF', '\377', '\uFFFF', '\U0010FFFF', '\quot'
|
|
9261
|
+
char: /'(?:\\(?:\W|\w+)|[^\\])'/
|
|
9262
|
+
});
|
|
9263
|
+
Prism.languages.insertBefore('d', 'keyword', {
|
|
9264
|
+
property: /\B@\w*/
|
|
9265
|
+
});
|
|
9266
|
+
Prism.languages.insertBefore('d', 'function', {
|
|
9267
|
+
register: {
|
|
9268
|
+
// Iasm registers
|
|
9269
|
+
pattern:
|
|
9270
|
+
/\b(?:[ABCD][LHX]|E?(?:BP|DI|SI|SP)|[BS]PL|[ECSDGF]S|CR[0234]|[DS]IL|DR[012367]|E[ABCD]X|X?MM[0-7]|R(?:1[0-5]|[89])[BWD]?|R[ABCD]X|R[BS]P|R[DS]I|TR[3-7]|XMM(?:1[0-5]|[89])|YMM(?:1[0-5]|\d))\b|\bST(?:\([0-7]\)|\b)/,
|
|
9271
|
+
alias: 'variable'
|
|
9272
|
+
}
|
|
9273
|
+
});
|
|
9274
|
+
}
|
|
9275
|
+
return d_1;
|
|
9276
|
+
}
|
|
9277
|
+
|
|
9278
|
+
var dart_1;
|
|
9279
|
+
var hasRequiredDart;
|
|
9280
|
+
|
|
9281
|
+
function requireDart () {
|
|
9282
|
+
if (hasRequiredDart) return dart_1;
|
|
9283
|
+
hasRequiredDart = 1;
|
|
9284
|
+
|
|
9285
|
+
dart_1 = dart;
|
|
9286
|
+
dart.displayName = 'dart';
|
|
9287
|
+
dart.aliases = [];
|
|
9288
|
+
function dart(Prism) {
|
|
9289
|
+
(function (Prism) {
|
|
9290
|
+
var keywords = [
|
|
9291
|
+
/\b(?:async|sync|yield)\*/,
|
|
9292
|
+
/\b(?:abstract|assert|async|await|break|case|catch|class|const|continue|covariant|default|deferred|do|dynamic|else|enum|export|extends|extension|external|factory|final|finally|for|get|hide|if|implements|import|in|interface|library|mixin|new|null|on|operator|part|rethrow|return|set|show|static|super|switch|sync|this|throw|try|typedef|var|void|while|with|yield)\b/
|
|
9293
|
+
]; // Handles named imports, such as http.Client
|
|
9294
|
+
var packagePrefix = /(^|[^\w.])(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/
|
|
9295
|
+
.source; // based on the dart naming conventions
|
|
9296
|
+
var className = {
|
|
9297
|
+
pattern: RegExp(packagePrefix + /[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),
|
|
9298
|
+
lookbehind: true,
|
|
9299
|
+
inside: {
|
|
9300
|
+
namespace: {
|
|
9301
|
+
pattern: /^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,
|
|
9302
|
+
inside: {
|
|
9303
|
+
punctuation: /\./
|
|
9304
|
+
}
|
|
9305
|
+
}
|
|
9306
|
+
}
|
|
9307
|
+
};
|
|
9308
|
+
Prism.languages.dart = Prism.languages.extend('clike', {
|
|
9309
|
+
'class-name': [
|
|
9310
|
+
className,
|
|
9311
|
+
{
|
|
9312
|
+
// variables and parameters
|
|
9313
|
+
// this to support class names (or generic parameters) which do not contain a lower case letter (also works for methods)
|
|
9314
|
+
pattern: RegExp(
|
|
9315
|
+
packagePrefix + /[A-Z]\w*(?=\s+\w+\s*[;,=()])/.source
|
|
9316
|
+
),
|
|
9317
|
+
lookbehind: true,
|
|
9318
|
+
inside: className.inside
|
|
9319
|
+
}
|
|
9320
|
+
],
|
|
9321
|
+
keyword: keywords,
|
|
9322
|
+
operator:
|
|
9323
|
+
/\bis!|\b(?:as|is)\b|\+\+|--|&&|\|\||<<=?|>>=?|~(?:\/=?)?|[+\-*\/%&^|=!<>]=?|\?/
|
|
9324
|
+
});
|
|
9325
|
+
Prism.languages.insertBefore('dart', 'string', {
|
|
9326
|
+
'string-literal': {
|
|
9327
|
+
pattern:
|
|
9328
|
+
/r?(?:("""|''')[\s\S]*?\1|(["'])(?:\\.|(?!\2)[^\\\r\n])*\2(?!\2))/,
|
|
9329
|
+
greedy: true,
|
|
9330
|
+
inside: {
|
|
9331
|
+
interpolation: {
|
|
9332
|
+
pattern:
|
|
9333
|
+
/((?:^|[^\\])(?:\\{2})*)\$(?:\w+|\{(?:[^{}]|\{[^{}]*\})*\})/,
|
|
9334
|
+
lookbehind: true,
|
|
9335
|
+
inside: {
|
|
9336
|
+
punctuation: /^\$\{?|\}$/,
|
|
9337
|
+
expression: {
|
|
9338
|
+
pattern: /[\s\S]+/,
|
|
9339
|
+
inside: Prism.languages.dart
|
|
9340
|
+
}
|
|
9341
|
+
}
|
|
9342
|
+
},
|
|
9343
|
+
string: /[\s\S]+/
|
|
9344
|
+
}
|
|
9345
|
+
},
|
|
9346
|
+
string: undefined
|
|
9347
|
+
});
|
|
9348
|
+
Prism.languages.insertBefore('dart', 'class-name', {
|
|
9349
|
+
metadata: {
|
|
9350
|
+
pattern: /@\w+/,
|
|
9351
|
+
alias: 'function'
|
|
9352
|
+
}
|
|
9353
|
+
});
|
|
9354
|
+
Prism.languages.insertBefore('dart', 'class-name', {
|
|
9355
|
+
generics: {
|
|
9356
|
+
pattern:
|
|
9357
|
+
/<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,
|
|
9358
|
+
inside: {
|
|
9359
|
+
'class-name': className,
|
|
9360
|
+
keyword: keywords,
|
|
9361
|
+
punctuation: /[<>(),.:]/,
|
|
9362
|
+
operator: /[?&|]/
|
|
9363
|
+
}
|
|
9364
|
+
}
|
|
9365
|
+
});
|
|
9366
|
+
})(Prism);
|
|
9367
|
+
}
|
|
9368
|
+
return dart_1;
|
|
9170
9369
|
}
|
|
9171
9370
|
|
|
9172
|
-
var
|
|
9173
|
-
|
|
9174
|
-
dart.aliases = [];
|
|
9175
|
-
function dart(Prism) {
|
|
9176
|
-
(function (Prism) {
|
|
9177
|
-
var keywords = [
|
|
9178
|
-
/\b(?:async|sync|yield)\*/,
|
|
9179
|
-
/\b(?:abstract|assert|async|await|break|case|catch|class|const|continue|covariant|default|deferred|do|dynamic|else|enum|export|extends|extension|external|factory|final|finally|for|get|hide|if|implements|import|in|interface|library|mixin|new|null|on|operator|part|rethrow|return|set|show|static|super|switch|sync|this|throw|try|typedef|var|void|while|with|yield)\b/
|
|
9180
|
-
]; // Handles named imports, such as http.Client
|
|
9181
|
-
var packagePrefix = /(^|[^\w.])(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/
|
|
9182
|
-
.source; // based on the dart naming conventions
|
|
9183
|
-
var className = {
|
|
9184
|
-
pattern: RegExp(packagePrefix + /[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),
|
|
9185
|
-
lookbehind: true,
|
|
9186
|
-
inside: {
|
|
9187
|
-
namespace: {
|
|
9188
|
-
pattern: /^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,
|
|
9189
|
-
inside: {
|
|
9190
|
-
punctuation: /\./
|
|
9191
|
-
}
|
|
9192
|
-
}
|
|
9193
|
-
}
|
|
9194
|
-
};
|
|
9195
|
-
Prism.languages.dart = Prism.languages.extend('clike', {
|
|
9196
|
-
'class-name': [
|
|
9197
|
-
className,
|
|
9198
|
-
{
|
|
9199
|
-
// variables and parameters
|
|
9200
|
-
// this to support class names (or generic parameters) which do not contain a lower case letter (also works for methods)
|
|
9201
|
-
pattern: RegExp(
|
|
9202
|
-
packagePrefix + /[A-Z]\w*(?=\s+\w+\s*[;,=()])/.source
|
|
9203
|
-
),
|
|
9204
|
-
lookbehind: true,
|
|
9205
|
-
inside: className.inside
|
|
9206
|
-
}
|
|
9207
|
-
],
|
|
9208
|
-
keyword: keywords,
|
|
9209
|
-
operator:
|
|
9210
|
-
/\bis!|\b(?:as|is)\b|\+\+|--|&&|\|\||<<=?|>>=?|~(?:\/=?)?|[+\-*\/%&^|=!<>]=?|\?/
|
|
9211
|
-
});
|
|
9212
|
-
Prism.languages.insertBefore('dart', 'string', {
|
|
9213
|
-
'string-literal': {
|
|
9214
|
-
pattern:
|
|
9215
|
-
/r?(?:("""|''')[\s\S]*?\1|(["'])(?:\\.|(?!\2)[^\\\r\n])*\2(?!\2))/,
|
|
9216
|
-
greedy: true,
|
|
9217
|
-
inside: {
|
|
9218
|
-
interpolation: {
|
|
9219
|
-
pattern:
|
|
9220
|
-
/((?:^|[^\\])(?:\\{2})*)\$(?:\w+|\{(?:[^{}]|\{[^{}]*\})*\})/,
|
|
9221
|
-
lookbehind: true,
|
|
9222
|
-
inside: {
|
|
9223
|
-
punctuation: /^\$\{?|\}$/,
|
|
9224
|
-
expression: {
|
|
9225
|
-
pattern: /[\s\S]+/,
|
|
9226
|
-
inside: Prism.languages.dart
|
|
9227
|
-
}
|
|
9228
|
-
}
|
|
9229
|
-
},
|
|
9230
|
-
string: /[\s\S]+/
|
|
9231
|
-
}
|
|
9232
|
-
},
|
|
9233
|
-
string: undefined
|
|
9234
|
-
});
|
|
9235
|
-
Prism.languages.insertBefore('dart', 'class-name', {
|
|
9236
|
-
metadata: {
|
|
9237
|
-
pattern: /@\w+/,
|
|
9238
|
-
alias: 'function'
|
|
9239
|
-
}
|
|
9240
|
-
});
|
|
9241
|
-
Prism.languages.insertBefore('dart', 'class-name', {
|
|
9242
|
-
generics: {
|
|
9243
|
-
pattern:
|
|
9244
|
-
/<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,
|
|
9245
|
-
inside: {
|
|
9246
|
-
'class-name': className,
|
|
9247
|
-
keyword: keywords,
|
|
9248
|
-
punctuation: /[<>(),.:]/,
|
|
9249
|
-
operator: /[?&|]/
|
|
9250
|
-
}
|
|
9251
|
-
}
|
|
9252
|
-
});
|
|
9253
|
-
})(Prism);
|
|
9254
|
-
}
|
|
9371
|
+
var dataweave_1;
|
|
9372
|
+
var hasRequiredDataweave;
|
|
9255
9373
|
|
|
9256
|
-
|
|
9257
|
-
|
|
9258
|
-
|
|
9259
|
-
|
|
9374
|
+
function requireDataweave () {
|
|
9375
|
+
if (hasRequiredDataweave) return dataweave_1;
|
|
9376
|
+
hasRequiredDataweave = 1;
|
|
9377
|
+
|
|
9378
|
+
dataweave_1 = dataweave;
|
|
9379
|
+
dataweave.displayName = 'dataweave';
|
|
9380
|
+
dataweave.aliases = [];
|
|
9381
|
+
function dataweave(Prism) {
|
|
9260
9382
|
(function (Prism) {
|
|
9261
|
-
|
|
9262
|
-
|
|
9263
|
-
|
|
9264
|
-
|
|
9265
|
-
|
|
9266
|
-
|
|
9267
|
-
|
|
9268
|
-
|
|
9269
|
-
|
|
9270
|
-
|
|
9271
|
-
|
|
9272
|
-
|
|
9273
|
-
|
|
9274
|
-
|
|
9275
|
-
|
|
9276
|
-
|
|
9277
|
-
|
|
9278
|
-
|
|
9279
|
-
|
|
9280
|
-
|
|
9281
|
-
|
|
9282
|
-
|
|
9283
|
-
|
|
9284
|
-
|
|
9285
|
-
|
|
9286
|
-
|
|
9287
|
-
|
|
9288
|
-
|
|
9289
|
-
|
|
9290
|
-
|
|
9291
|
-
|
|
9292
|
-
|
|
9293
|
-
|
|
9294
|
-
|
|
9295
|
-
|
|
9296
|
-
|
|
9297
|
-
|
|
9298
|
-
|
|
9299
|
-
|
|
9300
|
-
|
|
9301
|
-
|
|
9383
|
+
Prism.languages.dataweave = {
|
|
9384
|
+
url: /\b[A-Za-z]+:\/\/[\w/:.?=&-]+|\burn:[\w:.?=&-]+/,
|
|
9385
|
+
property: {
|
|
9386
|
+
pattern: /(?:\b\w+#)?(?:"(?:\\.|[^\\"\r\n])*"|\b\w+)(?=\s*[:@])/,
|
|
9387
|
+
greedy: true
|
|
9388
|
+
},
|
|
9389
|
+
string: {
|
|
9390
|
+
pattern: /(["'`])(?:\\[\s\S]|(?!\1)[^\\])*\1/,
|
|
9391
|
+
greedy: true
|
|
9392
|
+
},
|
|
9393
|
+
'mime-type':
|
|
9394
|
+
/\b(?:application|audio|image|multipart|text|video)\/[\w+-]+/,
|
|
9395
|
+
date: {
|
|
9396
|
+
pattern: /\|[\w:+-]+\|/,
|
|
9397
|
+
greedy: true
|
|
9398
|
+
},
|
|
9399
|
+
comment: [
|
|
9400
|
+
{
|
|
9401
|
+
pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
|
|
9402
|
+
lookbehind: true,
|
|
9403
|
+
greedy: true
|
|
9404
|
+
},
|
|
9405
|
+
{
|
|
9406
|
+
pattern: /(^|[^\\:])\/\/.*/,
|
|
9407
|
+
lookbehind: true,
|
|
9408
|
+
greedy: true
|
|
9409
|
+
}
|
|
9410
|
+
],
|
|
9411
|
+
regex: {
|
|
9412
|
+
pattern: /\/(?:[^\\\/\r\n]|\\[^\r\n])+\//,
|
|
9413
|
+
greedy: true
|
|
9414
|
+
},
|
|
9415
|
+
keyword:
|
|
9416
|
+
/\b(?:and|as|at|case|do|else|fun|if|input|is|match|not|ns|null|or|output|type|unless|update|using|var)\b/,
|
|
9417
|
+
function: /\b[A-Z_]\w*(?=\s*\()/i,
|
|
9418
|
+
number: /-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,
|
|
9419
|
+
punctuation: /[{}[\];(),.:@]/,
|
|
9420
|
+
operator: /<<|>>|->|[<>~=]=?|!=|--?-?|\+\+?|!|\?/,
|
|
9421
|
+
boolean: /\b(?:false|true)\b/
|
|
9422
|
+
};
|
|
9423
|
+
})(Prism);
|
|
9424
|
+
}
|
|
9425
|
+
return dataweave_1;
|
|
9302
9426
|
}
|
|
9303
9427
|
|
|
9304
|
-
var dax_1
|
|
9305
|
-
|
|
9306
|
-
|
|
9307
|
-
function
|
|
9308
|
-
|
|
9309
|
-
|
|
9310
|
-
|
|
9311
|
-
|
|
9312
|
-
|
|
9313
|
-
|
|
9314
|
-
|
|
9315
|
-
|
|
9316
|
-
|
|
9317
|
-
|
|
9318
|
-
|
|
9319
|
-
|
|
9320
|
-
|
|
9321
|
-
|
|
9322
|
-
|
|
9323
|
-
|
|
9324
|
-
|
|
9325
|
-
|
|
9326
|
-
|
|
9327
|
-
|
|
9328
|
-
|
|
9329
|
-
|
|
9330
|
-
|
|
9331
|
-
|
|
9332
|
-
|
|
9333
|
-
|
|
9334
|
-
|
|
9335
|
-
|
|
9336
|
-
|
|
9337
|
-
|
|
9428
|
+
var dax_1;
|
|
9429
|
+
var hasRequiredDax;
|
|
9430
|
+
|
|
9431
|
+
function requireDax () {
|
|
9432
|
+
if (hasRequiredDax) return dax_1;
|
|
9433
|
+
hasRequiredDax = 1;
|
|
9434
|
+
|
|
9435
|
+
dax_1 = dax;
|
|
9436
|
+
dax.displayName = 'dax';
|
|
9437
|
+
dax.aliases = [];
|
|
9438
|
+
function dax(Prism) {
|
|
9439
|
+
Prism.languages.dax = {
|
|
9440
|
+
comment: {
|
|
9441
|
+
pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/).*)/,
|
|
9442
|
+
lookbehind: true
|
|
9443
|
+
},
|
|
9444
|
+
'data-field': {
|
|
9445
|
+
pattern:
|
|
9446
|
+
/'(?:[^']|'')*'(?!')(?:\[[ \w\xA0-\uFFFF]+\])?|\w+\[[ \w\xA0-\uFFFF]+\]/,
|
|
9447
|
+
alias: 'symbol'
|
|
9448
|
+
},
|
|
9449
|
+
measure: {
|
|
9450
|
+
pattern: /\[[ \w\xA0-\uFFFF]+\]/,
|
|
9451
|
+
alias: 'constant'
|
|
9452
|
+
},
|
|
9453
|
+
string: {
|
|
9454
|
+
pattern: /"(?:[^"]|"")*"(?!")/,
|
|
9455
|
+
greedy: true
|
|
9456
|
+
},
|
|
9457
|
+
function:
|
|
9458
|
+
/\b(?:ABS|ACOS|ACOSH|ACOT|ACOTH|ADDCOLUMNS|ADDMISSINGITEMS|ALL|ALLCROSSFILTERED|ALLEXCEPT|ALLNOBLANKROW|ALLSELECTED|AND|APPROXIMATEDISTINCTCOUNT|ASIN|ASINH|ATAN|ATANH|AVERAGE|AVERAGEA|AVERAGEX|BETA\.DIST|BETA\.INV|BLANK|CALCULATE|CALCULATETABLE|CALENDAR|CALENDARAUTO|CEILING|CHISQ\.DIST|CHISQ\.DIST\.RT|CHISQ\.INV|CHISQ\.INV\.RT|CLOSINGBALANCEMONTH|CLOSINGBALANCEQUARTER|CLOSINGBALANCEYEAR|COALESCE|COMBIN|COMBINA|COMBINEVALUES|CONCATENATE|CONCATENATEX|CONFIDENCE\.NORM|CONFIDENCE\.T|CONTAINS|CONTAINSROW|CONTAINSSTRING|CONTAINSSTRINGEXACT|CONVERT|COS|COSH|COT|COTH|COUNT|COUNTA|COUNTAX|COUNTBLANK|COUNTROWS|COUNTX|CROSSFILTER|CROSSJOIN|CURRENCY|CURRENTGROUP|CUSTOMDATA|DATATABLE|DATE|DATEADD|DATEDIFF|DATESBETWEEN|DATESINPERIOD|DATESMTD|DATESQTD|DATESYTD|DATEVALUE|DAY|DEGREES|DETAILROWS|DISTINCT|DISTINCTCOUNT|DISTINCTCOUNTNOBLANK|DIVIDE|EARLIER|EARLIEST|EDATE|ENDOFMONTH|ENDOFQUARTER|ENDOFYEAR|EOMONTH|ERROR|EVEN|EXACT|EXCEPT|EXP|EXPON\.DIST|FACT|FALSE|FILTER|FILTERS|FIND|FIRSTDATE|FIRSTNONBLANK|FIRSTNONBLANKVALUE|FIXED|FLOOR|FORMAT|GCD|GENERATE|GENERATEALL|GENERATESERIES|GEOMEAN|GEOMEANX|GROUPBY|HASONEFILTER|HASONEVALUE|HOUR|IF|IF\.EAGER|IFERROR|IGNORE|INT|INTERSECT|ISBLANK|ISCROSSFILTERED|ISEMPTY|ISERROR|ISEVEN|ISFILTERED|ISINSCOPE|ISLOGICAL|ISNONTEXT|ISNUMBER|ISO\.CEILING|ISODD|ISONORAFTER|ISSELECTEDMEASURE|ISSUBTOTAL|ISTEXT|KEEPFILTERS|KEYWORDMATCH|LASTDATE|LASTNONBLANK|LASTNONBLANKVALUE|LCM|LEFT|LEN|LN|LOG|LOG10|LOOKUPVALUE|LOWER|MAX|MAXA|MAXX|MEDIAN|MEDIANX|MID|MIN|MINA|MINUTE|MINX|MOD|MONTH|MROUND|NATURALINNERJOIN|NATURALLEFTOUTERJOIN|NEXTDAY|NEXTMONTH|NEXTQUARTER|NEXTYEAR|NONVISUAL|NORM\.DIST|NORM\.INV|NORM\.S\.DIST|NORM\.S\.INV|NOT|NOW|ODD|OPENINGBALANCEMONTH|OPENINGBALANCEQUARTER|OPENINGBALANCEYEAR|OR|PARALLELPERIOD|PATH|PATHCONTAINS|PATHITEM|PATHITEMREVERSE|PATHLENGTH|PERCENTILE\.EXC|PERCENTILE\.INC|PERCENTILEX\.EXC|PERCENTILEX\.INC|PERMUT|PI|POISSON\.DIST|POWER|PREVIOUSDAY|PREVIOUSMONTH|PREVIOUSQUARTER|PREVIOUSYEAR|PRODUCT|PRODUCTX|QUARTER|QUOTIENT|RADIANS|RAND|RANDBETWEEN|RANK\.EQ|RANKX|RELATED|RELATEDTABLE|REMOVEFILTERS|REPLACE|REPT|RIGHT|ROLLUP|ROLLUPADDISSUBTOTAL|ROLLUPGROUP|ROLLUPISSUBTOTAL|ROUND|ROUNDDOWN|ROUNDUP|ROW|SAMEPERIODLASTYEAR|SAMPLE|SEARCH|SECOND|SELECTCOLUMNS|SELECTEDMEASURE|SELECTEDMEASUREFORMATSTRING|SELECTEDMEASURENAME|SELECTEDVALUE|SIGN|SIN|SINH|SQRT|SQRTPI|STARTOFMONTH|STARTOFQUARTER|STARTOFYEAR|STDEV\.P|STDEV\.S|STDEVX\.P|STDEVX\.S|SUBSTITUTE|SUBSTITUTEWITHINDEX|SUM|SUMMARIZE|SUMMARIZECOLUMNS|SUMX|SWITCH|T\.DIST|T\.DIST\.2T|T\.DIST\.RT|T\.INV|T\.INV\.2T|TAN|TANH|TIME|TIMEVALUE|TODAY|TOPN|TOPNPERLEVEL|TOPNSKIP|TOTALMTD|TOTALQTD|TOTALYTD|TREATAS|TRIM|TRUE|TRUNC|UNICHAR|UNICODE|UNION|UPPER|USERELATIONSHIP|USERNAME|USEROBJECTID|USERPRINCIPALNAME|UTCNOW|UTCTODAY|VALUE|VALUES|VAR\.P|VAR\.S|VARX\.P|VARX\.S|WEEKDAY|WEEKNUM|XIRR|XNPV|YEAR|YEARFRAC)(?=\s*\()/i,
|
|
9459
|
+
keyword:
|
|
9460
|
+
/\b(?:DEFINE|EVALUATE|MEASURE|ORDER\s+BY|RETURN|VAR|START\s+AT|ASC|DESC)\b/i,
|
|
9461
|
+
boolean: {
|
|
9462
|
+
pattern: /\b(?:FALSE|NULL|TRUE)\b/i,
|
|
9463
|
+
alias: 'constant'
|
|
9464
|
+
},
|
|
9465
|
+
number: /\b\d+(?:\.\d*)?|\B\.\d+\b/,
|
|
9466
|
+
operator: /:=|[-+*\/=^]|&&?|\|\||<(?:=>?|<|>)?|>[>=]?|\b(?:IN|NOT)\b/i,
|
|
9467
|
+
punctuation: /[;\[\](){}`,.]/
|
|
9468
|
+
};
|
|
9469
|
+
}
|
|
9470
|
+
return dax_1;
|
|
9338
9471
|
}
|
|
9339
9472
|
|
|
9340
9473
|
var dhall_1;
|
|
@@ -9422,64 +9555,73 @@ function requireDhall () {
|
|
|
9422
9555
|
return dhall_1;
|
|
9423
9556
|
}
|
|
9424
9557
|
|
|
9425
|
-
var diff_1
|
|
9426
|
-
|
|
9427
|
-
|
|
9428
|
-
function
|
|
9558
|
+
var diff_1;
|
|
9559
|
+
var hasRequiredDiff;
|
|
9560
|
+
|
|
9561
|
+
function requireDiff () {
|
|
9562
|
+
if (hasRequiredDiff) return diff_1;
|
|
9563
|
+
hasRequiredDiff = 1;
|
|
9564
|
+
|
|
9565
|
+
diff_1 = diff;
|
|
9566
|
+
diff.displayName = 'diff';
|
|
9567
|
+
diff.aliases = [];
|
|
9568
|
+
function diff(Prism) {
|
|
9429
9569
|
(function (Prism) {
|
|
9430
|
-
|
|
9431
|
-
|
|
9432
|
-
|
|
9433
|
-
|
|
9434
|
-
|
|
9435
|
-
|
|
9436
|
-
|
|
9437
|
-
|
|
9438
|
-
|
|
9439
|
-
|
|
9440
|
-
|
|
9441
|
-
|
|
9442
|
-
|
|
9443
|
-
|
|
9444
|
-
|
|
9445
|
-
|
|
9446
|
-
|
|
9447
|
-
|
|
9448
|
-
|
|
9449
|
-
|
|
9450
|
-
|
|
9451
|
-
|
|
9452
|
-
|
|
9453
|
-
|
|
9454
|
-
|
|
9455
|
-
|
|
9456
|
-
|
|
9457
|
-
|
|
9458
|
-
|
|
9459
|
-
|
|
9460
|
-
|
|
9461
|
-
|
|
9462
|
-
|
|
9463
|
-
|
|
9464
|
-
|
|
9465
|
-
|
|
9466
|
-
|
|
9467
|
-
|
|
9468
|
-
|
|
9469
|
-
|
|
9470
|
-
|
|
9471
|
-
|
|
9472
|
-
|
|
9473
|
-
|
|
9474
|
-
|
|
9475
|
-
|
|
9476
|
-
|
|
9477
|
-
|
|
9478
|
-
|
|
9479
|
-
|
|
9480
|
-
|
|
9481
|
-
|
|
9482
|
-
|
|
9570
|
+
Prism.languages.diff = {
|
|
9571
|
+
coord: [
|
|
9572
|
+
// Match all kinds of coord lines (prefixed by "+++", "---" or "***").
|
|
9573
|
+
/^(?:\*{3}|-{3}|\+{3}).*$/m, // Match "@@ ... @@" coord lines in unified diff.
|
|
9574
|
+
/^@@.*@@$/m, // Match coord lines in normal diff (starts with a number).
|
|
9575
|
+
/^\d.*$/m
|
|
9576
|
+
] // deleted, inserted, unchanged, diff
|
|
9577
|
+
};
|
|
9578
|
+
/**
|
|
9579
|
+
* A map from the name of a block to its line prefix.
|
|
9580
|
+
*
|
|
9581
|
+
* @type {Object<string, string>}
|
|
9582
|
+
*/
|
|
9583
|
+
var PREFIXES = {
|
|
9584
|
+
'deleted-sign': '-',
|
|
9585
|
+
'deleted-arrow': '<',
|
|
9586
|
+
'inserted-sign': '+',
|
|
9587
|
+
'inserted-arrow': '>',
|
|
9588
|
+
unchanged: ' ',
|
|
9589
|
+
diff: '!'
|
|
9590
|
+
}; // add a token for each prefix
|
|
9591
|
+
Object.keys(PREFIXES).forEach(function (name) {
|
|
9592
|
+
var prefix = PREFIXES[name];
|
|
9593
|
+
var alias = [];
|
|
9594
|
+
if (!/^\w+$/.test(name)) {
|
|
9595
|
+
// "deleted-sign" -> "deleted"
|
|
9596
|
+
alias.push(/\w+/.exec(name)[0]);
|
|
9597
|
+
}
|
|
9598
|
+
if (name === 'diff') {
|
|
9599
|
+
alias.push('bold');
|
|
9600
|
+
}
|
|
9601
|
+
Prism.languages.diff[name] = {
|
|
9602
|
+
pattern: RegExp(
|
|
9603
|
+
'^(?:[' + prefix + '].*(?:\r\n?|\n|(?![\\s\\S])))+',
|
|
9604
|
+
'm'
|
|
9605
|
+
),
|
|
9606
|
+
alias: alias,
|
|
9607
|
+
inside: {
|
|
9608
|
+
line: {
|
|
9609
|
+
pattern: /(.)(?=[\s\S]).*(?:\r\n?|\n)?/,
|
|
9610
|
+
lookbehind: true
|
|
9611
|
+
},
|
|
9612
|
+
prefix: {
|
|
9613
|
+
pattern: /[\s\S]/,
|
|
9614
|
+
alias: /\w+/.exec(name)[0]
|
|
9615
|
+
}
|
|
9616
|
+
}
|
|
9617
|
+
};
|
|
9618
|
+
}); // make prefixes available to Diff plugin
|
|
9619
|
+
Object.defineProperty(Prism.languages.diff, 'PREFIXES', {
|
|
9620
|
+
value: PREFIXES
|
|
9621
|
+
});
|
|
9622
|
+
})(Prism);
|
|
9623
|
+
}
|
|
9624
|
+
return diff_1;
|
|
9483
9625
|
}
|
|
9484
9626
|
|
|
9485
9627
|
var markupTemplating_1;
|
|
@@ -9594,327 +9736,362 @@ function requireMarkupTemplating () {
|
|
|
9594
9736
|
token.content = replacement;
|
|
9595
9737
|
}
|
|
9596
9738
|
}
|
|
9597
|
-
} else if (
|
|
9598
|
-
token.content
|
|
9599
|
-
/* && typeof token.content !== 'string' */
|
|
9600
|
-
) {
|
|
9601
|
-
walkTokens(token.content);
|
|
9602
|
-
}
|
|
9739
|
+
} else if (
|
|
9740
|
+
token.content
|
|
9741
|
+
/* && typeof token.content !== 'string' */
|
|
9742
|
+
) {
|
|
9743
|
+
walkTokens(token.content);
|
|
9744
|
+
}
|
|
9745
|
+
}
|
|
9746
|
+
return tokens
|
|
9747
|
+
}
|
|
9748
|
+
walkTokens(env.tokens);
|
|
9749
|
+
}
|
|
9750
|
+
}
|
|
9751
|
+
});
|
|
9752
|
+
})(Prism);
|
|
9753
|
+
}
|
|
9754
|
+
return markupTemplating_1;
|
|
9755
|
+
}
|
|
9756
|
+
|
|
9757
|
+
var django_1;
|
|
9758
|
+
var hasRequiredDjango;
|
|
9759
|
+
|
|
9760
|
+
function requireDjango () {
|
|
9761
|
+
if (hasRequiredDjango) return django_1;
|
|
9762
|
+
hasRequiredDjango = 1;
|
|
9763
|
+
var refractorMarkupTemplating = requireMarkupTemplating();
|
|
9764
|
+
django_1 = django;
|
|
9765
|
+
django.displayName = 'django';
|
|
9766
|
+
django.aliases = ['jinja2'];
|
|
9767
|
+
function django(Prism) {
|
|
9768
|
+
Prism.register(refractorMarkupTemplating)
|
|
9769
|
+
// Django/Jinja2 syntax definition for Prism.js <http://prismjs.com> syntax highlighter.
|
|
9770
|
+
// Mostly it works OK but can paint code incorrectly on complex html/template tag combinations.
|
|
9771
|
+
;(function (Prism) {
|
|
9772
|
+
Prism.languages.django = {
|
|
9773
|
+
comment: /^\{#[\s\S]*?#\}$/,
|
|
9774
|
+
tag: {
|
|
9775
|
+
pattern: /(^\{%[+-]?\s*)\w+/,
|
|
9776
|
+
lookbehind: true,
|
|
9777
|
+
alias: 'keyword'
|
|
9778
|
+
},
|
|
9779
|
+
delimiter: {
|
|
9780
|
+
pattern: /^\{[{%][+-]?|[+-]?[}%]\}$/,
|
|
9781
|
+
alias: 'punctuation'
|
|
9782
|
+
},
|
|
9783
|
+
string: {
|
|
9784
|
+
pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,
|
|
9785
|
+
greedy: true
|
|
9786
|
+
},
|
|
9787
|
+
filter: {
|
|
9788
|
+
pattern: /(\|)\w+/,
|
|
9789
|
+
lookbehind: true,
|
|
9790
|
+
alias: 'function'
|
|
9791
|
+
},
|
|
9792
|
+
test: {
|
|
9793
|
+
pattern: /(\bis\s+(?:not\s+)?)(?!not\b)\w+/,
|
|
9794
|
+
lookbehind: true,
|
|
9795
|
+
alias: 'function'
|
|
9796
|
+
},
|
|
9797
|
+
function: /\b[a-z_]\w+(?=\s*\()/i,
|
|
9798
|
+
keyword:
|
|
9799
|
+
/\b(?:and|as|by|else|for|if|import|in|is|loop|not|or|recursive|with|without)\b/,
|
|
9800
|
+
operator: /[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,
|
|
9801
|
+
number: /\b\d+(?:\.\d+)?\b/,
|
|
9802
|
+
boolean: /[Ff]alse|[Nn]one|[Tt]rue/,
|
|
9803
|
+
variable: /\b\w+\b/,
|
|
9804
|
+
punctuation: /[{}[\](),.:;]/
|
|
9805
|
+
};
|
|
9806
|
+
var pattern = /\{\{[\s\S]*?\}\}|\{%[\s\S]*?%\}|\{#[\s\S]*?#\}/g;
|
|
9807
|
+
var markupTemplating = Prism.languages['markup-templating'];
|
|
9808
|
+
Prism.hooks.add('before-tokenize', function (env) {
|
|
9809
|
+
markupTemplating.buildPlaceholders(env, 'django', pattern);
|
|
9810
|
+
});
|
|
9811
|
+
Prism.hooks.add('after-tokenize', function (env) {
|
|
9812
|
+
markupTemplating.tokenizePlaceholders(env, 'django');
|
|
9813
|
+
}); // Add an Jinja2 alias
|
|
9814
|
+
Prism.languages.jinja2 = Prism.languages.django;
|
|
9815
|
+
Prism.hooks.add('before-tokenize', function (env) {
|
|
9816
|
+
markupTemplating.buildPlaceholders(env, 'jinja2', pattern);
|
|
9817
|
+
});
|
|
9818
|
+
Prism.hooks.add('after-tokenize', function (env) {
|
|
9819
|
+
markupTemplating.tokenizePlaceholders(env, 'jinja2');
|
|
9820
|
+
});
|
|
9821
|
+
})(Prism);
|
|
9822
|
+
}
|
|
9823
|
+
return django_1;
|
|
9824
|
+
}
|
|
9825
|
+
|
|
9826
|
+
var dnsZoneFile_1;
|
|
9827
|
+
var hasRequiredDnsZoneFile;
|
|
9828
|
+
|
|
9829
|
+
function requireDnsZoneFile () {
|
|
9830
|
+
if (hasRequiredDnsZoneFile) return dnsZoneFile_1;
|
|
9831
|
+
hasRequiredDnsZoneFile = 1;
|
|
9832
|
+
|
|
9833
|
+
dnsZoneFile_1 = dnsZoneFile;
|
|
9834
|
+
dnsZoneFile.displayName = 'dnsZoneFile';
|
|
9835
|
+
dnsZoneFile.aliases = [];
|
|
9836
|
+
function dnsZoneFile(Prism) {
|
|
9837
|
+
Prism.languages['dns-zone-file'] = {
|
|
9838
|
+
comment: /;.*/,
|
|
9839
|
+
string: {
|
|
9840
|
+
pattern: /"(?:\\.|[^"\\\r\n])*"/,
|
|
9841
|
+
greedy: true
|
|
9842
|
+
},
|
|
9843
|
+
variable: [
|
|
9844
|
+
{
|
|
9845
|
+
pattern: /(^\$ORIGIN[ \t]+)\S+/m,
|
|
9846
|
+
lookbehind: true
|
|
9847
|
+
},
|
|
9848
|
+
{
|
|
9849
|
+
pattern: /(^|\s)@(?=\s|$)/,
|
|
9850
|
+
lookbehind: true
|
|
9851
|
+
}
|
|
9852
|
+
],
|
|
9853
|
+
keyword: /^\$(?:INCLUDE|ORIGIN|TTL)(?=\s|$)/m,
|
|
9854
|
+
class: {
|
|
9855
|
+
// https://tools.ietf.org/html/rfc1035#page-13
|
|
9856
|
+
pattern: /(^|\s)(?:CH|CS|HS|IN)(?=\s|$)/,
|
|
9857
|
+
lookbehind: true,
|
|
9858
|
+
alias: 'keyword'
|
|
9859
|
+
},
|
|
9860
|
+
type: {
|
|
9861
|
+
// https://en.wikipedia.org/wiki/List_of_DNS_record_types
|
|
9862
|
+
pattern:
|
|
9863
|
+
/(^|\s)(?:A|A6|AAAA|AFSDB|APL|ATMA|CAA|CDNSKEY|CDS|CERT|CNAME|DHCID|DLV|DNAME|DNSKEY|DS|EID|GID|GPOS|HINFO|HIP|IPSECKEY|ISDN|KEY|KX|LOC|MAILA|MAILB|MB|MD|MF|MG|MINFO|MR|MX|NAPTR|NB|NBSTAT|NIMLOC|NINFO|NS|NSAP|NSAP-PTR|NSEC|NSEC3|NSEC3PARAM|NULL|NXT|OPENPGPKEY|PTR|PX|RKEY|RP|RRSIG|RT|SIG|SINK|SMIMEA|SOA|SPF|SRV|SSHFP|TA|TKEY|TLSA|TSIG|TXT|UID|UINFO|UNSPEC|URI|WKS|X25)(?=\s|$)/,
|
|
9864
|
+
lookbehind: true,
|
|
9865
|
+
alias: 'keyword'
|
|
9866
|
+
},
|
|
9867
|
+
punctuation: /[()]/
|
|
9868
|
+
};
|
|
9869
|
+
Prism.languages['dns-zone'] = Prism.languages['dns-zone-file'];
|
|
9870
|
+
}
|
|
9871
|
+
return dnsZoneFile_1;
|
|
9872
|
+
}
|
|
9873
|
+
|
|
9874
|
+
var docker_1;
|
|
9875
|
+
var hasRequiredDocker;
|
|
9876
|
+
|
|
9877
|
+
function requireDocker () {
|
|
9878
|
+
if (hasRequiredDocker) return docker_1;
|
|
9879
|
+
hasRequiredDocker = 1;
|
|
9880
|
+
|
|
9881
|
+
docker_1 = docker;
|
|
9882
|
+
docker.displayName = 'docker';
|
|
9883
|
+
docker.aliases = ['dockerfile'];
|
|
9884
|
+
function docker(Prism) {
|
|
9885
|
+
(function (Prism) {
|
|
9886
|
+
// Many of the following regexes will contain negated lookaheads like `[ \t]+(?![ \t])`. This is a trick to ensure
|
|
9887
|
+
// that quantifiers behave *atomically*. Atomic quantifiers are necessary to prevent exponential backtracking.
|
|
9888
|
+
var spaceAfterBackSlash =
|
|
9889
|
+
/\\[\r\n](?:\s|\\[\r\n]|#.*(?!.))*(?![\s#]|\\[\r\n])/.source; // At least one space, comment, or line break
|
|
9890
|
+
var space = /(?:[ \t]+(?![ \t])(?:<SP_BS>)?|<SP_BS>)/.source.replace(
|
|
9891
|
+
/<SP_BS>/g,
|
|
9892
|
+
function () {
|
|
9893
|
+
return spaceAfterBackSlash
|
|
9894
|
+
}
|
|
9895
|
+
);
|
|
9896
|
+
var string =
|
|
9897
|
+
/"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"|'(?:[^'\\\r\n]|\\(?:\r\n|[\s\S]))*'/
|
|
9898
|
+
.source;
|
|
9899
|
+
var option = /--[\w-]+=(?:<STR>|(?!["'])(?:[^\s\\]|\\.)+)/.source.replace(
|
|
9900
|
+
/<STR>/g,
|
|
9901
|
+
function () {
|
|
9902
|
+
return string
|
|
9903
|
+
}
|
|
9904
|
+
);
|
|
9905
|
+
var stringRule = {
|
|
9906
|
+
pattern: RegExp(string),
|
|
9907
|
+
greedy: true
|
|
9908
|
+
};
|
|
9909
|
+
var commentRule = {
|
|
9910
|
+
pattern: /(^[ \t]*)#.*/m,
|
|
9911
|
+
lookbehind: true,
|
|
9912
|
+
greedy: true
|
|
9913
|
+
};
|
|
9914
|
+
/**
|
|
9915
|
+
* @param {string} source
|
|
9916
|
+
* @param {string} flags
|
|
9917
|
+
* @returns {RegExp}
|
|
9918
|
+
*/
|
|
9919
|
+
function re(source, flags) {
|
|
9920
|
+
source = source
|
|
9921
|
+
.replace(/<OPT>/g, function () {
|
|
9922
|
+
return option
|
|
9923
|
+
})
|
|
9924
|
+
.replace(/<SP>/g, function () {
|
|
9925
|
+
return space
|
|
9926
|
+
});
|
|
9927
|
+
return RegExp(source, flags)
|
|
9928
|
+
}
|
|
9929
|
+
Prism.languages.docker = {
|
|
9930
|
+
instruction: {
|
|
9931
|
+
pattern:
|
|
9932
|
+
/(^[ \t]*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)(?:\\.|[^\r\n\\])*(?:\\$(?:\s|#.*$)*(?![\s#])(?:\\.|[^\r\n\\])*)*/im,
|
|
9933
|
+
lookbehind: true,
|
|
9934
|
+
greedy: true,
|
|
9935
|
+
inside: {
|
|
9936
|
+
options: {
|
|
9937
|
+
pattern: re(
|
|
9938
|
+
/(^(?:ONBUILD<SP>)?\w+<SP>)<OPT>(?:<SP><OPT>)*/.source,
|
|
9939
|
+
'i'
|
|
9940
|
+
),
|
|
9941
|
+
lookbehind: true,
|
|
9942
|
+
greedy: true,
|
|
9943
|
+
inside: {
|
|
9944
|
+
property: {
|
|
9945
|
+
pattern: /(^|\s)--[\w-]+/,
|
|
9946
|
+
lookbehind: true
|
|
9947
|
+
},
|
|
9948
|
+
string: [
|
|
9949
|
+
stringRule,
|
|
9950
|
+
{
|
|
9951
|
+
pattern: /(=)(?!["'])(?:[^\s\\]|\\.)+/,
|
|
9952
|
+
lookbehind: true
|
|
9953
|
+
}
|
|
9954
|
+
],
|
|
9955
|
+
operator: /\\$/m,
|
|
9956
|
+
punctuation: /=/
|
|
9603
9957
|
}
|
|
9604
|
-
|
|
9605
|
-
|
|
9606
|
-
|
|
9958
|
+
},
|
|
9959
|
+
keyword: [
|
|
9960
|
+
{
|
|
9961
|
+
// https://docs.docker.com/engine/reference/builder/#healthcheck
|
|
9962
|
+
pattern: re(
|
|
9963
|
+
/(^(?:ONBUILD<SP>)?HEALTHCHECK<SP>(?:<OPT><SP>)*)(?:CMD|NONE)\b/
|
|
9964
|
+
.source,
|
|
9965
|
+
'i'
|
|
9966
|
+
),
|
|
9967
|
+
lookbehind: true,
|
|
9968
|
+
greedy: true
|
|
9969
|
+
},
|
|
9970
|
+
{
|
|
9971
|
+
// https://docs.docker.com/engine/reference/builder/#from
|
|
9972
|
+
pattern: re(
|
|
9973
|
+
/(^(?:ONBUILD<SP>)?FROM<SP>(?:<OPT><SP>)*(?!--)[^ \t\\]+<SP>)AS/
|
|
9974
|
+
.source,
|
|
9975
|
+
'i'
|
|
9976
|
+
),
|
|
9977
|
+
lookbehind: true,
|
|
9978
|
+
greedy: true
|
|
9979
|
+
},
|
|
9980
|
+
{
|
|
9981
|
+
// https://docs.docker.com/engine/reference/builder/#onbuild
|
|
9982
|
+
pattern: re(/(^ONBUILD<SP>)\w+/.source, 'i'),
|
|
9983
|
+
lookbehind: true,
|
|
9984
|
+
greedy: true
|
|
9985
|
+
},
|
|
9986
|
+
{
|
|
9987
|
+
pattern: /^\w+/,
|
|
9988
|
+
greedy: true
|
|
9989
|
+
}
|
|
9990
|
+
],
|
|
9991
|
+
comment: commentRule,
|
|
9992
|
+
string: stringRule,
|
|
9993
|
+
variable: /\$(?:\w+|\{[^{}"'\\]*\})/,
|
|
9994
|
+
operator: /\\$/m
|
|
9607
9995
|
}
|
|
9608
|
-
}
|
|
9609
|
-
|
|
9996
|
+
},
|
|
9997
|
+
comment: commentRule
|
|
9998
|
+
};
|
|
9999
|
+
Prism.languages.dockerfile = Prism.languages.docker;
|
|
9610
10000
|
})(Prism);
|
|
9611
10001
|
}
|
|
9612
|
-
return
|
|
9613
|
-
}
|
|
9614
|
-
|
|
9615
|
-
var refractorMarkupTemplating$1 = requireMarkupTemplating();
|
|
9616
|
-
var django_1 = django;
|
|
9617
|
-
django.displayName = 'django';
|
|
9618
|
-
django.aliases = ['jinja2'];
|
|
9619
|
-
function django(Prism) {
|
|
9620
|
-
Prism.register(refractorMarkupTemplating$1)
|
|
9621
|
-
// Django/Jinja2 syntax definition for Prism.js <http://prismjs.com> syntax highlighter.
|
|
9622
|
-
// Mostly it works OK but can paint code incorrectly on complex html/template tag combinations.
|
|
9623
|
-
;(function (Prism) {
|
|
9624
|
-
Prism.languages.django = {
|
|
9625
|
-
comment: /^\{#[\s\S]*?#\}$/,
|
|
9626
|
-
tag: {
|
|
9627
|
-
pattern: /(^\{%[+-]?\s*)\w+/,
|
|
9628
|
-
lookbehind: true,
|
|
9629
|
-
alias: 'keyword'
|
|
9630
|
-
},
|
|
9631
|
-
delimiter: {
|
|
9632
|
-
pattern: /^\{[{%][+-]?|[+-]?[}%]\}$/,
|
|
9633
|
-
alias: 'punctuation'
|
|
9634
|
-
},
|
|
9635
|
-
string: {
|
|
9636
|
-
pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,
|
|
9637
|
-
greedy: true
|
|
9638
|
-
},
|
|
9639
|
-
filter: {
|
|
9640
|
-
pattern: /(\|)\w+/,
|
|
9641
|
-
lookbehind: true,
|
|
9642
|
-
alias: 'function'
|
|
9643
|
-
},
|
|
9644
|
-
test: {
|
|
9645
|
-
pattern: /(\bis\s+(?:not\s+)?)(?!not\b)\w+/,
|
|
9646
|
-
lookbehind: true,
|
|
9647
|
-
alias: 'function'
|
|
9648
|
-
},
|
|
9649
|
-
function: /\b[a-z_]\w+(?=\s*\()/i,
|
|
9650
|
-
keyword:
|
|
9651
|
-
/\b(?:and|as|by|else|for|if|import|in|is|loop|not|or|recursive|with|without)\b/,
|
|
9652
|
-
operator: /[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,
|
|
9653
|
-
number: /\b\d+(?:\.\d+)?\b/,
|
|
9654
|
-
boolean: /[Ff]alse|[Nn]one|[Tt]rue/,
|
|
9655
|
-
variable: /\b\w+\b/,
|
|
9656
|
-
punctuation: /[{}[\](),.:;]/
|
|
9657
|
-
};
|
|
9658
|
-
var pattern = /\{\{[\s\S]*?\}\}|\{%[\s\S]*?%\}|\{#[\s\S]*?#\}/g;
|
|
9659
|
-
var markupTemplating = Prism.languages['markup-templating'];
|
|
9660
|
-
Prism.hooks.add('before-tokenize', function (env) {
|
|
9661
|
-
markupTemplating.buildPlaceholders(env, 'django', pattern);
|
|
9662
|
-
});
|
|
9663
|
-
Prism.hooks.add('after-tokenize', function (env) {
|
|
9664
|
-
markupTemplating.tokenizePlaceholders(env, 'django');
|
|
9665
|
-
}); // Add an Jinja2 alias
|
|
9666
|
-
Prism.languages.jinja2 = Prism.languages.django;
|
|
9667
|
-
Prism.hooks.add('before-tokenize', function (env) {
|
|
9668
|
-
markupTemplating.buildPlaceholders(env, 'jinja2', pattern);
|
|
9669
|
-
});
|
|
9670
|
-
Prism.hooks.add('after-tokenize', function (env) {
|
|
9671
|
-
markupTemplating.tokenizePlaceholders(env, 'jinja2');
|
|
9672
|
-
});
|
|
9673
|
-
})(Prism);
|
|
10002
|
+
return docker_1;
|
|
9674
10003
|
}
|
|
9675
10004
|
|
|
9676
|
-
var
|
|
9677
|
-
|
|
9678
|
-
dnsZoneFile.aliases = [];
|
|
9679
|
-
function dnsZoneFile(Prism) {
|
|
9680
|
-
Prism.languages['dns-zone-file'] = {
|
|
9681
|
-
comment: /;.*/,
|
|
9682
|
-
string: {
|
|
9683
|
-
pattern: /"(?:\\.|[^"\\\r\n])*"/,
|
|
9684
|
-
greedy: true
|
|
9685
|
-
},
|
|
9686
|
-
variable: [
|
|
9687
|
-
{
|
|
9688
|
-
pattern: /(^\$ORIGIN[ \t]+)\S+/m,
|
|
9689
|
-
lookbehind: true
|
|
9690
|
-
},
|
|
9691
|
-
{
|
|
9692
|
-
pattern: /(^|\s)@(?=\s|$)/,
|
|
9693
|
-
lookbehind: true
|
|
9694
|
-
}
|
|
9695
|
-
],
|
|
9696
|
-
keyword: /^\$(?:INCLUDE|ORIGIN|TTL)(?=\s|$)/m,
|
|
9697
|
-
class: {
|
|
9698
|
-
// https://tools.ietf.org/html/rfc1035#page-13
|
|
9699
|
-
pattern: /(^|\s)(?:CH|CS|HS|IN)(?=\s|$)/,
|
|
9700
|
-
lookbehind: true,
|
|
9701
|
-
alias: 'keyword'
|
|
9702
|
-
},
|
|
9703
|
-
type: {
|
|
9704
|
-
// https://en.wikipedia.org/wiki/List_of_DNS_record_types
|
|
9705
|
-
pattern:
|
|
9706
|
-
/(^|\s)(?:A|A6|AAAA|AFSDB|APL|ATMA|CAA|CDNSKEY|CDS|CERT|CNAME|DHCID|DLV|DNAME|DNSKEY|DS|EID|GID|GPOS|HINFO|HIP|IPSECKEY|ISDN|KEY|KX|LOC|MAILA|MAILB|MB|MD|MF|MG|MINFO|MR|MX|NAPTR|NB|NBSTAT|NIMLOC|NINFO|NS|NSAP|NSAP-PTR|NSEC|NSEC3|NSEC3PARAM|NULL|NXT|OPENPGPKEY|PTR|PX|RKEY|RP|RRSIG|RT|SIG|SINK|SMIMEA|SOA|SPF|SRV|SSHFP|TA|TKEY|TLSA|TSIG|TXT|UID|UINFO|UNSPEC|URI|WKS|X25)(?=\s|$)/,
|
|
9707
|
-
lookbehind: true,
|
|
9708
|
-
alias: 'keyword'
|
|
9709
|
-
},
|
|
9710
|
-
punctuation: /[()]/
|
|
9711
|
-
};
|
|
9712
|
-
Prism.languages['dns-zone'] = Prism.languages['dns-zone-file'];
|
|
9713
|
-
}
|
|
10005
|
+
var dot_1;
|
|
10006
|
+
var hasRequiredDot;
|
|
9714
10007
|
|
|
9715
|
-
|
|
9716
|
-
|
|
9717
|
-
|
|
9718
|
-
function docker(Prism) {
|
|
9719
|
-
(function (Prism) {
|
|
9720
|
-
// Many of the following regexes will contain negated lookaheads like `[ \t]+(?![ \t])`. This is a trick to ensure
|
|
9721
|
-
// that quantifiers behave *atomically*. Atomic quantifiers are necessary to prevent exponential backtracking.
|
|
9722
|
-
var spaceAfterBackSlash =
|
|
9723
|
-
/\\[\r\n](?:\s|\\[\r\n]|#.*(?!.))*(?![\s#]|\\[\r\n])/.source; // At least one space, comment, or line break
|
|
9724
|
-
var space = /(?:[ \t]+(?![ \t])(?:<SP_BS>)?|<SP_BS>)/.source.replace(
|
|
9725
|
-
/<SP_BS>/g,
|
|
9726
|
-
function () {
|
|
9727
|
-
return spaceAfterBackSlash
|
|
9728
|
-
}
|
|
9729
|
-
);
|
|
9730
|
-
var string =
|
|
9731
|
-
/"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"|'(?:[^'\\\r\n]|\\(?:\r\n|[\s\S]))*'/
|
|
9732
|
-
.source;
|
|
9733
|
-
var option = /--[\w-]+=(?:<STR>|(?!["'])(?:[^\s\\]|\\.)+)/.source.replace(
|
|
9734
|
-
/<STR>/g,
|
|
9735
|
-
function () {
|
|
9736
|
-
return string
|
|
9737
|
-
}
|
|
9738
|
-
);
|
|
9739
|
-
var stringRule = {
|
|
9740
|
-
pattern: RegExp(string),
|
|
9741
|
-
greedy: true
|
|
9742
|
-
};
|
|
9743
|
-
var commentRule = {
|
|
9744
|
-
pattern: /(^[ \t]*)#.*/m,
|
|
9745
|
-
lookbehind: true,
|
|
9746
|
-
greedy: true
|
|
9747
|
-
};
|
|
9748
|
-
/**
|
|
9749
|
-
* @param {string} source
|
|
9750
|
-
* @param {string} flags
|
|
9751
|
-
* @returns {RegExp}
|
|
9752
|
-
*/
|
|
9753
|
-
function re(source, flags) {
|
|
9754
|
-
source = source
|
|
9755
|
-
.replace(/<OPT>/g, function () {
|
|
9756
|
-
return option
|
|
9757
|
-
})
|
|
9758
|
-
.replace(/<SP>/g, function () {
|
|
9759
|
-
return space
|
|
9760
|
-
});
|
|
9761
|
-
return RegExp(source, flags)
|
|
9762
|
-
}
|
|
9763
|
-
Prism.languages.docker = {
|
|
9764
|
-
instruction: {
|
|
9765
|
-
pattern:
|
|
9766
|
-
/(^[ \t]*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)(?:\\.|[^\r\n\\])*(?:\\$(?:\s|#.*$)*(?![\s#])(?:\\.|[^\r\n\\])*)*/im,
|
|
9767
|
-
lookbehind: true,
|
|
9768
|
-
greedy: true,
|
|
9769
|
-
inside: {
|
|
9770
|
-
options: {
|
|
9771
|
-
pattern: re(
|
|
9772
|
-
/(^(?:ONBUILD<SP>)?\w+<SP>)<OPT>(?:<SP><OPT>)*/.source,
|
|
9773
|
-
'i'
|
|
9774
|
-
),
|
|
9775
|
-
lookbehind: true,
|
|
9776
|
-
greedy: true,
|
|
9777
|
-
inside: {
|
|
9778
|
-
property: {
|
|
9779
|
-
pattern: /(^|\s)--[\w-]+/,
|
|
9780
|
-
lookbehind: true
|
|
9781
|
-
},
|
|
9782
|
-
string: [
|
|
9783
|
-
stringRule,
|
|
9784
|
-
{
|
|
9785
|
-
pattern: /(=)(?!["'])(?:[^\s\\]|\\.)+/,
|
|
9786
|
-
lookbehind: true
|
|
9787
|
-
}
|
|
9788
|
-
],
|
|
9789
|
-
operator: /\\$/m,
|
|
9790
|
-
punctuation: /=/
|
|
9791
|
-
}
|
|
9792
|
-
},
|
|
9793
|
-
keyword: [
|
|
9794
|
-
{
|
|
9795
|
-
// https://docs.docker.com/engine/reference/builder/#healthcheck
|
|
9796
|
-
pattern: re(
|
|
9797
|
-
/(^(?:ONBUILD<SP>)?HEALTHCHECK<SP>(?:<OPT><SP>)*)(?:CMD|NONE)\b/
|
|
9798
|
-
.source,
|
|
9799
|
-
'i'
|
|
9800
|
-
),
|
|
9801
|
-
lookbehind: true,
|
|
9802
|
-
greedy: true
|
|
9803
|
-
},
|
|
9804
|
-
{
|
|
9805
|
-
// https://docs.docker.com/engine/reference/builder/#from
|
|
9806
|
-
pattern: re(
|
|
9807
|
-
/(^(?:ONBUILD<SP>)?FROM<SP>(?:<OPT><SP>)*(?!--)[^ \t\\]+<SP>)AS/
|
|
9808
|
-
.source,
|
|
9809
|
-
'i'
|
|
9810
|
-
),
|
|
9811
|
-
lookbehind: true,
|
|
9812
|
-
greedy: true
|
|
9813
|
-
},
|
|
9814
|
-
{
|
|
9815
|
-
// https://docs.docker.com/engine/reference/builder/#onbuild
|
|
9816
|
-
pattern: re(/(^ONBUILD<SP>)\w+/.source, 'i'),
|
|
9817
|
-
lookbehind: true,
|
|
9818
|
-
greedy: true
|
|
9819
|
-
},
|
|
9820
|
-
{
|
|
9821
|
-
pattern: /^\w+/,
|
|
9822
|
-
greedy: true
|
|
9823
|
-
}
|
|
9824
|
-
],
|
|
9825
|
-
comment: commentRule,
|
|
9826
|
-
string: stringRule,
|
|
9827
|
-
variable: /\$(?:\w+|\{[^{}"'\\]*\})/,
|
|
9828
|
-
operator: /\\$/m
|
|
9829
|
-
}
|
|
9830
|
-
},
|
|
9831
|
-
comment: commentRule
|
|
9832
|
-
};
|
|
9833
|
-
Prism.languages.dockerfile = Prism.languages.docker;
|
|
9834
|
-
})(Prism);
|
|
9835
|
-
}
|
|
10008
|
+
function requireDot () {
|
|
10009
|
+
if (hasRequiredDot) return dot_1;
|
|
10010
|
+
hasRequiredDot = 1;
|
|
9836
10011
|
|
|
9837
|
-
|
|
9838
|
-
dot.displayName = 'dot';
|
|
9839
|
-
dot.aliases = ['gv'];
|
|
9840
|
-
function dot(Prism) {
|
|
10012
|
+
dot_1 = dot;
|
|
10013
|
+
dot.displayName = 'dot';
|
|
10014
|
+
dot.aliases = ['gv'];
|
|
10015
|
+
function dot(Prism) {
|
|
9841
10016
|
(function (Prism) {
|
|
9842
|
-
|
|
9843
|
-
|
|
9844
|
-
|
|
9845
|
-
|
|
9846
|
-
|
|
9847
|
-
|
|
9848
|
-
|
|
9849
|
-
|
|
9850
|
-
|
|
9851
|
-
|
|
9852
|
-
|
|
9853
|
-
|
|
9854
|
-
|
|
9855
|
-
|
|
9856
|
-
|
|
9857
|
-
|
|
9858
|
-
|
|
9859
|
-
|
|
9860
|
-
|
|
9861
|
-
|
|
9862
|
-
|
|
9863
|
-
|
|
9864
|
-
|
|
9865
|
-
|
|
9866
|
-
|
|
9867
|
-
|
|
9868
|
-
|
|
9869
|
-
|
|
9870
|
-
|
|
9871
|
-
|
|
9872
|
-
|
|
9873
|
-
|
|
9874
|
-
|
|
9875
|
-
|
|
9876
|
-
|
|
9877
|
-
|
|
9878
|
-
|
|
9879
|
-
|
|
9880
|
-
|
|
9881
|
-
|
|
9882
|
-
|
|
9883
|
-
|
|
9884
|
-
|
|
9885
|
-
|
|
9886
|
-
|
|
9887
|
-
|
|
9888
|
-
|
|
9889
|
-
|
|
9890
|
-
|
|
9891
|
-
|
|
9892
|
-
|
|
9893
|
-
|
|
9894
|
-
|
|
9895
|
-
|
|
9896
|
-
|
|
9897
|
-
|
|
9898
|
-
|
|
9899
|
-
|
|
9900
|
-
|
|
9901
|
-
|
|
9902
|
-
|
|
9903
|
-
|
|
9904
|
-
|
|
9905
|
-
|
|
9906
|
-
|
|
9907
|
-
|
|
9908
|
-
|
|
9909
|
-
|
|
9910
|
-
|
|
9911
|
-
|
|
9912
|
-
|
|
9913
|
-
|
|
9914
|
-
|
|
9915
|
-
|
|
9916
|
-
|
|
9917
|
-
|
|
10017
|
+
var ID =
|
|
10018
|
+
'(?:' +
|
|
10019
|
+
[
|
|
10020
|
+
// an identifier
|
|
10021
|
+
/[a-zA-Z_\x80-\uFFFF][\w\x80-\uFFFF]*/.source, // a number
|
|
10022
|
+
/-?(?:\.\d+|\d+(?:\.\d*)?)/.source, // a double-quoted string
|
|
10023
|
+
/"[^"\\]*(?:\\[\s\S][^"\\]*)*"/.source, // HTML-like string
|
|
10024
|
+
/<(?:[^<>]|(?!<!--)<(?:[^<>"']|"[^"]*"|'[^']*')+>|<!--(?:[^-]|-(?!->))*-->)*>/
|
|
10025
|
+
.source
|
|
10026
|
+
].join('|') +
|
|
10027
|
+
')';
|
|
10028
|
+
var IDInside = {
|
|
10029
|
+
markup: {
|
|
10030
|
+
pattern: /(^<)[\s\S]+(?=>$)/,
|
|
10031
|
+
lookbehind: true,
|
|
10032
|
+
alias: ['language-markup', 'language-html', 'language-xml'],
|
|
10033
|
+
inside: Prism.languages.markup
|
|
10034
|
+
}
|
|
10035
|
+
};
|
|
10036
|
+
/**
|
|
10037
|
+
* @param {string} source
|
|
10038
|
+
* @param {string} flags
|
|
10039
|
+
* @returns {RegExp}
|
|
10040
|
+
*/
|
|
10041
|
+
function withID(source, flags) {
|
|
10042
|
+
return RegExp(
|
|
10043
|
+
source.replace(/<ID>/g, function () {
|
|
10044
|
+
return ID
|
|
10045
|
+
}),
|
|
10046
|
+
flags
|
|
10047
|
+
)
|
|
10048
|
+
}
|
|
10049
|
+
Prism.languages.dot = {
|
|
10050
|
+
comment: {
|
|
10051
|
+
pattern: /\/\/.*|\/\*[\s\S]*?\*\/|^#.*/m,
|
|
10052
|
+
greedy: true
|
|
10053
|
+
},
|
|
10054
|
+
'graph-name': {
|
|
10055
|
+
pattern: withID(
|
|
10056
|
+
/(\b(?:digraph|graph|subgraph)[ \t\r\n]+)<ID>/.source,
|
|
10057
|
+
'i'
|
|
10058
|
+
),
|
|
10059
|
+
lookbehind: true,
|
|
10060
|
+
greedy: true,
|
|
10061
|
+
alias: 'class-name',
|
|
10062
|
+
inside: IDInside
|
|
10063
|
+
},
|
|
10064
|
+
'attr-value': {
|
|
10065
|
+
pattern: withID(/(=[ \t\r\n]*)<ID>/.source),
|
|
10066
|
+
lookbehind: true,
|
|
10067
|
+
greedy: true,
|
|
10068
|
+
inside: IDInside
|
|
10069
|
+
},
|
|
10070
|
+
'attr-name': {
|
|
10071
|
+
pattern: withID(/([\[;, \t\r\n])<ID>(?=[ \t\r\n]*=)/.source),
|
|
10072
|
+
lookbehind: true,
|
|
10073
|
+
greedy: true,
|
|
10074
|
+
inside: IDInside
|
|
10075
|
+
},
|
|
10076
|
+
keyword: /\b(?:digraph|edge|graph|node|strict|subgraph)\b/i,
|
|
10077
|
+
'compass-point': {
|
|
10078
|
+
pattern: /(:[ \t\r\n]*)(?:[ewc_]|[ns][ew]?)(?![\w\x80-\uFFFF])/,
|
|
10079
|
+
lookbehind: true,
|
|
10080
|
+
alias: 'builtin'
|
|
10081
|
+
},
|
|
10082
|
+
node: {
|
|
10083
|
+
pattern: withID(/(^|[^-.\w\x80-\uFFFF\\])<ID>/.source),
|
|
10084
|
+
lookbehind: true,
|
|
10085
|
+
greedy: true,
|
|
10086
|
+
inside: IDInside
|
|
10087
|
+
},
|
|
10088
|
+
operator: /[=:]|-[->]/,
|
|
10089
|
+
punctuation: /[\[\]{};,]/
|
|
10090
|
+
};
|
|
10091
|
+
Prism.languages.gv = Prism.languages.dot;
|
|
10092
|
+
})(Prism);
|
|
10093
|
+
}
|
|
10094
|
+
return dot_1;
|
|
9918
10095
|
}
|
|
9919
10096
|
|
|
9920
10097
|
var ebnf_1;
|
|
@@ -10041,37 +10218,45 @@ function requireEiffel () {
|
|
|
10041
10218
|
return eiffel_1;
|
|
10042
10219
|
}
|
|
10043
10220
|
|
|
10044
|
-
var
|
|
10045
|
-
var
|
|
10046
|
-
|
|
10047
|
-
|
|
10048
|
-
|
|
10049
|
-
|
|
10050
|
-
|
|
10051
|
-
|
|
10052
|
-
|
|
10053
|
-
|
|
10054
|
-
|
|
10055
|
-
|
|
10056
|
-
|
|
10057
|
-
|
|
10058
|
-
|
|
10059
|
-
|
|
10060
|
-
|
|
10061
|
-
|
|
10062
|
-
|
|
10063
|
-
|
|
10064
|
-
|
|
10065
|
-
|
|
10066
|
-
|
|
10067
|
-
|
|
10068
|
-
|
|
10069
|
-
|
|
10070
|
-
|
|
10071
|
-
|
|
10072
|
-
|
|
10073
|
-
|
|
10074
|
-
|
|
10221
|
+
var ejs_1;
|
|
10222
|
+
var hasRequiredEjs;
|
|
10223
|
+
|
|
10224
|
+
function requireEjs () {
|
|
10225
|
+
if (hasRequiredEjs) return ejs_1;
|
|
10226
|
+
hasRequiredEjs = 1;
|
|
10227
|
+
var refractorMarkupTemplating = requireMarkupTemplating();
|
|
10228
|
+
ejs_1 = ejs;
|
|
10229
|
+
ejs.displayName = 'ejs';
|
|
10230
|
+
ejs.aliases = ['eta'];
|
|
10231
|
+
function ejs(Prism) {
|
|
10232
|
+
Prism.register(refractorMarkupTemplating)
|
|
10233
|
+
;(function (Prism) {
|
|
10234
|
+
Prism.languages.ejs = {
|
|
10235
|
+
delimiter: {
|
|
10236
|
+
pattern: /^<%[-_=]?|[-_]?%>$/,
|
|
10237
|
+
alias: 'punctuation'
|
|
10238
|
+
},
|
|
10239
|
+
comment: /^#[\s\S]*/,
|
|
10240
|
+
'language-javascript': {
|
|
10241
|
+
pattern: /[\s\S]+/,
|
|
10242
|
+
inside: Prism.languages.javascript
|
|
10243
|
+
}
|
|
10244
|
+
};
|
|
10245
|
+
Prism.hooks.add('before-tokenize', function (env) {
|
|
10246
|
+
var ejsPattern = /<%(?!%)[\s\S]+?%>/g;
|
|
10247
|
+
Prism.languages['markup-templating'].buildPlaceholders(
|
|
10248
|
+
env,
|
|
10249
|
+
'ejs',
|
|
10250
|
+
ejsPattern
|
|
10251
|
+
);
|
|
10252
|
+
});
|
|
10253
|
+
Prism.hooks.add('after-tokenize', function (env) {
|
|
10254
|
+
Prism.languages['markup-templating'].tokenizePlaceholders(env, 'ejs');
|
|
10255
|
+
});
|
|
10256
|
+
Prism.languages.eta = Prism.languages.ejs;
|
|
10257
|
+
})(Prism);
|
|
10258
|
+
}
|
|
10259
|
+
return ejs_1;
|
|
10075
10260
|
}
|
|
10076
10261
|
|
|
10077
10262
|
var elixir_1;
|
|
@@ -10260,7 +10445,7 @@ var hasRequiredErb;
|
|
|
10260
10445
|
function requireErb () {
|
|
10261
10446
|
if (hasRequiredErb) return erb_1;
|
|
10262
10447
|
hasRequiredErb = 1;
|
|
10263
|
-
var refractorRuby =
|
|
10448
|
+
var refractorRuby = requireRuby();
|
|
10264
10449
|
var refractorMarkupTemplating = requireMarkupTemplating();
|
|
10265
10450
|
erb_1 = erb;
|
|
10266
10451
|
erb.displayName = 'erb';
|
|
@@ -12742,7 +12927,7 @@ var hasRequiredHaml;
|
|
|
12742
12927
|
function requireHaml () {
|
|
12743
12928
|
if (hasRequiredHaml) return haml_1;
|
|
12744
12929
|
hasRequiredHaml = 1;
|
|
12745
|
-
var refractorRuby =
|
|
12930
|
+
var refractorRuby = requireRuby();
|
|
12746
12931
|
haml_1 = haml;
|
|
12747
12932
|
haml.displayName = 'haml';
|
|
12748
12933
|
haml.aliases = [];
|
|
@@ -25178,7 +25363,7 @@ function requireT4Cs () {
|
|
|
25178
25363
|
if (hasRequiredT4Cs) return t4Cs_1;
|
|
25179
25364
|
hasRequiredT4Cs = 1;
|
|
25180
25365
|
var refractorT4Templating = requireT4Templating();
|
|
25181
|
-
var refractorCsharp =
|
|
25366
|
+
var refractorCsharp = requireCsharp();
|
|
25182
25367
|
t4Cs_1 = t4Cs;
|
|
25183
25368
|
t4Cs.displayName = 't4Cs';
|
|
25184
25369
|
t4Cs.aliases = [];
|
|
@@ -27936,7 +28121,7 @@ refractor.register(aspnet_1);
|
|
|
27936
28121
|
refractor.register(autohotkey_1);
|
|
27937
28122
|
refractor.register(autoit_1);
|
|
27938
28123
|
refractor.register(avisynth_1);
|
|
27939
|
-
refractor.register(
|
|
28124
|
+
refractor.register(requireAvroIdl());
|
|
27940
28125
|
refractor.register(bash_1);
|
|
27941
28126
|
refractor.register(basic_1);
|
|
27942
28127
|
refractor.register(batch_1);
|
|
@@ -27945,7 +28130,7 @@ refractor.register(bicep_1);
|
|
|
27945
28130
|
refractor.register(birb_1);
|
|
27946
28131
|
refractor.register(bison_1);
|
|
27947
28132
|
refractor.register(bnf_1);
|
|
27948
|
-
refractor.register(
|
|
28133
|
+
refractor.register(requireBrainfuck());
|
|
27949
28134
|
refractor.register(brightscript_1);
|
|
27950
28135
|
refractor.register(bro_1);
|
|
27951
28136
|
refractor.register(bsl_1);
|
|
@@ -27957,30 +28142,30 @@ refractor.register(clojure_1);
|
|
|
27957
28142
|
refractor.register(cmake_1);
|
|
27958
28143
|
refractor.register(cobol_1);
|
|
27959
28144
|
refractor.register(coffeescript_1);
|
|
27960
|
-
refractor.register(
|
|
27961
|
-
refractor.register(
|
|
28145
|
+
refractor.register(requireConcurnas());
|
|
28146
|
+
refractor.register(requireCoq());
|
|
27962
28147
|
refractor.register(requireCpp());
|
|
27963
|
-
refractor.register(
|
|
27964
|
-
refractor.register(
|
|
27965
|
-
refractor.register(
|
|
27966
|
-
refractor.register(
|
|
27967
|
-
refractor.register(
|
|
28148
|
+
refractor.register(requireCrystal());
|
|
28149
|
+
refractor.register(requireCsharp());
|
|
28150
|
+
refractor.register(requireCshtml());
|
|
28151
|
+
refractor.register(requireCsp());
|
|
28152
|
+
refractor.register(requireCssExtras());
|
|
27968
28153
|
refractor.register(requireCsv());
|
|
27969
|
-
refractor.register(
|
|
27970
|
-
refractor.register(
|
|
27971
|
-
refractor.register(
|
|
27972
|
-
refractor.register(
|
|
27973
|
-
refractor.register(
|
|
28154
|
+
refractor.register(requireCypher());
|
|
28155
|
+
refractor.register(requireD());
|
|
28156
|
+
refractor.register(requireDart());
|
|
28157
|
+
refractor.register(requireDataweave());
|
|
28158
|
+
refractor.register(requireDax());
|
|
27974
28159
|
refractor.register(requireDhall());
|
|
27975
|
-
refractor.register(
|
|
27976
|
-
refractor.register(
|
|
27977
|
-
refractor.register(
|
|
27978
|
-
refractor.register(
|
|
27979
|
-
refractor.register(
|
|
28160
|
+
refractor.register(requireDiff());
|
|
28161
|
+
refractor.register(requireDjango());
|
|
28162
|
+
refractor.register(requireDnsZoneFile());
|
|
28163
|
+
refractor.register(requireDocker());
|
|
28164
|
+
refractor.register(requireDot());
|
|
27980
28165
|
refractor.register(requireEbnf());
|
|
27981
28166
|
refractor.register(requireEditorconfig());
|
|
27982
28167
|
refractor.register(requireEiffel());
|
|
27983
|
-
refractor.register(
|
|
28168
|
+
refractor.register(requireEjs());
|
|
27984
28169
|
refractor.register(requireElixir());
|
|
27985
28170
|
refractor.register(requireElm());
|
|
27986
28171
|
refractor.register(requireErb());
|
|
@@ -28126,7 +28311,7 @@ refractor.register(requireRest());
|
|
|
28126
28311
|
refractor.register(requireRip());
|
|
28127
28312
|
refractor.register(requireRoboconf());
|
|
28128
28313
|
refractor.register(requireRobotframework());
|
|
28129
|
-
refractor.register(
|
|
28314
|
+
refractor.register(requireRuby());
|
|
28130
28315
|
refractor.register(requireRust());
|
|
28131
28316
|
refractor.register(requireSas());
|
|
28132
28317
|
refractor.register(requireSass());
|
|
@@ -38953,7 +39138,19 @@ function remarkThinkUpdate(content) {
|
|
|
38953
39138
|
*/
|
|
38954
39139
|
function escapeContentForStream(content) {
|
|
38955
39140
|
if (typeof content !== 'string') return content;
|
|
38956
|
-
|
|
39141
|
+
// 匹配代码块的正则表达式
|
|
39142
|
+
var codeBlockRegex = /(```[\s\S]*?```|`[^`]*`)/g;
|
|
39143
|
+
// 分割内容为代码块和非代码块部分
|
|
39144
|
+
var parts = content.split(codeBlockRegex);
|
|
39145
|
+
// 对非代码块部分进行转义,保留代码块部分不变
|
|
39146
|
+
return parts.map(function (part, index) {
|
|
39147
|
+
// 奇数索引为代码块部分(根据split的特性)
|
|
39148
|
+
if (index % 2 === 1) {
|
|
39149
|
+
return part; // 代码块部分不转义
|
|
39150
|
+
}
|
|
39151
|
+
// 偶数索引为非代码块部分,进行转义
|
|
39152
|
+
return part.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, ''').replace(/{/g, '{').replace(/}/g, '}');
|
|
39153
|
+
}).join('');
|
|
38957
39154
|
}
|
|
38958
39155
|
|
|
38959
39156
|
var renderTimer = null;
|