vimでOS判定をするには以下の設定を
Unixなら$HOME/.vimrcにWindowsなら$VIM/_vimrcに書けばよい

" OSの判定
if has('win32')
    let ostype = "Win"
elseif has('mac')
    let ostype = "Mac"
else
    let ostype = system("uname")
endif

ひさびさにvimスクリプトを書いたからてこずった。。。
ちなみに忘却録的に書くと

let hoge = aaa

hogeという変数にaaaを代入する

hoge = aaa

ではできないことに注意

特殊な変数に設定

名前 用法
$環境変数 環境変数
&オプション set オプションと同じ
@レジスタ テキストレジスタにアクセス
b:変数名 バッファのローカル変数
w:変数名 ウィンドウのローカル変数
g:変数名 グローバル変数
a:変数名 関数の引数
v:変数名 VIMの内部変数
全て大文字、数字、アンダースコア viminfoオプションに!フラグがある場合に、viminfoで保持できる変数
全て小文字、数字、アンダースコア 保存ファイルに保持されない変数


vim変数からオプションに値を代入するには

let piyo = "/tmp"
set hogehoge = piyo

ではなくて

let &piyo = "/tmp"
let &hogehoge = piyo

と書く。