On 04/01/08 18:27 +0100, Bram Moolenaar wrote:
>! * STYLE_VIMGLOB: NL separated
>! * If we use *sh*, we define "vimglob()".
I have been worried about the matched name which contains NL.
$ cat test.vim
call writefile([], "{foo")
call writefile([], "{foo\nfoo")
$ vim -c "so test.vim"
~
~
:set wildmenu
:set shell=sh
:e \{<Hit Tab>
:" wildmenu returns ["test.vim" , "{foo", "{foo"], note the duplicate "{foo"s.
:e <Hit Tab>
:" wildmenu returns ["test.vim" , "{foo", "{foo<00>foo"], looks right,
:" but it will cause an error when we choose "{foo<00>foo" to edit.
:set shell=csh
:e \{<Hit Tab>
:" nothing got matched.
IMHO, interacting with different shells is a complicated task. What
about defining a Vim's own interface to the file system? Then if
something should be expanded, such as environment variables, '~', etc,
it can be direct processed in Vim via system interface (like getenv(3)),
other than carefully interacting with various shells.
--
Dasn
--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---