Section 1.1 : La ligne de commande boostée à l'AutoLISP

Dans cette section, on oublie l’interface complexe pour se concentrer sur la ligne de commande AutoCAD, notre nouveau centre de commandement.

  • Les parenthèses magiques : Comprendre l’anatomie basique d’une instruction AutoLISP (fonction argument). Pourquoi il y en a partout et comment ne pas s’y perdre.
  • Faire parler AutoCAD : Utiliser les fonctions princ et alert pour afficher des messages. C’est inutile pour dessiner, mais indispensable pour vérifier que notre code fonctionne.

L’AutoLISP a une réputation : on dit souvent en plaisantant que LISP signifie « Lots of Irritating Superfluous Parentheses » (Plein de Parenthèses Superflues et Irritantes). Tu vas vite comprendre pourquoi, mais tu vas aussi voir qu’il y a une logique implacable derrière.

1. Les parenthèses magiques En AutoLISP, la règle d’or est simple : Toute action est enfermée dans des parenthèses. La structure est toujours la même : (VERBE SUJET) ou (FONCTION ARGUMENTS). La fonction (l’action que tu veux faire) est toujours le premier mot juste après la parenthèse ouvrante.

Par exemple, si on faisait du LISP dans la vraie vie, manger une pomme s’écrirait : (manger pomme).

2. Faire parler AutoCAD Pour notre premier vrai code, demandons à AutoCAD de nous afficher un message. On utilise pour cela la fonction alert (qui crée une boîte de dialogue) ou la fonction princ (qui écrit discrètement dans la ligne de commande).

Copie-colle cette ligne exactement comme ceci dans ta ligne de commande AutoCAD et appuie sur Entrée :

(alert "Bonjour, je suis AutoCAD et je t'obéis désormais.")

Boum. Une boîte de dialogue apparaît. Félicitations, tu viens d’exécuter ton premier code AutoLISP. Note : Le texte est entre guillemets anglais " " car c’est ce qu’on appelle une « chaîne de caractères » (un texte, par opposition à une commande ou un chiffre).

Maintenant, essaie ceci :

(princ "Ceci est un message discret.")

Regarde ta ligne de commande. Le message s’affiche, mais AutoCAD rajoute souvent un petit texte parasite à la fin (il répète la dernière chose qu’il a comprise, c’est son côté perroquet). Pour avoir un affichage propre, les programmeurs AutoLISP utilisent une petite ruse : ils rajoutent un (princ) vide à la fin.

(princ "Ceci est un message parfait.") (princ)

Alors, est-ce que tu as l’impression d’avoir fait de la programmation jusqu’à maintenant ? Pas vraiment, n’est-ce pas :slightly_smiling_face:? Et tu as à moitié raison. Tu as bien utilisé des instructions AutoLISP, des fonctions, mais tu n’as pas fait de programme. Tu les as juste fournies à la ligne de commande. C’est la beauté AutoLISP, on peut lui parler directement à la ligne de commande sans nécessairement faire un programme. :wink:

[!Tip] Référence
Vous trouverez la référence de toutes les fonctions AutoLISP dans l’aide en ligne.