É evidente que sdiff tentou executar um programa chamado exatamente emacs -nw , que não existia. Sua intenção era que sdiff chamasse emacs com uma opção -nw seguida do (s) arquivo (s).
O comportamento é confirmado observando o código-fonte do sdiff , onde sdiff preenche o editor preferencial --directamente-- em argv [0], que coloca o <space><dash>nw junto com o emacs . Você também pode confirmar que sdiff está funcionando corretamente definindo EDITOR=emacs e observando que ele abre o emacs.
Se você precisar da opção ao abrir o emacs, minha sugestão seria criar um script de wrapper:
$ cat emacs.sh
#!/bin/sh
vi "$@"
Brincadeira, claro. Você usaria:
$ cat emacs.sh
#!/bin/sh
emacs -nw "$@"
... e, em seguida, defina EDITOR=/path/to/that/emacs.sh