BIM G CO Posté(e) le 28 janvier 2005 Posté(e) le 28 janvier 2005 Comme fonction lisp nous avons vl-string-left-trim mais je n'arrive pas à trouver une fonction qui efface un morceau de texte soit à gauche soit à droite alors .... ;;; Removes the specified characters from the beginning of a string ;;; (vl-string-left-erase position string) ;;; ;;; Arguments ;;; - position ;;; A displacement in the string; the first character is displacement 0. ;;; - string ;;; The string to be stripped of character-set. ;;; ;;; Return Values ;;; A string containing a substring of string with all leading characters in character-set removed ;;; ;;; Examples ;;; _$ (vl-string-left-erase 1 "abcdefjk") ;;; "bcdefjk" ;;; _$ (vl-string-left-erase 5 "abcdefjk") ;;; "fjk" ;;; _$ (vl-string-left-erase 8 "abcdefjk") ;;; "" ;;; _$ (vl-string-left-erase 12 "abcdefjk") ;;; "" (defun vl-string-left-erase (NbCar Val_String / stringlist n stringfinal) (setq stringlist (vl-string->list Val_String)) (if (> NbCar (length stringlist)) (setq NbCar (length stringlist))) (if (or (< (length stringlist) 0) (< NbCar 0)) (setq n 0) (setq n NbCar)) (if (/= stringlist nil) (while (< n (length stringlist)) (progn (if (= stringfinal nil) (setq stringfinal (list (nth n stringlist))) (setq stringfinal (append stringfinal (list (nth n stringlist))))) (setq n (+ n 1)) ) ) ) (if (listp stringfinal) (vl-list->string stringfinal) Val_String ) ) et pour la droite : ;;; Removes the specified characters from the ending of a string ;;; (vl-string-right-erase position string) ;;; ;;; Arguments ;;; - position ;;; A displacement in the string; the first character is displacement 0. ;;; - string ;;; The string to be stripped of character-set. ;;; ;;; Return Values ;;; A string containing a substring of string with all leading characters in character-set removed ;;; ;;; Examples ;;; _$ (vl-string-right-erase 0 "abcdefjk") ;;; "" ;;; _$ (vl-string-right-erase 1 "abcdefjk") ;;; "a" ;;; _$ (vl-string-right-erase 5 "abcdefjk") ;;; "abcde" ;;; _$ (vl-string-right-erase 12 "abcdefjk") ;;; "abcdefjk" (defun vl-string-right-erase (NbCar Val_String / stringlist n stringfinal) (setq stringlist (vl-string->list Val_String)) (setq n 0) (if (> NbCar (length stringlist)) (setq NbCar (length stringlist))) (if (< NbCar 0) (setq NbCar 0)) (if (/= stringlist nil) (while (< n NbCar) (progn (if (= stringfinal nil) (setq stringfinal (list (nth n stringlist))) (setq stringfinal (append stringfinal (list (nth n stringlist))))) (setq n (+ n 1)) ) ) ) (if (listp stringfinal) (vl-list->string stringfinal) Val_String ) ) puisque je ne les ai pas trouvé dans l'aide d'AutoCAD je les ai créées... ;) Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
Tramber Posté(e) le 28 janvier 2005 Posté(e) le 28 janvier 2005 En combinant : (substr string start [length])[tout seul avec strlength, on doit pouvoir y arriver, non ?] et (vl-string-right-trim character-set string)ou(vl-string-right-left character-set string) tu peux certainement arriver à qqe chose de bien + court. Un conseil :tape le mot-clef String dans l'aide puis selectionne String Handling functions Pour chaque catégorie (listes, strings, ...), il y a un tableau de ce genre résumant tout dans l'aide, je ne sais pas si tu connais ces pages. [Edité le 28/1/2005 par Tramber] Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
Tramber Posté(e) le 28 janvier 2005 Posté(e) le 28 janvier 2005 Regarde ce code : (substr "abcde" 2) (substr "abcde" 1) (substr "abcde" 1 (-(strlen "abcde" )1)) Je m'étais trompé sur l'orthographe de strlen Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
BIM G CO Posté(e) le 28 janvier 2005 Auteur Posté(e) le 28 janvier 2005 :casstet: Merci Tramber je vois que j'ai du mal à trouver quelque chose avec l'aide d'autoCAD et c'est parce que tu m'as dit d'aller chercher cette fonction (substr string start [length]) que le l'ai trouvé parce que tu tape string dans l'aide et t'as une tripoté de référence et au bout de la centième tu te lasse..... surtout quand tu vois qu'il y en a plus de 5000! ;) Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
Patrick_35 Posté(e) le 28 janvier 2005 Posté(e) le 28 janvier 2005 En un peu plus simplePour supprimer la chaine "45" de la chaine "1234567989" par exemple(vl-string-subst "" "45" "123456789") @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
BIM G CO Posté(e) le 31 janvier 2005 Auteur Posté(e) le 31 janvier 2005 c'est pour enlever le surlignage des texte mutlilinges qui sont pas correct!alors lu substr correcpond exactement à ce que je cherche. Effacer entre le [surligneur] "\\f"[/surligneur] et [surligneur] ";"[/surligneur]et le [surligneur] "{"[/surligneur] si ontrouve les éléments précédent.(normalisation de MTEXT selon notre BE le cons (3 . ".....") existe uniquement dans le cas où le nombre de caractère est supérieur à 250 ((-1 . ) (0 . "MTEXT") (330 . ) (1 . "dfjkggsdkjkgfjklfjkgjf...dfjkgg [surligneur] }[/surligneur]") (10 121.134 176.901 0.0) (100 . "AcDbEntity") (100 . "AcDbMText") (11 1.0 0.0 0.0) (210 0.0 0.0 1.0) (3 . [surligneur] "{\\fArial|b0|i0|c0|p34;[/surligneur]sdkjkg...") (3 . "fjkgjdfjkggsddffjkdjffjdfjkjk...") (3 . "fjklfjkgjdfjkdfjklfdfjdkljggs...") (3 . "ggsdkjkgfjklsdfjkhfjhfjksdfjk...") (3 . "jkhhjkdfdhfjkjfjkdhh...\\Pklf...") (3 . "kjkgfjklfjdfhdfjhdhdjkjfkgjdf...") (40 . 0.12) (41 . 10.3303) (410 . "Model") (42 . 16.5573) (43 . 1.57165) (44 . 1.0)) (5 . "D52") (50 . 0.0) (62 . 7) (67 . 0) (7 . "Ecriture") (71 . 1) (72 . 5) (73 . 1) (8 . "0") Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
Tramber Posté(e) le 31 janvier 2005 Posté(e) le 31 janvier 2005 que le l'ai trouvé parce que tu tape string dans l'aide et t'as une tripoté de référence et au bout de la centième tu te lasse..... surtout quand tu vois qu'il y en a plus de 5000! suaf que 4 ou 5ème ligne, il y a le tableau résumant: String manipulation function Idem si tu tapes list Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
BIM G CO Posté(e) le 31 janvier 2005 Auteur Posté(e) le 31 janvier 2005 :( bah justement je vois pas ca moua! Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
bonuscad Posté(e) le 31 janvier 2005 Posté(e) le 31 janvier 2005 Dans : Documentation du développeur ->Visual LISP Developer's Guide ->Appendixes ->AutoLISP Function Synopsis ->Basic Functions ->String-Handling Functions Au fait StripMText ne fonctionne pas? Car il fait ce que tu désire (il enléve toutes les séquences de contrôle d'un MText) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
BIM G CO Posté(e) le 31 janvier 2005 Auteur Posté(e) le 31 janvier 2005 Pour StripMtext je ne peux pas le tester car je ferait de la "non qualité" selon notre système de Manuel Qualité ISO 9001. (gestion documentaire) Je suis en attente de modification auprès du chargé de la qualité.... :cool: Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
BIM G CO Posté(e) le 31 janvier 2005 Auteur Posté(e) le 31 janvier 2005 meme pire il ne fonctionne pas test avec Visual AutoLISP : [VERIFICATION du TEXTE Chargement de STRIPMTEXT[3].LSP...].; avertissement: variable locale utilisée comme fonction: [surligneur] SETUP[/surligneur]; avertissement: variable locale utilisée comme fonction: [surligneur] MAINDIALOG[/surligneur]; avertissement: variable locale utilisée comme fonction: [surligneur] STRIPMTEXT[/surligneur]..; Vérification terminée. Donc je ne peux l'utiliser..... Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
bonuscad Posté(e) le 31 janvier 2005 Posté(e) le 31 janvier 2005 Pourquoi le charge tu sous Visual Lisp? Fait simplement la commande "APPLOAD" et sélectionne le lisp à charger. Le charger sous visual peut servir à le débugger, a priori ici il y a un problème de définition de variable locale., mais cela n'empêche pas son execution basique (sans passer par l'éditeur VL.) Personellement j'utilise rarement l'éditeur VL, je suis un dinosaure qui préfère simplement un bon éditeur tel que "UltraEdit" configuré pour la syntaxe Lisp. Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
BIM G CO Posté(e) le 1 février 2005 Auteur Posté(e) le 1 février 2005 StripMtext NE MARCHE PAS : Commande:StripMtext v3.07Choix des objets: 1 trouvé(s) Choix des objets: 1 trouvé(s), 2 au total Choix des objets: no function definition: MAINDIALOG apparemment il ne trouve pas le ( defun MAINDIALOG () ....)or il y est. Je me suis donc résigné à l'ouvrir avec Visual Autolisp : "commande _VLIDE et j'ai cette erreur : [VERIFICATION du TEXTE Chargement de STRIPMTEXT[3].LSP...].; avertissement: variable locale utilisée comme fonction: [surligneur] SETUP[/surligneur]; avertissement: variable locale utilisée comme fonction: [surligneur] MAINDIALOG[/surligneur]; avertissement: variable locale utilisée comme fonction: [surligneur] STRIPMTEXT[/surligneur]..; Vérification terminée. En essayant de comprendre j'ai cru comprendre que le (defun c: StripMText (....).....) contient des defun dans sa fonction. Perso je trouve pas çà logique.....comment appeler quelquechose que l'on définit soit-même.... je vais demander demain au facteur de trouver où je vais habiter dans deux ans..... Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
Tramber Posté(e) le 1 février 2005 Posté(e) le 1 février 2005 En essayant de comprendre j'ai cru comprendre que le (defun c: StripMText (....).....) contient des defun dans sa fonction. Perso je trouve pas çà logique.....comment appeler quelquechose que l'on définit soit-même.... C'est pourtant une bonne habitude à prendre. Mais, même compilé je crois (le compilateur n'optimisera pas certaines parties, c'est tout) c'est pas encore une cata d'avoir des noms de variables comme certaines fonctions, tout dépend. Peut-être ces 3 noms sont-ils déclarés en variables locales dans stripmtext, ce qui n'est pas accepté par le compilateur. J'ai toujours voulu utiliser UltraEdit mais :P , mais incapable de le configurer lisp ?! ....... :cool: [Edité le 1/2/2005 par Tramber] Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
BIM G CO Posté(e) le 1 février 2005 Auteur Posté(e) le 1 février 2005 http:// http://www.users.qwest.net/~sdoman/ Réponse de la ligne de commande en sélectionnant un Txt multiligne Commande: _appload STRIPMTEXT.LSP correctement chargé(s) Commande: StripMtext v3.07 Choix des objets: 1 trouvé(s) Choix des objets: ; erreur: no function definition: MAINDIALOG Commande: Le DCL il le trouve pourtant! Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
bonuscad Posté(e) le 1 février 2005 Posté(e) le 1 février 2005 Pour Maximilien: Si tu veux modier StripMText pour qu' il soit compatible VL, modifie : (defun c:StripMtext ( / ; Functions *error* AcceptButton ClearAllButton MainDialog SelectAllButton Setup StripMtext Unformat ; Variables dcl_id dclfilemsg dclfilename dialogmsg keylist modcnt save settings space ss tilemsg versionmsg ) En (defun c:StripMtext ( / ; Functions ; *error* ; AcceptButton ; ClearAllButton ; MainDialog ; SelectAllButton ; Setup ; StripMtext ; Unformat ; Variables dcl_id dclfilemsg dclfilename dialogmsg keylist modcnt save settings space ss tilemsg versionmsg ) En fait tu met simplement en remarque à l'aide d'un point virgule devant les noms de fonction définies en variables .Personnellement ce n'est pas du tout ma façon de faire, je ne déclare jamais mes sous-fonctions en variables locales, j'utilise simplement (setq ma_fonction nil) en fin de programme pour libérer la mémoire (ceci dans le cas où je sais que le programme ne sera lancé qu'une seule fois, autrement je laisse la fonction dispo). Rappel: le DCL doit être dans un chemin de recherche, ou alors spécifier le chemin dans le programe StipMtext. Pour Tramber:Pour Ultra-Edit, jette un oeil à:ftp://ultraedit.com/wf/autolisp.txtouhttp://www.kpsoft.be/mirror/downloads/wf/autolisp.txt Il faut simplement rajouter les lignes proposées au fichier wordfile.txt dans le dossier d'UltraEdit.Puis dans le logiciel choisir dans le menu affichage -> Afficher avec (coloration syntaxique) ->Autolisp Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Tramber Posté(e) le 1 février 2005 Posté(e) le 1 février 2005 Super, les couleurs sont + variées, ca change. Je vois aussi qu'il ne reconnait pas les synthaxes en majuscules, mais pas de prob'. Merci encore.C'est plutot cool de cliquer droit sur un fichier lisp et de l'ouvrir avec une visualisation propre sans ouvrir AutoCAD. Well done. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
BIM G CO Posté(e) le 1 février 2005 Auteur Posté(e) le 1 février 2005 ok bonuscad je vais l'essayer de cette manière alors. Dessinateur AutoCAD, Modeleur BIM, consultant informatique logiciels métier Lenovo ThinkStation P330 i9 9900K 32Gb RAM 512 SSD + 1To GstarCAD, Fisa-CAD, Revit, FisaBIM CVC, Microsoft Office PlaquetteDeplianteMars2024.pdf
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