rot3.yml 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. # Caesar Cypher: shift a letter by 3 places to the right.
  2. # This configuration is only used to test features.
  3. #
  4. # Ironically, the "script" side is actually Latin (Roman) in the
  5. # original context, as this was a cryptography method
  6. # used by Julius Caesar.
  7. general:
  8. name: ROT3 (Caesar Cypher)
  9. roman_to_script:
  10. map:
  11. "A": "D"
  12. "B": "E"
  13. "C": "F"
  14. "D": "G"
  15. "E": "H"
  16. "F": "I"
  17. "G": "J"
  18. "H": "K"
  19. "I": "L"
  20. "J": "M"
  21. "K": "N"
  22. "L": "O"
  23. "M": "P"
  24. "N": "Q"
  25. "O": "R"
  26. "P": "S"
  27. "Q": "T"
  28. "R": "U"
  29. "S": "V"
  30. "T": "W"
  31. "U": "X"
  32. "V": "Y"
  33. "W": "Z"
  34. "X": "A"
  35. "Y": "B"
  36. "Z": "C"
  37. "a": "d"
  38. "b": "e"
  39. "c": "f"
  40. "d": "g"
  41. "e": "h"
  42. "f": "i"
  43. "g": "j"
  44. "h": "k"
  45. "i": "l"
  46. "j": "m"
  47. "k": "n"
  48. "l": "o"
  49. "m": "p"
  50. "n": "q"
  51. "o": "r"
  52. "p": "s"
  53. "q": "t"
  54. "r": "u"
  55. "s": "v"
  56. "t": "w"
  57. "u": "x"
  58. "v": "y"
  59. "w": "z"
  60. "x": "a"
  61. "y": "b"
  62. "z": "c"
  63. script_to_roman:
  64. # This does the opposite of roman to script, but by using hook functions.
  65. # Note the absence of a "map" section.
  66. hooks:
  67. begin_input_token:
  68. -
  69. - test.rotate
  70. - n: -3