Il layout di tastiera comunemente utilizzato dalle persone è il layout QWERTY come mostrato di seguito.
Ma ci sono anche altri layout di tastiera:
DVORAK
Colemak
Il tuo compito
Il codice richiederà due input: il nome del layout della tastiera e una stringa da trascrivere. Il tuo obiettivo è convertire l'input QWERTY come se stessi digitando con il layout di tastiera indicato come primo parametro.
Regole
Il formato di input è gratuito, è possibile utilizzare stringhe, array, ecc. Inoltre, è possibile utilizzare tre valori distinti per rappresentare i layout per ridurre il conteggio dei byte, ma devono essere rappresentabili ciascuno in 10 byte o meno.
Hai solo bisogno di gestire i tasti con uno sfondo bianco. In particolare, è necessario trasporre i caratteri ASCII stampabili dall'alfabeto QWERTY a uno degli altri alfabeti:
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{|}~
(Nota: questo è stato trascritto a mano da @ETHproductions, quindi se vedi degli errori, ti preghiamo di segnalarli!)
Esempio
DVORAK zZxX
come input darà come output ;:qQ
Questo è code-golf quindi vince la risposta più breve in byte!
!_#$%&-()*}w[vz0123456789SsW]VZ@AXJE>UIDCHTNMBRL"POYGK<QF:/\=^{`axje.uidchtnmbrl'poygk,qf;?|+~
come input per la tastiera Dvorak? Ciò banalizzerebbe la sfida ... Che ne dici di introdurre un limite di lunghezza o qualcosa di simile?
!_#$%&-()*}w[vz0123456789SsW]VZ@AXJE>UIDCHTNMBRL"POYGK<QF:/\=^{`axje.uidchtnmbrl'poygk,qf;?|+~
come input