:args `=filter(expand('**', v:true, v:true), '!isdirectory(v:val)')` works for me (Vim 8.2.74 on OpenBSD 6.6). If you checked on Windows it might mean a Windows related bug(?)
On Sun, Jan 5, 2020 at 10:01 PM Tim Chase <vim@tim.thechases.com> wrote:
On 2020-01-05 06:28, Jason Franklin wrote:
> Is there a concise, clean method to omit directories from the
> arglist when populating it with all files below the current project
> directory?
I was unable to find anything inherent to the "**" token, but at
least on *nix-like platforms you might be able to use
:args `find . -type f`
as detailed at
:help backtick-expansion
If you're stuck on Windows without a find(1) command, you *should*
*in theory* be able to do it in pure vim with a bit more typing:
:args `=filter(expand('**', v:true, v:true), '!isdirectory(v:val)')`
because
:echo filter(expand('**', v:true, v:true), '!isdirectory(v:val)')
returns the right results. However I'm not getting this to work.
Can another set of eyes confirm if this is a bug? I'm basing my
determination on
:help `=
"""
You can have the backticks expanded as a Vim expression, instead of
as an external command, by putting an equal sign right after the
first backtick
...
When the result is a |List| then each item is used as a name.
"""
So I would expect the ":args `=…`" to work because the filter()
returns a list according to type().
Am I missing something?
-tim
--
--
You received this message from the "vim_use" 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_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/vim_use/20200105150052.494caa75%40bigbox.attlocal.net.
--
When in doubt become a philosopher.
-- --
You received this message from the "vim_use" 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_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/vim_use/CAN%2Bhyd1VrTwUtnedVPMhBup5L88P129GzyTsCcumoAf2B1dLNw%40mail.gmail.com.
No comments:
Post a Comment