ezx 0.0.4 → 0.0.6

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.
package/README.md CHANGED
@@ -25,21 +25,35 @@ pwd
25
25
 
26
26
  ### 2. File Extraction
27
27
 
28
- **Note:** zx executes all code blocks in markdown files. If you have code blocks that are for documentation only (examples to show users, not to run or write as files), add the `no-eval` flag to prevent execution:
28
+ Extract code blocks to files using a preceding blockquote with the file path. The file path is wrapped in backticks within the blockquote, and an optional emoji can be added for visual clarity.
29
29
 
30
30
  ```markdown
31
- ```typescript no-eval
32
- interface User {
33
- name: string;
34
- age: number;
31
+ > `package.json`
32
+
33
+ ```json
34
+ {
35
+ "name": "my-project",
36
+ "version": "1.0.0"
35
37
  }
36
38
  ```⁠
37
39
  ```
38
40
 
39
- Extract code blocks to files using the info string syntax on the code fence. The file directive is specified after the language identifier using `file:` or `file=`. The file path is always relative to the original working directory (not affected by `# set the current directory`).
41
+ Or with an optional emoji:
42
+
43
+ ```markdown
44
+ > 📄 `package.json`
45
+
46
+ ```json
47
+ {
48
+ "name": "my-project"
49
+ }
50
+ ```⁠
51
+ ```
40
52
 
41
53
  **JSON:**
42
- ```json file:my-project/package.json
54
+ > `my-project/package.json`
55
+
56
+ ```json
43
57
  {
44
58
  "name": "my-project",
45
59
  "version": "1.0.0"
@@ -47,21 +61,38 @@ Extract code blocks to files using the info string syntax on the code fence. The
47
61
  ```
48
62
 
49
63
  **TypeScript/JavaScript:**
50
- ```typescript file:my-project/index.ts
64
+ > `my-project/index.ts`
65
+
66
+ ```typescript
51
67
  console.log("Hello world")
52
68
  ```
53
69
 
54
70
  **Bash/Shell:**
55
- ```bash file:my-project/.npmrc
71
+ > `my-project/.npmrc`
72
+
73
+ ```bash
56
74
  shared-workspace-lockfile=false
57
75
  ```
58
76
 
59
77
  **Markdown:**
60
- ```markdown file:my-project/README.md
78
+ > `my-project/README.md`
79
+
80
+ ```markdown
61
81
  # My Project
62
82
  ```
63
83
 
64
- **Any language:** The file directive works with any language, including unknown languages, because it's specified in the code fence info string, not inside the code content.
84
+ **Any language:** The file directive works with any language, including unknown languages, because it's specified in a preceding blockquote, not inside the code content.
85
+
86
+ **Note:** zx executes all code blocks in markdown files. If you have code blocks that are for documentation only (examples to show users, not to run or write as files), add the `no-eval` flag to prevent execution:
87
+
88
+ ```markdown
89
+ ```typescript no-eval
90
+ interface User {
91
+ name: string;
92
+ age: number;
93
+ }
94
+ ```⁠
95
+ ```
65
96
 
66
97
  File extraction blocks are transformed to bash heredoc commands that execute in order with the rest of the markdown. If a directory context is active, the heredoc command will prepend `cd`:
67
98
 
@@ -97,6 +128,23 @@ ezx --verbose script.md
97
128
  ezx --shell=/bin/bash script.md
98
129
  ```
99
130
 
131
+ #### Execute Specific Sections
132
+
133
+ You can execute only specific sections of a markdown file by specifying their heading titles. This is useful for running parts of a larger documentation file:
134
+
135
+ ```bash
136
+ # Run only the "Create a new project" section
137
+ ezx --sections "Create a new project" docs/getting-started.md
138
+
139
+ # Run multiple sections
140
+ ezx --sections "Prerequisites" "Create a new project" docs/getting-started.md
141
+
142
+ # Short form
143
+ ezx -s "Create a new project" docs/getting-started.md
144
+ ```
145
+
146
+ Section matching is case-insensitive and includes all content under the specified heading and its subheadings until another heading of the same or higher level is encountered.
147
+
100
148
  ### Programmatic Usage
101
149
 
102
150
  ```typescript
@@ -149,7 +197,9 @@ cd my-app
149
197
  npm init -y
150
198
  \`\`\`
151
199
 
152
- \`\`\`json file:my-app/package.json
200
+ > `my-app/package.json`
201
+
202
+ \`\`\`json
153
203
  {
154
204
  "name": "my-app",
155
205
  "version": "1.0.0",
@@ -159,7 +209,9 @@ npm init -y
159
209
  }
160
210
  \`\`\`
161
211
 
162
- \`\`\`typescript file:my-app/index.ts
212
+ > `my-app/index.ts`
213
+
214
+ \`\`\`typescript
163
215
  console.log('Hello from ezx!')
164
216
  \`\`\`
165
217
 
@@ -192,6 +244,7 @@ Run markdown content or file with CLI-like options.
192
244
  - `postfix` (string) - Postfix all commands
193
245
  - `cwd` (string) - Current working directory
194
246
  - `preferLocal` (boolean) - Prefer locally installed packages
247
+ - `sections` (string[]) - Execute only sections under these heading titles
195
248
 
196
249
  ### `runMarkdownFile(filePath, options)`
197
250
 
package/dist/cli.js CHANGED
@@ -13,6 +13,7 @@ program
13
13
  .option('--prefix <command>', 'prefix all commands')
14
14
  .option('--postfix <command>', 'postfix all commands')
15
15
  .option('--cwd <path>', 'set current directory')
16
+ .option('-s, --sections <headings...>', 'execute only sections under these headings (e.g., "Create a new project")')
16
17
  .action(async (script, options) => {
17
18
  try {
18
19
  await runMarkdownFile(script, options);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,eAAe,EAA0B,MAAM,YAAY,CAAC;AAEpE,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACL,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,uEAAuE,CAAC;KACpF,OAAO,CAAC,OAAO,CAAC;KAChB,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;KAC/C,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC;KAC9C,MAAM,CAAC,aAAa,EAAE,sBAAsB,CAAC;KAC7C,MAAM,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;KAC/C,MAAM,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;KACnD,MAAM,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;KACrD,MAAM,CAAC,cAAc,EAAE,uBAAuB,CAAC;KAC/C,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,OAA2B,EAAE,EAAE;IAC7D,IAAI,CAAC;QACJ,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;AACF,CAAC,CAAC,CAAC;AAEJ,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,eAAe,EAA0B,MAAM,YAAY,CAAC;AAEpE,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACL,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,uEAAuE,CAAC;KACpF,OAAO,CAAC,OAAO,CAAC;KAChB,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;KAC/C,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC;KAC9C,MAAM,CAAC,aAAa,EAAE,sBAAsB,CAAC;KAC7C,MAAM,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;KAC/C,MAAM,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;KACnD,MAAM,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;KACrD,MAAM,CAAC,cAAc,EAAE,uBAAuB,CAAC;KAC/C,MAAM,CAAC,8BAA8B,EAAE,2EAA2E,CAAC;KACnH,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,OAA2B,EAAE,EAAE;IAC7D,IAAI,CAAC;QACJ,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;AACF,CAAC,CAAC,CAAC;AAEJ,OAAO,CAAC,KAAK,EAAE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -6,6 +6,7 @@ export interface RunMarkdownOptions {
6
6
  postfix?: string;
7
7
  cwd?: string;
8
8
  preferLocal?: boolean;
9
+ sections?: string[];
9
10
  }
10
11
  /**
11
12
  * Run markdown content or file with CLI-like options
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,kBAAkB;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8D5G;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAEvG;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjH;AAGD,cAAc,IAAI,CAAC;AAGnB,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,kBAAkB;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAwDD;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmE5G;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAEvG;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjH;AAGD,cAAc,IAAI,CAAC;AAGnB,cAAc,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -5,6 +5,53 @@ import { pathToFileURL } from 'node:url';
5
5
  import { preprocessMarkdown } from './preprocessor.js';
6
6
  // Import zx globals to make $, path, fs, etc. available globally
7
7
  await import('zx/globals');
8
+ /**
9
+ * Extract sections from markdown based on heading matches
10
+ * Returns only the content under the specified headings
11
+ */
12
+ function extractSectionsByHeading(markdown, sectionHeadings) {
13
+ if (!sectionHeadings || sectionHeadings.length === 0) {
14
+ return markdown;
15
+ }
16
+ const lines = markdown.split('\n');
17
+ const result = [];
18
+ let inMatchingSection = false;
19
+ let currentSectionLevel = 0;
20
+ let inCodeBlock = false;
21
+ // Normalize section headings (case-insensitive, trim whitespace)
22
+ const normalizedSectionHeadings = sectionHeadings.map(h => h.trim().toLowerCase());
23
+ const headingRegex = /^(#{1,6})\s+(.+)$/;
24
+ for (let i = 0; i < lines.length; i++) {
25
+ const line = lines[i];
26
+ // Track code blocks
27
+ if (line.startsWith('```')) {
28
+ inCodeBlock = !inCodeBlock;
29
+ }
30
+ // Only check for headings when not in a code block
31
+ const match = !inCodeBlock ? line.match(headingRegex) : null;
32
+ if (match) {
33
+ const level = match[1].length;
34
+ const headingText = match[2].trim().toLowerCase();
35
+ // Check if this heading matches one of our target headings
36
+ if (normalizedSectionHeadings.includes(headingText)) {
37
+ inMatchingSection = true;
38
+ currentSectionLevel = level;
39
+ result.push(line); // Include the heading itself
40
+ }
41
+ else if (inMatchingSection) {
42
+ // If we're in a matching section and hit another heading of same or higher level
43
+ // (less # means higher in the hierarchy), exit the section
44
+ if (level <= currentSectionLevel) {
45
+ inMatchingSection = false;
46
+ }
47
+ }
48
+ }
49
+ else if (inMatchingSection) {
50
+ result.push(line);
51
+ }
52
+ }
53
+ return result.join('\n');
54
+ }
8
55
  /**
9
56
  * Run markdown content or file with CLI-like options
10
57
  *
@@ -46,6 +93,10 @@ export async function runMarkdown(markdown, options = {}) {
46
93
  else {
47
94
  markdownContent = markdown.toString();
48
95
  }
96
+ // Extract sections if specified
97
+ if (options.sections && options.sections.length > 0) {
98
+ markdownContent = extractSectionsByHeading(markdownContent, options.sections);
99
+ }
49
100
  // Preprocess markdown with ezx enhancements
50
101
  const { preprocessedMarkdown } = preprocessMarkdown(markdownContent, {
51
102
  cwd: options.cwd || process.cwd(),
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export interface CodeBlock {
4
4
  startLine: number;
5
5
  endLine: number;
6
6
  filePath?: string;
7
+ precedingBlockquoteLine?: number;
7
8
  }
8
9
  export interface FileExtraction {
9
10
  filePath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"preprocessor.d.ts","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAChC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,cAAc,EAAE,cAAc,EAAE,CAAC;CACjC;AA6ED;;GAEG;AACH,wBAAgB,kBAAkB,CACjC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAM,GAC1B,gBAAgB,CA6JlB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAM,GAC1B,gBAAgB,CAGlB"}
1
+ {"version":3,"file":"preprocessor.d.ts","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uBAAuB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAChC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,cAAc,EAAE,cAAc,EAAE,CAAC;CACjC;AA8GD;;GAEG;AACH,wBAAgB,kBAAkB,CACjC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAM,GAC1B,gBAAgB,CAwKlB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAM,GAC1B,gBAAgB,CAGlB"}
@@ -1,7 +1,26 @@
1
1
  import { readFileSync } from 'node:fs';
2
+ /**
3
+ * Extract file path from a blockquote line
4
+ * Supports: > `path/to/file.json` or > 📄 `path/to/file.json`
5
+ */
6
+ function extractFilePathFromBlockquote(line) {
7
+ const trimmed = line.trim();
8
+ // Match blockquote followed by optional emoji and backtick-wrapped path
9
+ // e.g., > `package.json` or > 📄 `package.json` or > file: package.json
10
+ const match = trimmed.match(/^>\s*(?:[\p{Emoji}]?\s*)?`([^`]+)`/u);
11
+ if (match) {
12
+ return match[1].trim();
13
+ }
14
+ // Also support: > file: package.json (for backward compatibility with comment style)
15
+ const fileMatch = trimmed.match(/^>\s*(?:[\p{Emoji}]?\s*)?file[:=]\s*(.+)$/iu);
16
+ if (fileMatch) {
17
+ return fileMatch[1].trim();
18
+ }
19
+ return null;
20
+ }
2
21
  /**
3
22
  * Parse markdown and extract all code blocks with their line numbers
4
- * Also extracts file path from info string if present (e.g., ```json file:path/to/file.json)
23
+ * Also extracts file path from preceding blockquote if present
5
24
  */
