(57)【特許請求の範囲】
【請求項１】
テキストベースプログラムを編集するプログラム編集装置であって、
ネストレベル毎に字下げが行われたプログラムテキストを生成するテキスト表示情報生成部と、
前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、
前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報をプログラムの一部としないで生成するネスト構造表示情報生成部と、
前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報が当該ネスト文字列の字下げ量に追従して当該ネスト文字列の側部に隣接するように、プログラムの一部とはならない当該ネスト構造表示情報を、前記プログラムテキストを印刷したり画面に表示したりする領域に合成させるテキスト／ネスト構造表示合成部と、
を備えたことを特徴とするプログラム編集装置。
【請求項２】
ネスト構造表示情報生成部は、異なるレベルのネストの表示属性を変えてネスト構造表示情報を生成することを特徴とする請求項１記載のプログラム編集装置。
【請求項３】
ネスト構造表示情報生成部は、隣接する同一レベルのネストの表示属性を変えてネスト構造表示情報を生成することを特徴とする請求項１又は請求項２に記載のプログラム編集装置。
【請求項４】
指定されたネスト構造表示情報の一部を印刷したり画面に表示したりするか否かを切り替えることができることを特徴する請求項１〜請求項３のいずれか一項に記載のプログラム編集装置。
【請求項５】
ネスト文字列が選択されると、前記ネスト文字列と同一ネストに含まれる他のネスト文字列が強調表示されることを特徴とする請求項１〜請求項４のいずれか一項に記載のプログラム編集装置。
【請求項６】
ネスト文字列を選択してジャンプ方向を指示すると、前記ネスト文字列と同一ネストに含まれる他のネスト文字列へジャンプさせることを特徴とする請求項１〜請求項５のいずれか一項に記載のプログラム編集装置。
【請求項７】
ネスト文字列が選択されると、選択されたネスト文字列と同一ネストの開始文字列及び終了文字列が認識され、
画面のスクロールの範囲は、最も上にスクロールした時でも、認識された同一ネストの開始文字列が前記画面に表示されている状態となり、最も下にスクロールした時でも、認識された同一ネストの最終文字列が前記画面に表示されている状態になるように、限定されることを特徴とする請求項１〜請求項６のいずれか一項に記載のプログラム編集装置。
【請求項８】
ネスト構造表示情報生成部は、同一ネストに含まれるネスト文字列の側部に表示される横線を縦線で連結してネスト構造表示情報を生成するとともに、画面の上下部の少なくとも一方で、前記文字列のネストレベルの識別子を前記縦線に対応付けて表示することを特徴とする請求項１〜請求項７のいずれか一項に記載のプログラム編集装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、テキストベースのプログラムを編集するプログラム編集装置に関するものである。
【背景技術】
【０００２】
まず、プログラム言語の例について説明する。例えば、国際標準規格であるＩＥＣ６１１３１−３に規定されるコントローラ用プログラム言語が規定されている。より具体的には、ＬＤ（ラダー・ダイアグラム）、ＦＢＤ（ファンクション・ブロック・ダイアグラム）、ＳＦＣ（シーケンシャル・ファンクション・チャート）、ＳＴ（ストラクチャード・テキスト）、ＩＬ（インストラクション・リスト）の５種類が規定されている。
【０００３】
これらのプログラム言語のうち、ＬＤ、ＦＢＤ、ＳＦＣはグラフィカル言語と言われ、各プログラム用の部品が画面上に配置される。そして、各部品間がグラフィカルに接続されることでプログラムされていくものである。一方、ＳＴ、ＩＬは、テキストベース（非グラフィカル）言語と言われ、画面上に文字列が並べられてプログラムされていくものである。
【０００４】
また、コントローラ用プログラム言語以外でも、Ｃ、ＡＳＭ（アセンブリ言語）、ＢＡＳＩＣ（Beginner's All purpose Symbolic Instruction Code）、ＰＬ／Ｍ（Programming Language for Microcomputer）、ＦＯＲＴＬＡＮ（FORmula TRANslation）等、多種多様なテキストベースプログラム言語が存在する。
【０００５】
そして、一般に、プログラムには、サブルーチンや関数など処理内容を記述したプログラムブロックや、条件分岐、無条件分岐、繰り返しなどのフロー制御と呼ばれる分岐処理が含まれる。そして、プログラム実行時には、必要に応じてプログラムブロックや分岐が選択されて処理が進むことになる。
【０００６】
これらのプログラムブロックやフロー制御は、グラフィカル言語ではそれぞれのシンボルによって表され、テキストベース言語ではそれぞれの文字列によって表される。以降、これらのプログラムブロックやフロー制御のことをネスト、ネストの階層のことをネストレベル、ネストの種類を示す文字列のことをネスト文字列と表す。
【０００７】
グラフィカル言語では、各部品の形状そのものと各部品間の接続関係がグラフィカルに表示／印刷される。このため、プログラムのネスト構造が比較的分かりやすい。
【０００８】
一方、テキストベース言語でプログラムの構造を把握するためには、ユーザ変数、コメントや、各言語毎に決まっている予約語を、各文字の並びで一々識別していく必要がある。テキストベース言語において、ネスト構造を決定するのはこの予約語に属する文字列（ネスト文字列）である。つまり、ネスト構造を正しく把握するためには、プログラム全体を構成する文字列の中から、このネスト文字列を正しく抽出する必要がある。しかし、単純に、左詰めでプログラムテキストを表示すると、ネスト構造を正しく抽出することが難しい。即ち、プログラムの視認性が余りに悪い。
【０００９】
そこで、テキストベースのプログラムを編集する際には、ネスト階層レベルを表示するために、字下げを用いることが多い。この字下げは、あくまでも表示のためだけに行われる。即ち、字下げは、プログラムの実行に影響しない。このため、字下げ量とネストの深さの関係が統一されていなくてもプログラムをコンパイルする際にはエラーにならない。
【００１０】
従って、字下げ作業がプログラム入力者に委ねられた場合には、入力者毎に字下げ量が異なることがある。また、同じ入力者でも、入力時の気分で字下げ量を変えることもある。さらに、当然のことながら、入力時の勘違いにより、字下げ量を間違うこともある。従って、テキストベースのプログラムにおいては、ネスト構造の表示が曖昧になりやすい。即ち、プログラムを読む際に、ネスト構造の認識を間違ってしまうことが多かった。
【００１１】
そこで、マイクロソフト社のＶｉｓｕａｌ  Ｓｔｕｄｉｏ（登録商標）などのある種のプログラム編集機能では、字下げを自動で行うものもある。しかし、プログラムを読む際に、ネストレベルを確認するためには、字下げ量を把握する必要がある。ここで、字下げ部は、空白で構成されている。従って、画面で表示されている場合は、カーソルキーを利用して数えることができる。しかし、印刷された場合は、空白文字の数を数えることが困難となる。更に、ネストの開始から終了までの表示距離が離れると、ネスト構造の把握が困難である。またプログラム中に字下げという、プログラムロジックとは関係ない空白部が必要となる。従って、ネストレベルが深くなるにつれ、肝心のロジック部分が次第に右方へ追いやられてしまうという問題もある。さらに、プログラムの新規作成途中や改造途中に、ネスト構造が未完成の部分において、プログラム入力者が希望しない字下げが自動的に行われ、視認性が低下するという問題もあった。
【００１２】
そこで、上記問題点を解決するため、図式表現上でプログラムのデータ構造を表示するプログラム編集装置において、図式表現上でデータ種別が選択（入力）されたことに対応して、選択された項目（集団項目、基本項目、独立項目など）に対応して、当該選択された項目に対する制御レベル図を表示すると共に併せてこの制御レベル図のレベル記号中に選択された項目をもとに生成したレベル番号を設定して表示するように構成したことを特徴とするデータ構造を表示するものが提案されている（例えば、特許文献１参照）。
【００１３】
【特許文献１】特開平５−２３３２５１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかし、特許文献１記載のものは、プログラムの入力に加え、ネスト構造（データ構造）を入力しなければならなかった。これにより、プログラム入力者は、煩雑な入力作業を強いられるという問題があった。
【００１５】
この発明は、上述のような課題を解決するためになされたもので、その目的は、煩雑な操作を要することなく、ネスト構造の把握が容易にできるプログラム編集装置を提供することである。
【課題を解決するための手段】
【００１６】
この発明に係るプログラム編集装置は、テキストベースプログラムを編集するプログラム編集装置であって、ネストレベル毎に字下げが行われたプログラムテキストを生成するテキスト表示情報生成部と、前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報をプログラムの一部としないで生成するネスト構造表示情報生成部と、前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報が当該ネスト文字列の字下げ量に追従して当該ネスト文字列の側部に隣接するように、プログラムの一部とはならない当該ネスト構造表示情報を、前記プログラムテキストを印刷したり画面に表示したりする領域に合成させるテキスト／ネスト構造表示合成部とを備えたものである。
【発明の効果】
【００１７】
この発明は、テキストベースプログラムを編集するプログラム編集装置であって、ネストレベル毎に字下げが行われたプログラムテキストを生成するテキスト表示情報生成部と、前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報をプログラムの一部としないで生成するネスト構造表示情報生成部と、前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報が当該ネスト文字列の字下げ量に追従して当該ネスト文字列の側部に隣接するように、プログラムの一部とはならない当該ネスト構造表示情報を、前記プログラムテキストを印刷したり画面に表示したりする領域に合成させるテキスト／ネスト構造表示合成部とを備える構成としたことで、煩雑な操作を要することなく、ネスト構造の把握が容易にできる。
【発明を実施するための最良の形態】
【００１８】
この発明をより詳細に説明するため、添付の図面に従ってこれを説明する。なお、各図中、同一又は相当する部分には同一の符号を付しており、その重複説明は適宜に簡略化ないし省略する。
【００１９】
実施の形態１．
図１はこの発明の実施の形態１におけるプログラム編集装置のブロック図である。図２はこの発明の実施の形態１におけるプログラム編集装置に用いられるプログラムのネストの例を示した図である。図３はこの発明の実施の形態１におけるプログラム編集装置の画面を示した図である。図４はこの発明の実施の形態１におけるプログラム編集装置の画面の一部であるプログラムテキスト表示部を示した図である。図５はこの発明の実施の形態１におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【００２０】
図１において、１はキーボードである。２は記憶装置である。そして、キーボード１及び記憶装置２は、テキスト入力部３に接続される。このテキスト入力部３は、キーボード１又は記憶装置２からプログラムテキストが入力されるものである。そして、テキスト入力部３は、テキスト情報保持部４に接続される。このテキスト情報保持部４は、テキスト入力部３に入力されたプログラムテキストを保持するものである。
【００２１】
そして、テキスト情報保持部４は、テキスト表示情報生成部５に接続される。このテキスト表示情報生成部５は、テキスト中のタブや改行などの制御文字を処理するものである。そして、このテキスト表示情報生成部５は、モニタ６及びプリンタ７に接続される。このモニタ６は、テキスト表示情報生成部５で生成されたプログラムテキストを画面に表示するものである。一方、プリンタ７は、モニタ６の画面に表示された内容を印刷するものである。そして、編集されたプログラムテキストは、テキスト情報保持部４からテキスト入力部３を経由して記憶装置２に保存される。
【００２２】
さらに、この発明におけるテキスト情報保持部４は、ネスト文字列判定部８にも接続される。このネスト文字列判定部８は、ネスト文字列設定部９に接続される。このネスト文字列設定部９は、プログラムテキストのネスト文字列情報が記憶されるものである。なお、ネストとは、プログラムブロックやフロー制御のことをいう。このネストは、プログラム言語に依存する。例えば、マイクロソフト社のＶＢＡ（Visual Basic for Application）というテキストベース言語では、図２のようなネストの種類がある。このネストの種類を示す文字列をネスト文字列という。そして、ネストの階層のことをネストレベルという。
【００２３】
ネスト文字列判定部８は、ネスト文字列設定部９のネスト文字列情報に基づいて、テキスト情報保持部４から入力されるプログラムテキストからネスト文字列を抽出する。また、ネスト文字列判定部８は、ネストレベル判定部１０に接続される。このネストレベル判定部１０は、ネスト文字列判定部８により判定されたネスト文字列のネストレベルを判定するものである。
【００２４】
そして、ネストレベル判定部１０は、ネスト構造表示情報生成部１１に接続される。このネスト構造表示情報生成部１１は、ネスト構造表示設定部１２に接続される。このネスト構造表示設定部１２は、ネスト構造の表現パターンが記憶されるものである。そして、ネスト構造表示情報生成部１１は、ネスト構造表示設定部１２の表現パターンの情報に基づいて、ネストレベル判定部１０から入力されるネストレベルの情報を生成する。このネスト構造表示情報生成部１１は、テキスト／ネスト構造表示合成部１３に接続される。このテキスト／ネスト構造表示合成部１３は、テキスト表示情報生成部５の出力側で、モニタ６及びプリンタ７の間に接続されるものである。
【００２５】
そして、このテキスト／ネスト構造表示合成部１３は、テキスト表示情報生成部５により生成されたプログラムテキストをモニタ６の画面に表示させる場合に、ネスト文字列判定部８により抽出されたネスト文字列とネスト構造表示情報生成部１１により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示をプログラムテキストとは独立した領域でモニタ６の画面に合成表示させるものである。
【００２６】
次に、図３乃至図５を用いて、モニタ６の画面表示をより詳細に説明する。図３において、１４はモニタ６の画面のテキスト表示部である。このテキスト表示部１４には、プログラムテキストが表示される。このテキスト表示部１４のみを示したものが図４である。図４に示すように、プログラムテキストは、左端を揃えて表示される。図３において、１５はモニタ６の画面のネスト構造表示部である。このネスト構造表示部１５のみを示したものが図５である。このネスト構造表示部１５は、テキスト表示部１４の左側部に設けられる。そして、ネスト構造表示部１５には、ネスト構造表示情報生成部１１により生成されたネスト構造表示情報が表示される。
【００２７】
実施の形態１においては、ネスト構造表示情報は、グラフィック型である。より具体的には、同じネストの文字列の左側部には、横線１５ａが表示される。そして、これらの横線１５ａの左端が縦線１５ｂにより連結される。これにより、ネスト構造が表現される。また、より下位のネスト構造表示情報の縦線は、より上位のネスト構造表示情報の縦線よりも右側に表示される。これにより、ネスト構造の階層関係が示される。
【００２８】
以上で説明した実施の形態１においては、煩雑な作業を要することなく、ネスト構造が容易に把握される。従って、プログラム作成及び解読時の効率が向上される。さらに、字下げを要しない。従って、ネストレベルの識別のために、画面上のスペースを要するということがない。加えて、元々のプログラムの実体であるプログラムテキストとネスト構造表示部１５は、互いに独立して管理される。従って、ネスト構造表示部１５に表示されたネスト構造表示情報の内容に基づいて、プログラムテキスト中の字下げを適切に行うことができる。なお、プリンタ７により印刷されたプログラムテキストにおいても、解読時の効率が向上されるのはいうまでもない。
【００２９】
実施の形態２．
図６はこの発明の実施の形態２におけるプログラム編集装置の画面を示した図である。図７はこの発明の実施の形態２におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態１と同一又は相当部分には同一符号を付して説明を省略する。
【００３０】
実施の形態１におけるネスト構造表示情報は、グラフィック型であった。一方、実施の形態２におけるネスト構造表示情報は、テキスト型である。より具体的には、図７に示される。
【００３１】
即ち、最上位のネストレベルは、ネスト構造表示部１５の左側部で数字の１で表示される。そして、ネストレベルが下位になるにつれ、数字の１２、１２３のように表示される。さらに、ネストの先頭及び終了は、数字の後にマイナスが表示される。そして、ネストの中間は、数字の後にプラスが表示される。
【００３２】
以上で説明した実施の形態２によれば、実施の形態１と同様の効果を得ることができる。さらに、数字により、より直感的にネスト構造の階層関係が理解される。
【００３３】
実施の形態３．
図８はこの発明の実施の形態３におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態１と同一又は相当部分には同一符号を付して説明を省略する。
【００３４】
実施の形態１におけるネスト構造表示情報は、グラフィック型であった。一方、実施の形態３におけるネスト構造表示情報は、グラフィック型とテキスト型の混在型である。より具体的には、図８に示される。
【００３５】
即ち、グラフィック型の部分は、実施の形態１と同様である。そして、グラフィック型ネスト構造表示情報の左側に実施の形態２と同様に数字が表示される。但し、スペースを考慮して、ネストレベルが下位になるにつれて数字の１、２、３・・・と表示される。
【００３６】
以上で説明した実施の形態３によれば、実施の形態１及び２と同様の効果を得ることができる。さらに、グラフィック及び数字により、より直感的にネスト構造の階層関係が理解される。
【００３７】
実施の形態４．
図９はこの発明の実施の形態４におけるプログラム編集装置の画面を示した図である。図１０はこの発明の実施の形態４におけるプログラム編集装置の画面の一部であるプログラムテキスト表示部を示した図である。図１１はこの発明の実施の形態４におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態１と同一又は相当部分には同一符号を付して説明を省略する。
【００３８】
実施の形態１乃至３におけるテキスト表示部１４においては、プログラムテキストは、左端を揃えて表示されていた。即ち、字下げが無い場合であった。一方、実施の形態４におけるテキスト表示部１６では、各ネストレベル毎に半角四文字の字下げが行われている。
【００３９】
また、実施の形態１乃至３においては、テキスト表示部１４とネスト構造表示部１５が画面上で重なることはなかった。一方、実施の形態４においては、テキスト表示部１６の左側部とネスト構造表示部１７の右側部が重なっている。これにより、字下げが行われたネスト文字列に対しても適切なネスト構造が表示される。
【００４０】
より具体的には、ネスト構造表示情報は図１１に示される。即ち、実施の形態４におけるネスト構造表示情報は、実施の形態１と同様、グラフィック型である。そして、ネスト文字列の字下げ量に追従して右側に移動した状態で表示される。
【００４１】
以上で説明した実施の形態４によれば、実施の形態１と同様の効果を得ることができる。さらに、字下げが行われることにより、より直感的にネスト構造の階層関係が理解される。
【００４２】
実施の形態５．
図１２はこの発明の実施の形態５におけるプログラム編集装置の画面を示した図である。図１３はこの発明の実施の形態５におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態４と同一又は相当部分には同一符号を付して説明を省略する。
【００４３】
実施の形態４におけるネスト構造表示情報は、グラフィック型であった。一方、実施の形態５は、実施の形態２と同様のテキスト型である。なお、ネストの先頭及び終了を示すマイナスや、ネストの中間を示すプラスは、ネスト文字列の字下げ量に応じて、右側に付加される。
【００４４】
以上で説明した実施の形態５によれば、実施の形態２と同様の効果を得ることができる。さらに、字下げが行われることにより、より直感的にネスト構造の階層関係が理解される。
【００４５】
実施の形態６．
図１４はこの発明の実施の形態６におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態４と同一又は相当部分には同一符号を付して説明を省略する。
【００４６】
実施の形態４におけるネスト構造表示情報は、グラフィック型であった。一方、実施の形態６におけるネスト構造表示情報は、グラフィック型とテキスト型の混在型である。より具体的には、図１２に示される。
【００４７】
即ち、グラフィック型の部分は、実施の形態４と同様である。そして、グラフィック型の左側部に実施の形態５と同様に数字が表示される。但し、スペースを考慮して、ネストレベルが下位になるにつれて数字の１、２、３・・・と表示される。さらに、ネストの先頭及び終了を示すマイナスや、ネストの中間を示すプラスは、ネスト文字列の字下げ量に応じて、右側に付加される。
【００４８】
実施の形態１乃至実施の形態６は、ネスト構造表示情報の具体例である。従って、別のグラフィック表示方法や、別のテキストを使用した表示方法で、ネスト構造を表示しても構わない。
【００４９】
実施の形態７．
図１５はこの発明の実施の形態７におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態１と同一又は相当部分には同一符号を付して説明を省略する。
【００５０】
実施の形態７は、ネスト構造表示情報生成部１１が、異なるレベルのネストの表示属性を変えてネスト構造表示情報を生成する。図１５では、隣接するネストが各レベル毎に線種を変えて区別される。しかし、当該区別は、太さや線色などで行ってもよい。
【００５１】
以上で説明した実施の形態７によれば、実施の形態１と同様の効果を得ることができる。さらに、線種の違いにより、より直感的にネスト構造の階層関係が理解される。
【００５２】
実施の形態８．
図１６はこの発明の実施の形態８におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態７と同一又は相当部分には同一符号を付して説明を省略する。
【００５３】
実施の形態７では、隣接するネストが各レベル毎に線種を変えて区別されていた。一方、実施の形態８では、隣接するネストが一つおきに線種を変えて区別されている。なおｎ種類の線種を用意し、ｎ個のレベル毎に表示属性を循環して使用してもよい。
【００５４】
以上で説明した実施の形態８によれば、実施の形態１と同様の効果を得ることができる。さらに、線種の違いを減少することにより、実施の形態７よりも簡素化なプログラム編集装置が実現される。
【００５５】
実施の形態７及び実施の形態８は、ネスト構造表示情報が、グラフィック型の場合で説明した。しかし、ネスト構造表示情報が、テキスト型の場合でも、ネストレベルの区別は可能である。即ち、ネスト文字列の使用テキストのフォント、文字色、文字太さ、文字サイズ等を変更して、ネストレベルを区別すればよい。
【００５６】
実施の形態９．
図１７はこの発明の実施の形態９におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態７と同一又は相当部分には同一符号を付して説明を省略する。
【００５７】
実施の形態７では、異なるレベルのネストの表示属性を変えてネスト構造表示情報が生成されるものであった。一方、実施の形態８では、同一レベルのネストが近接している場合に、同一レベルのネストの表示属性を変えてネスト構造表示情報が生成されるものである。
【００５８】
以上で説明した実施の形態９によれば、実施の形態１と同様の効果を得ることができる。さらに、近接する同一レベルのネストを一種類のネストと勘違いすることがなくなる。
【００５９】
なお、実施の形態９では、グラフィック型のネスト構造表示情報を線種により区別する場合で説明した。しかし、他にもグラフィック型のネスト構造表示情報の場合は、線の太さや線色により区別すればよい。また、テキスト型のネスト構造表示情報の場合は、使用テキスト、フォント、文字色、文字太さ、文字サイズなどにより区別すればよい。さらに、全ネストで表示属性が異なっても、一つおきに表示属性が異なっても、ｎ個のネスト毎に表示属性が循環してもよい。即ち、近接する同一レベルのネスト間で表示属性が変わればよい。
【００６０】
実施の形態１０．
図１８はこの発明の実施の形態１０におけるプログラム編集装置のブロック図である。なお、実施の形態１と同一又は相当部分には同一符号を付して説明を省略する。
【００６１】
実施の形態１０は、実施の形態１に、ネスト構造表示指示部１８を付加したものである。このネスト構造表示指示部１８は、テキスト／ネスト構造表示合成部１３に接続される。そして、ネスト構造表示指示部１８は、操作者の操作によりテキスト／ネスト構造表示合成部１３にネスト構造表示情報の表示合成の有効／無効の指示を出す。これにより、ネスト構造表示情報の全部をモニタ６の画面に表示させるか否かが、切り替えられる。
【００６２】
以上で説明した実施の形態１０によれば、実施の形態１と同様の効果を得ることができる。さらに、不要なネスト構造表示情報を非表示にすることで、表示内容の単純化や、表示時間、印刷時間の低減化がなされる。
【００６３】
なお、実施の形態１０では、ネスト構造表示指示部１８は、テキスト／ネスト構造表示合成部１３に接続される場合で説明した。しかし、ネスト構造の表示に関わる部分のいずれに指示を出すようにしてもよい。
【００６４】
実施の形態１１．
図１９はこの発明の実施の形態１１におけるプログラム編集装置のブロック図である。なお、実施の形態１と同一又は相当部分には同一符号を付して説明を省略する。
【００６５】
実施の形態１１は、実施の形態１に、ネスト構造表示範囲指示部１９を付加したものである。このネスト構造表示範囲指示部１９は、テキスト／ネスト構造表示合成部１３に接続される。
【００６６】
そして、ネスト構造表示範囲指示部１９は、操作者の操作によりテキスト／ネスト構造表示合成部１３にネスト構造表示情報の表示合成の有効／無効範囲の指示を出す。これにより、指定されたネスト構造表示情報の範囲をモニタ６の画面に表示させるか否かが、切り替えられる。
【００６７】
以上で説明した実施の形態１１によれば、実施の形態１０と同様の効果を得ることができる。さらに、ネスト構造表示情報の範囲をモニタ６の画面に表示するか否かが切り替えられることで、より柔軟に表示内容の単純化や、表示時間、印刷時間の低減化がなされる。
【００６８】
なお、実施の形態１１では、ネスト構造表示範囲指示部１９は、テキスト／ネスト構造表示合成部１３に接続される場合で説明した。しかし、ネスト構造の表示に関わる部分のいずれに指示を出すようにしてもよい。
【００６９】
実施の形態１２．
図２０はこの発明の実施の形態１２におけるプログラム編集装置の画面の変化を示した図である。なお、実施の形態４と同一又は相当部分には同一符号を付して説明を省略する。
【００７０】
実施の形態１２は、実施の形態４と同様の画面表示である。そして、実施の形態１２におけるプログラム編集装置は、ネスト文字列の一つが選択されると、同じネストに含まれる他のネスト文字列が強調表示されるものである。
【００７１】
例えば、図２０で、ネスト中間文字列ｂ２をマウスやカーソルキーで選択した状態で、ネスト文字列強調を指示すると、同一ネストに含まれるネスト文字列が目立つように反転表示される。なお、強調表示は、色替え表示、ブリンク、別ウインド表示など、通常表示と区別しやすい表示方法であればよい。
【００７２】
以上で説明した実施の形態１２によれば、実施の形態４と同様の効果を得ることができる。さらに、同じネストに含まれる他のネスト文字列も強調表示されることにより、直感的に同一ネストの文字列を認識できる。
【００７３】
実施の形態１３．
図２１はこの発明の実施の形態１３におけるプログラム編集装置の画面を示した図である。なお、実施の形態４と同一又は相当部分には同一符号を付して説明を省略する。
【００７４】
実施の形態１３は、実施の形態４と同様の画面表示である。そして、実施の形態１３におけるプログラム編集装置は、指定された文字列を、選択されたネスト文字列の一つから同じネストに含まれる他のネスト文字列へジャンプさせるものである。より具体的には、図２１に示される。
【００７５】
図２１では、プログラムテキスト上のあるネスト文字列をマウスやカーソルキーなどで選択している状態は、ネスト文字列の右側部に表示される矢印で示される。そして、下にジャンプするように指示すると同一ネストの次のネスト文字列へ、上にジャンプするように指示すると同一ネストの前のネスト文字列へジャンプするようになっている。なお、ネストジャンプでは、ネスト開始文字列(図２１の例ではネスト開始文字列ｂより上や、ネスト終了文字列(図２１の例では、ネスト終了文字列ｂより下にはジャンプしないようになっている。
【００７６】
以上で説明した実施の形態１３によれば、実施の形態４と同様の効果を得ることができる。さらに、同一ネストの文字列へジャンプすることで、プログラムの編集作業の効率化が図れる。
【００７７】
実施の形態１４．
図２２はこの発明の実施の形態１４におけるプログラム編集装置の画面を示した図である。なお、実施の形態４と同一又は相当部分には同一符号を付して説明を省略する。
【００７８】
実施の形態１４は、実施の形態４と同様の画面表示である。実施の形態１４においては、あるネスト文字列を選択することで、当該文字列と同一ネストの開始文字列及び終了文字列が認識される。そして、画面のスクロールは、認識された同一ネストの開始文字列及び終了文字列の範囲に限定される。即ち、プログラムテキスト上のあるネスト文字列をマウスやカーソルキーなどで選択している状態で、ネストスクロール機能を有効にして画面をスクロールさせると同一ネストの開始文字列から終了文字列の範囲を超えないスクロールを行うことができるようになっている。
【００７９】
以上で説明した実施の形態１４によれば、実施の形態４と同様の効果を得ることができる。さらに、同一ネストの開始文字列から終了文字列の範囲を超えないスクロールを行うことで、選択したネストに注目した内容を確認できる。
【００８０】
実施の形態１５．
図２３はこの発明の実施の形態１５におけるプログラム編集装置の画面を示した図である。なお、実施の形態４と同一又は相当部分には同一符号を付して説明を省略する。
【００８１】
実施の形態１５は、実施の形態４と同様の画面表示である。画面の上下にネストレベルを表示するエリアを設け、そのエリアに画面上下端でネストレベルを表示するものである。より具体的には、図２３に示される。
【００８２】
図２３において、ネスト構造表示情報生成部１１は、同一ネストに含まれるネスト文字列の左側部に表示される横線を縦線で連結してネスト構造表示情報を生成する。そして、画面の上下部で、文字列のネストレベルを示す識別子が、縦線に対応付けられて表示される。なお、図２３においては、識別子は数字である。
【００８３】
以上で説明した実施の形態１５によれば、実施の形態４と同様の効果を得ることができる。さらに、あるネストレベルが１画面や印刷時の１ページに収まらない場合に、画面又はページの境界部（図２３では画面の上下端）にネストレベルの識別子を表示又は印刷できる。従って、画面又はページを跨ったネストに対する視認性が向上される。
【図面の簡単な説明】
【００８４】
【図１】この発明の実施の形態１におけるプログラム編集装置のブロック図である。
【図２】この発明の実施の形態１におけるプログラム編集装置に用いられるプログラムのネストの例を示した図である。
【図３】この発明の実施の形態１におけるプログラム編集装置の画面を示した図である。
【図４】この発明の実施の形態１におけるプログラム編集装置の画面の一部であるプログラムテキスト表示部を示した図である。
【図５】この発明の実施の形態１におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図６】この発明の実施の形態２におけるプログラム編集装置の画面を示した図である。
【図７】この発明の実施の形態２におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図８】この発明の実施の形態３におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図９】この発明の実施の形態４におけるプログラム編集装置の画面を示した図である。
【図１０】この発明の実施の形態４におけるプログラム編集装置の画面の一部であるプログラムテキスト表示部を示した図である。
【図１１】この発明の実施の形態４におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図１２】この発明の実施の形態５におけるプログラム編集装置の画面を示した図である。
【図１３】この発明の実施の形態５におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図１４】この発明の実施の形態６におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図１５】この発明の実施の形態７におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図１６】この発明の実施の形態８におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図１７】この発明の実施の形態９におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図１８】この発明の実施の形態１０におけるプログラム編集装置のブロック図である。
【図１９】この発明の実施の形態１１におけるプログラム編集装置のブロック図である。
【図２０】この発明の実施の形態１２におけるプログラム編集装置の画面の変化を示した図である。
【図２１】この発明の実施の形態１３におけるプログラム編集装置の画面を示した図である。
【図２２】この発明の実施の形態１４におけるプログラム編集装置の画面を示した図である。
【図２３】この発明の実施の形態１５におけるプログラム編集装置の画面を示した図である。
【符号の説明】
【００８５】
１  キーボード
２  記憶装置
３  テキスト入力部
４  テキスト情報保持部
５  テキスト表示情報生成部
６  モニタ
７  プリンタ
８  ネスト文字列判定部
９  ネスト文字列設定部
１０  ネストレベル判定部
１１  ネスト構造表示情報生成部
１２  ネスト構造表示設定部
１３  テキスト／ネスト構造表示合成部
１４  テキスト表示部
１５  ネスト構造表示部
１５ａ  横線
１５ｂ  縦線
１６  テキスト表示部
１７  ネスト構造表示部
１８  ネスト構造表示指示部
１９  ネスト構造表示範囲指示部
２０  矢印
【図１】
0005542300.tif 000002
【図２】
0005542300.tif 000003
【図３】
0005542300.tif 000004
【図４】
0005542300.tif 000005
【図５】
0005542300.tif 000006
【図６】
0005542300.tif 000007
【図７】
0005542300.tif 000008
【図８】
0005542300.tif 000009
【図９】
0005542300.tif 000010
【図１０】
0005542300.tif 000011
【図１１】
0005542300.tif 000012
【図１２】
0005542300.tif 000013
【図１３】
0005542300.tif 000014
【図１４】
0005542300.tif 000015
【図１５】
0005542300.tif 000016
【図１６】
0005542300.tif 000017
【図１７】
0005542300.tif 000018
【図１８】
0005542300.tif 000019
【図１９】
0005542300.tif 000020
【図２０】
0005542300.tif 000021
【図２１】
0005542300.tif 000022
【図２２】
0005542300.tif 000023
【図２３】
0005542300.tif 000024