Eu consigo responder minha própria pergunta, para comparar strings no vimscript, devemos usar =~ em vez de == . O reverso é !~
Então edite esta linha if s:uname == "Darwin" to if s:uname =~ "Darwin" para fazer este pequeno script funcionar.
Eu reescrevo isso como função:
function! GetRunningOS()
if has("win32")
return "win"
endif
if has("unix")
if system('uname')=~'Darwin'
return "mac"
else
return "linux"
endif
endif
endfunction
let os=GetRunningOS()
Espero que isso ajude alguém. No caso, alguém interesse no meu .vimrc , verifique meus dotFiles