PATRICE69 Posté(e) le 27 juin Posté(e) le 27 juin Bonsoir, Y-a-t-il une variable qui permet de connaitre le dossier ou est enregistré le Lisp en cours ? Merci, Patrice
Fraid Posté(e) le 28 juin Posté(e) le 28 juin Bonjour, Non, c'est impossible sans une liste exhaustive des fonctions et de leur emplacement, et même avec cela ce n'est pas sur. Les Lisps sont chargés dans Autocad, il n'y a plus le lien entre le fichier et les fonctions. https://github.com/Fraiddd
Olivier Eckmann Posté(e) le 1 juillet Posté(e) le 1 juillet Avec la commande APPLOAD on a la liste des appli chargées et leur emplacement.
PATRICE69 Posté(e) le 4 juillet Auteur Posté(e) le 4 juillet Bonsoir, Dommage, de ne pas connaître le nom complet du Lisp. Car je souhaitais avoir le dossier et ensuite chargeais les lisp du dossier du Lisp automatiquement. Bonne soirée Patrice
Luna Posté(e) le 5 juillet Posté(e) le 5 juillet Coucou, Pourquoi ne pas les charger via le fichier en question ? En clair il n'y a pas besoin de connaître le dossier à partir du moment où le dossier est connu dans les Emplacements de Fichiers de support... Autrement dit, imaginons que tu ais un fichier LISP "MasterFile.lsp" dans lequel tu écris (load "fichier2.lsp") (load "fichier3.lsp") (load "fichier4.lsp") ;;(load "fichier5.lsp") (load "fichier6.lsp") ... Ainsi les fichiers sont chargés dans le dessin individuellement (tu peux également désactiver temporairement le chargement d'un fichier en mettant la ligne en commentaire) par ton fichier maître. A partir du moment que le(s) dossier(s) sont renseigné(s) dans les "Chemin de recherche de fichiers de support de travail" (et également "Emplacements approuvés" si besoin), il n'y aura aucun soucis. En tout cas, si j'ai compris ce que tu désires faire. Si maintenant le but et de ne pas écrire le nom des fichiers à chaque ajout de fichiers, tu peux te pencher sur ce genre de fonction (https://www.lee-mac.com/getallfiles.html) permettant de lister tous les fichiers d'un dossier spécifique en précisant le type de fichier. Ensuite, pour récupérer le dossier du fichier LISP maître, à partir du moment où le nom du fichier LISP en question est toujours le même, qu'il n'y a pas de doublons et que le dossier est renseignés dans les "chemin de recherche [...]" alors un simple (setq path (findfile "MasterFile.lsp")) (setq folder (substr path 1 (vl-string-position 92 path 1 T))) permet de connaître l'emplacement d'un fichier LISP spécifique (car il faut à minima connaître son nom). Si c'était en effet cela dont tu avais besoin, je pense que la question était mal dirigée ou trop flou pour comprendre le but final. En espérant avoir aidé un peu... Bisous, Luna
(gile) Posté(e) le 5 juillet Posté(e) le 5 juillet Il y a 1 heure, Luna a dit : (setq path (findfile "MasterFile.lsp")) (setq folder (substr path 1 (vl-string-position 92 path 1 T))) On peut faire plus simple avec vl-filename-directory... Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Luna Posté(e) le 5 juillet Posté(e) le 5 juillet il y a 40 minutes, (gile) a dit : On peut faire plus simple avec vl-filename-directory... vui, my bad..
Fraid Posté(e) le 5 juillet Posté(e) le 5 juillet Il y a 2 heures, Luna a dit : Pourquoi ne pas les charger via le fichier en question ? C'est la méthode de chargement que j'utilise le plus. 1 fichier par appli. https://github.com/Fraiddd
Luna Posté(e) le 5 juillet Posté(e) le 5 juillet C'est également ce que j'utilisais le plus (en plus on peut gérer les historiques, versionning, etc... beaucoup plus précisément en séparant les fonctions/commandes par fichier). Malheureusement on a changer de serveurs et du coup cela a généré des latences trop importantes (5min de chargement des fichiers à chaque ouverture de dessin) pour charger les 100 et quelques fichiers individuellement xD Bref, toutes les méthodes sont bonnes en soit, il faut juste adapter en fonction des outils à disposition ^^ Bisous, Luna
PATRICE69 Posté(e) le 8 juillet Auteur Posté(e) le 8 juillet Bonjour, Je vais essayer tout cela. Merci à vous Patrice
SF.Designer Posté(e) le 9 juillet Posté(e) le 9 juillet Si tu as beaucoup de routine a charger, tu peux mettre dans ton fichier de chargement (.mnl), (defun load-lsp () (foreach file (vl-directory-files "C:/XXX" "*.lsp" 1) (load file (strcat file " did not load")) )) (load-lsp) Ca te chargera toute les routines de ton dossier. 1
PATRICE69 Posté(e) le 10 juillet Auteur Posté(e) le 10 juillet Le 09/07/2024 à 08:25, SF.Designer a dit : Si tu as beaucoup de routine a charger, tu peux mettre dans ton fichier de chargement (.mnl), (defun load-lsp () (foreach file (vl-directory-files "C:/XXX" "*.lsp" 1) (load file (strcat file " did not load")) )) (load-lsp) Ca te chargera toute les routines de ton dossier. Merci cela me convient
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant