亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于輸入法編輯器的擴展框的制作方法

文檔序號:6352271閱讀:309來源:國知局
專利名稱:用于輸入法編輯器的擴展框的制作方法
技術(shù)領(lǐng)域
本公開涉及輸入法。
背景技術(shù)
在使用語標字體(logographic script)的語言中,一個或兩個字符大約對應(yīng)于一個詞語或含義,這樣的語言具有比標準輸入設(shè)備上的按鍵更多的字符,標準的輸入設(shè)備如計算機鍵盤或移動設(shè)備鍵盤。例如,中文包含由基礎(chǔ)拼音(Pinyin)字符和五個音調(diào)定義的數(shù)以萬計的字符。這些多對一關(guān)聯(lián)的映射可以通過幫助輸入在輸入設(shè)備上沒有找到的字符和符號的輸入法來實現(xiàn)。因此,西式鍵盤或移動設(shè)備可以用來輸入中文字符。同樣,輸入法可以用來使用西式鍵盤輸入許多其他語言,包括表意文字(ideogram),諸如日語、韓語、其他語目。輸入法編輯器(ME)可以用來實現(xiàn)輸入法。以中文為例,用戶可以輸入一個或多個拼音字符或查詢,它們由頂E處理以提供一個或多個中文字符候選項。一種場景包括查詢對候選項映射(query-to-candidates mapping)功能f (查詢)=候選項(f (query) =candidates),其中,查詢包括ACSII鍵的序列,而候選項包括中文或非中文字符串的列表。雖然其他輸入對輸出映射將ACSII查詢映射到中文或非中文候選項,但是這樣的映射在功能上也是受限的。

發(fā)明內(nèi)容
本說明描述了涉及輸入法的技術(shù),并且具體來講,涉及用于輸入法的擴展框(extension framework)。一般,在本說明中描述的主題的一個創(chuàng)新的方面可以體現(xiàn)為包括以下動作的方法接收在輸入法編輯器(IME)的用戶界面中的用戶輸入;將用戶輸入提供給腳本引擎;從電存儲在腳本儲存庫中的多個腳本中選擇腳本;使用腳本引擎通過腳本處理用戶輸入以生成一個或多個候選項;以及將一個或多個候選項提供給IME引擎。在一些方面中,所述動作還包括例示沙盒進程,腳本引擎在沙盒進程內(nèi)運行。在一些方面中,IME引擎使用進程間通信與腳本引擎進行通信。在一些方面中,所述動作還包括在沙盒進程內(nèi)運行IPC服務(wù)器,IPC服務(wù)器啟用在IME引擎和腳本引擎之間的通信。在一些方面中,沙盒進程限制腳本引擎的功能。在一些方面中,用戶輸入包括識別腳本的輸入序列和要由腳本處理的輸入。在一些方面中,所述動作還包括將用戶輸入與一個或多個觸發(fā)字符串進行比較;確定用戶輸入與一個或多個觸發(fā)字符串之一匹配;以及基于所述一個或多個觸發(fā)字符串之一選擇腳本。在一些方面中,所述動作還包括接收指示在擴展模式中的ME的操作的輸入;響應(yīng)于接收輸入,在擴展模式中操作IME ;以及當在擴展模式中操作時,將所有用戶輸入提供給腳本引擎。在一些方面中,通過腳本處理用戶輸入包括以下動作建立與基于網(wǎng)絡(luò)的服務(wù)的網(wǎng)絡(luò)連接;將至少一部分用戶輸入提供給基于網(wǎng)絡(luò)的服務(wù);以及從基于網(wǎng)絡(luò)的服務(wù)接收響應(yīng),該響應(yīng)已經(jīng)基于所述至少一部分用戶輸入而生成,并且一個或多個候選項包括該響應(yīng)。在一些方面中,基于網(wǎng)絡(luò)的服務(wù)包括地圖服務(wù)、搜索服務(wù)、以及翻譯服務(wù)中的至少一個。在一些方面中,所述動作還包括生成包括第一組候選項的第一候選項列表;生成包括第二組候選項的第二候選項列表,第二組候選項包括使用腳本引擎生成的一個或多個候選項;組合至少一部分第一組候選項和至少一部分第二組候選項,以提供第三候選項列表;以及在用戶設(shè)備上顯示第三候選項列表。在一些方面中,IME引擎處理一個或多個候選項用于在用戶界面上顯示。在一些方面中,所述動作還包括接收指示選擇一個或多個候選項之一的第二用戶輸入;以及將一個或多個候選項之一輸入到在用戶設(shè)備上運行的應(yīng)用。在一些方面中,所述應(yīng)用包括文字處理應(yīng)用、文本編輯應(yīng)用、電子表單應(yīng)用、電子郵件應(yīng)用、展示應(yīng)用、以及網(wǎng)絡(luò)瀏覽器之一。在一些方面中,電存儲在腳本儲存庫中的每個腳本包括從多個核準的(approved)例程中選擇的一個或多個例程。在一些方面中,所述動作還包括識別腳本的腳本語言,其中,所述腳本引擎例示與用于通過腳本處理用戶輸入的腳本語言相對應(yīng)的運行時間(runtime)。在一些方面中,用戶輸入以第一語言提供。在一些方面中,一個或多個候選項以第一語言提供。在其他方面中,一個或多個候選項以第二語言提供。在其它方面中,一個或多個候選項以第一語言和第二語言的組合提供。在一些方面中,一個或多個候選項包括一個或多個符號。在一些方面中,所述動作還包括接收輸入;響應(yīng)于輸入,生成電存儲在中央寄存器(central registry)中的可用腳本的列表,可用腳本的列表包括腳本;接收指示腳本選擇的第二輸入;響應(yīng)于第二輸入,從中央寄存器中檢索腳本;以及將腳本存儲在腳本儲存庫中。在本說明中描述的主題的另一個創(chuàng)新的方面可以體現(xiàn)為包括以下動作的方法接收在IME的用戶界面中的用戶輸入;將用戶輸入提供給腳本引擎;從電存儲在腳本儲存庫的多個腳本中選擇腳本;基于腳本中提供的指令,建立與基于網(wǎng)絡(luò)的服務(wù)的網(wǎng)絡(luò)連接;將至少一部分用戶輸入提供給基于網(wǎng)絡(luò)的服務(wù);從基于網(wǎng)絡(luò)的服務(wù)接收響應(yīng);以及將響應(yīng)提供給IME引擎,以便將響應(yīng)顯示給用戶。在一些方面中,基于網(wǎng)絡(luò)的服務(wù)包括地圖服務(wù)、搜索服務(wù)、以及翻譯服務(wù)中的至少一個。在一些方面中,至少一部分用戶輸入被提供給地圖服務(wù),由地圖服務(wù)產(chǎn)生響應(yīng),并且響應(yīng)包括用戶可選擇的超鏈接。在其他方面中,至少一部分用戶輸入被提供給搜索服務(wù)作為搜索詞(search term),由搜索服務(wù)生成響應(yīng),并且響應(yīng)包括由搜索服務(wù)基于搜索詞生成的一個或多個搜索結(jié)果。在其他方面中,至少一部分用戶輸入被提供給翻譯服務(wù),并且以第一語言提供,由翻譯服務(wù)生成響應(yīng),并且以第二語言提供該響應(yīng)。一般,在本說明中描述的主題的另一個方面可以體現(xiàn)為包括以下動作的方法接收腳本文件,腳本文件可由ME系統(tǒng)運行,以基于對ME系統(tǒng)的用戶輸入生成一個或多個候選項;將腳本文件電存儲在中央寄存器中,中央寄存器包括多個腳本;以及公布可用于下載到用戶設(shè)備并安裝在用戶設(shè)備上的多個腳本,用戶設(shè)備包括ME系統(tǒng)。在一些方面中,所述多個腳本中的每個腳本包括從多個核準的例程中選擇的一個或多個例程。在一些方面中,所述多個腳本中的腳本以JavaScript、Lua以及VBScript之一編與。在一些方面中,所述多個腳本中的至少一個腳本包括關(guān)聯(lián)元數(shù)據(jù),關(guān)聯(lián)元數(shù)據(jù)提供用于顯示一個或多個候選項的指令。在一些方面中,所述指令包括提供用于顯示在候選項列表中的一個或多個候選項的號碼序列。在其它方面中,所述指令包括提供用于顯示在候選項列表中的一個或多個候選項的字母序列。在本說明中描述的主題的一個或多個實施方式的細節(jié)在以下附圖和描述中闡述。從描述、附圖、以及權(quán)利要求中,本主題的其他特征、方面、以及優(yōu)點將變得清楚。而且,在本說明中描述的主題的方面,包括上述各方面,可以以一個或多個組合方式進行組合。


