Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPH0664447B2 - 文字処理装置 - Google Patents
[go: Go Back, main page]

JPH0664447B2 - 文字処理装置 - Google Patents

文字処理装置

Info

Publication number
JPH0664447B2
JPH0664447B2 JP58218729A JP21872983A JPH0664447B2 JP H0664447 B2 JPH0664447 B2 JP H0664447B2 JP 58218729 A JP58218729 A JP 58218729A JP 21872983 A JP21872983 A JP 21872983A JP H0664447 B2 JPH0664447 B2 JP H0664447B2
Authority
JP
Japan
Prior art keywords
cursor
character
code
display
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.)
Expired - Lifetime
Application number
JP58218729A
Other languages
English (en)
Other versions
JPS60111287A (ja
Inventor
耕司 福長
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP58218729A priority Critical patent/JPH0664447B2/ja
Publication of JPS60111287A publication Critical patent/JPS60111287A/ja
Priority to US07/394,317 priority patent/US4924409A/en
Publication of JPH0664447B2 publication Critical patent/JPH0664447B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Document Processing Apparatus (AREA)

Description

【発明の詳細な説明】 [技術分野] 本発明は、特に表示画面上で文字列の入力編集等の文字
処理作業が行える文字処理装置に関する。
[従来技術] 従来、この種の文字処理装置では、一般に文字列を表示
する表示画面の表示領域と1対1に対応した記憶領域を
有する表示文字列記憶用のバッファメモリを備えてお
り、表示画面上の任意の位置の文字をそのバッファメモ
リ内に記憶している。このように表示画面と1対1に対
応したバッファメモリを用いているので、バッファメモ
リには使用されない記憶領域部分が多数生ずることとな
り、また大きな記憶容量のバッファメモリを必要とする
という欠点があった。
そこで、バッファメモリの使用効率を向上させてバッフ
ァメモリの記憶容量が小さくても済むように、バッファ
メモリを固定長で分割せずに連続したままで使用する方
式が提案されている。この方式の場合では、入力した文
字列は連続した文字列としてバッファメモリ内に記憶さ
れるので、バッファメモリ内には使用されない部分が少
なくなり、バッファメモリの容量も小さくて済むことと
なる。
すなわち、後者の連続使用方式ではスペース部分を特殊
コードに置換えてバッファメモリの使用効率を上げるこ
とができるが、特定の表示機能においてはバッファメモ
リに存在しないスペース部分をも表示することを行う必
要がある。このため、前者の1対1対応のバッファメモ
リ方式では表示画面上のどの位置においても容易であっ
た新たな文字の入力編集処理が、後者の連続使用方式で
は容易に行うことができなくなった。このように、前者
の従来装置での固定長の欠点を除去するために、後者の
装置が提案されたのであるが、前者では容易にできる入
力編集処理作業が後者では容易に行えないという新たな
問題が生じた。
[目的] 本発明の目的は、上述の欠点を解決して、文字列を右よ
せした後、文字列を右よせした行の左側の文字が表示さ
れていない位置に文字を入力しうるようにした文字処理
装置を提供するものである。
[実施例] 以下、図面を参照して本発明を詳細に説明する。
第1図は本発明文字処理装置の構成の一例を示し、ここ
でCPUは中央演算処理装置としてのマイクロプロセッサ
であり、文字処理のための演算や論理判断等を行い、バ
スBUSを介してバスに接続された後述の各構成要素を制
御する。このバスBUSはアドレス信号を転送するアドレ
スバス、制御信号を転送するコントロールバス、および
各種データを転送するデータバスとを総称する。
ROMは制御メモリとして用いられるリードオンリメモリ
であり、後述の文字入力や画面表示処理および編集処理
等の各種処理についてのマイクロプロセッサCPUが行う
各種制御手順をあらかじめ記憶している。RAMは書込み
可能のランダムアクセスメモリであり、リードオンリメ
モリROMに記憶された制御手順を実行するときに使用さ
れ、各構成要素からの各種データの一時記憶およびマイ
クロプロセッサCPUの演算や論理判断におけるワークメ
モリとして用いる。
KBは入力手段としての文字入力用のキーボードであり、
このキーボードKB上には、後述の第2図に示すように、
マイクロプロセッサCPUに指令を与える各種キー群が配
置されている。KBCはキーボードコントローラであり、
キーボードKBからの入力信号に対するキーコード変換処
理を実行する。
DISKは作成・編集された文章の保存や呼出し等に用いる
ディスクメモリである。DBは文章の作成や編集用のバッ
ファメモリであり、キーボードKBから入力されたキーコ
ードを文字コード(キャラクタコード)として保存す
る。本例のバッファメモリDBは、後述の第3図に示すよ
うに、252文字数分の保存領域を有し、各保存領域はそ
れぞれDB[0]からDB[251]までの名前で取扱われ
る。
DCRは表示制御レジスタ群であり、後述の第4図および
第5図に示すように、カーソル制御レジスタと、バッフ
ァ位置表示情報レジスタ群と、カーソル位置表示情報レ
ジスタ群とフォーマット情報レジスタ群とを有する。
CRTは陰極線管、液晶、発光ダイオード等を用いた表示
装置であり、キーボードKBから入力された文字や、編集
処理により修正・変更された文章等のデータを表示し、
かつカーソルによる文字処理位置指定表示を行う。DFC
は表示制御手段として表示装置CRTを駆動制御するフォ
ーマット表示コントローラであり、カーソルによる表示
したい文字列の画面上への位置決め制御や、内部のキャ
ラクタジェネレータの参照によりドットパターンデータ
に変換して文字あるいは記号の表示を行う表示制御とを
行う。PRTはプリンタであり、画面上で作成や編集が行
われた文章を用紙上に印字する。
第2図は第1図のキーボードKBの配置構成例を示す。こ
こで、KB1は通常の文字や数字あるいは記号等を入力す
るのに用いる文字キー群(以下、一般キーと称する)で
あり、例えばJIS規格の鍵盤配列を有してアルファベッ
トキー、仮名キー、等から英数文字や仮名等を入力でき
る。なお、キャリッジリターン用キーC-Rはこのキー群K
B1に含まれるものとする。
また、KB2はカーソルの移動等の特殊処理の実行を指示
するのに用いる機能キー群(以下、特殊キーと称する)
であり、レフトマージンの設定を行うキーLMSET、ライ
トマージンの設定を行うキーRMSET、タブの設定と解除
を行うキーTAB-SET/CLEAR、カーソル位置のセンタリン
グの実行指令を与えるキーCENTER、カーソル位置のギャ
ザリング(右寄せ)の実行指令を与えるキーGATHER、文
字の挿入の指定を行う挿入キーINS、文字の削除の指定
を行う削除キーDEL、およびカーソルの移動を指示する
4つのカーソル移動キー“↑,↓,←,→”とを有す
る。“↑,↓,←,→”で示すカーソル移動キーは、そ
れぞれ上,下,左,右の方向に1文字づつカーソルを移
動するのに用いる。
本例では、上述のキー群KB1およびKB2の押下げにより文
章が作成され、作成された文章が文章作成編集用のバッ
ファンメモリDBにすでに存在するものとする。なお、機
能キー群KB2に属する上述の各キーの機能は一般的に周
知のものであるので、その詳細な説明は省略する。
第3図は第1図の文字記憶手段としてバッファメモリDB
の構成例を示す。このバッファメモリDBは文字保存用メ
モリとして252文字分の記憶領域を有し、各領域(エリ
ア)に1文字分の文字コードが格納でき、それぞれに
[0]〜[251]のアドレス番号を割当てられる。特
に、DB[0]は先頭位置を表し、DB[251]が最終位置
を表す連続したバッファメモリとなっている。
第4図は第1図の表示制御レジスタ群DCRの概略構成例
を示し、第5図はさらに詳細な構成例を示す。第4図に
示すように、表示制御レジスタ群DCRはカーソル制御レ
ジスタCCRと、表示用レジスタ群DSRとに大別できる。表
示カーソル位置記憶手段としてのカーソル制御レジスタ
CCRの値は、カーソルの画面上でのxおよびy座標を表
し、第5図に示すように、そのx座標は“0"〜“39"ま
での数値が格納されるxレジスタCR-Xで表され、そのy
座標は“0"〜“11"までの数値が格納されるyレジスタC
R-Yで表される。
表示用レジスタ群DSRは、第4図に示すように、バッフ
ァ位置カーソルレジスタDSR-POSIと、カーソル位置表示
情報レジスタ群DSR-INFと、フォーマット情報レジスタD
SR-FORMとからなる。メモリカーソル位置記憶手段とし
てのバッファ位置カーソルレジスタDSR-POSIは、上述の
レジスタCR-XおよびCR-Yで示される画面中のカーソル位
置がバッファメモリDB中のどの位置に対応しているのか
対応位置を、バッファメモリDBの各記憶領域に割当てた
アドレス番号により示す。
カーソル位置表示レジスタ群DSR-INFは、カーソルの実
際の画面上での位置とその位置に対するバッファメモリ
DB上でのずれ量を示し、第5図に示すように、カーソル
が特殊文字列にある場合、その文字列のいずれの位置に
あるかを示し、カーソルが特殊文字に対する位置を判断
する判断手段の情報を記憶するレジスタ群として画面上
でのカーソルの位置の状況を示すレジスタ群INF-CR〜IN
F-AWと、ずれ量記憶手段としてのバッファメモリDBに存
在しない位置でのカーソルの状況を示すレジスタINF-PO
SIおよびINF-CPOSIとからなる。レジスタINF-POSIはレ
ジスタDSR-POSIが示しているバッファメモリDBのカーソ
ル位置とのずれ量を示すことにより、バッファメモリDB
中に実際に存在しないカーソルの位置を表わし、INF-CP
OSIはセンタリングコードCNと左マージン間のずれ量を
示す。上述のレジスタ群INF-CR〜INF-TBの内容を次の第
1表に示す。なお、表中の数値欄は各レジスタのフラグ
値を示す。
また、フォーマット情報レジスタ群DSR-FORMは、画面表
示用のフォーマット情報がセットされるレジスタ群であ
り、第5図に示すように、レフトマージンの文字位置を
セットするレジスタFOM-LM、ライトマージンの文字位置
をセットするレジスタFOM-RM、インデントの文字位置を
セットするレジスタFOM-ID、指定されたタブ位置を保存
するレジスタFOM-TB[0]〜FOM-TB[n](但しnは正
の整数)、およびタブ位置間でタブ位置と前のスペース
以外の文字との間にある文字数を示すレジスタTB-LENと
からなる。本例では、レジスタFOM-LMを“0"とし、レジ
スタFOM-RMを“39"とし、レジスタFOM-IDを“0"として
取扱うこととする。タブ位置を示すレジスタFOM-TB
[0]〜FOM-TB[n]には、指定されたタブの数分だ
け、若いアドレスのタブ位置から順にセットする。
第6図は第1図の表示装置CRTの画面にキーボードKBか
ら入力した文章が表示された態様の一を示す。ここで、
FMLは表示装置CRTの画面上のフォーマットを示すフォー
マットラインであり、マージン位置とタブ位置とを表示
する。フォーマットFMLに表示された“L"はレフトマー
ジン位置を示し、“R"はライトマージン位置を示し、
“t"はタブ位置を示し、および“・”は文字の入力位置
を示す。本例ではレフトマージンは“0"、ライトマージ
ンは“39"、タブは“4",“9"および“14"の3個所の文
字位置(アドレス)にセットされているものとする。こ
のフォーマットラインFML以外のDL1〜DL12で示された12
行が文章表示用の表示領域となる。
カーソルCRは、 の印で画面上に表示される。このカーソルCRのx座標を
示すレジスタCR-Xの値はレフトマージン位置で“0"、ラ
イトマージン位置で“39"となる。また、カーソルCRの
y座標を示すレジスタCR-Yの値は、最初の行DL1で
“0"、最後の行DL12で“11"となる。このように、カー
ソルCRは(0,0)〜(39,11)の座標の範囲内でカーソル
移動キーにより移動させることができる。なお、CENTは
センタリング位置,CRETはキャリッジリターン位置、お
よびGATHはギャザリング位置を示す。
第7図は第6図で示した表示画面の内容を格納したバッ
ファメモリDBの格納状態の一例を示す。図示のように、
表示される文字列は連続してバッファメモリDB中に保存
されており、かつバッファメモリDB内には特殊コード が含まれている。
はセンタリングの開始文字を示す特殊コードであり、特
殊コード とで囲まれた間の文字列のレフトマージンとライトマー
ジンとの中央位置に表示させる。
はキャリッジリターンを示す特殊コードであり、このコ
ード 以降の文字列は次の行から表示される。
はタブを示す特殊コードであり、あらかじめセットされ
た後方のタブ位置まで画面上にはスペース文字(ブラン
ク)を表示する。ここで、タブで表示されるスペース文
字数は、現在表示されているカーソル位置から最も近い
値のタブ位置レジスタFOM-TB[n]が示すタブ位置まで
の文字数とする。
はギャザリングする文字列の先頭を示す特殊コードであ
り、特殊コード とで囲まれた範囲の文字列をライトマージンに一致する
ように画面上に表示する。このギャザリングとは、本例
では、コード とコード との間にはさまれている文字列をそのコード の1文字前の文字がライトマージの位置にセットされる
ように表示し、あるいは印字することをいうものとす
る。この第7図に示す内容のバッファメモリDBを表示装
置CRTに表示すると第6図または第8図のようになる。
第8図はカーソルCRがキャリッジリターン位置より右に
あるときの表示装置CRTの表示画面の状態の一例を示
し、第9図はこのときの表示制御レジスタ群DCRの各レ
ジスタの内容を示す。第10図は第8図のカーソルCRの位
置で文字を入力したときの表示画面の状態を示し、第11
図はこのときのバッファメモリDBの状態を示す。すなわ
ち、バッファメモリDBにおいてこのときの入力文字“x"
のコードは特殊コード との間に8個のスペースコードとともに挿入され、その
後方の情報は順次後方に移動する(第7図参照)。
第12図はカーソルCRがタブ位置にあるときの表示画面の
状態の一例を示し、第13図はこのときの表示制御レジス
タ群DCRの各レジスタの内容を示す。第14図は第12図の
カーソルCRの位置で文字を入力したときの表示画面の状
態を示し、第15図および第16図はこのときのバッファメ
モリDBの状態を示す。すなわち、バッファメモリDBにお
いて、このときの入力文字“X"のコードはスペースコー
ドとともに特殊コード と置きかえられるか、コード との間に挿入してもよい(第7図参照)。
第17図はカーソルCRがセンタリングの左位置または右位
置にあるときの表示画面の状態の一例を示し、第18図は
カーソルがセンタリングの左位置にあるときの表示制御
レジスタ群DCRの各レジスタの内容を示す。第19図はセ
ンタリングの左位置で文字入力したときの表示画面の状
態を示し、第20図はこのときのバッファメモリDBの状態
を示す。すなわち、バッファメモリDBにおいて、このと
きの入力文字“A"のコードは14個のスペースコードとと
もに特殊コードCNと置き換えられる(第7図参照)。
第21図はセンタリングの右位置で文字入力したときの表
示画面の状態を示し、第22図はこの処理をする前の表示
制御レジスタ群DCRの各レジスタの内容を示し、第23図
は第21図に対応するバッファメモリDBの状態を示す。す
なわち、バッファメモリDBにおいて、このときの入力文
字“X"のコードは5個のスペースコードとともに特殊コ
ード の前に挿入され、かつ特殊コード が15個のスペースコードに置き換えられる(第7図参
照)。
第24図はカーソルCRがギャザリングの左位置にあるとき
の表示画面の状態の一例を示し、第25図はこのときの表
示制御レジスタ群DCRの各レジスタの内容を示す。第26
図はギャザリングの左位置で文字入力したときの表示画
面の状態を示し、第27図はこのときのバッファメモリDB
の状態を示す。すなわち、バッファメモリDBにおいて、
このときの入力文字“1"のコードは24個のスペースコー
ドとともに特殊コード と置き換えられる(第7図参照)。
次に、第28図〜第38図のフローチャートを参照して、第
1図に示す本発明装置の動作例を説明する。
第28図はキーボードKBの1つのキーが押下げられたとき
の処理手順の全体を示し、この処理手順を繰返し実行す
ることにより文章の作成・編集等の文字処理が行われ
る。
まず、ステップS1において、キーボードKBからのキーの
入力を待機し、何らかのキーが押下られたと判断する
と、次のステップS2においてキーの取込み処理を実行す
る。この取込み処理において、押下られたキーに対応す
るキーコードを取出し、そのキーコードが一般キーKB1
のものであるか否かをステップS3において判別する。
キーコードが一般キーKB1のキーコードであるときに
は、後述の第29図〜第36図で詳述するステップS4のキー
セット処理を実行する。このキーセット処理において、
表示画面上にセットされているカーソル位置の状況に従
ってバッファメモリDB中にキーコードをセットする。
一方、キーコードが一般キーKB1以外の特殊キーKB2のキ
ーコードであるときには、ステップS3からS5に進んでそ
のキーコードに対応した特殊処理を実行する。例えば、
入力した特殊キーがセンタリング実行キーCENTERやギャ
ザリング実行キーGATHERであるときには、バッファメモ
リDB中にセンタリングスタートコード とセンタリングエンドを示すコード のセット、あるいはギャザリングスタートコード とギャザリングエンドを示すコード のセットを行う。ただし、本例は、これらの特殊コード 等がすでにバッファメモリDB中に設定された後の編集処
理に関するものであるので、これらの特殊コードのバッ
ファメモリDBへのセット手順についての詳細な説明は省
略する。
以上のキーセット処理や特殊処理によりバッファメモリ
DBの内容の変更等が行われると、次のステップS6の画面
表示処理によりバッファメモリDBの内容を表示装置CRT
に表示し、ステップS7におけるカーソル情報チェック処
理を行う。これにより、1つのキーの押下に対する処理
を終了して再びステップS1に戻り、次のキーの入力を待
機する。
次に、第29図〜第36図のフローチャートを参照して、上
述のステップS4におけるキーセット処理を詳細に説明す
る。
第29図はキーセット処理の全体を示す。この処理では、
レジスタ群DSR-INFの情報に基づいてカーソルの位置を
判断する判断手段は以下の様にして判断する。まずステ
ップS10において、キーセット処理指定時のカーソルCR
の表示画面上での位置が、後述の特殊位置にあるか否か
を判別する。カーソルCRの表示画面上での位置は、カー
ソル位置表示情報レジスタ群(以下、カーソル位置情報
テーブルと称する)DSR-INFの各レジスタに設定された
フラグ値(数値)を参照することにより判断する。この
カーソル位置情報テーブルは、上述のステップS7におけ
るカーソル移動処理を行う画面制御処理により更新さ
れ、カーソルの移動処理に応じて常に正しいカーソル位
置情報が設定されるので、カーソルの画面上での位置が
正しく判別できる。
カーソルが特殊位置にあると判断したときにはステップ
S11の特殊位置でのキーセット処理を実行して第28図の
メインルーチンに戻る。カーソルがそれ以外の一般位置
にある場合には、ステップS12における一般位置でのキ
ーセット処理を実行して第28図のメインルーチンに戻
る。この一般位置でのキーセット処理では、バッファ位
置カーソルレジスタ(以下、バッファカーソルと称す
る)DSR-POSIが示す現在のバッファメモリDB中のカーソ
ル位置に入力文字の文字コードをセットする。
第30図は上述のステップS11における特殊位置でのキー
セット処理の全体を示す。ここで、特殊位置とは、キャ
リッジリターンの右位置、センタリング行中の位置、タ
ブ位置、およびギャザリング行中の位置をいうものであ
る。この特殊位置の情報は、カーソル位置情報テーブル
DSR-INF中の対応するキャリッジ位置情報レジスタINF-C
R、センタリング位置情報レジスタINF-CN、タブ位置情
報レジスタINF-TB、およびギャザリング位置情報レジス
タINF-GHにそれぞれセットされているので、これらの各
レジスタのフラグ値(前述の第1表参照)を順次参照す
ることにより、現在のカーソル位置の位置情報を知るこ
とができる。また、特殊位置へのカーソルは2ケ所以上
に同時にセットされることはないので、次に処理すべき
キーセット処理は一意に決まる。
そのため、まずステップS20において、カーソルがキャ
リッジリターンの右位置か否かをキャリッジ位置情報レ
ジスタINF-CRのフラグにより判断し、肯定判定のときに
はステップS21のキャリッジリターン右位置でのキーセ
ット処理を実行して、メインルーチンに戻る。ステップ
S20が否定判定のときには、ステップS22においてカーソ
ルがセンタリング行中にあるか否かをセンタリング位置
情報レジスタINF-CNのフラグにより判断し、肯定判定の
ときにはステップS23のセンタリングでのキーセット処
理を実行して、メインルーチンに戻る。
ステップS22が否定判定のときには、ステップS24におい
て、カーソルがタブ位置にあるか否かをタブ位置情報レ
ジスタINF-TBのフラグにより判断し、肯定判定のときに
はステップS25のタブ位置でのキーセット処理を実行し
て、メインルーチンに戻る。ステップS24が否定判定の
ときには、ステップS26において、カーソルがギャザリ
ング行中にあるか否かをギャザリング位置情報レジスタ
INF-GHのフラグにより判断し、肯定判定のときにはステ
ップS27のギャザリングでのキーセット処理を実行し
て、メインルーチンに戻る。このように、カーソルの位
置を順次判断して行き、それぞれの位置の状況に対応し
たキーセット処理を実行する。
第31図は上述のステップS21におけるキャリッジリター
ン右位置キーセット処理の詳細な手順を示す。カーソル
CRがキャリッジリターンコード位置を越えて右側に移動
した場合の表示画面の例を第8図に示したが、このとき
のカーソルCRは2ライン目の9カラムに存在する。ま
た、キャリッジリターン1はカラム目にあるので、第9
図に示すように、カーソル位置情報テーブルDSR-INFに
はキャリッジリターンの情報INF-CRに“1"がセットさ
れ、バッファカーソルDSR-POSIにはカーソルの位置“9"
がセットされる。さらに、ずれ量を示す情報INF-POSIに
は、キャリッジリターンからカーソルの位置までのずれ
の大きさを示す。“8"がセットされる。第10図には、こ
の状態におけるカーソル位置に文字“X"を入力したとき
の画面を示したが、このときのバッファメモリDB内の状
態は第31図のキーセット処理により第11図のように変
る。すなわち、文字“X"を入力する前のバッファメモリ
DBの状態を示す第7図と比較すると、アドレスDB[8]
のキャリッジリターンコード とアドレスDB[9]のキャリッジリターンコード との間に、8個のスペースコードと文字“X"のコードを
挿入させたことが判る。このように第11図に示したよう
なバッファメモリDBの状態になれば、キャリッジリター
ン後でも自由に文字を入力したのと同様に表示画面上に
表示させることができる。
そこで、本キーセット処理手順では、まず、ステップS3
0においてバッファカーソルDSR-POSIで指示されたバッ
ファメモリDBの位置以降の文字列を1文字分後方へ移動
し、次のステップS31においてキーボードKBから入力し
た文字のコードをバッファカーソルDSR-POSIで指示され
たバッファンメモリDBの位置にセットし、続いてステッ
プS32においてずれ量を示す情報INF-POSIにセットされ
た回数だけ上述のステップS30の処理とスペースコード
のセットを繰り返し行った後、メインルーチンに戻る。
以上の手順を、第7図〜第11図を参照して、さらに具体
的に説明すると、バッファメモリDBのアドレスDB[9]
以降のデータをステップS30により、1文字分ずつ後方
へずらし、ステップS31によりアドレスDB[9]に入力
文字“X"のコードをセットする。さらに、ステップS32
に進み、ステップS30と同様にしてアドレスDB[9]以
降のデータを1文字ずつ後方へずらし、スペースコード
をアドレスDB[9]にセットする。このバッファデータ
の移動とスペースコードのセットをずれ情報INF-POSIに
セットされたずれ量の“8"だけ繰り返すと、バッファメ
モリDBは第11図に示すようになる。以上の処理の後に、
新しいキャリッジリターンの位置DB[18]にカーソルを
移動すればよい。このように、本キーセット処理によれ
ば、キャリッジリターン後のバッファメモリDBにデータ
等が存在しない位置にでも、あたかも存在しているかの
ように入力文字のセットが行える。
第32図は第30図のステップS25におけるタブ位置キーセ
ット処理の詳細な手順を示す。ここで、タブ位置とは、
第12図におけるフォーマットラインFMLの“t"で表示し
た位置をいい、バッファメモリDB内のタブコード によってtのタブ位置までをスペースとして画面に表示
する。このように、内部コード はtの位置までの間をうめる画面表示上のスペースコー
ドとして取扱っているが、バッファメモリDB内では第7
図に示すように、1つのアドレスDB[10]の位置にタブ
コード が1個格納されるだけである。
いま、第12図に示すような画面位置にカーソルCRが存在
しているとすれば、このときのバッファカーソルDSR-PO
SIはタブコード の位置を指す。また、このときのカーソルCRの位置はタ
ブコード からのずれを有し、そのずれ量がずれ情報INF-POSIにセ
ットされる。すなわち、第13図に示すように、このとき
のバッファカーソルDSR-POSIにはタブコード の位置DB[10]を指す“10"がセットされ、情報INF-TB
にはタブ位置であることを示す“1"がセットされ、また
ずれ情報INF-POSIにはカーソルCRの位置がバッファカー
ソルDSR-POSIのタブコード の位置から“1"だけずれていることを示す“1"がセット
されている。また、情報TB-LENには該当のタブコード の次の文字コードと続くタブコード の1つ前の文字コード間に存在するスペースコードの数
をセットして、タブ位置間のスペースの量を示す。第12
図の場合には4スペース存在するので、情報TB-LENには
“4"がセットされている。
このような第12図の状態でのカーソル位置に文字“X"を
入力すると、そのカーソル位置に“X"の文字が表示さ
れ、カーソルCRが1つ右へ移動した第14図の状態にな
る。このときのバッファメモリDBの状態は、第15図また
は第16図に示すように変わる。第15図の場合では、タブ
コード を全てスペースコードに変更した後、カーソル位置に入
力文字コードをセットする。一方、第16図の場合では、
文字入力位置までのタブコード が有するスペース文字数分だけをスペースコードとし、
入力文字をタブコード の前にセットする。第32図のタブ位置キーセット処理で
は、第16図のような処理を行う処理手順を示す。
第32図のタブ位置キーセット処理に入るときは、カーソ
ル位置情報テーブルDSR-INF中の情報INF-TBにカーソル
がタブ位置に存在することを示す“1"がセットされてい
るときである。そこで、まず、ステップS40において、
情報TB-LENにセットされている値から“−1"を減じた値
と、タブコード からのカーソル位置のずれ量を示す情報INF-POSIの値と
が一致するか否かを判別する。一致するときは、タブコ
ード の位置に入力文字がセットされる場合であり、一致しな
いときにはタブコード 以外のタブ位置をカーソルが指している場合である。
ステップS40において、一致したと肯定したときには、
ステップS41に進んで、バッファカーソルDSR-POSIで指
しているタブコード をキーボードKBから入力した入力文字と置き換える。次
に、ステップS44に移行して、タブコード からのずれ量を示す情報INF-POSIにセットされている回
数だけ、バッファカーソルDSR-POSIで指しているバッフ
ァメモリDB位置以降の文字列を1文字づつ後方へ移動す
る処理と、スペースコードをバッファカーソルDSR-POSI
の指すバッファメモリDBの位置へセットする処理とを繰
り返して行った後に、メインルーチンに戻る。
一方、ステップS40において、一致しないとの否定判定
したときには、ステップS42に進んで、バッファカーソ
ルDSR-POSIが指すバッファメモリDBの位置以降の文字列
を1文字分づつ後へ移動し、次のステップS43におい
て、キーボードKBから入力した入力文字をバッファカー
ソルDSR-POSIの指すバッファメモリDBの位置にセットす
る。次に、ステップS44に進んで、上述と同様の処理を
行い、メインルーチンに戻る。以上のキーセット処理に
より、タブ位置での文字入力を通常の文字位置と同様に
行える。
第33図〜第35図は、第30図のステップS23におけるセン
タリングキーセット処理手順を示す。第17図のCR(1)
はセンタリング行の左位置にあるカーソルの位置を示
し、CR(2)はセンタリング行の右位置にあるカーソル
の位置を示す。また、第18図はカーソルがセンタリング
行の左位置CR(1)にあるときのレジスタ群の内容を示
すが、このときのセンタリング位置情報INF-CNにはカー
ソルがセンタリング行の左位置にある旨の“2"がセット
されている(第1表参照)。また、バッファ内部のカー
ソル位置を示すバッファカーソルDSR-POSIはセンタリン
グコード の位置“0"を指している。しかし、表示上のカーソル位
置は第17図に示すようにセンタリングコードを示す
“”の位置にあるのではなく、表示上のカーソル位置
からセンタリングの開始を示す“”の位置までにある
5文字分のスペースが実際のカーソルの表示位置と内部
カーソル位置とのずれ量の存在となるので、センタリン
グコードからカーソルまでの間のずれ量を示す“5"がず
れ量情報INF-POSIにセットされている。さらに、センタ
リングの先頭位置を示す情報INF-CPOSIには、レフトマ
ージンを示す“L"の表示位置からセンタリング位置
“”の先頭文字の前までの表示画面上のスペース量
“14"がセットされている。
このような第17図の状態でのカーソル位置CR(1)に文
字“A"を入力すると、第19図の画面状態になる。このと
きのバッファメモリDBの状態は、第34図のキーセット処
理により第20図に示すように変る。このように、すでに
センタリングされていた文字列“FREEBIE"の表示位置は
変らせないで、入力文字“A"をセンタリング文字列の左
位置にセットすることができる。
このセンタリングキーセット処理を第33図および第34図
のフローチャートを参照して説明する。下記の記憶制御
手段として第33図,第34図,第35図に示されるようにし
てメモリに入力文字を記憶する。第33図は第30図のステ
ップS23におけるセンタリングキーセット処理手順の全
体を示す。まず、ステップS50において、カーソルがセ
ンタリングの左位置にあるか否かを情報INF-CNの値で判
別し、肯定判定のときにはステップS51のセンタリング
左位置キーセット処理を実行し、否定判定のときにはス
テップS52のセンタリング右位置キーセット処理を実行
してメインルーチンに戻る。センタリング行中の左位置
にカーソルが位置するときは、情報INF-CNに“2"がセッ
トされているから、ステップS50の判別は容易にでき
る。
第34図は第33図のステップS51におけるセンタリング左
位置キーセット処理の詳細を示す。いま、レジスタの内
容が上述の第18図の状態であるとすると、まず、ステッ
プS60において、バッファカーソルDSR-POSIはセンタリ
ングコード の位置“0"を指しているので、この位置のセンタリング
コード をスペースコードに変換する。次に、ステップS61にお
いて、ずれ量情報INF-POSIにセットされている値“5"の
回数分だけ、バッファカーソルDSR-POSIが示す“0"以降
のバッファメモリDBにセットされている文字列を後方へ
1文字づつずらし、かつスペースコードをバッファカー
ソルDSR-POSIが指しているバッファメモリDBの位置にセ
ットする処理を繰り返す。
次に、ステップS62において、同様にバッファカーソルD
SR-POSIが示す位置以降の文字列を1文字分後へずらし
た後、キーボードKBから入力した入力文字のコード“A"
をバッファカーソルDSR-POSIの指した位置“0"にセット
する。さらに、ステップS63において、カーソル位置か
ら左マージン位置までの文字数を示すレジスタCR−Xの
値“8"の回数だけ、バッファカーソルDSR-POSIが指す以
降の文字列を1文字づつ後へずらし、かつスペースコー
ドをバッファカーソルDSR-POSIが指す位置にセットする
処理を繰り返し、メインルーチンに戻る。以上のキーセ
ット処理の実行により、バッファメモリDBは第20図のよ
うに変更され、第19図のように表示される。
次に、カーソルがセンタリグ行の右位置にあるときのキ
ーセット処理を説明する。第21図は第17図のセンタンリ
ング行の右位置でのカーソル位置CR(2)に文字“X"が
入力したときの表示状態を示すが、このときセンタリン
グされていた文字列“FREEBIE"の表示位置は変ることな
く、入力文字“X"がセンタリング右位置に入力され表示
されることを表わしている。このキーセット処理を実行
する前の各レジスタの内容を第22図に示したが、内部の
カーソル位置を示すバッファカーソルDSR-POSIには、セ
ンタリング行の終りのキャリッジリターンコード の位置を示す“8"がセットされており、またセンタリン
グ位置情報INF-CNにはカーソルがセンタリング行の右位
置にある旨の“3"がセットされている(第1表参照)。
また、表示上のカーソル位置のキャリッジリターンコー
からのずれ量“4"がずれ量情報INF-POSIにセットされ、
センタリングコード と左マージン間のずれ量“14"が情報INF-CPOSIにセット
されている。以上のカーソル位置情報を用いて、センタ
リング右位置キーセット処理を行う。第35図は第33図の
ステップS52におけるセンタリング右位置キーセット処
理の詳細を示す。いま、レジスタの内容が上述の第22図
の状態であるとすると、まず、ステップS70において、
内部カーソルの位置を示すバッファカーソルDSR-POSIは
センタリング行のキャリッジリターンコード の位置“8"を示しているので、このバッファカーソルDS
R-POSIが指している位置以降のバッファメモリDB内の文
字列を1文字分づつ後へずらした後、バッファカーソル
DSR-POSIの指している位置にキーボードKBから入力した
文字をセットする。次にステップS71に進み、キャリッ
ジリターンコードCRの文字分と表示上のカーソル位置と
キャリッジリターンコード の位置とのずれ量を示す情報INF-POSIの値“4"の回数分
とに基づき5文字分だけ動かすために、バッファカーソ
ルDSR-POSIの指す位置の文字を1文字ずつ後へずらし、
かつバッファカーソルDSR-POSIの指す位置にスペースコ
ードをセットする処理を繰り返す。
続いて、ステップS72において、バッファカーソルDSR-P
OSIの指している位置から前方に向ってセンタリングコ
ード がバッファメモリDB内のどこの位置にあるかを捜す処理
を実行し、捜し当てたセンタリングコード の位置“0"を新しいバッファカーソルDSR-POSIの値とし
てセットする。次にステップS73において、そのバッフ
ァカーソルDSR-POSIが指す新しい位置“0"で、センタリ
ングコードCNとずれ情報INF-CPOSIにセットされた回数
“14"との合計15だけ、バッファカーソルDSR-POSIが指
す位置にスペースコードをセットし、かつバッファカー
ソルDSR-POSIの指す以降の文字列を1文字づつ後へずら
す処理を繰り返した後、メインルーチンに戻る。このス
テップS73の処理によりコード はスペースに置き変る。
以上の手順により、第23図に示すように、バッファメモ
リDB内に文字“X"がセットされる。このように、センタ
リング行の右位置または右位置での文字入力をセンタリ
ングされた文字列の表示位置を換えることなしに行うこ
とができる。ただし、これらの入力処理が一旦行われた
以後は、センタリングコード がバッファメモリDB内に存在しなくなるので、同一行に
ついての上述と同様のキーセット処理が再び実行される
ことはない。
次に、ギャザリングの左位置での文字入力処理について
説明する。第24図はギャザリングの左位置にカーソルCR
があるときの画面の一例を示す。第25図はこのときの各
レジスタの内容を示すが、ギャザリングの左位置である
ことを示す“2"が情報INF-GHにセットされ(第1表参
照)、カーソルCRのギャザリングコード からのずれ量“6"が情報INF-POSIにセットされている。
第36図は第30図のステップS27におけるギャザリングキ
ーセット処理の詳細を示す。いま、レジスタの内容が上
述の第25図の状態であるとすると、まず、ステップS80
において、バッファカーソルDSR-POSIが指している位置
“185"のギャザリングコード をスペースコードに置変える。次に、ステップS81にお
いて、情報INF-POSIの“6"回数分だけ、バッファカーソ
ルDSR-POSIが指している以降の文字列を1文字づつ後へ
ずらして、かつバッファカーソルDSR-POSIの指している
位置にスペースコードをセットする処理を繰り返す。次
いで、ステップS82において、さらにもう1文字分バッ
ファカーソルDSR-POSIの指している以降の文字列を後へ
ずらし、バッファカーソルDSR-POSIの指している位置
に、キーボードKBから入力した文字“1"をセットする
(第26図参照)。
さらに、ステップS83に進み、レジスタCR-Xの“17"回数
分だけ、バッファカーソルDSR-POSIの指している以降の
文字列を後へずらし、かつバッファカーソルDSR-POSIの
指している位置にスペースコードをセットする処理を繰
り返えした後、メインルーチンに戻る。
以上のキーセット処理により、表示画面上の表示状態は
第26図のようになり、バッファメモリDBは第27図に示し
たようになる。このように、ギャザリングコード をスペースコードに置換るようにしているので、ギャザ
リング文字列の表示位置を変えることなくギャザリング
行での文字入力を行うことができる。
第37図は、第28図のステップS6で示した画面表示処理の
詳細を示す。第38図は、第28図のステップS7に示したカ
ーソル情報チェック処理の詳細を示す。このような画面
表示処理およびカーソル情報チェック処理は一般的な公
知技術を適用したものであり、本発明と直接関係がない
のでその詳細な説明は省略する。
なお、本例では、特殊コード行におけるキーセット処理
において、カーソルの画面位置と特殊コード行のバッフ
ァメモリ位置とのずれ量をスペースコードに変換してバ
ッファメモリ内にセットするようにしたが、このスペー
スコードの代りに複数個のスペースを意味する特殊コー
ドを用いることもできる。このような特殊コードを用い
た場合には、スペースコードを用いたときよりもバッフ
ァメモリにセットされる量が少なくてすむので、さらに
バッファメモリを有効に利用することができる利点があ
る。
[効果] 以上説明したように、本発明によれば、文字を記憶する
記憶手段の記憶容量を多くすることなく表示上は通常の
表示を行わせるようにした文字処理装置において、文字
列を右よせした後、その文字列が表示されている行の、
文字が表示されていない位置に新たに文字を入力しうる
ようにして操作性がよく、記憶容量が少なくて済む文字
処理装置を実現できる。
【図面の簡単な説明】
第1図は本発明文字処理装置の構成の一例を示すブロッ
ク図、 第2図は第1図のキーボードKBの詳細例を示す配置構成
図、 第3図は第1図のバッファメモリDBの一例を示す構成
図、 第4図は第1図の表示制御レジスタ群DCRの一例を示す
概略構成図、 第5図はその詳細を示す構成図、 第6図、第8図、第12図、第17図および第24図はそれぞ
れ文字入力前の第1図の表示装置CRTの表示画面の表示
態様の一例を示す平面図、 第7図はそれらの表示画面に対応する第1図のバッファ
メモリDBの内容を示す説明図、 第9図、第13図、第18図、第22図および第25図はそれぞ
れ上述の各表示画面に対応する第1図の表示レジスタ群
の内容を示す説明図、 第10図、第14図、第19図、第21図および第26図はそれぞ
れ文字入力後の第1図の表示装置CRTの表示画面の態様
の一例を示す説明図、 第11図、第15図、第16図、第20図、第23図および第27図
はそれぞれ文字入力後の第1図のバッファメモリDBの内
容を示す説明図、 第28図〜第38図は第1図の本発明装置の動作の一例を示
すフローチャートである。 CPU……マイクロプロセッサ、 ROM……リードオンリメモリ、 RAM……ランダムアクセスメモリ、 KBC……キーボードコントローラ、 KB……キーボード、 DISK……ディスクメモリ、 PRT……プリンタ、 DB……バッファメモリ、 DCR……表示制御レジスタ群、 DFC……フォーマット表示コントローラ、 CRT……表示装置、 KB1……一般キー、 KB2……特殊キー、 CCR……カーソル制御レジスタ、 DSR-POSI……バッファ位置カーソルレジスタ(バッファ
カーソル)、 DSR-INF……カーソル位置表示情報レジスタ群(テーブ
ル)、 DSR-FORM……フォーマット情報レジスタ群
フロントページの続き (56)参考文献 「日立日本語ワードプロセッサ2ウェイ キーボード形操作説明書初級編」第3版 (昭57−9−10),P.43 「日立日本語ワードプロセッサ2ウェイ キーボード形操作説明書増補編」第2版 (昭57−9−10),P.17

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】文字情報と右寄せ命令を入力する入力手段
    と、 前記入力手段から入力された前記文字情報と右寄せ命令
    情報を記憶する文字記憶手段と、 前記文字記憶手段の文字情報を表示手段上に表示させる
    表示制御手段と、 前記表示手段の画面上に表示されるカーソルの位置を記
    憶する表示カーソル位置記憶手段と、 前記カーソルが位置付けられている画面上の表示されて
    いる文字に対応する前記文字記憶手段上の記憶位置情報
    を記憶するメモリカーソル位置記憶手段と、 前記カーソルが画面上の前記右寄せ命令の対象となった
    文字情報の表示位置の左側に位置し、文字情報が表示さ
    れていない未表示の位置に位置付けられている場合、前
    記メモリカーソル位置記憶手段に記憶されている右寄せ
    命令の対象となった文字情報の記憶位置情報を基準に表
    されるずれ量を示す情報を記憶するずれ量記憶手段と、 前記カーソルが右寄せ命令の対象となった文字列が表示
    されている行の前記未表示の位置に位置付けられている
    場合、前記メモリカーソル位置記憶手段の前記記憶位置
    情報と前記ずれ量記憶手段のずれ量に基づいて、前記文
    字記憶手段に記憶されている文字を移動させて前記入力
    手段より入力された新たな文字情報を前記文字記憶手段
    に記憶させ、前記文字記憶手段において右寄せ命令を削
    除する文字記憶制御手段とを有する文字処理装置。
