Hi, Why sometimes this operation returns wrong:
Code:
(defun c:cvt()
(setq oldname "ESP - Esquadrias CIR")(setq newname "ANT - Esquadria Círculo")(runtorenamelayer)
)
(defun runtorenamelayer()
(if
(and(tblsearch "layer" oldname)(not(tblsearch "layer" newname)))
(COMMAND "._-RENAME" "LA" OLDNAME NEWNAME);;(command "._-layer" "R" oldname newname "")
)
(if
(and(tblsearch "layer" oldname)(tblsearch "layer" newname))
(progn
(command "Laymrg") (foreach e (list oldname) (if (tblsearch "LAYER" e)(command "_Name" e)))(command "" "_N" newname "_Y")
;;(command "_.-PURGE" "_La" oldname "_N")
)
)
(princ)
)
Being specific, if I load the code with the appload or even in the ACAD.LSP the problem occurs.
And the result is a strange name:
ANT - Esquadria CÃrculo
If I just copy and paste the code into the command bar it works fine and te name is ok:
ANT - Esquadria Círculo
Ok, I am thinking about avoiding special characters in the new Layer names, but in some cases the old layers have them already, and in this situation the operation doesn't rename that old layers, the application just skip them because the names doesn't match.
TIA