aboutsummaryrefslogtreecommitdiff
path: root/js/bin/commonmark
blob: f0c427c819450b1d513dc5e6f173488d0daa974e (plain)
  1. #!/usr/bin/env node
  2. "use strict";
  3. var fs = require('fs');
  4. var util = require('util');
  5. var commonmark = require('../lib/index.js');
  6. var parser = new commonmark.DocParser();
  7. var renderer = new commonmark.HtmlRenderer();
  8. var inps = [];
  9. var file;
  10. var files = [];
  11. var options = { sourcepos: false };
  12. var i;
  13. for (i = 2; i < process.argv.length; i++) {
  14. var arg = process.argv[i];
  15. if (arg === '--ast') {
  16. renderer = { render: commonmark.ASTRenderer };
  17. } else if (arg === '--sourcepos') {
  18. options.sourcepos = true;
  19. } else if (/^--/.test(arg)) {
  20. process.stderr.write('Unknown option ' + arg + '\n');
  21. process.exit(1);
  22. } else {
  23. files.push(arg);
  24. }
  25. }
  26. if (files.length === 0) {
  27. files = ['/dev/stdin'];
  28. }
  29. for (i = 0; i < files.length; i++) {
  30. file = files[i];
  31. inps.push(fs.readFileSync(file, 'utf8'));
  32. }
  33. process.stdout.write(renderer.render(parser.parse(inps.join('\n')), options));