Ihre Aufgabe ist es, ein Programm zu erstellen, das die Eingabe eines Worts beliebiger Länge in der Schriftart Calibri ermöglicht. Dieses Wort besteht aus Buchstaben, die auf einer normalen QWERTZ-Tastatur zu finden sind. Es werden keine Akzente oder andere Zeichen (z. B. Satzzeichen, Zahlen usw.) angezeigt.
Die ursprünglichen Zeichen sind also:
ABCDEFGHIJKLMNOPQRSTU VWXYZ
Das Programm verschlüsselt es dann, um die Zeichen so zu ändern, dass sie ähnlich oder genau gleich aussehen, was eine Rechtschreibprüfung wahrscheinlich verwirren würde, wenn es markiert wird, aber es würde mich verwirren, da es genauso aussieht wie das normale Wort mit dem unveränderten Zeichen.
Ein Beispiel hierfür ist das Unicode-Zeichen U+0430
, der kyrillische Kleinbuchstabe a ("à"), der mit dem Unicode-Zeichen identisch sein kannU+0061
, dem lateinischen Kleinbuchstaben a ("a") im Englischen verwendeten Kleinbuchstaben "a".
Ein weiteres Beispiel sind die russischen Buchstaben А, С, е, о, р, х und у, die optische Entsprechungen im lateinischen Grundalphabet haben und ähnlich oder identisch mit a, c, e, o, p, x und y aussehen.
Regeln:
- Das Programm muss ähnliche Charaktere ausarbeiten. Dies bedeutet, dass sie in keiner Form gespeichert werden können . Dies bedeutet, dass Unicode-Wert oder das Zeichen selbst.
- Dies ist ein Codegolf - die kürzeste Antwort gewinnt!
- Sie müssen auch die ungolfed Version posten, um Betrug zu vermeiden, der beim Golfen nicht erkannt werden kann!
- Sie können dazu eine beliebige Funktion oder ein beliebiges Programm verwenden, sofern dort auch keine Wörter gespeichert sind.
- Sie müssen UTF-8 verwenden. Andere Ein- und Ausgänge sind gesperrt. Dies ist so, dass ich tatsächlich lesen kann, was Sie ausgeben und was ich eingebe, so dass ich keine zufällige Masse von Quadraten, Fragezeichen und sonstigen Satzzeichen habe!
- Es muss mit jedem Wort funktionieren, das ich eingebe.
Ein funktionierendes Beispiel (Kopieren Sie dieses und fügen Sie es in das Wort ein. Fügen Sie danach ein Leerzeichen ein. Es sollte das zweite und nicht das erste kennzeichnen.)
Halim
Hаlim
Einige hilfreiche Informationen finden Sie hier
Viel Glück! Start
Antworten:
JavaScript, 71 Zeichen
Probieren Sie es auf JSFiddle aus.
Übrigens wäre das in CoffeeScript etwas kürzer ( 53 Zeichen )
EDIT: Ich habe gerade bemerkt, dass UTF-8 erforderlich ist. In JavaScript wird das schwierig. : - /
quelle
George
ist jetzt ein wirklich verwirrtes Wort - es denkt, es istEgret
und andere Sachen!level
,rotor
,racecar
,refer
undkayak
.Python3 - 51
Der faule Weg!
Leicht ungolfed
quelle
print()
- es wird es trotzdemCommon Lisp, 142
Ich habe keine Schrift namens Calibri und die meisten meiner Schriftarten haben diese Symbole nicht, aber DejaVu Sans hat sie. Ich ersetze Buchstaben durch mathematische alphanumerische Symbole . Die Rechtschreibprüfung kennzeichnet keine Fehler. Stattdessen werden Fehler nicht erkannt, auch wenn Wörter offensichtliche Tippfehler aufweisen.
Golf gespielt:
Ungolfed:
Verwendung
clisp asconfuse.lisp <in >out
ecl -shell asconfuse.lisp <in >out
sbcl --script asconfuse.lisp <in >out
Ich gehe davon aus, dass Ihr Lisp-Interpreter Unicode unterstützt und Ihr Gebietsschema UTF-8 ist. Nicht verwenden
abcl
, da es Probleme außerhalb der mehrsprachigen Basisebene gibt.Unix-Klone: Sie können
locale
in einem Terminal ausgeführt werden. Wenn die Zeile für LC_CTYPE nicht UTF-8 enthält, versuchen Sie esexport LC_CTYPE=en_US.UTF-8
.Beispiel
Ich habe einige Ausgaben in LibreOffice eingefügt. Mein Text enthält offensichtliche Rechtschreibfehler, die LibreOffice jedoch nicht erkennt. Es werden keine roten Kringel unter den Wörtern angezeigt, und die Schaltfläche "Rechtschreibprüfung" meldet nur "Die Rechtschreibprüfung ist abgeschlossen".
Der Text lautet "𝖭𝗈𝗐𝗐 𝖭𝗈𝗐𝗐 𝗂𝗓 𝗍𝖾𝗁 𝗍𝗍𝗂𝗆𝖾 𝖿𝗈𝗈𝗋 𝖺𝗁𝗅 𝗇𝖾𝗆 𝗍𝗍𝗈 𝖼𝗈𝖾𝗆 𝗍𝗍𝗈 𝗍𝖾𝗁 𝗍𝖾𝗁 𝖺𝖾𝖽 𝗈𝗏 𝗍𝖾𝗋𝖾." Firefox findet in diesem Text auch keine Rechtschreibfehler.
quelle
Dyalog APL , 7 Zeichen
Zwischen den Anführungszeichen befindet sich ein U + FEFF ( Null-Breite-Leerzeichen , auch bekannt als Unicode-Stückliste ). Dieses Zeichen kommt in der Schriftart Calibri vor. Das Zeichen
''
wird jedem Zeichen im Argument∘
vorangestellt , und das Ganze wird dann abgeflacht .,
¨
∊
quelle