G版的代码很好用,但有时候查不到命令,难道跟文件大小或者命令数量有关?
see the hidden text
非常实用有东东,学学
[em0一样的问题
多谢分享了!
我就来看看
(defun c:tt (/ lst1 lst2)
(if (setq fl (getfiled "请选择程序文件" "" "vlx;fas;*" 8))
(progn
(setq lst1 (vl-remove-if-not '(lambda (x) (= (substr x 1 2) "C:"))(atoms-family 1)))
(load fl)
(setq lst2 (vl-remove-if-not '(lambda (x) (= (substr x 1 2) "C:"))(atoms-family 1)))
(princ "\n命令: ")
(foreach a (vl-remove-if '(lambda (x) (member x lst1)) lst2)
(princ "\n")
(princ (substr a 3))
)
)
)
(princ)
)
本帖最后由 lucas_3333 于 2015-8-28 13:51 编辑
xyp1964 发表于 2015-8-28 13:30 static/image/common/back.gif
院长,写个 判断程序加载前后, 获取程序的全局变量列表吧
(or *atoms* (setq *atoms* (atoms-family 1)))
(setq atoms2 (vl-remove-if '(lambda (x) (vl-position x *atoms*)) (atoms-family 1)))
lucas_3333 发表于 2015-8-28 13:47 static/image/common/back.gif
院长,写个 判断程序加载前后, 获取程序的全局变量列表吧
(or *atoms* (setq *atoms* (atoms-family 1))) ...
全局变量它不一定能在加载后都能表现出来
比如
(setq a 5)
(defun c:tt()
(setq b(* 2 a))
)
这里有两个全局变量,可加载前后只有一个能被检测出来,另一个需要运行程序后才能被检测到吧?
llsheng_73 发表于 2015-8-29 08:49 static/image/common/back.gif
全局变量它不一定能在加载后都能表现出来
比如
(setq a 5)
当然是要运行程序后才能检测出全部的全局变量, 所以程序中要有加载程序与执行程序这两步