Patent Description:
Application programs (hereinafter simply referred to as applications) for e-mail, notepads, or the like in which a user inputs character strings are installed in electronic devices such as smartphones. A character input device for the user to input character strings is provided in this type of electronic devices. The character input device has a dictionary database in which (e.g. in the case of Japanese language input) pronunciation character strings (hiragana (a type of Japanese syllabograms)) and converted character strings are registered in association with each other, as described in <CIT>, for example. The character input device extracts, from the dictionary database, converted character strings corresponding to a pronunciation character string that is input by the user, presents the extracted converted character strings to the user, and outputs the converted character string that is selected by the user to the application. Note that, depending on the type of application, the character input device outputs the pronunciation character string that is input by the user to the application.

<CIT> discloses a computing device that can generate user input correction suggestions based on the user's context. For example, the user's context can include content that the user has open or has recently opened on the computing device or another computing device. When the user opens an item of content, the computing device can generate a context dictionary that includes words, phrases, etc., that describe the opened content. When the user provides input (e.g., text, speech, etc.) the computing device can use the context dictionary to generate input correction suggestions. The computing device can synchronize the context dictionary with other computing devices that the user may be using so that the user's context on one device can be used by another device to generate input correction suggestions.

<CIT> discloses a computing device that includes a presence-sensitive display component, at least one processor, and a memory. The memory stores instructions that when executed cause the at least one processor to output, for display, a graphical keyboard comprising a plurality of keys and a search element, and determine, based at least in part on a selection of one or more keys from the plurality of keys, a query suggestion. The instructions, when executed, further cause the at least one processor to receive an indication of input selecting the search element, and responsive to receiving the indication of input, output, for display, an updated graphical keyboard that includes a selectable link associated with the query suggestion.

<CIT> discloses a method comprising receiving, at a contextual-service provider, an input fragment from an input mechanism ("IME") program running on a computing device, the input fragment comprising letters that do not presently constitute a full word; receiving, at the contextual-service provider, information from the IME program that describes a characteristic of an active application into which the IME program input the input fragment; determining that the characteristic and the input fragment satisfy a contextual service's trigger criteria; generating content used to provide the contextual service; and communicating the content to the IME program.

<CIT> discloses, in a processing system for collecting/creating data for a language analysis related to the invention, if there is an unregistered and in- analyzable language in a dictionary with performing language analysis on a predetermined text with referring to the dictionary by a morpheme analysis part, a WWW searching part searches a text on a network by using a word and character string as a key to search. An analysis with high-accuracy is achieved with acquiring data relating to the word and character string of the key, for example, hit number of texts from searched group of the texts by a search result analysis part and with registering recognitions and hit number of new words into the dictionary as the data for the language analysis. As other example, a morpheme analysis is performed on the searched texts to create a connecting table (showing relations between preceding and following morphemes) of unregistered words.

<CIT> discloses the accumulation of displayed words of an application program into a database to be used as a dictionary for text input.

However, applications with a suggestion function (e.g., web browser) are also installed in electronic devices such as smartphones. An application with a suggestion function (e.g. a prediction function for predictive character input) presents character strings of words related to a character string (pronunciation character string or converted character string) input by the user and allows the user to select one.

The character strings presented by the suggestion function also include words of character strings that are not registered in the dictionary database. Therefore, if a word that has been previously presented on an application with the suggestion function and selected by the user is not registered in the dictionary database, it takes time and effort to perform an operation to input the word to another application (particularly, an application that does not have the suggestion function (e.g., e-mail or notepad)).

Accordingly, an object of the present invention is to provide a technique that allows the user to easily perform an operation to input a character string of a word that has been previously presented by the suggestion function and selected.

