scai
Version:
> **AI-powered CLI for local code analysis, commit message suggestions, and natural-language queries.** 100% local, private, GDPR-friendly, made in Denmark/EU with ❤️.
17 lines (16 loc) • 649 B
JavaScript
import os from 'os';
import fs from 'fs';
import path from 'path';
import { spawnSync } from 'child_process';
export async function openTextEditor(initialContent, filename) {
const tmpFilePath = path.join(os.tmpdir(), filename);
fs.writeFileSync(tmpFilePath, initialContent, 'utf-8');
const editor = process.env.EDITOR || (process.platform === 'win32' ? 'notepad' : 'vi');
spawnSync(editor, [tmpFilePath], { stdio: 'inherit' });
const editedContent = fs.readFileSync(tmpFilePath, 'utf-8');
return editedContent
.split('\n')
.filter(line => !line.trim().startsWith('#'))
.join('\n')
.trim();
}