JPH0358225A - ファイル編集方式 - Google Patents

ファイル編集方式

Info

Publication number
JPH0358225A
JPH0358225A JP19545589A JP19545589A JPH0358225A JP H0358225 A JPH0358225 A JP H0358225A JP 19545589 A JP19545589 A JP 19545589A JP 19545589 A JP19545589 A JP 19545589A JP H0358225 A JPH0358225 A JP H0358225A
Authority
JP
Japan
Prior art keywords
file
specific
input
input file
instruction information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP19545589A
Other languages
English (en)
Inventor
Kenji Matsui
松井 研司
Hirohiko Ono
洋彦 小野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP19545589A priority Critical patent/JPH0358225A/ja
Publication of JPH0358225A publication Critical patent/JPH0358225A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はファイル編集方式に関する。
〔従来の技術〕
ここでは入力されたファイルを編集するプログラムをエ
ディタと呼ぶ.第6図に示すように、一般的なエディタ
2は、ファイル1をファイル入力部3で入力し、ファイ
ルの内容を画面出力部6によってコンソール9に出力す
る。またコンソール9からの操作指示入力を操作指示入
力部4から入力し、編集部5で編集処理を行う。また、
編集部5の編集結果に従って、ファイル出力部7で更新
結果を更新結果ファイル8に出力する。
このエディタの走行するホストマシン21は、第7図に
示すように、ユーザの入力する、エディタの操作指示コ
マンドを受け付け、編集結果を表示するコンソール22
、エディタの処理を行う演算装置23、およびファイル
を格納する外部記憶装置24をもっている。
エディタはファイルを論理的に管理する。言語処理プロ
グラム用のンース・ファイルを編集するエディタでは、
ファイルを行単位に管理している。
行の句切りとしては、特定の終了文字(例えばラインフ
ィート゛文字)までを行とする方式や、ファイル中で各
行の長さを管理する方式などがある。
また、言語処理プログラム用のソース・ファイルでは文
法により、言語処理プログラムの指示情報が表される。
従来のエディタでは、入力ファイルに記述された指示情
報に関係なく、起動されると入力ファイルを読み込み、
操作指示入力に応じ全内容をコンソールに表示する。
また、従来のエディタを改良し、入力ファイルに記述さ
れた指示情報に従って、入力ファイルの特定部分のみを
コンソ゛−ルに表示するエディタもあるが、この場合前
記特定部分を規定する情報はあらかじめエディタに組み
込まれており、入力ファイルに記述される指示情報をエ
ディタ使用者が規定することはできなかった。
〔発明が解決しようとする課題〕
課題点の説明にあたり、ファイルとして言語処理プログ
ラム用のソース・ファイルを例にして説明する。言語処
理プログラム用のソース・ファイルを編集するエディタ
では、ファイルを行単位に管理するものとする。また、
指示情報は言語処理プログラムの文法により表されるこ
ととする。
言語処理プログラムでは、プログラム開発時にディバグ
情報を埋め込んだり、複数用途のプログラムの管理の一
本化のために、条件コンパイルという機能をもつものが
多い。これは、あらかじめ言語処理プログラムで規定さ
れた文法を表す指示子に従ってファイルの特定の行のみ
を入力する機能である。例えば、C言語処理プログラム
では、#:ifdef, #endifなどの指示子に
より、ファイル中の特定の行を判別し、特定の行のみを
入力する。また、アセンブラ言語処理プログラムでは、
SET,IF,ENDIPなどの指示子により、ファイ
ル中の特定の行を判別し、特定の行のみを入力する。
従来のエディタでは、ファイル中にこうした指示子があ
った場合にもこの指示子を認識しないため、エディタは
言語処理プログラムが読み込みを行わない行に対しても
ホストマシンのコンソールに対しファイルの内容を表示
する。このため、指示子が使われている場合、言語処理
プログラムが読み込む箇所を判別した上でファイル中の
編集したい箇所を見つけるのに時間がかかったり、言語
処理プログラムが読み込まない箇所を誤って編集したり
して、開発効率が低下するという問題点があった。
また、従来のエディタを改良し、入力ファイルに記述さ
れた指示情報に従って、入力ファイルの特定部分のみを
コンソールに表示するエディタもあるが、この場合、特
定部分を規定する情報はあらかじめエディタに組込まれ
ていたため、次に述べるような問題点があった。例えば
、言語Aで記述された入力ファイル中の指示情報のみエ
ディタに組み込まれている場合、言語Aで記述された入
力ファイルでは、入力ファイルに記述された指示情報に
従って入力ファイルの特定部分のみをコンソールに表示
することが可能である。しかし、言語Aとは、指示情報
のことなる言語Bで記述された入力ファイルでは、入力
ファイルに記述された指示情報をエディタが認識できな
いため、エディタが起動されると入力ファイルを読み込
み、操作指示入力に応じ全内容をコンソールに表示して
しまうという問題点があった。
本発明の目的は、入力ファイル中の特定の内容を指示情
報を指示情報であると規定するこどができ、入力ファイ
ルの特定部分のみをコンソールに表示させることができ
るファイル編集方式を提供することにある。
〔課題を解決するための手段〕
本発明の構或は、ファイルを外部記憶装置から入力する
入力手段、コンソールからの操作指示情報を入力するキ
ー入力手段、前記操作指示情報をもとにファイルを編集
する手段、この編集結果をコンソールに出力する出力手
段および前記編集結果によって更新されたファイルを外
部記憶装置に出力するファイル出力手段を有するファイ
ル編集方式において、入力ファイルの特定の内容を指示
情報であると規定する処理部と、入力ファイルに記述さ
れた前記指示情報に従って前記ファイルの特定部分を読
込む処理部と、前記特定部分の読込み内容を前記コンソ
ールに表示する処理部と、前記特定部分の読込み部の更
新結果と読込みを行っていない部分を結合して更新ファ
イルを前記外部記憶装置に出力する処理部とを設け、前
記入力ファイル中の特定の内容を指示情報であると規定
することにより、前記入力ファイルの特定部分のみを前
記コンソールに表示できるようにしたことを特徴とする
〔実施例〕
次に図面を参照して本実施例を説明する。
本実施例は、入力ファイルとしてC言語処理プログラム
用のソース・ファイルを用い、ファイル編集を行うプロ
グラムとしてファイルを行単位に管理するエディタを用
い、また指示情報はC言語処理プログラムの文法により
表されることとする。
C言語では、#define指示子のオペランドに名標
を記述することにより名標を定義する。#define
指示子とオペランドは空白で区切る。また、特定の行群
の範囲付けを#:irdef指示子と#endif指示
子で指定する。これらの指示子の文法を第1表に示す。
第  1  表 (注)△は1個以上の空白を示す. # i r d e f指示子のオペランドとして名標
を記述し、この名標を定義されていない場合または値O
が定義されている場合、これ以降の行を#:endif
指示子読み込むまで無視する。C言語処理ブpグラム用
のファイルの例を第2表に、このファイルのうちC言語
プログラムが処理対象とする部分を第3表に示す。
第   2   表 第 3 表 以下の説明では本発明の要点を鮮明にするため、#if
def指示子はネスティングしないものと仮定する。
第1図は本発明の一実施例の構成を示すブロック図であ
る。編集部5には、入力ファイルの特定の内容を指示情
報であると規定する指示情報規定部13と、入力ファイ
ルの持つ文法に従って入力ファイル内の特定行を読み込
む特定部分読み込み部10と、前記特定行を表示する特
定部分表示処理部1lと、非読み込み部と更新部分を結
合する更新結果ファイル作或部12とをもっている。本
実施例では、エディタの使用時#define演算子を
追加したり、$derine演算子のオペランドをエデ
ィタ使用者が変更しないものとする。これはエディタ使
用上の制限事項とする。
この追加や変更をエディタ使用者が行いたい場合、エデ
ィタ使用者は、#define演算子を追加したり、#
define演算子のオペランドを変更後エディタの使
用を一旦終了させ、エディタを再起動させれば、追加や
変更は可能である。
次に、本実施例の指示情報規定部の処理を、第2図のフ
ローチャートで、指示情報規定ファイルの文法を第4表
で、入力ファイルに記述される指示情報の構文解析方法
を第5表で説明する。
第 5 表 入力ファイルの指示情報を認識するための指示情報規定
ファイルの文法は、第4表のように入力ファイルの特定
部分を識別するための名標を規定するDEFINE規定
行の文法、入力ファイルの特定部分の開始を規定するS
TART規定行の文法、入力ファイルの特定部分の終了
を規定するEND規定行の文法をもつこととする。
また、入力ファイルの指示情報の構文解析方法は、第5
表に示すように3種類用意する。具体例として第1表の
文法で示されるC言語の文法の場合、指示情報規定ファ
イルは第6表のように記述される。
第   6   表 この指示情報規定ファイルを読み込む指示情報規定部の
処理を、第2図のフローチャートで説明する。ここでは
、指示情報規定ファイルはDEFIME規定行、STA
RT規定行、END規定行の順序で記述されるものとす
る。まず、ステップ101で指示情報規定ファイルをオ
ーブンし、次にステップ102で1行読込む。この行を
DEFINE規定行とみなし、入力ファイルの特定部分
識別のため名標を規定する、入力ファイルの指示情報の
規定文字列(指示情報規定ファイル中で=以降,までの
文字列)をDEFINE文字列格納領域に格納する(ス
テップ103)。次にDEFINE規定行の数字に従っ
て、第5表の入力ファイルの指示情報の構文解析方法に
対応した゛処理をDEF’INE文字列解析方法として
設定し(ステップ104)、次に1行読込む(1 0 
5)。この行をSTART規定行として、入力ファイル
の特定部分を開始する入力ファイルの指示情報の規定文
字列をSTART文字列格納領域に格納する(1 0 
6)。次に、ステップ107でSTART規定行の数字
に従って、第5表の対応した処理をSTART文字列解
析方法として設定し、次に1行読込む(1 0 8).
この行をEND規定行として、入力ファイルの特定部分
を終了する入力ファイルの指示情報の規定文字列をEN
D文字列格納領域に格納する(1 0 9)。次に、E
ND規定行の数字に従って、第5表の入力ファイルの指
示情報の構文解析方法に対応した処理をEND文字列解
析方法として設定し(1 1 0)、最後に指示情報規
定ファイルをクローズする(1 1 1)。
次に、特定部分読込み部の処理を第3図のフローチャー
トで説明する。ここでは入力ファイルを順方向にのみ読
込むものとし、入力ファイルをランダムに読込む場合に
は、入力ファイルの読込んだ位置に対応するようにワー
ク・ファイルを作成する処理を編集部5が行えばよい。
このランダムに読込んで入力ファイルの読込んだ位置に
対応するようにワーク・ファイルを作成する処理は、従
来のエディタで一般的である。
本実施例で従来に対し追加した特定部分読込み部の処理
として、まず、ステップ201で入力ファイル、更新ワ
ーク・ファイルおよび非更新ワーク・ファイルをオーブ
ンし、次にステップ202で1行読込む。入力ファイル
から行がなくなるまで以下の処理を繰り返す(20’3
)。読み込んだ行をDEFINE文字列解析方法に基づ
いて解析した結果、DEFINE指示行であるか比較す
る(204).次に、DEFINE指示行と一致した場
合は次に名標の値が0かの判定をする(2 0 5)。
値がOでない場合、DEF’INE指示行のオペランド
に記述された名標をエディタ内部の名標テーブルに登録
する(2 0 6)。次にステップ202 1行読込み
に戻る。
入力ファイルの最後まで読込み、名標テーブルへの登録
が終わったら、入力ファイルの先頭から再び読み込む準
備をする。(2 1 4)。次に、1行読み込み(2 
1 5).入力ファイルから行がなくなるまで以下の処
理を繰り返す(2 1 6)。
読込んだ行がSTART文字列解析方法に基づいて解析
した結果START指示行であるか否かの判定を行う(
2 0 8)。START指示行と一致した場合、これ
らの指示子のオペランドに記述された名標に関し、前記
名標テーブルを検索し、一致する名標があるか否かを調
べる(2 0 9)。
名標がある場合、その行以降をEND文字列解析方法に
基づいて解析した結果END指示行であるまで更新ワー
ク・ファイルに行の内容を1行1レコードとして出力す
る(2 1 0)。一致する名標がない場合、更新ワー
ク・ファイルに非更新部管理ブロック番号を示す(この
場合1)レコードを出力する(2 1 1)。一方非更
新ワーク・ファイルにまず、非更新部管理開始ブロック
番号を示す(この場合1)レコードを出力する(2 1
 2)。次に名標があった行以降をEND文字列解析方