JP58218729A 1983-11-22 1983-11-22 文字処理装置 Expired - Lifetime JPH0664447B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP58218729A JPH0664447B2 (ja) 1983-11-22 1983-11-22 文字処理装置
US07/394,317 US4924409A (en) 1983-11-22 1989-08-11 Image processing apparatus wherein character string processing can be performed on a display screen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58218729A JPH0664447B2 (ja) 1983-11-22 1983-11-22 文字処理装置

Publications (2)

Publication Number Publication Date
JPS60111287A JPS60111287A (ja) 1985-06-17
JPH0664447B2 true JPH0664447B2 (ja) 1994-08-22

Family

ID=16724519

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58218729A Expired - Lifetime JPH0664447B2 (ja) 1983-11-22 1983-11-22 文字処理装置

Country Status (1)

Country Link
JP (1) JPH0664447B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02183292A (ja) * 1989-01-10 1990-07-17 Matsushita Electric Ind Co Ltd Crt表示用装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
「日立日本語ワードプロセッサ2ウェイキーボード形操作説明書初級編」第3版(昭57−9−10),P.43
「日立日本語ワードプロセッサ2ウェイキーボード形操作説明書増補編」第2版(昭57−9−10),P.17

Also Published As

Publication number Publication date
JPS60111287A (ja) 1985-06-17

