 - ;; loading.lsp - 自动加载当前文件夹内所有LSP文件
- ;; 功能: 自动加载当前文件夹内所有LSP文件,除了loading.lsp自身
- ;; 日期: 2025/9/5
- (defun c:LOADALL (/ current-dir file-list file-path)
- (princ "\n=== 自动加载LSP文件系统 ===")
-
- ;; 获取当前LSP文件所在目录
- (setq current-dir (vl-filename-directory (findfile "loading.lsp")))
- (princ (strcat "\n[INFO] 当前目录: " current-dir))
-
- ;; 获取目录中所有文件
- (setq file-list (vl-directory-files current-dir "*.lsp" 1))
- (princ (strcat "\n[INFO] 找到 " (itoa (length file-list)) " 个LSP文件"))
-
- ;; 遍历并加载所有LSP文件(除了loading.lsp自身)
- (foreach file file-list
- (if (/= (strcase file) "LOADING.LSP")
- (progn
- (setq file-path (strcat current-dir "\" file))
- (princ (strcat "\n[INFO] 正在加载: " file))
- (load file-path)
- )
- (princ (strcat "\n[INFO] 跳过自身: " file))
- )
- )
-
- (princ "\n=== 所有LSP文件加载完成 ===")
- (princ)
- )
- ;; 自动执行加载
- (c:LOADALL)
- (princ "\n已加载 loading.lsp - 输入 LOADALL 可重新加载所有LSP文件")
- (princ)
|