;;;(Get_Key_Word "\n1实体/2钢筋砼/3素砼/4墙体/5阳台/6卫生间/7厨房:<1>"'("1" "2" "3" "4" "5" "6" "7") "1")
(defun Get_Key_Word(pro lst def / kw val)
(setq lst (apply 'append (mapcar '(lambda(e) (list (ascii (strcase e)) (ascii (strcase e T)))) lst)) def (ascii def))
(prompt pro)
(while (not (and (setq kw (grread nil) val (car kw) kw (cadr kw)) (member val '(2 11 25))
(if (or (= val 25) (and (= val 11) (= kw 0)) (member kw '(13 32))) (setq kw def) (member kw lst)))))
(strcase (vl-list->string (list kw))))
hf423 发表于 2022-5-17 14:34
试一下这个,不记得原作者是谁了,应该是来源于本论坛。
这个也很厉害,而且很简洁 仅仅不用回车关键字没意思,要在entsel,ssget选择的同时,如果输入了关键字,不用回车就直接返回对应key,有没有哪位大神解决了。飞诗寻梦大神的“带关键字的ssget”虽然可以用,但在命令行有一些奇怪提示。也没有一键回车功能。 要是能做到显示在光标处,这个功能就更完美了 插件加载时候就注册个钩子,然后用一个全局数组记录KEY,在需要调用的地方,往这个数组里添加需要响应的键,钩子里遇到满足条件的键按下就自动添加一个回车事件就可以了,
页:
1
[2]