Use um wrapper de shell fino:
#!/bin/sh
exec /usr/local/bin/mvim -v "$@"
E armazene isso em algum lugar (em algum lugar em PATH ou talvez em ~/libexec ou qualquer outro) e defina esse wrapper como o valor EDITOR .
Com o ZSH, pode-se forçar a expansão:
% EDITOR='echo -E'
% $EDITOR /etc/passwd
zsh: command not found: echo -E
% $=EDITOR /etc/passwd
/etc/passwd
%
Como detalhado em zshexpn(1) :
${=spec}
Perform word splitting using the rules for SH_WORD_SPLIT during
Observe que o ZSH contradiz outras ocorrências sobre não fazendo SH_WORD_SPLIT por padrão. O padrão POSIX, por sinal, é um poderoso rake que muitos usaram incorretamente e, assim, pisou e foi golpeado por:
% DERP="/var /nish"
% ls $DERP
ls: cannot access /var /nish: No such file or directory
% sudo bash
# DERP="/var /nish"
# rm -rf $DERP
...
No entanto, vários outros programas, possivelmente aqueles que não sabem como realizar a divisão da palavra shell, podem chamar EDITOR . A opção mais portátil para EDITOR é, portanto, algo que pode ser executado diretamente por uma chamada exec(3) e, se necessário, esse script pode adicionar qualquer sinalizador para o editor real. Portanto, um invólucro fino e fino.