EP0089468B1 - Abbreviated typing with special form display - Google Patents

Abbreviated typing with special form display Download PDF

Info

Publication number
EP0089468B1
EP0089468B1 EP83100794A EP83100794A EP0089468B1 EP 0089468 B1 EP0089468 B1 EP 0089468B1 EP 83100794 A EP83100794 A EP 83100794A EP 83100794 A EP83100794 A EP 83100794A EP 0089468 B1 EP0089468 B1 EP 0089468B1
Authority
EP
European Patent Office
Prior art keywords
abbreviation
characters
memory
character
sequence
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
EP83100794A
Other languages
German (de)
French (fr)
Other versions
EP0089468A1 (en
Inventor
Dan Michael Howell
Robert Adolph Kolpek
Lisa Shawn Trevathan
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
Publication of EP0089468A1 publication Critical patent/EP0089468A1/en
Application granted granted Critical
Publication of EP0089468B1 publication Critical patent/EP0089468B1/en
Expired legal-status Critical Current

Links

Images

Classifications

    • 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

Definitions

  • This invention relates to word processing with the aid of information-handling equipment, particularly electronic data processing equipment.
  • Abrreviated typing is known in which the typist enters special codes of limited size into the keyboard and in which the information handling equipment displays or prints the longer form recognized from the code. This permits an increase in the speed of typing or similar message preparation.
  • messages may require special forms such as entirely capitalized words, change in type font, underlining of given parts, change in color of the printing, or other characteristics of display in which the content is essentially identical but the form of display differs.
  • This invention is directed to providing efficient and practical means to achieve such special displays while retaining the advantages of abbreviated typing.
  • Word processing employing highly versatile, electronic data processing equipment is now generally conventional in the word processing art.
  • Abbreviation typing employing such information-handling equipment is less common but is known generally in the prior art.
  • IBM Technical Diclosure Bulletin article entitled "Word Generation System for Typist”, by A. Arellano and H. Marcar, Vol. 17, No. 8 (Jn. 1975), at pp. 2422-2423 describes a system in which the information-handling equipment generates final portions of a word or phrase after the typist generates the first letters.
  • the typist types words in their ordinary form while a data processing dictionary translates the letters as they are entered into longer complete words.
  • a tone signal When a full dictionary word is recognized, there is a tone signal, and a typist may terminate typing with a key operation which selects the full word from the dictionary.
  • IBM Technical Disclosure Bulletin article entitled "Abbreviated Typing for Word Procs- sing" by S. J. P. Todd, Vol. 21, No. 9 (Feb. 1979) at pp. 3796-3797 describes such a typing system in which all entered words have a short form achieved by leaving out vowels and adjacent identical letters. As the typist enters the short form, a long form is automatically printed when the information handling equipment determines that the entry is an abbreviation for a single word in the machine dictionary. That system comprises a keyboard, a screen, a central processing unit, and a disc storage.
  • Each character entered on the keyboard is displayed on the screen immediately, but by operation of the central processing unit may later be removed by replacing an abbreviation with a full word corresponding to the abbreviation.
  • a dictionary of full words corresponding to abbreviations is stored on the magnetic disc and scanned and compared with an entered abbreviation by the data processing system.
  • abbreviated typing is generally known in various forms. None of this known prior art, however, addresses the question of employing abbreviated typing to display the final characters in special form, such as in capitals or in all italics. So far as appears, no capability to display in special form is provided by the prior systems of abbreviated typing.
  • the Arellano publication mentioned above shows the input Ame completed by dictionary look-up to the work American, but does not suggest the alternative where an entire lower case ame would appear as an entire lower case output from the dictionnary. Similarly that article shows an input of FRB being converted by the dictionary to Federal Reserve Board, but does not suggest what the output would be had the input been in lower case.
  • IBM Technical Disclosure Bulletin article entitled “Method for Capitalization Checking During Spelling Verification,”, by D. A. Hamilton et al, Vol. 22 No. 12 (May 1980) at p. 5240 teaches an information handling system for word processing in which input words are checked for proper spelling. That teaches a dictionary in data processing memory in which spelling checking is achieved by words in the dictionary which represent the alphabetic characters in lower case except for characters which must be in upper case in order for the word to be correct. (For example, in a proper name such as "Robert” the capital "R" must be in upper case.) Words entered are compared with words in the dictionary, including comparisons of characters as being upper case or lower case according to certain rules, and entered words are verified or not verified in accordance with those rules. This achieves a verification of proper capitalization and is not directed to a system in which the entered characters are fewer in number than the characters of the final words output.
  • GB-A-2,073,927 discloses a method of operating a word processor wherein at least two input signals representing characters are compared against a list of abbreviations each corresponding to a full word, and in which the corresponding full word is substituted in the output, text created for each abbreviation in the input.
  • special keys must be actuated after striking the character keys, to initiate the operations which result in the printing of the full words and further, the system does not have the capability to display the final characters in special forms.
  • the present invention provides a method of operating an abbreviated typing system, of the type disclosed in GB-A-2,073,927 i.e. a method which has the system transfer typed abbreviations comprising at least two separate characters, into full words, the said system being of the type including a keyboard with a space bar, and character keys a keystroke buffer and an abbreviation queue information memory for storing the codes representative of the typed characters, a dictionary memory containing a list of abbreviations and a list of corresponding full words, a buffer memory, display means for displaying the characters, and a processor connected to all said afore mentioned means to control operation thereof and process information therefrom and to control the transfer of information, said method including the following steps:
  • step e) In response to determining in step e) that the number of special form characters is equal to said predetermined number, modifying under the control of said processor the codes for all characters of the full word in said buffer memory so that these codes will carry a status representative of the special form observed in step d), transferring the modified full word from said buffer memory to said display means, and clearing said abbreviation queue information memory,
  • step e) In response to determining in step e) that the number of special form characters is less than said predetermined number, modifying, under the control of said processor, the code for only the first character of the full word in said buffer memory so that this dose will carry a status representative of the special form observed in step d), transferring the modified full word from said buffer memory to said display means, and clearing said abbreviation queue information memory.
  • the subject matter of this invention would typically constitute one feature of a more general purpose word processing station.
  • Such a word processing station would have the capability of revising entered materials as by changing words, relocating sections or blocks of information, automatically determining line endings, changing page sizes, and performing others of the many features now generally standard of which may be developed in the future.
  • the subject invention is one feature which can exist essentially separate from the other features, as it functions to permit entry of words by the typist in a shortened time. This description will show only that subject matter which is directly related to this invention, it being understood, as just indicated, that typically this invention would be one feature of a word processing station having many diverse features to facilitate word processing and associated formatting and the like.
  • Fig. 1 is a block diagram illustrating an overall system incorporating the subject invention.
  • the inventive system includes an input unit, the keyboard 10, for a CPU orprocessor20.
  • the processor 20 is implemented by a minicomputer which is more completely described in U.S. Patent 4,170,414.
  • the processor also is arranged to control the printer 21 and a replaceable media recorder 22 (such as magnetic tape, card or disc).
  • the system has a text random access memory (RAM) 24 in connection with the processor on a data/control bus 26 also connected to processor 20.
  • RAM text random access memory
  • a data/control bus 26 On bus 26 is a cathode ray tube (CRT) controller 27, which has control logic to achieve display.
  • Text RAM 24 and controller27 are connected on a data/control bus 28 to character generator 30 and through character generator 30 through logic 32 to a cathode ray tube display 34. It is the cathode ray tube display 34 upon which the words appear at rapid speed as the operator types, although it would be possible to replace the cathode ray tube 34 with a device to print immediately.
  • data displayed on cathode ray tube 34 is stored in memory 24 under control of processor 20 and is subsequently printed in permanent form after the operator is satisfied with its final form.
  • Printing is by standard data processing techniques by which the data is taken from memory 24 and used to control a standard printer 21 of some type, such as a standard impact printer similar to a typewriter.
  • keyboard 10 is essentially a standard typewriter keyboard augmented with outside keys as will be described.
  • the operator is charged with knowing the abbreviations. No abbreviation is identical with a word of the language being written (here illustrated as English). Where a word is entered which does not conform with any abbreviation in the data processing memory, that word is output in the form entered as the full word. Entries longer than the abbreviation form are also output as entered. Accordingly, in a system in which a two-letter abbreviation is being employed, entry of three letters such as "the” would result in "the” being printed. Similarly, entry of "an” followed by a space would result in "an” being printed since that would not be in the abbreviation dictionary in memory because it is in itself a standard word and therefore is not used as an abbreviation.
  • the information in the dictionary is that of meaning or substance and has no variable information regarding capitalization, underline or other matters of form.
  • a word which must be capitalized is stored with the capitalization as part of the stored information.
  • the word may be displayed as partial or all capitalized, underlined and in other special forms such as different color print or type font (color of print not being illustrated in the "Entry and Display” list above).
  • a word from the memory dictionary is to be all in the special form, such as all capitalized
  • all words of the abbreviation are entered in that special form. For example the first entry in the list is "treasury" which is to be all capitalized.
  • an entry “SCHS” is an abbreviation which is displayed as the word “schedules.”
  • the "s” as a final term in that abbreviation is one of several predesignated suffix abbreviations.
  • the dictionary has two or more parts to provide for suffixes.
  • Suffix endings in an abbreviation are shown in the foregoing dictionary column as subject matter past a hyphen. Another example appears in the listing for the word "accordingly”.
  • the abbreviation for the root word, "accord" is two letters "ac”.
  • punctuation marks are not processed as part of an abbreviation, and the space which terminates each abbreviation is entered in final text after the corresponding full word.
  • a punctuation mark is desired instead, such as the period after "accordingly", the last word of the foregoing sample document, a backspace entry will be made followed by the entry of the period.
  • exceptional changes within an abbreviated word such as a single underline or capital in the middle, are made by first entering the abbreviation. When the full word is produced in final text, backspaces are entered to the point to be changed and the character in the form desired is entered. It will be clear that certain special cases could be provided for by the automatic data handling sequence if desired.
  • Fig. 2 shows the keyboard 10 with special emphasis on the keys particularly important with respect to description and application of this invention.
  • Keyboard 10 has an underscore key 40 which inserts an underscore at the point of printing with each depression of key 40. The point of printing is designated by a cursor, as will be more fully discussed.
  • Keyboard 10 has a backspace key 42 which effects a backspace of one character for each operation of key 42. Once again, this backspace has reference to the cursor, as will be described.
  • Keyboard 10 has two shift keys 44, as is common on typewriter keyboards, and similarly has a space bar 46, also as is common on typewriter keyboards. The remaining keys in the central part of the keyboard are essentially identical to those of standard typewriter keyboards and the like.
  • alternate color key 48 On the left as set alternate color key 48 and a restore alternate color key 50.
  • a signal is, created or recognized in the system as will be described to call for final printing to be in a color, often red, other than a standard color, usually black.
  • alternate font key 52 also on the left of the main bank of keyboard keys is set alternate font key 52 and restore alternate font key 54.
  • the alternate font key 52 creates a unique code recognized in the system as calling for printing in a font, such as italics, different from the standard printing font, which typically is a less stylized form common in books and newspapers.
  • the system reacts immediately and at electronic speeds to recognize the abbreviation for "treasury" and to recognize that the form is to appear as all capitalized and all underlined including the space after the Y.
  • the display of that full word in that form appears almost immediately on the screen of the cathode ray tube 34, with the cursor positioned immediately past the underlined space.
  • the operator still having the shift key 44 depressed, then keys the S, the C, the H and the S of the abbreviation for "schedules", and then operates backspace key 42 four times, bring the cursor over the S.
  • the typist then keys the underscore key four times, once under the S, once underthe C, once under the H, and once under the S.
  • the typist then depresses space bar 46.
  • the data processor 20 translates BLN into the word "billion”, underlined and all in capitals with the next space not underlined.
  • shift key 44 depresses shift key 44 and types the word of "WALL” followed by four operations of backspace, key 42 and five operations of underline key 40. This is not an abbreviation and is displayed as it is entered "STREET” is entered as its abbreviation STR, all underlined followed by the space code. The full word “street” all in capitals and underlined with the space following underlined is displayed. JNL is then entered and the J is underlined, followed the keying of space bar 46 three times. The full word “journal” all in capitals and with the characters only underlined followed by a non-underlined space, is displayed.
  • the final point of display of information as it is being entered is indicated on CRT 34 by a visual pointer, known generally as the cursor.
  • a cursor Such use of a cursor in graphic information processing is entirely standard and conventional. Entries from keyboard 10 are entered into information in memory 24 at the point designated by the cursor. Usually the cursor is positioned after the last entry of information. Where some erasure is desired, the backspacing operation by backspace key 42 may be conducted. This relocates the cursor into text. At that point, the entry from keyboard 10 of new character information would be read into memory at the point designated by the cursor, with the prior code in memory at that point simply being eliminated or modified as appropriate.
  • the prior code designating the character or other symbol is not destroyed. Instead one bit position in a multi-bit data-processing code designating a character is set from zero to one or vice versa in accordance with a predetermined scheme. That one bit position is reserved to define the underline status of the character defined by other bits of the code.
  • the data-processing code is thereby tagged as an underlined character to the electronic data processing equipment.
  • the cursor may be backspaced to any point and the underline key then depressed again and again. The cursor is moved forward one character place with each depression of the key, as is standard.
  • Each code representative of the symbol or space at which the cursor is situated is modified at that one bit position to designate the same information as being underlined.
  • the information is to be in alternate color or in alternate font
  • this is signalled to the data processing equipment prior to the typing of the content involved by using the set alternate color key 48 and the set alternate font key 52.
  • subsequent entry information from keyboard 10 creates the code indicative of the entered information with a bit position of the data-processing word reserved for the alternate color key (when key 48 was operated) and another bit position reserved for the alternate font information (when key 52 was operated) set from zero to one or vice versa in accordance with a predetermined scheme.
  • the data-processing code for each character is thereby tagged as a character in alternate color, in alternate font, or both if both keys 48 and 52 have been operated.
  • the restore alternate color key 50 and the restore alternate font key 54 are operated to terminate the corresponding form of display. Subsequently, a character entered from the keyboard 10 is entered in a data-processing code for the character information which has the bit position designating alternate color or alternate font in the opposite state from that when the alternate color or alternate font respectively was designated.
  • processor 20 defines the last character entered of a series of characters which may be an abbreviation. Although this could be accomplished in any of a variety of standard techniques, the one employed uses an index register which is set to the location of the start of information after a space code which terminates the possibility of prior information being an abbreviation.
  • the difference between the current entry point and the entry point at the start of a possible abbreviation defines the sequence of characters which may be an abbreviation and is treated separately in the data processing manipulations as an abbreviation queue. This same information is not treated separately by the system with respect to the display, and the display includes the abbreviation information.
  • Fig. 3 shows the sequence for any keyboard entry.
  • the diagrams are essentially conventional step-by- step or logical flow diagrams for major operations which are carried out by at high speeds with internal operations which are now well within standard data-processing capabilities.
  • an oval indicates the start or the end of a sequence
  • a rectangle indicates an action taken
  • a diamond indicates a logical decision the result of which may be yes or no.
  • any line exiting horizontally results from a yes decision and any line exiting vertically results from a no decision from the question represented by the diamond.
  • the letter K in the drawing represents any key entry.
  • the checkered space symbol represents a space code, such as from space bar 46 of keyboard 10.
  • An arrow to the left represents a backspace entry from key 42.
  • a square represents a cursor, and when a symbol appears in or next to the cursor, that indicates the position of the cursor with respect to the data corresponding to the symbol.
  • the underline symbol represents the underline.
  • C represents any character or graphic symbol.
  • a rainbow like figure represents the alternate color, and the stylized I is tended to represent the alternate font, as it is suggestive of italics.
  • the upward arrow represents a shift to upper case from keys 44, as distinguished from a shift to lower case, which is represented by downward pointed arrow.
  • the small symbol in the form of a pennant represents the setting of a status flag in electronic data processor 20.
  • a flag in electronic data processing is, of course, the setting of a memory or register condition or the like which can be examined by data processing logic for the existence of the condition being in a set or unset condition, the system then following a sequence of steps dictated by a predetermined data-handling sequence when the status is as found. Finally, the clearing of memory and flags is symbolized by the horizontal line across the top of the symbol of that being cleared. This is selected because such a symbolism is often used to indicate "not” in graphic languages.
  • Oval 60 in Fig. 3 has a K in the center, indicating that the sequence is the keystroke sequence.
  • the code for the keystroke is entered into a keystroke buffer 62, which is simply electronic memory designated to hold the code from a keystroke entry from keyboard 10 until further processed as will be described. Normally, buffer 62 is not cleared until the next subsequent keystroke entry.
  • the contents of buffer 62 are examined in decision 64 to determine whether those contents represent a space code. If the answer of decision 64 is yes, the system moves immediately to the keystroke sequence 66, shown in Fig. 6 and discussed in detail subsequentially. Where the contents of the buffer 62 are not a space code, the sequence moves to decision 67 and examines the contents of buffer 62 to determine if those contents are a backspace code. If the answer of that decision is yes, the cursor is moved one character back, and all logic and associated electronics of processor 20 also are readjusted to reflect the new position of the cursor. This movement of the cursor is indicated in action rectangle 68. The sequence is then terminated, as indicated by the oval 65 with an internal cross.
  • keystroke buffer 62 If the contents of keystroke buffer 62 do not represent underscore, the sequence moves to character decision 71. At that step, the contents of keystroke buffer 62 are examined to determine that they represent a text entry or character, as distinguished from a format entry such as tabulation or line return. If the contents of the keystroke buffer 62 do represent a character, the sequence moves to the character sequence 72 shown in Fig. 4 and discussed in detail subsequently.
  • keystroke buffer 62 If the contents of keystroke buffer 62 do not represent a character, the sequence moves to the special color decision 74. If the contents of keystroke buffer 62 do represent the special color input, generated by the operation of the select alternate color key 48, the sequence moves to the set-alternate-color-flag action 76 and terminates, indicated by the oval 78 with an internal cross.
  • the sequence moves onto the alternate font decision 80, at which it examines the contents of keystroke buffer 62 to determine if they are of the code generated by operation of the alternate font key 52. If the answer is yes, the alternate, the alternate font flag is set at action 82 and the sequence is terminated, indicated by oval 84 with an internal cross.
  • keystroke buffer 62 If the contents of keystroke buffer are not found to be the alternate font code, the sequence moves to the up-shift decision 86.
  • the contents of keystroke buffer 62 are examined to determine if they are the up-shift code. If so, the sequence moves to set-up-shift-flag action 88 and then terminates, illustrated by oval 90 with an internal cross.
  • keystroke buffer 62 If the contents of keystroke buffer 62 are not the up-shift code, the system moves on to restore- alternate-color decision 92.
  • the contents of keystroke buffer 62 are examined to determine if they are the code generated by the restore alternate color key 50. If that is so, the alternate color flag is cleared at action 94, this being indicated by the horizontal line across the top. After the flag is cleared, the sequence is terminated, as indicated by the oval 96 with an internal cross.
  • keystroke buffer 62 If the contents of keystroke buffer 62 are not the restore alternate color code, the sequence moves to compare those contents with the restore alternate font code at decision 98. Contents of keystroke buffer 62 are examined to determine if they are the code generated by the restore alternate font key 54. If this comparison shows that the contents of keystroke buffer 62 are the restore alternate font code, the system moves to action 100 in which the alternate font flag is cleared. The sequence is then terminated, as indicated by the oval 102 with an internal cross.
  • keystroke buffer 62 If the contents of keystroke buffer 62 are not the restore alternate font code, the system moves on to down shift decision 104. If the contents of keystroke buffer 62 are found to be the down-shift code, the system moves to action 106 in which the flag for up-shift is cleared. The sequence is then terminated, as indicated by the oval 108 with the internal cross.
  • the system then moves on to decision 110 in which the code in keystroke buffer 62 is examined for any other appropriate function, such as tabulate and line return. If such other function is called for, the system moves to action 112 in which the function is performed and then terminates, as indicated by oval 114 with an internal cross. If the decision 110 shows no other function to be performed, then the sequence terminates, as indicated by the oval 116 with an internal cross.
  • decision 110 in which the code in keystroke buffer 62 is examined for any other appropriate function, such as tabulate and line return. If such other function is called for, the system moves to action 112 in which the function is performed and then terminates, as indicated by oval 114 with an internal cross. If the decision 110 shows no other function to be performed, then the sequence terminates, as indicated by the oval 116 with an internal cross.
  • the system moves to action 122 at which the alternate color bit of the data processing keystroke buffer 62 is set to associate the alternate color attribute with the code for the character depressed.
  • the system then moves back to decision 124, which is reached either directly when the alternate color flag is not set or is reached after the action 122 when the alternate color flag is set.
  • Decision 124 determines whether the alternate font flag is set. If that decision is yes, the system moves to action 126 at which the code in keystroke buffer 62 has the predesignated bit set which represents alternate font, thereby associating this attribute directly with the code in keystroke buffer 62. The sequence then moves to decision 128. Decision 128 is entered immediately when decision 124 shows that the alternate font flag is not set or is entered after the alternate font bit is set by action 126.
  • the up-shift flag is examined to determine if it is set. If so, the sequence moves to action 130, at which a predesignated bit representative of the up-shift is set in keystroke buffer 62, thereby directly associating the upshift attribute with the code in keystroke buffer 62. If the up-shift flag is not set, the sequence moves directly to decision 132. If the up-shift flag was set, the sequence moves to decision 132 after the action 130.
  • Decision 132 examines the abbreviation queue flag to determine if it is set. This flag is set, as will be described, when the contents of the queue representative of characters recently entered have been examined by the system in a manner which establishes that these characters cannot be an abbreviation to which the system responds.
  • RAM is used as an abbreviation for the parts of memory 24 which are used as general purpose memory for the final form of the document rather than for some specific purpose related to the unique abbreviation features here being described.
  • the designation "RAM” is selected as it suggests the common usage with regard to type of memory employed, since "RAM” is a common abbreviation for random access memory.
  • decision 132 is no and the sequence moves to decision 134, at which the number of characters in the abbreviation queue is examined to determine if that number is exactly three. If the answer to decision 134 is yes, the sequence moves to decision 136 at which the contents of keystroke buffer 62 are examined to determine if they represent a character which is one of the characters used as a suffix abbreviation. In this preferred form all abbreviations, save abbreviations having a suffix are of three characters or less. No abbreviation is more than four characters.
  • the next character establishes that the entry will not be an abbreviation if the next character is not one of the limited number of characters which represents a suffix abbreviation. Accordingly, when the decision 136 is no, the present input is established as not being an abbreviation and the sequence moves to action 138, the setting of the abbreviation queue flag.
  • action 138 When action 138 is taken, the system moves to transfer the contents of the abbreviation queue to the status of being general information in memory, action 140.
  • this is implemented by designating the abbreviation queue with stored addresses or pointers locating areas in memory. Accordingly, no actual physical transfer of characters in the abbreviation queue to a different place in memory 24 is required at action 140. Instead, the rear pointer is changed to designate the point immediately past the last character entry. In a more generalized case, however, a hardware implementation or other physical transfer may be appropriate.
  • the contents of buffer 62 are entered in general memory in action 133.
  • decision 142 the characters in the abbreviation queue are examined to determine if they are greater than three in number. Since the system is designed on the constraint that all abbreviations will be no more than four characters, this status indicates that the character cannot be an abbreviation, and accordingly, a yes answer at decision 142 calls out action 138, the setting of the abbreviation queue flag.
  • the entered character may be part of an abbreviation, and accordingly, the sequence moves to action 144, at which the character in keystroke buffer 62 is simply entered as the next character in the abbreviation queue. Subsequent to that, action 135 takes place at which the cursor is moved one character space to the right. The sequence terminates after that cursor movement, as indicated by oval 146 with an internal cross.
  • Fig. 5 illustrate the sequence 70 for entry of an underscore code by underscore key 40 of keyboard 10.
  • the sequence first makes decision 150 to determine if the abbreviation queue flag is set. If the abbreviation queue flag is set, the sequence moves to decision 152 at which the cursor position is examined to determine of the cursor is over a character. If the cursor is over a character, code representing the underscored character is moved into general document memory by action 154. This movement is directly into document memory because the sequence is dependent upon the abbreviation queue flag being set and accordingly, it is known that the entry does not refer to an abbreviation.
  • action 160 is the entry of a code for space with underscore in the document memory.
  • the sequence then moves after either action 154 or action 160 to action 162, which moves the cursor one character position to the right.
  • Resetting of the abbreviation queue flag and clearing the abbreviation queue where the underscore is entered under the blank is consistent with the design approach of this system that a space, including an underscored space, represents the end of a possible code entry. An underscored space is therefore a point at which the start of a possible new abbreviation is begun.
  • decision 150 finds the abbreviation queue flag not set, the system moves to decision 164, which examines the abbreviation queue to determine if it is cleared. If it is cleared, the system moves to decision 152 and moves from that point as previously described. If the abbreviation queue is not cleared, the sequence moves to decision 166 at which the cursor position is examined to determine if it is over a character. If the cursor is at a character, the sequence moves to action 168 at which the character designated by the cursor is modified to include the bit representative of underscore at the predetermined status indicating that the character is to be displayed underscored. After this action the cursor is moved forward in action 162. After action 162 the sequence is terminated, as indicated by oval 169 with an internal cross. Had the decision 166 found the cursor was not over a character, then the underscored space sequence 170, is begun, as will be discussed in connection with Fig. 6.
  • the space sequence 66 is illustrated in Fig. 6. As there shown, the underscored space sequence 170 can originate part of that sequence and bypasses certain parts of it which occur from the normal space entry 66.
  • the sequence moves to decision 180, which determines if the abbreviation queue flag is set. If the abbreviation queue flag is set, the sequence moves to action 182, at which the abbreviation queue is cleared. After action 182, the sequence moves to decision 184, at which it determines whether the cursor is over a character. If that decision is yes, the system moves to action 186 in which the cursor is simply moved right one character space.
  • This action is uniquely associated with the purposes of the cursor in that one manner of positioning the cursor is by use of the space bar 46 to move the cursor rightwardly and by the backspace key 42 to move the cursor leftwardly. Accordingly, where the cursor is over text, the desired function in response to space bar 46 is simply the movement of the cursor.
  • decision 188 determines if the abbreviation queue is cleared or if the cursor is over a character. In either case the entry of the space code could not be related to an abbreviation in this specific form of implementation.
  • decision 184 determines whether the cursor is over a character. Even though the abbreviation queue is not cleared, a space code with the cursor at a character does not designate a possible end of an abbreviation. Instead, action 186 is effected, the movement of the cursor one character space.
  • decision 188 When decision 188 is no, the sequence moves to decision 190 in which the contents of the abbreviation queue are compared with the dictionary in memory, abbreviated in the diagram as DRAM. Underscored space sequence 170 also initiates decision 190. If this decision shows a match, the sequence moves to abbreviation sequence 192. If the decision 190 does not establish a match, the sequence moves to action 191, at which the contents of the abbreviation queue are moved into the document memory. This reflects the fact that the entry of the space code always terminates the consideration of an abbreviation and the starting of a possible new abbreviation, and, accordingly, that material entered between space codes and not an abbreviation should be acted on as ordinary information.
  • the contents of the abbreviation queue may not need to be moved at all, but need only be recognized in the system as not now a part of a potential abbreviation.
  • the abbreviation queue is cleared at action 194. The sequence then moves to decision 198.
  • Decision 198 also may be reached from decision 184, discussed above.
  • Decision 184 is no when the entry is not an abbreviation and a space code is being entered at a point at which the cursor is not over a character. This is indicative of the entry of a space which is to appear as a space rather than simply move the cursor. Accordingly, action 196 is taken, in which the abbreviation queue flag is cleared, providing for subsequent entries to be recognized as entries in a possible abbreviation.
  • the sequence then moves to decision 198 in which it is determined whether keystroke buffer 62 contains an underscore status bit, as it would if the sequence of Fig. 6 is entered by underscored space sequence 170. (Buffer 62 would not contain the code for space when the entry is an underscore over blank.) If decision 198 is yes, the sequence move to action 200, in which the code for space with the bit designating underscore set is entered in document memory.
  • the abbreviation sequence 192 is shown in Fig. 7.
  • the sequence first takes the action of comparing the abbreviation queue information with that in the dictionary memory, shown symbolized in action 210 as DRAM, and then transferring the code for the full word to a buffer memory, symbolized in action 210 by BRAM. After that action, the sequence proceeds to decision 212 in which the abbreviation queue is observed for an underline under the first character. If that decision is yes, the sequence moves to the abbreviation underline sequence 214 shown in Fig. 8. At the termination 216 of that sequence, the sequence of Fig. 7 is reentered prior to decision 218.
  • Decision 218 therefore may be reached by the decision 212 for first character underline being no or by the termination 216 of the abbreviation underline sequence.
  • Decision 218 observes the characters in the abbreviation queue for an up shift in the first character. If the answer is yes, the sequence proceeds to abbreviation upshift sequence 220, shown in Fig. 9. The abbreviation sequence is reentered at the termination 222 of abbreviation upshift sequence 220.
  • decision 224 The next decision, decision 224, .is entered either from decision 218 being no or from the termination 22.
  • Decision 224 observes the characters in the abbreviation queue for an alternate color designation in the first character. If the decision is yes, the sequence proceeds to alternate color sequence 226, shown in Fig. 10. The termination 228 of the abbreviation alternate-color sequence 226 reenters the abbreviation sequence prior to decision 230.
  • Decision 230 is thereby entered either by the prior decision, decision 224, being no or by the termination 228 of the abbreviation alternate-color sequence 226.
  • Decision 230 is the first- character-special-font decision. If decision 230 is yes, the sequence enters the abbreviation special font sequence 232 shown in Fig. 11. The termination 234 of that sequence enters the abbreviation sequence of Fig. 7 prior to the next step, which is action 236, transfer of the buffer memory contents into document memory.
  • keystroke buffer 62 After action 236, the contents of keystroke buffer 62 are examined in decision 240 to determine if they contain the code indicating underline. If the answer is yes, action 244 is taken, in which a code for space with underscore is entered in document memory. If decision 240 is no, a normal space code is added at action 242. These space codes correspond to the space code which necessarily had been entered because all abbreviation sequences end with a space code. The cursor is moved past that terminating space in action 246 and the sequence is terminated, as indicated by oval 248 with an internal cross.
  • Fig. 8 illustrates the abbreviation underline sequence 214.
  • the first step in the sequence is decision 250 in which the characters in the abbreviation queue are examined to determine if more than one carry the underline status information. If the answer to decision 250 is yes, the sequence proceeds to action 252, in which all the character codes for each character in buffer memory are modified to carry a status showing underline and then to action 253 in which the underscore bit in keystroke buffer 62 is set to designate underscore. (As is clear from the prior description with respect to Fig.
  • action 253 will cause the next following space code after the word in the buffer memory to have its status bit corresponding to underline to be set to indicate underline.) If the answer to decision 250 is no, the sequence proceeds to action 254 only, in which all of the characters in the buffer memory are modified to carry a status showing underline. The sequence is terminated at oval 216 after either action 254 or action 253.
  • the abbreviation upshift sequence 220 is shown in Fig. 9.
  • the first step in the sequence is decision 260, in which the characters in the abbreviation queue are examined to determine if more than one carry the upshift status information. If the answer to decision 260 is yes, the sequence proceeds to action 262 in which the character code for each character in buffer memory is modified so that the status bit corresponding to up shift is set to indicate up shift. If the answer to decision 260 is no, the sequence proceeds to action 264 in which only the first character of the characters in the buffer memory is modified to carry a status showing up shift. The sequence is terminated at oval 222 after either action 264 or action 262.
  • the abbreviation alternate-color sequence 266 is shown in Fig. 10.
  • the first action is decision 270 in which the characters in the abbreviation queue are observed to determine if more than one carry the status bit indicative of alternative color. If the decision 270 is yes, the sequence proceeds to action 272 in which all of the characters in the buffer memory are modified to carry the status bit for alternative color in the state indicating alternative color. If the answer to decision 270 is no, the sequence proceeds to action 274 in which only the first character in the buffer memory is modified to carry the status bit entered for alternative color in the state indicating alternative color. The sequence is terminated at oval 228 after either action 274 or action 272.
  • the sequence for abbreviations alternative-font 232 is shown in Fig. 11.
  • the first step is the observation of the characters in abbreviation queue at decision 280 to determine if more than one carry the status bit for alternative font in a status indicating that the alternative font is selected. If the anaswer is yes, the sequence proceeds to action 282 in which all the characters in the buffer memory are modified to show a yes status for the alternative font. If the answer to decision 280 is no, the sequence proceeds to action 284 in which only first character in the buffer memory is modified to carry the alternative font status as positive. The sequence is terminated at oval 234 after either action 284 or action 282.

Description

    Technical field
  • This invention relates to word processing with the aid of information-handling equipment, particularly electronic data processing equipment. Abrreviated typing is known in which the typist enters special codes of limited size into the keyboard and in which the information handling equipment displays or prints the longer form recognized from the code. This permits an increase in the speed of typing or similar message preparation.
  • In such an abbreviated typing system, messages may require special forms such as entirely capitalized words, change in type font, underlining of given parts, change in color of the printing, or other characteristics of display in which the content is essentially identical but the form of display differs. This invention is directed to providing efficient and practical means to achieve such special displays while retaining the advantages of abbreviated typing.
  • Background art
  • Word processing employing highly versatile, electronic data processing equipment is now generally conventional in the word processing art. Abbreviation typing employing such information-handling equipment is less common but is known generally in the prior art. IBM Technical Diclosure Bulletin article entitled "Word Generation System for Typist", by A. Arellano and H. Marcar, Vol. 17, No. 8 (Jn. 1975), at pp. 2422-2423 describes a system in which the information-handling equipment generates final portions of a word or phrase after the typist generates the first letters. The typist types words in their ordinary form while a data processing dictionary translates the letters as they are entered into longer complete words. When a full dictionary word is recognized, there is a tone signal, and a typist may terminate typing with a key operation which selects the full word from the dictionary.
  • IBM Technical Disclosure Bulletin article entitled "Abbreviated Typing for Word Procs- sing" by S. J. P. Todd, Vol. 21, No. 9 (Feb. 1979) at pp. 3796-3797 describes such a typing system in which all entered words have a short form achieved by leaving out vowels and adjacent identical letters. As the typist enters the short form, a long form is automatically printed when the information handling equipment determines that the entry is an abbreviation for a single word in the machine dictionary. That system comprises a keyboard, a screen, a central processing unit, and a disc storage. Each character entered on the keyboard is displayed on the screen immediately, but by operation of the central processing unit may later be removed by replacing an abbreviation with a full word corresponding to the abbreviation. A dictionary of full words corresponding to abbreviations is stored on the magnetic disc and scanned and compared with an entered abbreviation by the data processing system.
  • Stenographic transciption is disclosed in U.S. patent 3,557,927 to Wright et al. That system employs a standard shorthand machine which produces abbreviated configurations for words represented by special key inputs. These abbreviated signals are transformed into electrical signals and supplied to a electronic computer. This machine has the now-standard electronic capabilities of manipulating the data at rapid speed. The computer translates the abbreviated shorthand signals into grammatical words.
  • As illustrated by the foregoing cited prior art, abbreviated typing is generally known in various forms. None of this known prior art, however, addresses the question of employing abbreviated typing to display the final characters in special form, such as in capitals or in all italics. So far as appears, no capability to display in special form is provided by the prior systems of abbreviated typing. The Arellano publication mentioned above, shows the input Ame completed by dictionary look-up to the work American, but does not suggest the alternative where an entire lower case ame would appear as an entire lower case output from the dictionnary. Similarly that article shows an input of FRB being converted by the dictionary to Federal Reserve Board, but does not suggest what the output would be had the input been in lower case.
  • IBM Technical Disclosure Bulletin article entitled "Method for Capitalization Checking During Spelling Verification,", by D. A. Hamilton et al, Vol. 22 No. 12 (May 1980) at p. 5240 teaches an information handling system for word processing in which input words are checked for proper spelling. That teaches a dictionary in data processing memory in which spelling checking is achieved by words in the dictionary which represent the alphabetic characters in lower case except for characters which must be in upper case in order for the word to be correct. (For example, in a proper name such as "Robert" the capital "R" must be in upper case.) Words entered are compared with words in the dictionary, including comparisons of characters as being upper case or lower case according to certain rules, and entered words are verified or not verified in accordance with those rules. This achieves a verification of proper capitalization and is not directed to a system in which the entered characters are fewer in number than the characters of the final words output.
  • GB-A-2,073,927 discloses a method of operating a word processor wherein at least two input signals representing characters are compared against a list of abbreviations each corresponding to a full word, and in which the corresponding full word is substituted in the output, text created for each abbreviation in the input. In this document, however, special keys must be actuated after striking the character keys, to initiate the operations which result in the printing of the full words and further, the system does not have the capability to display the final characters in special forms.
  • Disclosure of the invention
  • The present invention provides a method of operating an abbreviated typing system, of the type disclosed in GB-A-2,073,927 i.e. a method which has the system transfer typed abbreviations comprising at least two separate characters, into full words, the said system being of the type including a keyboard with a space bar, and character keys a keystroke buffer and an abbreviation queue information memory for storing the codes representative of the typed characters, a dictionary memory containing a list of abbreviations and a list of corresponding full words, a buffer memory, display means for displaying the characters, and a processor connected to all said afore mentioned means to control operation thereof and process information therefrom and to control the transfer of information, said method including the following steps:
    • a) Storing in said keystroke buffer and in said abbreviation queue information memory, under the control of said processor and in response to actuation of any one of said character keys, the code representative of the character associated with said any one key;
    • b) Comparing, in response to entry of said at least two, separate characters into said abbreviation queue information memory, the contents of said information queue information memory and the contents of said list of abbreviations in said dictionary memory;
    • c) Transferring to said buffer memory, in response to a match between the contents of said abbreviation queue information memory and an abbreviation in said list of abbreviations, the full word corresponding with said abbreviation;
      said method being characterized in that:
      said abbreviations can be transferred into full words with characters in normal form or in special form, depending upon the forms of the characters in said abbreviations;
      the information in the dictionary memory is that of meaning or substance and is not variable regarding said special form;
      said method being further characterized by the following steps:
    • d) Observing, under the control of said processor said abbreviation queue information for characters in a special form;
    • e) Determining whether the number of special form characters in the abbreviation queue is equal to 0, equal to a predetermined number, or less than said predetermined number;
    • f) In response to determining in step e) that the number of special form characters is equal to 0, transferring the full word in said buffer memory to said display means for display of said full word in said normal form, and clearing said abbreviation queue information memory,
  • In response to determining in step e) that the number of special form characters is equal to said predetermined number, modifying under the control of said processor the codes for all characters of the full word in said buffer memory so that these codes will carry a status representative of the special form observed in step d), transferring the modified full word from said buffer memory to said display means, and clearing said abbreviation queue information memory,
  • In response to determining in step e) that the number of special form characters is less than said predetermined number, modifying, under the control of said processor, the code for only the first character of the full word in said buffer memory so that this dose will carry a status representative of the special form observed in step d), transferring the modified full word from said buffer memory to said display means, and clearing said abbreviation queue information memory.
  • Brief description of the drawings
  • The details of this invention will be described in connection with the accompanying drawing, in which:
    • Fig. 1 illustrates the overall apparatus involved;
    • Fig. 2 illustrates the keyboard;
    • Fig. 3 illustrates the sequence from a key entry;
    • Fig. 4 illustrates the part of the sequence when the entry is a character;
    • Fig. 5 illustrates the part of the sequence when the entry is an underscore;
    • Fig. 6 illustrates the part of the sequence when the entry is a space;
    • Fig. 7 illustrates the part of the entry when an abbreviation is recognized;
    • Fig. 8 illustrates the part of the abbreviation response for underline;
    • Fig. 9 illustrates the part of the abbreviation response for up shift;
    • Fig. 10 illustrates the part of the abbreviation response for alternate color; and
    • Fig. 11 illustrates the part of the abbreviation response for alternate font.
    Best mode for carrying out the invention
  • It should be understood that the subject matter of this invention would typically constitute one feature of a more general purpose word processing station. Such a word processing station would have the capability of revising entered materials as by changing words, relocating sections or blocks of information, automatically determining line endings, changing page sizes, and performing others of the many features now generally standard of which may be developed in the future. The subject invention is one feature which can exist essentially separate from the other features, as it functions to permit entry of words by the typist in a shortened time. This description will show only that subject matter which is directly related to this invention, it being understood, as just indicated, that typically this invention would be one feature of a word processing station having many diverse features to facilitate word processing and associated formatting and the like.
  • Reference is made to Fig. 1 which is a block diagram illustrating an overall system incorporating the subject invention. The inventive system includes an input unit, the keyboard 10, for a CPU orprocessor20. In an embodiment which has been constructed, the processor 20 is implemented by a minicomputer which is more completely described in U.S. Patent 4,170,414. Those skilled in the art will understand, of course, that the use of this particular processor is not essential to or is not a feature of the invention. As is shown in Fig. 1, the processor also is arranged to control the printer 21 and a replaceable media recorder 22 (such as magnetic tape, card or disc). These devices are not shown or described in detail in this application, since, while they provide important capabilities to the overall system, they are, of themselves, conventional as is their association with the processor 20.
  • As shown in Fig. 1, the system has a text random access memory (RAM) 24 in connection with the processor on a data/control bus 26 also connected to processor 20. On bus 26 is a cathode ray tube (CRT) controller 27, which has control logic to achieve display. Text RAM 24 and controller27 are connected on a data/control bus 28 to character generator 30 and through character generator 30 through logic 32 to a cathode ray tube display 34. It is the cathode ray tube display 34 upon which the words appear at rapid speed as the operator types, although it would be possible to replace the cathode ray tube 34 with a device to print immediately. In this preferred system, however, data displayed on cathode ray tube 34 is stored in memory 24 under control of processor 20 and is subsequently printed in permanent form after the operator is satisfied with its final form. Printing is by standard data processing techniques by which the data is taken from memory 24 and used to control a standard printer 21 of some type, such as a standard impact printer similar to a typewriter.
  • For the purposes of this invention keyboard 10 is essentially a standard typewriter keyboard augmented with outside keys as will be described. The operator is charged with knowing the abbreviations. No abbreviation is identical with a word of the language being written (here illustrated as English). Where a word is entered which does not conform with any abbreviation in the data processing memory, that word is output in the form entered as the full word. Entries longer than the abbreviation form are also output as entered. Accordingly, in a system in which a two-letter abbreviation is being employed, entry of three letters such as "the" would result in "the" being printed. Similarly, entry of "an" followed by a space would result in "an" being printed since that would not be in the abbreviation dictionary in memory because it is in itself a standard word and therefore is not used as an abbreviation.
  • The abbreviations and their translations in this preferred embodiment conform to the following:
    • 1. Each abbreviation consists of 4 or less symbols or alphabetic characters with termination of the abbreviation being by a space character.
    • 2. Abbreviations for full words which are to be printed in a special form are keyed in with at least part of the abbreviation in that form. Specifically, where the first part only of a word is to be in that form, the first character only of the abbreviation is keyed in that form. Where all of a word is to be in that form, the typist enters at least the first two letters of the abbreviation in that form.
    • 3. The content of each full word is the same regardless of what form is called out by changing the form of one or more characters of the abbreviation. Accordingly, the characters of an abbreviation, even though in different special form, always are translated to the same words, even though the characters may be capitalized or not capitalized and in different type styles of other special form. And,
    • 4. The corresponding full word may contain predesignated spaces, and, accordingly, grammatically be a phrase or a title. In the following example this is illustrated by "frb" being translated to "Federal Reserve Board."
  • The following, under the heading "Document", illustrates a document to be created by the typist with the skill to utilize this abbreviated typing feature.
  • Immediately following that, under the heading of "Entry and Display" is a partial list of keystrokes utilized by the typist to obtain a corresponding word from a dictionary in memory 24 of the data processing system. The entries shown in the left column of the listing are shown as they would appear as they are typed prior to the abbreviation being replaced with full word corresponding with the abbreviations. The middle column show the corresponding full word in theform displayed. The right column illustrates the information in the corresponding content of the dictionary memory.
  • Document TREASURY SCHEDULES SALES OF $4.5 BILLION IN NOTES NEXT WEEK
  • By a WALL STREET JOURNAL Staff Reporter WASHINGTON-The Treasury said it plans to raise about $1.63 billion in new cash Wednesday by selling $4.5 billion in two year notes to redeem $2.81 billion in maturing notes. Preliminary bids are to be made at the TREASURY or FEDERAL RESERVE BOARD accordingly.
    Figure imgb0001
  • As indicated by the content shown in the dictionary, the information in the dictionary is that of meaning or substance and has no variable information regarding capitalization, underline or other matters of form. A word which must be capitalized is stored with the capitalization as part of the stored information. When any word from the dictionary is displayed, the word may be displayed as partial or all capitalized, underlined and in other special forms such as different color print or type font (color of print not being illustrated in the "Entry and Display" list above). In the preferred form, as a convenience to the typist, where a word from the memory dictionary is to be all in the special form, such as all capitalized, all words of the abbreviation are entered in that special form. For example the first entry in the list is "treasury" which is to be all capitalized. As shown in the left hand column, all three letters of the abbreviation for treasury, which are "TRS," are entered from keyboard 10 as capitals. As will be clear later, the actual data handling of the system conveniently may search for only two of the members of the abbreviation in special form, and the fact that other members are in special form is essentially ignored by the data handling. As a special check for accuracy under certain purposes, the data handling could be designed to require all of an abbreviation to be in special form if all of the final word is to be in that form.
  • As shown in the foregoing listing, an entry "SCHS" is an abbreviation which is displayed as the word "schedules." The "s" as a final term in that abbreviation is one of several predesignated suffix abbreviations. The dictionary has two or more parts to provide for suffixes. At a typed entry of "SCH" followed by a space code entry, which is the required termination of an abbreviation. the display would have been "schedule" not the plural, "schedules." Suffix endings in an abbreviation are shown in the foregoing dictionary column as subject matter past a hyphen. Another example appears in the listing for the word "accordingly". The abbreviation for the root word, "accord", is two letters "ac". Had "ac" followed by a space been entered, the word displayed would have been "accord". Had the entry also included a "g", such that the entry was "acg" followed by a space, the suffix "ing" would have been recognized, g being the abbreviation suffix entry corresponding to ing, and the word "according" would have been displayed. The actual example shown in the list is the entry of "acgy", and the g in that entry corresponds to the ing suffix and the y is an abbreviation suffix for an ly ending. For that reason, the word displayed, as shown in the list, is "accordingly". Suffix abbreviations are generally the same for the same suffix, regardless of the root word, as an aid to the typist.
  • It should also be clear from the "Entry and Display" list that more than one special form may coexist in the use of this abbreviation system. Thus the word "reporter" is abbreviated by the three characters rpt. In the example shown the three characters are entered with the first character capitalized and all of the characters in italics. The dictionary simply has in memory the word "reporter" without a special designation for any special form. In accordance with this invention the fact that the first character is capitalized results in the first character of the full word being capitalized and the fact that more than one characters is in italics results in the full word "reporter" being in italics.
  • Finally, another aspect of the actual dictionary information in memory is indicated by the word "Wednesday" as shown in thid "Wednesday" as shown in the listing. It is entered with a small w, but the dictionary stored the full word with the first word capitalized. That is a convenience to the typist in that the word "Wednesday" should never appear uncapitalized and, accordingly, the form stored in the dictionary memory is that in which a capital attribute is associated with the w in the word, "Wednesday".
  • In the system described, punctuation marks are not processed as part of an abbreviation, and the space which terminates each abbreviation is entered in final text after the corresponding full word. Where a punctuation mark is desired instead, such as the period after "accordingly", the last word of the foregoing sample document, a backspace entry will be made followed by the entry of the period. Similarly, exceptional changes within an abbreviated word, such as a single underline or capital in the middle, are made by first entering the abbreviation. When the full word is produced in final text, backspaces are entered to the point to be changed and the character in the form desired is entered. It will be clear that certain special cases could be provided for by the automatic data handling sequence if desired. In particular, an entry of a punctuation mark as the last character of an abbreviation could be processed as a special suffix common to all abbreviations, which is retained in the final text. All corresponding full words would be displayed with the punctuation mark followed by one space.
  • Fig. 2 shows the keyboard 10 with special emphasis on the keys particularly important with respect to description and application of this invention. Keyboard 10 has an underscore key 40 which inserts an underscore at the point of printing with each depression of key 40. The point of printing is designated by a cursor, as will be more fully discussed. Keyboard 10 has a backspace key 42 which effects a backspace of one character for each operation of key 42. Once again, this backspace has reference to the cursor, as will be described. Keyboard 10 has two shift keys 44, as is common on typewriter keyboards, and similarly has a space bar 46, also as is common on typewriter keyboards. The remaining keys in the central part of the keyboard are essentially identical to those of standard typewriter keyboards and the like. On the left as set alternate color key 48 and a restore alternate color key 50. When the key 48 is set, a signal is, created or recognized in the system as will be described to call for final printing to be in a color, often red, other than a standard color, usually black. Similarly, also on the left of the main bank of keyboard keys is set alternate font key 52 and restore alternate font key 54. The alternate font key 52 creates a unique code recognized in the system as calling for printing in a font, such as italics, different from the standard printing font, which typically is a less stylized form common in books and newspapers.
  • Reference is made once again to the foregoing sample document to be typed, shown under the heading of "Document". The typist in an operative system makes entries on keyboard 10 as follows. After entering a line return or the like so as to start printing on the left, the operator depresses a shift key 44 and then types the characters TRS. As will be described, characters TRS will appear on the CRT display 34 with the cursor now situated over a space on an empty area immediately after the S. The operator then depresses backspace key 42 three separate times, thereby bringing the cursor over the T. At this point the operator depresses the underscore key three times thereby underscoring the word TRS and leaving the cursor over the blank area immediately past the S. At this point the operator depresses the space bar 46. If the system has a word underscore function, the above backspace and underscore sequence could be replaced by a single depression of a word underscore key.
  • The system reacts immediately and at electronic speeds to recognize the abbreviation for "treasury" and to recognize that the form is to appear as all capitalized and all underlined including the space after the Y. The display of that full word in that form appears almost immediately on the screen of the cathode ray tube 34, with the cursor positioned immediately past the underlined space.
  • The operator, still having the shift key 44 depressed, then keys the S, the C, the H and the S of the abbreviation for "schedules", and then operates backspace key 42 four times, bring the cursor over the S. The typist then keys the underscore key four times, once under the S, once underthe C, once under the H, and once under the S. The typist then depresses space bar 46.
  • Once again, at electronic speeds the abbreviation for "schedules" is recognized and that word all capitalized and all underlined with an underline in the space to the right of that word is produced and displayed on the cathode ray tube screen 34. The operator continues in this fashion through the first line. The abbreviation for billion is entered in the form "BLN", followed by backspacing and underlining under the B. The operator then keys space bar 46 three times, the first two of which are effective only to move a cursor as will be described.
  • At the third space entry the data processor 20 translates BLN into the word "billion", underlined and all in capitals with the next space not underlined.
  • The operator then keys the next line in the manner as just described to produce that line all capitalized and all underlined. The operator then keys a line return or the like to start a new line. At the start of the new line, the operator first depresses the alternate font key 52. This creates a unique code signal which will be acted upon by the data-handling equipment. The operator then depresses the shift key 44 and types the character b, the operator releases the shift key 44 and types the character y which appears as a lower case. The operator then depresses space bar 46 and depresses a and then once again depresses space bar 46. The operator then depresses the restore alternate font key 54 thereby causing the display to no longer be a special font of italics.
  • The operator then depresses shift key 44 and types the word of "WALL" followed by four operations of backspace, key 42 and five operations of underline key 40. This is not an abbreviation and is displayed as it is entered "STREET" is entered as its abbreviation STR, all underlined followed by the space code. The full word "street" all in capitals and underlined with the space following underlined is displayed. JNL is then entered and the J is underlined, followed the keying of space bar 46 three times. The full word "journal" all in capitals and with the characters only underlined followed by a non-underlined space, is displayed.
  • The operator once again depresses alternative font key 52. The operator then types the word "Staff" in full followed by a space, which is displayed as typed since it is not an abbreviation. The operator then depresses the shift key 44, types the letter r and releases the shift key 44 and types the letters pt, followed by operation of space bar 46. That is an abbreviation and the corresponding full word, "reporter", appears in the final text with the first letter capitalized and all in italics.
  • Typing is continued in the manner described. In the final line the operator recognizes the phrase "Federal Reserve Board" as one which is abbreviated in the dictionary memory. Since it is desired to have the full phrase all in capitals, the operator depresses shift key 44 and types the f, the r, the b while that key is depressed. The operator then depresses the space bar 46 and the data-handling equipment substitutes the full phrase "Federal Reserve Board" in all capitals for the abbreviation.
  • The details of extracting information from electronic memory 24, generating character graphic information in character generator 30, and displaying that information on CRT 34 using logic 32 will not be discussed as they are essentially conventional. As is conventional, the contents of the memory 24 are read in logical order. (The actual contents may be stored in various places in memory, but kept in the intended logical relationship by pointers and various addressing techniques of processor 20.)
  • The final point of display of information as it is being entered is indicated on CRT 34 by a visual pointer, known generally as the cursor. Such use of a cursor in graphic information processing is entirely standard and conventional. Entries from keyboard 10 are entered into information in memory 24 at the point designated by the cursor. Usually the cursor is positioned after the last entry of information. Where some erasure is desired, the backspacing operation by backspace key 42 may be conducted. This relocates the cursor into text. At that point, the entry from keyboard 10 of new character information would be read into memory at the point designated by the cursor, with the prior code in memory at that point simply being eliminated or modified as appropriate.
  • Where an underline is to be added in accordance with this invention, the prior code designating the character or other symbol is not destroyed. Instead one bit position in a multi-bit data-processing code designating a character is set from zero to one or vice versa in accordance with a predetermined scheme. That one bit position is reserved to define the underline status of the character defined by other bits of the code. The data-processing code is thereby tagged as an underlined character to the electronic data processing equipment. Similarly, the cursor may be backspaced to any point and the underline key then depressed again and again. The cursor is moved forward one character place with each depression of the key, as is standard. Each code representative of the symbol or space at which the cursor is situated is modified at that one bit position to designate the same information as being underlined.
  • Where the information is to be in alternate color or in alternate font, this is signalled to the data processing equipment prior to the typing of the content involved by using the set alternate color key 48 and the set alternate font key 52. After the keys 48 or 52 have been depressed subsequent entry information from keyboard 10 creates the code indicative of the entered information with a bit position of the data-processing word reserved for the alternate color key (when key 48 was operated) and another bit position reserved for the alternate font information (when key 52 was operated) set from zero to one or vice versa in accordance with a predetermined scheme. The data-processing code for each character is thereby tagged as a character in alternate color, in alternate font, or both if both keys 48 and 52 have been operated. When such an alternate form of display is to terminate, the restore alternate color key 50 and the restore alternate font key 54 are operated to terminate the corresponding form of display. Subsequently, a character entered from the keyboard 10 is entered in a data-processing code for the character information which has the bit position designating alternate color or alternate font in the opposite state from that when the alternate color or alternate font respectively was designated.
  • All information entered into the system from keyboard 10 is normally displayed on CRT 34 even though that information may subsequentially be substituted for a longer word. Information printed as output on printer 21 is the same information from memory 24 as is displayed on CRT 34 and typically is printed in identical form. In the general purpose data processing system employed, processor 20 defines the last character entered of a series of characters which may be an abbreviation. Although this could be accomplished in any of a variety of standard techniques, the one employed uses an index register which is set to the location of the start of information after a space code which terminates the possibility of prior information being an abbreviation. The difference between the current entry point and the entry point at the start of a possible abbreviation defines the sequence of characters which may be an abbreviation and is treated separately in the data processing manipulations as an abbreviation queue. This same information is not treated separately by the system with respect to the display, and the display includes the abbreviation information.
  • The remaining figures illustrate the basic operations conducted to carry out this invention. Fig. 3 shows the sequence for any keyboard entry. The diagrams are essentially conventional step-by- step or logical flow diagrams for major operations which are carried out by at high speeds with internal operations which are now well within standard data-processing capabilities. As is conventional, an oval indicates the start or the end of a sequence, a rectangle indicates an action taken, a diamond indicates a logical decision the result of which may be yes or no. In the drawing, any line exiting horizontally results from a yes decision and any line exiting vertically results from a no decision from the question represented by the diamond. The letter K in the drawing represents any key entry. The checkered space symbol represents a space code, such as from space bar 46 of keyboard 10. An arrow to the left represents a backspace entry from key 42. A square represents a cursor, and when a symbol appears in or next to the cursor, that indicates the position of the cursor with respect to the data corresponding to the symbol. The underline symbol represents the underline. C represents any character or graphic symbol. A rainbow like figure represents the alternate color, and the stylized I is tended to represent the alternate font, as it is suggestive of italics. The upward arrow represents a shift to upper case from keys 44, as distinguished from a shift to lower case, which is represented by downward pointed arrow. The small symbol in the form of a pennant represents the setting of a status flag in electronic data processor 20. The terminlogy "flag" being commonly used, the pennant symbol is selected so as to be suggestive of that term. A flag in electronic data processing is, of course, the setting of a memory or register condition or the like which can be examined by data processing logic for the existence of the condition being in a set or unset condition, the system then following a sequence of steps dictated by a predetermined data-handling sequence when the status is as found. Finally, the clearing of memory and flags is symbolized by the horizontal line across the top of the symbol of that being cleared. This is selected because such a symbolism is often used to indicate "not" in graphic languages.
  • Oval 60 in Fig. 3 has a K in the center, indicating that the sequence is the keystroke sequence. The code for the keystroke is entered into a keystroke buffer 62, which is simply electronic memory designated to hold the code from a keystroke entry from keyboard 10 until further processed as will be described. Normally, buffer 62 is not cleared until the next subsequent keystroke entry.
  • The contents of buffer 62 are examined in decision 64 to determine whether those contents represent a space code. If the answer of decision 64 is yes, the system moves immediately to the keystroke sequence 66, shown in Fig. 6 and discussed in detail subsequentially. Where the contents of the buffer 62 are not a space code, the sequence moves to decision 67 and examines the contents of buffer 62 to determine if those contents are a backspace code. If the answer of that decision is yes, the cursor is moved one character back, and all logic and associated electronics of processor 20 also are readjusted to reflect the new position of the cursor. This movement of the cursor is indicated in action rectangle 68. The sequence is then terminated, as indicated by the oval 65 with an internal cross.
  • If the contents of keystroke buffer 62 do not represent backspace, the sequence moves on to underscore decision 69, at which the contents of keystroke buffer 62 are examined to determine if these contents represent underscore. If the answer is yes, the sequence moves to the underscore sequence 70 shown in Fig. 5 and discussed in detail subsequently.
  • If the contents of keystroke buffer 62 do not represent underscore, the sequence moves to character decision 71. At that step, the contents of keystroke buffer 62 are examined to determine that they represent a text entry or character, as distinguished from a format entry such as tabulation or line return. If the contents of the keystroke buffer 62 do represent a character, the sequence moves to the character sequence 72 shown in Fig. 4 and discussed in detail subsequently.
  • If the contents of keystroke buffer 62 do not represent a character, the sequence moves to the special color decision 74. If the contents of keystroke buffer 62 do represent the special color input, generated by the operation of the select alternate color key 48, the sequence moves to the set-alternate-color-flag action 76 and terminates, indicated by the oval 78 with an internal cross.
  • If the contents of keystroke buffer 62 are not the alternate color code, the sequence moves onto the alternate font decision 80, at which it examines the contents of keystroke buffer 62 to determine if they are of the code generated by operation of the alternate font key 52. If the answer is yes, the alternate, the alternate font flag is set at action 82 and the sequence is terminated, indicated by oval 84 with an internal cross.
  • If the contents of keystroke buffer are not found to be the alternate font code, the sequence moves to the up-shift decision 86. The contents of keystroke buffer 62 are examined to determine if they are the up-shift code. If so, the sequence moves to set-up-shift-flag action 88 and then terminates, illustrated by oval 90 with an internal cross.
  • If the contents of keystroke buffer 62 are not the up-shift code, the system moves on to restore- alternate-color decision 92. The contents of keystroke buffer 62 are examined to determine if they are the code generated by the restore alternate color key 50. If that is so, the alternate color flag is cleared at action 94, this being indicated by the horizontal line across the top. After the flag is cleared, the sequence is terminated, as indicated by the oval 96 with an internal cross.
  • If the contents of keystroke buffer 62 are not the restore alternate color code, the sequence moves to compare those contents with the restore alternate font code at decision 98. Contents of keystroke buffer 62 are examined to determine if they are the code generated by the restore alternate font key 54. If this comparison shows that the contents of keystroke buffer 62 are the restore alternate font code, the system moves to action 100 in which the alternate font flag is cleared. The sequence is then terminated, as indicated by the oval 102 with an internal cross.
  • If the contents of keystroke buffer 62 are not the restore alternate font code, the system moves on to down shift decision 104. If the contents of keystroke buffer 62 are found to be the down-shift code, the system moves to action 106 in which the flag for up-shift is cleared. The sequence is then terminated, as indicated by the oval 108 with the internal cross.
  • The system then moves on to decision 110 in which the code in keystroke buffer 62 is examined for any other appropriate function, such as tabulate and line return. If such other function is called for, the system moves to action 112 in which the function is performed and then terminates, as indicated by oval 114 with an internal cross. If the decision 110 shows no other function to be performed, then the sequence terminates, as indicated by the oval 116 with an internal cross.
  • For purposes of best explaining this invention, it is convenient to start at a point at which the key depressed is a key for a character other than space. Accordingly, the system in Fig. 3 will move through the no decision results of decisions 64, 67 and 69, until reaching the decision 71, at which point the system moves to the character sequence 72. The character sequence 72 is shown in Fig. 4. The system moves first to the alternate color flag decision 120, at which a yes condition occurs when the alternate color flag is set and a no condition occurs when the alternate color flag is not set. When the alternate color flag is set, indicative of a prior operation of key 48 calling for subsequent information to be in the alternate color, the system moves to action 122 at which the alternate color bit of the data processing keystroke buffer 62 is set to associate the alternate color attribute with the code for the character depressed. The system then moves back to decision 124, which is reached either directly when the alternate color flag is not set or is reached after the action 122 when the alternate color flag is set.
  • Decision 124 determines whether the alternate font flag is set. If that decision is yes, the system moves to action 126 at which the code in keystroke buffer 62 has the predesignated bit set which represents alternate font, thereby associating this attribute directly with the code in keystroke buffer 62. The sequence then moves to decision 128. Decision 128 is entered immediately when decision 124 shows that the alternate font flag is not set or is entered after the alternate font bit is set by action 126.
  • At decision 128 the up-shift flag is examined to determine if it is set. If so, the sequence moves to action 130, at which a predesignated bit representative of the up-shift is set in keystroke buffer 62, thereby directly associating the upshift attribute with the code in keystroke buffer 62. If the up-shift flag is not set, the sequence moves directly to decision 132. If the up-shift flag was set, the sequence moves to decision 132 after the action 130.
  • Decision 132 examines the abbreviation queue flag to determine if it is set. This flag is set, as will be described, when the contents of the queue representative of characters recently entered have been examined by the system in a manner which establishes that these characters cannot be an abbreviation to which the system responds.
  • If the abbreviation queue flag is set, the sequence moves directly to action 133, transfer of the contents of keystroke buffer 62 to the RAM. "RAM" is used as an abbreviation for the parts of memory 24 which are used as general purpose memory for the final form of the document rather than for some specific purpose related to the unique abbreviation features here being described. The designation "RAM" is selected as it suggests the common usage with regard to type of memory employed, since "RAM" is a common abbreviation for random access memory. After action 133, in which the contents of keystroke buffer 62 are entered in general memory, the cursor is moved one step to the right by action 135.
  • When the abbreviation queue flag is not set, decision 132 is no and the sequence moves to decision 134, at which the number of characters in the abbreviation queue is examined to determine if that number is exactly three. If the answer to decision 134 is yes, the sequence moves to decision 136 at which the contents of keystroke buffer 62 are examined to determine if they represent a character which is one of the characters used as a suffix abbreviation. In this preferred form all abbreviations, save abbreviations having a suffix are of three characters or less. No abbreviation is more than four characters. Accordingly, when three characters are in the abbreviation queue, the next character establishes that the entry will not be an abbreviation if the next character is not one of the limited number of characters which represents a suffix abbreviation. Accordingly, when the decision 136 is no, the present input is established as not being an abbreviation and the sequence moves to action 138, the setting of the abbreviation queue flag.
  • When action 138 is taken, the system moves to transfer the contents of the abbreviation queue to the status of being general information in memory, action 140. In the actual implementation this is implemented by designating the abbreviation queue with stored addresses or pointers locating areas in memory. Accordingly, no actual physical transfer of characters in the abbreviation queue to a different place in memory 24 is required at action 140. Instead, the rear pointer is changed to designate the point immediately past the last character entry. In a more generalized case, however, a hardware implementation or other physical transfer may be appropriate. The contents of buffer 62 are entered in general memory in action 133.
  • When the decision 134 is no, the system moves to decision 142. In decision 142 the characters in the abbreviation queue are examined to determine if they are greater than three in number. Since the system is designed on the constraint that all abbreviations will be no more than four characters, this status indicates that the character cannot be an abbreviation, and accordingly, a yes answer at decision 142 calls out action 138, the setting of the abbreviation queue flag.
  • When the decision 142 is no or when decision 136 is yes, the entered character may be part of an abbreviation, and accordingly, the sequence moves to action 144, at which the character in keystroke buffer 62 is simply entered as the next character in the abbreviation queue. Subsequent to that, action 135 takes place at which the cursor is moved one character space to the right. The sequence terminates after that cursor movement, as indicated by oval 146 with an internal cross.
  • Fig. 5 illustrate the sequence 70 for entry of an underscore code by underscore key 40 of keyboard 10. The sequence first makes decision 150 to determine if the abbreviation queue flag is set. If the abbreviation queue flag is set, the sequence moves to decision 152 at which the cursor position is examined to determine of the cursor is over a character. If the cursor is over a character, code representing the underscored character is moved into general document memory by action 154. This movement is directly into document memory because the sequence is dependent upon the abbreviation queue flag being set and accordingly, it is known that the entry does not refer to an abbreviation.
  • If decision 152 indicates that the cursor was not over a character, then a space underscore is to be entered. The sequence moves to action 156 at which the abbreviation queue flag is reset. The sequence then moves to action 158 in which the abbreviation queue is cleared. Clearance of the abbreviation queue in this specific embodiment represents a clearance of address information or pointers within the system indicating the start and end of information entered as a possible abbreviation and thereby held separately within the logic of the system as being within the abbreviation queue. Physically, information representing the location of the start and the end of the abbreviation queue are brought to both represent the location immediately following the character being entered. (They will be subtracted and a zero result noted to determine the abbreviation queue is clear. This is a standard data processing technique.)
  • After action 158, the sequence moves to action 160, which is the entry of a code for space with underscore in the document memory. The sequence then moves after either action 154 or action 160 to action 162, which moves the cursor one character position to the right. Resetting of the abbreviation queue flag and clearing the abbreviation queue where the underscore is entered under the blank is consistent with the design approach of this system that a space, including an underscored space, represents the end of a possible code entry. An underscored space is therefore a point at which the start of a possible new abbreviation is begun.
  • When decision 150 finds the abbreviation queue flag not set, the system moves to decision 164, which examines the abbreviation queue to determine if it is cleared. If it is cleared, the system moves to decision 152 and moves from that point as previously described. If the abbreviation queue is not cleared, the sequence moves to decision 166 at which the cursor position is examined to determine if it is over a character. If the cursor is at a character, the sequence moves to action 168 at which the character designated by the cursor is modified to include the bit representative of underscore at the predetermined status indicating that the character is to be displayed underscored. After this action the cursor is moved forward in action 162. After action 162 the sequence is terminated, as indicated by oval 169 with an internal cross. Had the decision 166 found the cursor was not over a character, then the underscored space sequence 170, is begun, as will be discussed in connection with Fig. 6.
  • The space sequence 66 is illustrated in Fig. 6. As there shown, the underscored space sequence 170 can originate part of that sequence and bypasses certain parts of it which occur from the normal space entry 66. Starting with the space entry 66, the sequence moves to decision 180, which determines if the abbreviation queue flag is set. If the abbreviation queue flag is set, the sequence moves to action 182, at which the abbreviation queue is cleared. After action 182, the sequence moves to decision 184, at which it determines whether the cursor is over a character. If that decision is yes, the system moves to action 186 in which the cursor is simply moved right one character space. This action is uniquely associated with the purposes of the cursor in that one manner of positioning the cursor is by use of the space bar 46 to move the cursor rightwardly and by the backspace key 42 to move the cursor leftwardly. Accordingly, where the cursor is over text, the desired function in response to space bar 46 is simply the movement of the cursor.
  • Where a decision 180 establishes that the abbreviation queue flag is not set, the sequence moves to decision 188. Decision 188 determines if the abbreviation queue is cleared or if the cursor is over a character. In either case the entry of the space code could not be related to an abbreviation in this specific form of implementation. When decision 188 is yes, the sequence therefore moves to decision 184 and continues from that decision. Decision 184 determines whether the cursor is over a character. Even though the abbreviation queue is not cleared, a space code with the cursor at a character does not designate a possible end of an abbreviation. Instead, action 186 is effected, the movement of the cursor one character space.
  • When decision 188 is no, the sequence moves to decision 190 in which the contents of the abbreviation queue are compared with the dictionary in memory, abbreviated in the diagram as DRAM. Underscored space sequence 170 also initiates decision 190. If this decision shows a match, the sequence moves to abbreviation sequence 192. If the decision 190 does not establish a match, the sequence moves to action 191, at which the contents of the abbreviation queue are moved into the document memory. This reflects the fact that the entry of the space code always terminates the consideration of an abbreviation and the starting of a possible new abbreviation, and, accordingly, that material entered between space codes and not an abbreviation should be acted on as ordinary information. As previously indicated, in the actual implementation, the contents of the abbreviation queue may not need to be moved at all, but need only be recognized in the system as not now a part of a potential abbreviation. Thus, as shown, after whatever action is necessary to assure that the information in the abbreviation queue will appear as ordinary document material, the abbreviation queue is cleared at action 194. The sequence then moves to decision 198.
  • Decision 198 also may be reached from decision 184, discussed above. Decision 184 is no when the entry is not an abbreviation and a space code is being entered at a point at which the cursor is not over a character. This is indicative of the entry of a space which is to appear as a space rather than simply move the cursor. Accordingly, action 196 is taken, in which the abbreviation queue flag is cleared, providing for subsequent entries to be recognized as entries in a possible abbreviation. The sequence then moves to decision 198 in which it is determined whether keystroke buffer 62 contains an underscore status bit, as it would if the sequence of Fig. 6 is entered by underscored space sequence 170. (Buffer 62 would not contain the code for space when the entry is an underscore over blank.) If decision 198 is yes, the sequence move to action 200, in which the code for space with the bit designating underscore set is entered in document memory.
  • If decision 198 is no, the sequence moves to action 202 in which the simple space code in buffer 62 is entered in the document memory. After actions 184, 200 and 202, each representative of completion of an action at the point involved, the cursor is moved one character space to the right in action 186 and the sequence is terminated, indicated by oval 204 with an internal cross.
  • The abbreviation sequence 192 is shown in Fig. 7. The sequence first takes the action of comparing the abbreviation queue information with that in the dictionary memory, shown symbolized in action 210 as DRAM, and then transferring the code for the full word to a buffer memory, symbolized in action 210 by BRAM. After that action, the sequence proceeds to decision 212 in which the abbreviation queue is observed for an underline under the first character. If that decision is yes, the sequence moves to the abbreviation underline sequence 214 shown in Fig. 8. At the termination 216 of that sequence, the sequence of Fig. 7 is reentered prior to decision 218.
  • Decision 218 therefore may be reached by the decision 212 for first character underline being no or by the termination 216 of the abbreviation underline sequence. Decision 218 observes the characters in the abbreviation queue for an up shift in the first character. If the answer is yes, the sequence proceeds to abbreviation upshift sequence 220, shown in Fig. 9. The abbreviation sequence is reentered at the termination 222 of abbreviation upshift sequence 220.
  • The next decision, decision 224, .is entered either from decision 218 being no or from the termination 22. Decision 224 observes the characters in the abbreviation queue for an alternate color designation in the first character. If the decision is yes, the sequence proceeds to alternate color sequence 226, shown in Fig. 10. The termination 228 of the abbreviation alternate-color sequence 226 reenters the abbreviation sequence prior to decision 230.
  • Decision 230 is thereby entered either by the prior decision, decision 224, being no or by the termination 228 of the abbreviation alternate-color sequence 226. Decision 230 is the first- character-special-font decision. If decision 230 is yes, the sequence enters the abbreviation special font sequence 232 shown in Fig. 11. The termination 234 of that sequence enters the abbreviation sequence of Fig. 7 prior to the next step, which is action 236, transfer of the buffer memory contents into document memory.
  • This is done in the actual embodiment by writing the information in the buffer over that of the abbreviation queue. This necessarily includes the clearing of the abbreviation queue. Since the display on CRT 34 is continually refreshed from text information stored in memory 24, overwriting of the abbreviation with the corresponding full word automatically substitutes the full word on the display for the abbreviation originally keyed by the operator.
  • After action 236, the contents of keystroke buffer 62 are examined in decision 240 to determine if they contain the code indicating underline. If the answer is yes, action 244 is taken, in which a code for space with underscore is entered in document memory. If decision 240 is no, a normal space code is added at action 242. These space codes correspond to the space code which necessarily had been entered because all abbreviation sequences end with a space code. The cursor is moved past that terminating space in action 246 and the sequence is terminated, as indicated by oval 248 with an internal cross.
  • Fig. 8 illustrates the abbreviation underline sequence 214. The first step in the sequence is decision 250 in which the characters in the abbreviation queue are examined to determine if more than one carry the underline status information. If the answer to decision 250 is yes, the sequence proceeds to action 252, in which all the character codes for each character in buffer memory are modified to carry a status showing underline and then to action 253 in which the underscore bit in keystroke buffer 62 is set to designate underscore. (As is clear from the prior description with respect to Fig. 7, action 253 will cause the next following space code after the word in the buffer memory to have its status bit corresponding to underline to be set to indicate underline.) If the answer to decision 250 is no, the sequence proceeds to action 254 only, in which all of the characters in the buffer memory are modified to carry a status showing underline. The sequence is terminated at oval 216 after either action 254 or action 253.
  • The abbreviation upshift sequence 220 is shown in Fig. 9. The first step in the sequence is decision 260, in which the characters in the abbreviation queue are examined to determine if more than one carry the upshift status information. If the answer to decision 260 is yes, the sequence proceeds to action 262 in which the character code for each character in buffer memory is modified so that the status bit corresponding to up shift is set to indicate up shift. If the answer to decision 260 is no, the sequence proceeds to action 264 in which only the first character of the characters in the buffer memory is modified to carry a status showing up shift. The sequence is terminated at oval 222 after either action 264 or action 262.
  • The abbreviation alternate-color sequence 266 is shown in Fig. 10. The first action is decision 270 in which the characters in the abbreviation queue are observed to determine if more than one carry the status bit indicative of alternative color. If the decision 270 is yes, the sequence proceeds to action 272 in which all of the characters in the buffer memory are modified to carry the status bit for alternative color in the state indicating alternative color. If the answer to decision 270 is no, the sequence proceeds to action 274 in which only the first character in the buffer memory is modified to carry the status bit entered for alternative color in the state indicating alternative color. The sequence is terminated at oval 228 after either action 274 or action 272.
  • The sequence for abbreviations alternative-font 232 is shown in Fig. 11. The first step is the observation of the characters in abbreviation queue at decision 280 to determine if more than one carry the status bit for alternative font in a status indicating that the alternative font is selected. If the anaswer is yes, the sequence proceeds to action 282 in which all the characters in the buffer memory are modified to show a yes status for the alternative font. If the answer to decision 280 is no, the sequence proceeds to action 284 in which only first character in the buffer memory is modified to carry the alternative font status as positive. The sequence is terminated at oval 234 after either action 284 or action 282.
  • It will be noted in connection with Figs. 8, 9, 10 and 11 that the indication therein of the second special form designation is shown in the first two fiqures as beinq possiblv in the third Dosition, and is shown in Fig. 10 and Fig. 11 as being possibly in the second position. It should be understood that this entirely alternative and illustrative, as the basic gist of the system design is to respond to the second character being in any position. In the typical data-handling system the characters in the abbreviation queue would be observed in order. When a second is found to be in the special status, the criteria would be satisfied and that sequence of steps would be terminated and the system would proceed to the next appropriate sequence of steps.
  • It will be clear that the preferred form has specific aspects which are entirely a matter of choice which could be implemented in various ways suggested or which would be clear to those familiar with word processing.

Claims (4)

1. A method for operating an abbreviated typing system in order to have said system transfer typed abbreviations comprising at least two, separate characters, into full words the said system being of the type including a keyboard (10) with a space bar (46), and character keys a keystroke buffer (62) and an abbreviation queue information memory (24) for storing the codes representative of the typed characters, a dictionary memory (24) containing a list of abbreviations and a list of corresponding full words, a buffer memory, display means (21, 30, 32, 34) for displaying the characters, and a processor (20) connected to all said afore mentioned means to control operation thereof and process information therefrom and to control the transfer of information, said method including the following steps:
a) Storing in said keystroke buffer (62) and in said abbreviation queue information memory (24), under the control of said processor (20) and in response to actuation of any one of said character keys, the code representative of the character associated with said any one key;
b) Comparing, in response to entry of said at least two, separate characters into said abbreviation queue information memory (24), the contents of said information queue information memory (24) and the contents of said list of abbreviations in said dictionary memory;
c) Transferring to said buffer memory, in response to a match between the contents of said abbreviation queue information memory (24) and an abbreviation in said list of abbreviations, the full word corresponding with said abbreviation;
said method being characterized in that:
said abbreviations can be transferred into full words with characters in normal form or in special form, depending upon the forms of the characters in said abbreviations;
the information in the dictionary memory is that of meaning or substance and is not variable regarding said special form;
said method being further characterized by the followina steos:
d) Observing, under the control of said processor (20) said abbreviation queue information for characters in a special form;
e) Determining whether the number of special form characters in the abbreviation queue is equal to 0, equal to a predetermined number, or less than said predetermined number;
f) In response to determining in step e) that the number of special form characters is equal to 0, transferring the full word in said buffer memory to said display means (21, 30, 32, 34) for display of said full word in said normal form, and clearing said abbreviation queue information memory,

