Bonjour !!
J'ai un petit probl=E8me de programmation. Peut =EAtre que le sujet a d=E9j= =E0 =E9t=E9 trait=E9, je n'ai pas vraiment pris le temps de regarder dans le forum. J'ai beau avoir cherch=E9 quelques temps sur internet, je n'ai rien trouv=E9...
Il faut savoir que je d=E9bute en dcl. Le lisp devient de plus en plus familier, et je suis arriv=E9 =E0 avoir vraiment besoin d'une bo=EEte de dialogue pour un lisp.
Ce lisp sert =E0 incr=E9menter des caract=E8res. Il ressemble =E0 ceci :
;;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ;Incr=E9mente des chiffres et des lettres. Cr=E9=E9 par Matthieu Noblet (defun c:incmt () (setq temperror *error*
*error* myerror count 0 cntr 0 endv 0 inc 1 a (findfile "GTPI_MACRO_BCAD/VAR.txt") ) (if a (progn (setq refi (open a "R")) (while (setq aa (read-line refi)) (if (or (eq aa "M")(eq aa "CM")(eq aa "MM")) (setq l1 aa)) ) (close refi) ); end of progn ); end of if (setq h_txt (cdr (assoc 40 (tblsearch "STYLE" (getvar "textstyle"))))) (if (or (eq h_txt nil)(eq h_txt 0)) (if (eq l1 "M") (setq h_txte 0.15) (if (eq l1 "CM") (setq h_txte 15) (if (eq l1 "MM") (setq h_txte 150) ))) (setq h_txte h_txt) ); end of if (initget 1 "A N") (setq alpnum (getkword "Alphab=E9tique ou Num=E9rique [A/N] : ")) (if (eq alpnum "N") (progn (while (>=3D count endv) (initget) (setq count (getint "Valeur de d=E9but: ")) (initget 1) (setq endv (getint "Valeur de fin: ")) (initget 1) (setq inc (getint "Incr=E9ment: ")) ); end of while ); end of progn (progn (while (>=3D count endv) (setq count (ascii (getstring "Carat=E8re de d=E9but: ")) endv (ascii (getstring "Caract=E8re de fin: "))) ); end of while ); end of progn ); end of if (if alpnum (progn (initget 1) (setq start (getpoint "Point de d=E9part : ")) (initget (+ 1 2 4)) (setq displ (getdist start "\nD=E9calage : ") ang (getangle start "Direction : ") htxt (getreal (strcat "Hauteur du texte : ")) rot (getangle "Angle de rotation du texte : ") ) (initget 1 "G C D") (setq jus (getkword "Justification du texte [G/C/D] : ")) (if (eq jus "G")(setq jus "MG")(if (eq jus "C")(setq jus "MC")(if (eq jus "D")(setq jus "MR")))) (if (null htxt)(setq htxt h_txte)) (if (null ang)(setq ang 0)) (if (null rot)(setq rot 0)(setq rot (angtos rot))) (while (