# Caesar Cypher: shift a letter by 3 places to the right. # This configuration is only used to test features. # # Ironically, the "script" side is actually Latin (Roman) in the # original context, as this was a cryptography method # used by Julius Caesar. general: name: ROT3 (Caesar Cypher) roman_to_script: map: "A": "D" "B": "E" "C": "F" "D": "G" "E": "H" "F": "I" "G": "J" "H": "K" "I": "L" "J": "M" "K": "N" "L": "O" "M": "P" "N": "Q" "O": "R" "P": "S" "Q": "T" "R": "U" "S": "V" "T": "W" "U": "X" "V": "Y" "W": "Z" "X": "A" "Y": "B" "Z": "C" "a": "d" "b": "e" "c": "f" "d": "g" "e": "h" "f": "i" "g": "j" "h": "k" "i": "l" "j": "m" "k": "n" "l": "o" "m": "p" "n": "q" "o": "r" "p": "s" "q": "t" "r": "u" "s": "v" "t": "w" "u": "x" "v": "y" "w": "z" "x": "a" "y": "b" "z": "c" script_to_roman: # This does the opposite of roman to script, but by using hook functions. # Note the absence of a "map" section. hooks: begin_input_token: - - test.rotate - n: -3