Your task is to make a program that will take an input of a word of any length, in the Calibri font. This word will be made out of letter characters that are found on a normal QWERTY keyboard. There will be no accents or any other characters (i.e punctuation, numbers etc).
So, the original characters are:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
The program will then scramble it to change the characters so they look similar or exactly the same, which would probably confuse a spell checker by flagging it, but it would confuse me as it looks the same as the normal word, with the unchanged character.
An example of this is the Unicode character U+0430
, Cyrillic small letter a ("а"), can look identical to Unicode character U+0061
, Latin small letter a, ("a") which is the lowercase "a" used in English.
Another example is the Russian letters а, с, е, о, р, х and у have optical counterparts in the basic Latin alphabet and look close or identical to a, c, e, o, p, x and y.
Rules:
- The program has to work out similar characters. This means that they cannot be stored in any form. This means that Unicode value or the character itself.
- This is a code golf - the shortest answer wins!
- You have to post the ungolfed version too to avoid cheating that can't be detected when its golfed!
- You can use any function or program to do this, as long as words are not stored there either.
- You must use UTF-8. Other inputs and outputs are banned. This is so that I am actually able to read what you are outputting, and what I am inputting, so I do not have a random mass of squares, question marks and ❮ther rand❮m punctuati❮n!
- It has to work with any word that I input.
A working example (Copy and paste this into word and insert a space after, it should flag the second one and not the first one.)
Halim
Hаlim
Good Luck! Begin