WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Commit 23f994a

Browse files
committed
Improve CLI output for redirection compatibility (v1.0.2)
- Move system messages (progress, status) to stderr for clean markdown output - Keep only markdown content in stdout for proper file redirection - Enable usage: npx mapdown ... > output.md to create clean markdown files - Update version to 1.0.2 Changes: - Progress tracking now uses process.stderr.write() - Start/completion messages use console.error() - Only markdown result goes to stdout via console.log()
1 parent ab012b2 commit 23f994a

File tree

3 files changed

+12
-12
lines changed

3 files changed

+12
-12
lines changed

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "mapdown",
3-
"version": "1.0.1",
3+
"version": "1.0.2",
44
"description": "A CLI tool to crawl sitemap.xml and convert all pages to LLM-friendly Markdown",
55
"type": "module",
66
"main": "dist/cli.js",

src/cli.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ async function main() {
1414
const source = args[0];
1515

1616
try {
17-
console.log("🚀 Starting crawl...");
18-
console.log(`📍 Source: ${source}\n`);
17+
console.error("🚀 Starting crawl...");
18+
console.error(`📍 Source: ${source}\n`);
1919

2020
// Track progress with terminal updates
2121
let lastProgress = -1;
@@ -25,20 +25,20 @@ async function main() {
2525
lastProgress = progress.percentage;
2626
const processed = progress.completed + progress.failed;
2727

28-
// Clear line and update progress
29-
process.stdout.write("\r\x1b[K"); // Clear current line
30-
process.stdout.write(
28+
// Clear line and update progress (write to stderr)
29+
process.stderr.write("\r\x1b[K"); // Clear current line
30+
process.stderr.write(
3131
`Progress: ${processed}/${progress.total} (${progress.percentage}%) | ✓ ${progress.completed} | ✗ ${progress.failed}`,
3232
);
3333
}
3434
});
3535

3636
// Clear progress line and print result
37-
process.stdout.write("\r\x1b[K");
38-
console.log(result);
39-
console.log("\n✅ Crawl completed successfully!");
37+
process.stderr.write("\r\x1b[K");
38+
console.log(result); // Only the markdown result goes to stdout
39+
console.error("\n✅ Crawl completed successfully!");
4040
} catch (error) {
41-
process.stdout.write("\r\x1b[K"); // Clear progress line
41+
process.stderr.write("\r\x1b[K"); // Clear progress line
4242
console.error(
4343
"❌ Error:",
4444
error instanceof Error ? error.message : "Unknown error",

0 commit comments

Comments
 (0)