Neovim, Vim, Vifm 等の設定ファイル内で OS 判定をしたいとき、 has(feature)
で行うのが簡単です。
has を使う
:help feature-list
で、判定に使える feature name が一覧できます。
WSL を判定する
:echo has('wsl')
=> 1
※ help にはこの記載があったのですが、手元の WSL2 (Ubuntu20.04) だと 0
が返っていました。
Mac を判定する
:echo has('mac')
=> 1
WIndows を判定する
:echo has('win32')
=> 1
設定ファイル内で
if has('mac')
" Mac のみで有効にしたい設定
endif
hostname()
他にも、特定ホストのみで有効にしたい設定などがあれば、 hostname()
で判定して個別に有効にすることも出来ます。
:echo hostname()
=> foobar.local