Fraid Posté(e) le 27 septembre 2010 Posté(e) le 27 septembre 2010 Bonjours, Encore une histoire de syntaxe.... J'ai besoin de modifier la variable SNAPUNIT pour un accrochage tout les 20 je tappe donc (setvar "SNAPUNIT" 20 20) marche paw (setvar "SNAPUNIT" 20,20) marche pah (setvar "SNAPUNIT" "20,20") toujours pahwwrg Help me :( https://github.com/Fraiddd
Patrick_35 Posté(e) le 27 septembre 2010 Posté(e) le 27 septembre 2010 Salut (setvar "SNAPUNIT" '(20 20))Une astuce pour trouver la syntaxe, pense à getvar @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Fraid Posté(e) le 27 septembre 2010 Auteur Posté(e) le 27 septembre 2010 Merci Ce n'est pas la premiere fois que je bloque à cause de l'apostrophe. Mais quelle est son role ? Je n'ai pas trouver de doc sur l'utilisation de certain caractéres comme l'apostrophe, le point, le [ , \ , $ , | ..... Il y a peut etre une page dans le developer's guide, je viens encore de fouillerrien trouver... https://github.com/Fraiddd
lili2006 Posté(e) le 27 septembre 2010 Posté(e) le 27 septembre 2010 Bonjour à toutes et tous, quelques unes ici => Caractères spéciaux des macros Caractère Description ; Génère la touche ENTREE. ^M Génère la touche ENTREE. ^I Génère la touche TAB. [espace] Entre un espace vierge entre des séquences de commandes dans une commande, ce qui équivaut à appuyer sur ESPACE. \ Génère une pause en vue d'une entrée utilisateur (ne peut pas être utilisé avec des accélérateurs). . Vous permet d'accéder à la commande intégrée d'AutoCAD même si elle a été non définie à l'aide de la commande NONDEF. _ Traduit les commandes et options AutoCAD qu'il précède. =* Affiche le menu déroulant, contextuel ou d'images du niveau le plus élevé. *^C^C Répète une commande jusqu'à ce qu'une autre soit sélectionnée. $ Introduit une expression de macro DIESEL conditionnelle ($M=) ^B Active ou désactive la résolution (équivaut à CTRL+B). ^C Annule la commande ou l'option de commande active (équivaut à ECHAP). ^D Active ou désactive le SCU dynamique (équivaut à CTRL+D). ^E Définit la plan isométrique suivant (équivaut à CTRL+E). ^G Active ou désactive la grille (équivaut à CTRL+G). ^H Génère la touche RETOUR ARRIERE. ^O Active ou désactive le mode ortho. ^P Active ou désactive MENUECHO. ^Q Renvoie un écho de tous les messages, listes d'état et saisies vers l'imprimante (équivaut à CTRL+Q). ^T Active ou désactive la tablette (équivaut à CTRL+T). ^V Change de fenêtre courante. ^Z Caractère nul qui supprime l'ajout automatique d'ESPACE à la fin d'une commande. Il y a peut etre une page dans le developer's guide Personnalisation de l'interface utilisateur => Création de macros Donnent déjà quelques pistes,... Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
didier Posté(e) le 27 septembre 2010 Posté(e) le 27 septembre 2010 coucou je ne sais pas de quoi tu parles Lili, c'est du Diesel, non ? pour répondre à Fraidl'apostrophe sert à dire que ce qui suit est une listetu aurais pu écrire(setvar "snapunit" (list 20 20)) amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
(gile) Posté(e) le 27 septembre 2010 Posté(e) le 27 septembre 2010 Salut, En LISP l'apostrophe est un diminutif de la fonction quote.'(20 20) est équivalent à (quote (20 20))La fonction quote est utilisée pour ne pas évaluer l'expression suivante.voir ce sujet pour de plus amples explications. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Fraid Posté(e) le 27 septembre 2010 Auteur Posté(e) le 27 septembre 2010 Merci pour vos reponse Il me semble que l'apostrophe a plusieur role... Gile, ton lien ne fonctionne paset le quote non plus si je remplacepar contre list fonctionne je suis allez voir dans la description de la fonctions list (AutoLISP Reference Guide) .... As an alternative to using the list function, you can explicitly quote a list with the quote function if there are no variables or undefined items in the list. The single quote character (') is defined as the quote function. _$ '(3.9 6.7)means the same as (list 3.9 6.7)This can be useful for creating association lists and defining points. J'en conclu que j'ai pas fini.... ;) et que quote a l'air de s'utiliser avec des chaines de caracteres et list avec des variablesDonc l'apostrophe peut etre list ou quote et au passage dans le guide a la page du quotej'ai trouvé cela Command: !'aA le point d'exclamation aussi a une fonction? https://github.com/Fraiddd
(gile) Posté(e) le 28 septembre 2010 Posté(e) le 28 septembre 2010 Salut Je persiste l'apostrophe est bien une abréviation pour la fonction quote : The single quote character (') is defined as the quote function. et l'expression (setvar "snapunit" (quote (20 20))) fonctionne exactement comme (setvar "snapunit" '(20 20)). Poussons un peu plus loin :(list 4 5 8) est équivalent à (quote (4 5 8)) ou '(4 5 8) parce que tout les éléments composant la liste sont des valeurs et pas des expression à évaluer. (setq a 4) (list a 5 (* 2 a)) retourne (4 5 8) chaque expression a été évaluée(quote (a 5 (* 2 a))) ou '(a 5 (* 2 a)) retourne (a 5 (* 2 a)) rien n'est évalué à l'intérieur des parenthèses. Mais quote ne s'applique pas qu'aux listes et peut être utilisé avec des symboles (noms de variables ou de fonctions) ou des applications de fonction : (list 'a 5 (* 2 a)) ou (list (quote a) 5 (* 2 a)) retournent (A 5 8) la variable a n'a pas été évaluée (list a 5 '(* 2 a)) ou (list a 5 (quote (* 2 a))) retournent (4 5 (* 2 A)) l'appel de fonction (* 2 a) n'est pas évalué. Le point d'exclamation n'est pas un caractère réservé en LISP et n'est utilisé que pour la ligne de commande. AutoCAD, pour pouvoir interpréter les expressions LISP directement depuis la ligne de commande, doit pouvoir différencier celles-ci des commandes.Si la chaine de caractères entrée en ligne de commande commence par une parenthèse AutoCAD passe la main à l'interpréteur LISP, mais pour un symbole LISP (nom de variable ou de fonction) qui ne peut pas commencer par une parenthèse, il a faluut déterminer un signe distinctif, c'est le point d'exclamation. PS : j'ai édité le lien Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
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