In response to determing in step e) that the number of special form characters is equal to said predetermined number, modifying under the control of said processor (20) the codes for all characters of the full word in said buffer memory so that these codes will carry a status representative of the special form observed in step d), transferring the modified full word from said buffer memory to said display means (21, 30, 32, 34), and clearing said abbreviation queue information memory,
In response to determining in step e) that the number of special form characters is less than said predetermined number, modifying, under the control of said processor (20), the code for only the first character of the full word in said buffer memory so that this code will carry a status representative of the special form observed in step d), transferring the modified full word from said buffer memory to said display means (21, 30, 32, 34), and clearing said abbreviation queue information memory.
2. The method of claim 1, characterized in that said typed abbreviations comprise at least two, separate characters followed by a space and further characterized in that said step b) is initiated in response to the entry of said space into said information queue information memory (24).
3. The method of claim 1, characterized in that said typed abbreviations comprise no more than four separate characters followed by a space, with the fourth character being a suffix abbreviation, and further characterized in that said step b) is initiated in response to the entry of said space into said information queue information memory.
4. The method of any one of the claims 1 to 3, characterized in that said special form is capitalization, special character font, special color or underline, or any combination thereof.
EP83100794A 1982-03-24 1983-01-28 Abbreviated typing with special form display Expired EP0089468B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US361313 1982-03-24
US06/361,313 US4459049A (en) 1982-03-24 1982-03-24 Abbreviated typing with special form display

