我已经从使用 MacVim 转向在 MacOs Lion 的终端中使用 vim,并且我意识到:
has('macunix')
has('mac')
Run Code Online (Sandbox Code Playgroud)
返回 false 而不是 true (它们在 MacVim 中工作得很好)。这是一个问题,因为我在 Mac 和 Archlinux linode 上使用相同的 .vimrc,并且需要根据操作系统设置特定选项。
到目前为止,我可以挖掘的唯一解决方案是使用 hostname() 函数来获取计算机名称并将其映射到特定操作系统上,但它不如能够检查操作系统本身那么优雅。
有人知道为什么 has('...') 命令不能按记录工作吗?
我同意 Randy Morris 的观点,使用 MacVim 的捆绑 CLI 可执行文件。
然而,这里有几行来自我的~/.vimrc:
let os=substitute(system('uname'), '\n', '', '')
if os == 'Darwin' || os == 'Mac'
set guifont=Inconsolata-dz:h12
" more...
elseif os == 'Linux'
set guifont=Inconsolata-dz\ Medium\ 10
" more...
endif
Run Code Online (Sandbox Code Playgroud)
在 Mac OS X 上,当处于 X11/XQuartz 时$ uname返回,否则返回。DarwinMac
| 归档时间: |
|
| 查看次数: |
2525 次 |
| 最近记录: |