回答:
NB前の両方の答えは、問題を解決する方法を理解するのに十分な情報を私に与えましたが(そして私から賛成票を受け取りました)、どちらも実際に完全な答えを与えませんでした。同じ質問を持つ他の人が調査を行う必要がないように、私は自分の答えを追加しています。ただし、@ googletorpまたは@Azzが回答を編集してこの情報を含める場合は、回答を削除して受け入れます。
出力は、:h feature-list
あなたが使用することができるはずことを示唆しているhas("win32")
とhas("macunix")
、しかし、Vimのバージョンでは動作しません。後者は、OS Xに含まれる(それはない、しかし、MacVimでの作業。)
これが私が最終的に使用したものです:
if has("win32")
"Windows options here
else
if has("unix")
let s:uname = system("uname")
if s:uname == "Darwin\n"
"Mac options here
endif
endif
endif
has("win32")
64ビットWindows上の64ビットVimでも、私にとってはうまくいったことに注意してください。
ブロックuname
内で同様のテストを使用して、if has("unix")
他のUnixのフレーバーを区別することもできます。実行するuname
かuname -a
、コマンドラインから実行して、比較対象を確認してくださいs:uname
。の出力の:h matchstr()
一部のみを比較する必要がある場合も参照してくださいuname
。
あなたは見てとることができ、ここで
基本的に、あなたはどちらかを使用することができhas()
、system()
:
let os = substitute(system('uname'), "\n", "", "")
if os == "SunOS"
..
endif
これはあなたが望んでいることのようです、私はそれをよく理解していませんので、私はあなたをリンクします。
/programming/2842078/how-do-i-detect-os-x-in-my-vimrc-file-so-certain-configurations-will-only-apply