demotape 0.0.3 → 0.0.4

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.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby-tests.yml +1 -1
  3. data/.gitignore +8 -0
  4. data/CHANGELOG.md +6 -0
  5. data/CONTRIBUTING.md +2 -2
  6. data/README.md +19 -10
  7. data/editors/sublime-text/DemoTape.sublime-syntax +1 -1
  8. data/editors/vim/ftdetect/demotape.vim +1 -1
  9. data/editors/vim/syntax/demotape.vim +1 -1
  10. data/editors/vscode/LICENSE.md +20 -0
  11. data/editors/vscode/README.md +12 -2
  12. data/editors/vscode/RELEASE_PROCESS.md +10 -0
  13. data/editors/vscode/demotape.tmLanguage.json +7 -6
  14. data/editors/vscode/icon.png +0 -0
  15. data/editors/vscode/package.json +20 -4
  16. data/editors/zed/extension.toml +12 -0
  17. data/editors/zed/grammars/demotape.wasm +0 -0
  18. data/editors/zed/languages/demotape/config.toml +11 -0
  19. data/editors/zed/languages/demotape/highlights.scm +70 -0
  20. data/editors/zed/package-lock.json +6 -0
  21. data/editors/zed/tree-sitter/Cargo.toml +26 -0
  22. data/editors/zed/tree-sitter/binding.gyp +19 -0
  23. data/editors/zed/tree-sitter/bindings/node/binding.cc +28 -0
  24. data/editors/zed/tree-sitter/bindings/node/index.js +19 -0
  25. data/editors/zed/tree-sitter/bindings/rust/build.rs +40 -0
  26. data/editors/zed/tree-sitter/bindings/rust/lib.rs +52 -0
  27. data/editors/zed/tree-sitter/grammar.js +227 -0
  28. data/editors/zed/tree-sitter/package-lock.json +36 -0
  29. data/editors/zed/tree-sitter/package.json +27 -0
  30. data/editors/zed/tree-sitter/queries/highlights.scm +70 -0
  31. data/editors/zed/tree-sitter/src/grammar.json +1123 -0
  32. data/editors/zed/tree-sitter/src/node-types.json +862 -0
  33. data/editors/zed/tree-sitter/src/parser.c +9337 -0
  34. data/editors/zed/tree-sitter/src/tree_sitter/parser.h +224 -0
  35. data/exe/demotape +1 -0
  36. data/lib/demo_tape/cli.rb +10 -2
  37. data/lib/demo_tape/command.rb +1 -1
  38. data/lib/demo_tape/ext/thor.rb +17 -0
  39. data/lib/demo_tape/version.rb +1 -1
  40. metadata +28 -7
  41. data/demotape_new.y.backup +0 -160
  42. data/demotape_simple_test.y +0 -32
