markdown_exec 1.5 → 1.7

Sign up to get free protection for your applications and to get access to all the features.
data/lib/mdoc.rb CHANGED
@@ -209,9 +209,6 @@ module MarkdownExec
209
209
  end
210
210
  end
211
211
 
212
- # def load_auto_blocks(opts)
213
- # end
214
-
215
212
  # Recursively fetches required code blocks for a given list of requirements.
216
213
  #
217
214
  # @param reqs [Array<String>] An array of requirements to start the recursion from.
data/lib/menu.src.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  - :description: Show current configuration values
3
3
  :procname: show_config
4
- :short_name: '0'
4
+ :short_name: "0"
5
5
 
6
6
  - :arg_name: BOOL
7
7
  :default: false
@@ -113,17 +113,37 @@
113
113
  :opt_name: exclude_expect_blocks
114
114
  :procname: val_as_bool
115
115
 
116
+ - :default: magenta
117
+ :description: execution_report_preview_frame_color
118
+ :env_var: MDE_EXECUTION_REPORT_PREVIEW_FRAME_COLOR
119
+ :opt_name: execution_report_preview_frame_color
120
+ :procname: val_as_str
121
+
122
+ - :default: "\n -^-"
123
+ :description: execution_report_preview_head
124
+ :env_var: MDE_EXECUTION_REPORT_PREVIEW_HEAD
125
+ :opt_name: execution_report_preview_head
126
+ :procname: val_as_str
127
+
128
+ - :default: " -v-"
129
+ :description: execution_report_preview_tail
130
+ :env_var: MDE_EXECUTION_REPORT_PREVIEW_TAIL
131
+ :opt_name: execution_report_preview_tail
132
+ :procname: val_as_str
133
+
116
134
  - :description: Exit app
117
135
  :long_name: exit
118
136
  :procname: exit
119
137
  :short_name: x
120
138
 
121
- - :default: "^`{3,}"
139
+ ## match fenced code indented by spaces
140
+ #
141
+ - :default: "^(?<indent> *)`{3,}"
122
142
  :env_var: MDE_FENCED_START_AND_END_REGEX
123
143
  :opt_name: fenced_start_and_end_regex
124
144
  :procname: val_as_str
125
145
 
126
- - :default: "^`{3,}(?<shell>[^`\\s]*) *:?(?<name>[^\\s]*) *(?<rest>.*) *$"
146
+ - :default: "^(?<indent> *)`{3,}(?<shell>[^`\\s]*) *:?(?<name>[^\\s]*) *(?<rest>.*) *$"
127
147
  :env_var: MDE_FENCED_START_EXTENDED_REGEX
128
148
  :opt_name: fenced_start_extended_regex
129
149
  :procname: val_as_str
@@ -176,7 +196,7 @@
176
196
  :opt_name: history_property_separator
177
197
  :procname: val_as_str
178
198
 
179
- - :default: "^ *@import (.+)$"
199
+ - :default: "^ *@import +(?<name>.+?) *$"
180
200
  :env_var: MDE_IMPORT_PATTERN
181
201
  :opt_name: import_pattern
182
202
  :procname: val_as_str
@@ -311,6 +331,26 @@
311
331
  :opt_name: menu_final_divider
312
332
  :procname: val_as_str
313
333
 
334
+ - :default: "0"
335
+ :description: Import levels for blocks to appear in menu. Empty is all.
336
+ :env_var: MDE_MENU_IMPORT_LEVEL_MATCH
337
+ :opt_name: menu_import_level_match
338
+ :procname: val_as_str
339
+
340
+ - :arg_name: BOOL
341
+ :default: true
342
+ :description: Include imported blocks in menu
343
+ :env_var: MDE_MENU_INCLUDE_IMPORTED_BLOCKS
344
+ :opt_name: menu_include_imported_blocks
345
+ :procname: val_as_bool
346
+
347
+ - :arg_name: BOOL
348
+ :default: false
349
+ :description: Include imported notes in menu
350
+ :env_var: MDE_MENU_INCLUDE_IMPORTED_NOTES
351
+ :opt_name: menu_include_imported_notes
352
+ :procname: val_as_bool
353
+
314
354
  - :default:
315
355
  :line: ""
316
356
  :description: opening demarcation for menu
@@ -330,7 +370,7 @@
330
370
  :opt_name: menu_link_format
