Tu as remarqué ? AutoCAD® est parfois un peu autiste. Tu lui lances une super routine, il fait le boulot, et à la fin… silence radio (ou pire, il affiche un mystérieux nil).
Pour qu’il communique avec toi, il faut lui apprendre à parler. C’est là qu’interviennent les 4 Fantastiques de l’affichage. Ils se ressemblent, mais chacun a son petit caractère.
Voici le casting ! ![]()
1. PROMPT : Le Crieur Public 
Lui, c’est le plus simple. Il sert uniquement à afficher un message dans la ligne de commande.
-
Son job : Afficher du texte.
-
Sa limite : Il ne comprend QUE le texte (les chaînes). Si tu lui donnes un nombre, il plante.
-
Son retour : Il renvoie toujours
nil(rien).
(prompt "\nBonjour Patrick !")
;; Affiche : Bonjour Patrick !
;; Renvoie : nil
2. PRINC : Le Professionnel Propre 
C’est le chouchou des développeurs. Il est polyvalent et « propre ».
-
Son job : Il affiche n’importe quoi (texte, nombres, listes).
-
Sa spécialité : Il enlève les guillemets des textes. Il affiche le contenu « humain ».
-
L’Astuce de Jedi : Tu as remarqué que tes routines finissent souvent par afficher
nildans la ligne de commande ? C’est parce qu’AutoCAD® affiche toujours le résultat de la dernière ligne.
Pour éviter ça, on met (princ) tout seul à la toute fin du code. C’est comme dire « Silence, j’ai fini ».
(setq texte "Coucou")
(princ texte)
;; Affiche : Coucou (Sans les guillemets !)
3. PRIN1 : Le Brut de Décoffrage 
Lui, il ne fait pas de manières. Il affiche les données telles qu’elles sont codées.
-
Son job : Afficher la donnée brute.
-
Sa spécialité : Il garde les guillemets et les caractères spéciaux. C’est utile si tu veux sauvegarder des données dans un fichier pour qu’AutoCAD® puisse les relire plus tard.
(setq texte "Coucou")
(prin1 texte)
;; Affiche : "Coucou" (Avec les guillemets !)
4. PRINT : Celui qui veut de l’espace 
C’est le frère jumeau de PRIN1 (il garde les guillemets), mais il est claustrophobe.
-
Son job : Afficher la donnée brute.
-
Sa spécialité : Il saute toujours une ligne avant d’écrire, et ajoute un espace après.
(print "Coucou")
;; Affiche :
;; (Saut de ligne)
;; "Coucou" (Saut de ligne)
Le Match : PRINC vs PRIN1
C’est là que tout se joue. Regarde bien la différence avec un texte qui contient des caractères spéciaux (comme \n pour nouvelle ligne).
Imagine le texte : "Ligne1\nLigne2"
PRINC(Le traducteur) va interpréter le code :
Ligne1
Ligne2
PRIN1(Le robot) va afficher le code :
"Ligne1\nLigne2"
En résumé
-
Tu veux juste dire un truc à l’utilisateur ?
PROMPT -
Tu veux afficher un résultat propre ou finir ta routine en silence ?
PRINC(Le plus utilisé !) -
Tu veux voir le code brut ou déboguer ?
PRIN1 -
Tu veux que ça saute une ligne tout seul ?
PRINT
- Utile
- Peut mieux faire
- Inutile
Tous les tutos AutoLISP