法に基づいて解析した結果END指示行であるまで非更
新ワーク・ファイルに行の内容を1行1レコードとして
出力し、非更新管理終了レコードを出力する(2 1 
3)。ステップ208にて読み込んだ行の先頭がS T
 A.R T指示行でない場合、更新ファイルに行の内
容を1レコードとして出力する(2 0 7)。次に、
ステップ215に戻り1行を読込む。
こうして第2表の入力ファイルに対して生戊される更新
ワーク・ファイル/非更新ワーク・ファイル内容を、第
7表(a) , (b)に示す。
第7表(a)更新ワーク・ファイル 第7表(b)非更新ワーク・ファイル 次に、特定部分表示処理部では更新ワーク・ファイルを
読込む。ここで非更新部管理レコードを読み込んだ場合
、ここから画面上表示されていない部分があることを示
す表示をコンソールに表示する。この処理を第4図のフ
ローチャートに示す. まず、ステップ301で更新ワーク・ファイルを1レコ
ード読込み、ステップ302で更新ワーク・ファイルか
らレコードがなくなるまで以下の処理を繰り返す。まず
、読込んだレコードが非更新部管理レコードであるかを
ステップ303で確認する。非更新部管理レコードであ
る場合、#ifdef部分を読飛ばしたことを示す記号
、例えば“**** SKIP #ifdef ***
*”をコンソールに表示する(3 0 4)。非更新部
管理レコードでない場合、読み込んだレコードの内容を
コンソールに表示する(3 0 5)。こうして第7表
の更新ワーク・ファイルに対してコンソールに表示され
る例を第8表に示す。
第   8   表 最後に、更新結果ファイル作或部12には、更新ワーク
・ファイルと非更新ワーク・ファイルの結合部をもって
いる。ここでは、更新ファイルの内容を更新結果ファイ
ルに複写する。ここで更新ワーク・ファイル中の非更新
部管理レコードを読み込んだ場合、非更新ワーク・ファ
イルの対応するレコード番号の非更新部管理開始レコー
ドの直後以降、非更新部管理終了レフードの直前までの
内容を更新ファイルに追加する。次に再び、更新ファイ
ルの内容を更新結果ファイルに複写する。
この処理を第5図に示す。
まず、ステップ401で更新結果ファイルをオープンし
、更新ワーク・ファイルを1レコード読込む(4 D 
2)。更新ワーク・ファイルからレコードがなくなるま
で以下の処理を繰り返す(4 0 3)。まず、読込ん
だレコードが非更新部管理レコードで/ あるかを確認する(4 0 4)。非更新部管理レコー
ドである場合、更新番号に対応する非更新部管理開始レ
コードを非更新ワーク・ファイルからサーチし(4 0
 5)、非更新部管理終了レコードの直前まで非更新ワ
