You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

77 lines
1.8 KiB

  1. /*
  2. Copyright 2020 rupa <rupa@lrrr.us> @rupa
  3. This program is free software: you can redistribute it and/or modify
  4. it under the terms of the GNU General Public License as published by
  5. the Free Software Foundation, either version 2 of the License, or
  6. (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program. If not, see <http://www.gnu.org/licenses/>.
  13. */
  14. #pragma once
  15. #include "rupa.h"
  16. #if defined(UNICODEMAP_ENABLE)
  17. enum unicode_names {
  18. CCIR, // COMBINING ⃝
  19. CENT, // ¢
  20. CHEK, // ✓
  21. CKEY, // COMBINING ⃣
  22. CUI, // ⚠
  23. ECKS, // ✖
  24. EFF, // ſ
  25. HAS, // ☭
  26. HUN, // 💯
  27. IBNG, // ‽
  28. IRNY, // ⸮
  29. LALL, // ∀
  30. LELM, // ∈
  31. LEXI, // ∃
  32. LPRO, // ⊢
  33. M4, // ♩
  34. M8, // ♪
  35. M8B, // ♫
  36. M16, // ♬
  37. NEG, // COMBINING ⃠
  38. NOPE, // 🚫
  39. NUM, // №
  40. OM, // ॐ
  41. SMB, // ☻
  42. SMW, // ☺
  43. STB, // ★
  44. STOP, // ⛔
  45. STW, // ☆
  46. };
  47. #endif
  48. typedef enum combined_modes {
  49. CM_NULL = 0,
  50. CM_CIRCLE,
  51. CM_NO,
  52. CM_KEYCAP,
  53. CM_ZALGO,
  54. CM_MAX
  55. } combined_mode_t;
  56. combined_mode_t combined_mode;
  57. // random choices
  58. const char * d6(void);
  59. const char * dance(bool more);
  60. const char * flip(bool back);
  61. const char * joy(bool harder);
  62. // like X and XP
  63. bool u_x(const char *text);
  64. bool u_xp(bool is_shifted, const char * shifted, const char *plain);
  65. bool combined_text(uint16_t keycode);
  66. void cycle_combined_mode(void);
  67. combined_mode_t set_combined_mode(combined_mode_t mode);