Sim, d e :d[elete] podem ser confusos porque se comportam como "Recortar".
Para tornar d "really" delete, você deve especificar o "registro de buraco negro" ( :help "_ ):
"_d
Você pode mapear d para "_d :
nnoremap d "_d
mas eu manteria o comando original como é, no entanto.