ここでは、HelloWorld.xvcd内のxvcd:variable要素とp要素にブレークポイントを設定しましょう。
xvcd:variable要素の左端の余白をダブルクリックして、ブレークポイントを設定します。同様に、p要素にもブレークポイントを設定します。
ブレークポイントの設定
p要素はループ処理の内側にあります。このままでは、p要素に処理がさしかかるたびに止まります。そこで、p要素に設定したブレークポイントをいったん無効化します。ブレークポイントを無効化するには、ブレークポイントの上で右クリックし、表示されるメニューで[ブレークポイントの無効化]を選択します。無効化されたブレークポイントは、XVCDビューでの表示が
から
に変わります。
ブレークポイントの無効化
それでは、XVCDスクリプトを再実行しましょう。xfy Clientの[表示 - 最新の情報に更新]を選択するか、ブラウズバーの
をクリックします。すると、xvcd:variable要素に設定した最初のブレークポイントまで実行した時点で、一時停止します。
一時停止
もう一度
[開始]をクリックします。XVCDビューの選択位置は変化しません。これは、ブレークポイントを設定した行の処理は2つあるので、その両方にブレークポイントの対象となるためです。このような動作をするのは、ステップ実行したときに選択位置が変わらない要素やテキストノードに設定されたブレークポイントで停止したときです。詳しくは「ステップ実行したときのXVCDビューの選択位置」をご覧ください。
さらにもう一度
[開始]をクリックすると、p要素に設定したブレークポイントでは実行が一時停止せず、XVCDスクリプトは最後まで実行されます。これは、先ほどブレークポイントを無効にしたためです。
ここで、p要素のブレークポイントを有効にします。XVCD Debuggerの[編集 - ブレークポイント一覧]を選択してください。[ブレークポイント一覧]ダイアログボックスが表示されます。[ブレークポイント一覧]ダイアログボックスの[ブレークポイント一覧]に、ブレークポイントが設定されている位置が、XVCDファイル名と行番号で表示されます。[ブレークポイント一覧]でチェックボックスがオフになっているのは、無効なブレークポイントです。一方、チェックボックスがオンになっているのは、有効なブレークポイントです。
今回の場合、[ブレークポイント一覧]には2つのブレークポイントが表示されます。
ブレークポイント一覧
チェックボックスがオフになっている32行目のブレークポイントは、ブレークポイントを無効にしたp要素の行です。このブレークポイントを選択して、[有効化]をクリックすると、チェックボックスがオンになります。この状態で[OK]をクリックして、[ブレークポイント一覧]ダイアログボックスを終了します。
XVCDビューを見ると、p要素の左端に
が表示されています。これでブレークポイントが有効になりました。
ブレークポイントの有効化
それでは、もう一度HelloWorld.xvcdをデバッグしましょう。XVCDスクリプトを最初から実行し直します。xfy Clientの[表示 - 最新の情報に更新]を選択するか、ブラウズバーの
をクリックします。前回の処理を終了していない場合は、XVCD Debuggerのデバッグ処理を最後まで終了させたあと、最初から実行し直します。
XVCD Debuggerで
[開始]をクリックして処理を進めてください。p要素に設定したブレークポイントで実行が一時停止します。
p要素で一時停止
今度はp要素に設定したブレークポイントを解除してみましょう。ブレークポイントを解除するには、次の方法があります。
- ブレークポイントが設定された行でダブルクリックする
- ブレークポイントが設定された行の上で右クリックし、表示されるメニューで[ブレークポイントの削除]を選択する
ブレークポイントの解除
それでは、
[開始]をクリックして、処理を進めましょう。ブレークポイントは削除したので、処理がp要素にさしかかっても実行は一時停止しません。XVCDスクリプトの処理は、最後まで進んで終了します。