Publications (2)

Publication Number Publication Date
EP0089468A1 EP0089468A1 (en) 1983-09-28
EP0089468B1 true EP0089468B1 (en) 1988-08-10

Family

ID=23421533

Family Applications (1)

Application Number Title Priority Date Filing Date
EP83100794A Expired EP0089468B1 (en) 1982-03-24 1983-01-28 Abbreviated typing with special form display

Country Status (4)

Country Link
US (1) US4459049A (en)
EP (1) EP0089468B1 (en)
JP (1) JPS58169234A (en)
DE (1) DE3377677D1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3567495A1 (en) 2018-05-11 2019-11-13 AbbType Ltd. Method of abbreviated typing and compression of texts written in languages using alphabetic scripts

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5759292A (en) * 1980-09-29 1982-04-09 Canon Inc Character processor
JPS58171351U (en) * 1982-05-10 1983-11-16 ブラザー工業株式会社 multifunction printer
US4891786A (en) * 1983-02-22 1990-01-02 Goldwasser Eric P Stroke typing system
US4760528A (en) * 1985-09-18 1988-07-26 Levin Leonid D Method for entering text using abbreviated word forms
EP0352377A1 (en) * 1988-07-26 1990-01-31 Leonid D. Levin Word processing apparatus and method
US4969097A (en) * 1985-09-18 1990-11-06 Levin Leonid D Method of rapid entering of text into computer equipment
US4807181A (en) * 1986-06-02 1989-02-21 Smith Corona Corporation Dictionary memory with visual scanning from a selectable starting point
US4777596B1 (en) * 1986-07-02 1996-06-25 Productivity Software Internat Text replacement typing aid for computerized text editor
JPS63149719A (en) * 1986-12-13 1988-06-22 Brother Ind Ltd Information processor
NL8700410A (en) * 1987-02-19 1988-09-16 Philips Nv TEXT EDITING DEVICE FOR STENOGRAPHIC TYPES.
JPS6442737A (en) * 1987-08-10 1989-02-15 Brother Ind Ltd Program processor
JPH01130260A (en) * 1987-11-16 1989-05-23 Canon Inc Character processor
CA2006163A1 (en) * 1988-12-21 1990-06-21 Alfred B. Freeman Keyboard express typing system
US5146439A (en) * 1989-01-04 1992-09-08 Pitney Bowes Inc. Records management system having dictation/transcription capability
US5126728A (en) * 1989-06-07 1992-06-30 Hall Donald R ADP security device for labeled data
US5296688A (en) * 1989-12-04 1994-03-22 Hamilton David W Apparatus and method for recording progress notes
EP0449322B1 (en) * 1990-03-29 1999-07-28 Canon Kabushiki Kaisha Text processing apparatus with formatting of text
JP3280073B2 (en) * 1992-06-01 2002-04-30 ブラザー工業株式会社 Document processing device
JP3174168B2 (en) * 1992-10-01 2001-06-11 富士通株式会社 Variable replacement processor
JPH06195341A (en) * 1992-12-22 1994-07-15 Brother Ind Ltd Document processor
US20020052903A1 (en) * 1993-05-31 2002-05-02 Mitsuhiro Aida Text input method
US5761689A (en) * 1994-09-01 1998-06-02 Microsoft Corporation Autocorrecting text typed into a word processing document
US5623406A (en) * 1995-03-06 1997-04-22 Jean D. Ichbiah Method and system for entering text in computer equipment
US5825306A (en) * 1995-08-25 1998-10-20 Aisin Aw Co., Ltd. Navigation system for vehicles
US5664896A (en) * 1996-08-29 1997-09-09 Blumberg; Marvin R. Speed typing apparatus and method
US7168039B2 (en) 1998-06-02 2007-01-23 International Business Machines Corporation Method and system for reducing the horizontal space required for displaying a column containing text data
US6770572B1 (en) 1999-01-26 2004-08-03 Alliedsignal Inc. Use of multifunctional si-based oligomer/polymer for the surface modification of nanoporous silica films
BR0008175B1 (en) 1999-01-26 2012-02-07 Method for entering letters of an alphabet using a computer.
US7506252B2 (en) * 1999-01-26 2009-03-17 Blumberg Marvin R Speed typing apparatus for entering letters of alphabet with at least thirteen-letter input elements
US7475343B1 (en) * 1999-05-11 2009-01-06 Mielenhausen Thomas C Data processing apparatus and method for converting words to abbreviations, converting abbreviations to words, and selecting abbreviations for insertion into text
US7315902B2 (en) * 2002-12-19 2008-01-01 International Business Machines Corporation Compression and abbreviation for fixed length messaging
US20040153963A1 (en) * 2003-02-05 2004-08-05 Simpson Todd G. Information entry mechanism for small keypads
US7136876B1 (en) * 2003-03-03 2006-11-14 Hewlett-Packard Development Company, L.P. Method and system for building an abbreviation dictionary
GB0406451D0 (en) * 2004-03-23 2004-04-28 Patel Sanjay Keyboards
US7224292B2 (en) * 2004-04-29 2007-05-29 Research In Motion Limited Reduced keyboard letter selection system and method
GB0505941D0 (en) * 2005-03-23 2005-04-27 Patel Sanjay Human-to-mobile interfaces
GB0505942D0 (en) * 2005-03-23 2005-04-27 Patel Sanjay Human to mobile interfaces
JP2006276918A (en) * 2005-03-25 2006-10-12 Fuji Xerox Co Ltd Translating device, translating method and program
US20070076862A1 (en) * 2005-09-30 2007-04-05 Chatterjee Manjirnath A System and method for abbreviated text messaging
US7831423B2 (en) * 2006-05-25 2010-11-09 Multimodal Technologies, Inc. Replacing text representing a concept with an alternate written form of the concept
CN101286154B (en) * 2007-04-09 2016-08-10 谷歌股份有限公司 Input method editor user profiles
US9311286B2 (en) * 2012-01-25 2016-04-12 International Business Machines Corporation Intelligent automatic expansion/contraction of abbreviations in text-based electronic communications
US10579743B2 (en) * 2016-05-20 2020-03-03 International Business Machines Corporation Communication assistant to bridge incompatible audience
US10261990B2 (en) * 2016-06-28 2019-04-16 International Business Machines Corporation Hybrid approach for short form detection and expansion to long forms
US10083170B2 (en) 2016-06-28 2018-09-25 International Business Machines Corporation Hybrid approach for short form detection and expansion to long forms

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2717686A (en) * 1952-11-05 1955-09-13 Ibm Word writing typewriter
US3557927A (en) * 1967-12-08 1971-01-26 Stenographic Machines Inc Stenographic transcription system
US4244031A (en) * 1976-10-18 1981-01-06 Ricoh Company, Ltd. Word processor
US4170414A (en) * 1976-12-20 1979-10-09 International Business Machines Corporation Document feed controls for copy production machines
DE2743256C2 (en) * 1977-09-26 1984-05-24 Siemens AG, 1000 Berlin und 8000 München Device for adjusting the height of the ribbon guide in office machines
GB2015220B (en) * 1978-02-23 1982-08-25 Endfield C Portable key-board device
US4198685A (en) * 1978-11-13 1980-04-15 Wang Laboratories, Inc. Text editing system having flexible repetitive operation capability with keyboard interactive feature
JPS6239467Y2 (en) * 1978-11-20 1987-10-08
JPS5827547B2 (en) * 1979-01-26 1983-06-10 シャープ株式会社 electronic dictionary
JPS56143044A (en) * 1980-04-08 1981-11-07 Sony Corp Input device of english typewriter
US4374625A (en) * 1980-05-01 1983-02-22 Ibm Corporation Text recorder with automatic word ending
AU544563B2 (en) * 1980-05-29 1985-06-06 Sony Corporation Image/word processor
US4435776A (en) * 1981-01-27 1984-03-06 Syntrex Incorporated Word processing system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3567495A1 (en) 2018-05-11 2019-11-13 AbbType Ltd. Method of abbreviated typing and compression of texts written in languages using alphabetic scripts
US11720760B2 (en) 2018-05-11 2023-08-08 Abbtype Ltd Method of abbreviated typing and compression of texts written in languages using alphabetic scripts

