UNPKG

codetainer

Version:

A clean and simple CLI to manage and store code snippets with ease.

30 lines (24 loc) 871 B
import fs from "fs"; import chalk from "chalk"; import { loadSnippets } from "../utils/snippetStore.js"; import { fileExtensions } from "../data/extension.js"; export function registerExportCommand(program) { program .command("export <name>") .description("Export a snippet to a file (detected by language)") .action((name) => { const snippets = loadSnippets(); const snippet = snippets[name]; if (!snippet) { console.log(chalk.red(`❌ Snippet "${name}" not found.`)); return; } const extMap = fileExtensions; const ext = extMap[snippet.language?.toLowerCase()] || "txt"; const fileName = `${name}.${ext}`; fs.writeFileSync(fileName, snippet.code); console.log( chalk.green(`✅ Snippet "${name}" exported to ./${fileName}`) ); }); }