Les commentaires en AutoLISP
mardi 27 janvier 2026Commenter son code est une bonne pratique qui facilite la maintenance et la compréhension de vos programmes. AutoLISP supporte cinq styles de commentaires, chacun ayant un rôle bien précis. Voyons lesquels.
Le commentaire en ligne : ;| ... |;
Ce style permet d'insérer un commentaire directement au milieu d'une expression, ou sur plusieurs lignes :
(setq x ;| valeur initiale |; 10)
On peut aussi l'utiliser sur plusieurs lignes :
;| Ceci est un commentaire
sur plusieurs lignes |;
C'est le seul style de commentaire en AutoLISP qui permet de commenter un bloc de code. Il est utile pour désactiver temporairement une portion de code pendant le débogage.
Le commentaire de colonne : ;
Un commentaire précédé d'un seul point-virgule est aligné sur une colonne fixe définie dans les options de formatage de VLIDE. Il est destiné aux annotations courtes en fin de ligne :
(setq rayon 10) ; Rayon du cercle
(setq diametre (* 2 rayon)) ; Calcul du diamètre
Lors du formatage automatique du code dans VLIDE, ces commentaires sont repositionnés à la colonne définie par l'option Single-Semicolon comment indentation.
Le commentaire de colonne courante : ;;
Un commentaire précédé de deux points-virgules est indenté au même niveau que le code environnant. On l'utilise pour décrire le bloc de code qui suit :
(defun c:dessiner-cercle (/ centre rayon)
;; Demander les paramètres à l'utilisateur
(setq centre (getpoint "\nCentre du cercle : "))
(setq rayon (getdist centre "\nRayon : "))
;; Dessiner le cercle
(command "._CIRCLE" centre rayon)
)
C'est le style le plus courant pour commenter des sections de code à l'intérieur d'une fonction. Notez que avec VS Code, vous pouvez également utiliser Ctrl + K, Ctrl + C pour passer en commentaire les lignes sélectionnées (Ctrl + K, Ctrl + U vous permettra de les décommenter).
Le commentaire d'en-tête : ;;;
Un commentaire précédé de trois points-virgules est toujours placé en début de ligne, sans indentation. On l'utilise pour documenter les fonctions :
;;; Dessine un cercle à partir d'un centre et d'un rayon
;;; centre : le point central du cercle
;;; rayon : le rayon du cercle
(defun dessiner-cercle (centre rayon)
(command "._CIRCLE" centre rayon)
)
C'est la convention utilisée pour décrire le rôle d'une fonction, ses paramètres et sa valeur de retour.
Le commentaire de fermeture : ;_
Ce style est placé juste après une parenthèse fermante pour indiquer quelle expression elle ferme :
(defun c:exemple (/ i)
(setq i 0)
(while (< i 10)
(if (= (rem i 2) 0)
(princ (strcat "\n" (itoa i) " est pair"))
(princ (strcat "\n" (itoa i) " est impair"))
) ;_ if
(setq i (1+ i))
) ;_ while
) ;_ defun
Quand les fonctions deviennent longues et que les parenthèses s'accumulent, ce style de commentaire aide à savoir quelle expression chaque parenthèse fermante termine.
Exemple récapitulatif
Voici un exemple qui utilise les cinq styles :
;;; Affiche les nombres de 1 à n avec leur parité
;;; n : le nombre maximum
(defun afficher-parite (n / i)
;; Initialisation
(setq i 1)
;; Boucle principale
(while (<= i n)
(if (= (rem i 2) 0)
(princ (strcat "\n" (itoa i) " est pair" ;| résultat pair |;))
(princ (strcat "\n" (itoa i) " est impair"))
) ;_ if
(setq i (1+ i)) ; Incrémenter le compteur
) ;_ while
) ;_ defun
Bonnes pratiques
- Utilisez
;;;pour documenter vos fonctions (rôle, paramètres, valeur de retour). - Utilisez
;;pour expliquer les sections logiques de votre code. - Utilisez
;_quand vos fonctions dépassent une dizaine de lignes pour repérer les parenthèses fermantes. - Utilisez
;avec parcimonie pour les annotations en fin de ligne. - Utilisez
;| ... |;pour désactiver temporairement du code pendant le débogage.
Besoin d'un développement AutoCAD (AutoLISP, ObjectARX, .NET, VBA) ? Contactez-moi pour un devis gratuit.