2012-07-18 2 views
7

Sto tentando di popolare vim arglist con tutti i nomi di file in una directory che non include "matcher". Posso popolarlo con nomi di file che comprendono "matcher" utilizzandoCome posso negare un glob in vim?

args *matcher* 

C'è un modo semplice per negare il glob per ottenere tutti i file che non corrispondono?

risposta

8

L'unico modo che conosco è la seguente: è necessario

:args * | silent! argdelete *matcher* 

La parte silent! omettere No match errore.

Aggiornamento . Si può anche creare un comando a portata di mano di digitare meno tasti:

:command! -nargs=* Args args * | silent! argdelete <args> 

e usarlo in questo modo:

:Args *matcher* 
+0

Bello, lo userò. (Inoltre, ottieni le chiavi pesate :) Molto più bello con cui lavorare. In altre parole, bel gravatar) – sehe

+0

Buona soluzione, troppo cattivo vim non supporta direttamente questo. –

1

comando di xaizek è breve e intelligente; sfortunatamente, si occupa solo di file argomento dalla directory corrente. Ho ampliato su quello per lavorare con qualsiasi directory, e il pacchetto con altri comandi utili per la gestione degli argomenti nel mio ArgsAndMore plugin.

+0

Cool, grazie Ingo. Sto installando il tuo plugin. –