The present application is directed to a computer device, method, and article of manufacture which utilizes sequenced symbols to enable application programs and/or commands. More preferably, the computer device, method, and article of manufacture enable or execute application programs or commands in response to selection of an associated sequence of symbols. This technology is applicable to all areas of computer and electronic devices including but not limited to portable digital assistants (PDAs) mobile telephones, personal computers, internet applications utilizing computers, etc.
PDAs, such as the Palm™ devices including the PalmPilot™ for example, allow users to catalog and access a great deal of information utilizing a small portable device. The PalmPilot™ for example, includes an operating system which allows for navigation through many application programs including ones permitting access to internet applications, utilizing a series of pop-up menus which appear on the screen. These application programs include, for example, programs accessible via hardwired keys (“hardwired programs”) such as a calendar, address book, to do list, memo pad, etc.; financial programs such as expense information, charts; informational material programs such as dictionaries, thesauruses, white pages, yellow pages; and programs permitting access to information available through the internet such as ABC news, ESPN, Map Quest, etc. Although a plethora of information and programs are provided by and/or accessible through the PDA, accessing desired information through a pull-down menu system can be slow and cumbersome. Further, it can be difficult to locate desired information through the use of pull-down menus.
PDAs such as the PalmPilot™ for example, also include intra-application commands that permit functionality within a particular application program. These can include basic commands such as new (for creating a new file) open (for opening an existing file), quit, cut, undo, copy, paste, etc., for operating within a particular program. Again, however, these operations are typically performed through sequenced pull-down menus. As such, operating these command functions can be tedious and can involve a large amount of time and effort before the operation is fully performed.
Finally, within an application program, various movement-type commands can be performed. These commands, such as page up, up, page down, down, etc., can be difficult to access due to display space restrictions and may take some time and effort to be performed.
Prior art
With regard to the keys, while they provide quick access to application programs, only a small number of these keys can be included due to the fact that they take up space on the device. Thus, inclusion of these hardwired keys necessarily leads to a decrease in the size of the display 20 as more of a surface area of the PDA is occupied. Display space is a premium in these small devices and thus, while the devices continue to offer more and more functionality, the use of designated hardwired application keys must be restricted in order to maximize display space.
The PDA 10 further includes an input area 16, wherein handwriting information known as Graffiti® can be input. These Graffiti® strokes can be used to enter input characters or symbols, and can be used to input various shortcuts. The Graffiti® language, however, must first be teamed, as well as each of the single meaning strokes in order to access any useful shortcuts.
Additionally, an area of the PDA 10 below the input area includes an ON/OFF key 40 for powering the device on or off through an internal power source (not shown) or through an external source such as an AC outlet for example (not shown); as well as additional hardwired keys. Each of these keys includes a single symbol and is used to access a single hardwired program/function as follows: key 43 includes a calendar symbol and is used to access a calendar program; key 45 includes a telephone symbol and is used to access an address book; key 47 includes a “list” symbol and is used for accessing a “to do” list; and key 49 includes a pen and paper symbol and is used for accessing a “memo pad” program. Again, these single application hardwired keys limit the overall size of the display 20 and each key can be used to access only a single one of the many applications/programs of the PDA 10. Additionally, UP/DOWN key 42 can be used for scrolling through various application programs for example.
Display 20 illustrates one example of a screen which could be available on a typical PDA device. The display screen 20 shows six symbols, each of which can be used to access one of a plurality of applications. Again, however, utilizing these single meaning symbols, only a limited number of symbols can be displayed on the screen at any one time to access a limited number of applications, and they do not appear continuously within an application or program to permit-switching to another application or program. More symbols can be included and scrolled through, but again, one symbol will access only one application program. For example, the calculator symbol 22a is used to access the calculator program; the date book 22b is used to access the date book program; the diagnostic symbol 22c is used to access wireless diagnostics; the ESPN symbol 22d is used to access the internet site ESPN.com through the internet; the dollar sign symbol 22e is used to access the expense financial application program within the device; and the Fidelity symbol 22f is used to access the Fidelity application program within the device. While these single meaning symbols and associated word messages allow a user to quickly access a particular internal application program of the PDA 10, a desired application must still be located by a user and accessed in some manner. This process can be slow and tedious.
Other exemplary aspects of the display 20 can include an indication of time 24, an indication of available battery power 26, and other related symbols. It should be understood that the display in prior art
Finally, prior art
Accordingly, while the PDA provides many applications and various computer command sets available within applications, as well as access to internet applications, locating and particularly using and navigating through a particular application can be tedious and cumbersome. This is true not just with the PDA, described in an exemplary manner above, but is also true with any computer device including personal computers, mobile phones, etc. further, as more and more functionality is added to the PDA 10, accessing desired application programs and using these application programs in an efficient manner will become more and more difficult. Accordingly, a need exists for a better way to access and use various application programs available in PDAs and other computer devices such as personal computers, mobile telephones, etc. Further, as display screen space is a premium in these portable devices including PDAs, mobile phones, etc., the need exists to maximize display screen availability while minimizing the effort needed to access and use many of the various available commands and applications of these and other computer devices.
The present application is directed to a computer device, article of manufacture, interface or method for enabling an application program, and/or for executing a command, based upon selected corresponding symbol sequences. By utilizing these symbol sequences, multiple levels of application programs and commands of the computer device can be accessed. For example, the sequenced symbols can be used as a navigation tool at the operating system level, as a method of selecting and switching in and out of application programs (“applications”); it can serve as a method of executing available operating system and application commands such as new, open, quit, cut, undo, etc., as well as navigational commands such as page up, page down, etc.; and it can further provide inter-application support from within various available applications such as copy to, paste from, etc., to thus enhance capabilities of the computer device. The methodology can be applied to any computer device including but not limited to PDAs, personal computers, mobile phones, etc., and can be applied to internet navigation as well as voice recognition technology.
The symbols used are preferably polysemous in nature and can thus be associated with a plurality of different meanings depending upon other symbols sequenced therewith. By utilizing polysemous symbols, a relatively small number of symbols can be used and displayed in a relatively small portion of a display, to thereby provide quick and easy access of a multitude of applications and commands, while utilizing only a small amount of valuable display area. Further, even non-polysemous symbols can be used in certain applications, when sequenced together properly.
The present invention will become more fully understood from the detailed description given herein below and the accompanying drawings which are given by way of illustration only and which are not intended to limit the present invention in any way, where in like reference numerals represent like elements and wherein:
a-5c illustrate symbol prediction and a symbol sequencing for accessing an application program;
a-6b illustrate an aspect of intra-application command navigation using symbol sequencing;
a and 7b illustrate another aspect of intra-application command navigation using symbol sequencing;
a-8g illustrate other aspects of intra-application command navigations utilizing symbol sequencing;
a-9c illustrate inter-application navigation utilizing symbol sequencing;
a-10h illustrate inter-application navigation utilizing symbol sequencing;
a-d illustrate an association of a macro and symbol sequencing;
a-15d illustrate an application of sequenced single meaning symbols.
A method, computer device, interface, and article of manufacture permit the enabling of one or more application programs in a computer device such as a PDA, mobile telephone, personal computer, etc., and/or existing commands, based upon associated and selected sequentially sequenced symbols. Preferably, these symbols are polysemous in nature. By storing a plurality of sequences of selectable polysemous symbols in association with a plurality of application programs and/or commands, the various application programs and/or commands can be enabled or executed in response to receiving selection of an associated polysemous symbol sequence.
As such, a simple and relatively small interface of multi-meaning symbols can be provided on a relatively small area of a display screen for example, to allow a user to thereby navigate through a plurality of programs, navigate within a program (intra-application navigation such as move up, move down, page up, page down, etc.); and navigate between programs (cross-application navigation such as copy to and paste from as well as providing the ability to build macros such as paste from note pad, etc.). Such a simple symbol interface can thus be used in devices where display space is a premium, such as PDAs, mobile phones, etc.; can be used to quickly access programs in devices with growing capabilities such as PDAs, personal computers (including laptops), mobile phones, etc.; and can be used in internet navigation, as well as provide for efficient use of voice recognition technology. Thus, as capabilities of devices expand, a simple way of accessing and navigating through these capabilities can be utilized, in a manner that is easy to use and easy to quickly comprehend.
The computer device 110 of
Preferably, the template 130 includes two rows of polysemous symbols including a first row 132 and a second row 134. The present invention should not be considered to be limited to two rows, and can include more or less rows dependent on the particular use or need. In addition,
Finally, eighteen particular symbols are shown in
When creating the symbol set or template of
The next step involves creating symbols and symbol sequences. Once “categories” and “sub-categories” are established, symbols can be developed to designate both categories and sub-categories of information. These symbols should be polysemous in nature so as to be useable in various sequences to access various types of programs and/or commands. For example, the “money” symbol can represent the category of financial applications, with the “money”, “money” and “move” (crossed starting flags) sequence being associated with and enabling the Quicken® financial application program. Further, the “money” symbol can also be used as a third symbol in a sequence, to designate the “Expense” application program, associated with the symbol sequence of “money”, “money” and “money”; and, with the “coins” of the “money” symbol being yellow in color, it can be used as a third symbol to represent and access the “yellow pages” (“find” and “find” and “money”). The same crossed starting flags (“move”) symbol as was used in a sequence enabling Quicken® is also polysemous so as to additionally be used to access the ESPN.com internet application (“globe” and “globe” and “move”) since the starting flags represent sports (auto racing and thus the sports network of ESPN); as well as the category of “move” commands—since the starting flags represent movement.
Similarly, the globe or “all” symbol is used in sequences which access the internet category of application programs (“globe” and “globe” and “move”=ESPN.com), and is also used as a sub-category symbol in sequences accessing the global or “big” moves such as “move to top” (“move” and “globe” and “thumbs up”) or “move to bottom” (“move” and “globe” and “thumbs down”) commands. Other exemplary category symbols used in sequences for accessing PDA programs and commands in this exemplary aspect of the present application include but are not limited to: the “move” symbol for move menu sequences such as move left (“move” and “left” symbol), move right (“move” and “right” symbol), etc.; the “find” (magnifying glass) symbol for information programs such as “dictionary” (“find” and “find” and “keypad”), HanDBase (“find” and “find” and “file cabinet”), yellow pages (“find” and “find” and “money”), etc.; the “control” (hand on dial mechanism) symbol for built-in applications such as the calendar program (“control” and “control” and “left”), the calculator program (“control” and “control” and “keypad”), etc.; and the “cards” symbol for page move commands of page up (“cards” and “thumbs up”), page down (“cards” and “thumbs down”), etc. Again, these are merely some examples of the polysemous nature of the chosen symbols and should not be considered to limit the application as other symbols, categories, and symbol sequences can be used.
The use of polysemous symbols allows one symbol to have different meanings when sequenced with other symbols. By using sequenced polysemous symbols, a large number of applications and/or commands can be associated with different symbol sequences; with the actual number of symbols in the pallet or template 130 remaining small. Using two or three symbol sequences (preferred) and an eighteen symbol (for example) template 130 as shown in
Further, not only can thousands of applications or commands be recalled using simple symbol sequences, but by using a template 130 of only a small number of symbols, display space (at a premium in most computer devices, especially mobile phones, PDAs, laptop computers, etc.), is conserved. Further, the polysemous nature of the symbols makes it easy to correspond symbol sequences to applications and commands. For example, functionality of the computer devices can be grouped into semantic categories such that the “money” symbol is easily associated with and becomes a first sequenced symbol of the category of financial applications; the globe becomes the first sequenced symbol of the category of internet applications; etc. Thereafter, a second symbol can be used to complete a sequence to enable an application program or execute a command; or a third sequenced symbol can fill that role, with the second symbol corresponding to a sub-category within a category. In addition, by adding symbol prediction, valid symbol choices are even further reduced, and the learnability of symbol sequences is even further enhanced. As such, an interface is created which includes a plurality of polysemous symbols for selection, with a plurality of sequences of polysemous symbols being stored in association with at least one of a command and an application program, wherein an associated one of a command or application program is enabled in response to selection of symbols of a stored polysemous symbol sequence.
The highlighting or other types of differentiating (such as darkening invalid symbols for example) of certain symbols from other symbols is determined based upon available “first” or “next” symbols in symbol sequences. In other words, when the system is initially turned on and the template is initially accessed and displayed, only symbols which begin a stored symbol sequence need be highlighted to the user as only these symbols are valid and can be used to access a symbol sequence. Thereafter, once a particular symbol is selected, only symbols which are “second” symbols in a symbol sequence beginning with the selected first symbol are available “next” symbol symbols for selection. Accordingly, only these symbols will be highlighted, or otherwise differentiated from other symbols, in response to selection of the first symbol. The use of symbol or symbol prediction to aid a user in accessing a storage symbol sequence is discussed in detail in U.S. Pat. Nos. 5,097,425 and 5,297,041, the entire contents of which are incorporated herein by reference.
As previously stated, the template of symbols 130 is preferably displayed on an integrated input and display device 120 of the overall computer device 110. Even more preferably, the template of symbols 130 is displayed as a virtual keyboard on less than one-third of the display screen 120. As preferably stated, the display of valid polysemous symbols, occurring as a first symbol in a sequence upon no symbols being selected and occurring as a next symbol in a sequence upon selection of a previous symbol, is differentiated from invalid polysemous symbols. Valid symbols are preferably highlighted and/or invalid symbols are preferably darkened, with respect to the valid symbols.
In one preferred embodiment, upon initially activating the PDA device, the iconicity symbol 200 can be displayed. The iconicity symbol 200 can be displayed in association with other symbols such as that shown in
For example, as shown in
Any “first” symbols in stored symbol sequences can be initially differentiated from other symbols upon initially accessing the template 130. Some exemplary symbol sequences, which should not be considered to limit the present application, can include a sequence of the money, money and move symbols to access a “Pocket Quicken” application program in the PDA; the money, money and left symbols to access the “Fidelity” program; the money, money and money symbols to access the “expense” program; the world, world and move symbols to access the “ESPN.com” internet application program/command; and the world, world, and world symbols to access the “ABC news” internet application program/command. Thus, not only can the plurality of symbols be displayed as a virtual keyboard, but the plurality of symbols can be displayed in response to entering a symbol sequence mode, such as by selecting the iconicity symbol 200 for example.
In one preferred embodiment, each of the stored symbol sequences (stored in a database in association with application programs or commands for example) include at least three symbols, such as the symbols discussed previously related to certain application programs/commands and certain internet applications/commands for example. Even more preferably, in such three symbol sequences, the first symbol in each sequence preferably corresponds to an application program category (such as the “globe” symbol corresponding to an internet application category or the “money” symbol corresponding to a financial application category), the second symbol corresponding to a subcategory within the application program category of the first symbol (wherein the “globe” and “globe” symbols or the “money” and “money” symbols actually enable the subcategory of internet applications or financial applications, respectively); and wherein the third symbol corresponds to an application program within the subcategory of the second symbol such as the specific ESPN.com internet application/command, the ABC news internet application/command, the Pocket Quicken financial application program, or the Fidelity financial application program for example.
Symbol sequences can be associated with various stored or preaccessible programs to allow easy navigation thereof, and can also be associated with various commands such as intra-application navigation commands and inter- or cross application navigation commands. The commands can include intra-application commands for navigating within an enabled application program and/or inter-application commands for navigating between an enabled application program and another application program, for example. In addition, the present application preferably includes a storage mode which, when accessed, enables a user to store newly input a polysemous symbol sequence in association with a macro (such as “paste from note pad”, for example), wherein the macro is executable in response to receiving input of this stored associated polysemous symbol sequence. This will be explained in further detail with regard to
Once one of the application programs is enabled (via a selected symbol sequence or in some other manner), intra/inter-application navigation within that program such as move up, move down, move left, move right, page up, etc., can also be performed. Thus, template 130 of the plurality of polysemous symbols can also be displayed, as a virtual keyboard for example, within an enabled application program; a plurality of sequences of symbols can be stored in association with commands, and one of the commands can be executed in response to receiving selection of an associated polysemous symbol sequence.
Finally, as shown in
In dealing with stored information in a computer device (such as application programs and/or commands for example) which can be associated with a symbol sequence, different types of information is available to be retrieved in different situations encountered in computer programs and interfaces. Operating systems have built-in computer commands that can be accessed. These commands are usually in the form of categories or libraries of commands, functions, routines or subroutines. These commands are encoded into a machine code that the computer then can understand based upon its operating system. Different categories of commands can further be accessed from other programs.
Accordingly, sequences of a plurality of polysemous symbols provided for selection are stored in association with an accessible application program or command, preferably in a database or in some type of memory for example. Thus, by storing these sequences of selectable polysemous symbols in association with an application program or command, the application program or command can be enabled/executed in response to receiving selection of an associated polysemous symbol sequence.
Most operating systems permit access to computer command shortcuts as well as application programs. These shortcuts can be edited and new shortcuts (such as polysemous symbol sequences) can be assigned to various commands. These types of commands are extracted and associated with appropriate symbol sequences. The symbol sequences and their association with commands and/or application programs is then stored, preferably in a database structure. When an associated symbol sequence is selected (via any type of input such as through a stylus or finger selecting a symbol displayed on an integrated input and display apparatus for example, or through the use of other input devices such as a mouse, scroll bar, associated keys on a keypad, etc.), the resulting command and/or application program is then enabled/executed and sent to a new application software or the operating system itself for execution. As such, an alternate method for navigating through application programs such as the hardwired, financial, information, and internet programs of the PalmPilot™ for example, as well as a new method for accessing navigation commands within an application or between applications, is made available.
Each of plurality of methods can be used in the overall storage of information to be retrieved. Any and all such methods are to be encompassed within the scope of the present application. For example, known entities such as various operating system commands and built-in program commands and/or abilities to access these commands if they are already stored, can initially be stored. These can be associated with symbol sequences and stored in memory, within the application software or within a database file, for example.
In an alternative method, which is also encompassed within the scope of the present application, the software application of the present invention can access available computer commands from within another software application and extract them into a database. If a new application is installed in the system, then the present application software can identify it and proceed to extract the expected commands and put them in database storage. This database can then be cross referenced to another database with symbol sequences.
With regard to computer commands, they may be found in different software applications and may be named different, but they may perform the same command. These can be assigned the same symbol sequence commands like “delete item” and “delete object” which do exactly the same thing but are named differently), for example. Other commands, like “new document” and “new picture” which essentially tell the software to do the same thing (create a new document of a file that the software can understand), may be different in actual structural content. These can be assigned or associated with different symbol sequences to better represent what they are doing.
As another alternative method, commands may be found which were not originally anticipated when designing various symbol sequences to be associated with various commands or application programs. In this instance, an initial database can be created with symbol sequences associated with various application programs and/or commands, and additional symbol sequences can be added at a later time. This will enable the coverage of a much larger area of computer commands and application programs by having an exchangeable storage system for symbol sequences and their associations.
In regular computer programs, macros can be created using normally separate computer commands and then combining them in a logical way. When the macro is executed, it procedurally executes each separate command that was combined and stored within it. This enables the execution of more than one command through the use of just one macro. In the same sense, individual symbol sequences, namely new symbol sequences, can be used and stored in association with new “macros”. When this new sequence of symbols is then selected, it can then execute each individual computer command that makes up the macro. For example, a first symbol sequence can be assigned to the command “paste to”; a new symbol sequence can be developed to create the command “paste from”; and a further symbol sequence can be added to create a macro “paste from note pad” or “paste from hand base”. This will be discussed in more detail with regard to
Once the available computer commands and available application programs are known, a hierarchical list of logically organized command sets is preferably created. However, this list is not inherently the easiest to remember and does not effectively represent a grammatical structure. “File:new” is not an effective grammatical structure like “create a new window” or “create a new document”. The proper grammatical structure is much easier to read, make sense of, and remember over time. The logical set is more cryptic and in most situations looses touch with the intended meaning. By organizing commands and programs in a more semantic and grammatical sense, appropriate symbol sequences can be assigned and associated therewith.
With regard to many of these commands, there is also a common order such as “copy paste”. We normally say “copy paste” as one command, but it is actually two commands with totally different meanings, very closely tied to each other in use. The copy occurs first, and then the paste command can be executed. However, using the “macro” concept, the two aspects of “perform a copy” and “perform a paste” can be performed in any order. Thus, new commands such as “paste from an application”, which does not change the intended meaning of the individual commands when it is followed by “perform a copy”, can be assigned a different symbol sequence than the command involving perform a copy and then perform a paste. This aspect of utilizing a macro to enhance the capabilities of existing systems will be discussed further with regard to
a-5c illustrate the use of symbol prediction and illustrate how a symbol sequence is selected and then used to enable an application program for example, such as the HanDBase program of the PalmPilot™ for example. Initially, after selecting the iconicity symbol as shown in
Moving to
Finally, in response to selecting two “find” symbols in sequence, five symbols remain. The valid “third” symbols in storage symbol sequences as shown in
As shown in
Thereafter, the display will preferably (but need not) maintain display of the template 130 to allow for navigational commands within the HanDBase program, and the HanDBase program will then be displayed in the display area 120. Accordingly, the HanDBase application program is easily accessed by input of three symbols and can be easily remembered through an association between first the “find” symbol and all information category application programs stored within the device, as well as a second association between the file cabinet and the particular HanDBase program itself. Similarly, if other information type application programs were to be accessed, the find symbol would be selected twice, as shown in
As previously stated, the present application applies both to utilizing symbol sequences to enable application programs and to execute commands. Thus, a plurality of polysemous symbols can be provided for selection in a manner similar to that shown by template 130 of
Initially, before discussing examples of
a and 6b illustrate how the move down command is executed in response to selecting a sequence of the move symbol and the thumbs down symbol. They are shown, for example, within a “FishKeeper” record of the HanDBase application program. Within this particular application program, many first symbols are shown on the symbol template as being available valid symbols, with only the find symbol, eye symbol and stop sign symbol being deactivated (invalid). Thus, all other symbols are available as a first symbol from a sequence symbol for executing some type of command within the particular HanDBase application program.
In
The executed “move down” command can be derived from the FishKeeper screen shown in
In addition to just moving up and down, for example, by moving one line as shown in
With regard to specific application programs, it is preferred that at least three symbols are used (however, the present application is not limited as such, as any number of symbols greater or less than three can be used) to thereby expand the number of application programs that can be accessed by a symbol sequence. This is because an indefinite number of application programs could be made available, depending on the particular device itself. However, of course, two symbols can be used if only a few application programs are present (or four or more if many application programs are present).
With regard to the command sets, however, since most command sets are pretty well defined, most of these command sets can be associated with only two symbols in a sequence. This allows for simple movement through execution of the two symbol commands such as the “page down” sequence and the somewhat similar two symbol “page up” sequence (using the thumbs up symbol instead of the thumbs down); a simple page left and page right sequence (the card symbol along with the left or right symbol, respectively); a simple two symbol sequence for moving down and moving right (with the right symbol instead of the thumbs down); and two similar symbol sequences for moving up and moving down. In addition, printing a record can be a simple two symbol sequence (such as the draftsman and file cabinet symbol sequence for example); new records can be a simple two symbol sequence, including the new symbol and the file cabinet symbol in sequence for example, etc. Other more advanced but less used commands can include three symbols such as go to the top of the page (move+all+thumbs up) or go to the bottom of the page (move+all+thumbs down). Further, in the command sequence, similar to the application program sequences, a sequence can include one symbol repeated a plurality of times (for example, the “about” command can include the eye symbol repeated twice).
In addition, similar to the sequences associated with application programs, a sequence associated with a command can be newly entered. For example, upon entering a storage mode, a newly input polysemous symbol sequence can be stored in association with a macro, wherein the macro is executable in response to receiving input of an associated polysemous symbol sequence. In this case, the macro can be a new command for example.
As previously stated, existing commands within a computer device, which can be enabled or executed in response to a selection of an associated polysemous symbol sequence, need not only be navigation commands for moving around within a particular application program. They can also include standard commands such as save (the key pad symbol+the file cabinet symbol, for example); open (the key pad symbol+the move symbol, for example, etc.). Another such example is the “new record” command. As shown in
In addition, while the FishKeeper database could be one database available in the HanDBase application, a new database can be created utilizing the symbol sequence new+all+file cabinet. As shown by 540 of
A further example of a command being executed in response to a selected corresponding symbol sequence is shown in
Accordingly, “commands” as used through the present application need not include merely navigational or movement type commands, but can also include standard commands available within an application program (intra-application commands), as well as commands utilizable between application programs (inter-application commands). These inter-application commands can transfer information from one application program to another, as will be explained as follows.
a-9c illustrate a method for executing an inter-application command, namely a command which operates between two application programs. That particular command being executed in
Initially, as shown in
Thereafter, as shown in
a-10h illustrate how the methodology of the present application can be used to access commands which essentially create operations not previously accessible.
Initially, as shown in
Within this program, an area or line is then highlighted as shown by the arrow 740 in
As such, when the macro command “paste from” is accessed, the software can store an internal marker, for example, in a built-in storage database that references the area that was selected when the “paste from” command was executed. Later, when a copy (any copy) is performed, the macro can intercept the copy command after the selected item is copied into the built-in clipboard storage area of the operating system (OS). The macro can then retrieve the aforementioned marker and open up the page or record. It can then paste the item located in the OS clipboard storage area into the area defined by the marker, thus completing the macro and clearing any marker set by the macro. Accordingly, such macros can make use of internal computer commands by storing them in an internal database program, retrieving them, and then executing them in a predefined order as set by the program that is storing and building the macro.
a-d illustrate a macro command of “paste from memo pad”, corresponding to the symbol sequence of “draftsman, control+control+right”. This macro is essentially created from the “paste from” command and is one which, in this example, is stored in association with a sequence of four symbols. Similar to the scenario previously discussed with regard to
As shown in
The computer device of the present application may be a PDA such as that shown in
As shown in
However, if the scrolling arrow keypad 930 is included, it can be used to sequentially select various ones of the symbols. The symbols can be selected and entered through the use of the scrolling arrow keypad 930 and through the use of one of the buttons 920 for example. Alternatively, the numeric keypad 910 can include keys associated with various ones of the symbols for selection thereof; can include an overlay corresponding various ones of the symbols to various keys of the numeric keypad 910 (wherein in such an instance, the symbols need not be displayed on display device 940); or other techniques such as voice recognition technology, for example, can be used to select the symbols.
In order to adapt the symbol template and the basic symbol sequence aspects of the present application to mobile telephone technology, as with any type of computer device, one need only acquire a list of available command sets and applications from the device. The commands and applications can be retrieved and can be associated with one of a plurality of polysemous symbol sequences in a manner somewhat similar to that previously described generically in the PDA environment with regard to
More specifically, commands can be initially retrieved in their inherent logical order. For example, the command “one; LOCK” can be found as a main category within the first menu of the device for example. Then, a secondary or subcategory and a final command are compiled (such as “1; LOCKED” and “1; KEY LOCK” and “Yes” or “No” being compiled to “1; LOCK: 1; KEY LOCK: Yes”; or “1; LOCK: 1; KEY LOCK: NO”), or just a final command (“2; DISPLAY; 1; MY NUMBER”).
The aforementioned examples provide two situations: the first of which are two position command sequences like “2; DISPLAY: 1; MY NUMBER”; and the second situation involves three position command sequences like “1; LOCK: 1; KEY LOCK: Yes”.
After collecting all of the available computer commands, a hierarchical list of logically organized command sets can then be uncovered. However, this list is probably not inherently the easiest to remember and probably does not effectively represent a natural structure; thus it should be changed to a more natural structure from which categories and sub-categories (and associated symbols can be created). “1; LOCK: 1; KEY LOCK: Yes” is not as grammatically easy to remember as “Set Key Lock Yes”. The second phrase is much easier to read, make sense of, and remember over time. The logical set is much more cryptic, and in most situations looses touch with its intended meaning. By changing commands to a more natural structure, it is much easier to evaluating symbols and symbol sequences for associating therewith.
In producing a symbol set or template such as that shown by element 950 of
Further, it should be noted that the template 950 shown in
Once the full list of command sets (and/or application programs) are identified, semantic groupings can be established using a core set of the most commonly used categories. This core set, for the mobile phone for example, may contain semantic groups like “view number”, “view settings”, “view back light”, “view version”, etc. Although most of these are found under various different menus, they can be organized differently based on their similar natural semantic structure and can therefore be associated with symbol sequences involving a similar first symbol or category symbol.
A set of symbols themselves are preferably displayed horizontally across the bottom third of the screen 940 of the mobile phone 900 as shown by element 950 of
In the embodiment shown in
When using the four-way navigation scroll button 930 (or some type of left-right navigation scroll button for example) and the enter and cancel keys 920, when the scroll button is pushed in any direction, a default symbol in the template 950 is then preferably highlighted. A next push on the four-way navigation scroll button 930 then moves the highlight to the next appropriate symbol that falls in the direction that the scroll button 930 is pushed. When a desired symbol is highlighted, or otherwise differentiated from other symbols in some way, then the entered key (one of the two keys 920 for example) can be pushed to select this symbol as a first symbol in a symbol sequence. This will preferably start a symbol prediction mode as well, wherein only available symbols can be selected at a next symbol in the sequence (with unavailable symbols being differentiated in some way from the available symbols through the use of highlighting valid symbols or even more preferably darkening the invalid symbols). Of course, symbol prediction can alternately begin immediately by highlighting only valid first symbols, if desired.
A second push on the four-way navigation scroll button 930 then preferably highlights another default symbol (preferably only a valid symbol and not an invalid symbol). Of course, symbol prediction need not be used if desired, but the use of symbol prediction is preferred.
Even more preferably, after one symbol in a sequence has been selected, this symbol is displayed. In addition, each time a new symbol is highlighted for potential selection (by moving the four-way navigation scroll button 930 to the symbol), a corresponding program or command corresponding to the first symbol and the highlighted symbol is preferably displayed in the second field of the display 940. For example, if the second symbol would complete a symbol sequence associated with a particular command, that command is preferably displayed so that the user knows that if that particular symbol is selected, then the command will be executed; and/or if it corresponds to an application program, then the particular application program will be enabled.
When the second and/or final symbol in the symbol sequence is highlighted, and the enter key 920 is thereafter pushed, the command or application program associated with the symbol sequence (with the text of the program or command preferably being displayed in the display area 940) is then executed or enabled. Thereafter, the template 950 preferably resets to a default state and is then again ready for navigation via the four-way navigation scroll button 930 or other input selection device. If a particular choice or selection of the symbol is not acceptable, then the other of the two buttons 920 is preferably selected to cancel this symbol and thus revert back to a previous state in the symbol sequence, nullifying any symbols previously chosen. Further, similar to that described previously, the template 950 an remain displayed or can be displayed upon entering a mode such as the iconicity mode (via symbol selection or key selection for example).
As such, a comprehensive package can be designed for controlling and accessing the various commands and application programs of the mobile phone, in a very similar manner to that previous described in the PDA environment with regard to
In the mobile phone environment, for example, association of polysemous symbol sequences with application programs or commands can also be used to access remote networks, such as the Internet for example. Known methods used to navigate web pages (that have been previously filtered through WAP-like protocols for example) are similar to those used in the navigational techniques previously discussed with regard to
Application of the present invention to a network, such as the Internet for example, will be discussed in more detail hereafter. However, it should be understood that such techniques may be used to access the Internet in any way, through a PDA, through a mobile phone, or through a personal computer for example, and thus the present invention equally applies to any type of computer device.
In the context of a personal computer such as that shown in
Similar to establishing polysemous symbol sequences for association with application programs and commands in the PDA or mobile phone environment, when used in connection with an Internet browser, a list of available command sets from the program application must first be obtained. When retrieved, they can then be placed in their inherent logical order, using “file” as a main category as found within the application for example. Then, either a final command can be compiled (“file” and “new” become “file: new”), or secondary or subcategories as in “favorites: organized favorites: new folder” can be established, with “organized favorites” being a secondary category with no real inherent command attached thereto and “new folder” being the final command producing the program action, for example. Again, each of these commands/categories are merely exemplary and used only to illustrate the application of the present application techniques to the Internet browser environment.
By performing the above-mentioned operations, two position command sequences like “file: new” can be established as well as three position command sequences like “view: browser: bondi”. In some situations, instead of executing a final command which produces an action from a two position command sequence or a three position command sequence, it may end with a special command that transports the user to a dialog window or model dialog window with further command sets like “edit: preferences . . . ” for example (with the . . . indicating the transport). With model dialog windows, more sets are available like “browser display: show tool tips” for example, thereby producing a final logical order of “edit: preferences . . . : browser display: show tool tips”, for example.
Other situations may occur involving buttons, default buttons, radio buttons, etc., where a button may be associated with a final command and therefore, become part of a command set. For example “edit: find . . . cancel” or “edit: find . . . find”, where “cancel” and “find” are buttons and are available choices resulting in the model dialog window produced by the “edit: find . . . ” transport, produce a final command set of “edit: find . . . cancel” or “edit: find . . . find”. Another situation may be where a button or a symbol, usually contained within the tool bar or floating window, represents the command or is a transport to another set of symbols or symbol buttons like “paintbrush” (a symbol); “brush size” (available brush size symbols). These buttons and symbols usually do not contain text (some do), but do usually have an associated name like selection tool, fill tool, align left, align right, etc. These symbols may produce two distinct types of commands, the transports and then the final command, or just a final command.
Finally, another situation may occur when an item or a window has a pop-up menu with available final commands and transports to further command sets and final commands. A pop-up menu usually does not have text (some do), but does usually have a name associated with it like “draw”, where the superscript “ˆ” is the arrow designating the pop-up. The command set looks something like drawˆ: orderˆ: bring to front”.
After collecting all of the available computer commands/application programs, a hierarchical list of logically organized command sets is established. However, this list may not inherently be the easiest to remember and does not effectively represent a grammatical structure. “File: new” is not as grammatically easy to remember as “create a new window” or “create a new document”. The grammatical set is much easier to read, make sense of, and remember over time. The logical set is much more cryptic and in most situations loses touch with the intended meaning. Accordingly, various command sets are preferably changed into grammatical phrases and then compiled into categories, subcategories, etc., and thereafter associated with symbols and symbol sequences in a manner similar to that previously set forth with regard to
Some commands have taken on a more universal meaning, especially with some keyboard-shortcut commands. For example, “edit: copy” has taken on the meaning of “copy” or an alternative meaning like “command copy” or “alt copy”. These special commands have the effect of becoming a core set of commands which are found on approximately 90 percent of all computer programs. The primary list starts with New, Open, Quit, Close, Cut, Undo, Copy, Paste, Undo, Select, Select All, Find, Save, Save As, Import, Export, Page Set Up, Print and Print. The best known of this corset, of course, are NEW, OPEN, QUIT, CUT, UNDO, COPY, PASTE.
There is also an order to these commands where copy is normally first, with paste occurring thereafter, with the phrase “copy, paste” being normally associated with one command. However, it is actually two commands, with two totally different meanings but they are very closely tied to each other in use. This is due to the hierarchical nature of programming languages, but is not an obstacle when used in association with symbol sequences for controlling command sets. “Perform a copy” can occur with “perform a paste” occurring in the same order as the hierarchical method. The grammatical nature can also be changed to create “paste from application”, and then “perform a copy”, which does not change the intended meaning of the individual commands but which profoundly changes the way and order in which these command sets are performed.
The change is very effective in increasing productivity and providing for a completely different means for performing common commands in a more grammatical way but also makes much more sense. New methods or concepts can now change the way computer programs are used by changing the grammatical order of command sets within a predetermined set of rules.
The next step in producing a symbol set or symbol template, is to evaluate the full list of command sets looking for semantic groupings, using a corset of the most commonly used categories. Using semantic groupings rather than hierarchical groupings resolves a lot of problems that programs have encountered like whether “preferences” should fall under the “file” menu or the “edit” menu. In creating semantic groupings, “preferences” fall most likely after change”, i.e., “change references”, and could fall within a group containing “change font”, “change font size”, “change formatting”, etc.
A core set, for example, can contain semantic groups like “new”, “new window”, “new document”, “new address”, etc. Although most of these are found under the “file” menu, some can be found in buttons, pop-up menus and in dialog menus. Therefore, the category “file” is not preferably used, but rather the more grammatical “new” and “window” are used to better organize available commands under their more grammatical, semantic nature. From this, symbols and symbol sequences can be created and can be associated with application programs and/or command sets in the PDA environment, mobile phone environment, etc.
As shown in
In the case of an Internet browser, a core set (as is found in other applications), as well as a very specific command set unique to the operation of the browser, such as the Internet Explorer for example, can be uncovered. Also, the actual navigation involved in the browsing a web page, as in navigating the content, can also be uncovered. The actual methods used in browsing can include buttons and shortcuts including “back”, “forward” and “home”, as well as elements such as “add page to favorites”, “refresh”, “find”, along with scroll bars, tab bars, etc.
The navigation of web page content can include the use of hyperlinks and/or image maps, as well as text entry fields; and/or the more obscure use of java and its own use of buttons and graphics. Since the content of web pages is ever changing and unpredictable, this situation should probably be approached differently than that of accessing more predictable command sets found within the Internet browser program itself.
First, the most popular hyperlinks found on a web page, that the user is attempting to navigate, are preferably extracted via the source code, for example, and associated a corresponding “F Key” which is found on standard 101 Keyboards. Then a corresponding symbol representing that “F Key” is inserted (via. the source code for example) in front of the actual hypertext link on the page as it is loaded into the browser as a web page.
This method makes use of a separate plug-in or filter. The plug-in extracts the source code of a web page, at the point right before it starts to load, and then scans the source code and cross references it to a pre-determined list of the top 10-100 most commonly found HTML commands.
When a match is found, the hyperlink is then associated with a symbol sequence in the plug-in data base which, only then, is made available (via symbol prediction, for example). After an association is made, another technique can be applied to navigate the web page content.
One such technique is to continue to load the page. When the user passes over the sequenced symbols associated with the hypertext, the associated text from the hypertext link is then displayed within the symbol prediction display area. Thereby, what the sequenced symbols relate to on the web page itself can be displayed. When the use selects this symbol sequence, the command is sent to web browser representing the appropriate command from the hypertext link, usually a link to another page or area on the web site.
Another technique, for example, can be the inserting of a link, into the source code of the found associated hypertext link, into the symbol sequence, which can be found in a separate database consisting of the symbols. This database can reside either locally (on the computer navigating web pages) or remotely from a web resource page. This link can then load the symbols along with the regular source code (that was previously extracted) and the symbols will preferably be displayed along side of the original hypertext link text. Thereby a visual feedback of both the symbol sequences, and correspondence to what actual sequences have been found and associated, from within the database, which are now available for use (via symbol prediction, for example) from within symbol template.
An example of this method is:
Sample snippet of source code as it is retrieved in tact;
Source code after match has been found and it has been altered;
Original source code:
First symbol text inserted:
Second symbol text inserted:
Original source code continued:
Source code that is inserted into database and associated with the symbol sequence of “New:Picture” (the “New” symbol and the “Draftsman” symbol), and to be executed when the symbol sequence is chosen:
Thereby, a new hypertext link is produced, preferably including the associated polysemous symbol sequence for visual reference, and also preferably showing which links have been associated. A running database can thus be created associating symbol sequences to actual text links to thereafter execute the hypertext link when the associated symbol sequence is selected. As such, computer network commands: including but not limited to hypertext links, navigation commands for navigating through the internet, world wide web address links, and search engine links; are executed in response to selection of an associated polysemous symbol sequence.
Thus, the methods and situations of the various the preferred embodiments of the present application as discussed with regard to
In addition, by allowing the user to constantly create entries for the database, user customizability is increased. The user can create different symbols, each with their own look and feel, producing various themes. Adding pre-compiled sets of new or upgraded symbols to the template 1030, for example, can change the number of symbols or can add additional rows or columns of symbols. Associated symbol sequences can be added when downloading a set of business links, music, graphic links, etc.
One other approach is to have symbols in the entire program done in a more java-like setting, using a technique involving frames accessed from within the browser at the web page level. A frame can hold the symbol template 1030, and a plug-in for gaining access to the actual program and corresponding operating system, which is normally achieved from the operating system level and not from the web page level, can be downloaded.
In summation, in adapting the symbol sequence association to commands and/or application programs of the present application, to the browser environment, the following steps may be followed: computer commands of the particular computer device can first be listed. Thereafter, these commands can be converted to some type of grammatical structure. Thereafter, a set of symbols (look and number), can be designed to correspond to the resulting command set. Categories and sub-categories can be created and associated with various symbols. Thereafter, the symbol sequences can be stored in association with the various commands/application programs (including computer network commands). Thus, for example, a top 10-100 HTML commands can be listed, and symbol sequences can also be assigned thereto, such that a selection of associated polysemous symbol sequences can enable execution of a particular command and/or a particular HTML link.
With regard to favorite or most common search engine links or other favorite links, these can also be listed. Thereafter, symbol sequences can be stored in association therewith and can be used to enable or execute a link to a favorite website or favorite search engine. A simple program can then be written for interaction between the symbol template and the browser software as well as a program for customizing and associating web links and the most common search engine links. Further, the system can be designed to provide for downloading and upgrading of symbol themes and software changes to deal with other aspects such as dead links, etc.
Additionally, customizability can include changing the behavior of the symbol template or interface 1030 for example, or any other of the templates or interfaces 950 or 130 described in
Additionally, in another preferred embodiment of the present application, symbols of any of the templates or interfaces 1030, 950, 130, etc. of
In another preferred embodiment of the present application, symbols of any of the templates or interfaces 1030, 950, 130, etc.,
Similarly, when learning a category of sequences and corresponding commands or applications, such as the category of “move” commands, a name or a symbol (or both) can be displayed in association with each of a plurality of selectable last symbols in a sequence. Thus, utilizing the “move” commands as an example, upon selecting the “starting flags” (the move symbol and first symbol in move command sequences), the phrase “move down” can be displayed (in any of the aforementioned matters as expressed above regarding the “page down” example) in association with the “thumbs down” symbol (last symbol in a sequence); the “move right” command can be displayed in association with the “right” symbol; the phrase “move left” can be displayed in association with the “left” symbol; and the phrase “move up” can be displayed in association with the “thumbs up” symbol.
Thereafter, once the last symbol and/or name and/or symbol corresponding to the command or application program is selected, one of the application programs or commands is enabled in response to receiving selection of the entire associated polysemous symbol sequence (wherein the displayed name and/or symbol displayed in association with a selectable last symbol in a sequence can be recognized as the last symbol in a sequence when selected, to thereby enable the associated application program or command). Such a system can operate in association with any of the other aspects of the present application as previously discussed, including but not limited to the display of the polysemous symbols as a virtual keyboard, the display of valid symbols and the differentiation of valid symbols from invalid symbols; the highlighting of valid symbols or the darkening of invalid symbols; the enabling of application programs or commands for a mobile telephone, personal digital assistance, personal computer, or any other computer device; etc. As such, an interface is created wherein, prior to selection of a last symbol in a sequence, at least one of a name and a symbol corresponding to at least one of a command in an application program, is displayed in association with the last symbol in a sequence, to thereby facilitate learning of the correspondence between the symbol sequence and the command or application program.
Further, in connection with the PDA example illustrated in
As such, a method is developed by providing a plurality of polysemous symbols for selection; storing a plurality of sequences of the selectable polysemous symbols, each stored in association with at least one of a command in an application program; and displaying, prior to selection of a last symbol in a sequence, at least one of a name and a symbol corresponding to at least one of a command and an application program, in association with the last symbol in the sequence. This thereby facilitates learning of the symbol sequence corresponding to the command or application program. Again, this can apply to any of the various aspects of the present application as previously discussed in connection with any of
With regard to the article of manufacture 800, the article of manufacture itself can be a computer useable medium such as any of the storage elements listed above, or can include a computer usable medium containing each of the first, second and third code segments (or other code segments) referred to above. In addition, the article of manufacture 800 can include a fourth code segment for causing the computer device to display the plurality of polysemous symbols within an accessed application program; a fifth code segment for causing the computer device to store a plurality of sequences of the displayed polysemous symbols, each stored in association with a command; and a sixth code segment for causing the computer to execute one of the commands in response to receiving selection of an associated polysemous symbols sequence.
Accordingly, the computer device, method and article of manufacture of the present application as discussed in
Regarding the specific configuration of the keyboard, the keyboard preferably includes no more than two rows of polysemous symbols, and more preferably includes no more than eighteen polysemous symbols. The various symbols should be chosen so as to represent, in some semantic way, multiple meanings which can be recognized when associated with other symbols in a symbol sequence. Further, regarding the display itself, the display preferably is adapted to also display input polysemous symbols in an area 210 for example, as shown in
In conjunction with each of the various embodiments of the present application discussed with regard to
While voice recognition technology is currently used in a word processing environment, such voice recognition technology has problems in dealing with different inflections of the speakers and mainly in dealing with continuous speech or connected prose (namely words or phrases running together). An endless amount of training is normally needed for these systems and accuracy is not always reflected in the effort applied. Multiple users creates problems, as does use in a noisy environment.
However, utilizing semantically connected symbol sequences to enable application program, execute commands, or enable various functions connected with Internet use, only a finite number of words (one or two corresponding to each symbol) need be spoken by user and recognized by the voice recognition device/software. Assuming that the sequences include two or three symbols, any user need merely utter a simple command from two to six words to provide selection of the various symbols in a symbol sequence via voice recognition technology to eventually enable an application program, execute a command, execute a function related to the Internet, etc. As such, extensive training will not be necessary and errors will be reduced considerably. Such a methodology can easily be applied to existing speech recognition technology, such as that discussed in U.S. Pat. No. 6,192,343, the entire contents of which are hereby incorporated by reference.
Accordingly, Applicant's simple template, while providing for a way to easily access and execute programs and commands utilizing a minimal amount of screen space and device, can also provide for an extremely efficient and accurate use of voice recognition technology. The plurality of polysemous symbols are stored for selection via voice input, with each symbol being stored in memory in association with a single name (such as “globe” for the world symbol, “money” for the dollars and coins symbol, etc.). Then, a plurality of sequences of selectable polysemous symbols are stored in memory, each stored in association with at least one of an application program and a command. Thereafter, in response to receiving voice input selection of names of an associated sequence of polysemous symbols, an associated one of the applications or commands is enabled. Optionally, the symbols can be displayed in sequence, in response to its associated name being selected via voice input. The associated commands and/or programs can include any of those discussed previously with regard to
Thus, utilizing this voice recognition technology, each of the various optional functions previously addressed with regard to the present application equally applies. The technology can be applied to enable application programs or commands of any type of computer device such as a mobile telephone, personal digital assistant, personal computer, etc. For example, such a computer device includes a memory, adapted to store a plurality of polysemous symbols for selection via voice input, each symbol being stored in association with a name, and adapted to store a plurality of sequences of the selectable polysemous symbols, each sequence stored in association with at least one of a program and a command; and a controller, adapted to execute at least one of a program and command in response to receiving voice input selection of names of symbols of an associated polysemous symbol sequence.
Further, other optional aspects of the present application, discussed with regard to
In another preferred embodiment of the preferred application, symbols could be sequenced which are not necessarily polysemous in nature. For example, a template of a plurality of single meaning symbols could be created, wherein each single meaning symbol provides access to a plurality of other meaning symbols to essentially execute or enable an application program or command when two or more symbols are selected.
One example of this use of sequenced single meaning symbols is shown in
In addition, not all of the symbols of the template need be displayed. For example, when the “delete” (skull) symbol is first selected, the ten most popular symbols for completing a symbol sequence can be displayed. If a user does not want to select one of these ten most popular symbols, he could then hit a symbol connected at the end of the new template being displayed, thereby providing access to additional less popular symbols which could create additional less popular symbol sequences.
Still further, it should be noted that the use of sequenced single meaning symbols is not limited to just two symbol sequences, and could involve sequences of three or more symbols. In such a case, if one symbol is selected, a toolbar of new symbols 1125 can be displayed as shown in
b provides another illustration wherein the delete symbol 1115 is first selected, and thereafter a toolbar 1125 is displayed, from which symbol 1130 corresponding to spray painting is selected. At this point, the spray painting that was previously done, will be undone based upon such a command being associated with the single meaning sequence of the “delete”+“spray paint” symbols.
c shows another example of the use of these single meaning symbols being sequenced together. In this example, the “sun” symbol is associated with the category “new” (its single meaning). When selected, another toolbar 1140 is then displayed, corresponding to single meaning symbols which could continue or could complete a symbol sequence. Thereafter, if the text symbol 1145 is selected, the command “new text” is executed based upon the symbol sequence “sun”+“text” being stored in association with the command “new text”. It should be noted that the same additional template of symbols 1140 and 1125 can be used for multiple sequences and can be displayed in response to selection of different category or first symbols, and can be used to execute different commands when sequenced with different first “category” symbols. Alternatively, a different template of symbols can be displayed in response to selection of some or all of the first “category” symbols.
Finally,
Accordingly, in this preferred embodiment of the present application, a first plurality of symbols, such as template 1110 for example, is provided for selection; a plurality of sequences including the selectable symbols and additional symbols are stored, each stored in association with a command; a second set of symbols is displayed for selection in response to selection of a symbol of the first set, such as templates 1125 or 1155 for example; and a command is executed, such as “new text” of
The invention being thus described, it will be obvious that the same may be varied in many ways. Such variations are not to be regarded as a departure from the spirit and scope of the invention, and all such modifications as would be obvious to one skilled in the art are intended to be included within the scope of the following claims.
Number | Date | Country | |
---|---|---|---|
Parent | 09797179 | Mar 2001 | US |
Child | 11365584 | Mar 2006 | US |