Text · keyboard layoutKeyboard layout fixer
Fix text typed in the wrong keyboard layout: «ghbdtn» → «привет» and back. The direction is detected automatically, and everything is computed in the browser.
Text and passwords never reach a server
01
Fix the layout
paste the text — the direction is detected on its own02
Layout table
ЙЦУКЕН and QWERTY on the very same keysThe same key produces different characters in the two layouts. Letters line up row by row, punctuation does not — and that is exactly where manual replacement breaks.
03
About keyboard layouts
Replacement by position
Basicsghbdtn → привет
Every character is replaced by the position of its key rather than by how it sounds. «ghbdtn» is «привет»: the fingers pressed the right keys while the layout was still English. That is why the result is exact instead of a guess.
Punctuation moves too
Punctuation? → , , → б
Punctuation does not line up between the layouts: the Russian full stop and comma live on the slash key, while the comma and full stop keys carry «б» and «ю». The tool accounts for that but keeps a genuine mark at the end of a word — ruining a correct comma is worse than leaving an extra question mark.
Direction detection
Smart moderfr → как
The direction follows the script of the input: Latin means Russian was intended, Cyrillic means English. It can always be set by hand, and the manual choice wins — that is also how the reverse mode «show in the other layout» works.
Mixed text
Word by word«Привет, rfr…»
When some words are typed correctly and others are not, only the broken ones change. The decision is made per word: is it meaningful in its own script, or does it become meaningful after the replacement. Links, e-mail addresses and numbers are skipped entirely.
Not transliteration
Boundariesprivet ≠ ghbdtn
Transliteration goes by sound: «privet» is a deliberate Latin spelling. Read positionally it becomes «зкшмуе», so the tool recognises such input and offers the transliterator instead of passing nonsense off as an answer.
Not an encoding issue
Boundariesпривет
Mojibake appears when text is read with the wrong encoding: the bytes are the same, the character table is not. Positional replacement cannot help there, and the tool says so plainly rather than pretending to fix it.
04
Frequently asked questions
Updated