First, terms used in the present invention are defined. A "suggestion function" refers to a function of presenting, to a user, character strings of words related to a character string (pronunciation character string or converted character string) input by the user and allowing the user to select one of the presented words. If, for example, "<IMG>" (transcription: 'ouchi', which means 'home') is input, the suggestion function suggests "<IMG>" (transcription: 'ouchi-jikan', which means 'time at home'), "<IMG>" (transcription: 'ouchi-en'nichi', which means 'festival day at home'), "<IMG>" (transcription: 'ouchaku', which means 'to cut corners'), or the like, as related words. In this case, "<IMG>" and "<IMG>" are coined words, and therefore, these words are usually not registered in the dictionary database. Examples of application programs with the suggestion function include a web browser.

The character input device of the present invention is configured as follows to achieve the above object.

The character input device includes the features of claim <NUM>.

This configuration enables character strings presented (suggested) by the suggestion function to be registered in the dictionary database.

In this character input device, the registration unit registers the first character string and the second character string in association with each other in the dictionary database.

For example, in this character input device, the registration unit does not register the second character string in the dictionary database if the second character string is already registered as a word in the dictionary database.

A character input method and a character input program according to the present invention as defined in claims <NUM> and <NUM>, respectively, are further provided.

According to the present invention, a technique can be provided that allows the user to easily perform an operation to input a character string of a word that has been previously presented by the suggestion function and selected by the user.

Hereinafter, a mode for carrying out the present invention will be described with reference to some figures.

<FIG> is an illustrative diagram showing character input being performed on a character input device <NUM> in the configuration example <NUM>. A user performs an operation to search for web pages with a search word (character string) that is input using the character input device <NUM>.

The character input device <NUM> is installed in an electronic device such as a smartphone, for example. Note that this electronic device is not limited to a smartphone, and may be any device that enables character input, such as a tablet or a personal computer.

Specific examples where the user inputs characters will be described. A smartphone <NUM> has a touch panel. The user starts an application installed in the smartphone <NUM>. The user inputs characters using this application.

The character input device <NUM> includes a display section <NUM>, a detector <NUM>, a display controller <NUM>, a controller <NUM>, a dictionary database <NUM>, and an output unit <NUM>. The detector <NUM> accepts the results of the user operating the touch panel of the smartphone <NUM>. For example, the detector <NUM> notifies the display controller <NUM> that the user has started the application to input characters and is about to begin to input characters (tap a character input field).

The display controller <NUM> starts the display section <NUM>. The display section <NUM> includes a character input portion <NUM> and a candidate display portion <NUM>. The detector <NUM> accepts a character string that is input by the user using the character input portion <NUM>, and outputs the accepted character string to the output unit <NUM>. The output unit <NUM> outputs this character string to the application of the smartphone <NUM>.

The user searches for web pages with a search word (character string) using a web browser (hereinafter, "browser"), and Google (registered trademark), for example. Here, the user inputs the character string to a search field <NUM> on the browser. Note that any browser with a suggestion function may be used. Further, the type of application is not limited as long as the application has a suggestion function.

The user taps the search field <NUM> on the browser. In response, the detector <NUM> causes the display controller <NUM> to display the character input portion <NUM> and the candidate display portion <NUM>.

The user operates the character input portion <NUM> and inputs characters. More specifically, the detector <NUM> detects the character string that is input by the user using the character input portion <NUM>. The detector <NUM> outputs the character string to the output unit <NUM>. The output unit <NUM> outputs the characters input by the user to the search field <NUM> on the browser. The search word (character string) is thus input to the browser. The browser executes the search for web pages using this search word (character string). A series of processing for inputting the character string is hereinafter referred to as "to input characters".

The following is an example where the user inputs "<IMG> (transcription: 'ouchi-jikan', which means 'time at home') (space)<IMG> (transcription: 'terewaaku', which means 'telework')" as search words. The user inputs the character string "<IMG>", and then inputs a space. Further, the user inputs the character string "<IMG>" following the space.

First, the user starts the browser and inputs a first character string "<IMG> <IMG>". The browser uses the suggestion function to present candidates such as character strings "<IMG>", "<IMG>", "<IMG>", "<IMG> (space)<IMG> (transcription: 'sugoshikata', which means 'how to spend time")", "<IMG> (space) <IMG> (transcription:'purezento', which means 'present')", and "<IMG> (space) <IMG> (transcription: 'guzzu', which means 'goods'). The user selects a second character string "<IMG>''.

Next, the user taps the search field <NUM> on the browser again to input a third character string "<IMG>". The user inputs a space and the third character string "<IMG>" in the search field <NUM>. In response, the browser displays the search results corresponding to the conditions given by the character string "<IMG> <IMG> (space) <IMG>".

Here, the character input device <NUM> registers that the user has input the first character string "<IMG>" in order to input the second character string "<IMG> <IMG>". More specifically, the character input device <NUM> registers the first character string "<IMG>" and the second character string "<IMG>" in association with each other in the dictionary database <NUM>. That is, when the user inputs characters, the user can obtain the second character string "<IMG>" by inputting the first character string "<IMG>". In the following example, the first character string is "<IMG> <IMG>". Note that the first character string may also be the character string "<IMG> <IMG> (transcription: 'ouchiji')" or the character string "<IMG> (transcription: 'ouchijika').

