3
votes

Obtenir asdf pour charger tous les fichiers dans un répertoire

Est-il possible que asdf charge tous les fichiers (* .lisp) dans un répertoire sans les nommer tous dans mon fichier .asd? L'utilisation de caractères génériques dans la spécification de répertoire ou de nom de fichier ne fonctionne pas. Quelqu'un peut-il vous aider?


0 commentaires

3 Réponses :


3
votes

Voir REPERTOIRE :

CL-USER> (loop for f in * collect `(:file ,(pathname-name f)))
((:file "a") (:file "b"))


0 commentaires

3
votes

Vous pouvez utiliser l'extension «package inferred system» d'ASDF: https://common-lisp.net/project/asdf/asdf/The-package_002dinferred_002dsystem-extension.html#The-package_002dinferred_002dsystem-extension . Vous devrez adhérer à une convention de dénomination des répertoires et des fichiers pour cela, mais c'est (superficiellement) un peu plus proche de la façon dont ces choses sont organisées dans d'autres langues.

Je dois admettre que je préfère la mise en page explicite du fichier asd, car elle sépare clairement les concepts de systèmes, de packages et de fichiers.


0 commentaires

1
votes

Le dépôt asdf est livré avec une extension asdf / contrib / wild-modules.lisp qui fait ce que vous dites. J'utiliserais toujours le package-inferred-system à la place.


0 commentaires