markdown_exec 3.5.1 → 3.5.2
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.
- checksums.yaml +4 -4
- data/.ai-agent-instructions +54 -0
- data/.cursorrules +198 -0
- data/.rubocop.wide.yml +5 -0
- data/.rubocop.yml +7 -2
- data/CHANGELOG.md +12 -1
- data/Gemfile.lock +1 -1
- data/Rakefile +2 -0
- data/ai-principles.md +516 -0
- data/architecture-decisions.md +190 -0
- data/bats/block-hide.bats +1 -1
- data/bats/block-type-bash.bats +5 -5
- data/bats/block-type-link.bats +1 -1
- data/bats/block-type-opts.bats +3 -3
- data/bats/block-type-port.bats +2 -2
- data/bats/block-type-shell-require-ux.bats +2 -2
- data/bats/block-type-ux-allowed.bats +4 -4
- data/bats/block-type-ux-auto.bats +1 -1
- data/bats/block-type-ux-chained.bats +1 -1
- data/bats/block-type-ux-default.bats +1 -1
- data/bats/block-type-ux-echo-hash-transform.bats +1 -1
- data/bats/block-type-ux-echo-hash.bats +2 -2
- data/bats/block-type-ux-echo.bats +3 -3
- data/bats/block-type-ux-exec-hash-transform.bats +1 -1
- data/bats/block-type-ux-exec-hash.bats +2 -2
- data/bats/block-type-ux-exec.bats +1 -1
- data/bats/block-type-ux-force.bats +1 -1
- data/bats/block-type-ux-formats.bats +1 -1
- data/bats/block-type-ux-hidden.bats +1 -1
- data/bats/block-type-ux-invalid.bats +1 -1
- data/bats/block-type-ux-readonly.bats +1 -1
- data/bats/block-type-ux-require-chained.bats +2 -2
- data/bats/block-type-ux-require-context.bats +2 -2
- data/bats/block-type-ux-require.bats +2 -2
- data/bats/block-type-ux-required-variables.bats +1 -1
- data/bats/block-type-ux-row-format.bats +1 -1
- data/bats/block-type-ux-sources.bats +4 -4
- data/bats/block-type-ux-transform.bats +1 -1
- data/bats/block-type-vars.bats +3 -3
- data/bats/border.bats +1 -1
- data/bats/cli.bats +11 -11
- data/bats/command-substitution-options.bats +2 -2
- data/bats/command-substitution.bats +1 -1
- data/bats/document-shell.bats +1 -1
- data/bats/history.bats +5 -5
- data/bats/import-conflict.bats +1 -1
- data/bats/import-directive-line-continuation.bats +1 -1
- data/bats/import-directive-parameter-symbols.bats +1 -1
- data/bats/import-duplicates.bats +6 -6
- data/bats/import-parameter-symbols.bats +1 -1
- data/bats/import-with-text-substitution.bats +1 -1
- data/bats/import.bats +3 -3
- data/bats/indented-block-type-vars.bats +1 -1
- data/bats/indented-multi-line-output.bats +1 -1
- data/bats/line-decor-dynamic.bats +1 -1
- data/bats/line-wrapping.bats +1 -1
- data/bats/load-vars-state-demo.bats +4 -4
- data/bats/markup.bats +4 -4
- data/bats/mde.bats +4 -4
- data/bats/option-expansion.bats +1 -1
- data/bats/options-collapse.bats +4 -4
- data/bats/options.bats +47 -17
- data/bats/plain.bats +1 -1
- data/bats/publish.bats +2 -2
- data/bats/table-column-truncate.bats +1 -1
- data/bats/table.bats +2 -2
- data/bats/variable-expansion-multiline.bats +1 -1
- data/bats/variable-expansion.bats +6 -6
- data/conversation-template.md +611 -0
- data/docs/block-execution-modes.md +177 -0
- data/docs/block-filtering.md +252 -0
- data/docs/block-naming-patterns.md +210 -0
- data/docs/block-scanning-patterns.md +248 -0
- data/docs/cli-reference.md +370 -0
- data/docs/dev/block-hide.md +1 -1
- data/docs/dev/block-type-ux-transform.md +5 -4
- data/docs/dev/print_bytes.md +3 -0
- data/docs/dev/shebang.md +6 -0
- data/docs/docker-testing.md +5 -0
- data/docs/execution-control.md +384 -0
- data/docs/getting-started.md +209 -0
- data/docs/import-options.md +391 -0
- data/docs/tab-completion.md +7 -0
- data/docs/ux-blocks.md +376 -0
- data/examples/linked1.md +8 -1
- data/implementation-decisions.md +212 -0
- data/lib/cached_nested_file_reader.rb +138 -1
- data/lib/command_result.rb +27 -6
- data/lib/executed_shell_command.rb +512 -0
- data/lib/filter.rb +7 -7
- data/lib/hash_delegator.rb +403 -350
- data/lib/link_history.rb +22 -11
- data/lib/markdown_exec/version.rb +1 -1
- data/lib/mdoc.rb +103 -44
- data/lib/menu.src.yml +110 -83
- data/lib/menu.yml +149 -83
- data/lib/transformed_shell_command.rb +449 -0
- data/lib/wl.rb +15 -0
- data/lib/ww.rb +16 -5
- data/requirements.md +111 -0
- data/semantic-tokens.md +132 -0
- data/tasks.md +69 -0
- metadata +26 -4
- data/docs/ux-blocks-examples.md +0 -120
- data/docs/ux-blocks-init-act.md +0 -100
data/lib/menu.src.yml
CHANGED
|
@@ -32,21 +32,25 @@
|
|
|
32
32
|
|
|
33
33
|
- :opt_name: block_batch_match
|
|
34
34
|
:env_var: MDE_BLOCK_BATCH_MATCH
|
|
35
|
+
:description: Pattern to match blocks that should be executed in batch mode
|
|
35
36
|
:default: '@batch'
|
|
36
37
|
:procname: val_as_str
|
|
37
38
|
|
|
38
39
|
- :opt_name: block_calls_scan
|
|
39
40
|
:env_var: MDE_BLOCK_CALLS_SCAN
|
|
41
|
+
:description: Regex pattern to extract call names from block start lines (e.g., %call_name)
|
|
40
42
|
:default: "%\\([^\\)]+\\)"
|
|
41
43
|
:procname: val_as_str
|
|
42
44
|
|
|
43
45
|
- :opt_name: block_disable_match
|
|
44
46
|
:env_var: MDE_BLOCK_DISABLE_MATCH
|
|
47
|
+
:description: Pattern to match blocks that should be disabled (not executable)
|
|
45
48
|
:default: '@disable'
|
|
46
49
|
:procname: val_as_str
|
|
47
50
|
|
|
48
51
|
- :opt_name: block_interactive_match
|
|
49
52
|
:env_var: MDE_BLOCK_INTERACTIVE_MATCH
|
|
53
|
+
:description: Pattern to match blocks that should be executed in interactive mode
|
|
50
54
|
:default: '@interactive'
|
|
51
55
|
:procname: val_as_str
|
|
52
56
|
|
|
@@ -60,42 +64,44 @@
|
|
|
60
64
|
:procname: val_as_str
|
|
61
65
|
|
|
62
66
|
- :opt_name: block_name_hidden_match
|
|
63
|
-
:env_var:
|
|
64
|
-
:description:
|
|
65
|
-
:default: "
|
|
67
|
+
:env_var: MDE_BLOCK_NAME_HIDE_CUSTOM_MATCH
|
|
68
|
+
:description: Regex pattern for block names that should be hidden from the menu
|
|
69
|
+
:default: "^\\(.*\\)$"
|
|
66
70
|
:procname: val_as_str
|
|
67
71
|
|
|
68
|
-
- :opt_name:
|
|
69
|
-
:env_var:
|
|
70
|
-
:description:
|
|
71
|
-
:default: "
|
|
72
|
+
- :opt_name: block_name_hide_custom_match
|
|
73
|
+
:env_var: MDE_BLOCK_NAME_HIDE_CUSTOM_MATCH
|
|
74
|
+
:description: Regex pattern for block names that should be hidden from the menu
|
|
75
|
+
:default: "^-.+-$"
|
|
72
76
|
:procname: val_as_str
|
|
73
77
|
|
|
74
78
|
- :opt_name: block_name_match
|
|
75
79
|
:env_var: MDE_BLOCK_NAME_MATCH
|
|
76
|
-
:description:
|
|
80
|
+
:description: Regex pattern to extract the block name from the fenced code block start line
|
|
77
81
|
:default: ":(?<title>\\S+)( |$)"
|
|
78
82
|
:procname: val_as_str
|
|
79
83
|
|
|
80
84
|
- :opt_name: block_name_nick_match
|
|
81
85
|
:env_var: MDE_BLOCK_NAME_NICK_MATCH
|
|
82
|
-
:description:
|
|
86
|
+
:description: Regex pattern for block nicknames (alternative names not displayed in menu)
|
|
83
87
|
:default: "^\\[.*\\]$"
|
|
84
88
|
:procname: val_as_str
|
|
85
89
|
|
|
86
90
|
- :opt_name: block_name_wrapper_match
|
|
87
91
|
:env_var: MDE_BLOCK_NAME_WRAPPER_MATCH
|
|
88
|
-
:description:
|
|
92
|
+
:description: Regex pattern for block names that act as wrappers (include other blocks)
|
|
89
93
|
:default: "^{.+}$"
|
|
90
94
|
:procname: val_as_str
|
|
91
95
|
|
|
92
96
|
- :opt_name: block_required_scan
|
|
93
97
|
:env_var: MDE_BLOCK_REQUIRED_SCAN
|
|
98
|
+
:description: Regex pattern to scan block body for required dependencies (e.g., +blockname)
|
|
94
99
|
:default: "\\+\\S+"
|
|
95
100
|
:procname: val_as_str
|
|
96
101
|
|
|
97
102
|
- :opt_name: block_stdin_scan
|
|
98
103
|
:env_var: MDE_BLOCK_STDIN_SCAN
|
|
104
|
+
:description: Regex pattern to scan block body for stdin redirection (e.g., <variable or <$variable)
|
|
99
105
|
:default: "<(?<full>(?<type>\\$)?(?<name>[A-Za-z_\\-\\.\\w]+))"
|
|
100
106
|
:procname: val_as_str
|
|
101
107
|
|
|
@@ -107,50 +113,52 @@
|
|
|
107
113
|
|
|
108
114
|
- :opt_name: block_type_default
|
|
109
115
|
:env_var: MDE_BLOCK_TYPE_DEFAULT
|
|
116
|
+
:description: Default shell type for blocks when no type is specified in the fenced code block
|
|
110
117
|
:default: bash
|
|
111
118
|
:procname: val_as_str
|
|
112
119
|
|
|
113
120
|
- :opt_name: block_type_port_set_format
|
|
114
121
|
:env_var: MDE_BLOCK_TYPE_PORT_SET_FORMAT
|
|
122
|
+
:description: Format string for generating shell variable assignments from PORT block content
|
|
115
123
|
:default: ": ${%{key}:=%{value}}"
|
|
116
124
|
:procname: val_as_str
|
|
117
125
|
|
|
118
126
|
- :opt_name: blocks
|
|
119
127
|
:arg_name: MESSAGE
|
|
120
128
|
:default:
|
|
121
|
-
:description: List
|
|
129
|
+
:description: List all code blocks in the document with optional message format
|
|
122
130
|
:env_var: MDE_BLOCKS_LIST_MESSAGE
|
|
123
131
|
:long_name: blocks
|
|
124
132
|
:procname: val_as_str
|
|
125
133
|
|
|
126
134
|
- :opt_name: clear_screen_for_select_block
|
|
127
135
|
:env_var: MDE_CLEAR_SCREEN_FOR_SELECT_BLOCK
|
|
128
|
-
:description:
|
|
136
|
+
:description: Clear the screen before displaying the block selection menu
|
|
129
137
|
:arg_name: BOOL
|
|
130
138
|
:default: true
|
|
131
139
|
:procname: val_as_bool
|
|
132
140
|
|
|
133
141
|
- :opt_name: command_substitution_name_capture_group
|
|
134
142
|
:env_var: MDE_COMMAND_SUBSTITUTION_NAME_CAPTURE_GROUP
|
|
135
|
-
:description:
|
|
143
|
+
:description: Named capture group name that extracts the command from command substitution matches
|
|
136
144
|
:default: command
|
|
137
145
|
:procname: val_as_str
|
|
138
146
|
|
|
139
147
|
- :opt_name: command_substitution_regexp
|
|
140
148
|
:env_var: MDE_COMMAND_SUBSTITUTION_REGEXP
|
|
141
|
-
:description:
|
|
149
|
+
:description: Regex pattern that matches command substitutions (e.g., $(command))
|
|
142
150
|
:default: "(?<expression>\\$\\((?<command>([^()]*(\\([^()]*\\))*[^()]*)*)\\))"
|
|
143
151
|
:procname: val_as_str
|
|
144
152
|
|
|
145
153
|
- :long_name: config
|
|
146
|
-
:description: Read configuration file
|
|
154
|
+
:description: Read configuration file from specified path
|
|
147
155
|
:arg_name: PATH
|
|
148
156
|
:default: "."
|
|
149
157
|
:procname: path
|
|
150
158
|
|
|
151
159
|
- :opt_name: debounce_execution
|
|
152
160
|
:env_var: MDE_DEBOUNCE_EXECUTION
|
|
153
|
-
:description:
|
|
161
|
+
:description: Whether to prompt before re-executing the same block multiple times
|
|
154
162
|
:arg_name: BOOL
|
|
155
163
|
:default: true
|
|
156
164
|
:procname: val_as_bool
|
|
@@ -158,24 +166,25 @@
|
|
|
158
166
|
- :long_name: debug
|
|
159
167
|
:short_name: d
|
|
160
168
|
:env_var: MDE_DEBUG
|
|
161
|
-
:description:
|
|
169
|
+
:description: Enable debug output with detailed internal information
|
|
162
170
|
:arg_name: BOOL
|
|
163
171
|
:default: false
|
|
164
172
|
:procname: debug
|
|
165
173
|
|
|
166
174
|
- :opt_name: default_find_select_open
|
|
167
175
|
:env_var: MDE_DEFAULT_FIND_SELECT_OPEN
|
|
168
|
-
:description:
|
|
176
|
+
:description: Whether to search for files when a filename argument doesn't exist
|
|
169
177
|
:arg_name: BOOL
|
|
170
178
|
:default: true
|
|
171
179
|
:procname: val_as_bool
|
|
172
180
|
|
|
173
181
|
- :opt_name: dig
|
|
174
182
|
:long_name: dig
|
|
175
|
-
:description:
|
|
183
|
+
:description: Present interactive menu of execution history
|
|
176
184
|
|
|
177
185
|
- :opt_name: display_level_xbase_prefix
|
|
178
186
|
:env_var: MDE_DISPLAY_LEVEL_XBASE_PREFIX
|
|
187
|
+
:description: Text prefix prepended to output lines when display level is above base level
|
|
179
188
|
:default: "> "
|
|
180
189
|
:procname: val_as_str
|
|
181
190
|
|
|
@@ -241,6 +250,7 @@
|
|
|
241
250
|
|
|
242
251
|
- :opt_name: document_play_bin
|
|
243
252
|
:env_var: MDE_DOCUMENT_PLAY_BIN
|
|
253
|
+
:description: Binary used for default block execution mode
|
|
244
254
|
:default: play
|
|
245
255
|
:procname: val_as_str
|
|
246
256
|
|
|
@@ -261,7 +271,7 @@
|
|
|
261
271
|
- :opt_name: dump_blocks_in_file
|
|
262
272
|
:long_name: dump-blocks-in-file
|
|
263
273
|
:env_var: MDE_DUMP_BLOCKS_IN_FILE
|
|
264
|
-
:description:
|
|
274
|
+
:description: Display parsed blocks from file (debug/diagnostic output, stage 1)
|
|
265
275
|
:arg_name: BOOL
|
|
266
276
|
:default: false
|
|
267
277
|
:procname: val_as_bool
|
|
@@ -269,7 +279,7 @@
|
|
|
269
279
|
- :opt_name: dump_delegate_object
|
|
270
280
|
:long_name: dump-delegate-object
|
|
271
281
|
:env_var: MDE_DUMP_DELEGATE_OBJECT
|
|
272
|
-
:description:
|
|
282
|
+
:description: Display internal delegate object state (debug/diagnostic output)
|
|
273
283
|
:arg_name: BOOL
|
|
274
284
|
:default: false
|
|
275
285
|
:procname: val_as_bool
|
|
@@ -277,7 +287,7 @@
|
|
|
277
287
|
- :opt_name: dump_dependencies
|
|
278
288
|
:long_name: dump-dependencies
|
|
279
289
|
:env_var: MDE_DUMP_DEPENDENCIES
|
|
280
|
-
:description:
|
|
290
|
+
:description: Display block dependency relationships (debug/diagnostic output)
|
|
281
291
|
:arg_name: BOOL
|
|
282
292
|
:default: false
|
|
283
293
|
:procname: val_as_bool
|
|
@@ -285,7 +295,7 @@
|
|
|
285
295
|
- :opt_name: dump_inherited_block_names
|
|
286
296
|
:long_name: dump-inherited-block-names
|
|
287
297
|
:env_var: MDE_DUMP_INHERITED_BLOCK_NAMES
|
|
288
|
-
:description:
|
|
298
|
+
:description: Display inherited block names from imported documents (debug/diagnostic output)
|
|
289
299
|
:arg_name: BOOL
|
|
290
300
|
:default: false
|
|
291
301
|
:procname: val_as_bool
|
|
@@ -293,7 +303,7 @@
|
|
|
293
303
|
- :opt_name: dump_inherited_dependencies
|
|
294
304
|
:long_name: dump-inherited-dependencies
|
|
295
305
|
:env_var: MDE_DUMP_INHERITED_DEPENDENCIES
|
|
296
|
-
:description:
|
|
306
|
+
:description: Display inherited dependencies from imported documents (debug/diagnostic output)
|
|
297
307
|
:arg_name: BOOL
|
|
298
308
|
:default: false
|
|
299
309
|
:procname: val_as_bool
|
|
@@ -301,7 +311,7 @@
|
|
|
301
311
|
- :opt_name: dump_inherited_lines
|
|
302
312
|
:long_name: dump-inherited-lines
|
|
303
313
|
:env_var: MDE_DUMP_INHERITED_LINES
|
|
304
|
-
:description:
|
|
314
|
+
:description: Display inherited code lines from imported documents (debug/diagnostic output)
|
|
305
315
|
:arg_name: BOOL
|
|
306
316
|
:default: false
|
|
307
317
|
:procname: val_as_bool
|
|
@@ -309,7 +319,7 @@
|
|
|
309
319
|
- :opt_name: dump_menu_blocks
|
|
310
320
|
:long_name: dump-menu-blocks
|
|
311
321
|
:env_var: MDE_DUMP_MENU_BLOCKS
|
|
312
|
-
:description:
|
|
322
|
+
:description: Display blocks formatted for menu display (debug/diagnostic output, stage 2)
|
|
313
323
|
:arg_name: BOOL
|
|
314
324
|
:default: false
|
|
315
325
|
:procname: val_as_bool
|
|
@@ -317,7 +327,7 @@
|
|
|
317
327
|
- :opt_name: dump_selected_block
|
|
318
328
|
:long_name: dump-selected-block
|
|
319
329
|
:env_var: MDE_DUMP_SELECTED_BLOCK
|
|
320
|
-
:description:
|
|
330
|
+
:description: Display selected block details (debug/diagnostic output)
|
|
321
331
|
:arg_name: BOOL
|
|
322
332
|
:default: false
|
|
323
333
|
:procname: val_as_bool
|
|
@@ -348,21 +358,21 @@
|
|
|
348
358
|
|
|
349
359
|
- :opt_name: exclude_by_name_regex
|
|
350
360
|
:env_var: MDE_EXCLUDE_BY_NAME_REGEX
|
|
351
|
-
:description:
|
|
361
|
+
:description: Regex pattern to exclude blocks whose names match
|
|
352
362
|
:arg_name: REGEX
|
|
353
363
|
:default:
|
|
354
364
|
:procname: val_as_str
|
|
355
365
|
|
|
356
366
|
- :opt_name: exclude_by_shell_regex
|
|
357
367
|
:env_var: MDE_EXCLUDE_BY_SHELL_REGEX
|
|
358
|
-
:description:
|
|
368
|
+
:description: Regex pattern to exclude blocks whose shell type matches
|
|
359
369
|
:arg_name: REGEX
|
|
360
370
|
:default:
|
|
361
371
|
:procname: val_as_str
|
|
362
372
|
|
|
363
373
|
- :opt_name: exclude_expect_blocks
|
|
364
374
|
:env_var: MDE_EXCLUDE_EXPECT_BLOCKS
|
|
365
|
-
:description:
|
|
375
|
+
:description: Whether to exclude all blocks of type "expect" from menus
|
|
366
376
|
:arg_name: BOOL
|
|
367
377
|
:default: true
|
|
368
378
|
:procname: val_as_bool
|
|
@@ -414,23 +424,23 @@
|
|
|
414
424
|
|
|
415
425
|
- :opt_name: execution_report_preview_frame_color
|
|
416
426
|
:env_var: MDE_EXECUTION_REPORT_PREVIEW_FRAME_COLOR
|
|
417
|
-
:description:
|
|
427
|
+
:description: Text color for the frame around execution report previews
|
|
418
428
|
:default: fg_rgbh_90_e0_90 # Light green - consistent with allow/success colors
|
|
419
429
|
:procname: val_as_str
|
|
420
430
|
|
|
421
431
|
- :opt_name: execution_report_preview_head
|
|
422
432
|
:env_var: MDE_EXECUTION_REPORT_PREVIEW_HEAD
|
|
423
|
-
:description:
|
|
433
|
+
:description: Text displayed before execution report preview content
|
|
424
434
|
:procname: val_as_str
|
|
425
435
|
|
|
426
436
|
- :opt_name: execution_report_preview_tail
|
|
427
|
-
:description:
|
|
437
|
+
:description: Text displayed after execution report preview content
|
|
428
438
|
:default: " -v-"
|
|
429
439
|
:procname: val_as_str
|
|
430
440
|
|
|
431
441
|
- :long_name: exit
|
|
432
442
|
:short_name: x
|
|
433
|
-
:description: Exit
|
|
443
|
+
:description: Exit the application immediately
|
|
434
444
|
:procname: exit
|
|
435
445
|
|
|
436
446
|
## match fenced code indented by spaces
|
|
@@ -458,7 +468,7 @@
|
|
|
458
468
|
|
|
459
469
|
- :long_name: find
|
|
460
470
|
:short_name: "?"
|
|
461
|
-
:description:
|
|
471
|
+
:description: Search for keyword across documents, block names, and file contents
|
|
462
472
|
:arg_name: FIND
|
|
463
473
|
:default: ''
|
|
464
474
|
:procname: find
|
|
@@ -466,7 +476,7 @@
|
|
|
466
476
|
- :opt_name: find_path
|
|
467
477
|
:long_name: find-path
|
|
468
478
|
:env_var: MDE_FIND_PATH
|
|
469
|
-
:description:
|
|
479
|
+
:description: Directory path to search when using find command (uses path option if empty)
|
|
470
480
|
:arg_name: FIND_PATH
|
|
471
481
|
:default: ''
|
|
472
482
|
:procname: val_as_str
|
|
@@ -534,21 +544,26 @@
|
|
|
534
544
|
|
|
535
545
|
- :long_name: help
|
|
536
546
|
:short_name: h
|
|
537
|
-
:description:
|
|
547
|
+
:description: Display help message with usage and available options
|
|
538
548
|
:procname: help
|
|
539
549
|
|
|
540
550
|
- :opt_name: hide_blocks_by_name
|
|
541
551
|
:env_var: MDE_HIDE_BLOCKS_BY_NAME
|
|
542
|
-
:description:
|
|
543
|
-
|
|
544
|
-
|
|
552
|
+
:description: Whether to hide blocks whose names match block_name_hide_custom_match pattern
|
|
553
|
+
:arg_name: BOOL
|
|
554
|
+
:default: true
|
|
555
|
+
:procname: val_as_bool
|
|
556
|
+
|
|
557
|
+
- :opt_name: hide_shebang
|
|
558
|
+
:env_var: MDE_HIDE_SHEBANG
|
|
559
|
+
:description: Hide shebang lines in document output
|
|
545
560
|
:arg_name: BOOL
|
|
546
561
|
:default: true
|
|
547
562
|
:procname: val_as_bool
|
|
548
563
|
|
|
549
564
|
- :opt_name: history
|
|
550
565
|
:long_name: history
|
|
551
|
-
:description:
|
|
566
|
+
:description: Display execution history (saved scripts and output files)
|
|
552
567
|
|
|
553
568
|
- :opt_name: history_document_separator
|
|
554
569
|
:env_var: MDE_HISTORY_DOCUMENT_SEPARATOR
|
|
@@ -562,55 +577,64 @@
|
|
|
562
577
|
|
|
563
578
|
- :long_name: how
|
|
564
579
|
:short_name: "?"
|
|
565
|
-
:description:
|
|
580
|
+
:description: Search for keyword in YAML configuration option names and descriptions
|
|
566
581
|
:arg_name: HOW
|
|
567
582
|
:default: ''
|
|
568
583
|
:procname: how
|
|
569
584
|
|
|
570
585
|
- :opt_name: import_paths
|
|
571
586
|
:env_var: MDE_IMPORT_PATHS
|
|
587
|
+
:description: Colon-separated list of directory paths to search when resolving imported file names in @import directives
|
|
572
588
|
:default:
|
|
573
589
|
:procname: val_as_str
|
|
574
590
|
|
|
575
591
|
- :opt_name: import_directive_line_pattern
|
|
576
592
|
:env_var: MDE_IMPORT_PATTERN
|
|
593
|
+
:description: Regular expression pattern that matches @import directive lines, capturing indentation, filename, and optional parameters
|
|
577
594
|
:default: >-
|
|
578
595
|
^(?<indention> *)@import +(?<name>\S+)(?<params>(?: +\w+(?::(?:[ceqv]|[ceqv]{2})=|=)(?:"[^"]*"|'[^']*'|\S+))*) *\\?$
|
|
579
596
|
:procname: val_as_str
|
|
580
597
|
|
|
581
598
|
- :opt_name: import_directive_parameter_scan
|
|
582
599
|
:env_var: MDE_IMPORT_PATTERN_SCAN
|
|
600
|
+
:description: Regular expression pattern that extracts individual parameters (key, operator, value) from the params portion of an @import line
|
|
583
601
|
:default: >-
|
|
584
602
|
(\w+)(:[ceqv]{1,2}=|=)(?:"([^"]*)"|'([^']*)'|(\S+))
|
|
585
603
|
:procname: val_as_str
|
|
586
604
|
|
|
587
605
|
- :opt_name: import_parameter_variable_assignment
|
|
588
606
|
:env_var: MDE_IMPORT_PARAMETER_VARIABLE_ASSIGNMENT
|
|
607
|
+
:description: Format string used to generate shell variable assignments when parameters require command substitution or expression evaluation
|
|
589
608
|
:default: "%{key}=%{value}"
|
|
590
609
|
:procname: val_as_str
|
|
591
610
|
|
|
592
611
|
- :opt_name: import_symbol_command_substitution
|
|
593
612
|
:env_var: MDE_IMPORT_SYMBOL_COMMAND_SUBSTITUTION
|
|
613
|
+
:description: Symbol/operator (default ':c=') that indicates a parameter value should be treated as a shell command to execute, using the command output as the substitution value
|
|
594
614
|
:default: ':c='
|
|
595
615
|
:procname: val_as_str
|
|
596
616
|
|
|
597
617
|
- :opt_name: import_symbol_evaluated_expression
|
|
598
618
|
:env_var: MDE_IMPORT_SYMBOL_EVALUATED_EXPRESSION
|
|
619
|
+
:description: Symbol/operator (default ':e=') that indicates a parameter value should be treated as a shell expression to evaluate with variable expansion
|
|
599
620
|
:default: ':e='
|
|
600
621
|
:procname: val_as_str
|
|
601
622
|
|
|
602
623
|
- :opt_name: import_symbol_raw_literal
|
|
603
624
|
:env_var: MDE_IMPORT_SYMBOL_RAW_LITERAL
|
|
625
|
+
:description: Symbol/operator (default '=') that indicates a parameter value should be used as a raw literal string without any processing
|
|
604
626
|
:default: '='
|
|
605
627
|
:procname: val_as_str
|
|
606
628
|
|
|
607
629
|
- :opt_name: import_symbol_force_quoted_literal
|
|
608
630
|
:env_var: MDE_IMPORT_SYMBOL_FORCE_QUOTED_LITERAL
|
|
631
|
+
:description: Symbol/operator (default ':q=') that indicates a parameter value should be treated as a literal string and automatically wrapped in double quotes during substitution
|
|
609
632
|
:default: ':q='
|
|
610
633
|
:procname: val_as_str
|
|
611
634
|
|
|
612
635
|
- :opt_name: import_symbol_variable_reference
|
|
613
636
|
:env_var: MDE_IMPORT_SYMBOL_VARIABLE_REFERENCE
|
|
637
|
+
:description: Symbol/operator (default ':v=') that indicates a parameter value should be treated as a reference to an existing variable from the importing document
|
|
614
638
|
:default: ':v='
|
|
615
639
|
:procname: val_as_str
|
|
616
640
|
|
|
@@ -651,12 +675,12 @@
|
|
|
651
675
|
|
|
652
676
|
- :opt_name: list_blocks
|
|
653
677
|
:long_name: list-blocks
|
|
654
|
-
:description: List blocks
|
|
678
|
+
:description: List all available code blocks in the document
|
|
655
679
|
|
|
656
680
|
- :opt_name: list_blocks_eval
|
|
657
681
|
:long_name: list-blocks-eval
|
|
658
682
|
:env_var: MDE_LIST_BLOCKS_EVAL
|
|
659
|
-
:description:
|
|
683
|
+
:description: Ruby expression to evaluate on each block for list output (overrides list-blocks-message)
|
|
660
684
|
:arg_name: EVAL
|
|
661
685
|
:default:
|
|
662
686
|
:procname: val_as_str
|
|
@@ -664,7 +688,7 @@
|
|
|
664
688
|
- :opt_name: list_blocks_message
|
|
665
689
|
:long_name: list-blocks-message
|
|
666
690
|
:env_var: MDE_LIST_BLOCKS_MESSAGE
|
|
667
|
-
:description:
|
|
691
|
+
:description: Block method or property to display for each block in list output
|
|
668
692
|
:arg_name: MESSAGE
|
|
669
693
|
:default: oname
|
|
670
694
|
:procname: val_as_sym
|
|
@@ -672,7 +696,7 @@
|
|
|
672
696
|
- :opt_name: list_blocks_type
|
|
673
697
|
:long_name: list-blocks-type
|
|
674
698
|
:env_var: MDE_LIST_BLOCKS_TYPE
|
|
675
|
-
:description:
|
|
699
|
+
:description: Filter blocks by type for list output (0=all, 1=bash, 2=ux, etc.)
|
|
676
700
|
:arg_name: TYPE
|
|
677
701
|
:default: 0
|
|
678
702
|
:procname: val_as_int
|
|
@@ -687,37 +711,37 @@
|
|
|
687
711
|
|
|
688
712
|
- :opt_name: list_default_env
|
|
689
713
|
:long_name: list-default-env
|
|
690
|
-
:description:
|
|
714
|
+
:description: Display all default configuration options as environment variable assignments
|
|
691
715
|
|
|
692
716
|
- :opt_name: list_default_yaml
|
|
693
717
|
:long_name: list-default-yaml
|
|
694
|
-
:description:
|
|
718
|
+
:description: Display all default configuration options in YAML format
|
|
695
719
|
|
|
696
720
|
- :opt_name: list_docs
|
|
697
721
|
:long_name: list-docs
|
|
698
|
-
:description: List
|
|
722
|
+
:description: List all markdown documents in the current directory or specified path
|
|
699
723
|
|
|
700
724
|
- :opt_name: list_output_format
|
|
701
725
|
:long_name: format
|
|
702
726
|
:env_var: MDE_OUTPUT_LIST_FORMAT
|
|
703
|
-
:description:
|
|
727
|
+
:description: Output format for list commands (text, json, yaml, etc.)
|
|
704
728
|
:arg_name: FORMAT
|
|
705
729
|
:default: text
|
|
706
730
|
:procname: val_as_sym
|
|
707
731
|
|
|
708
732
|
- :opt_name: list_recent_output
|
|
709
733
|
:long_name: list-recent-output
|
|
710
|
-
:description: List
|
|
734
|
+
:description: List recently saved execution output files
|
|
711
735
|
|
|
712
736
|
- :opt_name: list_recent_scripts
|
|
713
737
|
:long_name: list-recent-scripts
|
|
714
|
-
:description: List
|
|
738
|
+
:description: List recently saved executed scripts
|
|
715
739
|
|
|
716
740
|
- :opt_name: load_code
|
|
717
741
|
:long_name: load-code
|
|
718
742
|
:short_name: l
|
|
719
743
|
:env_var: MDE_LOAD_CODE
|
|
720
|
-
:description: Load code
|
|
744
|
+
:description: Load code from external file into document context as inherited lines
|
|
721
745
|
:arg_name: PATH
|
|
722
746
|
:default: ''
|
|
723
747
|
:procname: val_as_str
|
|
@@ -747,7 +771,7 @@
|
|
|
747
771
|
|
|
748
772
|
- :opt_name: menu_active_color_pastel_messages
|
|
749
773
|
:env_var: MDE_MENU_ACTIVE_COLOR_PASTEL_MESSAGES
|
|
750
|
-
:description:
|
|
774
|
+
:description: Pastel color methods to apply to active menu item text
|
|
751
775
|
:default:
|
|
752
776
|
- inverse
|
|
753
777
|
|
|
@@ -798,13 +822,13 @@
|
|
|
798
822
|
|
|
799
823
|
- :opt_name: menu_collapsible_symbol_collapsed
|
|
800
824
|
:env_var: MDE_MENU_COLLAPSIBLE_SYMBOL_COLLAPSED
|
|
801
|
-
:description:
|
|
825
|
+
:description: Symbol displayed for collapsed collapsible menu items
|
|
802
826
|
:default: '⬢' # ∆ ⬢ +
|
|
803
827
|
:procname: val_as_str
|
|
804
828
|
|
|
805
829
|
- :opt_name: menu_collapsible_symbol_expanded
|
|
806
|
-
:env_var:
|
|
807
|
-
:description:
|
|
830
|
+
:env_var: MDE_MENU_COLLAPSIBLE_SYMBOL_EXPANDED
|
|
831
|
+
:description: Symbol displayed for expanded collapsible menu items
|
|
808
832
|
:default: '⬡' # … ⬡ -
|
|
809
833
|
:procname: val_as_str
|
|
810
834
|
|
|
@@ -1198,7 +1222,7 @@
|
|
|
1198
1222
|
|
|
1199
1223
|
- :opt_name: mine
|
|
1200
1224
|
:long_name: mine
|
|
1201
|
-
:description:
|
|
1225
|
+
:description: Display matching lines from execution history files when used with probe pattern
|
|
1202
1226
|
|
|
1203
1227
|
- :opt_name: no_chrome
|
|
1204
1228
|
:env_var: MDE_NO_CHROME
|
|
@@ -1209,20 +1233,20 @@
|
|
|
1209
1233
|
|
|
1210
1234
|
- :long_name: open
|
|
1211
1235
|
:short_name: o
|
|
1212
|
-
:description:
|
|
1236
|
+
:description: Search for keyword in documents, present selection menu, and open chosen document
|
|
1213
1237
|
:arg_name: OPEN
|
|
1214
1238
|
:default: ''
|
|
1215
1239
|
:procname: open
|
|
1216
1240
|
|
|
1217
1241
|
- :opt_name: option_expansion_expression_regexp
|
|
1218
1242
|
:env_var: MDE_OPTION_EXPANSION_EXPRESSION_REGEXP
|
|
1219
|
-
:description:
|
|
1243
|
+
:description: Regex pattern that matches option expansions (e.g., &{option.property})
|
|
1220
1244
|
:default: '(?<expression>&{(?<payload>(?<option>[A-Z0-9a-z_]+)(?:\.(?<property>[A-Z0-9a-z_]+))?)})'
|
|
1221
1245
|
:procname: val_as_str
|
|
1222
1246
|
|
|
1223
1247
|
- :opt_name: option_expansion_payload_regexp
|
|
1224
1248
|
:env_var: MDE_OPTION_EXPANSION_PAYLOAD_REGEXP
|
|
1225
|
-
:description:
|
|
1249
|
+
:description: Regex pattern that extracts the option and property names from option expansion payloads
|
|
1226
1250
|
:default: '^(?<option>[A-Z0-9a-z_]+)(?:\.(?<property>[A-Z0-9a-z_]+))?$'
|
|
1227
1251
|
:procname: val_as_str
|
|
1228
1252
|
|
|
@@ -1329,18 +1353,20 @@
|
|
|
1329
1353
|
|
|
1330
1354
|
- :opt_name: play_bin_batch
|
|
1331
1355
|
:env_var: MDE_PLAY_BIN_BATCH
|
|
1356
|
+
:description: Binary used for batch mode block execution
|
|
1332
1357
|
:default: play
|
|
1333
1358
|
:procname: val_as_str
|
|
1334
1359
|
|
|
1335
1360
|
- :opt_name: play_bin_interactive
|
|
1336
1361
|
:env_var: MDE_PLAY_BIN_INTERACTIVE
|
|
1362
|
+
:description: Binary used for interactive mode block execution
|
|
1337
1363
|
:default: play_interactive
|
|
1338
1364
|
:procname: val_as_str
|
|
1339
1365
|
|
|
1340
1366
|
- :opt_name: probe
|
|
1341
1367
|
:long_name: probe
|
|
1342
1368
|
:env_var: MDE_PROBE
|
|
1343
|
-
:description:
|
|
1369
|
+
:description: Filter execution history to files containing lines matching the specified pattern
|
|
1344
1370
|
:procname: val_as_str
|
|
1345
1371
|
|
|
1346
1372
|
- :opt_name: prompt_after_script_execution
|
|
@@ -1399,7 +1425,7 @@
|
|
|
1399
1425
|
|
|
1400
1426
|
- :opt_name: prompt_margin_left_text
|
|
1401
1427
|
:env_var: MDE_PROMPT_MARGIN_LEFT_TEXT
|
|
1402
|
-
:description:
|
|
1428
|
+
:description: Text prefix displayed at the left margin of prompts
|
|
1403
1429
|
:default: "» "
|
|
1404
1430
|
:procname: val_as_str
|
|
1405
1431
|
|
|
@@ -1453,7 +1479,7 @@
|
|
|
1453
1479
|
|
|
1454
1480
|
- :opt_name: prompt_show_expr_format
|
|
1455
1481
|
:env_var: MDE_PROMPT_SHOW_EXPR_FORMAT
|
|
1456
|
-
:description:
|
|
1482
|
+
:description: Format string for displaying expression values in prompts
|
|
1457
1483
|
:default: 'Expr: %{expr}'
|
|
1458
1484
|
:procname: val_as_str
|
|
1459
1485
|
|
|
@@ -1471,27 +1497,27 @@
|
|
|
1471
1497
|
|
|
1472
1498
|
- :opt_name: publish_block_name_format
|
|
1473
1499
|
:env_var: MDE_PUBLISH_BLOCK_NAME_FORMAT
|
|
1474
|
-
:description:
|
|
1500
|
+
:description: Format string for block execution events published to file
|
|
1475
1501
|
:default: "%{time} Blc %{document} / %{block}\n"
|
|
1476
1502
|
:procname: val_as_str
|
|
1477
1503
|
|
|
1478
1504
|
- :opt_name: publish_document_file_mode
|
|
1479
1505
|
:long_name: publish-document-file-mode
|
|
1480
1506
|
:env_var: MDE_PUBLISH_DOCUMENT_FILE_MODE
|
|
1481
|
-
:description:
|
|
1507
|
+
:description: File mode for publishing document events (fifo=pipe, append=append to file, write=overwrite file)
|
|
1482
1508
|
:default: fifo
|
|
1483
1509
|
:procname: val_as_str
|
|
1484
1510
|
|
|
1485
1511
|
- :opt_name: publish_document_file_name
|
|
1486
1512
|
:long_name: publish-document-file-name
|
|
1487
1513
|
:env_var: MDE_PUBLISH_DOCUMENT_FILE_NAME
|
|
1488
|
-
:description: File path
|
|
1514
|
+
:description: File path where document execution events are published
|
|
1489
1515
|
:default: ''
|
|
1490
1516
|
:procname: val_as_str
|
|
1491
1517
|
|
|
1492
1518
|
- :opt_name: publish_document_name_format
|
|
1493
1519
|
:env_var: MDE_PUBLISH_DOCUMENT_NAME_FORMAT
|
|
1494
|
-
:description:
|
|
1520
|
+
:description: Format string for document load events published to file
|
|
1495
1521
|
:default: "%{time} Doc %{document}\n"
|
|
1496
1522
|
:procname: val_as_str
|
|
1497
1523
|
|
|
@@ -1622,20 +1648,20 @@
|
|
|
1622
1648
|
|
|
1623
1649
|
- :opt_name: script_execution_frame_color
|
|
1624
1650
|
:env_var: MDE_SCRIPT_EXECUTION_FRAME_COLOR
|
|
1625
|
-
:description:
|
|
1651
|
+
:description: Text color for the frame around script execution output
|
|
1626
1652
|
:default: fg_rgbh_80_d0_a0 # Sage green - calmer frame color for execution context
|
|
1627
1653
|
:procname: val_as_str
|
|
1628
1654
|
|
|
1629
1655
|
- :opt_name: script_execution_head
|
|
1630
1656
|
:env_var: MDE_SCRIPT_EXECUTION_HEAD
|
|
1631
|
-
:description:
|
|
1657
|
+
:description: Text displayed before script execution output
|
|
1632
1658
|
:default: "\n -^-"
|
|
1633
1659
|
|
|
1634
1660
|
:procname: val_as_str
|
|
1635
1661
|
|
|
1636
1662
|
- :opt_name: script_execution_tail
|
|
1637
1663
|
:env_var: MDE_SCRIPT_EXECUTION_TAIL
|
|
1638
|
-
:description:
|
|
1664
|
+
:description: Text displayed after script execution output
|
|
1639
1665
|
:default: " -v-\n"
|
|
1640
1666
|
:procname: val_as_str
|
|
1641
1667
|
|
|
@@ -1647,26 +1673,26 @@
|
|
|
1647
1673
|
|
|
1648
1674
|
- :opt_name: script_preview_head
|
|
1649
1675
|
:env_var: MDE_SCRIPT_PREVIEW_HEAD
|
|
1650
|
-
:description:
|
|
1676
|
+
:description: Text displayed before script preview content
|
|
1651
1677
|
:default: "\n -^-"
|
|
1652
1678
|
:procname: val_as_str
|
|
1653
1679
|
|
|
1654
1680
|
- :opt_name: script_preview_tail
|
|
1655
1681
|
:env_var: MDE_SCRIPT_PREVIEW_TAIL
|
|
1656
|
-
:description:
|
|
1682
|
+
:description: Text displayed after script preview content
|
|
1657
1683
|
:default: " -v-\n"
|
|
1658
1684
|
:procname: val_as_str
|
|
1659
1685
|
|
|
1660
1686
|
- :opt_name: select_by_name_regex
|
|
1661
1687
|
:env_var: MDE_SELECT_BY_NAME_REGEX
|
|
1662
|
-
:description:
|
|
1688
|
+
:description: Regex pattern to include only blocks whose names match
|
|
1663
1689
|
:arg_name: REGEX
|
|
1664
1690
|
:default:
|
|
1665
1691
|
:procname: val_as_str
|
|
1666
1692
|
|
|
1667
1693
|
- :opt_name: select_by_shell_regex
|
|
1668
1694
|
:env_var: MDE_SELECT_BY_SHELL_REGEX
|
|
1669
|
-
:description:
|
|
1695
|
+
:description: Regex pattern to include only blocks whose shell type matches
|
|
1670
1696
|
:arg_name: REGEX
|
|
1671
1697
|
:default:
|
|
1672
1698
|
:procname: val_as_str
|
|
@@ -1703,13 +1729,13 @@
|
|
|
1703
1729
|
|
|
1704
1730
|
- :opt_name: shell_code_label_format_above
|
|
1705
1731
|
:env_var: MDE_SHELL_CODE_LABEL_FORMAT_ABOVE
|
|
1706
|
-
:description:
|
|
1732
|
+
:description: Format string for label text displayed above code blocks in generated scripts
|
|
1707
1733
|
:default:
|
|
1708
1734
|
:procname: val_as_str
|
|
1709
1735
|
|
|
1710
1736
|
- :opt_name: shell_code_label_format_below
|
|
1711
1737
|
:env_var: MDE_SHELL_CODE_LABEL_FORMAT_BELOW
|
|
1712
|
-
:description:
|
|
1738
|
+
:description: Format string for label text displayed below code blocks in generated scripts
|
|
1713
1739
|
:default:
|
|
1714
1740
|
:procname: val_as_str
|
|
1715
1741
|
|
|
@@ -1729,12 +1755,12 @@
|
|
|
1729
1755
|
- :opt_name: sift
|
|
1730
1756
|
:long_name: sift
|
|
1731
1757
|
:env_var: MDE_SIFT
|
|
1732
|
-
:description:
|
|
1758
|
+
:description: Filter execution history to file names matching the specified pattern
|
|
1733
1759
|
:procname: val_as_str
|
|
1734
1760
|
|
|
1735
1761
|
- :opt_name: tab_completions
|
|
1736
1762
|
:long_name: tab-completions
|
|
1737
|
-
:description: List tab
|
|
1763
|
+
:description: List available tab completion options for shell integration
|
|
1738
1764
|
|
|
1739
1765
|
- :opt_name: table_border_color
|
|
1740
1766
|
:env_var: MDE_TABLE_BORDER_COLOR
|
|
@@ -1817,19 +1843,20 @@
|
|
|
1817
1843
|
|
|
1818
1844
|
- :opt_name: ux_auto_load_force_default
|
|
1819
1845
|
:env_var: MDE_UX_AUTO_LOAD_FORCE_DEFAULT
|
|
1846
|
+
:description: Whether to force default values for UX blocks during auto-load, even if variables already exist
|
|
1820
1847
|
:arg_name: BOOL
|
|
1821
1848
|
:default: true
|
|
1822
1849
|
:procname: val_as_bool
|
|
1823
1850
|
|
|
1824
1851
|
- :opt_name: variable_expansion_name_capture_group
|
|
1825
1852
|
:env_var: MDE_VARIABLE_EXPANSION_NAME_CAPTURE_GROUP
|
|
1826
|
-
:description:
|
|
1853
|
+
:description: Named capture group name that extracts the variable name from variable expansion matches
|
|
1827
1854
|
:default: variable
|
|
1828
1855
|
:procname: val_as_str
|
|
1829
1856
|
|
|
1830
1857
|
- :opt_name: variable_expansion_regexp
|
|
1831
1858
|
:env_var: MDE_VARIABLE_EXPANSION_REGEXP
|
|
1832
|
-
:description:
|
|
1859
|
+
:description: Regex pattern that matches variable expansions (e.g., ${variable})
|
|
1833
1860
|
:default: "(?<expression>\\${(?<variable>[A-Z0-9a-z_]+)})"
|
|
1834
1861
|
:procname: val_as_str
|
|
1835
1862
|
|
|
@@ -1841,8 +1868,8 @@
|
|
|
1841
1868
|
:procname: val_as_str
|
|
1842
1869
|
|
|
1843
1870
|
- :opt_name: vars_block_filename_pattern
|
|
1844
|
-
:env_var:
|
|
1845
|
-
:description:
|
|
1871
|
+
:env_var: MDE_VARS_BLOCK_FILENAME_PATTERN
|
|
1872
|
+
:description: Regex pattern that parses filenames into path, base, and extension components for vars blocks
|
|
1846
1873
|
:arg_name: PATTERN
|
|
1847
1874
|
:default: '^(?<path>.*/)(?<base>[^/]+?)(?<extension>\.?[^./]*)?$'
|
|
1848
1875
|
:procname: val_as_str
|