Domanda

Come faccio a ottenere un elenco di file (* .jpg) da tutte le cartelle, utilizzando script-fu in GIMP?

(let* ((filelist (cadr (file-glob pattern 1)))

Questo diventa solo i file dalla cartella corrente.

È stato utile?

Soluzione

Sarà un po 'complicato, ma può essere fatto. L'elenco dei file che i rendimenti di file-glob per la directory corrente include sottodirectory. Così si può utilizzare tale elenco per costruire ricorsivamente più glob stringhe, che possono essere passati al file glob, e così via.

(define separator "\\") ; I am using Windows
(define (all-files dir)
  (let* ((patt  (string-append dir separator "*"))
         (files (cadr (file-glob patt 1))))
    (append files (search-dirs files))))
(define (search-dirs dirs)
  (if (null? dirs)
      (list)
      (append (all-files (head dirs)) (search-dirs (tail dirs)))))

Questo funziona, ma è lento. Forse si può trovare un modo per renderlo più veloce?

Tra l'altro, questo restituisce tutti i file, non solo JPG. Per farla tornare solo JPG, modificare la riga che dice "(file file append (search-dirs))". Piuttosto che aggiungendo "file", filtrare i file JPG e le accoda solo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top