# Encodings ftfy can handle

ftfy covers common encoding mix-ups while keeping false positives very low. It
can understand text decoded as:

- Latin-1 (ISO-8859-1)
- Windows-1250 (Eastern European)
- Windows-1251 (Cyrillic)
- Windows-1252 (Western European and the Americas)
- Windows-1253 (Greek)
- Windows-1254 (Turkish)
- Windows-1257 (Baltic)
- ISO-8859-2
- MacRoman
- cp437

when it should have been decoded as UTF-8 or CESU-8. It also handles text that
was intended as Windows-1252 but decoded as Latin-1, where punctuation becomes
C1 control characters.

Other mix-ups between single-byte encodings are too ambiguous to repair
reliably. Legacy Chinese, Japanese, and Korean byte encodings such as Shift-JIS
and GB18030 are not detected. See upstream
[issue #34](https://github.com/rspeer/python-ftfy/issues/34) for the reasoning.

The input to the normal fixer functions is already-Unicode JavaScript text, so
actual CJK text is handled normally; only discovering mojibake introduced by
legacy CJK encodings is out of scope.
