;; LREN.LSP ;; Layer renaming program for aiding conversion of submitted blocks ;; to Accustudio layer naming conventions ;; ;; Andrew le Bihan 2001 (Without copyright) ;; (defun c:lren ( / trunc filename prefix this_layer_name new_layer_name oldcmdecho) (setq oldcmdecho (getvar "cmdecho")) (setvar "cmdecho" 0) (command "_.undo" "_begin") (setq filename (substr (getvar "dwgname") 1 (- (strlen (getvar "dwgname")) 4))) (setq filename (strcat filename "_")) (setq trunc (getint "How many characters to remove? : ")) (if trunc (setq prefix (getstring (strcat "Enter prefix. <" filename ">: "))) (getout T) ) (if (= prefix "") (setq prefix filename) ) (initget 0 "Lower Upper") (setq capital (= (getkword "Prefix case [Lower case/]:") "Lower")) (tblnext "layer" T) (setq this_layer_name (cdr (assoc 2 (tblnext "layer" nil)))) (while this_layer_name (setq new_layer_name (substr this_layer_name (1+ trunc))) (setq new_layer_name (strcat (strcase prefix capital) new_layer_name)) (command "_.-rename" "_la" this_layer_name new_layer_name) (setq this_layer_name (cdr (assoc 2 (tblnext "layer" nil)))) ) (getout nil) (princ) ) (defun getout (break) (command "_.undo" "_end") (setvar "cmdecho" oldcmdecho) (if break (exit) (princ "\nDone\n") ) )