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
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 70772e4552a37222c8f9655c19d0c4938ef57a2abc786987d4b8220608aeb3b5
|
|
4
|
+
data.tar.gz: 7afe1c005a8d079e0d55ba36ccfd83e669665d038182c2d465e027ba5e7f46f7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b5ce74d1d56a732a6877d6dca7fd188e33b87fdbeccc6f3762281edfef9d53c525bcefb293931ec1cefa0e9176e45ef83d9a0c285589051169c15c8f2305a07d
|
|
7
|
+
data.tar.gz: 3798f4dfb87aeabb8e450bbb8790a72903a181f1171028042725f6231b90cc59605a88445c59a9e5178789a6b7d456060407ace48639f8b11b2b1ec385b8c23b
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# AI Agent Instructions - Read First!
|
|
2
|
+
|
|
3
|
+
## ⚠️ CRITICAL: Mandatory Acknowledgment
|
|
4
|
+
|
|
5
|
+
**YOU MUST** preface EVERY response with:
|
|
6
|
+
|
|
7
|
+
**"Observing AI principles!"**
|
|
8
|
+
|
|
9
|
+
This confirms you have read and will follow the AI-First Principles.
|
|
10
|
+
|
|
11
|
+
## 📋 Required Actions at Start of Each Session
|
|
12
|
+
|
|
13
|
+
1. **Acknowledge**: Preface response with "Observing AI principles!"
|
|
14
|
+
2. **Read**: `ai-principles.md` - Complete principles and process guide
|
|
15
|
+
3. **Review**: `semantic-tokens.md` - Token registry
|
|
16
|
+
4. **Check**: `tasks.md` - Active task tracking
|
|
17
|
+
5. **Understand**: Priority levels (P0 > P1 > P2 > P3)
|
|
18
|
+
|
|
19
|
+
## 🎯 Core Requirements
|
|
20
|
+
|
|
21
|
+
- Use semantic tokens `[REQ:*]`, `[ARCH:*]`, `[IMPL:*]` throughout
|
|
22
|
+
- Expand requirements into pseudo-code BEFORE coding
|
|
23
|
+
- Break work into trackable tasks with priorities
|
|
24
|
+
- Cross-reference everything using semantic tokens
|
|
25
|
+
- Follow priority order: Tests > Code > Basic Functions > Infrastructure
|
|
26
|
+
|
|
27
|
+
## 📚 Key Files
|
|
28
|
+
|
|
29
|
+
- `ai-principles.md` - **READ THIS FIRST**
|
|
30
|
+
- `requirements.md` - Requirements with `[REQ:*]` tokens
|
|
31
|
+
- `architecture-decisions.md` - **Semantic-token-linked architecture decisions dependent on requirements**
|
|
32
|
+
- Records all `[ARCH:*]` tokens
|
|
33
|
+
- Cross-references `[REQ:*]` tokens
|
|
34
|
+
- `implementation-decisions.md` - **Semantic-token-linked implementation decisions dependent on architecture and requirements**
|
|
35
|
+
- Records all `[IMPL:*]` tokens
|
|
36
|
+
- Cross-references both `[ARCH:*]` and `[REQ:*]` tokens
|
|
37
|
+
- `semantic-tokens.md` - Token registry
|
|
38
|
+
- `tasks.md` - Task tracking
|
|
39
|
+
- `.cursorrules` - Cursor IDE rules (auto-loaded)
|
|
40
|
+
|
|
41
|
+
## ✅ Example Response Format
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
Observing AI principles!
|
|
45
|
+
|
|
46
|
+
I have read ai-principles.md and will follow all documented processes.
|
|
47
|
+
|
|
48
|
+
[Your response here using semantic tokens and following the process]
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
**This file is a reminder. The complete rules are in `ai-principles.md` and `.cursorrules`.**
|
|
54
|
+
|
data/.cursorrules
ADDED
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
# Cursor AI Agent Rules for STDD Projects
|
|
2
|
+
|
|
3
|
+
**STDD Methodology Version**: 1.0.0
|
|
4
|
+
|
|
5
|
+
## 🎯 Semantic Token-Driven Development (STDD)
|
|
6
|
+
|
|
7
|
+
This project follows **Semantic Token-Driven Development (STDD)**, where semantic tokens (`[REQ:*]`, `[ARCH:*]`, `[IMPL:*]`) are the central mechanism for preserving intent throughout the development lifecycle. Semantic tokens create a traceable chain of intent from requirements → architecture → implementation → tests → code, ensuring the original purpose and reasoning are never lost.
|
|
8
|
+
|
|
9
|
+
## ⚠️ MANDATORY: AI Principles Acknowledgment
|
|
10
|
+
|
|
11
|
+
**YOU MUST** acknowledge that you have read and will follow the AI principles at the start of EVERY response by prefacing with:
|
|
12
|
+
|
|
13
|
+
**"Observing AI principles!"**
|
|
14
|
+
|
|
15
|
+
Then proceed to:
|
|
16
|
+
1. Read `ai-principles.md` if not already read in this session
|
|
17
|
+
2. Check `semantic-tokens.md` for existing tokens
|
|
18
|
+
3. Review `tasks.md` for active tasks
|
|
19
|
+
4. Follow all principles throughout your response
|
|
20
|
+
|
|
21
|
+
## 🎯 Core Principles
|
|
22
|
+
|
|
23
|
+
1. **Always Reference ai-principles.md**
|
|
24
|
+
- Read `ai-principles.md` at the start of each session
|
|
25
|
+
- Acknowledge with "Observing AI principles!" at the start of every response
|
|
26
|
+
- Follow the documented development process
|
|
27
|
+
- Use semantic tokens consistently
|
|
28
|
+
|
|
29
|
+
2. **Semantic Token System** (Core to STDD)
|
|
30
|
+
- Semantic tokens are the mechanism that preserves intent throughout the development lifecycle
|
|
31
|
+
- Use semantic tokens for all cross-referencing
|
|
32
|
+
- Format: `[TYPE:IDENTIFIER]` (e.g., `[REQ:MONITOR]`, `[IMPL:ASYNC_EXECUTION]`)
|
|
33
|
+
- Reference tokens in code comments, test names, and documentation
|
|
34
|
+
- Update `semantic-tokens.md` when creating new tokens
|
|
35
|
+
- Maintain traceability: Requirements → Architecture → Implementation → Tests → Code
|
|
36
|
+
|
|
37
|
+
3. **Development Process**
|
|
38
|
+
- **Phase 1**: Expand requirements into pseudo-code and decisions (NO code changes)
|
|
39
|
+
- **Phase 2**: Break down into trackable tasks with priorities
|
|
40
|
+
- **Phase 3**: Implement tasks, starting with highest priority
|
|
41
|
+
- Always cross-reference using semantic tokens
|
|
42
|
+
|
|
43
|
+
4. **Task Management**
|
|
44
|
+
- Break work into trackable tasks in `tasks.md`
|
|
45
|
+
- Assign priorities: P0 (Critical) > P1 (Important) > P2 (Nice-to-have) > P3 (Future)
|
|
46
|
+
- Remove subtasks when parent task completes
|
|
47
|
+
- Always include semantic token references
|
|
48
|
+
|
|
49
|
+
5. **Priority Order**
|
|
50
|
+
- **Most Important**: Tests, Code, Basic Functions
|
|
51
|
+
- **Least Important**: Environment Orchestration, Enhanced Security, Automated Deployment
|
|
52
|
+
|
|
53
|
+
## 📝 Documentation Requirements
|
|
54
|
+
|
|
55
|
+
### ⚠️ CRITICAL: Documentation is MANDATORY, Not Optional
|
|
56
|
+
|
|
57
|
+
**Documentation updates are REQUIRED at every stage of development. They are not optional or deferrable.**
|
|
58
|
+
|
|
59
|
+
### Required Sections in All Documentation
|
|
60
|
+
|
|
61
|
+
1. **Requirements** - with `[REQ:*]` tokens (in `requirements.md`)
|
|
62
|
+
2. **Architecture Decisions** - with `[ARCH:*]` tokens (in `architecture-decisions.md`)
|
|
63
|
+
- **MUST** be recorded in `architecture-decisions.md` IMMEDIATELY when made
|
|
64
|
+
- **MUST** cross-reference `[REQ:*]` tokens
|
|
65
|
+
- Architecture decisions are dependent on requirements
|
|
66
|
+
- **DO NOT** defer architecture documentation - record it as you make decisions
|
|
67
|
+
3. **Implementation Decisions** - with `[IMPL:*]` tokens (in `implementation-decisions.md`)
|
|
68
|
+
- **MUST** be recorded in `implementation-decisions.md` IMMEDIATELY when made
|
|
69
|
+
- **MUST** cross-reference both `[ARCH:*]` and `[REQ:*]` tokens
|
|
70
|
+
- Implementation decisions are dependent on both architecture and requirements
|
|
71
|
+
- **DO NOT** defer implementation documentation - record it as you make decisions
|
|
72
|
+
4. **Semantic Token Registry** - maintained in `semantic-tokens.md`
|
|
73
|
+
- **MUST** be updated immediately when creating new tokens
|
|
74
|
+
5. **Task Planning** - maintained in `tasks.md`
|
|
75
|
+
- **MUST** be updated when planning new work
|
|
76
|
+
- **MUST** be updated when completing tasks
|
|
77
|
+
- **MUST** include semantic token references
|
|
78
|
+
6. **Code References** - semantic tokens in code comments
|
|
79
|
+
7. **Test References** - semantic tokens in test names/comments
|
|
80
|
+
|
|
81
|
+
### Documentation Update Checklist (MANDATORY)
|
|
82
|
+
|
|
83
|
+
**When making ANY architectural decision:**
|
|
84
|
+
- [ ] Record in `architecture-decisions.md` with `[ARCH:*]` token
|
|
85
|
+
- [ ] Cross-reference relevant `[REQ:*]` tokens
|
|
86
|
+
- [ ] Update `semantic-tokens.md` if new token created
|
|
87
|
+
|
|
88
|
+
**When making ANY implementation decision:**
|
|
89
|
+
- [ ] Record in `implementation-decisions.md` with `[IMPL:*]` token
|
|
90
|
+
- [ ] Cross-reference relevant `[ARCH:*]` and `[REQ:*]` tokens
|
|
91
|
+
- [ ] Update `semantic-tokens.md` if new token created
|
|
92
|
+
|
|
93
|
+
**When planning new work:**
|
|
94
|
+
- [ ] Create tasks in `tasks.md` BEFORE starting implementation
|
|
95
|
+
- [ ] Assign priorities to all tasks
|
|
96
|
+
- [ ] Include semantic token references in task descriptions
|
|
97
|
+
- [ ] Break down into subtasks if needed
|
|
98
|
+
|
|
99
|
+
**When completing work:**
|
|
100
|
+
- [ ] Mark tasks complete in `tasks.md`
|
|
101
|
+
- [ ] Remove completed subtasks
|
|
102
|
+
- [ ] Verify all documentation is up-to-date
|
|
103
|
+
- [ ] Ensure all semantic tokens are documented
|
|
104
|
+
|
|
105
|
+
### Cross-Reference Format
|
|
106
|
+
|
|
107
|
+
When referencing tokens:
|
|
108
|
+
```go
|
|
109
|
+
// [REQ:DUPLICATE_PREVENTION] Skip if text matches lastText
|
|
110
|
+
// [IMPL:DUPLICATE_PREVENTION] [REQ:DUPLICATE_PREVENTION]
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
Test names:
|
|
114
|
+
```go
|
|
115
|
+
func TestDuplicatePrevention_REQ_DUPLICATE_PREVENTION(t *testing.T)
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## 🔄 Before Starting Work
|
|
119
|
+
|
|
120
|
+
1. **MANDATORY**: Read `ai-principles.md`
|
|
121
|
+
2. **MANDATORY**: Check `semantic-tokens.md` for existing tokens
|
|
122
|
+
3. **MANDATORY**: Review `tasks.md` for active tasks
|
|
123
|
+
4. **MANDATORY**: Review `architecture-decisions.md` for existing architecture decisions
|
|
124
|
+
5. **MANDATORY**: Review `implementation-decisions.md` for existing implementation decisions
|
|
125
|
+
6. Understand priority levels
|
|
126
|
+
7. **MANDATORY**: Plan work in `tasks.md` BEFORE writing any code
|
|
127
|
+
|
|
128
|
+
## ⚙️ During Work
|
|
129
|
+
|
|
130
|
+
1. Use semantic tokens in all code comments
|
|
131
|
+
2. Use semantic tokens in test names/comments
|
|
132
|
+
3. Cross-reference: Requirements → Architecture → Implementation → Tests
|
|
133
|
+
4. **MANDATORY**: Break work into trackable tasks in `tasks.md` BEFORE starting implementation
|
|
134
|
+
5. **MANDATORY**: Assign appropriate priorities to all tasks
|
|
135
|
+
6. **MANDATORY**: Update documentation AS YOU WORK:
|
|
136
|
+
- Record architecture decisions in `architecture-decisions.md` immediately when made
|
|
137
|
+
- Record implementation decisions in `implementation-decisions.md` immediately when made
|
|
138
|
+
- Update `tasks.md` when planning new work or completing tasks
|
|
139
|
+
- Update `semantic-tokens.md` when creating new tokens
|
|
140
|
+
- **DO NOT** defer documentation updates until the end
|
|
141
|
+
|
|
142
|
+
## ✅ After Completing Work
|
|
143
|
+
|
|
144
|
+
1. **MANDATORY**: All semantic tokens documented in `semantic-tokens.md`
|
|
145
|
+
2. **MANDATORY**: Documentation updated with implementation status:
|
|
146
|
+
- `architecture-decisions.md` updated with any new `[ARCH:*]` decisions
|
|
147
|
+
- `implementation-decisions.md` updated with any new `[IMPL:*]` decisions
|
|
148
|
+
- Both must cross-reference `[REQ:*]` tokens
|
|
149
|
+
3. **MANDATORY**: Tests reference semantic tokens
|
|
150
|
+
4. **MANDATORY**: Tasks marked complete in `tasks.md`
|
|
151
|
+
5. **MANDATORY**: Subtasks removed from completed tasks
|
|
152
|
+
6. **MANDATORY**: All documentation reflects current state (no stale information)
|
|
153
|
+
|
|
154
|
+
## 🚫 What NOT to Do
|
|
155
|
+
|
|
156
|
+
- Don't write code before expanding requirements into pseudo-code
|
|
157
|
+
- Don't skip semantic token cross-referencing
|
|
158
|
+
- Don't create tasks without priorities
|
|
159
|
+
- Don't leave subtasks after parent task completes
|
|
160
|
+
- Don't implement P2/P3 features before P0/P1 are complete
|
|
161
|
+
|
|
162
|
+
## 📚 Key Files
|
|
163
|
+
|
|
164
|
+
**Note**: These file names refer to your project's files. Copy the corresponding `.template.md` files from the STDD repository to your project.
|
|
165
|
+
|
|
166
|
+
- `ai-principles.md` - Complete principles and process guide (reference from STDD repository)
|
|
167
|
+
- `requirements.md` - Requirements with `[REQ:*]` tokens (copy from `requirements.template.md`)
|
|
168
|
+
- `architecture-decisions.md` - **Semantic-token-linked record of architecture decisions dependent on requirements** (copy from `architecture-decisions.template.md`)
|
|
169
|
+
- All `[ARCH:*]` tokens must be documented here
|
|
170
|
+
- Must cross-reference `[REQ:*]` tokens
|
|
171
|
+
- `implementation-decisions.md` - **Semantic-token-linked record of implementation decisions dependent on architecture and requirements** (copy from `implementation-decisions.template.md`)
|
|
172
|
+
- All `[IMPL:*]` tokens must be documented here
|
|
173
|
+
- Must cross-reference both `[ARCH:*]` and `[REQ:*]` tokens
|
|
174
|
+
- `semantic-tokens.md` - Central registry of all tokens (copy from `semantic-tokens.template.md`)
|
|
175
|
+
- `tasks.md` - Active task tracking (copy from `tasks.template.md`)
|
|
176
|
+
|
|
177
|
+
## 🎯 Example Workflow
|
|
178
|
+
|
|
179
|
+
1. **User Request**: "Add disk space checking"
|
|
180
|
+
2. **AI Response (Planning Phase - NO CODE YET)**:
|
|
181
|
+
- Creates `[REQ:DISK_SPACE_CHECK]` token in `requirements.md`
|
|
182
|
+
- Expands into pseudo-code and decisions
|
|
183
|
+
- **IMMEDIATELY** documents architecture decisions in `architecture-decisions.md` with `[ARCH:*]` tokens cross-referencing `[REQ:DISK_SPACE_CHECK]`
|
|
184
|
+
- **IMMEDIATELY** documents implementation decisions in `implementation-decisions.md` with `[IMPL:*]` tokens cross-referencing both `[ARCH:*]` and `[REQ:*]` tokens
|
|
185
|
+
- **IMMEDIATELY** updates `semantic-tokens.md` with all new tokens
|
|
186
|
+
- **IMMEDIATELY** creates tasks in `tasks.md` with P1 priority and semantic token references
|
|
187
|
+
- **NO code changes yet**
|
|
188
|
+
3. **User Approval**: User reviews and approves planning documents
|
|
189
|
+
4. **Implementation Phase**:
|
|
190
|
+
- AI implements tasks, starting with highest priority
|
|
191
|
+
- **DURING implementation**: Updates documentation as decisions are made or refined
|
|
192
|
+
- **DURING implementation**: Updates `tasks.md` as subtasks are completed
|
|
193
|
+
5. **Completion Phase**:
|
|
194
|
+
- **MANDATORY**: Verifies all documentation is up-to-date
|
|
195
|
+
- **MANDATORY**: Marks tasks complete in `tasks.md`
|
|
196
|
+
- **MANDATORY**: Removes completed subtasks
|
|
197
|
+
- **MANDATORY**: Ensures all semantic tokens are documented
|
|
198
|
+
|
data/.rubocop.wide.yml
ADDED
data/.rubocop.yml
CHANGED
|
@@ -14,10 +14,15 @@ Layout/LineContinuationLeadingSpace:
|
|
|
14
14
|
Enabled: false
|
|
15
15
|
|
|
16
16
|
Layout/LineLength:
|
|
17
|
+
AllowHeredoc: true # optional
|
|
18
|
+
AllowURI: true # optional
|
|
19
|
+
AllowedPatterns:
|
|
20
|
+
- '^\s*#'
|
|
21
|
+
- '^[^#]*#'
|
|
17
22
|
# Enabled: false
|
|
23
|
+
# IgnoreComments: true # ← THIS is what you want
|
|
24
|
+
IgnoreCopDirectives: true # optional, but useful
|
|
18
25
|
Max: 80
|
|
19
|
-
# Max: 96
|
|
20
|
-
# Max: 120
|
|
21
26
|
|
|
22
27
|
Lint/Debugger:
|
|
23
28
|
Enabled: false
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [3.5.2]
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- Option for hiding shebang lines.
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
|
|
11
|
+
- Fix inherited code from activated UX blocks.
|
|
12
|
+
- Improve BATS test names.
|
|
13
|
+
|
|
3
14
|
## [3.5.1] - 2025-11-14
|
|
4
15
|
|
|
5
16
|
### Added
|
|
@@ -983,7 +994,7 @@ e.g. `MDE_OUTPUT_VIEWER_OPTIONS="-a '/Applications/Sublime Text.app'" mde --sele
|
|
|
983
994
|
|
|
984
995
|
| YAML Name | Environment Variable | Default |
|
|
985
996
|
| :--- | :--- | :--- |
|
|
986
|
-
|
|
|
997
|
+
| block_name_hide_custom_match | MDE_BLOCK_NAME_HIDE_CUSTOM_MATCH | `^\(.+\)$` |
|
|
987
998
|
| block_name_match | MDE_BLOCK_NAME_MATCH | `:(?<title>\S+)( \|$)` |
|
|
988
999
|
| block_required_scan | MDE_BLOCK_REQUIRED_SCAN | `\+\S+` |
|
|
989
1000
|
| fenced_start_and_end_regex | MDE_FENCED_START_AND_END_REGEX | ``^`{3,}`` |
|
data/Gemfile.lock
CHANGED
data/Rakefile
CHANGED
|
@@ -138,6 +138,7 @@ task :minitest do
|
|
|
138
138
|
'./lib/collapser.rb --verbose',
|
|
139
139
|
'./lib/directory_searcher.rb --verbose',
|
|
140
140
|
'./lib/evaluate_shell_expressions.rb --verbose',
|
|
141
|
+
'./lib/executed_shell_command.rb --verbose',
|
|
141
142
|
'./lib/fcb.rb --verbose',
|
|
142
143
|
'./lib/filter.rb --verbose',
|
|
143
144
|
'./lib/find_files.rb',
|
|
@@ -155,6 +156,7 @@ task :minitest do
|
|
|
155
156
|
'./lib/saved_files_matcher.rb --verbose',
|
|
156
157
|
'./lib/table_extractor.rb --verbose',
|
|
157
158
|
'./lib/text_analyzer.rb --verbose',
|
|
159
|
+
'./lib/transformed_shell_command.rb --verbose',
|
|
158
160
|
'./lib/ww.rb --verbose'
|
|
159
161
|
]
|
|
160
162
|
|