AFAICT, this is only true if you read a fixed number of bytes. If you read the whole thing, the encoding will be the default_external.

We might also try forcing the regexp to have binary encoding with something like this:
```
r = Regexp.new("^[\r[:print:]]*$".force_encoding("binary"), Regexp::FIXEDENCODING)
```

OTOH, when we switch to ruby diffing we'll be stuck reading the file into memory anyway, so maybe not worth caring about.