generate-cli-doc.js 745 B

1234567891011121314151617181920
  1. const childProcess = require('child_process')
  2. const path = require('path')
  3. const fs = require('fs')
  4. const rustCliPath = path.join(__dirname, '../../tooling/cli.rs/target/debug/cargo-tauri')
  5. const templatePath = path.join(__dirname, '../../docs/.templates/cli.md')
  6. const targetPath = path.join(__dirname, '../../docs/api/cli.md')
  7. const template = fs.readFileSync(templatePath, 'utf8')
  8. const commands = ['info', 'init', 'plugin init', 'dev', 'build']
  9. let doc = template
  10. for (const cmd of commands) {
  11. const output = childProcess.execSync(`${rustCliPath} ${cmd} --help`).toString().split('\n')
  12. output.splice(0, 2)
  13. output.splice(-1)
  14. doc = doc.replace(`{${cmd}}`, '```\n' + output.join('\n') + '\n```')
  15. }
  16. fs.writeFileSync(targetPath, doc)