概要 - デバッグ ツール(Visual LISP IDE)

デバッグは通常、プログラムを開発するときに最も時間を費やす段階です。

注: Visual LISP IDE は Windows でのみ使用可能です。

このため Visual LISP には、次のようなことが可能な強力なデバッガが含まれています。

上記を実現するための Visual LISP の機能は次のとおりです。

ブレーク ループ モード
プログラムの実行を指定した場所で停止させます。これにより、中断している間にオブジェクトの値を見たり修正することができます。AutoLISP のオブジェクトとは、たとえば、変数、シンボル、関数、式のことです。
一回で停止

最初の AutoLISP 式を評価すると、無条件で中断します。

エラーでブレーク

プログラムで実行エラーが発生するたびに、対話型ブレーク ループが自動的にアクティブになります。

このオプションを有効にしているときは、AutoCAD のコマンド プロンプトに入力した関数呼び出しが原因で発生したいくつかのエラーも対象になることに注意してください。つまり、ブレーク ループに入ると、アクティブなウィンドウが AutoCAD からVisual LISP の[コンソール]ウィンドウに切り替わることがあります。

関数実行時に中断

関数名シンボルに対して[入力時にデバッグ]フラグを設定すると、その関数を実行するたびに中断されます。中断されると、その関数のソース コードが特別なウィンドウに表示されます。[シンボル サービス]ダイアログ ボックスでは対話的に[入力時にデバッグ]フラグを設定または設定解除できます。

トップ レベル デバッグ モード

ファイルまたはエディタ ウィンドウからのプログラムのロードをコントロールします。有効にすると、トップ レベルの式(defunなど)の評価前には常に中断されます。

トップ レベル デバッグ モードと一回で停止モードを有効にすると、ファイルをロードするたびにデバッグ モードに入ります。これにより、ファイルがロードされると、そのファイル内で定義されている defunsetq、および他の関数がデバッグされます。通常、これは役に立つデバッグのテクニックではなく、たまに必要となるだけです。

[検査]ウィンドウ

検査ウィンドウに、オブジェクトに関する詳細な情報が表示されます。検査されているオブジェクトがネストされているオブジェクトで構成されている場合は(たとえば、リストなど)、検査機能を使用することによりすべての構成要素を検査でき、各構成要素がウィンドウ内のそれぞれの行にリストされます。また、アトム オブジェクト(数値やシンボルなど)に達するまで、ネストされたオブジェクトを循環して検査することもできます。

[ウォッチ]ウィンドウ

プログラム実行中に変数の値をウォッチできます。[ウォッチ]ウィンドウの内容は、自動的に更新されます。つまり、[ウォッチ]ウィンドウに表示されている変数の値が変更されると、その変更が[ウォッチ]ウィンドウに自動的に反映されます。

トレース スタック機能

関数呼び出しスタックが表示されます。呼び出しスタックは、一連の関数がプログラムによって実行されたときにそれらの関数を Visual LISP が記録するメカニズムです。デバッグ セッション中(ブレークポイントの後ろでステップ実行するときのように、プログラムが一時停止状態にあるとき)や、プログラムが正常に動作しなくなった後に、スタックを表示できます。プログラムが正常に動作しなくなった後にスタックを表示すると、プログラムが異常終了した時点で Visual LISP が行っていた内容が関数呼び出しスタックに表示されます。

トレース機能

これは、呼び出しをログ記録する LISP 標準の機能で、トレースされた関数の値を特別な[トレース]ウィンドウに返します。