build_highlight_alias.js 583 B

1234567891011121314151617181920212223242526272829
  1. 'use strict';
  2. const hljs = require('highlight.js');
  3. const languages = hljs.listLanguages();
  4. const fs = require('fs');
  5. const result = {
  6. languages: languages,
  7. aliases: {}
  8. };
  9. languages.forEach(lang => {
  10. result.aliases[lang] = lang;
  11. const def = require('highlight.js/lib/languages/' + lang)(hljs);
  12. const aliases = def.aliases;
  13. if (aliases) {
  14. aliases.forEach(alias => {
  15. result.aliases[alias] = lang;
  16. });
  17. }
  18. });
  19. const stream = fs.createWriteStream('highlight_alias.json');
  20. stream.write(JSON.stringify(result));
  21. stream.on('end', () => {
  22. stream.end();
  23. });