La disposition du clavier que les gens utilisent couramment est la disposition QWERTY comme indiqué ci-dessous.
Mais il existe également d'autres dispositions de clavier:
DVORAK
COLEMAK
Ta tâche
Votre code prendra deux entrées: le nom de la disposition du clavier et une chaîne à transcrire. Votre objectif est de convertir votre entrée QWERTY comme si vous tapiez avec la disposition du clavier donnée comme premier paramètre.
Règles
Le format d'entrée est gratuit, vous pouvez utiliser des chaînes, des tableaux, etc.
Il vous suffit de manipuler les touches avec un fond blanc. Plus précisément, vous devez transposer les caractères ASCII imprimables de l'alphabet QWERTY à l'un des autres alphabets:
QWERTY: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
DVORAK: !_#$%&-()*}w[vz0123456789SsW]VZ@AXJE>UIDCHTNMBRL"POYGK<QF:/\=^{`axje.uidchtnmbrl'poygk,qf;?|+~
COLEMAK: !"#$%&'()*+,-./0123456789Oo<=>?@ABCSFTDHUNEIMKY:QPRGLVWXJZ[\]^_`abcsftdhuneimky;qprglvwxjz{|}~
WORKMAN: !"#$%&'()*+,-./0123456789Ii<=>?@AVMHRTGYUNEOLKP:QWSBFCDXJZ[\]^_`avmhrtgyuneolkp;qwsbfcdxjz{|}~
(Remarque: cela a été transcrit à la main par @ETHproductions, donc si vous voyez des erreurs, veuillez les signaler!)
Exemple
DVORAK zZxX
comme entrée donnera comme sortie ;:qQ
Il s'agit de code-golf, donc la réponse la plus courte en octets l'emporte!
!_#$%&-()*}w[vz0123456789SsW]VZ@AXJE>UIDCHTNMBRL"POYGK<QF:/\=^{`axje.uidchtnmbrl'poygk,qf;?|+~
comme entrée pour le clavier Dvorak? Cela banaliserait le défi ... Que diriez-vous d'introduire une restriction de longueur ou quelque chose de similaire?
!_#$%&-()*}w[vz0123456789SsW]VZ@AXJE>UIDCHTNMBRL"POYGK<QF:/\=^{`axje.uidchtnmbrl'poygk,qf;?|+~
comme entrée