BIM G CO Posté(e) le 2 novembre 2004 Posté(e) le 2 novembre 2004 Je suis en train de créer un applicatif pour mon bureau d'étude mais je me bute juste à une seule chose: la langue. j'ai découvert la fonction (ver) "Visual Lisp 2005 (fr)" sur les postes en verson française et "Visual Lisp 2005 (en)" en anglaise mon problème n'est pas dans les commandes : "_-layer" "_-SET" etc.... mais plus dans le style : (commande "_mtext" PointFinal " Justifier" " HautGauche") dont l'équivalent est TopLeft. Je n'ai trouvé que la solution décrite ci dessous et je voudrais savoir s'il existe un moyen plus rapide de faire ce genre de traduction (setq PRIVE_VERSION (strcase (vl-string-subst "-" " " (vl-string-subst "" ")" (vl-string-subst "" "(" (vl-string-left-trim "Visual LISP " (ver))))) ) ) (if (= (strcat (chr (vl-string-elt PRIVE_VERSION (+ (vl-string-position (ascii "-") PRIVE_VERSION) 1)) ) (chr (vl-string-elt PRIVE_VERSION (+ (vl-string-position (ascii "-") PRIVE_VERSION) 2)) )) "FR") (setq PUBLIC_LANGUE (list "DUCALQUE" "DUBLOC" ...... )) ) (if (= (strcat (chr (vl-string-elt PRIVE_VERSION (+ (vl-string-position (ascii "-") PRIVE_VERSION) 1)) ) (chr (vl-string-elt PRIVE_VERSION (+ (vl-string-position (ascii "-") PRIVE_VERSION) 2)) )) "EN") (setq PUBLIC_LANGUE (list "BYLAYER" "BYBLOC" ......... )) ) 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
didier Posté(e) le 2 novembre 2004 Posté(e) le 2 novembre 2004 hello,j'ai pas bien compris ton souci,est ce que tu veux que la Ligne de Commande soit dans la langue choisie ?ou est ce autre chose ? sinon il te sera possible d'utiliser GETCNAME qui te renseignera sur le nom de la commande.il est Grandement conseillé d'utiliser l'anglais dans les Lisp.amicalement [Edité le 2/11/2004 par didier] Éternel débutant... Mon site perso : Programmer dans AutoCAD
BIM G CO Posté(e) le 2 novembre 2004 Auteur Posté(e) le 2 novembre 2004 c'est bon pour le getcname ca c'est fait mais ce sont pour les paramètres du type "ducalque" ou "dubloc"ou encore plus insidieux les pramètres de justifcation des textes : HG (HautGauche) => TL (TopLeft)BD (BasDroite) => BR (BottomRight) getcname c'est bien pour trouver l'anglicisation des fonction mais les paramètres quand tu tapes _pedit sur un AutoCAD francais :[Clore/Joindre/Epaiss/Modif-sommet/Lissage/sPline/Retrouver/Typeligne gén/annUler]: en anglais[Open/Close/Join/Width/Fit/Spline/Decurve/Ltype gen/eXit] tu remarquera que pour l'épaisseur c'est W en EN et E en FR comment fais-tu? à part lister toute les commandes que tu veux et créer une liste qui aura les bon paramètres selon la langue de l'autoCAD? 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
didier Posté(e) le 2 novembre 2004 Posté(e) le 2 novembre 2004 hello,je te prie de m'excuser, mais je ne connaîs toujours pas le but à atteindre. pourquoi veux tu changer quelque chose à la langue ? c'est pour que la ligne de commande soit française partout ? Je réponds toujours en anglais dans mes lisp,c'est vrai que la traduction des options est empirique, mais c'est toujours la même chose. à plus Éternel débutant... Mon site perso : Programmer dans AutoCAD
Patrick_35 Posté(e) le 2 novembre 2004 Posté(e) le 2 novembre 2004 SalutIl n'y a malheusement pas de solution miracleSi tu veux que ta commande passe quelle que soit la langue, tu peux faire par exemple(command "_.pedit" objet "_w' "0.5" "") @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Labletech Posté(e) le 2 novembre 2004 Posté(e) le 2 novembre 2004 En lisant ces différents messages j'étais un peu embarassé comme Didier.Je n'arrivais pas à comprendre ce que Maximilien voulait.Mais en fait la réponse de Patrick_35 m'a peut-être mis sur la voie: Effectivement Patrick en langage universel, le paramètre à introduire dans les ordres commandés par autolisp va s'écrire comme tu l'as si bien décrit: - F comme fenêtre va donner _w comme windows. Ensuite, il faut se faire patiement une liste de correspondance entre les paramètres que l'on a l'habitude de saisir en francais et ceux que l'on va écrire dans notre programme en langage universel. Je crois en fait que Maximilien veut permettre à l'opérateur de saisir le paramètre au clavier dans son programme lisp. Auquel cas , si celui-ci est francais il va taper F, s'il est espagnol il va taper autre chose , etc ... Ensuite son programme pourrait interpreter le paramêtre ainsi saisi dans sa langue d'origine pour le tranformer en langage universel afin que son applicatif puisse être porté sur plusieurs licences de langues différentes ...Néanmoins à celà il y aura un autre pb. Il faut alors référencer tous les dialogues du programme ainsi développé dans des fichiers textes spécifiques adaptés pour chaque langue.Et dans ce cas mon cher Maximilien, il te faut aussi te farcir des listes d'équivalence entre tous les paramètres à saisir dans la langue voulue vers le langage universel.. Ca peut se faire mais bon courage tout de même !! Il y a une solution plus simple qui consiste à proposer tout simplement le paramètre en langage unversel: (setq tstyle (getstring "\n Saisir style de texte: HautDroit[_TR]\HautGauche[_TL] ....))avec éventuellement un initget avant.L'Utilisateur est donc obligé quelquesoit sa langue d'utiliser d'office les paramètres en langage unversel. Auquel cas il n'est plus nécessaire de faire une correspondance entre les paramètres . Formateur ATC Autocad - Mechanical - Inventor - Electrical
didier Posté(e) le 2 novembre 2004 Posté(e) le 2 novembre 2004 bonsoir,ben ça fait plaisir de ne pas être seul dans l'embarras ;) vivement que Maximilien nous explicite,car je ne vois pas l'utilité de Traduire les Options.le but du Lisp étant justement d'Automatiser toutes ces saisies...attendons les explications Maximiliennes.ciao Éternel débutant... Mon site perso : Programmer dans AutoCAD
bonuscad Posté(e) le 2 novembre 2004 Posté(e) le 2 novembre 2004 Maximilien, Pour les options des commandes en international, malheuresement rien ne peut t'aider à les trouver sur une version Française. Il faut, soit avoir bosser sur une version Anglaise, soit avoir un vocabulaire un peu étoffé en Anglais pour les trouver. Même moi, j'ai du mal des fois à trouver certaines options en Anglais. Dans un lisp (j'avais déjà donné cet exemple!) il faut utiliser (initget) (defun c:mnutextuel ( / cle_cod) (initget "Bonjour Aurevoir _Hello Goodbye") (setq cle_cod (getkword "\nChoix de l'option [bonjour/Aurevoir]? :")) (if (null cle_cod) (setq cle_cod "Hello")) (cond ((eq cle_cod "Hello") (print cle_cod) (prin1 " : Bonjour tout le monde") ) ((eq cle_cod "Goodbye") (print cle_cod) (prin1 " : Au revoir tout le monde") ) (T (print cle_cod) (prin1 " : Erreur") ) ) (prin1) ) Si tu execute ce code tu remarqueras que la fonction accepte aussi bien les options Francaises que Internationales. Soit tu entre "Bonjour" "B" "_Hello" "_H" "Aurevoir" "A" "_Goodbye" "_G".La fonction (getkword) pour cet exemple retournera toujours la version internationale si celle ci est définie dans (initget). Donc les tests des réponses devra se faire avec les options en language international.Ce qui veut dire que le portage du code sur une version Anglaise ne posera aucun problème. NB:Il n'y a qu'un seul underscore "_" dans initget qui spécifie que tu passe en International, toutes les options suivantes (sans underscore) sont considéré AUSSI en International. 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 3 novembre 2004 Auteur Posté(e) le 3 novembre 2004 merci j'essayerai les _TL et _DR sur les postes en anglais dès ce soir quand notre sous-traitant viendra avec son portable. 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