Acontece que os locais do terminal foram configurados de alguma forma errada. Meu .bashrc
tinha um export LC_ALL=C
.
> locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
...
LC_IDENTIFICATION="C"
LC_ALL=C
Depois de remover LC_ALL=C
, obtenho isto:
> locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=en_US.UTF-8
LC_TIME=en_GB.UTF-8
...
LC_IDENTIFICATION=en_US.UTF-8
LC_ALL=
Vim agora abre o mesmo arquivo com enconding=utf-8
e fileencondig=utf-8
e edição é normal.
Obrigado Murphy e Radovan por alguns ponteiros. Talvez alguém tenha uma explicação para esse problema.