The latest standard for vi (and the rest of the utilities) can be found here:
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/
The standard for vi is specifically:
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/v...
Yes, Microsoft, this means you!
https://en.wikipedia.org/wiki/Microsoft_POSIX_subsystem
Microsoft's native UTF-16 really, really needs an editor that easily saves US7ASCII and UTF-8 correctly, both with LF and CR/LF. The native Windows tools are quite poor in getting this right.