This configuration allows the user to register a character string selected using the suggestion function. More specifically, the user can register a character string presented by the suggestion function while searching for web pages with a search word using a browser or the like. That is, the user can easily input characters, and the user's convenience improves.

<FIG> is a block diagram showing a configuration of the character input device <NUM> in the configuration example <NUM>. <FIG> are illustrative diagrams showing character input being performed using the smartphone <NUM> to which the character input device <NUM> in the configuration example <NUM> is applied. Note that the example to which the character input device <NUM> is applied is not limited to a smartphone, and may be any electronic device that enables character input.

As shown in <FIG>, the character input device <NUM> includes the display section <NUM>, the detector <NUM>, the display controller <NUM>, the controller <NUM>, the dictionary database <NUM>, and the output unit <NUM>.

The display section <NUM> includes the character input portion <NUM> and the candidate display portion <NUM>, as mentioned above. For example, the character input portion <NUM> and the candidate display portion <NUM> are arranged on the screen of the smartphone <NUM>, as shown in <FIG>. Various keys for character input are displayed in the character input portion <NUM>. Conversion candidates obtained by a later-described method and/or narrowed-down conversion candidates are displayed in the candidate display portion <NUM>. Note that the character input portion <NUM> is, for example, a software keyboard.

As mentioned above, the smartphone <NUM> has a touch panel. This touch panel detects an operation performed by the user. More specifically, the touch panel detects operations performed on the search field <NUM> on the browser, and the character input portion <NUM> and the candidate display portion <NUM> included in the display section <NUM>. Detection of operations includes, for example, detection of an operation position, a time length of the operation, a temporal change in the operation position, or the like. The detection results of the operations are output to the detector <NUM>. The detector <NUM> outputs the results input from the touch panel to the display controller <NUM>, the controller <NUM>, and the output unit <NUM> in accordance with these results.

The controller <NUM> includes a character string obtaining unit <NUM>, a character string comparison unit <NUM>, an application determination unit <NUM>, and a registration unit <NUM>. Note that the controller <NUM> is constituted by a hardware CPU, a memory, and other electronic circuits. The hardware CPU works as the character string obtaining unit <NUM>, the character string comparison unit <NUM>, the application determination unit <NUM>, and the registration unit <NUM> when a character input program according to the present invention is executed. The memory has an area for loading the character input program according to the present invention and an area for temporarily storing data or the like generated when this character input program is executed. The controller <NUM> may alternatively be an LSI in which a hardware CPU, a memory, and the like are integrated. The hardware CPU is a computer that executes a character input method according to the present invention.

A character string, pronunciation, part of speech, and the like of each word are registered in association with each other in the dictionary database <NUM>. The dictionary database <NUM> is used to convert input characters (pronunciation) to an associated character string (converted character string) and make predictions. Note that the dictionary database <NUM> in the configuration example <NUM> is built in the character input device <NUM>, but may alternatively be provided on the cloud. Also, the dictionary database <NUM> may be divided into two parts, namely a system dictionary and a user dictionary.

The character string obtaining unit <NUM> obtains a character string that is input to the search field <NUM> or a selected character string. The character string comparison unit <NUM> searches the dictionary database <NUM> to check whether this character string is registered. The application determination unit <NUM> determines whether or not the user has started the same application on the character input device <NUM>. The registration unit <NUM> registers the character string in the dictionary database <NUM> in accordance with the determination result.

Next, a specific configuration of the character input device <NUM> will be described with reference to <FIG> and <FIG>.

As shown in <FIG>, the user starts the browser. In the following example, the user searches for web pages with the search words (character string): "<IMG> (space) <IMG>". Here, the user inputs a plurality of search words using the browser. For example, the user inputs a plurality of conditions by dividing the character string "<IMG> (space) <IMG>" into a character string "<IMG>" and a character string "<IMG>" by a space.

The user starts the browser and displays a search page. The search field <NUM> is displayed on this search page. Upon the user tapping the search field <NUM>, the character input portion <NUM> and the candidate display portion <NUM> are displayed. The user uses the character input portion <NUM> to input the first character string "<IMG> <IMG>", which is a part of the character string "<IMG>".

Here, the detector <NUM> notifies the application determination unit <NUM> that the browser has been started. Note that the application determination unit <NUM> temporarily stores this browser as a first application.

In response to the first character string "<IMG>" being input to the search field <NUM>, the suggestion function of the browser displays candidates, namely character strings "<IMG>", "<IMG>", "<IMG>", "<IMG> (space )<IMG>", "<IMG>(space) <IMG>", "<IMG>(space) <IMG>", or the like. At this point, the character string "<IMG>" is not registered in the dictionary database <NUM>. Accordingly, candidates such as "<IMG>", "<IMG> (transcription: 'ouchi')", and "<IMG> (transcription: 'ouchi')" are displayed in the candidate display portion <NUM>.

Next, the user selects the character string "<IMG>" (hereinafter, "<IMG> <IMG>" is referred to as "the second character string") that is displayed by the suggestion function of the browser. The detector <NUM> detects that the second character string "<IMG>" has been selected. The browser recognizes that the second character string "<IMG>" has been confirmed, and causes the detector <NUM> to end the character input portion <NUM> and the candidate display portion <NUM>. The detector <NUM> causes the display section <NUM> to end the character input portion <NUM> and the candidate display portion <NUM>. As shown in <FIG>, the browser displays web page links as the results of the search performed with the second character string "<IMG>".

The detector <NUM> outputs, to the character string obtaining unit <NUM>, the first character string "<IMG>" input to the search field <NUM>. The character string obtaining unit <NUM> temporarily saves the first character string "<IMG>" in a cache or the like. Note that the first character string "<IMG>" need not necessarily be saved in a cache or the like, and may alternatively be temporarily saved in the dictionary database <NUM>.

Next, as shown in <FIG>, the user taps the search field <NUM> in order to input the third character string "<IMG>". In response to the search field <NUM> being tapped, the character input portion <NUM> and the candidate display portion <NUM> are displayed in the display section <NUM>, as mentioned above.

Here, the detector <NUM> detects that the search field <NUM> has been selected (tapped). First, the character string obtaining unit <NUM> obtains the second character string "<IMG>" displayed in the search field <NUM>. The character string obtaining unit <NUM> associates the first character string "<IMG>" saved in the cache with the second character string "<IMG>". In other words, the character string obtaining unit <NUM> estimates that the user wants to input the second character string "<IMG>" by inputting the first character string "<IMG>", and associates the first character string "<IMG>" with the second character string "<IMG>".

The character string obtaining unit <NUM> outputs the first character string "<IMG> <IMG>" and the second character string "<IMG>" to the character string comparison unit <NUM>. The character string comparison unit <NUM> performs a search to check whether the first character string "<IMG>" and the second character string "<IMG>" are registered in association with each other in the dictionary database <NUM>. If the first character string "<IMG>" and the second character string "<IMG> <IMG>" are not registered in association with each other in the dictionary database <NUM>, the character string comparison unit <NUM> outputs the first character string "<IMG>" and the second character string "<IMG>" to the registration unit <NUM>.

Note that if the first character string "<IMG>" and the second character string "<IMG>" are registered in association with each other in the dictionary database, the configuration may also be such that the priority in displaying the second character string "<IMG>" is raised as a result of inputting the first character string "<IMG>".

Next, the detector <NUM> notifies the application determination unit <NUM> that the search field <NUM> on the browser has been tapped (selected) again. The application determination unit <NUM> temporarily stores the browser as a second application (i.e. information indicating that the browser is the second application). The application determination unit <NUM> determines whether or not the first application is the same as the second application. In this case, it is determined that the first and second applications started by the user are the same browser. The application determination unit <NUM> outputs this result to the registration unit <NUM>.

The registration unit <NUM> registers the first character string "<IMG>" and the second character string "<IMG>" in association with each other in the dictionary database <NUM> using the result (the first character string "<IMG>" and the second character string "<IMG>") input from the character string comparison unit <NUM> and the result (indicating that the first and second applications are the same) input from the application determination unit <NUM>.

As a result, the user can start, for example, an e-mail application or the like and cause the candidate display portion <NUM> to display the second character string "<IMG>" as a candidate by inputting the first character string "<IMG>".

The user then inputs a space and the third character string "<IMG>" following the second character string "<IMG>" displayed in the search field <NUM>. The user can obtain desired search results by performing this input. That is, the first character string "<IMG>" and the second character string "<IMG>" can be registered in association with each other while the user is performing a search on the browser, thereby improving the user's convenience.

<FIG> is a flowchart showing the flow of processing in the character input device <NUM> in an operation example. <FIG> is a flowchart showing the flow of processing in the character input device <NUM> in an operation example. As the flow of processing, the flowchart in <FIG> is executed, followed by the flowchart in <FIG>.

First, the flow of processing in the character input device <NUM> will be described with reference to <FIG> and <FIG>. The user starts the browser installed in the smartphone <NUM> (S101). Here, the application determination unit <NUM> temporarily stores this browser as a first application.

The user taps the search field <NUM>. The detector <NUM> causes the display controller <NUM> to start the display section <NUM>. The display section <NUM> displays the character input portion <NUM> and the candidate display portion <NUM> (S102).

The search field <NUM> accepts input of a character string by the user. The user inputs, for example, a first character string "<IMG>" using the character input portion <NUM> (S103).

The suggestion function of the browser displays, as candidates, character strings "<IMG>", "<IMG>", "<IMG>", "<IMG> (space) <IMG>", "<IMG> (space) <IMG>", "<IMG> (space) <IMG>", or the like. The user selects a second character string "<IMG>" (S104).

The browser recognizes that the second character string "<IMG>" has been confirmed (S105). First, in response to the second character string "<IMG> <IMG>" being confirmed, the browser executes a search for web pages with the second character string "<IMG>" as a search word. The detector <NUM> outputs the first character string "<IMG>" input to the search field <NUM> to the character string obtaining unit <NUM>. The character string obtaining unit <NUM> temporarily saves the first character string "<IMG>" in the cache or the like (S106).

The detector <NUM> causes the display controller <NUM> to end the display section <NUM>. The display controller <NUM> ends the character input portion <NUM> and the candidate display portion <NUM> of the display section <NUM> (S107).

Next, processing following <FIG> will be described with reference to the flowchart in <FIG>. The user taps the search field <NUM> again (S111). Here, the detector <NUM> notifies the application determination unit <NUM> that the user is using the browser. The application determination unit <NUM> temporarily stores the browser as a second application.

Next, the character string obtaining unit <NUM> obtains the second character string "<IMG>" displayed in the search field <NUM> (S112).

The character string obtaining unit <NUM> outputs the first character string "<IMG> <IMG>" and the second character string "<IMG>" to the character string comparison unit <NUM>. The character string comparison unit <NUM> searches the dictionary database <NUM> to check whether or not the first character string "<IMG>" and the second character string "<IMG>" are registered in association with each other (S113). If the first character string "<IMG>" and the second character string "<IMG>" are registered in association with each other in the dictionary database <NUM> (S113: Yes), the third character string "<IMG>" is input to the search field <NUM> without registering the first character string "<IMG>", and the subsequent processing is continued (S116).

If the first character string "<IMG>" and the second character string "<IMG> " are not registered in association with each other in the dictionary database <NUM> (S113: No), the character string comparison unit <NUM> checks whether or not the first and second applications are the same (S114). If the first and second applications are not the same (S114: No), the registration unit <NUM> does not register the first character string "<IMG>" and the second character string "<IMG>". The user inputs the third character string "<IMG>" in the search field <NUM>. The user then continues the search (S116).

Note that "the first and second applications are not the same" refers to, for example, the case where the user starts an e-mail application without tapping (selecting) the search field <NUM> on the browser during processing performed after the user has executed the search with the first character string using the browser.

If the first and second applications are the same (S114: Yes), the registration unit <NUM> registers the first character string "<IMG>" and the second character string "<IMG>" in association with each other in the dictionary database <NUM> using the result (the first character string "<IMG>" and the second character string "<IMG>") input from the character string comparison unit <NUM> and the result (indicating that the first and second applications are the same) input from the application determination unit <NUM> (S115). As a result, the second character string "<IMG>" is registered so that the second character string "<IMG> " can be found in the dictionary database <NUM>, by inputting the first character string "<IMG>".

The user then inputs a space and the third character string "<IMG>" following the second character string "<IMG>" displayed in the search field <NUM>. The user can obtain desired search results by performing this input.

