Verificando o código-fonte do Notepad ++, vejo que a opção "Aplicar a arquivos ANSI abertos" está erroneamente rotulada. Ele deve ler "Aplicar a arquivos abertos ASCII " como se aplica somente a arquivos de 7 bits (ASCII).
Um arquivo vazio é "detectado" para ser de 8 bits (ANSI), então a opção nunca se aplica a arquivos vazios.
UniMode um = UnicodeConvertor.getEncoding();
if (um == uni7Bit)
{
if (ndds._openAnsiAsUtf8)
{
um = uniCookie;
}
else
{
um = uni8Bit;
}
}
O UnicodeConvertor.getEncoding()
sempre retorna uni8Bit
quando o arquivo está vazio.
Sugiro que você denuncie isso como um bug.
Nem parece haver nenhuma opção de linha de comando para forçar uma codificação diferente: link