331
371
  :procname: val_as_str
332
372
 
333
- - :default: fg_rgbh_44_44_44
373
+ - :default: fg_rgbh_88_88_88
334
374
  :description: Color of menu note
335
375
  :env_var: MDE_MENU_NOTE_COLOR
336
376
  :opt_name: menu_note_color
@@ -342,7 +382,9 @@
342
382
  :opt_name: menu_note_format
343
383
  :procname: val_as_str
344
384
 
345
- - :default: "^\\+ *(?<line>.*?) *$"
385
+ ## all non-blank lines are notes
386
+ #
387
+ - :default: "^(?<line>.*?) *$"
346
388
  :description: Pattern for notes in block selection menu
347
389
  :env_var: MDE_MENU_NOTE_MATCH
348
390
  :opt_name: menu_note_match
@@ -443,18 +485,6 @@
443
485
  :opt_name: no_chrome
444
486
  :procname: val_as_bool
445
487
 
446
- - :default: " #=#=#"
447
- :description: Output divider
448
- :env_var: MDE_OUTPUT_DIVIDER
449
- :opt_name: output_divider
450
- :procname: val_as_str
451
-
452
- - :default: yellow
453
- :description: Color of output divider
454
- :env_var: MDE_OUTPUT_DIVIDER_COLOR
455
- :opt_name: output_divider_color
456
- :procname: val_as_str
457
-
458
488
  - :arg_name: BOOL
459
489
  :default: false
460
490
  :description: Display summary for execution
@@ -463,6 +493,24 @@
463
493
  :opt_name: output_execution_summary
464
494
  :procname: val_as_bool
465
495
 
496
+ - :default: "%{name}: %{value}"
497
+ :description: format for menu dividers and demarcations
498
+ :env_var: MDE_OUTPUT_EXECUTION_LABEL_FORMAT
499
+ :opt_name: output_execution_label_format
500
+ :procname: val_as_str
501
+
502
+ - :default: yellow
503
+ :description: Color of output_execution_label_name
504
+ :env_var: MDE_OUTPUT_EXECUTION_LABEL_NAME_COLOR
505
+ :opt_name: output_execution_label_name_color
506
+ :procname: val_as_str
507
+
508
+ - :default: plain
509
+ :description: Color of output_execution_label_value
510
+ :env_var: MDE_OUTPUT_EXECUTION_LABEL_VALUE_COLOR
511
+ :opt_name: output_execution_label_value_color
512
+ :procname: val_as_str
513
+
466
514
  - :arg_name: BOOL
467
515
  :default: false
468
516
  :description: Output saved script filename at end of execution
@@ -503,29 +551,35 @@
503
551
  - :arg_name: BOOL
504
552
  :default: true
505
553
  :description: Pause afte executing a BASH block
506
- :env_var: MDE_PAUSE_AFTER_BASH_EXEC
507
- :opt_name: pause_after_bash_exec
554
+ :env_var: MDE_PAUSE_after_script_execution
555
+ :opt_name: pause_after_script_execution
508
556
  :procname: val_as_bool
509
557
 
510
- - :default: Continue?
511
- :description: Prompt to continue
512
- :env_var: MDE_PROMPT_AFTER_BASH_EXEC
513
- :opt_name: prompt_after_bash_exec
558
+ - :default: "\nContinue?"
559
+ :description: Prompt after script execution
560
+ :env_var: MDE_PROMPT_after_script_execution
561
+ :opt_name: prompt_after_script_execution
514
562
  :procname: val_as_str
515
563
 
516
- - :default: Process?
564
+ - :default: "\nProcess?"
517
565
  :description: Prompt to approve a block
518
566
  :env_var: MDE_PROMPT_APPROVE_BLOCK
519
567
  :opt_name: prompt_approve_block
520
568
  :procname: val_as_str
521
569
 
570
+ - :default: cyan
571
+ :description: Color of prompt after script execution
572
+ :env_var: MDE_PROMPT_COLOR_AFTER_SCRIPT_EXECUTION
573
+ :opt_name: prompt_color_after_script_execution
574
+ :procname: val_as_str
575
+
522
576
  - :default: Exit
523
577
  :description: Prompt to exit app
524
578
  :env_var: MDE_PROMPT_EXIT
525
579
  :opt_name: prompt_exit
526
580
  :procname: val_as_str