圖1是可以利用來實施這里描述的系統(tǒng)和方法的示例系統(tǒng)的框圖。圖2是示例輸入法編輯器(ME)的框圖。圖3是示例ME擴展框的框圖。圖4是示出用于IME的命令擴展模式的示例進程的流程圖。圖5是示出用于運行頂E的示例進程的流程圖。圖6A示出了對應(yīng)于命令擴展模式的示例擴展。圖6B示出了基于圖6A的擴展的示例輸出。各個附圖中的類似符號指示類似的元素。
具體實施例方式概覽本說明描述了涉及用于輸入法編輯器(IME)的擴展框的技術(shù)。雖然將在英語和中文語言的上下文中描述示例的實施方式,但是本公開可以容易地應(yīng)用到其他非語標(non-logographic)語言(例如,包括德語、法語、意大利語、西班牙語、葡萄牙語、瑞典語)以及語標語言(例如,包括日語、漢語、和/或印度語)。圖1是可以利用來實施這里描述的系統(tǒng)和方法的示例系統(tǒng)100的框圖。系統(tǒng)100可以包括,例如,計算機設(shè)備,如個人計算機設(shè)備,或其他電子設(shè)備,如移動電話、移動通信設(shè)備、個人數(shù)字助理(PDA)、等等。系統(tǒng)100包括處理設(shè)備102、第一數(shù)據(jù)存儲器(Store)104、第二數(shù)據(jù)存儲器106、輸入設(shè)備108、輸出設(shè)備110、以及網(wǎng)絡(luò)接口 112??偩€系統(tǒng)114包括,例如,數(shù)據(jù)總線和主板,總線系統(tǒng)114可以用來建立和控制組件102、104、106、108、110和112之間的通信。其他系統(tǒng)體系結(jié)構(gòu)也可以使用。處理設(shè)備102可以包括,例如,一個或多個微處理器。第一數(shù)據(jù)存儲器104可以包括,例如,隨機存取存儲器存儲設(shè)備(random access memory storagedevice),如動態(tài)隨機存取存儲器,或者其他類型的計算機可讀介質(zhì)存儲器設(shè)備(computer readable mediummemory device)。第二數(shù)據(jù)存儲器106可以包括,例如,一個或多個硬盤驅(qū)動器、閃存、和/或只讀存儲器、或者其他類型的計算機可讀介質(zhì)存儲設(shè)備。示例輸入設(shè)備108可以包括鍵盤、鼠標、手寫筆等,而示例輸出設(shè)備110可以包括顯示設(shè)備、音頻設(shè)備等。網(wǎng)絡(luò)接口 112可以包括,例如,可操作地將數(shù)據(jù)傳送到網(wǎng)絡(luò)116和從網(wǎng)絡(luò)116接收數(shù)據(jù)的有線或無線網(wǎng)絡(luò)設(shè)備。網(wǎng)絡(luò)116可以包括一個或多個局域網(wǎng)(LAN)和/或廣域網(wǎng)(WAN),如因特網(wǎng)。在一些實施方式中,系統(tǒng)100可以包括來自數(shù)據(jù)存儲器的ME代碼101,例如來自數(shù)據(jù)存儲106。IME代碼101可以包括指令,當運行指令時,使得處理設(shè)備102執(zhí)行ME功能。IME代碼101可以包括,例如,解釋指令(interpreted instruction),如腳本指令,例如JavaScript或ECMAScritp指令,可以在網(wǎng)絡(luò)瀏覽器環(huán)境中運行指令。其他實施方式也可以使用,例如,獨立應(yīng)用、小應(yīng)用(applet)、插件模塊、等等。IME代碼101的運行生成或啟動ME實例103。IME實例103幫助一個或多個輸入法在設(shè)備100中的處理,在此期間,系統(tǒng)100可以接收用于輸入字符或符號的組合輸入(composition input),諸如,例如,漢字(Hanzi)字符。例如,用戶可以使用一個或多個輸入設(shè)備108 (例如,鍵盤,如西式鍵盤,與手寫識別引擎一起使用的手寫筆,等等)輸入用于識別漢字字符的組合輸入。在一些示例中,漢子字符可以由多于一個的組合輸入來組成。第一數(shù)據(jù)存儲器104和/或第二數(shù)據(jù)存儲器106可以存儲組合輸入與字符的關(guān)聯(lián)。基于用戶輸入,輸入法編輯器實例103可以使用數(shù)據(jù)存儲器104和/或數(shù)據(jù)存儲器106中的信息來識別由輸入表現(xiàn)的一個或多個候選項選擇。在一些實施方式中,如果識別到多于一個的候選項選擇,則候選項選擇被顯不在輸出設(shè)備110上。使用輸入設(shè)備108,用戶可以從候選項選擇中選擇用戶希望輸入的漢字字符。在一些實施方式中,系統(tǒng)100上的ME實例103可以接收一個或多個拼音組合輸入,并將組合輸入轉(zhuǎn)換為漢字字符。ME實例103能夠,例如,使用從敲擊按鍵中接收的拼音音節(jié)或字符來表現(xiàn)漢字字符。每個拼音音節(jié)能夠,例如,對應(yīng)于一個或多個西式鍵盤中的敲擊按鍵。使用拼音ME,用戶通過使用包括表現(xiàn)漢字字符的聲音的一個或多個拼音音節(jié)的組合輸入來輸入漢字字符。但是,用于其他語言的輸入法也可以是有幫助的。在一些實施方式中,可以訪問系統(tǒng)100的遠程計算系統(tǒng)118也可以用來編輯語標腳本。例如,系統(tǒng)100可以是經(jīng)由網(wǎng)絡(luò)116提供語標腳本編輯能力的服務(wù)器。在一個示例中,用戶能夠使用遠程計算系統(tǒng),例如,客戶端計算機,編輯存儲在數(shù)據(jù)存儲器104和/或數(shù)據(jù)存儲器106中的語標腳本。系統(tǒng)100能夠,例如,選擇字符和經(jīng)由網(wǎng)絡(luò)接口 112從用戶接收組合輸入。處理設(shè)備102能夠,例如,識別鄰近所選擇的字符的一個或多個字符,并且基于接收的組合輸入以及鄰近的字符來識別一個或多個候選項選擇。系統(tǒng)100能夠?qū)ê蜻x項選擇的數(shù)據(jù)通信傳送回遠程計算系統(tǒng)。在一些實施方式中,ME實例103能夠基于一個或多個組合輸入和語言上下文105來識別候選項選擇。語言上下文105能夠,例如,定義由輸入法編輯器實例103支持的不同語言,例如,英語語言上下文105a、中文語言上下文105b、漢語語言上下文105c、等等。例如,IME實例103能夠?qū)⒂⒄Z上下文105a應(yīng)用到組合輸入,以便將組合輸入映射到英語字母表。同樣,頂E實例103能夠?qū)⒅形恼Z言上下文105b應(yīng)用到組合輸入,以便將組合輸入映射到拼音輸入、等等。
基于組合輸入和語言上下文105,IME實例103能夠識別用于由用戶選擇的一個或多個候選項選擇。在一些實施方式中,語言上下文105能夠被利用來自動地提供由不同語言定義的候選項選擇,例如,交織顯示模式,其中,來自英語語言的候選項選擇(例如,定義詞語的字母)可以與中文字符(例如,漢子字符)同時顯示。在一些實施方式中,語言上下文105能夠被利用來自動地提供由一種語言定義的候選項選擇,例如,切換顯示模式,其中,只有來自英語語言的候選項選擇,例如,定義詞語的字母,可以被顯示用于第一組字符,而只有來自中文語言的候選項選擇,例如,漢子字符,可以被顯示用于第二組字符。圖2是示例ME系統(tǒng)120的框圖。ME系統(tǒng)120可以使用,例如,輸入法編輯器代碼101和相關(guān)聯(lián)的數(shù)據(jù)存儲器104和106來實現(xiàn)。ME系統(tǒng)120包括ME引擎122、字符數(shù)據(jù)存儲器124、組合輸入數(shù)據(jù)存儲器126、語言模型數(shù)據(jù)存儲器128、以及擴展框200。其他存儲體系結(jié)構(gòu)也可以使用。字符數(shù)據(jù)存儲器124包括在一個或多個語言模型中使用的語標腳本的字符,以及在基于羅馬或西式字母表中的字符和詞語,例如,英文、德文、西班牙文、等等。在一些實施方式中,字符數(shù)據(jù)存儲器124還包括關(guān)于字符之間的關(guān)系的信息。例如,字符數(shù)據(jù)存儲器124可以包括取決于鄰近該字符的字符而分配給該字符的分數(shù)或概率值。其他上下文的相關(guān)數(shù)據(jù)也可以使用。如以下所更詳細討論的,擴展框200與ME引擎122交互以支持任意的查詢對候選項(query-to-candidate)的映射。組合輸入數(shù)據(jù)存儲器126包括組合輸入和存儲在字符數(shù)據(jù)存儲器124中的字符的關(guān)聯(lián)。在一些實施方式中,組合輸入數(shù)據(jù)存儲器126可以將字符數(shù)據(jù)存儲器124中的每個字符鏈接到由輸入法編輯器引擎122使用的組合輸入。例如,IME引擎122能夠使用字符數(shù)據(jù)存儲器124和組合輸入數(shù)據(jù)存儲器126中的信息,將字符數(shù)據(jù)存儲器124中的一個或多個字符與組合輸入數(shù)據(jù)存儲器126中的一個或多個組合輸入相關(guān)聯(lián)和/或相識別。語言模型數(shù)據(jù)存儲器128可以定義一個或多個語言模型,例如,英語語言模型、中文語言模型、等等。每個語言模型能夠,例如,定義特定的規(guī)則集合,例如,語言特定的語法、短語集合、動詞、等等,可以用來確定用戶錄入一組組合輸入時可能的意圖。每個語言模型還可以包括特定用戶的用戶歷史,例如,由該特定用戶經(jīng)常使用的詞語或短語的字典。在一些實施方式中,ME引擎122可以根據(jù)語言上下文105來解釋組合輸入,例如,英語上下文105a、中文上下文105b、韓語上下文105c、等等。當根據(jù)語言上下文105解釋組合輸入時,可以確定語言上下文值107?;谡Z言上下文值107和組合輸入,可以識別候選項選擇并展示給用戶用于選擇。例如,可以通過輸入法編輯器引擎122接收若干組合輸入,例如,敲擊按鍵。敲擊按鍵可以定義一系列中文上下文105b中的拼音輸入,并且可以定義英語上下文105a中的一系列字母。因此,一個或多個英語候選項選擇,例如,詞語,以及一個或多個中文候選項選擇,例如,漢子字符,可以展示給用戶用于選擇。在一些實施方式中,英語上下文值107a可以通過將組合輸入與英語詞語的前綴進行比較并基于該比較設(shè)定英語上下文值來確定。例如,組合輸入o-p-p-o匹配詞語“opportunity”中的字符串。例如,英語上下文值107a能夠與通過比較識別的前綴匹配成比例地設(shè)定,例如,對于組合輸入o-p的上下文值可以很低,而對于組合輸入o-p-p-o-r-t-u的上下文值可以高很多。語言上下文值107也可以通過其他進程來確定。例如,中文上下文值107b可以通過評估中文字符對中文語言模型并基于評估設(shè)定中文上下文值107b來確定。例如,中文語言模型可以包括中文語法模型。示例中文語法模型可以包括連動結(jié)構(gòu)模型、完成式和未完成式模型、以及其他語法模型?;诮M合輸入,例如,敲擊按鍵,能夠識別一系列拼音輸入。拼音組合輸入,反過來可以用來識別漢字字符。中文語法模型可以被應(yīng)用到漢子字符,以確定用戶在中文上下文中意圖輸入的似然性。例如,以漢字字符全部是動詞為結(jié)果的組合輸入字符串將會得分很低,而以動詞和賓語為結(jié)果的組合輸入字符串將得分更高、等等。作為另一個示例,結(jié)果為讀作“我愛花(I loveflowers的中文字符串的組合輸入將收到較高的中文上下文值107b,而結(jié)果為讀作“床牛電視(bed cow tv)”的中文字符串的組合輸入字符串將收到很低的中文上下文值107b。其他進程可以用來確定語言上下文值107。例如,特定語言的不經(jīng)常使用的詞語的上下文值可以得分(scaled)較低,而如由用戶簡檔(profile)定義的常用詞語或短語的上下文值可以得分較高、等等。擴展框IME提供查詢對候選項映射功能,一般提供為f (查詢)=候選項其中,查詢是ASCII按鍵的序列。使用中文語言作為示例,作為結(jié)果的候選項可以包括中文或非中文字符串的列表。例如f (“pinyin”)=[“拼音”、“品”、“頻”、......]示出了作為拼音ME的基礎(chǔ)輸入模式的拼音對中文映射。存在能夠?qū)SCII查詢映射到一個或多個候選項(例如,中文或非中文候選項)的其他映射。作為一個示例,IME可以用于英語的自動完成模式,以便基于部分詞語輸入來提供詞語候選項的列表。例如f (“eng”) =[ “eng”、“English”、“engineering”、......]作為另一個示例,IME可以用于中文數(shù)字輸入模式。例如f (“il23”)=[ “一百二十三”、“壹佰貳拾叁”、“一二三”]本公開的ME擴展框通過提供命令擴展模式(稱為“擴展模式”)擴展了 ME的能力,該命令擴展模式使得ME能夠支持任意的查詢對候選項映射,以便滿足不同用戶的需求和/或喜好。ME擴展框?qū)崿F(xiàn)了這一點而無需底層映射功能的硬編碼。一般,ME擴展框包括腳本引擎、沙盒進程、腳本儲存庫、進程間通信(IPC)機制、公共應(yīng)用程序接口(API)和控制臺工具。腳本引擎托管(host)腳本語言解釋器的運行時間以運行存儲在腳本儲存庫中的一個或多個腳本,并返回結(jié)果。沙盒進程在安全環(huán)境中運行腳本引擎。IPC機制啟用了在ME引擎和沙盒進程之間的通信。公共API使得第三方開發(fā)者能夠以統(tǒng)一的方式編寫IME擴展,而控制臺工具使得開發(fā)者能夠測試和驗證所創(chuàng)建的擴展腳本。圖3是示例ME擴展框200的框圖。當ME在命令擴展模式中操作并且包括沙盒進程202和腳本儲存庫204時,實施ME擴展框200。沙盒進程202運行IPC服務(wù)器206和腳本引擎208。IME擴展框200與ME引擎122通信,以便基于用戶輸入提供基于腳本的查詢對候選項的映射。具體來講,用戶能夠與一個或多個應(yīng)用220交互。每個應(yīng)用220包括用戶界面222,用于接收用戶輸入以及顯示基于用戶輸入生成的一個或多個候選項。作為非限定性的示例,每個應(yīng)用220可以包括文字處理應(yīng)用、文本編輯應(yīng)用、電子表單應(yīng)用、電子郵件應(yīng)用、展示應(yīng)用、和/或網(wǎng)絡(luò)瀏覽器。由頂E擴展框200提供的查詢對候選項的映射可以包括一對一的映射,這可以通過簡單的表格查找來實現(xiàn)。由ME擴展框200提供的映射還可以包括基于實施的腳本語言的更多的復(fù)雜的查詢對候選項的映射。例如,基于腳本的擴展可以提供來將用戶文本輸入從水平布局轉(zhuǎn)換為垂直布局,如下所示:I I 到 I 把 II I 下 I 您 II I 面 I 要 II I 的 I 轉(zhuǎn) II I 輸 I 換 II I A I 的 II I 框 I 文 II I 中 I 字 II I I 輸 II I I A I而且,IME擴展框200通過經(jīng)過網(wǎng)絡(luò)(例如,圖1的網(wǎng)絡(luò)116)連接到遠程資源來啟用對這樣的資源的訪問。例如,通過運行擴展腳本,能夠連接到由在線服務(wù)提供商(例如,Google)提供的服務(wù)。以這種方式,擴展腳本功能可以訪問服務(wù)提供商的服務(wù),以實施更有用的輸入特征。示例的輸入特征可以包括查詢Google地圖有關(guān)詳細的地址字符串(例如,提供為用戶可選擇的超鏈接)、指導(dǎo)IME用戶到Google搜索、檢索Google建議的結(jié)果、和/或使用Google翻譯將用戶輸入轉(zhuǎn)換到另一種語言和/或符號。如以下更詳細討論的,IME擴展框200還使得第三方開發(fā)者能夠使用腳本編程來編寫定制的查詢對候選項的映射邏輯,與C++先編碼然后編譯相反。擴展腳本可以由第三方生成和測試。運行的擴展腳本可以被注冊和公布,以便使ME用戶可用。例如,通過ME,用戶可以請求可用的列表(B卩,公布的擴展腳本)。ME可以通過網(wǎng)絡(luò)連接到中央寄存器(例如,通過圖1的網(wǎng)絡(luò)116連接到中央寄存器230 ),例如,該中央寄存器存儲所公布的擴展腳本。用戶能夠選擇一個或多個擴展腳本,并且所選擇的擴展腳本被下載到當在擴展模式中操作頂E時要被調(diào)用的用戶的本地設(shè)備,并且安裝在用戶的本地設(shè)備上。擴展腳本可以存儲在腳本儲存庫204上,該腳本儲存庫204可以提供在系統(tǒng)100的數(shù)字存儲器中。腳本儲存庫使得腳本引擎208能夠本地裝載和運行相應(yīng)的腳本。由用戶安裝的所有腳本被存儲在腳本儲存庫204中。在一些實施方式中,一個或多個腳本托管(script host)網(wǎng)站(例如,由第三方開發(fā)者維持),每個網(wǎng)站用作遠離用戶設(shè)備的遠程腳本儲存庫。用戶設(shè)備可以訪問一個或多個腳本托管網(wǎng)站,并且可以被提供可從特定網(wǎng)站得到的列表可獲得腳本,并將所選擇的腳本下載到腳本儲存庫204。當在擴展模式中操作時,IME擴展框200檢索并運行所安裝的命令擴展,并且將一個或多個結(jié)果提供給ME引擎,用于顯示給用戶。結(jié)果可以由語標字符、非語標字符、數(shù)字、數(shù)學(xué)表達式、超文本鏈接、圖標、表情圖標和/或符號組成。作為非限定性的示例,符號可以包括數(shù)學(xué)符號(例如,Σ、V々、η、~、古、=、<、>、等等)、黃道十二宮符號(例如,T、¥、H、S、設(shè)、等等)、或者任何其它類型的符號(例如,1、丨、t、F、£、&、$、
J、J3、等等)。擴展模式包括命令擴展模式(稱為“1-ext模式”)、觸發(fā)擴展模式、以及處理器(handler)擴展模式。在命令擴展模式中,當用戶輸入特定字符序列時,調(diào)用擴展功能。示例字符序列可以包括:i+命令+自變量,以下更詳細地討論。在觸發(fā)擴展模式中,當輸入序列時,或者由ME生成的候選項之一匹配預(yù)注冊的觸發(fā)字符串或模式(pattern)時,調(diào)用擴展功能。也就是,IME基于輸入序列生成一個或多個候選項,并且回顧全部輸入序列和一個或多個候選項兩者,以確定與預(yù)注冊的觸發(fā)模式的匹配。在處理器擴展模式中,所有用戶輸入指向擴展功能,并且要由頂E顯示的所有候選項通過擴展功能來生成。以這種模式,ME的行為通過調(diào)用的擴展腳本來控制。因此,用戶明確地指令I(lǐng)ME (例如,點擊擴展注冊的熱鍵)以進入處理器擴展模式,并且將所有的用戶輸入路由到擴展腳本。第三方開發(fā)者可以通過提供多字符命令名稱、輸入功能名稱、以及簡短描述來注冊用于在命令擴展模式中使用的擴展腳本。用于在觸發(fā)擴展模式中使用,第三方開發(fā)者可以通過提供入口函數(shù)名稱、簡短描述、用于匹配用戶輸入的(Tn觸發(fā)字符串/模式、用于匹配一個或多個me生成的候選項的(Tm觸發(fā)字符串/模式來注冊擴展腳本。用于在處理器擴展模式中使用,第三方開發(fā)者可以通過提供由擴展處理的輸入模式的名稱、入口函數(shù)名稱、簡短描述、以及使用戶能夠激活處理器擴展模式的定制熱鍵或菜單項。這個信息被存儲在中央儲存庫,用于由IME用戶下載和安裝。以下更詳細地討論在擴展模式(B卩,命令、觸發(fā)、以及處理器擴展模式之一)中ME的操作。腳本引擎腳本引擎初始化腳本運行時間環(huán)境,將內(nèi)置例程注冊到運行時間中,從腳本儲存庫中裝載腳本,并且在每次請求ME核心引擎時評估映射功能。多個腳本語言(例如,JavaScript、Lua或VBScript)可以被并行支持。例如,腳本引擎可以基于所裝載的腳本的文件擴展(例如,.js、.1ua或.vb)來選擇相應(yīng)的腳本語言運行時間,并在運行時評估功能。在一些實施方式中,腳本語言可以被直接嵌入,而MS Windows ScriptEngine可以經(jīng)由IActiveScript接口使用。在這樣的實施方式中,不需要另外的安裝程序大小(installer size),無需另外費勁就可以支持兩種腳本語言(例如,JavaScript和VBScript),并且可以利用(leverage)預(yù)安裝的ActiveX控制。在一些實施方式中,可以提供嵌入的Lua運行時間引擎。Lua運行時間存儲器要求很小(例如,僅需要大約50KB額外安裝程序存儲器)。而且,Lua運行時間容易調(diào)整(trim)和/或定制,并且白列表(white-list)Lua特征和內(nèi)建例程以避免安全性威脅很容易。在一些實施方式中,例如,可以實施嵌入的JavaScript引擎。JavaScript是網(wǎng)絡(luò)開發(fā)者中流行的腳本語言,當運行JavaScript代碼時比Windows Script Engine更快,并且能夠被調(diào)整或定制。
在包括嵌入的Lua運行時間引擎的實施方式中,Lua運行時間引擎可以包括一個或多個以下模塊:語法分析器(lexer)和解析器、虛擬機、存儲器管理和垃圾收集、預(yù)編譯的內(nèi)存塊(chunk)轉(zhuǎn)儲/解除轉(zhuǎn)存(dump/undump)、Lua AP1、調(diào)試支持、以及構(gòu)建例程(built-routine)。構(gòu)建歷程模塊可以包括基礎(chǔ)庫、協(xié)同例程例程(co-routine routines)、模塊/數(shù)據(jù)包例程、字符串庫、數(shù)學(xué)庫、操作系統(tǒng)庫、表格庫、輸入/輸出庫、和/或調(diào)試庫。這些模塊可以被定制和整理,以最小化二進制大小,或者為了安全性考慮而白列表特征和內(nèi)置例程。定制Lua運行時間的一個目的在于限制可以由第三方開發(fā)者使用的語言特征和內(nèi)建例程。只利用ME相關(guān)的例程,像字符串例程、數(shù)學(xué)例程、表格例程、以及特定IME例程,第三方開發(fā)者不能直接影響用戶的本地系統(tǒng),即使在沒有沙盒保護的情況下,這將在以下詳細討論。一般,IME擴展框是獨立于語言的。從而,IME擴展框可以支持任何腳本語言,并且不限于這里所討論的腳本語言。沙盒講稈沙盒是程序在其中運行的限制性的環(huán)境,并且典型地得到庫的幫助,使得如腳本引擎的進程在限制性的環(huán)境內(nèi)運行。當運行沙盒時,腳本引擎具有受限的功能。在一些實施方式中,腳本引擎只能訪問CPU周期和存儲器。在這樣的實施方式中,例如,沙盒的腳本引擎不能寫入磁盤或顯示其自己的窗口。通過限制腳本對沙盒進程的運行,第三方腳本可以邏輯上與應(yīng)用分離。所允許的腳本引擎的功能通過明確的策略來管控。沙盒利用(leverage)由特定操作系統(tǒng)提供的安全性,以允許代碼運行,該代碼運行不能對計算機做出永久的改變或者存取秘密的信息。沙盒提供的體系結(jié)構(gòu)和準確保證(exactassurance)取決于操作系統(tǒng)。在Windows中,例如,代碼不能執(zhí)行任何形式的I/O而無需進行系統(tǒng)調(diào)用。在大多數(shù)系統(tǒng)調(diào)用中,Windows執(zhí)行安全性檢查。沙盒保證安全性檢查對于特定動作失敗,如相應(yīng)策略中定義的那樣禁止服務(wù)器進程執(zhí)行所述特定動作。在一些實施方式中,沙盒依賴于通過操作系統(tǒng)機制而提供的保護,可以包括但不限于,令牌(token)、對象和/或完整性級別。這些示例的機制在保護操作系統(tǒng)、其配置、以及用戶數(shù)據(jù)方面非常有效。實際的限制由所述策略來配置,其是能夠被調(diào)用以定義腳本引擎的限制和允許的編程接口。在一些實施方式中,控制所述限制的示例的機制包括主令牌、模仿(impersonate)令牌和任務(wù)令牌。一些實施方式還包括完整性級別(例如,包括WindowsVista操作系統(tǒng)的實施方式)。作為另一個示例,提供由Google提供的Chrome操作系統(tǒng)用于創(chuàng)建沙盒進程(例如,腳本引擎)。Chrome操作系統(tǒng)使用令牌限制、任務(wù)對象、以及API攔截來限制沙盒進程的特權(quán),并且使用簡單的共享存儲器作為IPC,以便提供在沙盒進程和代理(broker)進程(例如,ME引擎)之間的通信。例如,ME引擎提供能夠用來開始和初始化沙盒進程的自動開始的IME守護(daemon)進程。對于本公開的IME擴展框,可以實施更簡單的沙盒(例如,使用令牌限制和任務(wù)對象而不需使用API攔截來限制腳本引擎的特權(quán)的沙盒)。而且,沙盒進程本身可以用作IPC中的服務(wù)器角色。如上所述,令牌限制、任務(wù)對象和API攔截可以被實施以限制沙盒進程的特權(quán)。關(guān)于令牌限制,進程(例如,腳本引擎)利用剝離掉(stripped) —些或全部其安全性標識符(SID)的令牌在沙盒中開始。無需任何SID,對安全對象的訪問將被操作系統(tǒng)的安全管理器否定。關(guān)于任務(wù)對象,進程(例如,腳本引擎)可以在用來限制進程的能力的任務(wù)對象中運行。具體來講,限制被置于任務(wù)對象上,以避免進程改變令牌、發(fā)送消息到任務(wù)范圍之外、和/或創(chuàng)建新的桌面。API攔截可以用來控制沙盒進程對非安全資源的訪問,并且攔截以及使低級別API調(diào)用失敗。IME引擎的自動開始的守護進程可以用來開始和初始化沙盒進程。為了達成這一點,守護進程可以制作受限制的令牌、制作任務(wù)對象和限制其能力,利用受限制的令牌來產(chǎn)生(spawn)沙盒進程,將沙盒進程分配給任務(wù)對象,和/或?qū)⑿逻M程的主線程(thread)的令牌改變?yōu)榫哂懈鄼?quán)限的模仿令牌。頂E引擎可以裝載擴展腳本,并且可以利用具有更多權(quán)限的模仿令牌初始化腳本引擎和IPC服務(wù)器。IME和沙盒講稈之間的通信在一些實施方式中,ME引擎和沙盒進程之間的通信可以如上面所討論的使用IPC來建立。IPC提供了一組技術(shù),用于在一個或多個進程中的多個線程之中交換數(shù)據(jù)。IPC方法技術(shù)可以包括遠程程序調(diào)用(RPC)。RPC啟用子例程或程序,以便在與調(diào)用程序應(yīng)用的地址空間不同的另一個地址空間中運行。在一些實施方式中,ME引擎使用簡單的共享存儲器IPC與在沙盒中包裝的(wrapped)腳本引擎進行通信??梢曰诶?,處理消息發(fā)送和接收的操作系統(tǒng)事件來實施通知機制。為了達成這一點,IPC可以提供為更簡單的IPC (例如,比以Chrome沙盒代理為目標的IPC更簡單)。例如,也在沙盒中包裝的IPC服務(wù)器不需要支持多個任務(wù)。當在ME引擎和沙盒進程之間傳送信息時,IPC接口可以使用協(xié)議緩沖器作為數(shù)據(jù)格式。在一些實施方式中,IPC支持使用C++模板和協(xié)議緩沖器的任意的請求和響應(yīng)類型。示例的IPC請求和響應(yīng)可以包括,例如:
權(quán)利要求
1.一種計算機實施的方法,包括: 接收在輸入法編輯器αΜΕ)的用戶界面中的用戶輸入; 將用戶輸入提供給腳本引擎; 從電存儲在腳本儲存庫的多個腳本中選擇腳本; 使用腳本引擎通過腳本來處理用戶輸入,以生成一個或多個候選項;并且 將一個或多個候選項提供給IME引擎。
2.如權(quán)利要求1所述的計算機實施的方法,還包括 例示沙盒進程,該腳本弓I擎在沙盒進程內(nèi)運行。
3.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,其中,所述IME引擎使用進程間通信與腳本引擎進行通信。
4.如權(quán)利要求3所述的計算機實施的方法,還包括在沙盒進程內(nèi)運行IPC服務(wù)器,該IPC服務(wù)器啟用ME引擎和 腳本引擎之間的通信。
5.如權(quán)利要求2到4中的一個或多個所述的計算機實施的方法,其中,所述沙盒進程限制腳本引擎的功能。
6.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,其中,所述用戶輸入包括識別腳本的輸入序列和要由腳本處理的輸入。
7.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,還包括: 將用戶輸入與一個或多個觸發(fā)字符串進行比較; 確定用戶輸入與所述一個或多個觸發(fā)字符串之一匹配;并且 基于所述一個或多個觸發(fā)字符串之一選擇腳本。
8.如權(quán)利要求1到5中的一個或多個所述的計算機實施的方法,還包括: 接收指示在擴展模式中的IME的操作的輸入; 響應(yīng)于接收輸入,在擴展模式中操作ME ;并且 當在擴展模式中操作時,將所有用戶輸入提供給腳本引擎。
9.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,其中,通過腳本處理用戶輸入包括: 建立與基于網(wǎng)絡(luò)的服務(wù)的網(wǎng)絡(luò)連接; 將至少一部分用戶輸入提供給基于網(wǎng)絡(luò)的服務(wù);并且 從基于網(wǎng)絡(luò)的服務(wù)接收響應(yīng),該響應(yīng)已經(jīng)基于至少一部分用戶輸入而生成,并且所述一個或多個候選項包括該響應(yīng)。
10.如權(quán)利要求9所述的計算機實施的方法,其中,所述基于網(wǎng)絡(luò)的服務(wù)包括地圖服務(wù)、搜索服務(wù)、以及翻譯服務(wù)中的至少一個。
11.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,還包括: 生成包括第一組候選項的第一候選項列表; 生成包括第二組候選項的第二候選項列表,第二組候選項包括使用腳本引擎生成的一個或多個候選項; 組合至少一部分第一組候選項和至少一部分第二組候選項,以提供第三候選項列表;并且 在用戶設(shè)備上顯示第三候選項列表。
12.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,其中,所述IME引擎處理一個或多個候選項用于在用戶界面上顯示。
13.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,還包括: 接收指示選擇一個或多個候選項之一的第二用戶輸入;并且 將所述一個或多個候選項之一輸入到在用戶設(shè)備上運行的應(yīng)用。
14.如權(quán)利要求13所述的計算機實施的方法,其中,所述應(yīng)用包括文字處理應(yīng)用、文本編輯應(yīng)用、電子表單應(yīng)用、電子郵件應(yīng)用、展示應(yīng)用、以及網(wǎng)絡(luò)瀏覽器之一。
15.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,其中,電存儲在腳本儲存庫中的每個腳本包括從多個核準的例程中選擇的一個或多個例程。
16.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,還包括識別腳本的腳本語言,其中,腳本引擎例示與用于通過腳本處理用戶輸入的腳本語言相對應(yīng)的運行時間。
17.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,其中,所述用戶輸入以第一語目提供。
18.如權(quán)利要求17 所述的計算機實施的方法,其中,所述一個或多個候選項以第一語言提供。
19.如權(quán)利要求17所述的計算機實施的方法,其中,所述一個或多個候選項以第二語言提供。
20.如權(quán)利要求17所述的計算機實施的方法,其中,所述一個或多個候選項以第一語言和第二語言的組合提供。
21.如權(quán)利要求17到20中的任何一個所述的計算機實施的方法,其中,所述一個或多個候選項包括一個或多個符號。
22.如前述權(quán)利要求中的一個或多個所述的計算機實施的方法,還包括: 接收輸入; 響應(yīng)于輸入,生成電存儲在中央寄存器的可用腳本的列表,可用腳本的列表包括腳本; 接收指示腳本選擇的第二輸入; 響應(yīng)于第二輸入,從中央寄存器中檢索腳本;并且 將腳本存儲在腳本儲存庫中。
23.—種計算機實施的方法,包括: 接收在輸入法編輯器(ME)的用戶界面中的用戶輸入; 將用戶輸入提供給腳本引擎; 從電存儲在腳本儲存庫中的多個腳本中選擇腳本; 基于腳本中提供的指令,建立與基于網(wǎng)絡(luò)的服務(wù)的網(wǎng)絡(luò)連接; 將至少一部分用戶輸入提供給基于網(wǎng)絡(luò)的服務(wù); 從基于網(wǎng)絡(luò)的服務(wù)接收響應(yīng);并且 將響應(yīng)提供給ME引擎,以便將該響應(yīng)顯示給用戶。
24.如權(quán)利要求23所述的計算機實施的方法,其中,所述基于網(wǎng)絡(luò)的服務(wù)包括地圖服務(wù)、搜索服務(wù)、以及翻譯服務(wù)中的至少一個。
25.如權(quán)利要求24所述的計算機實施的方法,其中,所述至少一部分用戶輸入被提供給地圖服務(wù),由地圖服務(wù)生成響應(yīng),并且該響應(yīng)包括用戶可選擇的超鏈接。
26.如權(quán)利要求24所述的計算機實施的方法,其中,所述至少一部分用戶輸入被提供給搜索服務(wù)作為搜索詞,由搜索服務(wù)生成響應(yīng),并且該響應(yīng)包括由搜索服務(wù)基于搜索詞生成的一個或多個搜索結(jié)果。
27.如權(quán)利要求24所述的計算機實施的方法,其中,所述至少一部分用戶輸入被提供給翻譯服務(wù),并且以第一語言提供,由翻譯服務(wù)生成響應(yīng),并且以第二語言提供。
28.—種計算機實施的方法,包括: 接收腳本文件,該腳本文件可由輸入法編輯器(ME)系統(tǒng)運行,以便基于對ME系統(tǒng)的用戶輸入生成一個或多個候選項; 將腳本文件電存儲在中央寄存器,該中央寄存器包括多個腳本;并且 公布用于下載到用戶設(shè)備并 且安裝在用戶設(shè)備上的多個腳本,用戶設(shè)備包括頂E系統(tǒng)。
29.如權(quán)利要求28所述的計算機實施的方法,其中,所述多個腳本中的每個腳本包括從多個核準的例程中選擇的一個或多個例程。
30.如權(quán)利要求28或29所述的計算機實施的方法,其中,所述多個腳本中的腳本以JavaScript、Lua 以及 VBScript 之一編寫。
31.如權(quán)利要求28到30中的一個或多個所述的計算機實施的方法,其中,所述多個腳本中的至少一個腳本包括關(guān)聯(lián)元數(shù)據(jù),關(guān)聯(lián)元數(shù)據(jù)提供用于顯示一個或多個候選項的指令。
32.如權(quán)利要求31所述的計算機實施的方法,其中,所述指令包括提供用于顯示在候選項列表中的一個或多個候選項的號碼序列。
33.如權(quán)利要求31所述的計算機實施的方法,其中,所述指令包括提供用于顯示在候選項列表中的一個或多個候選項的字母序列。
34.—種系統(tǒng),包括: 顯示器; 計算機可讀的存儲介質(zhì),包括用于電存儲一個或多個腳本的腳本儲存庫;以及 一個或多個處理器,運行輸入法編輯器(ME),接收對ME的用戶輸入,將用戶輸入提供給腳本引擎,從腳本儲存庫中選擇腳本,使用腳本引擎通過腳本處理用戶輸入以生成一個或多個候選項,并且提供一個或多個候選項以顯示在顯示器上。
35.如權(quán)利要求34所述的系統(tǒng),其中,所述一個或多個處理器例示沙盒進程,腳本引擎在沙盒進程內(nèi)運行。
36.如權(quán)利要求34或35所述的系統(tǒng),其中,所述ME引擎使用進程間通信與腳本引擎進行通信。
37.如權(quán)利要求36所述的系統(tǒng),其中,所述一個或多個處理器在沙盒進程內(nèi)運行IPC服務(wù)器,IPC服務(wù)器啟用ME引擎和腳本引擎之間的通信。
38.如權(quán)利要求35到37中的一個或多個所述的系統(tǒng),其中,所述沙盒進程限制腳本引擎的功能。
39.如權(quán)利要求34到38中的一個或多個所述的系統(tǒng),其中,所述用戶輸入包括識別腳本的輸入序列和要由腳本處理的輸入。
40.如權(quán)利要求34到39中的一個或多個所述的系統(tǒng),其中,所述一個或多個處理器將用戶輸入與一個或多個觸發(fā)字符串進行比較,確定用戶輸入與所述一個或多個觸發(fā)字符串之一匹配,并且基于所述一個或多個觸發(fā)字符串之一選擇腳本。
41.如權(quán)利要求34到38中的一個或多個所述的系統(tǒng),其中,所述一個或多個處理器接收指示在擴展模式中的ME的操作的輸入,響應(yīng)于接收輸入在擴展模式中操作ME,并且當在擴展模式中操作時將所有用戶輸入提供給腳本引擎。
42.如權(quán)利要求34到41中的任何一個所述的系統(tǒng),其中,所述一個或多個處理器通過以下步驟通過腳本處理用戶輸入: 建立與基于網(wǎng)絡(luò)的服務(wù)的網(wǎng)絡(luò)連接; 將至少一部分用戶輸入提供給基于網(wǎng)絡(luò)的服務(wù);并且 從基于網(wǎng)絡(luò)的服務(wù)接收響應(yīng),該響應(yīng)已經(jīng)基于所述至少一部分用戶輸入而生成,并且所述一個或多個候選項包 括該響應(yīng)。
43.如權(quán)利要求42所述的系統(tǒng),其中,所述基于網(wǎng)絡(luò)的服務(wù)包括地圖服務(wù)、搜索服務(wù)、以及翻譯服務(wù)中的至少一個。
44.如權(quán)利要求34到43中的一個或多個所述的系統(tǒng),其中,所述一個或多個處理器生成包括第一組候選項的第一候選項列表,生成包括第二組候選項的第二候選項列表,第二組候選項包括使用腳本引擎生成的一個或多個候選項,組合至少一部分第一組候選項和至少一部分第二組候選項,以提供第三候選項列表,并且在用戶設(shè)備上顯示第三候選項列表。
45.如權(quán)利要求34到44中的一個或多個所述的系統(tǒng),其中,所述ME引擎處理一個或多個候選項用于在用戶界面上顯示。
46.如權(quán)利要求34到45中的一個或多個所述的系統(tǒng),其中,所述一個或多個處理器接收指示選擇一個或多個候選項之一的第二用戶輸入,并且將所述一個或多個候選項之一輸入到在用戶設(shè)備上運行的應(yīng)用。
47.如權(quán)利要求46所述的系統(tǒng),其中,所述應(yīng)用包括文字處理應(yīng)用、文本編輯應(yīng)用、電子表單應(yīng)用、電子郵件應(yīng)用、展示應(yīng)用、以及網(wǎng)絡(luò)瀏覽器之
48.如權(quán)利要求34到47中的一個或多個所述的系統(tǒng),其中,電存儲在腳本儲存庫中的每個腳本包括從多個核準的例程中選擇的一個或多個例程。
49.如權(quán)利要求34到48中的一個或多個所述的系統(tǒng),其中,所述一個或多個處理器識別腳本的腳本語言,其中,所述腳本引擎例示與用于通過腳本處理用戶輸入的腳本語言相對應(yīng)的運行時間。
50.如權(quán)利要求34到49中的一個或多個所述的系統(tǒng),其中,所述用戶輸入以第一語言提供。
51.如權(quán)利要求50所述的系統(tǒng),其中,所述一個或多個候選項以第一語言提供。
52.如權(quán)利要求50所述的系統(tǒng),其中,所述一個或多個候選項以第二語言提供。
53.如權(quán)利要求50所述的系統(tǒng),其中,所述一個或多個候選項以第一語言和第二語言的組合提供。
54.如權(quán)利要求50到53中的一個或多個所述的系統(tǒng),其中,所述一個或多個候選項包括一個或多個符號。
55.如權(quán)利要求34到54中的一個或多個所述的系統(tǒng),其中,所述一個或多個處理器接收輸入,響應(yīng)于輸入生成電存儲在中央寄存器中的可用腳本的列表,可用腳本的列表包括腳本,接收指示腳本選擇的第二輸入,響應(yīng)于第二輸入從中央寄存器中檢索腳本,并且將腳本存儲在腳本 儲存庫中。
全文摘要
本公開的實施方式提供用于擴展(IME)功能的輸入法編輯器(IME)擴展框。在一些實施方式中,接收在IME的用戶界面中的用戶輸入,并提供給腳本引擎。從電存儲在腳本儲存庫中的多個腳本中選擇腳本。使用腳本引擎通過腳本來處理用戶輸入,以生成一個或多個候選項,并且所述一個或多個候選項被提供給(IME)引擎。在一些實施方式中,接收腳本文件,該腳本文件可被(IME)系統(tǒng)運行,以基于對(IME)系統(tǒng)的用戶輸入生成一個或多個候選項。腳本文件被電存儲在中央寄存器,中央寄存器包括多個腳本,并且多個腳本被公布用于下載到用戶設(shè)備并安裝在用戶設(shè)備上,該用戶設(shè)備包括(IME)系統(tǒng)。
文檔編號G06F3/023GK103080873SQ201080067382
公開日2013年5月1日 申請日期2010年4月12日 優(yōu)先權(quán)日2010年4月12日
發(fā)明者王詠剛, 區(qū)良裔, 張蔭芾 申請人:谷歌公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1