CA1151304A - Guess-ahead feature for a keyboard-display terminal data input system - Google Patents

Guess-ahead feature for a keyboard-display terminal data input system

Info

Publication number
CA1151304A
CA1151304A CA000362548A CA362548A CA1151304A CA 1151304 A CA1151304 A CA 1151304A CA 000362548 A CA000362548 A CA 000362548A CA 362548 A CA362548 A CA 362548A CA 1151304 A CA1151304 A CA 1151304A
Authority
CA
Canada
Prior art keywords
data
string
entered
word
keyboard
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
Application number
CA000362548A
Other languages
French (fr)
Inventor
Frederick J. Damerau
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of CA1151304A publication Critical patent/CA1151304A/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs

Abstract

GUESS-AHEAD FEATURE FOR A KEYBOARD-DISPLAY
TERMINAL DATA INPUT SYSTEM

ABSTRACT

A guess-ahead feature for an interactive terminal having a keyboard and a display screen where input data is entered via the keyboard and displayed.
Means are provided for continually evaluating input data to determine if it is the beginning of a string of data stored in the system memory. If the input data is determined to match the begin-ning of the string of prestored data, the complete string of stored data is displayed without moving the cursor. A function key is provided so that if the displayed complete string is the string the terminal operator desires to enter, the terminal operator can, by the depressing the function key, advance the cursor to the end of the string. If, however, the displayed string is not exactly as desired, the operator merely continues keying input data.

Description

1~51~

GUESS-AHEAD FEATURE FO~ ,~ KEYBO~RD-DISPLAY
TE~INAL DATA INPUT SYSTEM

Description Technical Field The continued advance of technology in the elec-tronic data ~rocessing industry has made the data processing ca~abilities of large modern computers available to an ever widening variety of applica-tions. Thus many of the complex functions avail-able only ~n systems including large centralprocessors is now available, at reasonable cost, on smaller, less erudite systems.

A particular case in point is the ever increasing use of interactive display terminals which in-clude a keyboard for entering data, a CRT typedisplay for displaying data entered via the keyboard and often an associated typewriter like printing device. In addition, the terminal has a rela-tively large memory capacity for storing and displaying data entered into the terminal and for performing quite sophisticated editing operations such as the insertion of data at some desired point in the text, the deletion of data, the YO9 7 9 - O 2 q ~5~304 substitution of data, as well as a wide variety of features such as line justification, margin ad-justment, etc. In addition, providing sufficient computational ability is included in the terminal per se or in the central processor to which it is attached, additional features such as the auto-matic detection of spellinq errors, hvphenation, and others are now available to such terminals.

Typical of such interactive terminal systems is the IBM*Office System 6, Word Processor/32.

As with all data input systems, time and thus speed of inputting is of the greatest importance in terms of both total amount of material that can ~be entered into the system and also the per item cost of inputting. In the case of a typewriter like input terminal, the data input speed is generally limited by the typing speed of the typist or operator using the terminal. As is well known, the speed can vary with the given typist from approximatelv twent~ to thirty words per minute to, in some cases, over one hundred. There is accordingly a great need in the electronic computer industry and especially at the word processing level to develop systems wherebv raw data may be entered into the system more quickly and efficiently and thus at lower cost.

Past efforts in this direction have been largely limited to the preentering and storinq of form letters or paragraphs in the system memory wherein said prestored paragraphs may be called for by the entry of an appropriate key or code whereby the entire stored data segment will be displayed and/or printed. In the case of form letters, *Registered Trade Mark _ 1~51304 1 blanks in the letters may be appropriately chosen and, by utilizing the blanks as parameters, appropriate new material may be entered into the system and automatically merged with the prestored material to form a finished product.

These systems, while extremely efficient for the particular job required, are quite limited in use to situations where an extremely large body of material must be frequently entered in order for an operator to learn the access key and specifically request the accessing of the particular pre-stored data.

In its broad, general aspects there is provided a guess-ahead feature for an interactive terminal having a keyboard and a display screen where input data is entered via the keyboard and displayed. Means are provided for continually evaluating input data to determine if it is the beginning of a string of data stored in the system memory. If the input data is determined to match the beginning of the string of prestored data, the complete string of stored data is displayed without moving the cursor. A function key is provided so that if the displayed complete string is the string the terminal operator desires to enter, the terminal operator can, by depressing the function key, advance the cursor to the end of the string. If, however, the displayed string is not exactly as desired, the operator merely continues keying input data.

~lS~3~14 1 It is accordingly a primary object of the present invention to provide a completelv automatic means for detecting the occurrence of a "probable string"
of input data occurring in a large batch of data being entered via a keyboard into an interactive keyboard/display terminal system.
.
It is a further object to provide such a system for displaying the "probable string" on the display means and for enterinq said string in lts entirety if accepted by the operator.

It is yet another object of the invention to provide such a system wherein the data is continuouslv monitored by the system as each new word is entered into the terminal whereby maximum effectiveness is achieved.

It is another object to provide such a system wherein no special codes or keys need be learned bv the operator and virtually no training other than typing and overall terminal operation need be learned.

Yo979-024 3a ~51304 1 It is another object of the invention to provide such features with the addition of a minimal amount of hardware and controls.

Other objects, features and advantages of the present invention will be apparent from the subsequent description of the disclosed embodiment as set forth in the accompanying description and drawings.

Background Art U.S. Patent 3,753,233, "Method and Apparatus for Data Entry", of N.W. Cardell, Jr. et al, issued August 14, 1973. This patent discloses a data entry system for a stockbroker's terminal which displays alternative words in groups on a line ranging from left to right according to their descending frequency of use. Data entry is accomplished by erasing the words in each line that do not apply and tabbing over the word or words that do apply to complete a desired line. This patent relates to a human engineering aid for data entry utilizing an interactive terminal, however, no guess-ahead feature for possible long data strings is disclosed or suggested.

The article entitled "Intelligent Terminal Thesaurus Function" by N.C. Hien and M.I. Lilie, January, 1979.
This article discloses a data entry system for use within an interactive terminal wherein, when an operator enters an incorrect command to the system, instead of "ABENDING" the operation, the theasaurus feature is activated. At this point the system will extract from its Yo9-79-024 4 ~1513~4 theasaurus list the word which should have been entered into the system and 1) give the operator an opportunity to change the input just entered to the proper command as displayed or 2) at least advise the operator that the system has detected some error in command. There is no suggestion or teaching of a guess-ahead feature in this article.