527
581
 
528
- - :default: 'No'
582
+ - :default: "No"
529
583
  :description: Prompt for no
530
584
  :env_var: MDE_PROMPT_NO
531
585
  :opt_name: prompt_no
@@ -543,25 +597,25 @@
543
597
  :opt_name: prompt_script_to_clipboard
544
598
  :procname: val_as_str
545
599
 
546
- - :default: 'Choose a block:'
600
+ - :default: "\nChoose a block:"
547
601
  :description: Prompt to select a block
548
602
  :env_var: MDE_PROMPT_SELECT_BLOCK
549
603
  :opt_name: prompt_select_block
550
604
  :procname: val_as_str
551
605
 
552
- - :default: 'Choose a file:'
606
+ - :default: "\nChoose a file:"
553
607
  :description: Prompt to select a markdown document
554
608
  :env_var: MDE_PROMPT_SELECT_MD
555
609
  :opt_name: prompt_select_md
556
610
  :procname: val_as_str
557
611
 
558
- - :default: 'Choose a file:'
612
+ - :default: "\nChoose a file:"
559
613
  :description: Prompt to select a saved file
560
614
  :env_var: MDE_PROMPT_SELECT_OUTPUT
561
615
  :opt_name: prompt_select_output
562
616
  :procname: val_as_str
563
617
 
564
- - :default: 'Yes'
618
+ - :default: "Yes"
565
619
  :description: Prompt for yes
566
620
  :env_var: MDE_PROMPT_YES
567
621
  :opt_name: prompt_yes
@@ -593,6 +647,18 @@
593
647
  :opt_name: save_execution_output
594
648
  :procname: val_as_bool
595
649
 
650
+ - :default: "/"
651
+ :description: Pattern to replace in file names
652
+ :env_var: MDE_SAVED_FILENAME_PATTERN
653
+ :opt_name: saved_filename_pattern
654
+ :procname: val_as_str
655
+
656
+ - :default: ",~"
657
+ :description: Replacement for pattern in file names
658
+ :env_var: MDE_SAVED_FILENAME_REPLACEMENT
659
+ :opt_name: saved_filename_replacement
660
+ :procname: val_as_str
661
+
596
662
  - :arg_name: INT
597
663
  :default: 493
598
664
  :description: chmod for saved scripts
@@ -637,6 +703,42 @@
637
703
  :opt_name: saved_stdout_glob
638
704
  :procname: val_as_str
639
705
 
706
+ - :default: green
707
+ :description: script_execution_frame_color
708
+ :env_var: MDE_SCRIPT_EXECUTION_FRAME_COLOR
709
+ :opt_name: script_execution_frame_color
710
+ :procname: val_as_str
711
+
712
+ - :default: "\n -^-"
713
+ :description: script_execution_head
714
+ :env_var: MDE_SCRIPT_EXECUTION_HEAD
715
+ :opt_name: script_execution_head
716
+ :procname: val_as_str
717
+
718
+ - :default: " -v-\n"
719
+ :description: script_execution_tail
720
+ :env_var: MDE_SCRIPT_EXECUTION_TAIL
721
+ :opt_name: script_execution_tail
722
+ :procname: val_as_str
723
+
724
+ - :default: yellow
725
+ :description: Color of output divider
726
+ :env_var: MDE_OUTPUT_DIVIDER_COLOR
727
+ :opt_name: script_preview_frame_color
728
+ :procname: val_as_str
729
+
730
+ - :default: "\n -^-"
731
+ :description: script_preview_head
732
+ :env_var: MDE_SCRIPT_PREVIEW_HEAD
733
+ :opt_name: script_preview_head
734
+ :procname: val_as_str
735
+
736
+ - :default: " -v-\n"
737
+ :description: script_preview_tail
738
+ :env_var: MDE_SCRIPT_PREVIEW_TAIL
739
+ :opt_name: script_preview_tail
740
+ :procname: val_as_str
741
+
640
742
  - :arg_name: REGEX
641
743
  :default:
642
744
  :description: Select blocks with name matching
@@ -652,7 +754,7 @@
652
754
  :procname: val_as_str
653
755
 
654
756
  - :default: 36
655
- :description: 'Maximum # of rows in select list'
757
+ :description: "Maximum # of rows in select list"
656
758
  :env_var: MDE_SELECT_PAGE_HEIGHT
