説明

プログラム編集装置

【課題】煩雑な操作を要することなく、ネスト構造の把握が容易にできるプログラム編集装置を提供する。
【解決手段】プログラムテキストを生成するテキスト表示情報生成部と、前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報を生成するネスト構造表示情報生成部と、前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報を前記プログラムテキストとともに印刷したり画面に表示したりさせるテキスト/ネスト構造表示合成部と、を備え、ネスト文字列が選択されると、選択されたネスト文字列と同一ネストに含まれる他のネスト文字列が強調表示される。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、テキストベースのプログラムを編集するプログラム編集装置に関するものである。
【背景技術】
【0002】
まず、プログラム言語の例について説明する。例えば、国際標準規格であるIEC61131−3に規定されるコントローラ用プログラム言語が規定されている。より具体的には、LD(ラダー・ダイアグラム)、FBD(ファンクション・ブロック・ダイアグラム)、SFC(シーケンシャル・ファンクション・チャート)、ST(ストラクチャード・テキスト)、IL(インストラクション・リスト)の5種類が規定されている。
【0003】
これらのプログラム言語のうち、LD、FBD、SFCはグラフィカル言語と言われ、各プログラム用の部品が画面上に配置される。そして、各部品間がグラフィカルに接続されることでプログラムされていくものである。一方、ST、ILは、テキストベース(非グラフィカル)言語と言われ、画面上に文字列が並べられてプログラムされていくものである。
【0004】
また、コントローラ用プログラム言語以外でも、C、ASM(アセンブリ言語)、BASIC(Beginner's All purpose Symbolic Instruction Code)、PL/M(Programming Language for Microcomputer)、FORTLAN(FORmula TRANslation)等、多種多様なテキストベースプログラム言語が存在する。
【0005】
そして、一般に、プログラムには、サブルーチンや関数など処理内容を記述したプログラムブロックや、条件分岐、無条件分岐、繰り返しなどのフロー制御と呼ばれる分岐処理が含まれる。そして、プログラム実行時には、必要に応じてプログラムブロックや分岐が選択されて処理が進むことになる。
【0006】
これらのプログラムブロックやフロー制御は、グラフィカル言語ではそれぞれのシンボルによって表され、テキストベース言語ではそれぞれの文字列によって表される。以降、これらのプログラムブロックやフロー制御のことをネスト、ネストの階層のことをネストレベル、ネストの種類を示す文字列のことをネスト文字列と表す。
【0007】
グラフィカル言語では、各部品の形状そのものと各部品間の接続関係がグラフィカルに表示/印刷される。このため、プログラムのネスト構造が比較的分かりやすい。
【0008】
一方、テキストベース言語でプログラムの構造を把握するためには、ユーザ変数、コメントや、各言語毎に決まっている予約語を、各文字の並びで一々識別していく必要がある。テキストベース言語において、ネスト構造を決定するのはこの予約語に属する文字列(ネスト文字列)である。つまり、ネスト構造を正しく把握するためには、プログラム全体を構成する文字列の中から、このネスト文字列を正しく抽出する必要がある。しかし、単純に、左詰めでプログラムテキストを表示すると、ネスト構造を正しく抽出することが難しい。即ち、プログラムの視認性が余りに悪い。
【0009】
そこで、テキストベースのプログラムを編集する際には、ネスト階層レベルを表示するために、字下げを用いることが多い。この字下げは、あくまでも表示のためだけに行われる。即ち、字下げは、プログラムの実行に影響しない。このため、字下げ量とネストの深さの関係が統一されていなくてもプログラムをコンパイルする際にはエラーにならない。
【0010】
従って、字下げ作業がプログラム入力者に委ねられた場合には、入力者毎に字下げ量が異なることがある。また、同じ入力者でも、入力時の気分で字下げ量を変えることもある。さらに、当然のことながら、入力時の勘違いにより、字下げ量を間違うこともある。従って、テキストベースのプログラムにおいては、ネスト構造の表示が曖昧になりやすい。即ち、プログラムを読む際に、ネスト構造の認識を間違ってしまうことが多かった。
【0011】
そこで、マイクロソフト社のVisual Studio(登録商標)などのある種のプログラム編集機能では、字下げを自動で行うものもある。しかし、プログラムを読む際に、ネストレベルを確認するためには、字下げ量を把握する必要がある。ここで、字下げ部は、空白で構成されている。従って、画面で表示されている場合は、カーソルキーを利用して数えることができる。しかし、印刷された場合は、空白文字の数を数えることが困難となる。更に、ネストの開始から終了までの表示距離が離れると、ネスト構造の把握が困難である。またプログラム中に字下げという、プログラムロジックとは関係ない空白部が必要となる。従って、ネストレベルが深くなるにつれ、肝心のロジック部分が次第に右方へ追いやられてしまうという問題もある。さらに、プログラムの新規作成途中や改造途中に、ネスト構造が未完成の部分において、プログラム入力者が希望しない字下げが自動的に行われ、視認性が低下するという問題もあった。
【0012】
そこで、上記問題点を解決するため、図式表現上でプログラムのデータ構造を表示するプログラム編集装置において、図式表現上でデータ種別が選択(入力)されたことに対応して、選択された項目(集団項目、基本項目、独立項目など)に対応して、当該選択された項目に対する制御レベル図を表示すると共に併せてこの制御レベル図のレベル記号中に選択された項目をもとに生成したレベル番号を設定して表示するように構成したことを特徴とするデータ構造を表示するものが提案されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0013】
【特許文献1】特開平5−233251号公報
【発明の概要】
【発明が解決しようとする課題】
【0014】
しかし、特許文献1記載のものは、プログラムの入力に加え、ネスト構造(データ構造)を入力しなければならなかった。これにより、プログラム入力者は、煩雑な入力作業を強いられるという問題があった。
【0015】
この発明は、上述のような課題を解決するためになされたもので、その目的は、煩雑な操作を要することなく、ネスト構造の把握が容易にできるプログラム編集装置を提供することである。
【課題を解決するための手段】
【0016】
この発明に係るプログラム編集装置は、テキストベースプログラムを編集するプログラム編集装置であって、プログラムテキストを生成するテキスト表示情報生成部と、前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報を生成するネスト構造表示情報生成部と、前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報を前記プログラムテキストとともに印刷したり画面に表示したりさせるテキスト/ネスト構造表示合成部と、を備え、ネスト文字列が選択されると、選択されたネスト文字列と同一ネストに含まれる他のネスト文字列が強調表示されるものである。
【0017】
この発明に係るプログラム編集装置は、テキストベースプログラムを編集するプログラム編集装置であって、プログラムテキストを生成するテキスト表示情報生成部と、前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報を生成するネスト構造表示情報生成部と、前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報を前記プログラムテキストとともに印刷したり画面に表示したりさせるテキスト/ネスト構造表示合成部と、を備え、ネスト文字列を選択してジャンプ方向を指示すると、選択されたネスト文字列と同一ネストに含まれる他のネスト文字列へジャンプさせるものである。
【0018】
この発明に係るプログラム編集装置は、テキストベースプログラムを編集するプログラム編集装置であって、プログラムテキストを生成するテキスト表示情報生成部と、前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報を生成するネスト構造表示情報生成部と、前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報を前記プログラムテキストとともに印刷したり画面に表示したりさせるテキスト/ネスト構造表示合成部と、を備え、ネスト文字列が選択されると、選択されたネスト文字列と同一ネストの開始文字列及び終了文字列が認識され、画面のスクロールの範囲は、最も上にスクロールした時でも、認識された同一ネストの開始文字列が前記画面に表示されている状態となり、最も下にスクロールした時でも、認識された同一ネストの最終文字列が前記画面に表示されている状態になるように、限定されるものである。
【発明の効果】
【0019】
この発明によれば、煩雑な操作を要することなく、ネスト構造の把握が容易にできる。
【図面の簡単な説明】
【0020】
【図1】この発明の実施の形態1におけるプログラム編集装置のブロック図である。
【図2】この発明の実施の形態1におけるプログラム編集装置に用いられるプログラムのネストの例を示した図である。
【図3】この発明の実施の形態1におけるプログラム編集装置の画面を示した図である。
【図4】この発明の実施の形態1におけるプログラム編集装置の画面の一部であるプログラムテキスト表示部を示した図である。
【図5】この発明の実施の形態1におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図6】この発明の実施の形態2におけるプログラム編集装置の画面を示した図である。
【図7】この発明の実施の形態2におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図8】この発明の実施の形態3におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図9】この発明の実施の形態4におけるプログラム編集装置の画面を示した図である。
【図10】この発明の実施の形態4におけるプログラム編集装置の画面の一部であるプログラムテキスト表示部を示した図である。
【図11】この発明の実施の形態4におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図12】この発明の実施の形態5におけるプログラム編集装置の画面を示した図である。
【図13】この発明の実施の形態5におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図14】この発明の実施の形態6におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図15】この発明の実施の形態7におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図16】この発明の実施の形態8におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図17】この発明の実施の形態9におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【図18】この発明の実施の形態10におけるプログラム編集装置のブロック図である。
【図19】この発明の実施の形態11におけるプログラム編集装置のブロック図である。
【図20】この発明の実施の形態12におけるプログラム編集装置の画面の変化を示した図である。
【図21】この発明の実施の形態13におけるプログラム編集装置の画面を示した図である。
【図22】この発明の実施の形態14におけるプログラム編集装置の画面を示した図である。
【図23】この発明の実施の形態15におけるプログラム編集装置の画面を示した図である。
【発明を実施するための形態】
【0021】
実施の形態1.
図1はこの発明の実施の形態1におけるプログラム編集装置のブロック図である。図2はこの発明の実施の形態1におけるプログラム編集装置に用いられるプログラムのネストの例を示した図である。図3はこの発明の実施の形態1におけるプログラム編集装置の画面を示した図である。図4はこの発明の実施の形態1におけるプログラム編集装置の画面の一部であるプログラムテキスト表示部を示した図である。図5はこの発明の実施の形態1におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。
【0022】
図1において、1はキーボードである。2は記憶装置である。そして、キーボード1及び記憶装置2は、テキスト入力部3に接続される。このテキスト入力部3は、キーボード1又は記憶装置2からプログラムテキストが入力されるものである。そして、テキスト入力部3は、テキスト情報保持部4に接続される。このテキスト情報保持部4は、テキスト入力部3に入力されたプログラムテキストを保持するものである。
【0023】
そして、テキスト情報保持部4は、テキスト表示情報生成部5に接続される。このテキスト表示情報生成部5は、テキスト中のタブや改行などの制御文字を処理するものである。そして、このテキスト表示情報生成部5は、モニタ6及びプリンタ7に接続される。このモニタ6は、テキスト表示情報生成部5で生成されたプログラムテキストを画面に表示するものである。一方、プリンタ7は、モニタ6の画面に表示された内容を印刷するものである。そして、編集されたプログラムテキストは、テキスト情報保持部4からテキスト入力部3を経由して記憶装置2に保存される。
【0024】
さらに、この発明におけるテキスト情報保持部4は、ネスト文字列判定部8にも接続される。このネスト文字列判定部8は、ネスト文字列設定部9に接続される。このネスト文字列設定部9は、プログラムテキストのネスト文字列情報が記憶されるものである。なお、ネストとは、プログラムブロックやフロー制御のことをいう。このネストは、プログラム言語に依存する。例えば、マイクロソフト社のVBA(Visual Basic for Application)というテキストベース言語では、図2のようなネストの種類がある。このネストの種類を示す文字列をネスト文字列という。そして、ネストの階層のことをネストレベルという。
【0025】
ネスト文字列判定部8は、ネスト文字列設定部9のネスト文字列情報に基づいて、テキスト情報保持部4から入力されるプログラムテキストからネスト文字列を抽出する。また、ネスト文字列判定部8は、ネストレベル判定部10に接続される。このネストレベル判定部10は、ネスト文字列判定部8により判定されたネスト文字列のネストレベルを判定するものである。
【0026】
そして、ネストレベル判定部10は、ネスト構造表示情報生成部11に接続される。このネスト構造表示情報生成部11は、ネスト構造表示設定部12に接続される。このネスト構造表示設定部12は、ネスト構造の表現パターンが記憶されるものである。そして、ネスト構造表示情報生成部11は、ネスト構造表示設定部12の表現パターンの情報に基づいて、ネストレベル判定部10から入力されるネストレベルの情報を生成する。このネスト構造表示情報生成部11は、テキスト/ネスト構造表示合成部13に接続される。このテキスト/ネスト構造表示合成部13は、テキスト表示情報生成部5の出力側で、モニタ6及びプリンタ7の間に接続されるものである。
【0027】
そして、このテキスト/ネスト構造表示合成部13は、テキスト表示情報生成部5により生成されたプログラムテキストをモニタ6の画面に表示させる場合に、ネスト文字列判定部8により抽出されたネスト文字列とネスト構造表示情報生成部11により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示をプログラムテキストとは独立した領域でモニタ6の画面に合成表示させるものである。
【0028】
次に、図3乃至図5を用いて、モニタ6の画面表示をより詳細に説明する。図3において、14はモニタ6の画面のテキスト表示部である。このテキスト表示部14には、プログラムテキストが表示される。このテキスト表示部14のみを示したものが図4である。図4に示すように、プログラムテキストは、左端を揃えて表示される。図3において、15はモニタ6の画面のネスト構造表示部である。このネスト構造表示部15のみを示したものが図5である。このネスト構造表示部15は、テキスト表示部14の左側部に設けられる。そして、ネスト構造表示部15には、ネスト構造表示情報生成部11により生成されたネスト構造表示情報が表示される。
【0029】
実施の形態1においては、ネスト構造表示情報は、グラフィック型である。より具体的には、同じネストの文字列の左側部には、横線15aが表示される。そして、これらの横線15aの左端が縦線15bにより連結される。これにより、ネスト構造が表現される。また、より下位のネスト構造表示情報の縦線は、より上位のネスト構造表示情報の縦線よりも右側に表示される。これにより、ネスト構造の階層関係が示される。
【0030】
以上で説明した実施の形態1においては、煩雑な作業を要することなく、ネスト構造が容易に把握される。従って、プログラム作成及び解読時の効率が向上される。さらに、字下げを要しない。従って、ネストレベルの識別のために、画面上のスペースを要するということがない。加えて、元々のプログラムの実体であるプログラムテキストとネスト構造表示部15は、互いに独立して管理される。従って、ネスト構造表示部15に表示されたネスト構造表示情報の内容に基づいて、プログラムテキスト中の字下げを適切に行うことができる。なお、プリンタ7により印刷されたプログラムテキストにおいても、解読時の効率が向上されるのはいうまでもない。
【0031】
実施の形態2.
図6はこの発明の実施の形態2におけるプログラム編集装置の画面を示した図である。図7はこの発明の実施の形態2におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態1と同一又は相当部分には同一符号を付して説明を省略する。
【0032】
実施の形態1におけるネスト構造表示情報は、グラフィック型であった。一方、実施の形態2におけるネスト構造表示情報は、テキスト型である。より具体的には、図7に示される。
【0033】
即ち、最上位のネストレベルは、ネスト構造表示部15の左側部で数字の1で表示される。そして、ネストレベルが下位になるにつれ、数字の12、123のように表示される。さらに、ネストの先頭及び終了は、数字の後にマイナスが表示される。そして、ネストの中間は、数字の後にプラスが表示される。
【0034】
以上で説明した実施の形態2によれば、実施の形態1と同様の効果を得ることができる。さらに、数字により、より直感的にネスト構造の階層関係が理解される。
【0035】
実施の形態3.
図8はこの発明の実施の形態3におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態1と同一又は相当部分には同一符号を付して説明を省略する。
【0036】
実施の形態1におけるネスト構造表示情報は、グラフィック型であった。一方、実施の形態3におけるネスト構造表示情報は、グラフィック型とテキスト型の混在型である。より具体的には、図8に示される。
【0037】
即ち、グラフィック型の部分は、実施の形態1と同様である。そして、グラフィック型ネスト構造表示情報の左側に実施の形態2と同様に数字が表示される。但し、スペースを考慮して、ネストレベルが下位になるにつれて数字の1、2、3・・・と表示される。
【0038】
以上で説明した実施の形態3によれば、実施の形態1及び2と同様の効果を得ることができる。さらに、グラフィック及び数字により、より直感的にネスト構造の階層関係が理解される。
【0039】
実施の形態4.
図9はこの発明の実施の形態4におけるプログラム編集装置の画面を示した図である。図10はこの発明の実施の形態4におけるプログラム編集装置の画面の一部であるプログラムテキスト表示部を示した図である。図11はこの発明の実施の形態4におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態1と同一又は相当部分には同一符号を付して説明を省略する。
【0040】
実施の形態1乃至3におけるテキスト表示部14においては、プログラムテキストは、左端を揃えて表示されていた。即ち、字下げが無い場合であった。一方、実施の形態4におけるテキスト表示部16では、各ネストレベル毎に半角四文字の字下げが行われている。
【0041】
また、実施の形態1乃至3においては、テキスト表示部14とネスト構造表示部15が画面上で重なることはなかった。一方、実施の形態4においては、テキスト表示部16の左側部とネスト構造表示部17の右側部が重なっている。これにより、字下げが行われたネスト文字列に対しても適切なネスト構造が表示される。
【0042】
より具体的には、ネスト構造表示情報は図11に示される。即ち、実施の形態4におけるネスト構造表示情報は、実施の形態1と同様、グラフィック型である。そして、ネスト文字列の字下げ量に追従して右側に移動した状態で表示される。
【0043】
以上で説明した実施の形態4によれば、実施の形態1と同様の効果を得ることができる。さらに、字下げが行われることにより、より直感的にネスト構造の階層関係が理解される。
【0044】
実施の形態5.
図12はこの発明の実施の形態5におけるプログラム編集装置の画面を示した図である。図13はこの発明の実施の形態5におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態4と同一又は相当部分には同一符号を付して説明を省略する。
【0045】
実施の形態4におけるネスト構造表示情報は、グラフィック型であった。一方、実施の形態5は、実施の形態2と同様のテキスト型である。なお、ネストの先頭及び終了を示すマイナスや、ネストの中間を示すプラスは、ネスト文字列の字下げ量に応じて、右側に付加される。
【0046】
以上で説明した実施の形態5によれば、実施の形態2と同様の効果を得ることができる。さらに、字下げが行われることにより、より直感的にネスト構造の階層関係が理解される。
【0047】
実施の形態6.
図14はこの発明の実施の形態6におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態4と同一又は相当部分には同一符号を付して説明を省略する。
【0048】
実施の形態4におけるネスト構造表示情報は、グラフィック型であった。一方、実施の形態6におけるネスト構造表示情報は、グラフィック型とテキスト型の混在型である。より具体的には、図12に示される。
【0049】
即ち、グラフィック型の部分は、実施の形態4と同様である。そして、グラフィック型の左側部に実施の形態5と同様に数字が表示される。但し、スペースを考慮して、ネストレベルが下位になるにつれて数字の1、2、3・・・と表示される。さらに、ネストの先頭及び終了を示すマイナスや、ネストの中間を示すプラスは、ネスト文字列の字下げ量に応じて、右側に付加される。
【0050】
実施の形態1乃至実施の形態6は、ネスト構造表示情報の具体例である。従って、別のグラフィック表示方法や、別のテキストを使用した表示方法で、ネスト構造を表示しても構わない。
【0051】
実施の形態7.
図15はこの発明の実施の形態7におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態1と同一又は相当部分には同一符号を付して説明を省略する。
【0052】
実施の形態7は、ネスト構造表示情報生成部11が、異なるレベルのネストの表示属性を変えてネスト構造表示情報を生成する。図15では、隣接するネストが各レベル毎に線種を変えて区別される。しかし、当該区別は、太さや線色などで行ってもよい。
【0053】
以上で説明した実施の形態7によれば、実施の形態1と同様の効果を得ることができる。さらに、線種の違いにより、より直感的にネスト構造の階層関係が理解される。
【0054】
実施の形態8.
図16はこの発明の実施の形態8におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態7と同一又は相当部分には同一符号を付して説明を省略する。
【0055】
実施の形態7では、隣接するネストが各レベル毎に線種を変えて区別されていた。一方、実施の形態8では、隣接するネストが一つおきに線種を変えて区別されている。なおn種類の線種を用意し、n個のレベル毎に表示属性を循環して使用してもよい。
【0056】
以上で説明した実施の形態8によれば、実施の形態1と同様の効果を得ることができる。さらに、線種の違いを減少することにより、実施の形態7よりも簡素化なプログラム編集装置が実現される。
【0057】
実施の形態7及び実施の形態8は、ネスト構造表示情報が、グラフィック型の場合で説明した。しかし、ネスト構造表示情報が、テキスト型の場合でも、ネストレベルの区別は可能である。即ち、ネスト文字列の使用テキストのフォント、文字色、文字太さ、文字サイズ等を変更して、ネストレベルを区別すればよい。
【0058】
実施の形態9.
図17はこの発明の実施の形態9におけるプログラム編集装置の画面の一部であるネスト構造表示部を示した図である。なお、実施の形態7と同一又は相当部分には同一符号を付して説明を省略する。
【0059】
実施の形態7では、異なるレベルのネストの表示属性を変えてネスト構造表示情報が生成されるものであった。一方、実施の形態8では、同一レベルのネストが近接している場合に、同一レベルのネストの表示属性を変えてネスト構造表示情報が生成されるものである。
【0060】
以上で説明した実施の形態9によれば、実施の形態1と同様の効果を得ることができる。さらに、近接する同一レベルのネストを一種類のネストと勘違いすることがなくなる。
【0061】
なお、実施の形態9では、グラフィック型のネスト構造表示情報を線種により区別する場合で説明した。しかし、他にもグラフィック型のネスト構造表示情報の場合は、線の太さや線色により区別すればよい。また、テキスト型のネスト構造表示情報の場合は、使用テキスト、フォント、文字色、文字太さ、文字サイズなどにより区別すればよい。さらに、全ネストで表示属性が異なっても、一つおきに表示属性が異なっても、n個のネスト毎に表示属性が循環してもよい。即ち、近接する同一レベルのネスト間で表示属性が変わればよい。
【0062】
実施の形態10.
図18はこの発明の実施の形態10におけるプログラム編集装置のブロック図である。なお、実施の形態1と同一又は相当部分には同一符号を付して説明を省略する。
【0063】
実施の形態10は、実施の形態1に、ネスト構造表示指示部18を付加したものである。このネスト構造表示指示部18は、テキスト/ネスト構造表示合成部13に接続される。そして、ネスト構造表示指示部18は、操作者の操作によりテキスト/ネスト構造表示合成部13にネスト構造表示情報の表示合成の有効/無効の指示を出す。これにより、ネスト構造表示情報の全部又は一部をモニタ6の画面に表示させるか否かが、切り替えられる。
【0064】
以上で説明した実施の形態10によれば、実施の形態1と同様の効果を得ることができる。さらに、不要なネスト構造表示情報を非表示にすることで、表示内容の単純化や、表示時間、印刷時間の低減化がなされる。
【0065】
なお、実施の形態10では、ネスト構造表示指示部18は、テキスト/ネスト構造表示合成部13に接続される場合で説明した。しかし、ネスト構造の表示に関わる部分のいずれに指示を出すようにしてもよい。
【0066】
実施の形態11.
図19はこの発明の実施の形態11におけるプログラム編集装置のブロック図である。なお、実施の形態1と同一又は相当部分には同一符号を付して説明を省略する。
【0067】
実施の形態11は、実施の形態1に、ネスト構造表示範囲指示部19を付加したものである。このネスト構造表示範囲指示部19は、テキスト/ネスト構造表示合成部13に接続される。
【0068】
そして、ネスト構造表示範囲指示部19は、操作者の操作によりテキスト/ネスト構造表示合成部13にネスト構造表示情報の表示合成の有効/無効範囲の指示を出す。これにより、指定されたネスト構造表示情報の範囲をモニタ6の画面に表示させるか否かが、切り替えられる。
【0069】
以上で説明した実施の形態11によれば、実施の形態10と同様の効果を得ることができる。さらに、ネスト構造表示情報の範囲をモニタ6の画面に表示するか否かが切り替えられることで、より柔軟に表示内容の単純化や、表示時間、印刷時間の低減化がなされる。
【0070】
なお、実施の形態11では、ネスト構造表示範囲指示部19は、テキスト/ネスト構造表示合成部13に接続される場合で説明した。しかし、ネスト構造の表示に関わる部分のいずれに指示を出すようにしてもよい。
【0071】
実施の形態12.
図20はこの発明の実施の形態12におけるプログラム編集装置の画面の変化を示した図である。なお、実施の形態4と同一又は相当部分には同一符号を付して説明を省略する。
【0072】
実施の形態12は、実施の形態4と同様の画面表示である。そして、実施の形態12におけるプログラム編集装置は、ネスト文字列の一つが選択されると、同じネストに含まれる他のネスト文字列が強調表示されるものである。
【0073】
例えば、図20で、ネスト中間文字列b2をマウスやカーソルキーで選択した状態で、ネスト文字列強調を指示すると、同一ネストに含まれるネスト文字列が目立つように反転表示される。なお、強調表示は、色替え表示、ブリンク、別ウインド表示など、通常表示と区別しやすい表示方法であればよい。
【0074】
以上で説明した実施の形態12によれば、実施の形態4と同様の効果を得ることができる。さらに、同じネストに含まれる他のネスト文字列も強調表示されることにより、直感的に同一ネストの文字列を認識できる。
【0075】
実施の形態13.
図21はこの発明の実施の形態13におけるプログラム編集装置の画面を示した図である。なお、実施の形態4と同一又は相当部分には同一符号を付して説明を省略する。
【0076】
実施の形態13は、実施の形態4と同様の画面表示である。そして、実施の形態13におけるプログラム編集装置は、指定された文字列を、選択されたネスト文字列の一つから同じネストに含まれる他のネスト文字列へジャンプさせるものである。より具体的には、図21に示される。
【0077】
図21では、プログラムテキスト上のあるネスト文字列をマウスやカーソルキーなどで選択している状態は、ネスト文字列の右側部に表示される矢印で示される。そして、下にジャンプするように指示すると同一ネストの次のネスト文字列へ、上にジャンプするように指示すると同一ネストの前のネスト文字列へジャンプするようになっている。なお、ネストジャンプでは、ネスト開始文字列(図21の例では、ネスト開始文字列b)より上や、ネスト終了文字列(図21の例では、ネスト終了文字列b)より下にはジャンプしないようになっている。
【0078】
以上で説明した実施の形態13によれば、実施の形態4と同様の効果を得ることができる。さらに、同一ネストの文字列へジャンプすることで、プログラムの編集作業の効率化が図れる。
【0079】
実施の形態14.
図22はこの発明の実施の形態14におけるプログラム編集装置の画面を示した図である。なお、実施の形態4と同一又は相当部分には同一符号を付して説明を省略する。
【0080】
実施の形態14は、実施の形態4と同様の画面表示である。実施の形態14においては、あるネスト文字列を選択することで、当該文字列と同一ネストの開始文字列及び終了文字列が認識される。そして、画面のスクロールは、認識された同一ネストの開始文字列及び終了文字列の範囲に限定される。即ち、プログラムテキスト上のあるネスト文字列をマウスやカーソルキーなどで選択している状態で、ネストスクロール機能を有効にして画面をスクロールさせると同一ネストの開始文字列から終了文字列の範囲を超えないスクロールを行うことができるようになっている。
【0081】
以上で説明した実施の形態14によれば、実施の形態4と同様の効果を得ることができる。さらに、同一ネストの開始文字列から終了文字列の範囲を超えないスクロールを行うことで、選択したネストに注目した内容を確認できる。
【0082】
実施の形態15.
図23はこの発明の実施の形態15におけるプログラム編集装置の画面を示した図である。なお、実施の形態4と同一又は相当部分には同一符号を付して説明を省略する。
【0083】
実施の形態15は、実施の形態4と同様の画面表示である。画面の上下にネストレベルを表示するエリアを設け、そのエリアに画面上下端でネストレベルを表示するものである。より具体的には、図23に示される。
【0084】
図23において、ネスト構造表示情報生成部11は、同一ネストに含まれるネスト文字列の左側部に表示される横線を縦線で連結してネスト構造表示情報を生成する。そして、画面の上下部で、文字列のネストレベルを示す識別子が、縦線に対応付けられて表示される。なお、図23においては、識別子は数字である。
【0085】
以上で説明した実施の形態15によれば、実施の形態4と同様の効果を得ることができる。さらに、あるネストレベルが1画面や印刷時の1ページに収まらない場合に、画面又はページの境界部(図23では画面の上下端)にネストレベルの識別子を表示又は印刷できる。従って、画面又はページを跨ったネストに対する視認性が向上される。
【符号の説明】
【0086】
1 キーボード、 2 記憶装置、 3 テキスト入力部、 4 テキスト情報保持部、 5 テキスト表示情報生成部、 6 モニタ、 7 プリンタ、 8 ネスト文字列判定部、 9 ネスト文字列設定部、 10 ネストレベル判定部、 11 ネスト構造表示情報生成部、 12 ネスト構造表示設定部、 13 テキスト/ネスト構造表示合成部、 14 テキスト表示部、 15 ネスト構造表示部、 15a 横線、 15b 縦線、 16 テキスト表示部、 17 ネスト構造表示部、 18 ネスト構造表示指示部、 19 ネスト構造表示範囲指示部、 20 矢印

【特許請求の範囲】
【請求項1】
テキストベースプログラムを編集するプログラム編集装置であって、
プログラムテキストを生成するテキスト表示情報生成部と、
前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、
前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報を生成するネスト構造表示情報生成部と、
前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報を前記プログラムテキストとともに印刷したり画面に表示したりさせるテキスト/ネスト構造表示合成部と、
を備え、
ネスト文字列が選択されると、選択されたネスト文字列と同一ネストに含まれる他のネスト文字列が強調表示されることを特徴とするプログラム編集装置。
【請求項2】
テキストベースプログラムを編集するプログラム編集装置であって、
プログラムテキストを生成するテキスト表示情報生成部と、
前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、
前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報を生成するネスト構造表示情報生成部と、
前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報を前記プログラムテキストとともに印刷したり画面に表示したりさせるテキスト/ネスト構造表示合成部と、
を備え、
ネスト文字列を選択してジャンプ方向を指示すると、選択されたネスト文字列と同一ネストに含まれる他のネスト文字列へジャンプさせることを特徴とするプログラム編集装置。
【請求項3】
テキストベースプログラムを編集するプログラム編集装置であって、
プログラムテキストを生成するテキスト表示情報生成部と、
前記プログラムテキストからネスト文字列を抽出するネスト文字列判定部と、
前記ネスト文字列判定部により抽出されたネスト文字列に応じたネスト構造表示情報を生成するネスト構造表示情報生成部と、
前記テキスト表示情報生成部により生成されたプログラムテキストを印刷したり画面に表示したりする場合に、前記ネスト文字列判定部により抽出されたネスト文字列と前記ネスト構造表示情報生成部により生成されたネスト構造表示情報を対応付け、対応付けたネスト構造表示情報を前記プログラムテキストとともに印刷したり画面に表示したりさせるテキスト/ネスト構造表示合成部と、
を備え、
ネスト文字列が選択されると、選択されたネスト文字列と同一ネストの開始文字列及び終了文字列が認識され、
画面のスクロールの範囲は、最も上にスクロールした時でも、認識された同一ネストの開始文字列が前記画面に表示されている状態となり、最も下にスクロールした時でも、認識された同一ネストの最終文字列が前記画面に表示されている状態になるように、限定されることを特徴とするプログラム編集装置。
【請求項4】
ネスト構造表示情報生成部は、異なるレベルのネストの表示属性を変えてネスト構造表示情報を生成することを特徴とする請求項1〜請求項3のいずれか一項に記載のプログラム編集装置。
【請求項5】
ネスト構造表示情報生成部は、隣接する同一レベルのネストの表示属性を変えてネスト構造表示情報を生成することを特徴とする請求項1〜請求項4のいずれか一項に記載のプログラム編集装置。
【請求項6】
指定されたネスト構造表示情報の一部を印刷したり画面に表示したりするか否かを切り替えることができることを特徴する請求項1〜請求項5のいずれか一項に記載のプログラム編集装置。
【請求項7】
ネスト構造表示情報生成部は、同一ネストに含まれるネスト文字列の側部に表示される横線を縦線で連結してネスト構造表示情報を生成するとともに、画面の上下部の少なくとも一方で、前記文字列のネストレベルの識別子を前記縦線に対応付けて表示することを特徴とする請求項1〜請求項6のいずれか一項に記載のプログラム編集装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate


【公開番号】特開2013−30196(P2013−30196A)
【公開日】平成25年2月7日(2013.2.7)
【国際特許分類】
【出願番号】特願2012−234551(P2012−234551)
【出願日】平成24年10月24日(2012.10.24)
【分割の表示】特願2007−254622(P2007−254622)の分割
【原出願日】平成19年9月28日(2007.9.28)
【出願人】(501137636)東芝三菱電機産業システム株式会社 (904)
【Fターム(参考)】