commonmarker 1.0.0.pre6-x64-mingw-ucrt → 1.0.0.pre8-x64-mingw-ucrt
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Cargo.lock +159 -96
- data/README.md +43 -20
- data/ext/commonmarker/Cargo.toml +3 -2
- data/ext/commonmarker/src/lib.rs +76 -6
- data/ext/commonmarker/src/options.rs +5 -1
- data/ext/commonmarker/src/plugins/syntax_highlighting.rs +28 -0
- data/lib/commonmarker/3.1/commonmarker.so +0 -0
- data/lib/commonmarker/3.2/commonmarker.so +0 -0
- data/lib/commonmarker/config.rb +3 -1
- data/lib/commonmarker/version.rb +1 -1
- metadata +3 -4
- data/commonmarker.gemspec +0 -41
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e4ccc7a1c9f36931a5658ff4651e392462219f85ec7d63265b73f2a6007a48db
|
4
|
+
data.tar.gz: 36af23c368be45ad7dfb8a06cead21ce38d09f8bf8daf00d34e8dccbfd0ccf89
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 86a7219c84da7e71fbe7512c119d777e3be2f8bdd39a16d8b25c9a3643ede5f2ee517e8c1560f60f58d2e34041a0f3eee89a6a7ba2d3ec8b8683590ea9eed43f
|
7
|
+
data.tar.gz: b49de4797275d9bc0d49628c2fd5a683608fbf1453c02fcb5b40c4963636bb2171c55d2d034cd9589490fe8babb1778c466a96167ebfc83815586ecd0d1be9e2
|
data/Cargo.lock
CHANGED
@@ -25,9 +25,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
|
|
25
25
|
|
26
26
|
[[package]]
|
27
27
|
name = "base64"
|
28
|
-
version = "0.
|
28
|
+
version = "0.21.0"
|
29
29
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
30
|
-
checksum = "
|
30
|
+
checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a"
|
31
31
|
|
32
32
|
[[package]]
|
33
33
|
name = "bincode"
|
@@ -89,9 +89,9 @@ dependencies = [
|
|
89
89
|
|
90
90
|
[[package]]
|
91
91
|
name = "cc"
|
92
|
-
version = "1.0.
|
92
|
+
version = "1.0.79"
|
93
93
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
94
|
-
checksum = "
|
94
|
+
checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
|
95
95
|
|
96
96
|
[[package]]
|
97
97
|
name = "cexpr"
|
@@ -110,9 +110,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
|
110
110
|
|
111
111
|
[[package]]
|
112
112
|
name = "clang-sys"
|
113
|
-
version = "1.
|
113
|
+
version = "1.6.0"
|
114
114
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
115
|
-
checksum = "
|
115
|
+
checksum = "77ed9a53e5d4d9c573ae844bfac6872b159cb1d1585a83b29e7a64b7eef7332a"
|
116
116
|
dependencies = [
|
117
117
|
"glob",
|
118
118
|
"libc",
|
@@ -121,9 +121,9 @@ dependencies = [
|
|
121
121
|
|
122
122
|
[[package]]
|
123
123
|
name = "clap"
|
124
|
-
version = "4.
|
124
|
+
version = "4.1.8"
|
125
125
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
126
|
-
checksum = "
|
126
|
+
checksum = "c3d7ae14b20b94cb02149ed21a86c423859cbe18dc7ed69845cace50e52b40a5"
|
127
127
|
dependencies = [
|
128
128
|
"bitflags",
|
129
129
|
"clap_derive",
|
@@ -137,9 +137,9 @@ dependencies = [
|
|
137
137
|
|
138
138
|
[[package]]
|
139
139
|
name = "clap_derive"
|
140
|
-
version = "4.
|
140
|
+
version = "4.1.8"
|
141
141
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
142
|
-
checksum = "
|
142
|
+
checksum = "44bec8e5c9d09e439c4335b1af0abaab56dcf3b94999a936e1bb47b9134288f0"
|
143
143
|
dependencies = [
|
144
144
|
"heck",
|
145
145
|
"proc-macro-error",
|
@@ -150,9 +150,9 @@ dependencies = [
|
|
150
150
|
|
151
151
|
[[package]]
|
152
152
|
name = "clap_lex"
|
153
|
-
version = "0.3.
|
153
|
+
version = "0.3.2"
|
154
154
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
155
|
-
checksum = "
|
155
|
+
checksum = "350b9cf31731f9957399229e9b2adc51eeabdfbe9d71d9a0552275fd12710d09"
|
156
156
|
dependencies = [
|
157
157
|
"os_str_bytes",
|
158
158
|
]
|
@@ -163,15 +163,17 @@ version = "1.0.0"
|
|
163
163
|
dependencies = [
|
164
164
|
"comrak",
|
165
165
|
"magnus",
|
166
|
+
"syntect",
|
166
167
|
]
|
167
168
|
|
168
169
|
[[package]]
|
169
170
|
name = "comrak"
|
170
|
-
version = "0.
|
171
|
+
version = "0.16.0"
|
171
172
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
172
|
-
checksum = "
|
173
|
+
checksum = "784836d0812dade01579cc0cc9b1684847044e716fd7aa6bffbc172e42199500"
|
173
174
|
dependencies = [
|
174
175
|
"clap",
|
176
|
+
"emojis",
|
175
177
|
"entities",
|
176
178
|
"memchr",
|
177
179
|
"once_cell",
|
@@ -179,6 +181,7 @@ dependencies = [
|
|
179
181
|
"pest_derive",
|
180
182
|
"regex",
|
181
183
|
"shell-words",
|
184
|
+
"slug",
|
182
185
|
"syntect",
|
183
186
|
"typed-arena",
|
184
187
|
"unicode_categories",
|
@@ -213,6 +216,12 @@ dependencies = [
|
|
213
216
|
"typenum",
|
214
217
|
]
|
215
218
|
|
219
|
+
[[package]]
|
220
|
+
name = "deunicode"
|
221
|
+
version = "0.4.3"
|
222
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
223
|
+
checksum = "850878694b7933ca4c9569d30a34b55031b9b139ee1fc7b94a527c4ef960d690"
|
224
|
+
|
216
225
|
[[package]]
|
217
226
|
name = "digest"
|
218
227
|
version = "0.10.6"
|
@@ -243,6 +252,15 @@ dependencies = [
|
|
243
252
|
"winapi",
|
244
253
|
]
|
245
254
|
|
255
|
+
[[package]]
|
256
|
+
name = "emojis"
|
257
|
+
version = "0.5.2"
|
258
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
259
|
+
checksum = "44fe60b864b6544ad211d4053ced474a9b9d2c8d66b77f01d6c6bcfed10c6bf0"
|
260
|
+
dependencies = [
|
261
|
+
"phf",
|
262
|
+
]
|
263
|
+
|
246
264
|
[[package]]
|
247
265
|
name = "entities"
|
248
266
|
version = "1.0.1"
|
@@ -331,18 +349,15 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
|
|
331
349
|
|
332
350
|
[[package]]
|
333
351
|
name = "heck"
|
334
|
-
version = "0.4.
|
352
|
+
version = "0.4.1"
|
335
353
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
336
|
-
checksum = "
|
354
|
+
checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
|
337
355
|
|
338
356
|
[[package]]
|
339
357
|
name = "hermit-abi"
|
340
|
-
version = "0.
|
358
|
+
version = "0.3.1"
|
341
359
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
342
|
-
checksum = "
|
343
|
-
dependencies = [
|
344
|
-
"libc",
|
345
|
-
]
|
360
|
+
checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
|
346
361
|
|
347
362
|
[[package]]
|
348
363
|
name = "indexmap"
|
@@ -356,9 +371,9 @@ dependencies = [
|
|
356
371
|
|
357
372
|
[[package]]
|
358
373
|
name = "io-lifetimes"
|
359
|
-
version = "1.0.
|
374
|
+
version = "1.0.5"
|
360
375
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
361
|
-
checksum = "
|
376
|
+
checksum = "1abeb7a0dd0f8181267ff8adc397075586500b81b28a73e8a0208b00fc170fb3"
|
362
377
|
dependencies = [
|
363
378
|
"libc",
|
364
379
|
"windows-sys",
|
@@ -366,9 +381,9 @@ dependencies = [
|
|
366
381
|
|
367
382
|
[[package]]
|
368
383
|
name = "is-terminal"
|
369
|
-
version = "0.4.
|
384
|
+
version = "0.4.4"
|
370
385
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
371
|
-
checksum = "
|
386
|
+
checksum = "21b6b32576413a8e69b90e952e4a026476040d81017b80445deda5f2d3921857"
|
372
387
|
dependencies = [
|
373
388
|
"hermit-abi",
|
374
389
|
"io-lifetimes",
|
@@ -433,9 +448,9 @@ checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
|
|
433
448
|
|
434
449
|
[[package]]
|
435
450
|
name = "magnus"
|
436
|
-
version = "0.
|
451
|
+
version = "0.5.1"
|
437
452
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
438
|
-
checksum = "
|
453
|
+
checksum = "ac1f63d741de829356a1399b34cbf6e79b79fc80aa85f86c8a2e7966768d95bc"
|
439
454
|
dependencies = [
|
440
455
|
"magnus-macros",
|
441
456
|
"rb-sys",
|
@@ -444,9 +459,9 @@ dependencies = [
|
|
444
459
|
|
445
460
|
[[package]]
|
446
461
|
name = "magnus-macros"
|
447
|
-
version = "0.
|
462
|
+
version = "0.4.0"
|
448
463
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
449
|
-
checksum = "
|
464
|
+
checksum = "85aa71c9891b2732ff1157e1860a1ee578459fd25811fd3d72cc6e32b3fbdfea"
|
450
465
|
dependencies = [
|
451
466
|
"proc-macro2",
|
452
467
|
"quote",
|
@@ -476,9 +491,9 @@ dependencies = [
|
|
476
491
|
|
477
492
|
[[package]]
|
478
493
|
name = "nom"
|
479
|
-
version = "7.1.
|
494
|
+
version = "7.1.3"
|
480
495
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
481
|
-
checksum = "
|
496
|
+
checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
|
482
497
|
dependencies = [
|
483
498
|
"memchr",
|
484
499
|
"minimal-lexical",
|
@@ -486,9 +501,9 @@ dependencies = [
|
|
486
501
|
|
487
502
|
[[package]]
|
488
503
|
name = "once_cell"
|
489
|
-
version = "1.17.
|
504
|
+
version = "1.17.1"
|
490
505
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
491
|
-
checksum = "
|
506
|
+
checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
|
492
507
|
|
493
508
|
[[package]]
|
494
509
|
name = "onig"
|
@@ -526,9 +541,9 @@ checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
|
|
526
541
|
|
527
542
|
[[package]]
|
528
543
|
name = "pest"
|
529
|
-
version = "2.5.
|
544
|
+
version = "2.5.5"
|
530
545
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
531
|
-
checksum = "
|
546
|
+
checksum = "028accff104c4e513bad663bbcd2ad7cfd5304144404c31ed0a77ac103d00660"
|
532
547
|
dependencies = [
|
533
548
|
"thiserror",
|
534
549
|
"ucd-trie",
|
@@ -536,9 +551,9 @@ dependencies = [
|
|
536
551
|
|
537
552
|
[[package]]
|
538
553
|
name = "pest_derive"
|
539
|
-
version = "2.5.
|
554
|
+
version = "2.5.5"
|
540
555
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
541
|
-
checksum = "
|
556
|
+
checksum = "2ac3922aac69a40733080f53c1ce7f91dcf57e1a5f6c52f421fadec7fbdc4b69"
|
542
557
|
dependencies = [
|
543
558
|
"pest",
|
544
559
|
"pest_generator",
|
@@ -546,9 +561,9 @@ dependencies = [
|
|
546
561
|
|
547
562
|
[[package]]
|
548
563
|
name = "pest_generator"
|
549
|
-
version = "2.5.
|
564
|
+
version = "2.5.5"
|
550
565
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
551
|
-
checksum = "
|
566
|
+
checksum = "d06646e185566b5961b4058dd107e0a7f56e77c3f484549fb119867773c0f202"
|
552
567
|
dependencies = [
|
553
568
|
"pest",
|
554
569
|
"pest_meta",
|
@@ -559,13 +574,31 @@ dependencies = [
|
|
559
574
|
|
560
575
|
[[package]]
|
561
576
|
name = "pest_meta"
|
562
|
-
version = "2.5.
|
577
|
+
version = "2.5.5"
|
563
578
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
564
|
-
checksum = "
|
579
|
+
checksum = "e6f60b2ba541577e2a0c307c8f39d1439108120eb7903adeb6497fa880c59616"
|
565
580
|
dependencies = [
|
566
581
|
"once_cell",
|
567
582
|
"pest",
|
568
|
-
"
|
583
|
+
"sha2",
|
584
|
+
]
|
585
|
+
|
586
|
+
[[package]]
|
587
|
+
name = "phf"
|
588
|
+
version = "0.11.1"
|
589
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
590
|
+
checksum = "928c6535de93548188ef63bb7c4036bd415cd8f36ad25af44b9789b2ee72a48c"
|
591
|
+
dependencies = [
|
592
|
+
"phf_shared",
|
593
|
+
]
|
594
|
+
|
595
|
+
[[package]]
|
596
|
+
name = "phf_shared"
|
597
|
+
version = "0.11.1"
|
598
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
599
|
+
checksum = "e1fb5f6f826b772a8d4c0394209441e7d37cbbb967ae9c7e0e8134365c9ee676"
|
600
|
+
dependencies = [
|
601
|
+
"siphasher",
|
569
602
|
]
|
570
603
|
|
571
604
|
[[package]]
|
@@ -576,16 +609,16 @@ checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
|
|
576
609
|
|
577
610
|
[[package]]
|
578
611
|
name = "plist"
|
579
|
-
version = "1.
|
612
|
+
version = "1.4.1"
|
580
613
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
581
|
-
checksum = "
|
614
|
+
checksum = "9469799ca90293a376f68f6fcb8f11990d9cff55602cfba0ba83893c973a7f46"
|
582
615
|
dependencies = [
|
583
616
|
"base64",
|
584
617
|
"indexmap",
|
585
618
|
"line-wrap",
|
619
|
+
"quick-xml",
|
586
620
|
"serde",
|
587
621
|
"time",
|
588
|
-
"xml-rs",
|
589
622
|
]
|
590
623
|
|
591
624
|
[[package]]
|
@@ -614,13 +647,22 @@ dependencies = [
|
|
614
647
|
|
615
648
|
[[package]]
|
616
649
|
name = "proc-macro2"
|
617
|
-
version = "1.0.
|
650
|
+
version = "1.0.51"
|
618
651
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
619
|
-
checksum = "
|
652
|
+
checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6"
|
620
653
|
dependencies = [
|
621
654
|
"unicode-ident",
|
622
655
|
]
|
623
656
|
|
657
|
+
[[package]]
|
658
|
+
name = "quick-xml"
|
659
|
+
version = "0.26.0"
|
660
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
661
|
+
checksum = "7f50b1c63b38611e7d4d7f68b82d3ad0cc71a2ad2e7f61fc10f1328d917c93cd"
|
662
|
+
dependencies = [
|
663
|
+
"memchr",
|
664
|
+
]
|
665
|
+
|
624
666
|
[[package]]
|
625
667
|
name = "quote"
|
626
668
|
version = "1.0.23"
|
@@ -632,29 +674,32 @@ dependencies = [
|
|
632
674
|
|
633
675
|
[[package]]
|
634
676
|
name = "rb-sys"
|
635
|
-
version = "0.9.
|
677
|
+
version = "0.9.65"
|
636
678
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
637
|
-
checksum = "
|
679
|
+
checksum = "e8fe617bad8e88fd7e5d6f432e35f09e5f94144dfb8e8ee4adde82fb920dc59b"
|
638
680
|
dependencies = [
|
639
681
|
"rb-sys-build",
|
640
682
|
]
|
641
683
|
|
642
684
|
[[package]]
|
643
685
|
name = "rb-sys-build"
|
644
|
-
version = "0.9.
|
686
|
+
version = "0.9.65"
|
645
687
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
646
|
-
checksum = "
|
688
|
+
checksum = "007e63597f91c711cbb299e60fecbdb6f5ad4a066d6a20c81943893f1584c895"
|
647
689
|
dependencies = [
|
648
690
|
"bindgen",
|
691
|
+
"lazy_static",
|
692
|
+
"quote",
|
649
693
|
"regex",
|
650
694
|
"shell-words",
|
695
|
+
"syn",
|
651
696
|
]
|
652
697
|
|
653
698
|
[[package]]
|
654
699
|
name = "rb-sys-env"
|
655
|
-
version = "0.1.
|
700
|
+
version = "0.1.2"
|
656
701
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
657
|
-
checksum = "
|
702
|
+
checksum = "a35802679f07360454b418a5d1735c89716bde01d35b1560fc953c1415a0b3bb"
|
658
703
|
|
659
704
|
[[package]]
|
660
705
|
name = "redox_syscall"
|
@@ -678,9 +723,9 @@ dependencies = [
|
|
678
723
|
|
679
724
|
[[package]]
|
680
725
|
name = "regex"
|
681
|
-
version = "1.7.
|
726
|
+
version = "1.7.1"
|
682
727
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
683
|
-
checksum = "
|
728
|
+
checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
|
684
729
|
dependencies = [
|
685
730
|
"aho-corasick",
|
686
731
|
"memchr",
|
@@ -701,9 +746,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
|
|
701
746
|
|
702
747
|
[[package]]
|
703
748
|
name = "rustix"
|
704
|
-
version = "0.36.
|
749
|
+
version = "0.36.8"
|
705
750
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
706
|
-
checksum = "
|
751
|
+
checksum = "f43abb88211988493c1abb44a70efa56ff0ce98f233b7b276146f1f3f7ba9644"
|
707
752
|
dependencies = [
|
708
753
|
"bitflags",
|
709
754
|
"errno",
|
@@ -753,9 +798,9 @@ dependencies = [
|
|
753
798
|
|
754
799
|
[[package]]
|
755
800
|
name = "serde_json"
|
756
|
-
version = "1.0.
|
801
|
+
version = "1.0.93"
|
757
802
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
758
|
-
checksum = "
|
803
|
+
checksum = "cad406b69c91885b5107daf2c29572f6c8cdb3c66826821e286c533490c0bc76"
|
759
804
|
dependencies = [
|
760
805
|
"itoa",
|
761
806
|
"ryu",
|
@@ -763,10 +808,10 @@ dependencies = [
|
|
763
808
|
]
|
764
809
|
|
765
810
|
[[package]]
|
766
|
-
name = "
|
767
|
-
version = "0.10.
|
811
|
+
name = "sha2"
|
812
|
+
version = "0.10.6"
|
768
813
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
769
|
-
checksum = "
|
814
|
+
checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
|
770
815
|
dependencies = [
|
771
816
|
"cfg-if",
|
772
817
|
"cpufeatures",
|
@@ -785,6 +830,21 @@ version = "1.1.0"
|
|
785
830
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
786
831
|
checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
|
787
832
|
|
833
|
+
[[package]]
|
834
|
+
name = "siphasher"
|
835
|
+
version = "0.3.10"
|
836
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
837
|
+
checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de"
|
838
|
+
|
839
|
+
[[package]]
|
840
|
+
name = "slug"
|
841
|
+
version = "0.1.4"
|
842
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
843
|
+
checksum = "b3bc762e6a4b6c6fcaade73e77f9ebc6991b676f88bb2358bddb56560f073373"
|
844
|
+
dependencies = [
|
845
|
+
"deunicode",
|
846
|
+
]
|
847
|
+
|
788
848
|
[[package]]
|
789
849
|
name = "strsim"
|
790
850
|
version = "0.10.0"
|
@@ -793,9 +853,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
|
|
793
853
|
|
794
854
|
[[package]]
|
795
855
|
name = "syn"
|
796
|
-
version = "1.0.
|
856
|
+
version = "1.0.109"
|
797
857
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
798
|
-
checksum = "
|
858
|
+
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
|
799
859
|
dependencies = [
|
800
860
|
"proc-macro2",
|
801
861
|
"quote",
|
@@ -828,18 +888,18 @@ dependencies = [
|
|
828
888
|
|
829
889
|
[[package]]
|
830
890
|
name = "termcolor"
|
831
|
-
version = "1.
|
891
|
+
version = "1.2.0"
|
832
892
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
833
|
-
checksum = "
|
893
|
+
checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
|
834
894
|
dependencies = [
|
835
895
|
"winapi-util",
|
836
896
|
]
|
837
897
|
|
838
898
|
[[package]]
|
839
899
|
name = "terminal_size"
|
840
|
-
version = "0.2.
|
900
|
+
version = "0.2.5"
|
841
901
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
842
|
-
checksum = "
|
902
|
+
checksum = "4c9afddd2cec1c0909f06b00ef33f94ab2cc0578c4a610aa208ddfec8aa2b43a"
|
843
903
|
dependencies = [
|
844
904
|
"rustix",
|
845
905
|
"windows-sys",
|
@@ -867,9 +927,9 @@ dependencies = [
|
|
867
927
|
|
868
928
|
[[package]]
|
869
929
|
name = "time"
|
870
|
-
version = "0.3.
|
930
|
+
version = "0.3.20"
|
871
931
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
872
|
-
checksum = "
|
932
|
+
checksum = "cd0cbfecb4d19b5ea75bb31ad904eb5b9fa13f21079c3b92017ebdf4999a5890"
|
873
933
|
dependencies = [
|
874
934
|
"itoa",
|
875
935
|
"serde",
|
@@ -885,18 +945,18 @@ checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd"
|
|
885
945
|
|
886
946
|
[[package]]
|
887
947
|
name = "time-macros"
|
888
|
-
version = "0.2.
|
948
|
+
version = "0.2.8"
|
889
949
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
890
|
-
checksum = "
|
950
|
+
checksum = "fd80a657e71da814b8e5d60d3374fc6d35045062245d80224748ae522dd76f36"
|
891
951
|
dependencies = [
|
892
952
|
"time-core",
|
893
953
|
]
|
894
954
|
|
895
955
|
[[package]]
|
896
956
|
name = "typed-arena"
|
897
|
-
version = "2.0.
|
957
|
+
version = "2.0.2"
|
898
958
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
899
|
-
checksum = "
|
959
|
+
checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a"
|
900
960
|
|
901
961
|
[[package]]
|
902
962
|
name = "typenum"
|
@@ -978,9 +1038,18 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
|
978
1038
|
|
979
1039
|
[[package]]
|
980
1040
|
name = "windows-sys"
|
981
|
-
version = "0.
|
1041
|
+
version = "0.45.0"
|
982
1042
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
983
|
-
checksum = "
|
1043
|
+
checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
|
1044
|
+
dependencies = [
|
1045
|
+
"windows-targets",
|
1046
|
+
]
|
1047
|
+
|
1048
|
+
[[package]]
|
1049
|
+
name = "windows-targets"
|
1050
|
+
version = "0.42.1"
|
1051
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1052
|
+
checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7"
|
984
1053
|
dependencies = [
|
985
1054
|
"windows_aarch64_gnullvm",
|
986
1055
|
"windows_aarch64_msvc",
|
@@ -993,45 +1062,45 @@ dependencies = [
|
|
993
1062
|
|
994
1063
|
[[package]]
|
995
1064
|
name = "windows_aarch64_gnullvm"
|
996
|
-
version = "0.42.
|
1065
|
+
version = "0.42.1"
|
997
1066
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
998
|
-
checksum = "
|
1067
|
+
checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
|
999
1068
|
|
1000
1069
|
[[package]]
|
1001
1070
|
name = "windows_aarch64_msvc"
|
1002
|
-
version = "0.42.
|
1071
|
+
version = "0.42.1"
|
1003
1072
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1004
|
-
checksum = "
|
1073
|
+
checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
|
1005
1074
|
|
1006
1075
|
[[package]]
|
1007
1076
|
name = "windows_i686_gnu"
|
1008
|
-
version = "0.42.
|
1077
|
+
version = "0.42.1"
|
1009
1078
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1010
|
-
checksum = "
|
1079
|
+
checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
|
1011
1080
|
|
1012
1081
|
[[package]]
|
1013
1082
|
name = "windows_i686_msvc"
|
1014
|
-
version = "0.42.
|
1083
|
+
version = "0.42.1"
|
1015
1084
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1016
|
-
checksum = "
|
1085
|
+
checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
|
1017
1086
|
|
1018
1087
|
[[package]]
|
1019
1088
|
name = "windows_x86_64_gnu"
|
1020
|
-
version = "0.42.
|
1089
|
+
version = "0.42.1"
|
1021
1090
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1022
|
-
checksum = "
|
1091
|
+
checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
|
1023
1092
|
|
1024
1093
|
[[package]]
|
1025
1094
|
name = "windows_x86_64_gnullvm"
|
1026
|
-
version = "0.42.
|
1095
|
+
version = "0.42.1"
|
1027
1096
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1028
|
-
checksum = "
|
1097
|
+
checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
|
1029
1098
|
|
1030
1099
|
[[package]]
|
1031
1100
|
name = "windows_x86_64_msvc"
|
1032
|
-
version = "0.42.
|
1101
|
+
version = "0.42.1"
|
1033
1102
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1034
|
-
checksum = "
|
1103
|
+
checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
|
1035
1104
|
|
1036
1105
|
[[package]]
|
1037
1106
|
name = "xdg"
|
@@ -1042,12 +1111,6 @@ dependencies = [
|
|
1042
1111
|
"dirs",
|
1043
1112
|
]
|
1044
1113
|
|
1045
|
-
[[package]]
|
1046
|
-
name = "xml-rs"
|
1047
|
-
version = "0.8.4"
|
1048
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1049
|
-
checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3"
|
1050
|
-
|
1051
1114
|
[[package]]
|
1052
1115
|
name = "yaml-rust"
|
1053
1116
|
version = "0.4.5"
|
data/README.md
CHANGED
@@ -7,7 +7,7 @@ Ruby wrapper for Rust's [comrak](https://github.com/kivikakk/comrak) crate.
|
|
7
7
|
|
8
8
|
It passes all of the CommonMark test suite, and is therefore spec-complete. It also includes extensions to the CommonMark spec as documented in the [GitHub Flavored Markdown spec](http://github.github.com/gfm/), such as support for tables, strikethroughs, and autolinking.
|
9
9
|
|
10
|
-
For more information on available extensions, see [the documentation below](#
|
10
|
+
For more information on available extensions, see [the documentation below](#extension-options).
|
11
11
|
|
12
12
|
## Installation
|
13
13
|
|
@@ -27,7 +27,7 @@ Or install it yourself as:
|
|
27
27
|
|
28
28
|
### Converting to HTML
|
29
29
|
|
30
|
-
Call `
|
30
|
+
Call `to_html` on a string to convert it to HTML:
|
31
31
|
|
32
32
|
```ruby
|
33
33
|
require 'commonmarker'
|
@@ -68,14 +68,14 @@ Note that there is a distinction in comrak for "parse" options and "render" opti
|
|
68
68
|
| `hardbreaks` | [Soft line breaks](http://spec.commonmark.org/0.27/#soft-line-breaks) translate into hard line breaks. | `true` |
|
69
69
|
| `github_pre_lang` | GitHub-style `<pre lang="xyz">` is used for fenced code blocks with info tags. | `true` |
|
70
70
|
| `width` | The wrap column when outputting CommonMark. | `80` |
|
71
|
-
| `
|
71
|
+
| `unsafe` | Allow rendering of raw HTML and potentially dangerous links. | `false` |
|
72
72
|
| `escape` | Escape raw HTML instead of clobbering it. | `false` |
|
73
73
|
|
74
74
|
As well, there are several extensions which you can toggle in the same manner:
|
75
75
|
|
76
76
|
```ruby
|
77
77
|
Commonmarker.to_html('"Hi *there*"', options: {
|
78
|
-
|
78
|
+
extension: { footnotes: true, description_lists: true },
|
79
79
|
render: { hardbreaks: false}
|
80
80
|
})
|
81
81
|
```
|
@@ -92,34 +92,38 @@ Commonmarker.to_html('"Hi *there*"', options: {
|
|
92
92
|
| `superscript` | Enables the superscript Comrak extension. | `false` |
|
93
93
|
| `header_ids` | Enables the header IDs Comrak extension. from the GFM spec. | `""` |
|
94
94
|
| `footnotes` | Enables the footnotes extension per `cmark-gfm`. | `false` |
|
95
|
-
| `description_lists` | Enables the description lists extension
|
95
|
+
| `description_lists` | Enables the description lists extension. | `false` |
|
96
96
|
| `front_matter_delimiter` | Enables the front matter extension. | `""` |
|
97
|
+
| `shortcodes` | Enables the shortcodes extension. | `true` |
|
97
98
|
|
98
99
|
For more information on these options, see [the comrak documentation](https://github.com/kivikakk/comrak#usage).
|
99
100
|
|
100
101
|
### Plugins
|
101
102
|
|
102
103
|
In addition to the possibilities provided by generic CommonMark rendering, Commonmarker also supports plugins as a means of
|
103
|
-
providing further niceties.
|
104
|
+
providing further niceties.
|
104
105
|
|
105
|
-
|
106
|
-
```ruby
|
107
|
-
def hello
|
108
|
-
puts "hello"
|
109
|
-
end
|
106
|
+
#### Syntax Highlighter Plugin
|
110
107
|
|
111
|
-
|
108
|
+
````ruby
|
109
|
+
code = <<~CODE
|
110
|
+
```ruby
|
111
|
+
def hello
|
112
|
+
puts "hello"
|
113
|
+
end
|
114
|
+
CODE
|
112
115
|
|
113
|
-
|
116
|
+
puts Commonmarker.to_html(code, plugins: { syntax_highlighter: { theme: "InspiredGitHub" } })
|
114
117
|
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
118
|
+
# <pre style="background-color:#ffffff;" lang="ruby"><code>
|
119
|
+
# <span style="font-weight:bold;color:#a71d5d;">def </span><span style="font-weight:bold;color:#795da3;">hello
|
120
|
+
# </span><span style="color:#62a35c;">puts </span><span style="color:#183691;">"hello"
|
121
|
+
# </span><span style="font-weight:bold;color:#a71d5d;">end
|
122
|
+
# </span>
|
123
|
+
# </code></pre>
|
124
|
+
````
|
121
125
|
|
122
|
-
|
126
|
+
To disable this plugin, pass `nil`:
|
123
127
|
|
124
128
|
```ruby
|
125
129
|
Commonmarker.to_html(code, plugins: { syntax_highlighter: nil })
|
@@ -127,6 +131,25 @@ Commonmarker.to_html(code, plugins: { syntax_highlighter: nil })
|
|
127
131
|
Commonmarker.to_html(code, plugins: { syntax_highlighter: { theme: nil } })
|
128
132
|
```
|
129
133
|
|
134
|
+
You can also provide a `path` to a directory containing `.tmtheme` files to load:
|
135
|
+
|
136
|
+
```ruby
|
137
|
+
|
138
|
+
Commonmarker.to_html(code, plugins: { syntax_highlighter: { theme: "Monokai", path: "./themes" } })
|
139
|
+
```
|
140
|
+
|
141
|
+
##### Available themes
|
142
|
+
|
143
|
+
Here's [a list of themes available by default](https://docs.rs/syntect/5.0.0/syntect/highlighting/struct.ThemeSet.html#implementations):
|
144
|
+
|
145
|
+
- `"base16-ocean.dark"`
|
146
|
+
- `"base16-eighties.dark"`
|
147
|
+
- `"base16-mocha.dark"`
|
148
|
+
- `"base16-ocean.light"`
|
149
|
+
- `"InspiredGitHub"`
|
150
|
+
- `"Solarized (dark)"`
|
151
|
+
- `"Solarized (light)"`
|
152
|
+
|
130
153
|
## Output formats
|
131
154
|
|
132
155
|
Commonmarker can currently only generate output in one format: HTML.
|
data/ext/commonmarker/Cargo.toml
CHANGED
@@ -4,8 +4,9 @@ version = "1.0.0"
|
|
4
4
|
edition = "2021"
|
5
5
|
|
6
6
|
[dependencies]
|
7
|
-
magnus = "0.
|
8
|
-
comrak = "0.
|
7
|
+
magnus = "0.5"
|
8
|
+
comrak = { version = "0.16", features = ["shortcodes"] }
|
9
|
+
syntect = { version = "5.0", features = ["plist-load"] }
|
9
10
|
|
10
11
|
[lib]
|
11
12
|
name = "commonmarker"
|
data/ext/commonmarker/src/lib.rs
CHANGED
@@ -1,10 +1,17 @@
|
|
1
1
|
extern crate core;
|
2
2
|
|
3
|
+
use std::path::PathBuf;
|
4
|
+
|
5
|
+
use ::syntect::highlighting::ThemeSet;
|
3
6
|
use comrak::{
|
4
|
-
adapters::SyntaxHighlighterAdapter,
|
5
|
-
|
7
|
+
adapters::SyntaxHighlighterAdapter,
|
8
|
+
markdown_to_html, markdown_to_html_with_plugins,
|
9
|
+
plugins::syntect::{SyntectAdapter, SyntectAdapterBuilder},
|
10
|
+
ComrakOptions, ComrakPlugins,
|
11
|
+
};
|
12
|
+
use magnus::{
|
13
|
+
define_module, exception, function, r_hash::ForEach, scan_args, Error, RHash, Symbol, Value,
|
6
14
|
};
|
7
|
-
use magnus::{define_module, function, r_hash::ForEach, scan_args, Error, RHash, Symbol, Value};
|
8
15
|
|
9
16
|
mod options;
|
10
17
|
use options::iterate_options_hash;
|
@@ -12,7 +19,8 @@ use options::iterate_options_hash;
|
|
12
19
|
mod plugins;
|
13
20
|
use plugins::{
|
14
21
|
syntax_highlighting::{
|
15
|
-
|
22
|
+
fetch_syntax_highlighter_path, fetch_syntax_highlighter_theme,
|
23
|
+
SYNTAX_HIGHLIGHTER_PLUGIN_DEFAULT_THEME,
|
16
24
|
},
|
17
25
|
SYNTAX_HIGHLIGHTER_PLUGIN,
|
18
26
|
};
|
@@ -52,13 +60,75 @@ fn commonmark_to_html<'a>(args: &[Value]) -> Result<String, magnus::Error> {
|
|
52
60
|
let adapter: SyntectAdapter;
|
53
61
|
|
54
62
|
let theme = match rb_plugins.get(Symbol::new(SYNTAX_HIGHLIGHTER_PLUGIN)) {
|
55
|
-
Some(
|
63
|
+
Some(syntax_highlighter_options) => {
|
64
|
+
fetch_syntax_highlighter_theme(syntax_highlighter_options)?
|
65
|
+
}
|
56
66
|
None => SYNTAX_HIGHLIGHTER_PLUGIN_DEFAULT_THEME.to_string(), // no `syntax_highlighter:` defined
|
57
67
|
};
|
58
68
|
|
59
|
-
|
69
|
+
let path = match rb_plugins.get(Symbol::new(SYNTAX_HIGHLIGHTER_PLUGIN)) {
|
70
|
+
Some(syntax_highlighter_options) => {
|
71
|
+
fetch_syntax_highlighter_path(syntax_highlighter_options)?
|
72
|
+
}
|
73
|
+
None => PathBuf::from("".to_string()), // no `syntax_highlighter:` defined
|
74
|
+
};
|
75
|
+
|
76
|
+
if !path.eq(&PathBuf::from("".to_string())) && !path.exists() {
|
77
|
+
return Err(Error::new(
|
78
|
+
exception::arg_error(),
|
79
|
+
format!("path does not exist"),
|
80
|
+
));
|
81
|
+
}
|
82
|
+
|
83
|
+
if theme.is_empty() && path.exists() {
|
84
|
+
return Err(Error::new(
|
85
|
+
exception::arg_error(),
|
86
|
+
"`path` also needs `theme` passed into the `syntax_highlighter`",
|
87
|
+
));
|
88
|
+
}
|
89
|
+
if path.exists() && !path.is_dir() {
|
90
|
+
return Err(Error::new(
|
91
|
+
exception::arg_error(),
|
92
|
+
"`path` needs to be a directory",
|
93
|
+
));
|
94
|
+
}
|
95
|
+
|
96
|
+
if path.exists() {
|
97
|
+
let builder = SyntectAdapterBuilder::new();
|
98
|
+
let mut ts = ThemeSet::load_defaults();
|
99
|
+
|
100
|
+
match ts.add_from_folder(&path) {
|
101
|
+
Ok(_) => {}
|
102
|
+
Err(e) => {
|
103
|
+
return Err(Error::new(
|
104
|
+
exception::arg_error(),
|
105
|
+
format!("failed to load theme set from path: {e}"),
|
106
|
+
));
|
107
|
+
}
|
108
|
+
}
|
109
|
+
|
110
|
+
ts.themes.get(&theme).ok_or_else(|| {
|
111
|
+
Error::new(
|
112
|
+
exception::arg_error(),
|
113
|
+
format!("theme `{}` does not exist", theme),
|
114
|
+
)
|
115
|
+
})?;
|
116
|
+
|
117
|
+
adapter = builder.theme_set(ts).theme(&theme).build();
|
118
|
+
|
119
|
+
syntax_highlighter = Some(&adapter);
|
120
|
+
} else if theme.is_empty() || theme == "none" {
|
60
121
|
syntax_highlighter = None;
|
61
122
|
} else {
|
123
|
+
ThemeSet::load_defaults()
|
124
|
+
.themes
|
125
|
+
.get(&theme)
|
126
|
+
.ok_or_else(|| {
|
127
|
+
Error::new(
|
128
|
+
exception::arg_error(),
|
129
|
+
format!("theme `{}` does not exist", theme),
|
130
|
+
)
|
131
|
+
})?;
|
62
132
|
adapter = SyntectAdapter::new(&theme);
|
63
133
|
syntax_highlighter = Some(&adapter);
|
64
134
|
}
|
@@ -29,7 +29,7 @@ fn iterate_parse_options(comrak_options: &mut ComrakOptions, options_hash: RHash
|
|
29
29
|
const RENDER_HARDBREAKS: &str = "hardbreaks";
|
30
30
|
const RENDER_GITHUB_PRE_LANG: &str = "github_pre_lang";
|
31
31
|
const RENDER_WIDTH: &str = "width";
|
32
|
-
const RENDER_UNSAFE: &str = "
|
32
|
+
const RENDER_UNSAFE: &str = "unsafe";
|
33
33
|
const RENDER_ESCAPE: &str = "escape";
|
34
34
|
|
35
35
|
fn iterate_render_options(comrak_options: &mut ComrakOptions, options_hash: RHash) {
|
@@ -68,6 +68,7 @@ const EXTENSION_HEADER_IDS: &str = "header_ids";
|
|
68
68
|
const EXTENSION_FOOTNOTES: &str = "footnotes";
|
69
69
|
const EXTENSION_DESCRIPTION_LISTS: &str = "description_lists";
|
70
70
|
const EXTENSION_FRONT_MATTER_DELIMITER: &str = "front_matter_delimiter";
|
71
|
+
const EXTENSION_SHORTCODES: &str = "shortcodes";
|
71
72
|
|
72
73
|
fn iterate_extension_options(comrak_options: &mut ComrakOptions, options_hash: RHash) {
|
73
74
|
options_hash
|
@@ -103,6 +104,9 @@ fn iterate_extension_options(comrak_options: &mut ComrakOptions, options_hash: R
|
|
103
104
|
Ok(Cow::Borrowed(EXTENSION_FRONT_MATTER_DELIMITER)) => {
|
104
105
|
comrak_options.extension.front_matter_delimiter = try_convert_string(value);
|
105
106
|
}
|
107
|
+
Ok(Cow::Borrowed(EXTENSION_SHORTCODES)) => {
|
108
|
+
comrak_options.extension.shortcodes = value.try_convert::<bool>()?;
|
109
|
+
}
|
106
110
|
_ => {}
|
107
111
|
}
|
108
112
|
Ok(ForEach::Continue)
|
@@ -1,8 +1,11 @@
|
|
1
|
+
use std::path::PathBuf;
|
2
|
+
|
1
3
|
use magnus::{RHash, Symbol, Value};
|
2
4
|
|
3
5
|
use crate::EMPTY_STR;
|
4
6
|
|
5
7
|
pub const SYNTAX_HIGHLIGHTER_PLUGIN_THEME_KEY: &str = "theme";
|
8
|
+
pub const SYNTAX_HIGHLIGHTER_PLUGIN_PATH_KEY: &str = "path";
|
6
9
|
pub const SYNTAX_HIGHLIGHTER_PLUGIN_DEFAULT_THEME: &str = "base16-ocean.dark";
|
7
10
|
|
8
11
|
pub fn fetch_syntax_highlighter_theme(value: Value) -> Result<String, magnus::Error> {
|
@@ -28,3 +31,28 @@ pub fn fetch_syntax_highlighter_theme(value: Value) -> Result<String, magnus::Er
|
|
28
31
|
}
|
29
32
|
}
|
30
33
|
}
|
34
|
+
|
35
|
+
pub fn fetch_syntax_highlighter_path(value: Value) -> Result<PathBuf, magnus::Error> {
|
36
|
+
if value.is_nil() {
|
37
|
+
// `syntax_highlighter: nil`
|
38
|
+
return Ok(PathBuf::from(EMPTY_STR));
|
39
|
+
}
|
40
|
+
|
41
|
+
let syntax_highlighter_plugin = value.try_convert::<RHash>()?;
|
42
|
+
let path_key = Symbol::new(SYNTAX_HIGHLIGHTER_PLUGIN_PATH_KEY);
|
43
|
+
|
44
|
+
match syntax_highlighter_plugin.get(path_key) {
|
45
|
+
Some(path) => {
|
46
|
+
if path.is_nil() {
|
47
|
+
// `syntax_highlighter: { path: nil }`
|
48
|
+
return Ok(PathBuf::from(EMPTY_STR));
|
49
|
+
}
|
50
|
+
|
51
|
+
Ok(PathBuf::from(path.try_convert::<String>()?))
|
52
|
+
}
|
53
|
+
None => {
|
54
|
+
// `syntax_highlighter: { }`
|
55
|
+
Ok(PathBuf::from(EMPTY_STR))
|
56
|
+
}
|
57
|
+
}
|
58
|
+
}
|
Binary file
|
Binary file
|
data/lib/commonmarker/config.rb
CHANGED
@@ -13,7 +13,7 @@ module Commonmarker
|
|
13
13
|
hardbreaks: true,
|
14
14
|
github_pre_lang: true,
|
15
15
|
width: 80,
|
16
|
-
|
16
|
+
unsafe: false,
|
17
17
|
escape: false,
|
18
18
|
}.freeze,
|
19
19
|
extension: {
|
@@ -27,6 +27,7 @@ module Commonmarker
|
|
27
27
|
footnotes: false,
|
28
28
|
description_lists: false,
|
29
29
|
front_matter_delimiter: nil,
|
30
|
+
shortcodes: true,
|
30
31
|
},
|
31
32
|
format: [:html].freeze,
|
32
33
|
}.freeze
|
@@ -34,6 +35,7 @@ module Commonmarker
|
|
34
35
|
PLUGINS = {
|
35
36
|
syntax_highlighter: {
|
36
37
|
theme: "base16-ocean.dark",
|
38
|
+
path: "",
|
37
39
|
},
|
38
40
|
}
|
39
41
|
|
data/lib/commonmarker/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: commonmarker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.pre8
|
5
5
|
platform: x64-mingw-ucrt
|
6
6
|
authors:
|
7
7
|
- Garen Torikian
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2023-
|
12
|
+
date: 2023-03-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rb_sys
|
@@ -78,7 +78,6 @@ files:
|
|
78
78
|
- Cargo.lock
|
79
79
|
- LICENSE.txt
|
80
80
|
- README.md
|
81
|
-
- commonmarker.gemspec
|
82
81
|
- ext/commonmarker/Cargo.toml
|
83
82
|
- ext/commonmarker/_util.rb
|
84
83
|
- ext/commonmarker/extconf.rb
|
@@ -122,7 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
122
121
|
- !ruby/object:Gem::Version
|
123
122
|
version: 3.3.22
|
124
123
|
requirements: []
|
125
|
-
rubygems_version: 3.4.
|
124
|
+
rubygems_version: 3.4.4
|
126
125
|
signing_key:
|
127
126
|
specification_version: 4
|
128
127
|
summary: CommonMark parser and renderer. Written in Rust, wrapped in Ruby.
|
data/commonmarker.gemspec
DELETED
@@ -1,41 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
lib = File.expand_path("lib", __dir__)
|
4
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
|
-
require "commonmarker/version"
|
6
|
-
|
7
|
-
Gem::Specification.new do |spec|
|
8
|
-
spec.name = "commonmarker"
|
9
|
-
spec.version = Commonmarker::VERSION
|
10
|
-
spec.summary = "CommonMark parser and renderer. Written in Rust, wrapped in Ruby."
|
11
|
-
spec.description = "A fast, safe, extensible parser for CommonMark. This wraps the comrak Rust crate."
|
12
|
-
spec.authors = ["Garen Torikian", "Ashe Connor"]
|
13
|
-
spec.license = "MIT"
|
14
|
-
spec.homepage = "https://github.com/gjtorikian/commonmarker"
|
15
|
-
|
16
|
-
spec.required_ruby_version = "~> 3.1"
|
17
|
-
# https://github.com/rubygems/rubygems/pull/5852#issuecomment-1231118509
|
18
|
-
spec.required_rubygems_version = ">= 3.3.22"
|
19
|
-
|
20
|
-
spec.files = ["LICENSE.txt", "README.md", "commonmarker.gemspec", "Cargo.lock"]
|
21
|
-
spec.files += Dir.glob("lib/**/*.rb")
|
22
|
-
spec.files += Dir.glob("ext/**/*.{rs,toml,lock,rb}")
|
23
|
-
spec.bindir = "exe"
|
24
|
-
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
25
|
-
|
26
|
-
spec.require_paths = ["lib"]
|
27
|
-
spec.extensions = ["ext/commonmarker/extconf.rb"]
|
28
|
-
|
29
|
-
spec.metadata = {
|
30
|
-
"allowed_push_host" => "https://rubygems.org",
|
31
|
-
"funding_uri" => "https://github.com/sponsors/gjtorikian/",
|
32
|
-
"source_code_uri" => "https://github.com/gjtorikian/commonmarker",
|
33
|
-
"rubygems_mfa_required" => "true",
|
34
|
-
}
|
35
|
-
|
36
|
-
spec.add_dependency("rb_sys", "~> 0.9")
|
37
|
-
|
38
|
-
spec.add_development_dependency("rake", "~> 13.0")
|
39
|
-
spec.add_development_dependency("rake-compiler", "~> 1.2")
|
40
|
-
spec.add_development_dependency("rake-compiler-dock", "~> 1.2")
|
41
|
-
end
|