| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Texte ersetzen (7969 mal gelesen)
|
Ralle Mitglied
Beiträge: 266 Registriert: 12.03.2003 Windows 10 Enterprise 64-Bit, 32GB MEP2018
|
erstellt am: 20. Mrz. 2003 09:00 <-- editieren / zitieren --> Unities abgeben:
Hallole, der Befehl suchen und ersetzen ist ja schon ne tolle Sache. Habe allerdings sehr viele Texte zu ersetzen, so das es mit der Zeit nervt immer eingeben und Button drücken, eingeben und Button..... Gibt es ein Lisp oder ähnliches bei dem ich in einer ext. Datei (cool wäre Excel) eintrage z.B in Spalte 1 sind die alten Texte und in Spalte 2 sind die neuen Texte. Auf Knopfdruck in ACAD werden dann die alten dTexte in der Zeichnung gegen die neuen aus der Excel Datei ausgetauscht. Gruß Ralle
------------------ Wir dürfen jetzt nur nicht den Sand in den Kopf stecken! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 20. Mrz. 2003 10:38 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hi, hol' Dir das Ersetzer.lsp bei www.cadditions.de , lade das Teil, erstell eine Textdatei mit der Endung .SCR und folgendem Inhalt: (ersetzer "eintext" "ersetzerung1") (ersetzer "nocheiner" "ersetzerung2") (ersetzer "blablabla" ersetzerung3") . . . Und eine Leerzeile am Ende. Lässt sich Excel doch schön machen. Dann, wie gesagt, als SCR-Datei speichern und mit dem Befehl "SCRIPT" auf die Zeichnung loslassen. ------------------ www.cadditions.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ralle Mitglied
Beiträge: 266 Registriert: 12.03.2003 Windows 10 Enterprise 64-Bit, 32GB MEP2018
|
erstellt am: 20. Mrz. 2003 11:58 <-- editieren / zitieren --> Unities abgeben:
|
benwisch Mitglied Bautechniker, CAD-Konstrukteur
Beiträge: 375 Registriert: 01.02.2001
|
erstellt am: 20. Mrz. 2003 16:50 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
hi ralle, oohhh mann....ich kann ein lied davon singen... ich habe für mehrfaches suchen und ersetzen ein lisp programm geschrieben. das programm durchsucht aber nicht nur texte sondern auch texte in blöcken (inkl. Attribute), standardbemassungen sowie in layoutnamen. hier ein auszug aus meinem hilfedialog.... --cut in -- PROGRAMMBESCHREIBUNG Das Programm gleicht dem Suchen und Ersetzen aus Autocad selbst, mit dem Unterschied, dass auch zusätzlich Blöcke (auch verschachtelte) und Layoutnamen (nur ganze Strings) durchsucht werden. Beim Aufruf des Programmes haben Sie die Möglichkeit, daß Programm mit Dialog oder ohne auszuführen. Dieses ist gedacht um z. B. mit Skript Pro mehrere Pläne auf einmal zu bearbeiten. Dabei durchsucht das Programm grundsätzlich die gesamte Datei und die komplette Filterliste (Texte, Blöcke...). Sie können sich nur entscheiden ob "Groß- und Kleinschreibung" und "Nur ganze Wörter suchen" beachtet werden soll. Mit Aufruf des Dialoges ist das Programm selbsterklärend, so daß hier nicht weiter eingegangen werden muß. Eine Stärke dieses Programmes ist die Möglichkeit aus einer Textdatei (bw_FinRepT.txt) gleich mehrere Textstrings zu lesen und abzuarbeiten. In Verbindung mit dem Programmaufruf ohne Dialog kann man z.B. mit Skript Pro gleich mehrere Pläne unbeaufsichtigt abarbeiten !! [..] --cut out -- in der textdatei selbst, kann man auch für ein besseres verständis kommentarzeilen schreiben. ideal auch zum auskommentieren von abzuarbeitenden zeilen. bsp... -- cut in -- # **************************************************************** # * Diese Textdatei ist Bestandteil des Autocad-Lisp-Skripts * # * << bw_FinRepT.lsp(dcl) >> ; (c) Rolf "Benwisch" Wischnewski * # * Email : cad@benwisch.de * # * Entwickelt : im Januar 2003 * # **************************************************************** # Die Raute dient in diesem File als Kommentarzeile. Sie muß sich # am Zeilenanfang befinden !! # Für jede Zeile gilt : Alter Text~Neuer Text # Die Tilde ~ ist das Trennzeichen !! # ---------------------------------------------------------------- # # S-1 bis S-9 sind Positionspläne # S-10 bis S-20 sind Schalpläne Gründung/Bodenplatte # # Schalpläne von HA für Wartungshalle # S-1001~S-21 S-1002~S-22 S-1003~S-23 S-1004~S-24 S-1005~S-25 S-1006~S-26 S-1007~S-27 S-1008~S-28 S-1009~S-29 S-1010~S-30 # # Bewehrung der Fertigteile # ...usw. --cut out -- "skript pro" geeignet... auszug aus scr-datei --cut in -- ; Skriptdatei (.scr) für Autocad Skript Pro ; hier : Verwendung der Lisproutine bw_FinRepT.lsp(dcl) ; ; Das Skript für das Multiple suchen/ersetzen ; von Textwerten, die aus einer Datei (bw_FinRepT.txt) ; gelesen werden. ; ; damit Backup erstellt wird ISAVEBAK 1 ; ; Prüfen/Laden des Skriptes (if (not c:bw_finrept)(load"bw_finrept")) ; ; starten... ; bw_finrept ; ohne Dialog n ; Groß-und Kleinschreibung n ; Nur ganze Wörter ? n ; zum schluß abspeichern ; _qsave --cut out -- das "nur ganze wörter" ist noch nicht ganz ausgereift... :-( es betrachtet folg. als ganze wörter : -wort- "wort" \wort\ .wort d.h. mit dieser methode wird das wort NICHT in den o.g. bsp. "beachtet" bei interesse stelle ich dir das kostenfrei zur verfügung. einfach mail an cad@benwisch.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Olli_75 Mitglied TA
Beiträge: 31 Registriert: 22.10.2003 Autodesk Map 2004 ExpressTools 2004 Windows 2000
|
erstellt am: 04. Nov. 2003 11:38 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 04. Nov. 2003 12:55 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hi, ich habe mir mal schnell das Express Tool REPURLS vorgenommen und die Dialoge rausgeschmissen. Aufruf mit (REPURLS "dassuchich" "dassollersetztwerden") (defun REPURLS (find replace / ss url obj len cnt newurl changed) ;; install error handler (acet-error-init nil)
;; select and process objects (cond ((and (eq 1 (logand 1 (getvar "pickfirst"))) (setq ss (ssget "_i" '((-3 ("PE_URL"))))) ) (setq ss (ai_ssget ss)) ;; only if ss exists. ) ((setq ss (ssget '((-3 ("PE_URL"))))) (if ss (setq ss (ai_ssget ss)) ) ) ) ;;(if (setq ss (ai_aselect)) ;; filter out the locked layers (if ss (setq ss (car (bns_ss_mod ss 1 T))) ) ;if (if ss (progn ;; perform replace if valid strings (if (and find replace) (progn (setq len (sslength ss) cnt 0 changed 0 ) (while (> len 0) (setq obj (ssname ss (setq len (1- len))) url (geturl obj) url (if url url "" ) ) (setq newurl (acet-str-replace find replace (acet-str-space-trim url) ) ) ;used to be bns_sstrip (if (not (equal newurl url)) (progn ;;(seturl obj (str-subst find replace url)) (if (> (strlen newurl) 256) (progn (setq newurl (substr newurl 1 256)) ;setq (princ "\nNew URL value exceeded 256 character limit! The value has been truncated!" ) ) ;progn ) ;if (seturl obj newurl) (setq changed (1+ changed)) ) ;progn ) ;if ) (princ (acet-str-format "\nReplaced values in %1 of %2 URLs" (itoa changed) (itoa (sslength ss)) ) ) ) (princ "\nNo search string was provided!") ) ) ) (acet-error-restore) (princ) ) ;defun repurls ------------------ www.cadditions.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4171 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 04. Nov. 2003 13:14 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hallo Ralle, ein solches Tool habe ich einmal erstellt. Es tauscht die Texte entsprechend einer Vorgabe aus einer Exceltabelle (Spalte A = alter Text, Spalte B = Neuer Text). Momentan funktioniert das nur für Attribute, sollte aber ein leichtes sein, dies auf alle Texte auszuweiten. Ebenfalls für Attribute, habe ich ein eigenes Suchen und Ersetzen geschrieben. Dieses tauscht nur Texte, die einem bestimmten Suchmuster entsprechen, und dann auch nur bestimmte Zeichen (vom Anfang, vom Ende, ab Stelle - bis Stelle). Bei Interesse kannst du dich ja melden. Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD NEU: AutoLISP- Projektschulung NEU: Praxisorientierte Schulungen und Workshops durch die bekannten CAD.de Moderatoren AutoCAD, AutoCAD LT, AutoCAD Mechanical, Mechanical Desktop, Architectural Desktop Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Olli_75 Mitglied TA
Beiträge: 31 Registriert: 22.10.2003 Autodesk Map 2004 ExpressTools 2004 Windows 2000
|
erstellt am: 04. Nov. 2003 13:24 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
Olli_75 Mitglied TA
Beiträge: 31 Registriert: 22.10.2003 Autodesk Map 2004 ExpressTools 2004 Windows 2000
|
erstellt am: 04. Nov. 2003 13:48 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Es funktioniert leider nicht! Ich habe dein "repurls.lsp" kopiert und als dieses gespeichert! Dann hab ich eine SCR.Datei erstellt mit dem Inhalt: (REPURLS "asp?id=9" "asp?id=9&target=_blank") Dann erschien diese Fehlermeldung: Befehl: (REPURLS "asp?id=9" "asp?id=9&target=_blank") ; Fehler: no function definition: ACET-ERROR-INIT Was hab ich denn da falsch gemacht? ------------------ Gruss Olli_75 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 04. Nov. 2003 14:42 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
Ulf Giesecke Mitglied Strassenbautechniker
Beiträge: 224 Registriert: 13.08.2002 ACAD 2014, Windows 7 professional Intel(R) Core(TM) i7 CPU, 870 2,93GHz, RAM 8.00GB, 64 Bit-Betriebssystem
|
erstellt am: 16. Jun. 2004 09:29 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hallo, habe das "ersetzer" script zum Texte ersetzen benutzt. Funktioniert aber nicht wie das von ACAD angebotene "suchen und ersetzen". Beim Script muß mann Groß- und Kleinschreibung unbedingt beachten und es werden auch nur Wörter in einzeiligen Texten ersetzt. Könnte mann nicht irgendwie ein ersetzer tool für mehrere Wörter mit den gleichen Funktionen wie das von ACAD angebotene "suchen und ersetzen" entwickeln. Ist natürlich leicht gesagt, aber bei den Experten hier im Forum ist da doch bestimmt was zu machen.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 Sie nannten ihn google.
|
erstellt am: 16. Jun. 2004 09:36 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
Ulf Giesecke Mitglied Strassenbautechniker
Beiträge: 224 Registriert: 13.08.2002 ACAD 2014, Windows 7 professional Intel(R) Core(TM) i7 CPU, 870 2,93GHz, RAM 8.00GB, 64 Bit-Betriebssystem
|
erstellt am: 16. Jun. 2004 09:39 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
Ulf Giesecke Mitglied Strassenbautechniker
Beiträge: 224 Registriert: 13.08.2002 ACAD 2014, Windows 7 professional Intel(R) Core(TM) i7 CPU, 870 2,93GHz, RAM 8.00GB, 64 Bit-Betriebssystem
|
erstellt am: 16. Jun. 2004 10:08 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Oje, bin da nicht so der Held im instalieren solcher Programme. Mach mir da meistens mehr kaputt mit den Menüdateien als es mir weiterhilft (bin auch nicht mehr der beste in Englisch, trotzdem danke, aber ich lass das erst mal. Suche nach einer einfacheren Methode Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ulf Giesecke Mitglied Strassenbautechniker
Beiträge: 224 Registriert: 13.08.2002 ACAD 2014, Windows 7 professional Intel(R) Core(TM) i7 CPU, 870 2,93GHz, RAM 8.00GB, 64 Bit-Betriebssystem
|
erstellt am: 16. Jun. 2004 10:18 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
Ex-Mitglied
|
erstellt am: 16. Jun. 2004 10:46 <-- editieren / zitieren -->
Zitat: Original erstellt von Ralle: Hallole, der Befehl suchen und ersetzen ist ja schon ne tolle Sache. Habe allerdings sehr viele Texte zu ersetzen, so das es mit der Zeit nervt immer eingeben und Button drücken, eingeben und Button.....
Es gibt immer noch mein uraltes GSR.LSP (siehe unten), das kann das auch ohne Excel. Aufruf erfolgt als LISP Funktion auf diese Weise: (GSR nil '( ("alt1" "neu1") ("alt2" "neu2") ("alt3" "neu3") ;; ... )) Das Programm ersetzt alles in Texten, Attributen und Bemaßungen, auch wenn die Texte in Blöcke verschachtelt sind, aber es berücksichtigt keine MTEXT Elemente (die gab's damals noch nicht). Vielleicht findet sich ja jemand, der Lust hat, das Programm auch auf MTEXTe zu erweitern ... Ansonsten: das Programm ist 10 Jahre alt, und heute würde ich es sicher auch anders programmieren. Stilistische Fehler sollten also unter diesem Gesichtspunkt übersehen werden :-) Tom Berger ;;; GSR.LSP / 12APR95 ;;; ;;; Copyright (C) 1995 by Thomas Berger ;;; ;;; FREEWARE: ;;; Permission to use, copy, modify, and distribute this software ;;; for any purpose and without fee is hereby granted, provided ;;; that the above copyright notice appears in all copies and ;;; that both that copyright notice and the limited warranty and ;;; restricted rights notice below appear in all supporting ;;; documentation. ;;; ;;; THOMAS BERGER PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS. ;;; THOMAS BERGER SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF ;;; MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. THOMAS BERGER ;;; DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE ;;; UNINTERRUPTED OR ERROR FREE. ;;; ;;; ;;; **************************************************************** ;;; GSR: Global Search and Replace ;;; ;;; GSR asks for two strings and replaces the first one in all ;;; TEXT entities inside the drawing file. GSR also finds and replaces ;;; nested TEXT entities inside BLOCK INSERTIONs, ATTRIBUTEs and ;;; DIMENSIONs, GSR does not handle R13 MTEXT entities. ;;; ;;; DOS2WIN calls GSR with a replacelist to convert German Umlauts ;;; from DOS to WIN ASCII ;;; ;;; WIN2DOS calls GSR with a replacelist to convert German Umlauts ;;; from WIN to DOS ASCII ;;; ;;; GLOBAL no global variables, ;;; function names: C:GSR GSR REPLACESTRING C OS2WIN C:WIN2DOS ;;; ;;; C:GSR is the command line function ;;; ;;; (GSR startentityname replacelist) the AutoLISP function ;;; to replace all text entities in your drawing, ;;; <StartEntityName> can be set to NIL ;;; i.e. (GSR nil '(("AB" "ab") ("CD" "y"))) ;;; will start with the drawings first entity ;;; and replace all "AB"s with "ab"s and all "CD"s with "y"s ;;; ;;; (REPLACESTRING text searchstring replacestring) a function ;;; to replace a string inside a text with another string ;;; **************************************************************** (defun c:gsr (/ old new) (setvar "cmdecho" 0) (command "._undo" "_group") (setq old (getstring "\nold string: ")) (if (/= "" old) (progn (setq new (getstring "\nnew string: ")) (gsr nil (list (list old new))) (command "._regenall") ) ) (command "._undo" "_end") (princ) )
(defun c:win2dos () (setvar "cmdecho" 0) (command "._undo" "_group") (gsr nil '(("Ä" "Ž") ("Ö" "™") ("Ü" "š") ("ä" "„") ("ö""”") ("ü" "") ("ß" "á"))) (command "._regenall") (command "._undo" "_end") (princ) ) (defun c:dos2win () (setvar "cmdecho" 0) (command "._undo" "_group") (gsr nil '(("Ž" "Ä") ("™" "Ö") ("š" "Ü") ("„" "ä") ("”" "ö") ("" "ü") ("á" "ß"))) (command "._regenall") (command "._undo" "_end") (princ) ) (defun gsr ( en replist / el txt) (if (= 'ENAME (type en)) nil (setq en (entnext))) (while en (cond ( (= "TEXT" (cdr (assoc 0 (setq el (entget en))))) (setq txt (cdr (assoc 1 el))) (setq txt (progn (mapcar '(lambda (x) (setq txt (replacestring txt (car x) (cadr x))) ) replist ) txt) ) (setq el (subst (cons 1 txt) (assoc 1 el) el)) (entmod el) (setq en (entnext en)) ) ( (= "ATTRIB" (cdr (assoc 0 (setq el (entget en))))) (setq txt (cdr (assoc 1 el))) (setq txt (progn (mapcar '(lambda (x) (setq txt (replacestring txt (car x) (cadr x))) ) replist ) txt) ) (setq el (subst (cons 1 txt) (assoc 1 el) el)) (entmod el) (setq en (entnext en)) ) ( (= "DIMENSION" (cdr (assoc 0 (setq el (entget en))))) (setq txt (cdr (assoc 1 el))) (if (/= "" txt) (progn (setq txt (progn (mapcar '(lambda (x) (setq txt (replacestring txt (car x) (cadr x))) ) replist ) txt) ) (setq el (subst (cons 1 txt) (assoc 1 el) el)) (entmod el) ) ) (setq en (entnext en)) ) ( (= "INSERT" (cdr (assoc 0 (setq el (entget en))))) (gsr (cdr (assoc -2 (tblsearch "BLOCK" (cdr (assoc 2 el))))) replist) (setq en (entnext en)) ) (T (setq en (entnext en)) ) ) ) (princ) ) (defun replacestring (txt sea rep / tle sle part front 1st ret) (setq tle (strlen txt) sle (strlen sea) part "") (while (< 0 tle) (cond ((< tle sle) (setq part (strcat part txt) txt "" tle 0) ) (T (setq 1st (substr txt 1 1) front (substr txt 1 sle) ) (if (= front sea) (progn (setq ret (cons rep (cons part ret)) txt (substr txt (1+ sle)) tle (strlen txt) part "" ) ) (setq part (strcat part 1st) txt (substr txt 2) tle (strlen txt) ) ) ) ) ) (apply 'strcat (reverse (cons part ret))) )
(princ "\nGSR: GLOBAL SEARCH and REPLACE of TEXT entities") (princ "\n (also nested text in block insertions, attributes or dimensions).") (princ "\n FREEWARE by Tom Berger,") (princ "\n Pfannkuchstr. 17") (princ "\n D-34121 Kassel") (princ "\n Email: berger@archtools.de") (princ "\n") (princ "\n Use GSR for global search and replace, or") (princ "\n DOS2WIN to convert German Umlauts from DOS to WIN, or") (princ "\n WIN2DOS to convert German Umlauts from WIN to DOS.") (princ "\n You can also search and replace %%nnn strings!") (princ)
------------------ ArchTools: AutoCAD-Werkzeuge für Architektur, Bauplanung und Immobilienverwaltung
- architekturgerechte Bemaßung, beliebige Einheiten, hochgestellte Millimeter, Öffnungsmaße uvm ...
- "doppelt" assoziative Höhenkoten für Schnittdarstellung und Grundriss
- assoziative Flächenermittlung nach DIN 277 und II.BVO
- Textautomatisierung, Plotstempel uvm ...
Hier geht's zum ArchTools Forum, und hier zu weiteren Infos und zur kostenlosen Demoversion |
Ulf Giesecke Mitglied Strassenbautechniker
Beiträge: 224 Registriert: 13.08.2002 ACAD 2014, Windows 7 professional Intel(R) Core(TM) i7 CPU, 870 2,93GHz, RAM 8.00GB, 64 Bit-Betriebssystem
|
erstellt am: 16. Jun. 2004 11:08 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Servus, vieleicht steh ich auf dem Schlauch, aber irgendwie versteh ich nicht für was ich die lsp brauche. ich ruf einfach eine Textdatei wie folgt als script auf, und brauch die lsp dazu garnicht. (ersetzer "zu ersetzender Text" "neuer Text") (ersetzer "zu ersetzender Text2" "neuer Text2") usw... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 16. Jun. 2004 11:35 <-- editieren / zitieren -->
Zitat: Original erstellt von Ulf Giesecke:
(ersetzer "zu ersetzender Text" "neuer Text") (ersetzer "zu ersetzender Text2" "neuer Text2")
Und woher hast Du Deine LISP-Funktion ERSETZER? Tom Berger
------------------ ArchTools: AutoCAD-Werkzeuge für Architektur, Bauplanung und Immobilienverwaltung
- architekturgerechte Bemaßung, beliebige Einheiten, hochgestellte Millimeter, Öffnungsmaße uvm ...
- "doppelt" assoziative Höhenkoten für Schnittdarstellung und Grundriss
- assoziative Flächenermittlung nach DIN 277 und II.BVO
- Textautomatisierung, Plotstempel uvm ...
Hier geht's zum ArchTools Forum, und hier zu weiteren Infos und zur kostenlosen Demoversion |
Ulf Giesecke Mitglied Strassenbautechniker
Beiträge: 224 Registriert: 13.08.2002 ACAD 2014, Windows 7 professional Intel(R) Core(TM) i7 CPU, 870 2,93GHz, RAM 8.00GB, 64 Bit-Betriebssystem
|
erstellt am: 16. Jun. 2004 12:22 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
die lsp hab ich von cadwiesel oder cadditions, weiß nicht mehr schon länger her. Das Script müsste nurnoch auf M-Texte erweitert werden und Groß- Kleinschreibung nicht mehr beachten, dann wäre es perfekt. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 16. Jun. 2004 12:41 <-- editieren / zitieren -->
Zitat: Original erstellt von Ulf Giesecke: die lsp hab ich von cadwiesel oder cadditions, weiß nicht mehr schon länger her. Das Script müsste nurnoch auf M-Texte erweitert werden und Groß- Kleinschreibung nicht mehr beachten, dann wäre es perfekt.
Naja, dann hilft Dein Tipp doch nur den Leuten, die das Programm von CADwiesel haben, und für die stellt sich die Frage gar nicht. Alle anderen können mein Freebie oder irgend ein anderes Tool verwenden. Tom Berger ------------------ ArchTools: AutoCAD-Werkzeuge für Architektur, Bauplanung und Immobilienverwaltung
- architekturgerechte Bemaßung, beliebige Einheiten, hochgestellte Millimeter, Öffnungsmaße uvm ...
- "doppelt" assoziative Höhenkoten für Schnittdarstellung und Grundriss
- assoziative Flächenermittlung nach DIN 277 und II.BVO
- Textautomatisierung, Plotstempel uvm ...
Hier geht's zum ArchTools Forum, und hier zu weiteren Infos und zur kostenlosen Demoversion |
domda0 Mitglied
Beiträge: 149 Registriert: 21.04.2004
|
erstellt am: 20. Jan. 2005 11:25 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
wollte nur mal kurz was zu dem ganzen hier beitragen... hate auch das problem mit dem ersetzen von wörtern... hat mit dem ersetzer-lsp gearbeitet, wenn ihr allerdings die zu ersetzenden wörter bereits in einer excel tabelle stehen habt könnt ihr euch so helfen: Spalte A: zu ersetzendes wort Spalte B: einzusetzendes Wort Zeile 1 bis irgendwas dann braucht ihr nur in escel vba starten und folgendes ausführen .......................... Sub ersetzer() Dim i As Integer On Error Resume Next Open ThisWorkbook.Path & "\test.scr" For Output As #1 If Err.Number > 0 Then MsgBox "Fehler beim Öffnen!": Exit Sub For i = 1 To 4 Print #1, "(ersetzer """ & Cells(i, 1) & """ """ & Cells(i, 2) & """)" Next i Close #1 End Sub ........................... das wars dann, ach ja bei der zeile: For i = 1 To 4 muesst ihr natürlich statt 4 die Anzahl der Zeilen angeben die Ihr im Excel habt nun solltet ihr ein file haben das test.scr heißt welches ihr wie oben beschrieben nach apploaden des ersetzer.lsp mit script im acad aufrufen könnt.. dann beginnt die ersetzerei!! ach ja beim ersetzer.lsp ist mir noch aufgefallen dass es nicht nur ganze wörter ersetzt sondern auch teile von wörtern auf das solltet ihr beim excel achten!!! hoffe damit ein wenig geholfen zuhaben ciao dominik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
domda0 Mitglied
Beiträge: 149 Registriert: 21.04.2004 ACAD 2014
|
erstellt am: 30. Jan. 2005 12:59 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hallo zusammen, eine frage: Bei dem Ersetzer.lsp ist mir bei der Anwendung aufgefallen das das Prog auch teile von wörtern ersetzt. bei suchen/ersetzen gibts ne option "Nur ganze Wörter" oder so... kann man das in dieses lsp auch einbauen? danke jetzt schon mal... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 30. Jan. 2005 23:39 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hi Dominik, dann frag doch den Autor dieses Tools in Zukunft besser direkt, weil....ups, das bin ich ja selbst. Mal ganz davon abgesehen, dass hier in diesem Thread einige andere, auch bessere Tools angeboten wurden, es ist schon seltsam, seine alten Codes zu sehen. Heute würde ich das wohl ganz anders schreibe. Nichtstrotzdodes hier die modifizierte Version. Sie kann jetzt auch mit MTexten und ändert bei Verwendung der Variablen mode nur ganze Wörter. Siehe Beschreibung im Header. Die Groß-, Kleinschreibungsgeschichte habe ich weggelassen. Erscheint mir eigentlich nicht sinnvoll. Gruß CADchup
------------------ www.cadditions.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Mitglied Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 31. Jan. 2005 00:00 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
reichlich OT, aber nett rübergebracht ;-), kenn ich auch irgenwoher ... alte codes von einem selbst zu lesen & und nicht darüber zu schmunzeln ... Von daher, würde auch morgen alles anders machen als gestern & heute [und wenn's *nur* 'ne fielmann-Brille ist] ;;-)) Wenns nicht so wäre, hat man entweder den Stein der Weisen bereits entdeckt oder ist tot ... lg Nancy -- ps: war echt kein effektiver Beitrag, nur Gelaber :dream Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
domda0 Mitglied
Beiträge: 149 Registriert: 21.04.2004
|
erstellt am: 05. Aug. 2005 10:57 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
hallo CADchup, ich kann mich leider nicht mehr erinnern ob im jänner alles funktioniert hat bei diesem tool, allerdings habe ich jetzt dein ersetzer programm mit einer script datei aufgerüfen... alles funktioniert einwandfrei bis auf dass das mir das prog nicht nur ganze wörter ersetzt... dann habe ich mit der gleichen datei das ganze mit dem ersetzer 1-1.lsp probiert und bekomme immer nur folgenden text in der befehlzeile von acad zurückgeworfen: Befehl: (ersetzer "1427" "1158/06") ; Fehler: Zu wenig Argumente Befehl: (ersetzer "1428" "1158/07") ; Fehler: Zu wenig Argumente bei sämtlichen textersetzungen... es handelt sich bei dem text um einen dtext mit ausrichtung einpassen, kann doch nicht daran liegen oder? danke schon im voraus mfg dominik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
domda0 Mitglied
Beiträge: 149 Registriert: 21.04.2004 ACAD 2014
|
erstellt am: 05. Aug. 2005 11:49 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
bzw hab ich den fehler schon gefunden bei ersetzer 1-1.lsp ... header lesen... nil für alle textstrings 1 für ganze wörter allerdings findet er mir bei setzen auf "1" keinen einzigen text mehr ... hat da jemand eine idee? danke im voraus dominik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 05. Aug. 2005 12:58 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
MOTOKO Mitglied Bauzeichnerin
Beiträge: 105 Registriert: 13.09.2006 Civil 3D 2020 Microstation V8.05 /TRICAD Linear CAD Solution16 ProSig 6
|
erstellt am: 14. Dez. 2006 16:09 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hallo CADchup, bin beim suchen auf das schon lang dagewesene Problem der Suchen/ersetzen Funktion gestossen. Muß leider auch eine ganze liste an Wörtern ersetzen und in mehreren Dateien. Wollte mir dazu auf Deiner Seite was runterladen, aber ich kann Deine "ersetzer.lsp" nicht finden. ich bräuchte auch die erweiterte Funktion: in ganzen Wörter suchen und Groß- und Kleinschriebung beachten. Bei Cadmaro ist leider nix zu finden. Kannst Du mir helfen? Vielen Dank im voraus und Gruß Yve Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
benwisch Mitglied Bautechniker, CAD-Konstrukteur
Beiträge: 375 Registriert: 01.02.2001
|
erstellt am: 14. Dez. 2006 17:06 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 14. Dez. 2006 23:11 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
MOTOKO Mitglied Bauzeichnerin
Beiträge: 105 Registriert: 13.09.2006 Civil 3D 2020 Microstation V8.05 /TRICAD Linear CAD Solution16 ProSig 6
|
erstellt am: 15. Dez. 2006 11:09 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hi, ok, ok, das hatte ich gefunden, sah mir nur so umfangreich und leicht kompliziert aus. Aber werde es dann wohl doch ausprobieren. Vielen Dank! Man wird doch immer fündig bei Euch! Schöne Feiertage für alle! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
marc.scherer Ehrenmitglied V.I.P. h.c. CAD-Administrator
Beiträge: 2490 Registriert: 02.11.2001 Windows 10 64bit AutoCAD Architecture 2018/2019 (deu/eng) AEC-Collection 2019 (Revit und Zeugs) Wenn sich's nicht vermeiden läßt: D-A-CH Erweiterung (mies implementierter Schrott)
|
erstellt am: 15. Dez. 2006 13:15 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Zitat: Original erstellt von CADchup: der Ersetzer wurde zugunsten von BW_FinRepT eingestampft
Ihr Schweine, Ihr habt "ersetzer.lsp" getötet! ------------------ Ciao, Marc
[Diese Nachricht wurde von marc.scherer am 15. Dez. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 15. Dez. 2006 13:32 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
<Fieses, grimmiges Grinsen ein> Schau ihn dir an, er hat es nicht anders verdient...(spuckt verächtlich in den Staub) Und jetzt hör auf rumzujammern, sonst....(fuchtelt mit seinem Colt rum) <Fieses, grimmiges Grinsen aus> ------------------ CADmaro.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TronX Mitglied Entwicklungsingenieur
Beiträge: 94 Registriert: 13.03.2006
|
erstellt am: 03. Jul. 2007 15:42 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hallo! Ich muss diesen Thread nochmal aktivieren. Folgendes Problem: Wir haben unter ACAD R14(!) alte Zeichnungen, in denen Durchmesser-, Grad- und Umlautzeichen nicht korrekt dargestellt werden. Diese würde ich gerne durch eine Suchen und Ersetzen-Funktion austauschen. Leider gibt es anscheinend die Funktion in ACAD R14 nicht, oder? Besteht die Möglichkeit, eines der hier genannten Scripte zu verwenden? Anm.: Bitte für Newbies- bin mehr mit SolidWorks und nur wenig mit ACAD vertraut - mit R14 fast gar nicht... Danke, Hendrik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
archtools Mitglied
Beiträge: 823 Registriert: 09.10.2004 Entwickler für AutoCAD, BricsCAD u.a., alle Systeme
|
erstellt am: 03. Jul. 2007 21:15 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Zitat: Original erstellt von TronX: Hallo!Ich muss diesen Thread nochmal aktivieren. Folgendes Problem: Wir haben unter ACAD R14(!) alte Zeichnungen, in denen Durchmesser-, Grad- und Umlautzeichen nicht korrekt dargestellt werden. Diese würde ich gerne durch eine Suchen und Ersetzen-Funktion austauschen. Leider gibt es anscheinend die Funktion in ACAD R14 nicht, oder? Besteht die Möglichkeit, eines der hier genannten Scripte zu verwenden?
Das GSR.LSP von mir in diesem Thread darfst Du selbstverständlich benutzen - steht doch sogar im Quellcode drin. Um herauszufinden, mit welchem Zeichen z.B. das Durchmesserzeichen damals codiert war, brauchst Du nur mit (entget (car (entsel))) einen entsprechenden Text anzuklicken und zu analysieren. Viele dieser alten Zeichnungen sind noch unter DOS erstellt worden, wo die Umlaute anders codiert waren als unter UNIX oder Windows. In meinem Programm gibt's für diese Korrekturen sogar die speziellen Funktionen WIN2DOS bzw DOS2WIN, die das Problem lösen. Tom Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TronX Mitglied Entwicklungsingenieur
Beiträge: 94 Registriert: 13.03.2006
|
erstellt am: 04. Jul. 2007 08:34 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Hallo Tom! Maine Frage bezog sich eigentlich weniger auf die Erlaubnis (trotzdem: Danke! ), sondern mehr auf die Möglichkeiten. Sprich: Funktioniert das Skript unter ACAD R14? Und wie implementiere ich es? Brauche ich Zusatzmodule? Von Lisp unter ACAD habe ich keine Ahnung. Ich werde auch nochmal im Forum suchen, freue mich aber über jeden Hinweis. Vielen Dank, Hendrik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
j-sc Ehrenmitglied
Beiträge: 1837 Registriert: 14.07.2003 W7 64Bit intel core I7 2,8GHz / 4GB ATI FIRE PRO V5800 acad2011 acad2015 acad2018 Athena Expresstools
|
erstellt am: 04. Jul. 2007 09:09 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
|
TronX Mitglied Entwicklungsingenieur
Beiträge: 94 Registriert: 13.03.2006
|
erstellt am: 04. Jul. 2007 10:57 <-- editieren / zitieren --> Unities abgeben: Nur für Ralle
Alles klar, habe es hinbekommen. Einige Zeichen musste ich umschreiben, da der IE und Notepad sie vermurkst haben. Jetzt klappt es aber. Nur ein Klick pro Zeichnung statt fünfzig- das ist schon was wert! Gruß Hendrik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |