The present invention relates generally to the data processing field, and more particularly, relates to a method, system and computer program product for implementing enhanced autocomplete via multiple mobile keyboards.
On any mobile device, typically switching is required between multiple keyboards, such as letters, numbers, punctuation, emojis and sometimes other languages. A certain population is able to text without looking at the mobile screen. Sometimes when people text without looking at the screen, they forget to toggle between keyboards, for example, resulting in punctuation gibberish (‘;,[ ];]’;23) rather than the intended words.
A need exists for an efficient and effective mechanism for implementing enhanced autocomplete via multiple mobile keyboards and autocorrection of a mobile keyboard.
Principal aspects of the present invention are to provide a method, system and computer program product for implementing enhanced autocomplete via multiple mobile keyboards. Other important aspects of the present invention are to provide such method, system and computer program product substantially without negative effects and that overcome many of the disadvantages of prior art arrangements.
In brief, a method, system and computer program product are provided for implementing enhanced autocomplete via multiple mobile keyboards. A user input is mapped to other keys to identify a meaningful message. When a meaningful message is not identified, the user input is compared with text using other keyboards for the mobile device. When a meaningful message is identified, the user input is automatically corrected.
In accordance with features of the invention, mapping of the user text is performed, for example, using key proximity, frequency, and location of the user key touches to identify a meaningful message.
In accordance with features of the invention, when a meaningful message is identified, the user is notified with a haptic, audio or visual alert presented to the user. The user then has the option to switch to replace the current keyboard's output with the suggested keyboard's output.
In accordance with features of the invention, pattern matching is used to identify intent of a user when the words are typed on a wrong keyboard of the mobile device and then the typed words are autocorrected.
In accordance with features of the invention, when a series of punctuation or numerical symbols are typed, the series of user input is mapped to the alphabetical keys to determine whether there is a word or series of words that can be typed. For example, via a phone dictionary and language are used determine if the input represents a meaningful message, if not checking with another keyboard is performed, if the message then makes sense, a correction is made.
In accordance with features of the invention, user input text is mapped to a most common keyboard and if that fails, the current user input text is passed for processing at another set of keyboards including previous recently used keyboards.
In accordance with features of the invention, when a user is typing on the screen as if there is a keyboard when there is no keyboard displayed, then this is processed by bringing up a keyboard and checking the input text already entered by using key proximity, frequency, and location of key touches or patterns to try to identify the intent of the user and to bring up the correct keyboard
The present invention together with the above and other objects and advantages may best be understood from the following detailed description of the preferred embodiments of the invention illustrated in the drawings, wherein:
In the following detailed description of embodiments of the invention, reference is made to the accompanying drawings, which illustrate example embodiments by which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the invention.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
In accordance with features of the invention, a method and mobile system are provided for implementing enhanced autocomplete via multiple mobile keyboards. A user opens an application on a mobile device and inputs text. When a meaningful message is not identified, mapping the text input to other keys is performed. Pattern matching is used to identify intent of a user when the words are typed on a wrong e-keyboard and then the typed words are autocorrected.
Having reference now to the drawings, in
Computer system 102 includes a system memory 106 including an operating system 108, an autocomplete keyboard control 110 in accordance with preferred embodiments, and a user interface 112. System memory 106 is a random-access semiconductor memory for storing data, including programs. System memory 106 is comprised of, for example, a dynamic random access memory (DRAM), a synchronous direct random access memory (SDRAM), a current double data rate (DDRx) SDRAM, non-volatile memory, optical storage, and other storage devices.
Computer system 102 includes an input/output interface 114 connected to an input device 116 and a client system application output 118 of the mobile system 100 in accordance with preferred embodiments.
Mobile devices often use soft or e-keyboards for written user input. These keyboards use a section of the screen to display a virtual keyboard with which the user interacts. Users may also switch between various keyboards for multiple languages or functional purposes. Proficient users may interact with these keyboard without looking at the screen.
In accordance with features of the invention, when a user attempts to create a message believing a different keyboard is displayed than what is actually on screen, position is recorded of all touches to the keyboard. When the user enters a series of touches, the current virtual keyboard's output is examined and is then checked with a dictionary of output for the keyboard to determine if the output represents a meaningful message. If it does not, the same position of touches is checked against other available soft keyboards for the device. If the output of one of those other keyboards matches dictionary values then a haptic, audio or visual alert is presented to the user. The user then has the option to switch to replace the current keyboard's output with the suggested keyboard's output.
In accordance with features of the invention, mapping the location of particular numbers and symbols on one mobile keyboard to the letters on another mobile keyboard is used to provide effective autocomplete. If a series of punctuation or numerical symbols are typed, they are mapped to the alphabetical keys to determine whether there is a word or series of words that can be typed. For example, via the phone dictionary and language are used determine if the input represents a meaningful message, if not checking with another keyboard is performed, if the message then makes sense, a correction is made.
In accordance with features of the invention, the new enhanced autocomplete keyboard control extends the scope of autocorrect to span multiple keyboards with processing multiple mobile keyboards ensuring client system application output is reasonable, effectively addressing autocorrect functionality. For example, on smart phone, such as an Apple iPhone, “2$-5:9 697 2-!5;94:8!!4” translates to “what do you want for dinner”—by detecting that “2$-5” does not have meaning in the dictionary, the new enhanced autocomplete keyboard control checks what the mapping is on a different keyboard, and therefore would detect “what.” Since “what” has some meaning, the iPhone can suggest “what” via autocomplete. In addition, if the user keeps typing and writes “2$-5:9” the new enhanced autocomplete keyboard control can automatically switch the keyboard for the user. Also incorrect finger placement on a keyboard can be detected and corrected.
In accordance with features of the invention, user input text is mapped to a most common keyboard and if that fails to identify a meaningful message, the current user input text is passed for processing at another set of keyboards including previous recently used keyboards. When a user is typing on the screen as if there is a keyboard when there is no keyboard displayed, then this is processed by bringing up a keyboard and checking the input text already entered by using key proximity, frequency, and location of key touches or patterns to try to identify the intent of the user and to bring up the correct keyboard.
Referring to
Referring now to
In
In
Referring now to
Computer readable program instructions 404, 406, 408, and 410 described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. The computer program product 400 may include cloud based software residing as a cloud application, commonly referred to by the acronym (SaaS) Software as a Service. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer readable program instructions 404, 406, 408, and 410 from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.
A sequence of program instructions or a logical assembly of one or more interrelated modules defined by the recorded program means 404, 406, 408, and 410, direct the system 100 for implementing enhanced autocomplete via multiple mobile keyboards of the preferred embodiment.
While the present invention has been described with reference to the details of the embodiments of the invention shown in the drawing, these details are not intended to limit the scope of the invention as claimed in the appended claims.