In the above configuration, if no desired candidate is present among candidates corresponding to the first character string "<IMG>" that are presented by the suggestion function, the user explicitly deletes the first character string. In this case, it is favorable that the first character string saved in the cache or the like is deleted. In this case, registration of unnecessary character strings can be reduced.

The above configuration enables registration of character strings that are input on an application with the suggestion function. That is, the user can also easily use character strings registered using the suggestion function on applications (e.g., e-mail, notepad etc.) that does not have a suggestion function.

Further, a search is performed to check whether the first character string "<IMG>" and the second character string "<IMG>" are registered in the dictionary database <NUM>, and registration is performed if these character strings are not present. Therefore, redundant registration can be avoided. As a result, search results showing appropriate candidates (prediction candidates) can be provided to the user. Moreover, the data volume of the dictionary database <NUM> does not increase.

Note that if there is another second character string (e.g., "<IMG>" etc.) that is associated with the first character string "<IMG>", the priority in displaying the second character string "<IMG>" may be raised. It is favorable that this priority is determined in accordance with the input frequency and/or use history.

Further, the user need not explicitly register dictionary data (in this case, the first character string "<IMG>" and the second character string "<IMG>") in the dictionary database <NUM>, as in the configuration example <NUM>, for example. In other words, the first and second character strings can be registered in the dictionary database <NUM> while the user is performing an operation to perform a search using the browser. That is, the user's convenience improves.

Next, a character input device according to a configuration example <NUM> will be described with reference to the figures. <FIG> is an illustrative diagram of character input being performed on a character input device 10A in the configuration example <NUM>.

As shown in <FIG>, the character input device 10A in the configuration example <NUM> differs in that the character input portion <NUM> in the character input device <NUM> in the configuration example <NUM> is in a kana input mode, while the character input portion <NUM> in the configuration example <NUM> is in an alphabetic character input mode. The other configuration of the character input device 10A is the same as the character input device <NUM>, and a description of the same or similar features is omitted. Note that the character input portion <NUM> in <FIG> uses a <NUM>-keyboard (numeric keypad), but may alternatively have a QWERTY keyboard arrangement.

Note that the following is an example where the character input portion <NUM> is in the alphabetic character input mode. However, the type of language input as a character string is not limited to the alphabetic character input mode, and may alternatively be any other language. For example, the language may be Chinese, in which case the user inputs the phonetic transcription of a word (desired character string) to be input as a character string, or may be German or the like, in which case the user inputs the spelling of a word to be input as a character string.

The user taps the search field <NUM> on the browser. Thus, the display section <NUM> of the character input device 10A causes the display section <NUM> to display the character input portion <NUM> and the candidate display portion <NUM>. The user operates the character input portion <NUM> and inputs a search word.

For example, the user inputs a first character string "chill" as a part of a second character string "chillax" to the search field <NUM>. The browser presents candidates such as character strings "chillax", "chill (space) <IMG> (transcription: 'imi', which means 'meaning')", and "chill (space) out", using the suggestion function. The user selects the second character string "chillax". Thus, the first character string "chill" and the second character string "chillax" can be registered in association with each other in the dictionary database <NUM>.

As described above, a character string selected using the suggestion function can also be registered in not only the kana input mode but also the alphabetic character input mode. That is, the user can easily input characters, and the user's convenience improves.

Next, a character input device according to a variation <NUM> will be described with reference to the figures. <FIG> is a block diagram showing a configuration of a character input device 10B in the variation <NUM>. <FIG> is a flowchart showing the flow of processing in the character input device 10B in the variation <NUM>. <FIG> is a flowchart showing the flow of processing in the character input device 10B in the variation <NUM>.

As shown in <FIG>, the character input device 10B according to the variation <NUM> differs from the character input device <NUM> according to the configuration example <NUM> in that the character input device 10B includes a time measurement unit <NUM>. The other configuration of the character input device 10B is the same as the character input device <NUM>, and a description of the same features is omitted.

As shown in <FIG>, the controller <NUM> includes the character string obtaining unit <NUM>, the character string comparison unit <NUM>, the application determination unit <NUM>, the registration unit <NUM>, and the time measurement unit <NUM>.

The time measurement unit <NUM> measures a time interval for starting an application (e.g., a browser). A more specific configuration will be described with reference to <FIG>, <FIG>, and <FIG>.

