_makeemojiData.js 895 B

12345678910111213141516171819202122232425262728293031323334353637
  1. const fs = require('fs');
  2. var inputData = JSON.parse(fs.readFileSync(__dirname +"/emoji.json").toString("UTF-8"));
  3. var result = [];
  4. function unDot(str) {
  5. if (str[0] === ':' && str[str.length -1] === ':')
  6. return str.substr(1, str.length -2);
  7. return str;
  8. }
  9. var categories = {};
  10. for (var i in inputData) {
  11. var item = {
  12. names: [],
  13. keywords: inputData[i].keywords,
  14. unicode: i,
  15. sprite: inputData[i].category
  16. },
  17. shortName = unDot(inputData[i].shortname);
  18. categories[item.sprite] = true;
  19. inputData[i].shortname_alternates.forEach(function(name) {
  20. item.names.push(unDot(name));
  21. });
  22. if (shortName.substr(0, 4) === 'flag') {
  23. item.names.unshift(shortName);
  24. } else {
  25. item.names.push(shortName);
  26. }
  27. result.push(item);
  28. }
  29. console.log("/** @const */ var emojis=" +JSON.stringify(result));