(57)【要約】【課題】非手続き処理構文を持つプログラム言語のソースプログラムを編集・保守するテキストエディタを、ユーザにとって使い勝手がよく、保守性に優れたものにする。【解決手段】編集中のソースプログラムを構文解析し、構文解析の結果からデータの定義方法と処理記述部の非手続き構文との関係を解析して、非手続き処理が存在することが判明した場合、それに関連するデータ項目を強調表示する。ユーザがそれを指定すると、別ウィンドウにデータ項目とそのデータ項目に連動するデータ項目の双方についての定義、非手続き処理構文、および、その説明情報を表示する。また、非手続き構文を手続き構文に展開して表示する。【選択図】        図２
2007286867.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステムによりプログラム言語のソースプログラムの編集をおこなうプログラム編集支援方法において、
前記ソースプログラムをコンピュータシステムの記憶装置に格納するステップと、
前記格納されたソースプログラムを参照するステップと、
前記コンピュータシステムの表示装置に、ソースプログラムの非手続き処理構文に関連して記述された第一のデータ項目を表示するステップと、
前記コンピュータシステムの入力装置から前記ソースプログラムの非手続き処理構文に関連して記述された第一のデータ項目の指定を受け付けるステップと、
前記コンピュータシステムの表示装置に、前記指定された第一のデータ項目に関する定義情報および関連して記述された非手続き処理構文を表示するステップと、
前記第一のデータ項目に連動する第二のデータ項目があるときに、前記コンピュータシステムの表示装置に、前記第二のデータ項目に関する定義情報を表示するステップと、
前記第二のデータ項目に関連して記述された非手続き処理構文があるときに、前記第二のデータ項目に関連して記述された非手続き処理構文を表示するステップとを有することを特徴とするプログラム編集支援方法。
【請求項２】
さらに、前記第一のデータ項目の説明情報と前記第二のデータ項目の説明情報とを記憶するステップと、
前記コンピュータシステムの表示装置に、前記指定された第一のデータ項目に関する説明情報と、前記第一のデータ項目に連動する第二のデータ項目に関する説明情報報とを表示するステップとを有することを特徴とする請求項１記載のプログラム編集装置。
【請求項３】
コンピュータシステムによりプログラム言語のソースプログラムの編集をおこなうプログラム編集支援方法において、
前記ソースプログラムをコンピュータシステムの記憶装置に格納するステップと、
前記格納されたソースプログラムを参照するステップと、
前記コンピュータシステムの表示装置に、ソースプログラムの非手続き処理構文に関連して記述された第一のデータ項目を表示するステップと、
前記コンピュータシステムの入力装置から前記ソースプログラムの非手続き処理構文に関連して記述された第一のデータ項目の指定を受け付けるステップと、
前記指定された第一のデータ項目に関連して記述された非手続き処理構文を手続き処理構文に展開するステップと、
前記コンピュータシステムの表示装置に、前記指定された第一のデータ項目に関連して記述された非手続き処理構文を展開した手続き処理構文を表示するステップと、
前記第一のデータ項目に連動する第二のデータ項目とその第二のデータ項目に関連した記述された非手続き処理構文とがあるときに、前記第二のデータ項目に関連して記述された非手続き処理構文を手続き処理構文に展開するステップと、
前記コンピュータシステムの表示装置に、前記指定された第二のデータ項目に関連して記述された非手続き処理構文を展開した手続き処理構文を表示するステップとを有することを特徴とするプログラム編集支援方法。
【請求項４】
コンピュータシステムによりプログラム言語のソースプログラムの編集をおこなうプログラム編集支援装置において、
前記ソースプログラムを格納する記憶手段と、
前記記憶手段に格納されたソースプログラムを読み出して参照する手段と、
前記コンピュータシステムの表示装置に、ソースプログラムの非手続き処理構文に関連して記述された第一のデータ項目を表示する手段と、
前記コンピュータシステムの入力装置から前記ソースプログラムの非手続き処理構文に関連して記述された第一のデータ項目の指定を受け付ける手段と、
前記コンピュータシステムの表示装置に、前記指定された第一のデータ項目に関する定義情報および関連して記述された非手続き処理構文を表示する手段と、
前記第一のデータ項目に連動する第二のデータ項目があるときに、前記コンピュータシステムの表示装置に、前記第二のデータ項目に関する定義情報を表示する手段と、
前記第二のデータ項目に関連して記述された非手続き処理構文があるときに、前記第二のデータ項目に関連して記述された非手続き処理構文を表示する手段とを有することを特徴とするプログラム編集支援装置。
【請求項５】
コンピュータシステムによりプログラム言語のソースプログラムの編集をおこなうプログラム編集支援装置において、
前記ソースプログラムを格納する記憶手段と、
前記記憶手段に格納されたソースプログラムを読み出して参照する手段と、
前記コンピュータシステムの表示装置の第一のウィンドウに、ソースプログラムの非手続き処理構文に関連して記述された第一のデータ項目を表示する手段と、
前記コンピュータシステムの入力装置から、前記第一のウィンドウ上に表示され、前記ソースプログラムの非手続き処理構文に関連して記述された第一のデータ項目の指定を受け付ける手段と、
前記コンピュータシステムの表示装置の前記第一のウィンドウとは別の第二のウィンドウに、前記指定された第一のデータ項目に関する定義情報、関連して記述された非手続き処理構文、および、その第一のデータ項目の説明情報を表示する手段と、
前記第一のデータ項目に連動する第二のデータ項目があるときに、前記第二のウィンドウに、前記第二のデータ項目に関する定義情報、関連して記述された非手続き処理構文、および、その第二のデータ項目の説明情報を表示する手段とを有することを特徴とするプログラム編集支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム編集支援方法、および、プログラム編集支援装置に係り、特に、非手続き処理構文を含んだＣＯＢＯＬ言語仕様により記述されたソースプログラムの編集に用いて好適なプログラム編集支援方法、および、プログラム編集支援装置に関する。
【背景技術】
【０００２】
プログラム言語においては、データ項目の定義で処理内容を指定できる言語がある。処理を記述する部分には具体的な処理内容を記述せず、データ項目の定義で処理内容を指定することを「非手続き的」であると言い、非手続き的な処理を「非手続き処理」と呼ぶ。非手続き処理では、処理を記述する部分に具体的な処理内容を記述しないため、処理を記述した部分を読んでもプログラムがどのように実行されるのか分かりにくい。例えば、プログラム言語ＣＯＢＯＬ（COmmon Business Oriented Language 以下、「ＣＯＢＯＬ」と略す）では、非手続き処理をおこなう構文が存在し、手続き部の処理を読むだけではどのようにプログラムが実行されるのか把握することが難しい。なお、プログラム言語ＣＯＢＯＬの非手続き処理構文については、以下の非特許文献１に記載がある。
【０００３】
従来は、例えば、秀丸エディタというテキストエディタは強調表示したい文字列(キーワード)と一致した文字列を強調表示することで、ソースプログラムの可読性を向上させていた。また、以下の非特許文献２には、相互参照表により、データ項目がソースプログラムのどの位置で参照および設定されているかを表示する機能が紹介されており、データ定義部と処理記述部の位置関係を把握することにより、どのようにプログラムが実行されるのかを把握する補助になっていた。
【０００４】
【非特許文献１】ＩＳＯ／ＩＥＣ  １９８９：２００２  Ｉｎｆｏｒｍａｔｉｏｎ  ｔｅｃｈｎｏｌｏｇｙ  −−  Ｐｒｏｇｒａｍｍｉｎｇ  ｌａｎｇｕａｇｅｓ  −−  ＣＯＢＯＬ、  インターネット＜ＵＲＬ：http://www.iso.org/iso/en/ISOOnline.frontpage＞より検索可
【非特許文献２】大川他 ブログラム図生成ツール：ＤＩＧ、情報処理学会ソフトウェア工学研究会、Ｖｏｌ．１９８４  Ｎｏ．０６４
【発明の開示】
【発明が解決しようとする課題】
【０００５】
非手続き処理構文を持つプログラム言語の場合、ユーザは処理を記述した部分のみを読んでもプログラムがどのように実行されるのか分からないという問題があり、ユーザのコーディングの効率が悪いという問題点がある。
【０００６】
また、上記秀丸エディタにより非手続き処理構文を持つプログラム言語を保守しようとするときに、非手続き処理構文のキーワードと一致した文字列を強調表示する場合には、ソースプログラムの可読性は向上するが、プログラムがどのように実行されるのか分からないという問題点がある。
【０００７】
さらに、上記非特許文献２により非手続き処理構文を持つプログラム言語を保守しようとするときには、データ定義部と処理記述部の位置関係を把握できるが、データ項目と非手続き処理との関係があるか否かを把握できないため、プログラムがどのように実行されるのか分からないという問題点がある。
【０００８】
本発明は、上記問題点を解決するためになされたもので、その目的は、非手続き処理構文を持つプログラム言語のソースプログラムを編集・保守する場合に、非手続き処理構文に関する情報を表示し、ユーザにとって、使い勝手がよく、保守性に優れたテキストエディタを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明のテキストエディタは、以下の手段を備える。
（１）編集中のソースプログラムを構文解析し、構文解析の結果からデータの定義方法と処理記述部の非手続き構文との関係を解析して、非手続き処理が存在することが判明した場合、それに関連するデータ項目を強調表示する。
【００１０】
ユーザがそれを指定すると、別ウィンドウにデータ項目の定義、非手続き処理構文、および、その説明情報を表示する。さらに、そのデータ項目に連動するデータ項目があるときには、そのデータ項目の定義、非手続き処理構文、および、その説明情報も表示する。
（２）また、ユーザが指定したデータ項目の非手続き構文を展開して、等価な手続き処理構文に置き換え、それを表示する。また、そのデータ項目に連動するデータ項目があるときには、そのデータ項目の非手続き処理構文も展開して、等価な手続き処理構文に置き換え、それを表示する。
【００１１】
これにより、非手続き構文を持ち、処理を記述した部分のみを読んでもプログラムがどのように実行されるのか分からないプログラム言語であっても、プログラムがどのように実行されるかが分かり、かつ、非手続き処理を手続き処理に展開できる。したがって、ユーザのコーディングの効率が向上する。
【発明の効果】
【００１２】
本発明によれば、非手続き処理構文を持つプログラム言語のソースプログラムを編集・保守する場合に、非手続き処理構文に関する情報を表示し、ユーザにとって、使い勝手がよく、保守性に優れたテキストエディタを提供するができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明に係る各実施形態を、図１ないし図１４を用いて説明する。
【００１４】
〔実施形態１〕
以下、本発明に係る第一の実施形態を、図１ないし図３、図６および図７を用いて説明する。
【００１５】
本実施形態のプログラム編集装置は、ＣＯＢＯＬなどの非手続き処理構文を言語仕様に有するプログラム言語のソーステキストを編集するためのテキストエディタであり、非手続き処理構文に関連して指定されたデータ項目に関する情報をわかりやすくユーザに表示するためのものである。
【００１６】
すなわち、本実施形態のプログラム編集装置は、ソースプログラムを編集中に、ユーザがソースプログラムに記述された非手続き構文に関連するデータ項目に対して、マウスなどのポインティングデバイスによりクリックするなどの特定の操作をおこなうと、その非手続き構文に指定されたデータ項目に関する情報を表示するものである。
【００１７】
先ず、図１を用いて本発明の第一の実施形態に係るテキストエディタが動作するコンピュータシステムの構成について説明する。
図１は、本発明の第一の実施形態に係るテキストエディタが動作するコンピュータシステムの構成を示すブロック図である。
【００１８】
本発明の第一の実施形態に係るテキストエディタが動作するコンピュータシステムは、図１に示されるように、ディスプレイ１１２、ＣＰＵ１１３、入力装置１１４、メモリ１０１、ディスク１１５がバス１１１を介して結合された形態である。
【００１９】
ＣＰＵ１１３は、ディスク１１５から本実施形態のテキストエディタを実現するためのプログラムとテーブルをメモリ１０１上にロードして実行する。
【００２０】
テキストエディタを実現するためのプログラムは、制御部１０４、構文解析部１０３、表示部１０５から構成される。また、このテキストエディタが取り扱うテーブルは、管理テーブル１０２、説明テンプレートテーブル１０９である。
【００２１】
構文解析部１０３はソースプログラム１１６を構文解析し、管理テーブル１０２を生成する。管理テーブル１０２は、後に、図９および図１０により説明する構文情報テーブルとデータ項目情報テーブルがチェーンされたものである。
【００２２】
表示部１０５は、さらに、構文解析部１０３の構文解析結果から判定して強調表示をおこなう強調表示部１０７と入力装置１１１のある特定の操作を受けて非手続き処理に関する説明を表示する説明表示部１０８から構成される。
【００２３】
説明テンプレートテーブル１０９は、説明表示部１０８が説明を表示するために用いるデータ構造である。
【００２４】
ユーザがテキストエディタを起動すると、各プログラムとテーブルがロードされ、さらに、ディスク上のソースプログラム１１６をロードして編集できる状態になる。
【００２５】
次に、図２および図３、図１１を用いて操作例とその操作手順の一例を簡単に説明する。
図２および図３は、本発明の第一の実施形態の係るテキストエディタの操作例を示すイメージ図である。
図１１は、説明テンプレートテーブルを示す図である。
【００２６】
図２に示されるＣＯＢＯＬのソースプログラムの例においては、データ項目Ａはデータ部（データを定義する箇所）内に、非手続的な構文で定義されている。また、手続き部（処理内容を記述する箇所）内に手続き構文のＶＡＬＩＤＡＴＥ文にデータ項目Ａを指定している。
【００２７】
この場合、データ項目Ａは、非手続的な構文に関連しているために、２０２の様にデータ項目Ａをある特定の方法で強調表示する（例えば、文字の色を変える、ハイライトなど。ただし、これらの方法に限られるわけではない）。
【００２８】
そして、ユーザは、この強調表示されたデータ項目Ａに対してある特定の操作をおこなう（例えば、強調表示されたデータ項目をダブルクリックする、右クリックしてメニューを出し「指定」の項目を選択など。ただし、この操作に限られるわけではない）と、図３の様にデータ項目Ａに対して非手続き処理構文がどのように作用するかを説明するウィンドウ３０１を表示する。
【００２９】
図２に示されるように、ディスプレイ１１２の表示画面には、ソースプログラム１１６を表示するソースプログラムウィンドウ２０１を表示し、ユーザはこのソースプログラムウィンドウ２０１に対して編集操作をおこなう。
【００３０】
図３は、図２に示すように強調表示されたデータ項目２０２に対してユーザがある特定の操作をおこなった場合のディスプレイ１１２の表示例である。
【００３１】
図３に示されるように、ディスプレイ１１２の表示画面に、非手続き構文に指定されたデータ項目の説明を表示する説明ウィンドウ３０１を表示することにより、ユーザは非手続き処理構文がどのように作用するかを知ることができる。
【００３２】
説明ウィンドウ３０１に表示される説明は、説明表示部１０８が管理テーブル１０２を用いて説明テンプレートテーブル１０９から選び出される。
【００３３】
例えば、図３の例では、図１１に示される説明テンプレートテーブルを用いて、説明ウィンドウ３０１上に、データ項目Ａに関して、「小文字のみ格納可能」が表示され、データ項目Ａに連動するデータ項目Ｓに関して、「Ａの検査結果に違反があればＳに“ＥＲＲ”を代入。」が表示される。
【００３４】
また、本実施形態の説明では、非手続き処理の説明をウィンドウに表示する手段を用いて説明したが、例えば、この内容を印刷する、バルーンヘルプなど、ウィンドウではなく別の手段により非手続き処理に関する情報を伝えるようにしてもよい。
【００３５】
次に、図６および図７を用いて本発明の第一の実施形態に係るテキストエディタの処理手順を説明する。
図６および図７は、本発明の第一の実施形態に係るテキストエディタの処理の流れを説明するフローチャートである。
【００３６】
先ず、ディスク１１５からからソースプログラム１１６を読み込み、ディスプレイ１１２に表示するよう制御部１０４が指示する（ステップ６０１）。
【００３７】
ここでユーザがテキストエディタ終了を指示したか判定し（ステップ６０２）、終了を指示した場合は、ソースプログラム１１６をディスク１１５に出力し（ステップ６０３）、テキストエディタを終了する。
【００３８】
ステップ６０２でテキストエディタ終了が指示されていない場合、ソースプログラムが編集されたか否かを判定し（ステップ６０４）、ソースプログラムが編集されていない場合は、ステップ６１０に進む。
【００３９】
そして、ステップ６１０でユーザが強調表示された構文に対し特定の操作をおこなったか否かを判定し、作業指示していない場合、ユーザによる編集操作をソースプログラム１１６に反映させ（ステップ６１１）、ステップ６０２に戻る。
【００４０】
一方、ステップ６０４でソースプログラムが編集された場合には、構文解析をおこなう（ステップ６０５）。
【００４１】
そして、ステップ６０６で、ステップ６０５で解析した構文解析情報に基づき、非手続き的なデータ項目定義が存在するか否かを判定して、存在すればステップ６０７に進み、存在しなければステップ６１０に戻る。
【００４２】
ステップ６０７で、ステップ６０５で解析した構文解析情報に基づき、非手続き的なデータ項目が非手続き的な構文に指定されているか判定し、指定されていれば６０８に進み、指定されていなければステップ６１０に戻る。
【００４３】
ステップ６０８で、ステップ６０５で解析した構文解析情報に基づき、管理テーブル１０２を作成し、非手続き的なデータ項目が指定された非手続き的な構文を強調表示して（ステップ６０９）、ステップ６１０に戻る。
【００４４】
ステップ６１０で、ユーザが強調表示された構文に対し特定の操作をおこなった場合、コネクタ６１２以降に進む。
【００４５】
コネクタ６１２以降の処理は、本実施形態のテキストエディタの場合、図７に示す処理となる。
【００４６】
ステップ７０１で、非手続き的な構文の説明を管理テーブル１０２を用いて説明テンプレートテーブル１０９から選び出し、それを図３に示した説明ウィンドウ３０１に表示し（ステップ７０２）、ステップ６０２に戻る。
【００４７】
以上説明したように、非手続き構文を持ち、処理を記述した部分のみを読んでもプログラムがどのように実行されるのか分からないプログラム言語であっても、ユーザはプログラムがどのように実行されるかが分かる。
【００４８】
〔実施形態２〕
以下、本発明に係る第二の実施形態を、図１、図４ないし図６、図８ないし図１０、図１１ないし図１４を用いて説明する。
【００４９】
本実施形態は、第一の実施形態に加えて、非手続き処理を手続き処理に展開する手段を備えたテキストエディタである。すなわち、本実施形態のテキストエディタは、ソースプログラムを編集中に、ユーザがソースプログラムに記述された非手続き構文に関連するデータ項目に対して特定の操作をおこなうと、その非手続き構文を手続き処理に展開する。
【００５０】
本実施形態のテキストエディタは、図１に示されるように第一の実施形態にプログラム置換部１０６と置換テンプレートテーブル１１０が加わっている。プログラム置換部１０６は、非手続き処理構文を手続き処理構文に置換する部分である。置換テンプレートテーブルは、非手続き処理構文を手続き処理構文に置換する際に用いられるテンプレートである。
【００５１】
次に、図４および図５、図１２を用いて操作例とその操作手順の一例を簡単に説明する。
図４および図５は、本発明の第二の実施形態の係るテキストエディタの操作例を示すイメージ図である。
図１２は、置換テンプレートテーブルを示す図である。
【００５２】
図４に示されるソースプログラム例においては、データ項目Ａはデータ部において非手続的な構文で定義されている。また、手続き部において、手続き構文ＶＡＬＩＤＡＴＥにデータ項目Ａを指定している。この場合、データ項目Ａには、非手続き処理が記述されているため、４０１の様に文字の色を変える、ハイライトするなど「ＶＡＬＩＤＡＴＥ  Ａ」をある特定の方法で強調表示する。ユーザが強調表示された「ＶＡＬＩＤＡＴＥ  Ａ」に対して、ダブルクリックするなどある特定の操作をおこなう。
【００５３】
このとき、テキストエディタは、データ項目Ａとデータ項目Ａに関連するデータ項目Ｓに対して動作を規定する非手続き処理構文を削除し、「ＶＡＬＩＤＡＴＥ  Ａ」がおこなう非手続き処理を手続き処理に展開する。
【００５４】
図４に示される構文４０１は、手続き処理構文ＶＡＬＩＤＡＴＥにデータ項目Ａが指定され、データ項目Ａには、非手続的な構文が指定されているため、ある特定の方法で強調表示している。
【００５５】
図５は、図４に示すように強調表示された構文４０１に対してユーザがある特定の操作を行った場合のディスプレイ１１２の表示例を示している。
【００５６】
図５に示されるように、非手続き構文を手続き処理に展開することにより、ユーザはプログラムがどのように実行されるのか分からない非手続き処理を手続き処理に展開することができる。
【００５７】
非手続き処理を手続き処理に展開する方法は、プログラム置換部１０６が管理テーブル１０２を用いて図１２に示す置換テンプレートテーブル１１０から選び出される。この例では、図１２の置換例に従って、ＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句が「ＩＦ  Ａ  ＩＳ  ＮＯＴ  ＡＬＰＨＡＢＥＴＩＣ−ＬＯＷＥＲ  ＴＨＥＮ
ＭＯＶＥ  “ＥＲＲ”  ＴＯ  Ｓ
ＥＮＤ  ＩＦ．」に展開されている。
【００５８】
次に、図６および図８を用いて本発明の第二の実施形態に係るテキストエディタの処理手順を説明する。
図６および図８は、本発明の第二の実施形態に係るテキストエディタの処理の流れを説明するフローチャートである。
【００５９】
図６に示す処理は、第一の実施形態と同様である。本実施形態は、コネクタ６１２の先の処理は、図８に示される処理になる。
【００６０】
ステップ８０１で、非手続き的な構文の置換方法を管理テーブル１０２を用いて置換テンプレートテーブル１１０から選び出し、その置換方法でソースプログラムの非手続き処理を手続き処理に置換し（ステップ８０２）、ステップ６０２に戻る。
【００６１】
以上説明したように、非手続き構文を持ち、処理を記述した部分のみを読んでもプログラムがどのように実行されるのか分からないプログラム言語であっても、非手続き構文が手続き処理に展開されるので、ユーザはプログラムがどのように実行されるのか分からないユーザは、プログラムがどのように実行されるかがすぐに理解できることになる。
【００６２】
〔管理テーブルとテンプレートに関連する処理の詳細〕
次に、図９および図１０、図１３および図１４を用いて具体的なソースプログラムに対応した管理テーブル１０２を作成する処理について説明する。
図９は、構文情報テーブルを示す図である。
図１０は、データ項目情報テーブルを示す図である。
図１３は、非手続き処理構文を含むＣＯＢＯＬのソースプログラム例を示す図である。
図１４は、図１３に示されるソースプログラムに対応する管理テーブルの一例を示す図である。
【００６３】
管理テーブル１０２は、図９に示す構文情報テーブル９０１とデータ項目情報テーブル１００１から構成される。
【００６４】
構文情報テーブル９０１は、構文情報テーブル９０１は非手続き処理構文とその構文に指定されたデータ項目を管理するために作成されるテーブルである。構文情報テーブル９０１のレコードは、非手続き処理構文の種別を格納する「構文種別」フィールドと、データ項目情報テーブルへのポインタを格納する可変個の「データ項目情報テーブルへのポインタ」フィールドの配列から構成される。
【００６５】
データ項目情報テーブル１００１は、非手続き処理構文に関係するデータ項目を管理するために作成されるテーブルである。データ項目情報テーブル１００１のレコードは、図１０に示されるように、データ項目名を格納する「データ項目名」フィールド、データ項目が非手続き処理構文のどこに指定されているかを格納する「データ項目の位置」フィールド、データ項目がどの様に定義されているかを格納する「データ項目の定義情報」フィールド、このデータ項目に関連するデータ項目のデータ項目情報テーブルへのポインタを格納する可変個の「関連するデータ項目のデータ項目情報テーブルへのポインタ」フィールドの配列から構成される。
【００６６】
図１３に示されるデータ項目Ａは、ライン１３０１に示すように、ＣＬＡＳＳ  ＩＳ  ＡＬＰＨＡＢＥＴＩＣ−ＬＯＷＥＲ句により、英数字の小文字のみ格納可能である。
【００６７】
データ項目Ｂはライン１３０２に示すように、ＣＬＡＳＳ  ＩＳ  ＡＬＰＨＡＢＥＴＩＣ−ＵＰＰＥＲ句により、英数字の大文字のみ格納可能である。
【００６８】
データ項目Ｓはライン１３０３に示すように、ＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句により、データ項目Ａの内容に誤りがあれば、自身に「ＮＧ」を設定する。
【００６９】
データ項目Ｓ２はライン１３０４に示すように、ＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句により、データ項目Ａの内容に誤りがあれば、自身に「１０」を設定する。
【００７０】
データ項目Ｓ３はライン１３０５に示すように、ＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句により、データ項目Ｂの内容に誤りがあれば、自身に「ＮＧ」を設定する。
【００７１】
また、手続き部では、ライン１３０６に示すように、ＭＯＶＥ文によって、データ項目ＡおよびＢに「ＡＢＣ」を転記している。
【００７２】
そして、ライン１３０７に示すように、手続き構文のＶＡＬＩＤＡＴＥ文により、データ項目ＡおよびＢに対して非手続き処理をおこなう。ここでは、ＶＡＬＩＤＡＴＥ文の内容妥当性検査により、データ項目ＡおよびＢの内容がＣＬＡＳＳ句に反しているか否かが検査される。このときには、データ項目Ａは英数字の小文字のみ格納可能であるところに大文字の「ＡＢＣ」が代入されているため、データ項目ＳおよびＳ２に「ＮＧ」および「１０」が設定される。データ項目Ｂは、内容に問題が無いため、Ｓ３には「ＮＧ」は設定されない。
【００７３】
図４に示したソースプログラムでは、ユーザは手続き部のＶＡＬＩＤＡＴＥ文を見ただけでは、どのように処理されるのか分からず、データ部のデータ項目の定義を見なければならない。
【００７４】
本実施形態の構文解析部１０３は、図１３のソースプログラム１１６を構文解析し、図１４に示す管理テーブル１０２を作成する。
【００７５】
非手続き構文のＶＡＬＩＤＡＴＥ文はライン１３０７に示すように、構文種別が「ＶＡＬＩＤＡＴＥ」であるため、図１４の構文情報テーブル１４０１が管理テーブル１０２のルートに置かれる。
【００７６】
データ項目Ａは、ライン１３０１に示すように、データ項目名フィールドが「Ａ」、データ項目の位置フィールドが「ＶＡＬＩＤＡＴＥの直後」、データ項目の定義情報フィールドが「ＣＬＡＳＳ  ＩＳ  ＡＬＰＨＡＢＥＴＩＣ−ＬＯＷＥＲ指定あり」であるため、図１４に示されるようにデータ項目情報テーブル１４０２に値が設定される。
【００７７】
データ項目Ｂは、ライン１３０２に示すように、データ項目名フィールドが「Ｂ」、データ項目の位置フィールドが「ＶＡＬＩＤＡＴＥの直後」、データ項目の定義情報フィールドが「ＣＬＡＳＳ  ＩＳ  ＡＬＰＨＡＢＥＴＩＣ−ＵＰＰＥＲ指定あり」であるため、図１４に示されるようにデータ項目情報テーブル１４０５に値が設定される。
【００７８】
データ項目Ｓは、ライン１３０３に示すように、データ項目名フィールドが「Ｓ」、データ項目の位置フィールドが非手続き処理構文に指定されていないので空、データ項目の定義情報フィールドが「ＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句指定あり」であるため、図１４に示されるようにデータ項目情報テーブル１４０３に値が設定される。
【００７９】
データ項目Ｓ２は、ライン１３０４に示すように、データ項目名フィールドが「Ｓ２」、データ項目の位置フィールドが非手続き処理構文に指定されていないので空、データ項目の定義情報フィールドが「ＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句指定あり」であるため、図１４に示されるようにデータ項目情報テーブル１４０４に値が設定される。
【００８０】
データ項目Ｓ３は、ライン１３０５に示すように、データ項目名フィールドが「Ｓ３」、データ項目の位置フィールドが非手続き処理構文に指定されていないので空、データ項目の定義情報フィールドが「ＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句指定あり」であるため、図１４に示されるようにデータ項目情報テーブル１４０６に値が設定される。
【００８１】
そして、ライン１３０７に示すように、ＶＡＬＩＤＡＴＥ文にはデータ項目ＡおよびＢが指定されているため、構文情報テーブル１４０１のデータ項目情報テーブルへのポインタフィールドは、データ項目情報テーブル１４０２とデータ項目情報テーブル１４０５を参照する。
【００８２】
ライン１３０３および１３０４に示すように、データ項目ＳおよびＳ２はデータ項目ＡとＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句によって関連があるため、データ項目情報テーブル１４０２の関連するデータ項目のデータ項目情報テーブルへのポインタフィールドは、データ項目情報テーブル１４０３とデータ項目情報テーブル１４０４を参照する。
【００８３】
そして、ライン１３０５に示すように、データ項目Ｓ３は、データ項目ＢとＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句によって関連があるため、データ項目情報テーブル１４０５の関連するデータ項目のデータ項目情報テーブルへのポインタフィールドはデータ項目情報テーブル１４０６を参照する。
【００８４】
次に、図７および図８、図１１ないし図１４を用いて説明テンプレートテーブル１０９の説明例および置換テンプレートテーブル１１０が、作成された管理テーブル１０２を使用してどの様に利用されるかを説明する。
【００８５】
図７のステップ７０１では、管理テーブル１０２が保持する構文情報テーブル１４０１が表す情報を用いて、図１１に示す説明テンプレートテーブル１０９の「構文」列と構文情報１４０１の「構文種別」を比較し、一致する行を全て取り出す。取り出された行の「データ項目の位置」列とデータ項目情報１４０２および１４０５の「データ項目の位置」、取り出された行の「データ項目の定義」列とデータ項目情報１４０２および１４０５の「データ項目の定義情報」、取り出された行の「関連データ項目の定義情報」列とデータ項目情報１４０２および１４０５の「関連するデータ項目のデータ項目情報テーブルへのポインタ」が参照するデータ項目情報１４０３、１４０４および１４０６の「データ項目の定義情報」を比較し、一致する行を全て取り出し、説明ウィンドウ３０１に「説明情報」列の内容を表示する（ステップ７０２）。
【００８６】
すなわち、図１３では、「構文」列が「ＶＡＬＩＤＡＴＥ文」、「データ項目の位置」が「ＶＡＬＩＤＡＴＥ文の直後」、「データ項目の定義」列が「ＣＬＡＳＳ  ＩＳ  ＡＬＰＨＡＢＥＴＩＣ−ＬＯＷＥＲ指定あり」また「ＣＬＡＳＳ  ＩＳ  ＡＬＰＨＡＢＥＴＩＣ−ＵＰＰＥＲ指定あり」、「関連データ項目」列が「ＶＡＬＩＤＡＴＥ−ＳＴＡＴＵＳ句あり」の行を取り出す。
【００８７】
図８のステップ８０１の置換テンプレートテーブルの取り出しも図７のステップ７０１と同様である。置換処理の場合は、上記の「説明情報」の内容表示が「置換例」の内容表示になる。
【００８８】
本発明の第一の実施形態と第二の実施形態のテキストエディタは、このようにして設定された管理テーブルの情報に従って、処理をおこなうものである。
【００８９】
なお、以上で説明した本発明の第一の実施形態および第二の実施形態では、ＣＯＢＯＬ言語のソースプログラムを例に採り説明したが、Ｃ言語等の他言語でも構文解析部１０３、説明テンプレートテーブル１０９および置換テンプレートテーブル１１０を各言語用に置き換えて、第一の実施形態および第二の実施形態の処理と同様の処理をおこなうことにより、本発明の第一の実施形態および第二の実施形態と同様の効果を得ることができる。
【図面の簡単な説明】
【００９０】
【図１】本発明の第一の実施形態と第二の実施形態に係るテキストエディタが動作するコンピュータシステムの構成を示すブロック図である。
【図２】本発明の第一の実施形態の係るテキストエディタの操作例を示すイメージ図である（その一）。
【図３】本発明の第一の実施形態の係るテキストエディタの操作例を示すイメージ図である（その二）。
【図４】本発明の第二の実施形態の係るテキストエディタの操作例を示すイメージ図である（その一）。
【図５】本発明の第二の実施形態の係るテキストエディタの操作例を示すイメージ図である（その二）。
【図６】本発明の第一の実施形態と第二の実施形態に係るテキストエディタの処理の流れを説明するフローチャートである。
【図７】本発明の第一の実施形態に係るテキストエディタの処理の流れを説明するフローチャートである。
【図８】本発明の第二の実施形態に係るテキストエディタの処理の流れを説明するフローチャートである。
【図９】構文情報テーブルを示す図である。
【図１０】データ項目情報テーブルを示す図である。
【図１１】説明テンプレートテーブルを示す図である。
【図１２】置換テンプレートテーブルを示す図である。
【図１３】非手続き処理構文を含むＣＯＢＯＬのソースプログラム例を示す図である。
【図１４】図１３に示されるソースプログラムに対応する管理テーブルの一例を示す図である。
【図１】
2007286867.tif 000003
【図２】
2007286867.tif 000004
【図３】
2007286867.tif 000005
【図４】
2007286867.tif 000006
【図５】
2007286867.tif 000007
【図６】
2007286867.tif 000008
【図７】
2007286867.tif 000009
【図８】
2007286867.tif 000010
【図９】
2007286867.tif 000011
【図１０】
2007286867.tif 000012
【図１１】
2007286867.tif 000013
【図１２】
2007286867.tif 000014
【図１３】
2007286867.tif 000015
【図１４】
2007286867.tif 000016