The user taps the search field <NUM> on the browser. Thus, the detector <NUM> of the character input device causes the display controller <NUM> to display the character input portion <NUM> and the candidate display portion <NUM>. The user operates the character input portion <NUM> and inputs a search word. For example, the user inputs a first character string "<IMG>".

The detector <NUM> notifies the application determination unit <NUM> that the browser has been started. Note that the application determination unit <NUM> temporarily stores this browser as a first application. The time measurement unit <NUM> stores the time when the first application was started as a first time.

Next, the user selects a second character string "<IMG>" displayed by the suggestion (predictive) function of the browser. The detector <NUM> detects that the second character string "<IMG>" has been selected.

The detector <NUM> outputs, to the character string obtaining unit <NUM>, the first character string "<IMG>" input to the search field <NUM>. The character string obtaining unit <NUM> temporarily saves the first character string "<IMG>" in the cache or the like.

Next, the user taps the search field <NUM> to input a third character string "<IMG> <IMG>". The detector <NUM> detects that the search field <NUM> has been selected (tapped). The character string obtaining unit <NUM> obtains the second character string "<IMG>" displayed in the search field <NUM>. The character string obtaining unit <NUM> associates the first character string "<IMG>" saved in the cache with the second character string "<IMG>".

The character string obtaining unit <NUM> outputs the first character string "<IMG> <IMG>" and the second character string "<IMG>" to the character string comparison unit <NUM>. The character string comparison unit <NUM> performs a search in the dictionary database <NUM> and outputs the first character string "<IMG>" and the second character string "<IMG>" to the registration unit <NUM> in accordance with the search result.

Next, the detector <NUM> notifies the application determination unit <NUM> that the search field <NUM> on the browser has been tapped (selected). The application determination unit <NUM> temporarily stores the browser as a second application. The application determination unit <NUM> stores the time when the second application was started as a second time.

The application determination unit <NUM> determines whether or not the first and second applications are the same application.

The time measurement unit <NUM> compares the first time with the second time. More specifically, the time measurement unit <NUM> calculates the time interval between the first time and the second time. The time measurement unit <NUM> determines whether or not this time interval is within a predetermined time. For example, the time measurement unit <NUM> determines whether or not this time interval is within <NUM> seconds. The time measurement unit <NUM> outputs the result to the application determination unit <NUM>.

If the time interval is within <NUM> seconds, the registration unit <NUM> registers the first character string "<IMG>" and the second character string "<IMG>" in association with each other in the dictionary database <NUM>. On the other hand, if the time interval is longer than <NUM> seconds, the first character string "<IMG>" and the second character string "<IMG>" are not output to the registration unit <NUM>.

Next, the flow of processing in the character input device 10B will be described with reference to <FIG> and <FIG>. <FIG> is a flowchart showing the flow of processing in the character input device 10B in the variation <NUM>. <FIG> is a flowchart showing the flow of processing in the character input device 10B in the variation <NUM>. As the flow of processing, the flowchart in <FIG> is executed, followed by the flowchart in <FIG>.

First, the flow of processing in the character input device 10B will be described with reference to <FIG>. The user starts the browser (application) (S201). Here, the application determination unit <NUM> temporarily stores this browser as a first application.

The time measurement unit <NUM> stores the time when the first application was started as the first time (S202).

The user taps the search field <NUM>. The detector <NUM> causes the display controller <NUM> to start the display section <NUM>. The display section <NUM> displays the character input portion <NUM> and the candidate display portion <NUM> (S203).

The search field <NUM> accepts input of a character string by the user. The user inputs, for example, the first character string "<IMG>" using the character input portion <NUM> (S204).

The suggestion function of the browser displays, as candidates, character strings "<IMG>", "<IMG>", "<IMG>", "<IMG> (space) <IMG>", "<IMG> <IMG> (space) <IMG>", "<IMG> (space) <IMG>", or the like. The user selects the second character string "<IMG>" (S205).

The browser recognizes that the second character string "<IMG>" has been confirmed (S206). The detector <NUM> outputs the first character string "<IMG>" input to the search field <NUM> to the character string obtaining unit <NUM>. The character string obtaining unit <NUM> temporarily saves the first character string "<IMG> " in a cache or the like (S207).

The detector <NUM> causes the display controller <NUM> to end the display section <NUM>. The display controller ends the character input portion <NUM> and the candidate display portion <NUM> of the display section <NUM> (S208).