@@ -0,0 +1,862 @@
1
+ [
2
+ {
3
+ "type": "boolean",
4
+ "named": true,
5
+ "fields": {}
6
+ },
7
+ {
8
+ "type": "command",
9
+ "named": true,
10
+ "fields": {},
11
+ "children": {
12
+ "multiple": false,
13
+ "required": true,
14
+ "types": [
15
+ {
16
+ "type": "clear_command",
17
+ "named": true
18
+ },
19
+ {
20
+ "type": "copy_command",
21
+ "named": true
22
+ },
23
+ {
24
+ "type": "group_invocation",
25
+ "named": true
26
+ },
27
+ {
28
+ "type": "include_command",
29
+ "named": true
30
+ },
31
+ {
32
+ "type": "key_command",
33
+ "named": true
34
+ },
35
+ {
36
+ "type": "output_command",
37
+ "named": true
38
+ },
39
+ {
40
+ "type": "paste_command",
41
+ "named": true
42
+ },
43
+ {
44
+ "type": "pause_command",
45
+ "named": true
46
+ },
47
+ {
48
+ "type": "require_command",
49
+ "named": true
50
+ },
51
+ {
52
+ "type": "resume_command",
53
+ "named": true
54
+ },
55
+ {
56
+ "type": "run_command",
57
+ "named": true
58
+ },
59
+ {
60
+ "type": "screenshot_command",
61
+ "named": true
62
+ },
63
+ {
64
+ "type": "send_command",
65
+ "named": true
66
+ },
67
+ {
68
+ "type": "set_command",
69
+ "named": true
70
+ },
71
+ {
72
+ "type": "sleep_command",
73
+ "named": true
74
+ },
75
+ {
76
+ "type": "type_command",
77
+ "named": true
78
+ },
79
+ {
80
+ "type": "type_file_command",
81
+ "named": true
82
+ },
83
+ {
84
+ "type": "wait_command",
85
+ "named": true
86
+ },
87
+ {
88
+ "type": "wait_until_command",
89
+ "named": true
90
+ }
91
+ ]
92
+ }
93
+ },
94
+ {
95
+ "type": "copy_command",
96
+ "named": true,
97
+ "fields": {
98
+ "text": {
99
+ "multiple": false,
100
+ "required": true,
101
+ "types": [
102
+ {
103
+ "type": "string",
104
+ "named": true
105
+ }
106
+ ]
107
+ }
108
+ }
109
+ },
110
+ {
111
+ "type": "duration_modifier",
112
+ "named": true,
113
+ "fields": {
114
+ "duration": {
115
+ "multiple": false,
116
+ "required": true,
117
+ "types": [
118
+ {
119
+ "type": "duration",
120
+ "named": true
121
+ },
122
+ {
123
+ "type": "number",
124
+ "named": true
125
+ }
126
+ ]
127
+ }
128
+ }
129
+ },
130
+ {
131
+ "type": "group_block",
132
+ "named": true,
133
+ "fields": {
134
+ "name": {
135
+ "multiple": false,
136
+ "required": true,
137
+ "types": [
138
+ {
139
+ "type": "identifier",
140
+ "named": true
141
+ }
142
+ ]
143
+ }
144
+ },
145
+ "children": {
146
+ "multiple": true,
147
+ "required": false,
148
+ "types": [
149
+ {
150
+ "type": "command",
151
+ "named": true
152
+ },
153
+ {
154
+ "type": "comment",
155
+ "named": true
156
+ },
157
+ {
158
+ "type": "newline",
159
+ "named": true
160
+ }
161
+ ]
162
+ }
163
+ },
164
+ {
165
+ "type": "group_invocation",
166
+ "named": true,
167
+ "fields": {
168
+ "group": {
169
+ "multiple": false,
170
+ "required": true,
171
+ "types": [
172
+ {
173
+ "type": "identifier",
174
+ "named": true
175
+ }
176
+ ]
177
+ }
178
+ }
179
+ },
180
+ {
181
+ "type": "include_command",
182
+ "named": true,
183
+ "fields": {
184
+ "path": {
185
+ "multiple": false,
186
+ "required": true,
187
+ "types": [
188
+ {
189
+ "type": "string",
190
+ "named": true
191
+ }
192
+ ]
193
+ }
194
+ }
195
+ },
196
+ {
197
+ "type": "key_combination",
198
+ "named": true,
199
+ "fields": {},
200
+ "children": {
201
+ "multiple": true,
202
+ "required": true,
203
+ "types": [
204
+ {
205
+ "type": "letter_key",
206
+ "named": true
207
+ },
208
+ {
209
+ "type": "modifier_key",
210
+ "named": true
211
+ },
212
+ {
213
+ "type": "special_key",
214
+ "named": true
215
+ }
216
+ ]
217
+ }
218
+ },
219
+ {
220
+ "type": "key_command",
221
+ "named": true,
222
+ "fields": {
223
+ "count": {
224
+ "multiple": false,
225
+ "required": false,
226
+ "types": [
227
+ {
228
+ "type": "number",
229
+ "named": true
230
+ }
231
+ ]
232
+ },
233
+ "key": {
234
+ "multiple": false,
235
+ "required": true,
236
+ "types": [
237
+ {
238
+ "type": "key_combination",
239
+ "named": true
240
+ }
241
+ ]
242
+ }
243
+ },
244
+ "children": {
245
+ "multiple": false,
246
+ "required": false,
247
+ "types": [
248
+ {
249
+ "type": "duration_modifier",
250
+ "named": true
251
+ }
252
+ ]
253
+ }
254
+ },
255
+ {
256
+ "type": "modifier_key",
257
+ "named": true,
258
+ "fields": {}
259
+ },
260
+ {
261
+ "type": "output_command",
262
+ "named": true,
263
+ "fields": {
264
+ "path": {
265
+ "multiple": false,
266
+ "required": true,
267
+ "types": [
268
+ {
269
+ "type": "string",
270
+ "named": true
271
+ }
272
+ ]
273
+ }
274
+ }
275
+ },
276
+ {
277
+ "type": "require_command",
278
+ "named": true,
279
+ "fields": {
280
+ "command": {
281
+ "multiple": false,
282
+ "required": true,
283
+ "types": [
284
+ {
285
+ "type": "identifier",
286
+ "named": true
287
+ },
288
+ {
289
+ "type": "string",
290
+ "named": true
291
+ }
292
+ ]
293
+ }
294
+ }
295
+ },
296
+ {
297
+ "type": "run_command",
298
+ "named": true,
299
+ "fields": {
300
+ "command": {
301
+ "multiple": false,
302
+ "required": true,
303
+ "types": [
304
+ {
305
+ "type": "string",
306
+ "named": true
307
+ }
308
+ ]
309
+ }
310
+ },
311
+ "children": {
312
+ "multiple": false,
313
+ "required": false,
314
+ "types": [
315
+ {
316
+ "type": "duration_modifier",
317
+ "named": true
318
+ }
319
+ ]
320
+ }
321
+ },
322
+ {
323
+ "type": "screenshot_command",
324
+ "named": true,
325
+ "fields": {
326
+ "path": {
327
+ "multiple": false,
328
+ "required": false,
329
+ "types": [
330
+ {
331
+ "type": "string",
332
+ "named": true
333
+ }
334
+ ]
335
+ }
336
+ }
337
+ },
338
+ {
339
+ "type": "send_command",
340
+ "named": true,
341
+ "fields": {
342
+ "text": {
343
+ "multiple": false,
344
+ "required": true,
345
+ "types": [
346
+ {
347
+ "type": "string",
348
+ "named": true
349
+ }
350
+ ]
351
+ }
352
+ }
353
+ },
354
+ {
355
+ "type": "set_command",
356
+ "named": true,
357
+ "fields": {
358
+ "option": {
359
+ "multiple": false,
360
+ "required": true,
361
+ "types": [
362
+ {
363
+ "type": "set_option",
364
+ "named": true
365
+ }
366
+ ]
367
+ },
368
+ "value": {
369
+ "multiple": true,
370
+ "required": true,
371
+ "types": [
372
+ {
373
+ "type": "boolean",
374
+ "named": true
375
+ },
376
+ {
377
+ "type": "duration",
378
+ "named": true
379
+ },
380
+ {
381
+ "type": "number",
382
+ "named": true
383
+ },
384
+ {
385
+ "type": "string",
386
+ "named": true
387
+ },
388
+ {
389
+ "type": "unquoted_string",
390
+ "named": true
391
+ }
392
+ ]
393
+ }
394
+ }
395
+ },
396
+ {
397
+ "type": "sleep_command",
398
+ "named": true,
399
+ "fields": {
400
+ "duration": {
401
+ "multiple": false,
402
+ "required": true,
403
+ "types": [
404
+ {
405
+ "type": "duration",
406
+ "named": true
407
+ },
408
+ {
409
+ "type": "number",
410
+ "named": true
411
+ }
412
+ ]
413
+ }
414
+ }
415
+ },
416
+ {
417
+ "type": "source_file",
418
+ "named": true,
419
+ "fields": {},
420
+ "children": {
421
+ "multiple": true,
422
+ "required": false,
423
+ "types": [
424
+ {
425
+ "type": "command",
426
+ "named": true
427
+ },
428
+ {
429
+ "type": "comment",
430
+ "named": true
431
+ },
432
+ {
433
+ "type": "group_block",
434
+ "named": true
435
+ },
436
+ {
437
+ "type": "newline",
438
+ "named": true
439
+ }
440
+ ]
441
+ }
442
+ },
443
+ {
444
+ "type": "special_key",
445
+ "named": true,
446
+ "fields": {}
447
+ },
448
+ {
449
+ "type": "string",
450
+ "named": true,
451
+ "fields": {
452
+ "content": {
453
+ "multiple": true,
454
+ "required": false,
455
+ "types": [
456
+ {
457
+ "type": "escape_sequence",
458
+ "named": true
459
+ }
460
+ ]
461
+ }
462
+ }
463
+ },
464
+ {
465
+ "type": "type_command",
466
+ "named": true,
467
+ "fields": {
468
+ "text": {
469
+ "multiple": false,
470
+ "required": true,
471
+ "types": [
472
+ {
473
+ "type": "string",
474
+ "named": true
475
+ }
476
+ ]
477
+ }
478
+ },
479
+ "children": {
480
+ "multiple": false,
481
+ "required": false,
482
+ "types": [
483
+ {
484
+ "type": "duration_modifier",
485
+ "named": true
486
+ }
487
+ ]
488
+ }
489
+ },
490
+ {
491
+ "type": "type_file_command",
492
+ "named": true,
493
+ "fields": {
494
+ "path": {
495
+ "multiple": false,
496
+ "required": true,
497
+ "types": [
498
+ {
499
+ "type": "string",
500
+ "named": true
501
+ }
502
+ ]
503
+ }
504
+ },
505
+ "children": {
506
+ "multiple": false,
507
+ "required": false,
508
+ "types": [
509
+ {
510
+ "type": "duration_modifier",
511
+ "named": true
512
+ }
513
+ ]
514
+ }
515
+ },
516
+ {
517
+ "type": "wait_command",
518
+ "named": true,
519
+ "fields": {
520
+ "duration": {
521
+ "multiple": false,
522
+ "required": true,
523
+ "types": [
524
+ {
525
+ "type": "duration",
526
+ "named": true
527
+ },
528
+ {
529
+ "type": "number",
530
+ "named": true
531
+ }
532
+ ]
533
+ }
534
+ }
535
+ },
536
+ {
537
+ "type": "wait_until_command",
538
+ "named": true,
539
+ "fields": {
540
+ "pattern": {
541
+ "multiple": false,
542
+ "required": true,
543
+ "types": [
544
+ {
545
+ "type": "regex",
546
+ "named": true
547
+ }
548
+ ]
549
+ }
550
+ },
551
+ "children": {
552
+ "multiple": false,
553
+ "required": false,
554
+ "types": [
555
+ {
556
+ "type": "duration_modifier",
557
+ "named": true
558
+ }
559
+ ]
560
+ }
561
+ },
562
+ {
563
+ "type": "\"",
564
+ "named": false
565
+ },
566
+ {
567
+ "type": "\"\"\"",
568
+ "named": false
569
+ },
570
+ {
571
+ "type": "'",
572
+ "named": false
573
+ },
574
+ {
575
+ "type": "+",
576
+ "named": false
577
+ },
578
+ {
579
+ "type": ",",
580
+ "named": false
581
+ },
582
+ {
583
+ "type": "@",
584
+ "named": false
585
+ },
586
+ {
587
+ "type": "Add",
588
+ "named": false
589
+ },
590
+ {
591
+ "type": "Alt",
592
+ "named": false
593
+ },
594
+ {
595
+ "type": "BackSlash",
596
+ "named": false
597
+ },
598
+ {
599
+ "type": "Backspace",
600
+ "named": false
601
+ },
602
+ {
603
+ "type": "Cancel",
604
+ "named": false
605
+ },
606
+ {
607
+ "type": "Colon",
608
+ "named": false
609
+ },
610
+ {
611
+ "type": "Command",
612
+ "named": false
613
+ },
614
+ {
615
+ "type": "Control",
616
+ "named": false
617
+ },
618
+ {
619
+ "type": "Copy",
620
+ "named": false
621
+ },
622
+ {
623
+ "type": "Ctrl",
624
+ "named": false
625
+ },
626
+ {
627
+ "type": "Decimal",
628
+ "named": false
629
+ },
630
+ {
631
+ "type": "Delete",
632
+ "named": false
633
+ },
634
+ {
635
+ "type": "Divide",
636
+ "named": false
637
+ },
638
+ {
639
+ "type": "Down",
640
+ "named": false
641
+ },
642
+ {
643
+ "type": "End",
644
+ "named": false
645
+ },
646
+ {
647
+ "type": "Enter",
648
+ "named": false
649
+ },
650
+ {
651
+ "type": "Equals",
652
+ "named": false
653
+ },
654
+ {
655
+ "type": "Esc",
656
+ "named": false
657
+ },
658
+ {
659
+ "type": "Escape",
660
+ "named": false
661
+ },
662
+ {
663
+ "type": "Group",
664
+ "named": false
665
+ },
666
+ {
667
+ "type": "Help",
668
+ "named": false
669
+ },
670
+ {
671
+ "type": "Home",
672
+ "named": false
673
+ },
674
+ {
675
+ "type": "Include",
676
+ "named": false
677
+ },
678
+ {
679
+ "type": "Insert",
680
+ "named": false
681
+ },
682
+ {
683
+ "type": "Left",
684
+ "named": false
685
+ },
686
+ {
687
+ "type": "Meta",
688
+ "named": false
689
+ },
690
+ {
691
+ "type": "Multiply",
692
+ "named": false
693
+ },
694
+ {
695
+ "type": "Option",
696
+ "named": false
697
+ },
698
+ {
699
+ "type": "Output",
700
+ "named": false
701
+ },
702
+ {
703
+ "type": "PageDown",
704
+ "named": false
705
+ },
706
+ {
707
+ "type": "PageUp",
708
+ "named": false
709
+ },
710
+ {
711
+ "type": "Require",
712
+ "named": false
713
+ },
714
+ {
715
+ "type": "Return",
716
+ "named": false
717
+ },
718
+ {
719
+ "type": "Right",
720
+ "named": false
721
+ },
722
+ {
723
+ "type": "Run",
724
+ "named": false
725
+ },
726
+ {
727
+ "type": "Screenshot",
728
+ "named": false
729
+ },
730
+ {
731
+ "type": "Semicolon",
732
+ "named": false
733
+ },
734
+ {
735
+ "type": "Send",
736
+ "named": false
737
+ },
738
+ {
739
+ "type": "Separator",
740
+ "named": false
741
+ },
742
+ {
743
+ "type": "Set",
744
+ "named": false
745
+ },
746
+ {
747
+ "type": "Shift",
748
+ "named": false
749
+ },
750
+ {
751
+ "type": "Slash",
752
+ "named": false
753
+ },
754
+ {
755
+ "type": "Sleep",
756
+ "named": false
757
+ },
758
+ {
759
+ "type": "Space",
760
+ "named": false
761
+ },
762
+ {
763
+ "type": "Subtract",
764
+ "named": false
765
+ },
766
+ {
767
+ "type": "Tab",
768
+ "named": false
769
+ },
770
+ {
771
+ "type": "Type",
772
+ "named": false
773
+ },
774
+ {
775
+ "type": "TypeFile",
776
+ "named": false
777
+ },
778
+ {
779
+ "type": "Up",
780
+ "named": false
781
+ },
782
+ {
783
+ "type": "Wait",
784
+ "named": false
785
+ },
786
+ {
787
+ "type": "WaitUntil",
788
+ "named": false
789
+ },
790
+ {
791
+ "type": "clear_command",
792
+ "named": true
793
+ },
794
+ {
795
+ "type": "comment",
796
+ "named": true
797
+ },
798
+ {
799
+ "type": "do",
800
+ "named": false
801
+ },
802
+ {
803
+ "type": "duration",
804
+ "named": true
805
+ },
806
+ {
807
+ "type": "end",
808
+ "named": false
809
+ },
810
+ {
811
+ "type": "escape_sequence",
812
+ "named": true
813
+ },
814
+ {
815
+ "type": "false",
816
+ "named": false
817
+ },
818
+ {
819
+ "type": "identifier",
820
+ "named": true
821
+ },
822
+ {
823
+ "type": "letter_key",
824
+ "named": true
825
+ },
826
+ {
827
+ "type": "newline",
828
+ "named": true
829
+ },
830
+ {
831
+ "type": "number",
832
+ "named": true
833
+ },
834
+ {
835
+ "type": "paste_command",
836
+ "named": true
837
+ },
838
+ {
839
+ "type": "pause_command",
840
+ "named": true
841
+ },
842
+ {
843
+ "type": "regex",
844
+ "named": true
845
+ },
846
+ {
847
+ "type": "resume_command",
848
+ "named": true
849
+ },
850
+ {
851
+ "type": "set_option",
852
+ "named": true
853
+ },
854
+ {
855
+ "type": "true",
856
+ "named": false
857
+ },
858
+ {
859
+ "type": "unquoted_string",
860
+ "named": true
861
+ }
862
+ ]