Similar Documents

Publication Publication Date Title
US4862410A (en) Word processor permitting modification or addition of data in response to particular indentation of data
US4924409A (en) Image processing apparatus wherein character string processing can be performed on a display screen
JPH0664447B2 (ja) 文字処理装置
JPH0634160B2 (ja) 文字処理装置
JPH0560628B2 (ja)
JPH0685118B2 (ja) 文書処理装置
JP2751212B2 (ja) 文書作成装置
JPH0229853A (ja) 文書処理装置
JPS6336472A (ja) 文字処理装置
JPS6336470A (ja) 文字処理装置
JP3056850B2 (ja) グラフ作成機能を持つ文書作成装置
JPH0685117B2 (ja) 文書処理装置
JPH02896A (ja) 文字処理装置
JPS59180620A (ja) 文書作成装置
JPH0685116B2 (ja) 文書処理装置
JPS60200360A (ja) 日本語処理装置
JPS60112097A (ja) 文字処理装置
JPH03141461A (ja) 文書処理方法及び装置
JPH02277667A (ja) プリンタの操作パネルによる外字登録方式
JPH02250149A (ja) 情報処理装置
JPS59117621A (ja) 文書編集校正方式
JPH04332073A (ja) 文字処理方法及びその装置
JPS63233461A (ja) 文書処理装置
JPS62202772A (ja) 文書処理装置
JPH04332074A (ja) 文字処理方法及びその装置