Next, processing following <FIG> will be described with reference to the flowchart in <FIG>. The user taps the search field <NUM> (S211). Here, the detector <NUM> notifies the application determination unit <NUM> that the user is using the browser. The application determination unit <NUM> temporarily stores the started browser as a second application.

The time measurement unit <NUM> stores the time when the second application was started as a second time (S212).

Next, the character string obtaining unit <NUM> obtains the second character string "<IMG>" displayed in the search field <NUM> (S213).

The character string obtaining unit <NUM> outputs the first character string "<IMG> <IMG>" and the second character string "<IMG>" to the character string comparison unit <NUM>. The character string comparison unit <NUM> searches the dictionary database <NUM> to check whether or not the first character string "<IMG>" and the second character string "<IMG>" are registered in association with each other (S214). If the first character string "<IMG>" and the second character string "<IMG>" are registered in association with each other in the dictionary database <NUM> (S214: Yes), the registration unit <NUM> does not register the first character string "<IMG>". The user inputs the third character string "<IMG>" in the search field <NUM>. The user then continues the search (S218).

If the first character string "<IMG>" and the second character string "<IMG> <IMG>" are not registered in association with each other in the dictionary database <NUM> (S214: No), the application determination unit <NUM> checks whether the first and second applications are the same (S215). If the first and second applications are not the same (S215: No), the registration unit <NUM> does not register the first character string "<IMG>" and the second character string "<IMG>". The user inputs the third character string "<IMG>" in the search field <NUM>. The user then continues the search (S218).

If the first and second applications are the same (S215: Yes), the time measurement unit <NUM> compares the first time with the second time (S216). More specifically, the time measurement unit <NUM> calculates the time interval between the first time and the second time. The time measurement unit <NUM> determines whether or not this time interval is within a predetermined time. For example, the time measurement unit <NUM> determines whether or not this time interval is within <NUM> seconds. The time measurement unit <NUM> outputs the result to the application determination unit <NUM>.

If the time interval is within <NUM> seconds (S216: Yes), the registration unit <NUM> registers the first character string "<IMG>" and the second character string "<IMG> <IMG>" in association with each other in the dictionary database <NUM> (S217). On the other hand, if the time interval is longer than <NUM> seconds (S216: No), the first character string "<IMG>" and the second character string "<IMG>" are not output to the registration unit <NUM>. Also, the third character string "<IMG>" is input to the search field <NUM>. The user then continues the search (S218).

As a result, the first character string "<IMG>" and the second character string "<IMG>" can be registered in association with each other in the dictionary database <NUM> if the first and second applications are the same and the time interval is within <NUM> seconds.

That is, the user can appropriately register the first and second character strings in the dictionary database <NUM>. In other words, the user can create a dictionary database <NUM> that reflects the user's intention to register the first and second character strings in association with each other.

Note that the time interval in the above example is <NUM> seconds. However, the time interval is not limited to <NUM> seconds. The time interval can also be defined while giving consideration to the type of application, the speed at which the user operates the character input device 10B, and/or the time-out time of the application. In this case, a configuration may alternatively be adopted in which the character input device 10B has a setting file (not shown in the figures) or the like, and the time interval is held in this setting file.

The above example has described a configuration in which the first character string "<IMG>" and the second character string "<IMG>" are registered in association with each other in the dictionary database <NUM>. However, a configuration may alternatively be adopted in which the first and second character strings are registered in association with each other by analyzing morphemes of the second character string "<IMG>". In this case, the dictionary database <NUM> can configure more flexible predictive conversion candidates.

Claim 1:
A character input device (<NUM>; 10A; 10B) comprising:
a display section (<NUM>) including a character input portion (<NUM>) and a candidate display portion (<NUM>) to display conversion candidates;
an output unit (<NUM>) configured to output a first character string that is input using the character input portion (<NUM>) to an application program having a suggestion function;
a detector (<NUM>) configured to detect selection of a second character string that is presented in correspondence with the first character string by the suggestion function of the application program; and
a registration unit (<NUM>) configured to register, in a dictionary database (<NUM>), the second character string whose selection is detected by the detector (<NUM>) and the first character string in association with each other;
wherein character strings in the dictionary database (<NUM>) are available for user selection via the candidate display portion (<NUM>); and
the device (<NUM> ; 10A ; 10B) is adapted to display, in response to detecting input of a first character string using the character input portion (<NUM>), an associated second character string as a conversion candidate in the candidate display portion (<NUM>).