O comando :global
que você faz referência em sua pergunta, na verdade, não aceita apenas strings literais, ele lida com qualquer expressão regular. Então, você só precisa criar um que tenha duas ramificações, uma para John
e outra para Dave
. Voila:
:g!/Dave\|John/d
Note que este simplista também corresponderia a Johnny
; você provavelmente deseja limitar as correspondências para palavras-chave inteiras :
:g!/\<\(Dave\|John\)\>/d
Expressões regulares são um recurso poderoso do Vim; Vale a pena aprender mais sobre eles. Comece por :help regular-expression
.