657
759
  :opt_name: select_page_height
658
760
  :procname: val_as_int
@@ -697,3 +799,15 @@
697
799
  :long_name: version
698
800
  :procname: version
699
801
  :short_name: v
802
+
803
+ - :default: red
804
+ :description: Color of warning message
805
+ :env_var: MDE_WARNING_COLOR
806
+ :opt_name: warning_color
807
+ :procname: val_as_str
808
+
809
+ - :default: "Error: %{error}"
810
+ :description: Format of warning message
811
+ :env_var: MDE_WARNING_FORMAT
812
+ :opt_name: warning_format
813
+ :procname: val_as_str
data/lib/menu.yml CHANGED
@@ -1,4 +1,4 @@
1
- # MDE - Markdown Executor (1.5)
1
+ # MDE - Markdown Executor (1.7)
2
2
  ---
3
3
  - :description: Show current configuration values
4
4
  :procname: show_config
@@ -95,15 +95,33 @@
95
95
  :env_var: MDE_EXCLUDE_EXPECT_BLOCKS
96
96
  :opt_name: exclude_expect_blocks
97
97
  :procname: val_as_bool
98
+ - :default: magenta
99
+ :description: execution_report_preview_frame_color
100
+ :env_var: MDE_EXECUTION_REPORT_PREVIEW_FRAME_COLOR
101
+ :opt_name: execution_report_preview_frame_color
102
+ :procname: val_as_str
103
+ - :default: |2-
104
+
105
+ -^-
106
+ :description: execution_report_preview_head
107
+ :env_var: MDE_EXECUTION_REPORT_PREVIEW_HEAD
108
+ :opt_name: execution_report_preview_head
109
+ :procname: val_as_str
110
+ - :default: " -v-"
111
+ :description: execution_report_preview_tail
112
+ :env_var: MDE_EXECUTION_REPORT_PREVIEW_TAIL
113
+ :opt_name: execution_report_preview_tail
114
+ :procname: val_as_str
98
115
  - :description: Exit app
99
116
  :long_name: exit
100
117
  :procname: exit
101
118
  :short_name: x
102
- - :default: "^`{3,}"
119
+ - :default: "^(?<indent> *)`{3,}"
103
120
  :env_var: MDE_FENCED_START_AND_END_REGEX
104
121
  :opt_name: fenced_start_and_end_regex
105
122
  :procname: val_as_str
106
- - :default: "^`{3,}(?<shell>[^`\\s]*) *:?(?<name>[^\\s]*) *(?<rest>.*) *$"
123
+ - :default: "^(?<indent> *)`{3,}(?<shell>[^`\\s]*) *:?(?<name>[^\\s]*) *(?<rest>.*)
124
+ *$"
107
125
  :env_var: MDE_FENCED_START_EXTENDED_REGEX
108
126
  :opt_name: fenced_start_extended_regex
109
127
  :procname: val_as_str
@@ -147,7 +165,7 @@
147
165
  :env_var: MDE_HISTORY_PROPERTY_SEPARATOR
148
166
  :opt_name: history_property_separator
149
167
  :procname: val_as_str
150
- - :default: "^ *@import (.+)$"
168
+ - :default: "^ *@import +(?<name>.+?) *$"
151
169
  :env_var: MDE_IMPORT_PATTERN
152
170
  :opt_name: import_pattern
153
171
  :procname: val_as_str
@@ -259,6 +277,23 @@
259
277
  :env_var: MDE_MENU_FINAL_DIVIDER
260
278
  :opt_name: menu_final_divider
261
279
  :procname: val_as_str
280
+ - :default: '0'
281
+ :description: Import levels for blocks to appear in menu. Empty is all.
282
+ :env_var: MDE_MENU_IMPORT_LEVEL_MATCH
283
+ :opt_name: menu_import_level_match
284
+ :procname: val_as_str
285
+ - :arg_name: BOOL
286
+ :default: true
287
+ :description: Include imported blocks in menu
288
+ :env_var: MDE_MENU_INCLUDE_IMPORTED_BLOCKS
289
+ :opt_name: menu_include_imported_blocks
290
+ :procname: val_as_bool
291
+ - :arg_name: BOOL
292
+ :default: false
293
+ :description: Include imported notes in menu
294
+ :env_var: MDE_MENU_INCLUDE_IMPORTED_NOTES
295
+ :opt_name: menu_include_imported_notes
296
+ :procname: val_as_bool
262
297
  - :default:
263
298
  :line: ''
264
299
  :description: opening demarcation for menu
@@ -275,7 +310,7 @@
275
310
  :env_var: MDE_MENU_LINK_FORMAT
276
311
  :opt_name: menu_link_format
277
312
  :procname: val_as_str
278
- - :default: fg_rgbh_44_44_44
313
+ - :default: fg_rgbh_88_88_88
279
314
  :description: Color of menu note
280
315
  :env_var: MDE_MENU_NOTE_COLOR
281
316
  :opt_name: menu_note_color
@@ -285,7 +320,7 @@
285
320
  :env_var: MDE_MENU_NOTE_FORMAT
286
321
  :opt_name: menu_note_format
287
322
  :procname: val_as_str
288
- - :default: "^\\+ *(?<line>.*?) *$"
323
+ - :default: "^(?<line>.*?) *$"
289
324
  :description: Pattern for notes in block selection menu
290
325
  :env_var: MDE_MENU_NOTE_MATCH
291
326
  :opt_name: menu_note_match
@@ -370,16 +405,6 @@
370
405
  :env_var: MDE_NO_CHROME
371
406
  :opt_name: no_chrome
372
407
  :procname: val_as_bool
373
- - :default: " #=#=#"
374
- :description: Output divider
375
- :env_var: MDE_OUTPUT_DIVIDER
376
- :opt_name: output_divider
377
- :procname: val_as_str
378
- - :default: yellow
379
- :description: Color of output divider
380
- :env_var: MDE_OUTPUT_DIVIDER_COLOR
381
- :opt_name: output_divider_color
382
- :procname: val_as_str
383
408
  - :arg_name: BOOL
384
409
  :default: false
385
410
  :description: Display summary for execution
@@ -387,6 +412,21 @@
387
412
  :long_name: output-execution-summary
388
413
  :opt_name: output_execution_summary
389
414
  :procname: val_as_bool
415
+ - :default: "%{name}: %{value}"
416
+ :description: format for menu dividers and demarcations
417
+ :env_var: MDE_OUTPUT_EXECUTION_LABEL_FORMAT
418
+ :opt_name: output_execution_label_format
419
+ :procname: val_as_str
420
+ - :default: yellow
421
+ :description: Color of output_execution_label_name
422
+ :env_var: MDE_OUTPUT_EXECUTION_LABEL_NAME_COLOR
423
+ :opt_name: output_execution_label_name_color
424
+ :procname: val_as_str
425
+ - :default: plain
426
+ :description: Color of output_execution_label_value
427
+ :env_var: MDE_OUTPUT_EXECUTION_LABEL_VALUE_COLOR
428
+ :opt_name: output_execution_label_value_color
429
+ :procname: val_as_str
390
430
  - :arg_name: BOOL
391
431
  :default: false
392
432
  :description: Output saved script filename at end of execution
@@ -422,19 +462,28 @@
422
462
  - :arg_name: BOOL
423
463
  :default: true
424
464
  :description: Pause afte executing a BASH block
425
- :env_var: MDE_PAUSE_AFTER_BASH_EXEC
426
- :opt_name: pause_after_bash_exec
465
+ :env_var: MDE_PAUSE_after_script_execution
466
+ :opt_name: pause_after_script_execution
427
467
  :procname: val_as_bool
428
- - :default: Continue?
429
- :description: Prompt to continue
430
- :env_var: MDE_PROMPT_AFTER_BASH_EXEC
431
- :opt_name: prompt_after_bash_exec
432
- :procname: val_as_str
433
- - :default: Process?
468
+ - :default: |2-
469
+
470
+ Continue?
471
+ :description: Prompt after script execution
472
+ :env_var: MDE_PROMPT_after_script_execution
473
+ :opt_name: prompt_after_script_execution
474
+ :procname: val_as_str
475
+ - :default: |2-
476
+
477
+ Process?
434
478
  :description: Prompt to approve a block
435
479
  :env_var: MDE_PROMPT_APPROVE_BLOCK
436
480
  :opt_name: prompt_approve_block
437
481
  :procname: val_as_str
