On Wed 26-Jul-06 1:07pm -0600, Benji Fisher wrote:
> On Wed, Jul 26, 2006 at 07:45:12AM +0200, A.J.Mechelynck wrote: >> IIUC, it's a feature: \* means a literal asterisk. Not a very good >> feature since IIUC, asterisks are not allowed in filenames on Windows. >> Or can they happen in long file names? > Right, as explained under > > :help dos-backslash > > (There is not enough detail there to predict what vim will do in this > particular situation, though.) This might also work (but I am not going > to find a W32 box to test it, sorry): > > :ru! plugin\\**\\*.vim :verb ru! plugin\\**\\*.vim not found in 'runtimepath': "plugin\\**\\*.vim" > :help starstar-wildcard > > to explain using \**\ on DOS-like systems. In fact, after reading that, > it seems to me as though \**\ *should* be interpreted as path separator, > wildcard, path separator in this case. In many cases Vim does work OK here. For example, if I type: :args .\**\*.c I will get all *.c files in directories below the current (but no *.c files in current). Also, :args **\*.c does the same incorrect thing - at least it's consistent :-) OTOH, either of: :args ./**/*.c :args **/*.c find all the *.c files, including in the current, as expected. In just feels like a bug when it almost works in :args but produces an error in :runtime. BTW, until reading through the docs you mentioned, I thought args **\*.c returning everything below current, was a feature. If I needed all *.c in the current and below, I was typing: args *.c **\*.c How do you restrict to just the directories below current (without any shell tricks)? -- Best regards, Bill