PHILPHIL Posté(e) le 23 décembre 2022 Posté(e) le 23 décembre 2022 Hello j'ai écrit beaucoup de lisp sans jamais mettre les variables globales entre les guillements apres le defun c'est grave docteur ??? les puristes de la prog me diront que "oui" ces variables non effacées apres la fin du lisp doivent bien prendre un peu de place quelque part. est ce que je peux remédier a ca facilement par du code, avez vous programme qui réécrirait les variables globales a la bonne place en fin de ligne defun ?? j'utilise VISUAL LISP pour autocad ou VISUAL STUDIO CODE fait il ca automatiquement ?? ou alors je dois le faire manuellement ? pour les lisp aillant bcp de variable (defun c:toto_par_ci_par_la ( / variable_globale ) ) merci Phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
Luna Posté(e) le 23 décembre 2022 Posté(e) le 23 décembre 2022 Coucou, Personnellement je déclare mes variables locales manuellement, car cela me force premièrement à relire entièrement le programme avant de le tester, et ensuite cela force également une certaine rigueur sur la déclaration des variables et la manière dont j'ai besoin d'elles. Pour VS Code, je n'ai aucune idée de si cela est possible malheureusement. Pour l'IDE d'AutoCAD (commande VLIDE), il me semble qu'il y a moyen d'avoir la liste des variables qui ne sont pas déclarées localement dans un fichier via "Check Text in editor" (cf. >>ici<< en anglais, expliqué par LeeMac). Bisous, Luna
PHILPHIL Posté(e) le 23 décembre 2022 Auteur Posté(e) le 23 décembre 2022 hello Luna merci il y a 38 minutes, Luna a dit : Pour l'IDE d'AutoCAD (commande VLIDE), il me semble qu'il y a moyen d'avoir la liste des variables qui ne sont pas déclarées localement dans un fichier via "Check Text in editor" (cf. >>ici<< en anglais, expliqué par LeeMac) j'ai utilisé cette astuce, pour quelque lisp. réponse : donc a la MANO Phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
Luna Posté(e) le 23 décembre 2022 Posté(e) le 23 décembre 2022 haha ^^ Comme je l'ai dit, je le fait personnellement dans tous les cas à la mano pour les raisons citées au-dessus (et aussi parce que je n'ai pas trouvé un moyen de le faire en auto). Mais vui en soit ce n'est pas un gros travail et à partir du moment que l'on sait qu'il faut déclarer ses variables localement, chat se fait plutôt facilement ! Tout dépend de la méthode de travail de chacun aussi, j'avoue que j'ai tendance à utiliser un minimum de variables lorsque je le peux donc c'est plus simple pour les déclarer. J'utilise également une dénomination commune pour mes variables entre tous mes programmes, comme chat j'ai juste une logique à appliquer lorsque je dois les déclarer (si je parcours un jeu de sélection, je sais d'avance que je doit déclarer jsel, i et name par exemple). Et comme je l'ai dit, il est fortement conseillé de déclarer ses variables localement avant de tester un programme sur AutoCAD, cela évite de polluer le dessin avec des variables globales inutiles (sauf cas particuliers). Mais vui, c'est important de déclarer ses variables localement ! Alors du coup je suis peut-être une puriste, mais au moins mes programmes fonctionnent parfaitement entre-eux 😜 Bisous, Luna
PHILPHIL Posté(e) le 23 décembre 2022 Auteur Posté(e) le 23 décembre 2022 3800 lisp a reprendre donc mouai ca va rester comme ca FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
Curlygoth Posté(e) le 23 décembre 2022 Posté(e) le 23 décembre 2022 Citation avez vous programme qui réécrirait les variables globales a la bonne place en fin de ligne defun ?? je suis pas expert lisp. Mais si c'est juste ajouter des caractères sur des lignes ou il y a ecrit " defun c: " et que l'action a faire est entre tes 2 parentheses ( \ ) tu peux le faire sous n'importe quels languages 😉 tant que tu sais gérer des fichiers txt 😉 si tu as besoin d'aide... Mon site Web (en cours de construction) : Site DA-CODE de @didier
bonuscad Posté(e) le 23 décembre 2022 Posté(e) le 23 décembre 2022 Bon c'est très vieux, mais ces deux discussions peuvent aider si on les maîtrise... Je n'ai plus trop utilisé depuis, mais les retours sont imposant dans les versions récentes, depuis l'apparition du vl et vlax https://cadxp.com/topic/7053-express-tools/#comment-34623 https://cadxp.com/topic/17262-liste-de-fonctions-dun-lisp/#comment-91086 Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Luna Posté(e) le 29 décembre 2022 Posté(e) le 29 décembre 2022 Le 23/12/2022 à 21:53, Curlygoth a dit : Mais si c'est juste ajouter des caractères sur des lignes ou il y a ecrit " defun c: " et que l'action a faire est entre tes 2 parentheses ( \ ) On peut évidemment facilement lire un fichier LISP et chercher une logique pour récupérer la liste des variables, comme par exemple pour chaque ligne possédant un : (setq tu récupères tous les caractères qui suivent jusqu'au caractère " " (espace). Ainsi tu peux déjà récupérer une partie des variables déclarées dans un programme. Cependant dans de nombreux cas, tu ne vas pas pouvoir récupérer toutes les variables déclarées, comme par exemple (setq var1 ... var2 ... ) (setq var1 ... var2 ... ) (mapcar 'set (list 'var1 'var2)) bref, c'est faisable pour une partie, mais récupérer 100% des variables déclarées pour les ajouter à la liste des variables locales, cela reste difficile...et ce à cause de la façon dont est écrit le LISP. Bisous, Luna
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