我已经从使用 MacVim 转向在 MacOs Lion 的终端中使用 vim,并且我意识到:
has('macunix')
has('mac')
返回 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
在 Mac OS X 上,$ uname
在 X11/XQuartz 中返回 Darwin
,否则返回 Mac
。
关于macos - VIM:有 ('macunix' ) 或有 ('mac' ) 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10139972/