482
+ - :default: cyan
483
+ :description: Color of prompt after script execution
484
+ :env_var: MDE_PROMPT_COLOR_AFTER_SCRIPT_EXECUTION
485
+ :opt_name: prompt_color_after_script_execution
486
+ :procname: val_as_str
438
487
  - :default: Exit
439
488
  :description: Prompt to exit app
440
489
  :env_var: MDE_PROMPT_EXIT
@@ -455,17 +504,23 @@
455
504
  :env_var: MDE_PROMPT_SCRIPT_TO_CLIPBOARD
456
505
  :opt_name: prompt_script_to_clipboard
457
506
  :procname: val_as_str
458
- - :default: 'Choose a block:'
507
+ - :default: |2-
508
+
509
+ Choose a block:
459
510
  :description: Prompt to select a block
460
511
  :env_var: MDE_PROMPT_SELECT_BLOCK
461
512
  :opt_name: prompt_select_block
462
513
  :procname: val_as_str
463
- - :default: 'Choose a file:'
514
+ - :default: |2-
515
+
516
+ Choose a file:
464
517
  :description: Prompt to select a markdown document
465
518
  :env_var: MDE_PROMPT_SELECT_MD
466
519
  :opt_name: prompt_select_md
467
520
  :procname: val_as_str
468
- - :default: 'Choose a file:'
521
+ - :default: |2-
522
+
523
+ Choose a file:
469
524
  :description: Prompt to select a saved file
470
525
  :env_var: MDE_PROMPT_SELECT_OUTPUT
471
526
  :opt_name: prompt_select_output
@@ -497,6 +552,16 @@
497
552
  :long_name: save-execution-output
498
553
  :opt_name: save_execution_output
499
554
  :procname: val_as_bool
555
+ - :default: "/"
556
+ :description: Pattern to replace in file names
557
+ :env_var: MDE_SAVED_FILENAME_PATTERN
558
+ :opt_name: saved_filename_pattern
559
+ :procname: val_as_str
560
+ - :default: ",~"
561
+ :description: Replacement for pattern in file names
562
+ :env_var: MDE_SAVED_FILENAME_REPLACEMENT
563
+ :opt_name: saved_filename_replacement
564
+ :procname: val_as_str
500
565
  - :arg_name: INT
501
566
  :default: 493
502
567
  :description: chmod for saved scripts
@@ -535,6 +600,40 @@
535
600
  :env_var: MDE_SAVED_STDOUT_GLOB
536
601
  :opt_name: saved_stdout_glob
537
602
  :procname: val_as_str
603
+ - :default: green
604
+ :description: script_execution_frame_color
605
+ :env_var: MDE_SCRIPT_EXECUTION_FRAME_COLOR
606
+ :opt_name: script_execution_frame_color
607
+ :procname: val_as_str
608
+ - :default: |2-
609
+
610
+ -^-
611
+ :description: script_execution_head
612
+ :env_var: MDE_SCRIPT_EXECUTION_HEAD
613
+ :opt_name: script_execution_head
614
+ :procname: val_as_str
615
+ - :default: " -v-\n"
616
+ :description: script_execution_tail
617
+ :env_var: MDE_SCRIPT_EXECUTION_TAIL
618
+ :opt_name: script_execution_tail
619
+ :procname: val_as_str
620
+ - :default: yellow
621
+ :description: Color of output divider
622
+ :env_var: MDE_OUTPUT_DIVIDER_COLOR
623
+ :opt_name: script_preview_frame_color
624
+ :procname: val_as_str
625
+ - :default: |2-
626
+
627
+ -^-
628
+ :description: script_preview_head
629
+ :env_var: MDE_SCRIPT_PREVIEW_HEAD
630
+ :opt_name: script_preview_head
631
+ :procname: val_as_str
632
+ - :default: " -v-\n"
633
+ :description: script_preview_tail
634
+ :env_var: MDE_SCRIPT_PREVIEW_TAIL
635
+ :opt_name: script_preview_tail
636
+ :procname: val_as_str
538
637
  - :arg_name: REGEX
539
638
  :default:
540
639
  :description: Select blocks with name matching
@@ -586,6 +685,16 @@
586
685
  :long_name: version
587
686
  :procname: version
588
687
  :short_name: v
