No. Currentry, `=foo` is a just only way that can specify argument without escaping, and can specify non-valid filename. This is usefull to make buffer with especially name. ex: "[##My Buffer##]". If applies wildignore or suffixes for this, we must avoid to match to them with that backup and specify empty to wildignore like following.
:let old_wildignore = &wildignore :set wildignore= :so `=script_name_that_may_change_value_of_wildignore_option` :let &wildignore = old_wildignore " the change of wildignore is not arrlied I think, fnameescape() is not best way to specify argument for any commands. Because edit command treat argument as pattern. :e [a-z] If fnameescape() escape this, :e \[a-z\] When you run below on windows: mkdir C:\[a- mkdir C:\[a-\] How to specify argument to edit this? On 6/15/12, Ingo Karkat <[email protected]> wrote: > On 15-Jun-2012 15:35:05 +0200, Ingo Karkat wrote: > >> The issue is that some plugin writers have used backtick expansion as >> a workaround for the mentioned bugs in fnameescape(). > > I think the help text could also be more clear about 'wildignore'; I only > found > out about this behavior by chance. > > -- regards, ingo > > diff -r ca39f14c1ec3 runtime/doc/editing.txt > --- a/runtime/doc/editing.txt Thu Jun 14 20:59:25 2012 +0200 > +++ b/runtime/doc/editing.txt Fri Jun 15 17:05:30 2012 +0200 > @@ -377,8 +377,9 @@ > embedded spaces must be escaped with a backslash. > > *wildcard* *wildcards* > -Wildcards in {file} are expanded. Which wildcards are supported depends > on > -the system. These are the common ones: > +Wildcards in {file} are expanded, but as with file completion, > 'wildignore' > +and 'suffixes' apply. Which wildcards are supported depends on the > system. > +These are the common ones: > ? matches one character > * matches anything, including nothing > ** matches anything, including nothing, recurses into directories > @@ -422,9 +423,10 @@ > external command, by using the syntax `={expr}` e.g.: > > :e `=tempname()` > The expression can contain just about anything, thus this can also be used > to > -avoid the special meaning of '"', '|', '%' and '#'. Names are to be > separated > -with line breaks. When the result is a |List| then each item is used as a > -name. Line breaks also separate names. > +avoid the special meaning of '"', '|', '%' and '#', but 'wildignore' still > +applies. Use |fnameescape()| together with |:execute| to open arbitrary > +files. Names are to be separated with line breaks. When the result is a > +|List| then each item is used as a name. Line breaks also separate names. > > *++opt* *[++opt]* > The [++opt] argument can be used to force the value of 'fileformat', > diff -r ca39f14c1ec3 runtime/doc/options.txt > --- a/runtime/doc/options.txt Thu Jun 14 20:59:25 2012 +0200 > +++ b/runtime/doc/options.txt Fri Jun 15 17:05:30 2012 +0200 > @@ -7841,9 +7841,9 @@ > {not available when compiled without the |+wildignore| > feature} > A list of file patterns. A file that matches with one of these > - patterns is ignored when completing file or directory names, and > - influences the result of |expand()|, |glob()| and |globpath()| unless > - a flag is passed to disable this. > + patterns is ignored when expanding |wildcards|, completing file or > + directory names, and influences the result of |expand()|, |glob()| and > + |globpath()| unless a flag is passed to disable this. > The pattern is used like with |:autocmd|, see |autocmd-patterns|. > Also see 'suffixes'. > Example: > > > -- > 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 > -- - Yasuhiro Matsumoto -- 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