The article entitled, "Chinese Typewriter System"
by s. Dunham and H. Wang, IsM Techllical Disclosure Bulletin, Vol. 19, No. 1, June 1976. This article discloses inputting a relatively small number of strokes of a Chinese ideographic character where-upon the system goes to its memory, searches and displays as many characters stored therein as are generic to the current input strokes. At that time a plurality of characters are placed upon a display screen and the operator selects one of the characters if appropriate. The system disclosed in the article, although a data input system is a symbol processor and not a data processor.

Brief Description of the Drawings PIG. 1 comprises an organizational drawing for FIGS. 1.1 and lo 2~

FIGS. 1.1 and 1.2 comprise a functional block diagram of an interactive keyboard/display ter-minal incorporating the guess-ahead feature of the present invention.

FIG. 2 comprises an organizational drawing for FIGS.
2.1 through 2.3.

FIGS. 2.1 through 2.3 comprise a flow chart illustrating the sequences of operation in the interactive keyboard/display terminal with the guess-ahead feature as set forth in the hardware diagram of FIGS. 1.1 and 1.2.

FIG. 3 comprises an expanded flow chart for block 9 of the flow chart of FIGS. 2.1 through 2.3.

FIG. 4 comprises a functional block diagram illustrating the architecture of the Control ~nit as shown in FIG. 1.1.

Industrial APP1 icability The present guess-ahead feature would have par-ticular utility in application areas utilizing highly stylized and redundant text and would permit the Easter entry of thc text via kcyboard into such systems having appropriate display capabilities. Thus, a maximum data input could be obtained, from minimum key stroking, in those areas where there is a high probability of long strings of data or text being used recursively.
One example might be in legal o~fices where the writers (i.e. lawyers) use highly repetitive phrases and sentences in contracts and other legal documents. It is possible with many "boiler plate" contract si-tuations that such a guess-ahead feature could greatly facilitate the entry of long sentences, paragraphs, etc., of specification, standard or form paragraphs, etc. Such "boiler plate" is common -in many contracts in which the overall contract may have considerable variation.

llS13~4 Another possible area of application would be for the inputting of programs into a computer via such an interactlve terminal wherein large ses-ments of a program mlght be conveniently entered via such a system.

Many other appllcatlon areas wlll of course be apparent to those skllled ln the art, it belng clearly understood that the speclfic strings of data selected as well as the keys would have to be entered into the system as a result of experience with the particular types of data base.

Assuming that the Key Memory and the Replacement Memory would have finite space limitatlons, some sort of slmple replacement algorlthm could be provlded so that whenever new string candidates are submitted to the system they would`replace the least frequently used numbers currently resldent ln sald memories. As will be appreclated by those skilled in the art, such replacement algorithms could be similar to page replacement algorlthms used in current high speed hierarchical memory systems.

In summary, the present invention has application to any text data input system using interactive or even stand alone keyboard/display terminals 26 wherein the nature of the data base is such that there is a reasonable probability of recurrent data strings being used. It will of course be obvious that the success of the system will be to a large extent dependent upon the skill and experience of the operator utilizing the system and a-lso upon the skill of the systems programmers having responsibility for selecting the partlcular ~5~304 strings and keys to be stored in the system.

While the invention has been specifically set forth and dcscribed with respect to thc herein disclosed embodiment, it will be readily appre-ciated by those skilled in the art that manychanges in form and detail could be made without departing from the spirit and scope of the invention as set forth in the appended claims.

Disclosure of Invention The present invcntion comprises a terminal enhancement especial~y suited for interactive keyboard/terminal Systems such as thc IBM Office System 6, Word Processor/32 and its successors.
The enhancement is referred to herein as a "Guess-Ahead" feature. Utilizing the present invention, word strinss of text data being entered into such a terminal which recur with suE~icient ~requency, are stored in the system memory. With each string is stored a predetermined number of its characters (i.e., words) counting from thc left end (i.c., the natural order of entry) which constitutes the particular string's key. As will be apparent from the followin~ description, the particular strings selected for storage as well as the size of the particular keys might vary widely by industry and/or application areas.

As the typist enters te~t data, thc characters or words stored in the terminals input buffer
3 register are displayed in a conventional manner and periodically compared with the string 'keys' stored in the system memory. The compare or match may be performed utilizing as many of the characters or words of the new data string being 11513~4 actually entered into the terminal as desired.
Such a system wouId normally have a predeter-mined maximum size key which can be entered into the system for matching purposes. However, given keys may not be as large as this maximum.

When a key is matched, the stored character string is added to the display, to the right of the current positon, but the input cursor on the display is not changed. If the typist or operator continues to type characters,as soon as a character different from a 'guessed' character is typed, all characters to the right of the input cursor are erased.

This feature accomplishes two functions. First it allows the typist to overrun slightly beyond the key without destroying the entered string data when she is not aware that a new string has been placed on the display screen. Secondly, if a mismatch occurs it automatically indicates to the system controls that the displayed data string is not the one desired by the typist, and the string is automatically removed from consideration.

If the typist accepts the guessed string by pressing a special key, foot pedal, or the like the input cursor is automatically moved to the end of the 'guessed' input string and the typist begins entering new data from that position.

The present guess-ahead feature can be implemented on current interactive keyboard/display terminals in hardware logic, in micro code driving a special purpose control unit, or by software programs written in an instruction language compatible YO979-02~

~lS13:~4 ]n with thc conl~u~tion faciltios associated with the terminal.

The present guess-ahead feature differs from previously known proposals for storing asld recalling repetitive text se~ments on cosnmand.
It does not re4uire a typist to know and memorize special identification codes to access and cause entry of thc stored data scgmcnt locatcd in thc system memory. It should be noted, however, that the present system does not preclude the use such a data entry feature.

Since the typist need take no action in the case of an erroneous guess bv the system control, such wrong guesses should not materially effect the data input bv the typist. Further, in common with other known systems which retrieve stored text from memory, use of the present guess-ahead feature should materially reduce errors and subsequent text correction time.

In thc presel~Lly disclosc~l sys~cln, ~lu~ nlaximusn number of words upon which a key search will be performed is five. However, the length of the words is not limited as adequate storage space would be provided in the Input Buffer Register to accept words of significant length. It will of course be understood that the maximum numbcr of words allowable in the keys could be altered to be either less than or significantly greater than five, with minimum modification of the present system.

As each new word is entered into the system, it is separated from the next word by an appropriate word terminator symbol denoted herein by (*).
This symbol is recognizable to the system controls and would in practice be the particular code 1~13~4 representation for a blank or space between successive words. As each new word is entered into the system an automatic search procedure is undertaken. The new word is first combined with all of the words currently in the Input Buffer Register as the match criteria for all of the keys stored in system and in the event that no match is found successive words at the left end of the Input Buffer Register are deleted from the search argument until only the new word is sent as the last argument. Thus assuming a string of words "NOW IS TH~ TIME FOR" is located in the Input Buffer, completion of the entry of the word FOR
would first cause the search argument "NOW IS THE
TIME FOR" to be utilized in the key search. The subsequent search arguments would be, "IS THE TIM~
FOR"; "THE TI~E FOR"; "TIME FOR"; and finally "FOR".

Assuming that no match was found upon termination of the search procedure the oldest word in the Input Buffer Register would be deleted and a new word entered. Thus, in the above expression the word "NOW" would be deleted and the new word "ALL"
would be entered and a new search sequence would be performed as described above. This operation would continue until either the entire data text entry operation is completed or until a successful string match is found and the associated complete string accessed from system memory and placed in the display.

At this point, as stated previously, the typist would press the 'accept' button which would cause the terminal controls to initialize the system and the data inputtinq operation would continue at the point following the`end of the string. The match ~5~30~

