Some source files in MSVC (e.g. resource.h) are encoded in UTF-16 (LE) with Byte Order Mark (i.e. signature: FF FE for little-endian and FE FF for big-endian), and `git diff --numstat` shows `-` in place of number of added/removed lines, e.g.: - - clientapp/resource.h Can you auto detect UTF-16 by reading first 2 bytes of the file, and correctly show number of lines added/removed?