6
25
  function parseCodeBlocks(markdown) {
7
26
  const codeBlocks = [];
@@ -9,23 +28,26 @@ function parseCodeBlocks(markdown) {
9
28
  let inCodeBlock = false;
10
29
  let currentBlock = {};
11
30
  let blockStartLine = 0;
31
+ let precedingBlockquoteLine;
32
+ let pendingFilePath;
12
33
  for (let i = 0; i < lines.length; i++) {
13
34
  const line = lines[i];
14
35
  // Check for code block start
15
36
  if (line.match(/^```/)) {
16
37
  if (!inCodeBlock) {
17
- // Starting a new code block
18
- // Parse language and optional file directive from info string
19
- // Formats: ```json, ```json file:path, ```json file=path
20
- const match = line.match(/^```(\w*)\s*(?:file[:=](\S+))?/i);
38
+ // Starting a new code block - assign any pending file path
39
+ const languageMatch = line.match(/^```(\w*)/);
21
40
  currentBlock = {
22
- language: match?.[1] || '',
23
- filePath: match?.[2] || undefined,
41
+ language: languageMatch?.[1] || '',
42
+ filePath: pendingFilePath,
43
+ precedingBlockquoteLine: precedingBlockquoteLine,
24
44
  content: '',
25
45
  startLine: i,
26
46
  };
27
47
  inCodeBlock = true;
28
48
  blockStartLine = i;
49
+ precedingBlockquoteLine = undefined;
50
+ pendingFilePath = undefined; // Reset for next block
29
51
  }
30
52
  else {
31
53
  // Ending the current code block
@@ -38,12 +60,21 @@ function parseCodeBlocks(markdown) {
38
60
  startLine: currentBlock.startLine,
39
61
  endLine: i,
40
62
  filePath: currentBlock.filePath,
63
+ precedingBlockquoteLine: currentBlock.precedingBlockquoteLine,
41
64
  });
42
65
  }
43
66
  inCodeBlock = false;
44
67
  currentBlock = {};
45
68
  }
46
69
  }
70
+ else if (!inCodeBlock) {
71
+ // Look for blockquote with file path (only outside code blocks)
72
+ const filePath = extractFilePathFromBlockquote(line);
73
+ if (filePath) {
74
+ precedingBlockquoteLine = i;
75
+ pendingFilePath = filePath;
76
+ }
77
+ }
47
78
  else if (inCodeBlock && currentBlock.content !== undefined) {
48
79
  // Add line to current block content
49
80
  currentBlock.content += (currentBlock.content ? '\n' : '') + line;
@@ -76,7 +107,7 @@ export function preprocessMarkdown(input, options = {}) {
76
107
  for (let i = 0; i < codeBlocks.length; i++) {
77
108
  const block = codeBlocks[i];
78
109
  const isBash = block.language === 'bash' || block.language === 'sh' || block.language === 'shell';
79
- // Check if this is a file extraction block (file path in info string)
110
+ // Check if this is a file extraction block (file path from preceding blockquote)
80
111
  if (block.filePath) {
81
112
  // This is a file extraction block - transform to heredoc
82
113
  const fileContent = block.content.trim();
@@ -140,9 +171,19 @@ export function preprocessMarkdown(input, options = {}) {
140
171
  }
141
172
  // Build preprocessed markdown
142
173
  const preprocessedLines = [];
143
- let processedBlocks = 0;
174
+ // Track lines to skip (blockquote lines that contained file paths)
175
+ const linesToSkip = new Set();
176
+ for (const block of codeBlocks) {
177
+ if (block.precedingBlockquoteLine !== undefined && block.filePath) {
178
+ linesToSkip.add(block.precedingBlockquoteLine);
179
+ }
180
+ }
144
181
  for (let i = 0; i < lines.length; i++) {
145
182
  const line = lines[i];
183
+ // Skip blockquote lines that contained file paths (they were consumed)
184
+ if (linesToSkip.has(i)) {
185
+ continue;
186
+ }
146
187
  // Check if this is the start of a code block
147
188
  if (line.match(/^```/)) {
148
189
  const blockIndex = codeBlocks.findIndex((b) => b.startLine === i);
@@ -1 +1 @@
1
- {"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ezx",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "description": "Enhanced zx - Write better shell scripts with markdown preprocessing features including directory context persistence and file extraction",
5
5
  "keywords": [
6
6
  "zx",