Windows-1257 Windows-1257 (CP-1257, Baltic) Windows Code Pages
The Windows-native Baltic code page — the practical counterpart to ISO-8859-13 for Estonian, Latvian, and Lithuanian text.
What it is
Windows-1257 is Microsoft's Baltic code page, the Windows-native counterpart to ISO-8859-13, covering Estonian, Latvian, and Lithuanian text on Windows systems following the standard Windows-125x pattern.
Byte structure
| Byte range | Content |
|---|---|
| 0x00–0x7F | Identical to ASCII |
| 0x80–0x9F | Printable characters (curly quotes, dashes) |
| 0xA0–0xFF | Largely shared with ISO-8859-13's Baltic-region character coverage |
Why your text is garbled (symptom → cause)
| Symptom | Likely cause |
|---|---|
| Baltic accented letters mostly correct, punctuation wrong | Windows-1257 vs. ISO-8859-13 confusion in the 0x80–0x9F range |
| Legacy Baltic-region Windows documents garbled after migration | Windows-1257 data needing explicit conversion to UTF-8 |
Compatibility & gotchas
- The Windows-native counterpart to ISO-8859-13, more commonly deployed on Windows systems for Baltic-region text historically.
Fixing it
- Command-line conversion:
iconv -f WINDOWS-1257 -t UTF-8 input.txt -o output.txt
Comparison
| Encoding | Key difference from Windows-1257 |
|---|---|
| ISO-8859-13 | Same base Baltic letter coverage, differs in the 0x80–0x9F range |
| UTF-8 | Full Unicode coverage, the modern default |
FAQ
Is Windows-1257 the same as ISO-8859-13?
Nearly — they share the core Baltic letter assignments, differing mainly in the 0x80–0x9F printable-character range, following the same pattern as the other Windows-125x/ISO-8859 encoding pairs.
Fun fact
The Baltic states' relatively small combined population meant Windows-1257 and ISO-8859-13 both had comparatively limited real-world deployment scale compared to larger-region encodings like Windows-1251 (Cyrillic) or Windows-1252 (Western Europe) — a reminder that encoding adoption often tracked market size as much as linguistic need.