我用这个:
- (defun c:appreload ()
- ;;Load all LISP files in a folder
- ;;LISP folder location:
- (setq mylispfolder "c:\\Desktop\") ;;change this to suit
- (setq myfiles (vl-directory-files mylispfolder "*.lsp" nil)) ;;myfiles is list of files
- (setq mylistlength (length myfiles)) ;;count of number of lsp files
- (setq acount -1) ;;a counter
- (repeat mylistlength
- (setq acount (1+ acount))
- (setq FailedtoLoad (strcat (nth acount myfiles) " failed to load"))
- (load (strcat mylispfolder (nth acount myfiles)) FailedtoLoad) ;;Loads file
- )
- (princ)
- )
这将加载指定文件夹中的所有LISP文件。这可能不是最聪明的代码,但对我来说很管用。
注意:如果您在启动时运行此程序,请不要从“mylispfolder”位置中包含的LISP文件执行此操作,因为当加载/重新加载该文件并再次运行此例程时,可能会出现无休止的循环。。。再一次。。。如果需要,可以修改此代码以排除要重新加载的文件。
我主要在尝试操作时使用它-键入appeload要比通过AutoCAD加载修改后的LISP文件快得多 |