Acho que esse comportamento se deve ao descrito em :help c_Esc
(leia "macros" como "mapeamentos"; eles estão intimamente relacionados):
<Esc> When typed and 'x' not present in 'cpoptions', quit Command-line mode without executing. In macros or when 'x' present in 'cpoptions', start entered command.
Você pode contornar isso usando <C-c>
:
:cnoremap <del> <C-c>