argument would again be successively built up a word at a time until the entire Input Buffer Register is filled to form a new five word argu-ment, and as each new word is entered the oldest word is effectively bumped out of the register.

The disclosed system requires an e~act match of the argument with the stored keys in order for a particular string to be selected and displayed and it is further assumed that there will be only one string for each key. However, as will be appre-ciated, it would be possible to display more than one string having the same key and to provide appropriate means for the typist to select a desired one of the strings displayed.

Other modifications and enhancements of the herein disclosed guess-ahead system will be apparent from the subsequent description of the disclosed embodiment.

Best Mode for Carrying out the Invention A suitable hardware embodiment for performing the herein disclosed guess-ahead feature is set forth in ~IG. 1. The figure comprises a functional block diagram of a suitable keyboard/display terminal having significant logic and control facilities as well as local storage.

Suitable interactive terminals for use with the present system would be the aforementioned IBI`l Office System 6, Word Processor/32, as well as the IBM
3250, 3270 and 3760 interactive terminals. Any of these systems could be modified relatively easily to perform the present guess-ahead function.

~lS1304 Referring to FIG. 1, the portion of the hardware above and to the left of the dotted line would already reside in any of the above mentioned interactive terminals. Similarly the block labeled 5 Replacement Memory could be part of the overall memory facility within such a sophisticated interactive terminal.

Returning now specifically to the figure, it will be noted that the various functional units shown represent the necessary architèctural elements to perform the requisite data input operations, the successive string searches and finally the entry of successfully detected strings into the terminal's input data memory as represented by the Display Buffer Register and the Display Controller.
Control of this architectural framework is by an appropriately desianed microprocessor which comprises the Control Unit. As is well under-stood, this microprocessor or Control Unit would be typically configured as shown in FIG. 4 and includes a Read Only Memory in which appropriatemicro code is stored, an Output Buffer/Decoder into which the control words accessed from the memory are stored and decoded and the Input ~lulti-plexor for determining when various operations arecompleted, branch conditions and other signals well known in the art for effecting the operation of such microprocessor control units. The block marked Branch Control operates in conjunction with the Input Multiplexor to determine whether and when a particular branch is to be taken in the control sequence.

Thus in summary, the Control Unit functions to send out control signals to the various functional units shown in FIG. 1. It gates data into or out ~151304 of specified registers, increments and decrements certain control counters, and causes initiation of the search routines within thc Kcy Mcmory undcr control of the ~lemory Address ~,enerator. It subsequently causes the access of complete strings in the ~eplacement Memory. Thc line marked Conditional Status Feedback entering the Control Unit comprises the required inputs into the Input Multiplexor from the various functional units within the system such as the Character Comparitor and the String Comparator as well as standard - handshaking signals.

It should be understood at this time that the particular mechanism by which the actual com-parison operation is performed could take on manyforms. The present embodiment conditions a single String Comparator for sequentially com-paring the contents of the Match Register with words stored in the Key Memory which would be serially accessed and gated to the String Com-parator. ~lowever, it would be apparent to those skilled in the art that the Key ~emory and String Comparator could, if desired, comprise one ex-tremely large associative memory which would in effect simultaneously compare all of the contents of said associative memory against an argumentstored in the ~atch Register. Details of such a system are considered to be obvious to those skilled in the art and do not per se form a part of the present invention.

The specific gate circuits for controlling the flow of data within the system are not shown as they are considered obvious. Similarly, the status signals from the aforementioned functional units such as the Charactcr Compare Block, the 115~304 String Compare slock and the Word Terminator Detector, are not specifically set forth as their implementation would be obvious. For example, a single output line from any of these units would form a portion of the input constituting the Conditional Status Feedback for the Control Unit.
A binary "1" appearing on a given line miaht indicate a successful 'compare', whereas a binary "0" on the same line would represent a 'no com-pare' condition.

It should be further noted that reference to the followinq Timing Sequence Charts for the system clearly indicate the specific operations required of the hardware at various points during the control sequences set forth in the flow chart of FIGS. 2.1 through 2.3, as well as the Timing Sequence Charts.

3efore proceeding with a detailed description of the operation of the present guess-ahead system there will follow a brief description of the function of the blocks shown in FIG. 1 (1.1 and 1.2). The 'Display' block represents a standard CRT display used with such terminal systems for displaying a predetermined auantity of data entered via the keyboard. The Display Controller Block represents a standard controller as is commonly used with such an interactive terminal with all the functions necessary to access data from the Data Buffer Register and display same on the CRT screen. Registers R4 and R5 labeled DB~
Cursor Position and IBR Cursor Position respectively are automatically incremented by the system controls and contain a count which indicates the location of the cursor on the display. In the case of Register R5, the cursor points to the next location ~15131~4 in the IBR where a new character will be stored.
.
Registers R8 and R9 the Low Character ~ddress and ~iigh Character Address Registers store the ad-dresses in the IBR which are used to control the gating of words from the IBR into the match register as will be explained subsequently.

The Input Buffer Register R2 is in effect the data input buffer for the present system into which successive input characters and words are entexed into the system. As stated previously, it must be of sufficient length to hold a predetermined maximum number of words which are to be used as the match criteria or arguments in subsequent ~ey searches. Thus for example, a hundred character storage locations would probably be adequate ~or most situations, however, this would be optional with the hardware designer.

The Character Compare block connected to both the DBR an~ IBR is primarily for the purpose of comparing a new input character in the IBR with a character currently in the equivalent position in the DBR assumedly placed there by the present system as a proposed new string.
, The Word Terminator Detector (WTD) examines each new character entered into the system and when it detects a word terminator symbol (*), it sianals the Control Unit appropriately and certain specified operations occur which will be set forth subsequently.

1~51304 The Match Register R3 (MR) is the means in which the current search argument is stored for com-parison with all stored keys in Key Memory via the String Comparator. The five registers denoted as R6, R7, R8 and R9, and the Word Terminator Position Register (~TPR) comprise the controls whereby the location of words in the IBR is recorded and kept track of via the word terminator symbols. Utilizing these registers as set forth in the subsequent description, the system is able to extract predetermined groups of words from the IBR and aate same to the MR for search and compare operations. The Loop Register R5 (LP~) and the Word Number Register R7 (~IR) together with the WTPR specifically control the successive gating of a diminishing number of word arguments to the serach and compare operation as described briefly before, i.e., first 5, then 4, 3, 2 and finally, 1 word arguments.

The above-description thus generally sets forth the function of the various blocks of FIG. 1, however, for a meaningful understanding of their sequence of operations in the overall opcration of the system, reference should be made to the subsequent description of the system flow charts as set forth in FIGS. 2 and 3, and also to the detailed Timing Sequence Charts following this section.

The operation of the present system will now be specifically set forth with respect to the flow charts of FIGS. 2.l through 2.3 and FIG. 3. It will be noted that FIG. 3 comprises an expansion of block 9 of the flow chart of FIG. 2. These flow charts functionallv describe the various operations occurring within the system. For a ~151304 specific recitation of the actual data elements being transferred, reference should be made to the accompanying Timing Sequence Charts, which follow this section. It is specifically noted that the reference numbers in the timing sequence charts specifically relate to given blocks in the flow chart of FIGS. 2 and 3.

To facilitate the following description, it will be assumed that a particular text entry is to be made into the system. In this example, the total text to be entered is "NOW IS THE TIME FOR ALL
GOOD MEN TO COME TO THE AID OF THEIR COUNTRY".
It is further assumed that in the above text the key consists of three words, "TIME FOR ALL"
which will be stored together with other keys in the Key Memory. Further, the complete string is "TIM~ FOR ~LL GOOD MEN TO CO~E TO TI~E AID OF
T~EIR COUNTRY". What is required of the system therefore, is that the key be rccogni7cd ~lith thc words "TIME FOR ALL" which will reside at some point in the IBR. At this time, the system must cause the complete string "TIME FOR ALL GOOD ~IEN
TO COME TO THE AID OF THEIR COUNTRY" to be entered into the DBR and appropriately displayed.

2S An understanding of the following description of the flow charts will also be aided by reference to the following Tables 1 and 2 which specifically show the contents of the IBR and WTPR at various stages of the operation of the system. Each step assumes that a new word has been entered and a word terminator symbol (*) has been detected and appropriately stored in the IBR. Table 2 showing the contents of the WTPR literally contains the '~0979-024 ~1513C!4 addresses in the IBR where the word terminators are stored. Thus for example, in step 3 of Table 2, the numbers 4, 7 and 11, are shown in I~TPR
register postions 1, 2 and 3. ~eferrin~ to Table 1, step 3, it will be noted that word terminator symbols (*) are stored at the IBRCP addresses, 4, 7 and 11.

Referring now to the flow chart of FIG. 2 (2.1 through 2.3) in block 0, the system is initialized wherein it is assumed that DBR and IBR are empty.
In block 0 WNR R7 is set to 1 which will cause the first IBR address at which a word terminator symbol is stored to in turn be stored in register position 1 of the WTPR. Assume now that text data beginning with the letter N is entered into the system. The occurrence of this letter causes the system to continue to block 1 where it is recosnized as a new input character. The system then procecds to block 2.

In block 2 the character N is stored in position 1 of the IBR. ~It is noted that the IBRCB will cause the character to go in address 1 because the initialization and clearing of the IBR causes the IBRCP register to be reset to a 1. Similarly, the clearing initlalizing of the system causes the DBRCP, R4 to be similarly set to a 1 when the DBR was clearcd. The system then proceeds to block 3 in which the current postion in the DBR
pointed to by the DBRCP is checked to see that it is empty. If it is the system proceeds to block 5 wherein the new input character is sent from the IBR to the DBR at the position pointed to by R4.

~151304 ,~o Next the system proceeds to block 6. In block 6 a test is made to see if the character just entered was a word terminator symbol (*). Since in this case it was not, the system returns to block 1. The same sequence of operations continues until the letters NOW have been entered into the system. It will now be observed that a word terminator symbol (*) is being entered into the system and stored in position 4 of the IBR as described above. However, in block 6 the recog-nition of the word terminator causes the system to proceed to block 7.

In block 7 the number 4, which is the current setting of the IBRCP stored in register 1 of the WTPR, which i5 the rcgister posi~ion currently pointed to bv the WNR. In block 8 the system causes LR to be set to 0 and the system proceeds to block 9. The completion of the above se~uence of operations throu~h block 8 has caused the characters NOW (*) to be stored in the IBR in positions (addresses) 1, 2, 3 and 4 thereof.

A search operation must now occur since a new word has been entered into the IBR. This operation is performed by blocks 9, 10, 11 and 12. In the case of a successful match, blocks 25 and 26 are also included.
, ..
At this point block 9 will be referred to simply as performing the function of sending successive word groups from the IBR to the MR wherein spccific key searches will be performed. In this case, at the end of step 9, the sinqle word "NOW" is sent to MR and a search of the keys will assu~edly be unsuccessful in block 10 which will cause the system to procced to block 11. Blocks l1 and 21 .

control the incrementing and testing of the Loop Register (LR) and in conjunction with block 9 cause the successive sending of word groups from the IBR to the MR until all combinations of the new word just entered have been tried.

However, at the end of step 1 only one data transfer is necessary as there is only one word, i.e., NOW, stored in the IBR and the system proceeds to block 13. Block 13 tests the WNR for a setting of '5'. Since the WNR is currently set to a 1, this test will cause the system to proceed to block 14, wherein the WNR is incremented and the system returns to block 1.

The characters I, S and (*) are now entered in the system by the same mechanism described above. The completion of this operation is represented by the state of the IUR at step 2 in Table 1. Thc contents of the WTPR are shown in step 2 of Table 2.

This time the operation of blocks 9 through 12 first cause thc ar~umcnt 'NOW IS' and then 'IS' to alone be sent to the MR. This will again result in a 'no match' and the system will again proceed to block 13, which tests the contents of the WNR
which is currently set to '2'. Ther~fore, the system will proceed to block 14 which increments the WNR and returns to block 1. In a similar fashion the system will proceed until the input state of the IBR and WTPR is as shown in step 5 of Tables 1 and 2. As stated previously, since the disclosed embodiment allows a ma.Yimum of 5 words to be entered into the IBR for match argument purposes, it is now necessary for the oldest word in the IBR to be, in effect, removed and the ~1~2,7i~4 contents of the IBR adjusted as shown in step 6.
This is accomplished in blocks 15, 16, 17, 18 and 19 .

Block 15 causes the Character Counter located in the Control Unit to be reset to a 0. In 31Ock 16, the entire contents of the IBR is in effect shifted to the left so that the character N is gated out. The system then proceeds to block 17 wherein the current setting of the IBRCP is decremented 1. By way of example, at the end of step 5, the IsRCP would have been set to a 21, which is the next blank position in the IsR. The dccrementing would cause the valuc to be changcd to 20.

1~513Q4 In block 17 a test is made of the leftmost character shifted out, which in this case is an N, to see if it is a word terminator. Since it is not, the system proceeds to block 18 which decre-ments the Character Counter and returns to blocks 16 and 17. The loop comprisinq blocks 16, 17 and 18, continues to cause the characters 'O~ (*)' to be gated out of the IBR. However, the WTD will now detect the word terminator symbol and cause the system to branch to block 19.

In block 19 the followinq operations occur. The Character Counter will be incremented. At this point it will contain the number 4, as the 4 characters, 'NOW (*)' have been gated out of the IBR and the remaining words shifted as shown in step 6 of Table 1. The system controls next cause the number 4, which is the current Character Counter value to be subtracted from each of the numbers currently stored in the register position 1 through 5 of the WTPR and then causes these numbers to be shifted up one position. The new contents of the WTP~ are shown in step 6 of Table 2.

The exit from block 19, causes the system to return to block 1, at which point the characters ALL (*) will be entered into the system. At the end of block 8, the contents of the IBR are as shown in step 7 of Table 1.

It will now be noted that the key "TIME FOR AL~"
is resident in the IBR. At this point blocks 9, 10 and 11 cause the successive argument, IS THE
TIME FOR ALL; THE TIME FOR ALL and finally, TIME
FOR ALL, to be successively sent to the ~IR for key search purposes. However, this time a successful match will be indicated by block 10, since the key 'TIME FOR ~LL' is one of the keys stored in the Key Memory. The system next proceeds to block 25, which will cause the entire string contents pointed to by the key to be transferred to the DBR
from the Replacement Memory, beginning at the cursor position pointed to by the DBRCP. Thus the letter G would be stored in that position, as it is the beginning of the remainder of the complete string, GOOi) M~N TO COM~ TO Tll~ ~ID OF TII~IR
COUNTRY .

Block 26 causes the EOD register to be set to the last character of the replacement string. This is to retain this address in the system in case the string is accepted. ~11 the other pointer reqisters, i.e., DBRCP, have other functions at this time.
The system then proceeds to block 13.

Again blocks 13 through 19 cause the oldest word in the IBR to be removed, since at this point the system does not know whether or not the string just displayed will be accepted by the typist.
The system will then return to block 1.

For the moment it will be assumed that the typist is not yet aware that the new string has been displayed and proceeds to type in the character G
into the system. The system will proceed as before to block 3. However, at this point the - 115~3Q~

position pointed to by DBRCP is not empty, but contains the letter G, which is the first word of the string just entered.

In block 4 a matching of the new letter with the letter in the DBR is successful which allows the system to proceed to block 6. ~t this point it will be assumed that the typist sees the new string displayed and presses the accept key. In this event, block 20 is automatically entered which causes the new string to be accepted into the inout system by proceeding to block 21 which clears the IBR and appropriately resets the IBRCP.

Block 22 causes the WNR to be set to 1 and block 23 causes the DBRCP to be set to the next vacant character at the end of the new string just entered.
This value is extracted from the EOD which was loaded in block 2fi. Thc .systcm then roturns to block 1 and awaits the entry of a new character by the typist.
It should be noted that had the test made in block
4 been unsuccessful, the system would have proceeded to block 24, which would have automatically cleared the DBR fro~ the current display position to the end of the string just entered. Thus in e~fect, the typist has advised the system that the string is not correct and the system must proceed in the usual fashion, i.e., keyboard entry.

This completes the description of the overall operation of the present system as set forth in ~IG. 2 (2.1 through 2.3). Howe~er, to complete ~151304 the description of the present embodiment, reference should now be made to FIG. 3 which comprises an expansion oE block 9 of ~I~,.2. In this block the contents of the IBR, as defined by the current settings of LR and WNR, are transferred to the MR for comparison ln the String Comparator. The function of the operations defined in the flow chart of FIG. 3 is to e~tract the address in the IBR of the ~irst character of a word argument group and the last character of said word argument grouP and cause all characters in the IBR betwecn (and including) these addresses to be gated to the MR
for comparison purposes. It will be assumed that the IBR and the WTPR are configurecl as in step 7 and that the LR is set to 0 (per block 8) and that the WNR is set to 5.

Block 9.1 causes the 0 currently stored in WTPR at register 0 to be stored in register R8. In block 9.2 the register 0 is incremented so that a l is now stored therein. Block 9.3 causes the contents of the WTPR re~ister pointed to by the WNR to be stored in register R9. In this case the number 20 will be stored in register R9 since it is the nu~ber in register 5 of the ~TPR. In block 9.4 thls value is decremented by l. The Character Counter is set to l. It should be noted that the two registers R8 and R9 now define the limits (addresses) between which all of the characters stored within the IBR are to be in effect shifted into the MR.

In block 9.5, the IBR controls are set to effect a circular shift left beginning with the character pointed to by the contents of register R8 and ending with the character pointed to by the contents ~1513~)4 of register R9. At this point, blocks 9.6, 9.7, 9.8, 9.9 and 9.10 cause successive shifting of the IBR until all of the characters between address positions 1 and 19 in the IBR have been shifted to the MR and returned to their original position in the I~R. At this point the system proceeds to block 10, to cause a key search. If unsuccessful, the system proceeds to blocks 11 and 12 which will cause block 9.1 on FIG. 3 to again be entered and a new word group is sent to the ~R for comparison purposes. The operation would proceed as above, however, it will be noted that at the end of block 9.4 the values 4 and 19 would be stored in registers R8 and R9 to effectively drop the argument word IS
lS from the comparison.

This sequence of operations would continue with an additional ~ord dropped until finally the last argument sent to the MR would be the word ALL.
This of course presumes that no match was found.
At this point block 13 would be reentered and the oldest word would be removed from the IBR to make room for a new word.

This completes the description of the operation of the presently disclosed guess-ahead feature. It should be noted that the following Timins Sequence Charts, as stated above, disclose the specific operations carried out within the hardware of ~IG.
1 (FIG. 1.1 and FIG. 1.2). It will also be noted that all of the data flow paths are not shown, such as the data paths for gating the contents of the various registers in the ~TPR to registers R8 and R9. Provision of such buses would be obvious and inclusion of same wouls llS~

merely obfuscate the invention. Similarly, specific data paths for comparing the contents of the Character Counter with contents of rec~isters R9 an~ ~9 are not shown for thc samc rcason.

~ 304 C
,..

.
V~
W ~ i-- tt ~, _ ~_ ~ Y Z
V~ooooo W ~ ~ ~ ~ X ~ ~ Z
1 *
~n ' ~ 4 ~ , ~0 ~, ~ " " , r Co ~
~, ~ ~r ,.. ~ ~ t., ~ r~

W
I_ o o ;a :~ *
I_ ~ ~
co r o ~J r~ ~
o ~ ~ .

Yo979-024 30 ~lS~3Q~

o ~"

~ n ~ W ~ ~ rt o o o o o o o , W W ~ ~ ~ ~ ~
. o W ~ ~ Y , , ~ ~
~ ~ ~ a~ ~ r, -Ul o o Yo979-024 TI~lING SEQUENCE CHART

0. Clear all registers.
Increment R4, R5, and R7.

1. Set input multiplexor (IMPX), all placcs, to address of keyboard character line:
If status signal = 1, go to ste~ 2.
If status signal = 0, go to step 20.

2. Write keyboard input data into R2 at location addressed bv R5.
n IncrcmenL R5.

3. Set IMPX to address of WTD line.
Read Rl at location addressed by-R4.
If status signal = 0, go to step 4.
If status signal = 1, go to step 5.

4- Set IMPX to address of comparator C.
Read Rl at location addressed by R4 to upper input of comparator.
Read R2 at location addressed by R5 to lower input of comparator.
If status signal = 0, go to step 24.
If status signal = 1, go to ste? 5.
5. Increment R4.
Write character from R2 at location addressed by R5 into Rl at location addressed by R4.
5 6. Set I~1P~ to address of WTD linc.
Read R2 at location addressed by R5.
If status signal = 0, go to step 1.
If status signal = 1, go to step 7.

7. t~rite contents of R5 into ~TPR pointed to by R7.

8. Clear R6.

9. 9.1 Load R8 with contents of WTPR pointed to by R6.

9.2 Increment R8.

9.3 Load R9 with contents of t~TPR pointed to by R7.

9.4 Decrement R9.
Set character counter to 1.

.
9.5 Set R2 controls for circular left shift.

9.6 Shift R2 left one charac~cr position.

5.7 Set IMPX to address of Comparator C.
Read contents of R8 into upPer inPut of comparator.
Read contents of character counter into lower input of comparator.
If status s-ignal = 0, go to steo 9.10.
If status signal = 1, go to ste~ 9.8.

9.8 Set IMPX to address of comparator C.
Read contents of R9 into lower inPut of comparator.
Read contents of character counter into upper input of comparator.
If status signal = 0, qo to ste~ 9.10.
If status signal = 1, go to step 9.9.

, ~513~4 9.9 ~rite output of R2 into R3.

9.10 Increment character counter.

9.11 Set IMPX to address of character counter "count equal to zero" line.
If status signal = 0, qo to step 9.6.
If status signal = 1, go to steD 10.

10. 10.1 Set ~I MAG to zero.

10.2 Set IMPX to address of string comparator SC.

10.3 Increment KM ~G and read key strinq from KM to SC.

10.4 If status signal = 1, go to step 25.
If status signal = 0, go to ste~ 10.5.

10.5 Set IMPX to address of KM r~G "u~per limit address" line.
Tr s~atus signal - n, ~10 to ste~ ln.~.
If status signal = 1, go to ste~ 11.

11. Increment R6.

12. Set IMPX to address of comoarator C.
Read contents of R6 to up~er input of C.
Read contents of R7 to lower input of C.
If status signal = 0, ~o to step 9.1.
If status signal = 1, go to step 13.

13. Set I~PX to address of R7 "upper limit" line.
If status signal = 0, go to ste~ 14.
If status signal = 1, go to step 15.

~513~

14. Increment R7.

15. Clear character counter.

16. Shift R2 left one character ~osition.
Decrement R5.

17. Set IMPX to address o WTD linc.
Read R2 at location addressed bv R5.
If status signal = 0, go to ste~
If status signal = 1, go to step 19.

18. Increment character counter.

19. Increment character countcr.
Subtract character counter value from con~.ents of WTPR ~1 throuqh WTPR #5.
Write contents of WTPR ~2 into WTPR ~1.
Write contents of WTPR ~3 into WTPR ~2.
Write contents of WTPR #4 into WTPR ~3.
Write contcnts of WTPR ~5 into l~TrR ~4.
Go to step 1.

20. Set IMPX to address of ACC~PT-key line from keyboard.
If status sianal = 0, go to ste~ 1.
If status signal = 1, go to step 21.

21. Clear R2.

22. Clear R7.
Increment R7.
5 23. Clear R4.
Write contents of R10 into R4.

s~

24. Clear Rl from location addressed by R4 to end of Rl.

25. 25.1 Set IMPX to address of "end of string"
line from ~.

25.2 Load contents of KM MAG into ~M ~AG.

25.3 Load R10 with value stored in R4.

25.4 Read next cha.racter of replacement string from RM.into Rl at location addressed by R10.

25.5 lf statu~ signal - 1, qo -to st~p 26.
If status signal = 0, qo to sten 25.6.

25.6 Increment R10.

25.7 Go to step 25.4 26. Save the contents of R10.

Claims (10)

The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:
1. In an interactive terminal system having a keyboard and a display device wherein input data is entered into the system via the keyboard and displayed, the improvement which comprises;

means for continually evaluating the input data to determine if it is the beginning of a string of data currently stored in the system memory, further means responsive to a positive determination to cause the complete stored data string to be displayed on the display device, means operative, upon a determination that this is the complete string which the ter-minal operator desired, to cause said string, to be actually entered as data input,.and alternative means for continuing the entry of data via the keyboard whereby the material on the display screen can be ignored and the current input operation continued.
2. An interactive terminal system as set forth in claim 1 wherein said means for evaluating includes means for periodically comparing each new word entered into the system against a predetermined key list, said key list com-prising the initial words contained in a stored string and means operative to access the complete stored string in the event of a positive determination.
3. In a data input terminal including a display, keyboard means for entering data, first memory means for storing predetermined data strings and a memory means for string search keys, each of which is specifically related to a particular data string stored in said first memory means, processor and logic means available to said terminal, the improvement which comprises a guess-ahead method for entering said prestored strings of data including; entering data in said terminal via said keyboard a word at a time, combining said new word with a predetermined number of previously entered words to form a key search argument, initiating a key search using said argument, if said search is successful, displaying the entire string of data to which said key relates temporarily, if the string is accepted by the terminal operator, enter-ing said complete data string as data input to the terminal and, continuing the inputting of data via the keyboard beginning at the end of said accepted string, and if said key search is unsuccessful forming a new search argument utilizing said newly entered word and previously entered words and continuing to form such arguments and performing key searches until either a successful search occurs or until a predetermined number of combinations have been formed and tried as search arguments and then, resuming the entry of new data words via the keyboard at the point just subsequent to the last entered new word.
4. A guess-ahead data entry method as set forth in claim 3 wherein said key search includes comparing each search argument against all of the keys stored in the key memory and ac-cessing the related string when a successful key search is indicated.
5. A guess-ahead data entry method as set forth in claim 3 including limiting the maximum number of words which may be considered for a key search, and once the maximum number of words has been entered into the system via the keyboard removing the oldest word as each new word is entered.
6. An interactive terminal system comprising a plurality of terminals connected to a common communication means, each terminal including a display means, keyboard means for entering data, first memory means for storing pre-determined data strings and a second memory means for storing search keys, each of which is specifically related to a particular data string stored in said first memory means, third storage means for storing data to be placed on said display and permanently entered into said interactive terminal system means for anticipating when an operator is attempting to enter a data string which has been previously stored in said first memory means comprising first buffer means for storing data as it is entered into the terminal via said keyboard, means associated with said buffer means for indicating when a complete data word has been entered into said first buffer means, means for-comparing each newly entered word together with a prede-termined number of words previously entered into said first buffer means with all of the keys in said key storage means, and means operative upon a successful comparison to cause a complete data string related to the key which resulted in the successful com-parison to be entered into said display means, and means responsive to an affirmative indication by the operator of the terminal for causing the complete data string entered into said display means to be permanently entered into said interactive terminal system as input data.
7. An interactive terminal system as set forth in claim 6 including means for causing each new character entered into said system to be simultaneously entered into said first buffer means and also into said third storage means from which it is accessed and displayed upon said screen.
8. An interactive terminal system as set forth in claim 7 including means for removing the displayed string from the display means and also from said third storage means in the event that the displayed string is not the data entry text desired by the operator.
9. An interactive terminal system as set forth in claim 8 when said first buffer means includes control means whereby a predeter-mined maximum number of words will be stored therein while new data is being entered into the system and said comparison means includes means for extracting predetermined combina-tions of words from said first buffer means for comparison with said keys stored in said key storage means whereby the most recently entered word is always included in said search argument.
10. An interactive terminal system as set forth in claim 9 wherein said first buffer storage means and control means include means opera-tive upon the filling of said buffer with said predetermined maximum number of words to effectively remove the oldest word in said buffer means when a new word is being entered by the operator.
CA000362548A 1979-12-31 1980-10-16 Guess-ahead feature for a keyboard-display terminal data input system Expired CA1151304A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/108,774 US4330845A (en) 1979-12-31 1979-12-31 Guess-ahead feature for a keyboard-display terminal data input system
US108,774 1979-12-31

Publications (1)

Publication Number Publication Date
CA1151304A true CA1151304A (en) 1983-08-02

Family

ID=22323965

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000362548A Expired CA1151304A (en) 1979-12-31 1980-10-16 Guess-ahead feature for a keyboard-display terminal data input system

Country Status (5)

Country Link
US (1) US4330845A (en)
EP (1) EP0031495B1 (en)
JP (1) JPS56101237A (en)
CA (1) CA1151304A (en)
DE (1) DE3066879D1 (en)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4410957A (en) * 1980-11-20 1983-10-18 International Business Machines Corporation Keystroke queueing system
US4577288A (en) * 1981-06-16 1986-03-18 International Business Machines Corporation Data communications system with receiving terminal for varying the portions of received data being displayed
JPS59208643A (en) * 1983-05-13 1984-11-27 Hitachi Ltd Method for controlling data transfer of terminal control device
US4680729A (en) * 1983-06-17 1987-07-14 Tektronix, Inc. Method and apparatus for storing and updating user entered command strings for use with otherwise unassigned softkeys
US5262948A (en) * 1984-07-18 1993-11-16 Canon Kabushiki Kaisha Word processor
JPS61145628A (en) * 1984-12-19 1986-07-03 Nec Corp Pattern control system
JP2503423B2 (en) * 1986-07-15 1996-06-05 ブラザー工業株式会社 Input control device
US5040113A (en) * 1987-01-28 1991-08-13 Mickunas Marshall D Data manipulation program
US5019806A (en) * 1987-03-23 1991-05-28 Information Appliance, Inc. Method and apparatus for control of an electronic display
JP2975372B2 (en) * 1988-05-17 1999-11-10 シャープ株式会社 Data input device
GB2222284A (en) * 1988-08-12 1990-02-28 Kayode Agunbiade An electronic bible
US5231599A (en) * 1988-12-01 1993-07-27 Bull Hn Information Systems Inc. Semantic interpreter for an incoming data stream
US20020052903A1 (en) * 1993-05-31 2002-05-02 Mitsuhiro Aida Text input method
US6715028B1 (en) * 1993-11-19 2004-03-30 Kabushiki Kaisha Toshiba Data selecting memory device and selected data transfer device
GB2289561B (en) * 1994-05-16 1998-06-10 Mitsuhiro Aida Text input system
JPH07334625A (en) * 1994-06-06 1995-12-22 Nec Corp Character string input device
WO1997046951A1 (en) * 1996-06-04 1997-12-11 Lennerstad Idé Device for word processing
US5805159A (en) * 1996-08-22 1998-09-08 International Business Machines Corporation Mobile client computer interdependent display data fields
US5805158A (en) * 1996-08-22 1998-09-08 International Business Machines Corporation Copying predicted input between computer systems
US5881169A (en) * 1996-09-13 1999-03-09 Ericsson Inc. Apparatus and method for presenting and gathering text entries in a pen-based input device
AU3267700A (en) 1999-03-18 2000-10-09 602531 British Columbia Ltd. Data entry for personal computing devices
US7293231B1 (en) * 1999-03-18 2007-11-06 British Columbia Ltd. Data entry for personal computing devices
DE10003737A1 (en) * 2000-01-28 2001-08-16 Bosch Gmbh Robert Information input method for electrical device e.g. automobile onboard navigation device, uses first entered character or character sequence for display of reference information to allow selection as input information
FR2809203B1 (en) * 2000-05-18 2003-10-03 Cit Alcatel METHOD FOR MANAGING A GRAPHIC MAN-MACHINE INTERFACE
CA2323856A1 (en) * 2000-10-18 2002-04-18 602531 British Columbia Ltd. Method, system and media for entering data in a personal computing device
US20090006543A1 (en) * 2001-08-20 2009-01-01 Masterobjects System and method for asynchronous retrieval of information based on incremental user input
US9508101B1 (en) * 2001-09-21 2016-11-29 Google Inc. Systems and methods for providing stock ticker information
US20030182279A1 (en) * 2002-03-19 2003-09-25 Willows Kevin John Progressive prefix input method for data entry
US8552984B2 (en) * 2005-01-13 2013-10-08 602531 British Columbia Ltd. Method, system, apparatus and computer-readable media for directing input associated with keyboard-type device
WO2007068505A1 (en) * 2005-12-13 2007-06-21 International Business Machines Corporation Autocompletion method and system
CA2581824A1 (en) * 2007-03-14 2008-09-14 602531 British Columbia Ltd. System, apparatus and method for data entry using multi-function keys
US8601392B2 (en) * 2007-08-22 2013-12-03 9224-5489 Quebec Inc. Timeline for presenting information
KR20090082712A (en) * 2008-01-28 2009-07-31 삼성전자주식회사 Method and apparatus for editing letters
US8730173B2 (en) * 2008-09-26 2014-05-20 Kyocera Corporation Electronic device with predictive candidate selection based on character input
US20120011460A1 (en) * 2010-07-12 2012-01-12 Action Star Enterprise Co., Ltd. System capable of simulating variety of output/input devices
US10228819B2 (en) 2013-02-04 2019-03-12 602531 British Cilumbia Ltd. Method, system, and apparatus for executing an action related to user selection
US20180024707A1 (en) * 2015-03-13 2018-01-25 Kyocera Document Solutions Inc. Information processing device and screen display method

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3448436A (en) * 1966-11-25 1969-06-03 Bell Telephone Labor Inc Associative match circuit for retrieving variable-length information listings
US3568156A (en) * 1967-08-09 1971-03-02 Bell Telephone Labor Inc Text matching algorithm
US3753233A (en) * 1971-02-04 1973-08-14 Bunker Ramo Method and apparatus for data entry
US3755784A (en) * 1972-02-01 1973-08-28 Ibm System for revision line retrieval
US3757311A (en) * 1972-03-30 1973-09-04 Ibm System for outputting lines about a point of operation
GB1448211A (en) * 1972-05-24 1976-09-02 Lewis S R Language conversion device
DE2334747A1 (en) * 1973-07-09 1975-01-30 Forster Electronic Gmbh TEXT PROCESSING ADDITION FOR REMOTE CONTROLLED TYPINGWRITERS
US3911403A (en) * 1974-09-03 1975-10-07 Gte Information Syst Inc Data storage and processing apparatus
US4028677A (en) * 1975-07-16 1977-06-07 International Business Machines Corporation Digital reference hyphenation matrix apparatus for automatically forming hyphenated words
US4125868A (en) * 1975-10-28 1978-11-14 Automix Keyboards, Inc. Typesetting terminal apparatus having searching and merging features
US4041467A (en) * 1975-11-28 1977-08-09 Xerox Corporation Transcriber system for the automatic generation and editing of text from shorthand machine outlines
JPS5335434A (en) * 1976-09-13 1978-04-01 Lexicon Corp Information processor
US4136395A (en) * 1976-12-28 1979-01-23 International Business Machines Corporation System for automatically proofreading a document
FR2378317A1 (en) * 1977-01-24 1978-08-18 Dethloff Juergen Text processing machine for automatic typewriters - has two position switch which controls electronic circuit for rapid text recall
US4193119A (en) * 1977-03-25 1980-03-11 Xerox Corporation Apparatus for assisting in the transposition of foreign language text
US4204206A (en) * 1977-08-30 1980-05-20 Harris Corporation Video display system
US4215422A (en) * 1978-05-22 1980-07-29 International Business Machines Corporation Selectively modifiable phrase storage for a typewriter

Also Published As

Publication number Publication date
JPS6318211B2 (en) 1988-04-18
DE3066879D1 (en) 1984-04-12
US4330845A (en) 1982-05-18
EP0031495B1 (en) 1984-03-07
JPS56101237A (en) 1981-08-13
EP0031495A1 (en) 1981-07-08

Similar Documents

Publication Publication Date Title
CA1151304A (en) Guess-ahead feature for a keyboard-display terminal data input system
US4689768A (en) Spelling verification system with immediate operator alerts to non-matches between inputted words and words stored in plural dictionary memories
JP3560289B2 (en) An integrated dictionary-based handwriting recognition method for likely character strings
EP0241646B1 (en) Document processing apparatus
US3805248A (en) Data processing printout system
US4359286A (en) Character set expansion
US4381551A (en) Electronic translator
US4597056A (en) Language translator having circuitry for retrieving full words after single letter input
JPS6038752B2 (en) How to change text stream
EP0121126A2 (en) Character generator
EP0797157A2 (en) Machine interpreter
EP0120977B1 (en) Card image data processing system
US4648070A (en) Electronic translator with means for selecting words to be translated
EP0097818A2 (en) Spelling verification method and typewriter embodying said method
US5835921A (en) Data processing apparatus for creating and storing a text file from input data
CA2097966A1 (en) Method and system for retrieving ideographic characters and the associated dictionary entries
US4688189A (en) Electronic equipment for storing number of searches of information
US4488254A (en) Method and apparatus for efficient data storage
KR960038571A (en) Data input method and apparatus
JPS58178434A (en) Character processor
JP2558692B2 (en) Document file device
JPS62256070A (en) Document processor
JPH0719189B2 (en) Data input device
JPS5836368B2 (en) Kanji-mixed sentence creation device with dictionary registration function
JPS61190677A (en) Shift controlling system for handwritten character recognition

Legal Events

Date Code Title Description
MKEX Expiry