1. A computer-implemented method, comprising: receiving a user input into a user interface of an input method editor (IME); determining, based on the user input, whether to process the user input with a script engine; when the user input indicates that the user input is to be processed with the script engine: providing the user input to the script engine, selecting a script from a plurality of scripts electronically stored in a script repository, processing the user input through the script using the script engine to generate one or more candidates, and providing the one or more candidates to an IME engine; when the user input indicates that the user input is not to be processed with the script engine: providing the user input to the IME engine, and processing the user input with the IME engine to generate the one or more candidates; and receiving an extension mode input indicating operation of the IME in an extension mode, operating the IME in the extension mode in response to receiving the extension mode input, and providing all user input to the script engine when operating in the extension mode.
1. A computer-implemented method, comprising: receiving a user input into a user interface of an input method editor (IME); determining, based on the user input, whether to process the user input with a script engine; when the user input indicates that the user input is to be processed with the script engine: providing the user input to the script engine, selecting a script from a plurality of scripts electronically stored in a script repository, processing the user input through the script using the script engine to generate one or more candidates, and providing the one or more candidates to an IME engine; when the user input indicates that the user input is not to be processed with the script engine: providing the user input to the IME engine, and processing the user input with the IME engine to generate the one or more candidates; and receiving an extension mode input indicating operation of the IME in an extension mode, operating the IME in the extension mode in response to receiving the extension mode input, and providing all user input to the script engine when operating in the extension mode. 9. The computer-implemented method of claim 1 , wherein processing the user input through the script comprises: establishing a network connection with a web-based service; providing at least a portion of the user input to the web-based service; and receiving a response from the web-based service, the response having been generated based on the at least a portion of the user input, and the one or more candidates comprising the response.