Before, I created a plugin File MIME type column that used the file.exe utility to determine the file encoding. Unfortunately, it works very slowly.
Thus, I have decided to implement the encoding detection manually using simple heuristics similar to Column: FileInfo plugin.
However, I have added the detection of binary and UTF8 files.
It is true. Extended ASCII is the wild west. There is no reliable way to determine a specific encoding.
You can also try another script: File MIME type and Encoding column using libmagic
There is also a potential to use uchardet, but no one has written a plugin using it yet.