ascii is a fixed-width encoding. so are many other legacy encodings, but no modern text encoding. note, ascii is legal utf-8 text, but it's only fixed-width in that sense only when that subset is used. as soon as text uses even one letter outside of the ascii subset, or even if software expects utf-8 text, and can't rely on only the ascii subset used, then the (utf-8) encoding used is variable-length.