Also Published As

Publication number Publication date
US4459049A (en) 1984-07-10
EP0089468A1 (en) 1983-09-28
DE3377677D1 (en) 1988-09-15
JPS58169234A (en) 1983-10-05
JPH0142416B2 (en) 1989-09-12

Similar Documents

Publication Publication Date Title
EP0089468B1 (en) Abbreviated typing with special form display
US4456973A (en) Automatic text grade level analyzer for a text processing system
US4679951A (en) Electronic keyboard system and method for reproducing selected symbolic language characters
US5854884A (en) Character information processor for printing characters
US4396992A (en) Word processor
US4566065A (en) Computer aided stenographic system
EP0076909A2 (en) System for automatically verifying spelling and hyphenating words in a multi-lingual document
KR860001012B1 (en) Ideographic coder
EP0039393A2 (en) Text recorder with automatic word ending and method of operating the same
US5091878A (en) Word processing apparatus
US4994968A (en) Word processing device
JPS6356575B2 (en)
US5745911A (en) System for performing spell check functions on a printing device without operator intervention
JP4050745B2 (en) Text input system
JPH0363101B2 (en)
JP2786260B2 (en) Kana-Kanji conversion device
JPH0727527B2 (en) Word processor
Danielson The man-machine combination for computer-assisted copy editing
JPS6191763A (en) Japanese document processor
JPS61122776A (en) Input/output device
JP2573183B2 (en) Kana-Kanji conversion device
JPS5953567B2 (en) Printing control method for homophones in kana-kanji conversion
MEALAND Word Processing in Greek using Vuwriter Arts: A Test case for Foreign Language Word Processing
JPH0721189A (en) Translation assisting system
JPS59106033A (en) Furigana (japanese syllabary attached to chinese character) adding system of text processor

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Designated state(s): DE FR GB

17P Request for examination filed

Effective date: 19840126

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB

REF Corresponds to:

Ref document number: 3377677

Country of ref document: DE

Date of ref document: 19880915

ET Fr: translation filed
PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed
PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 19941223

Year of fee payment: 13

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Effective date: 19960930

REG Reference to a national code

Ref country code: FR

Ref legal event code: ST

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20001213

Year of fee payment: 19

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20010102

Year of fee payment: 19

REG Reference to a national code

Ref country code: GB

Ref legal event code: IF02

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20020128

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20020801

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20020128