我写了这个Lisp程序的句子:
- (defun LOADalias ( / data r res lst file)
- (setq data (cd:SYS_ReadFile nil "J:\\alias.txt"));alias file with path
- (mapcar
- '(lambda (x1)
- (if
- (or
- (= ";" (substr x1 1 1))
- (= "" (substr x1 1 1))
- (= "[" (substr x1 1 1))
- )
- nil
- (setq r (cons x1 r))
- )
- )
- data
- )
- (foreach line r
- (setq res (cons (cd:STR_Parse line " " T) res))
- )
- (setq lst
- (mapcar
- '(lambda (%)
- (strcat "(defun C:" (nth 0 %) "() (C:" (nth 1 %) "))")
-
- )
- res
- )
- )
- (setq file (vl-filename-mktemp "aliases.lsp"))
- (cd:SYS_WriteFile file lst nil)
- (load file)
- (princ)
- )
它正在工作
Bolow示例。带别名的txt文件
- ;only spacebar allowed
- [v1.00]
- user_alias1 my_lisp1
- user_alias2 my_lisp2
- user_alias3 my_lisp3
- [v1.01]
- user_alias4 my_lisp4
- user_alias5 my_lisp5
- user_alias6 my_lisp6
要运行LOADalias,必须加载附加的lisp库
Cad_包。lsp |