688
+ - :default: red
689
+ :description: Color of warning message
690
+ :env_var: MDE_WARNING_COLOR
691
+ :opt_name: warning_color
692
+ :procname: val_as_str
693
+ - :default: 'Error: %{error}'
694
+ :description: Format of warning message
695
+ :env_var: MDE_WARNING_FORMAT
696
+ :opt_name: warning_format
697
+ :procname: val_as_str
589
698
  - :arg_name: INT.0-3
590
699
  :default: 1
591
700
  :description: Output display level (0 to 3 [data, +context, +info])
data/lib/method_sorter.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'ripper'
2
4
  require 'parser/current'
3
5
 
@@ -16,10 +18,10 @@ class MethodSorter
16
18
 
17
19
  method_nodes = []
18
20
 
19
- # Look for method def nodes within each child node
21
+ # Look for method def nodes within each child node
20
22
  class_node.children.compact.each do |child|
21
23
  if child.type == :begin
22
- method_nodes += child.children.select {|n| n.type == :def}
24
+ method_nodes += child.children.select { |n| n.type == :def }
23
25
  end
24
26
  end
25
27
 
@@ -30,44 +32,44 @@ class MethodSorter
30
32
  # return
31
33
  # end
32
34
 
33
- # method_nodes = class_node.children.compact.select { |node|
35
+ # method_nodes = class_node.children.compact.select { |node|
34
36
  # node.type == :def
35
- # }
37
+ # }
36
38
 
37
- sorted_methods = method_nodes.sort_by{ |n| n.children[0].to_s }
39
+ sorted_methods = method_nodes.sort_by { |n| n.children[0].to_s }
38
40
  ripper = Ripper.sexp(file_contents)
39
- lines = ripper.each_with_index.map{|sexp, index| [sexp, index] }
40
-
41
+ lines = ripper.each_with_index.map { |sexp, index| [sexp, index] }
42
+
41
43
  method_ranges = get_method_ranges(lines, method_nodes)
42
-
44
+
43
45
  result = replace_method_ranges(lines, method_ranges, sorted_methods)
44
-
45
- puts result.compact.select{|v|v.is_a? String}.join("\n")
46
+
47
+ puts result.compact.select { |v| v.is_a? String }.join("\n")
46
48
  # File.write(@file_path, result.join)
47
49
  end
48
50
 
49
51
  private
50
-
52
+
51
53
  def get_method_ranges(lines, method_nodes)
52
54
  method_nodes.map do |method_node|
53
55
  start_line = method_node.loc.line - 1
54
56
  end_line = start_line
55
-
57
+
56
58
  while end_line < lines.size && lines[end_line][0] !~ /^end/
57
59
  end_line += 1
58
60
  end
59
-
61
+
60
62
  (start_line..end_line)
61
63
  end
62
64
  end
63
-
65
+
64
66
  def replace_method_ranges(lines, ranges, sorted_methods)
65
67
  result = lines.dup
66
-
68
+
67
69
  ranges.each_with_index do |range, index|
68
- result[range] = sorted_methods[index].loc.expression.source.split("\n")
70
+ result[range] = sorted_methods[index].loc.expression.source.split("\n")
69
71
  end
70
-
72
+
71
73
  result
72
74
  end
73
75
  end
@@ -43,7 +43,7 @@ class Object
43
43
  when 'FalseClass', 'TrueClass'
44
44
  true
45
45
  else
46
- self && (!respond_to?(:blank?) || !blank?)
46
+ self && (!respond_to?(:present?) || !present?)
47
47
  end
48
48
  end
49
49
  end
data/lib/option_value.rb CHANGED
@@ -65,7 +65,8 @@ if $PROGRAM_NAME == __FILE__
65
65
  end
66
66
 
67
67
  def test_for_hash_with_empty_value
68
- assert_equal 'default', MarkdownExec::OptionValue.for_hash([], 'default')
68
+ assert_equal 'default',
69
+ MarkdownExec::OptionValue.for_hash([], 'default')
69
70
  end
70
71
 
71
72
  def test_for_yaml_with_string
@@ -82,7 +83,8 @@ if $PROGRAM_NAME == __FILE__
82
83
  end
83
84
 
84
85
  def test_for_yaml_with_empty_value
85
- assert_equal 'default', MarkdownExec::OptionValue.for_yaml([], 'default')
86
+ assert_equal 'default',
87
+ MarkdownExec::OptionValue.for_yaml([], 'default')
86
88
  end
87
89
  end
88
90
  end