AutoLISP程序文件装入错误的处理

Author: Date: 1995-05-19

        用户还可以使用AutoLISP自身的“COMMAND”函数开发一个专用程序,一行一行的读入程序文件,让AutoCAD逐行检查圆括号的匹配情况。另一种更为实用的有效的方法是利用某些屏幕数据拷贝程序在多任务切换的前后台管理系统中,完成同样的逐行检查操作。例如:用户可以在运行DRDOS6.0版本的前后台管理的有关程序(SHARE.EXE和TASKMAX.EXE后先将AutoCAD做为一个任务项建立起来,然后再建立运行一个文字处理器的任务项,同时在这个文处理器中将程序文件列于屏幕上,(也可以在操作系统提示符下利用DRDOS的TYPE命令所特有的“P”开关将所要检查的AutoLISP程序文件“TYPE”在屏幕上)再使用TASKMAX程序将屏幕上的数据选择剪辑(CUT)后转向激活AutoCAD任务项,在AutoCAD的屏幕显示为文本方式下,利用TASKMAX程序的粘贴(PASTE)功能将前面剪辑的数据用来响应当前的“Command:”提示。接下来用户将会发现这实际上是将自己编写的应用程序一行接一行地输入进AutoCAD中;一行输入完后接着屏幕上将出现提示符“n>”,并且自动地输入下一行。提示符“n>”就将帮助用户确定自己前面编写的程序中圆括号是匹配情况。在正常情况下,如果n的值为“1”,则说明在前面一行中插入的圆括号的匹配的,如果不是“1”则说明不匹配。此时用户可以让计算机暂停一下(PAUSE),记下这一行在程序文件中的位置后继续“粘贴”,直至最后检查完毕。“剪辑”与“粘贴”操作只是帮助用户很快地找到程序文件中那些圆括号不匹配的行,纠正错误还是需要一个文字处理器的帮助。用户可以采用将一个文字处理器作为一个任务项,将AutoCAD作为另一个任务项的方法对任何一个AutoLISP程序文件,作包括程序文件中各函数的定义情况在内的即时修改、即时检查;这比在AutoCAD中利用SHELL/SH命令调用一个文字处理器,或者通过修改ACAD.PGP文件来定义和使用一个用于文字编辑的命令,要方便、快速得多。
        (AutoCAD短训班辅导老师曾刚)