像香草逗号一样重复Lisp
嗨,神奇的Lisp程序的人我有一个(可能是非常基本的)Lisp程序的问题。
我正在生成一个基本命令来扩充现有的AutoCAD命令。我希望这个命令像普通命令一样,即在或上重复。
这可行吗?如果答案是“否”或“否”,我很好,但您可以使用“while”循环或“repeat”命令。
F、 Y.I-这是我谦逊的Lisp程序:
(定义c:ROT1()
(setq selection1(ssget))
(命令“rotate”selection1“pause”r“@”pause pause)
)
要运行此命令,您必须在命令行中键入“ROT1”。如果在命令完成后立即按enter键或空格键,它将重复执行。您可以通过按向上箭头访问命令历史记录,该箭头将按相反顺序逐步浏览命令历史记录,或者只需再次键入“ROT1” 嗨,德拉诺
如果能这么简单就好了。我编写了这个命令,可以很好地运行。
我的问题更具体一点。如果按enter键,则不会重复该命令。它运行select命令-这必须是隐藏在默认旋转命令的“魔法”中的最后一个命令?(如果它确实在您的机器上再次运行,是否可能有不同的系统变量设置,使效果不同?) 我刚刚加载了ROT1 lisp函数,在AutoCAD和BricsCAD中使用空格键可以很好地重复。
在系统上运行该命令,然后按向上箭头在命令列表中向后循环。“ROT1”在那里吗? 是的,“ROT1”在前面的命令列表中。
这个命令有效,但我无法用“space”或“enter”重复。
也许这是一个系统变量?你们俩都没问题。
这是我的屏幕截图,显示了命令行,直到命令再次尝试运行失败。
这有什么启示吗?
它在这里工作得很好。 系统变量“INPUTHISTORYMODE”、“DYNMODE”和“DYNPROMPT”给了你什么? 输入历史模式:
动态模式:
动态比较:
?
对不起,我错过了这一点。如果要求您再次选择,则Lisp程序重复。或者,您的意思是要自动再次选择最后一个对象?
页:
[1]
2