ーク・ファイルの内容を更新結果ファイルに出力する(
4 0 6)。ステップ404において非更新部管理レ
コートテナ(・場合、更新ワーク・ファイルの内容を更
新結果ファイノレに出力する(4 0 7)。
更新ワーク・ファイルがなくなり,たら、入力ファイル
、更新ワーク・ファイル,非更新ワーク・ファイルおよ
び更新結果ファイルをクローススる(4 0 8)。こ
のようにしてコンソールのには入力ファイルの特定部分
のみ表示させながら入力ファイルを更新することができ
る。
次に、本発明の第2の実施例について説明する。
本実施例も第1の実施例と処理の概要は同じであり、相
違は、対象入力ファイルがC言語処理フ゜ログラムでは
なく、アセンブラ言語処理プログラムであるということ
である。
アセンプラ言語処理プログラムでは、SET指示子のオ
ペランドに名標な記述することにより名標を定義する。
−SET指示子とオペランド&ま空白で区切る。また、
特定の行群の範囲付けをIF指示子とENDIF指示子
で指定する。これらの指示子の文法は、第9表に示すよ
うになる。
第  9  表 この場合、指示情報規定ファイルは第10表のように記
述される。この指示情報規定ファイノレをエディタが入
力することにより、エディタは入力ファイル中のSET
指示子、IP指示子およびENDIF指示子を見つける
ことができる。そして、SET指示子の名標の値が0で
ある部分のIF指示子からENDIF指示子までをコン
ンーノレtこ表示させないことができる。
第 1 0 表 〔発明の効果〕 以上説明したように、本発明を用いたエディタでは、入
力ファイル中の特定の内容を指示情報であると規定した
上で、入力ファイルの特定部分のみをコンソールに表示
させることにより、入力ファイル中で着目したくない部
分をコンソーノレに表示しなくなり、次の効果がある。
(1)着目したくない部分を誤って編集すること力1な
くなる。
(2)編集したい箇所を探し易くなる。
(3)着目したい部分のみ表示されるため、入力ファイ
ルの内容を理解しやすくなる また、本発明を用いたエディタは入力ファイノレ中の特
定の内容を指示情報であると規定できるため、入力ファ
イルの種類をエディタ利用者が増やすことができ、入力
ファイルの編集効率を上げることができるという効果が
ある。
【図面の簡単な説明】
第1図は本発明の一実施例を説明するシステムのブロッ
ク図、第2図,第3図,第4図および第5図は第1図の
指示情報規定部13,特定部分読込み部10,特定部分
表示処理部11および更新結果ファイル作或部12の各
処理を説明するフローチャート、第6図は従来のファイ
ル編集プログラムを説明するシステムのブ■ック図、第
7図は第6図の走行するホストマシンのブロック図であ
る。 l・・・・・・入力ファイル、2・・・・・・ファイル
編集プログラム、3・・・・・・ファイル入力部、4・
・・・・・キー入力部、5・・・・・・編集部、6・・
・・・・画面出力部、7・・・・・・ファイル出力部、
8・・・・・・更新結果ファイル、9・・・・・・コン
ソール、10・・・・・・特定部分読み込み部、11・
・・・・・特定部分表示処理部、12・・・・・・更新
結果ファイル作或部、13・・・・・・指示情報規定部
、■・・・・・・ホストマシン、22・・・・・・コン
ソール、3・・・・・・演算装置、24・・・・・・外
部記憶装置、Ol〜111,201〜213,301〜
305,01〜408・・・・・・処理ステップ。

Claims (1)

    【特許請求の範囲】
  1. ファイルを外部記憶装置から入力する入力手段、コンソ
    ールからの操作指示情報を入力するキー入力手段、前記
    操作指示情報をもとにファイルを編集する手段、この編
    集結果をコンソールに出力する出力手段および前記編集
    結果によって更新されたファイルを外部記憶装置に出力
    するファイル出力手段を有するファイル編集方式におい
    て、入力ファイルの特定の内容を指示情報であると規定
    する処理部と、入力ファイルに記述された前記指示情報
    に従って前記ファイルの特定部分を読込む処理部と、前
    記特定部分の読込み内容を前記コンソールに表示する処
    理部と、前記特定部分の読込み部の更新結果と読込みを
    行っていない部分を結合して更新ファイルを前記外部記
    憶装置に出力する処理部とを設け、前記入力ファイル中
    の特定の内容を指示情報であると規定することにより、
    前記入力ファイルの特定部分のみを前記コンソールに表
    示できるようにしたことを特徴とするファイル編集方式
JP19545589A 1989-07-27 1989-07-27 ファイル編集方式 Pending JPH0358225A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19545589A JPH0358225A (ja) 1989-07-27 1989-07-27 ファイル編集方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19545589A JPH0358225A (ja) 1989-07-27 1989-07-27 ファイル編集方式

Publications (1)

Publication Number Publication Date
JPH0358225A true JPH0358225A (ja) 1991-03-13

Family

ID=16341353

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19545589A Pending JPH0358225A (ja) 1989-07-27 1989-07-27 ファイル編集方式

Country Status (1)

Country Link
JP (1) JPH0358225A (ja)

Similar Documents

Publication Publication Date Title
US5926638A (en) Program debugging system for debugging a program having graphical user interface
JP2694122B2 (ja) ソフトウェア・アプリケーションの自動テスト方法
US7721253B2 (en) Software development support system
JPS6047606B2 (ja) プログラム入力装置
JP4826120B2 (ja) 業務仕様作成支援システム及び方法
JP2000207246A (ja) デバッグ支援装置及び方法並びにデバッグ支援用ソフトウェアを記録した記録媒体
JPH0358225A (ja) ファイル編集方式
CN121117356B (zh) 一种网页的快速生成方法及装置
JPS62186339A (ja) テキストエデイタにおけるコンパイルエラ−表示方式
JP2990701B2 (ja) ファイル編集方式
JPH11327887A (ja) 自動部品化機能付コンパイラシステムおよび記録媒体
JP2607976B2 (ja) デバック方式
JPH11154093A (ja) プログラムコンパイラ及びコンパイラ用プログラムを記録した記録媒体
JP2908184B2 (ja) テキストファイル編集方法及び装置
JPH08297569A (ja) ソースプログラム修正支援装置
JP2607975B2 (ja) デバック方式
JPH06324853A (ja) オブジェクト指向プログラミング言語を対象とした原始プログラム編集装置
JP3536670B2 (ja) マルチメディアデータの提示方法及びシステム及びマルチメディアデータの提示プログラムを格納した記憶媒体
JPH05108372A (ja) コンパイラ最適化処理内容の出力方式
JP2000339145A (ja) プログラム保守支援方法、装置及び記録媒体
JPH0713752A (ja) プログラムのリビジョン管理方法とその装置
JPH06309159A (ja) プログラム自動生成装置
JPH05181661A (ja) 利用者別汎用メニューシステム
JPH04190423A (ja) 機能別ポインタを用いた情報管理支援装置
KR20010011839A (ko) 자동화된 화면 컨트롤 생성 방법