Hi, Thanks to many, Vim now passes test_channel successfully on OS X.
Unfortunately, this is not the case when Vim is built with the option
--disable-darwin.
This is not because darwin-disabled Vim is inherently incapable of the
channel feature, but just because there's no has() variable to represent it
properly.
Please look at line 31 of test_channel.vim:
let s:chopt = has('macunix') ? {'waittime' : 1} : {}
This is the key to make test_channel work successfully on OS X.
In eval.c, the value 'macunix' is defined only if --disable-darwin is not
specified at build time.
As a result, when the option is specified at build time, has('macunix') is
to be evaluated false at runtime and thus causing test_channel to get
suprious failure.
The attached patch fixes this issue and includes the proposal of
introducing a new has() variable, 'osx'.
This new variable is to be defined in eval.c when the compiler preset macro
__APPLE__ is defined at build time. As a result, for any build on OS X,
the value is always defined regardless of the presence of --disable-darwin.
With this patch, I confirmed that even darwin-disabled Vim passes
test_channel successfully.
This is quite natural: What 'macunix' represents is some Mac specific code
which is relevant to paste board and text conversion; it has nothing to do
with IPC.
So, IMHO, the use of 'macunix' to check IPC capabilities is an abuse. The
new variable would help to represent the runtime characteristics of OS X.
Best regards,
Kazunobu Kuriyama
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.
osx-non-darwin.patch
Description: Binary data
