專利名稱:文字輸入方法和文字輸入系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機技術(shù)領(lǐng)域,尤其涉及文字輸入方法和文字輸入系統(tǒng)。
背景技術(shù):
通常,電腦使用者使用中文輸入軟件將漢字輸入到電腦。中文輸入軟件是運行于操作系統(tǒng)上的工具軟件,可以把鍵盤輸入的編碼或其他非鍵盤輸入的媒體數(shù)據(jù)轉(zhuǎn)換成漢字。目前,中文輸入軟件可基于鍵盤輸入或者非鍵盤輸入,比較成熟且使用最廣的是基于鍵盤的中文輸入軟件?;阪I盤的中文輸入軟件的作用在于利用鍵盤根據(jù)編碼規(guī)則輸入漢字,即,根據(jù)編碼規(guī)則對漢字進行編碼,并將得到的編碼與鍵盤上的26個英文字母聯(lián)系起來,從而通過鍵盤輸入漢字的編碼,然后再根據(jù)編碼轉(zhuǎn)換成漢字。而在鍵盤上輸入漢字編碼或者網(wǎng)址等文字的過程中,由于誤選或者輸入錯誤,經(jīng)常會出現(xiàn)已上屏的文字不符合預(yù)期的情況,而導致輸入錯誤的文字。此時,需先把輸入的錯誤文字刪除,并重新輸入,再在候選框上重新選擇,然后才能上屏,導致輸入效率的降低。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種文字輸入方法及文字輸入系統(tǒng),以提高文字輸入效率。本發(fā)明提供一種文字輸入方法,包括如下步驟根據(jù)輸入生成侯選文字,將從生成的侯選文字中選定的文字上屏;保存已上屏的文字的上下文信息;檢測到按下回退鍵的信息;根據(jù)保存的已上屏的文字的上下文信息,再次生成候選文字;將從再次生成的候選文字中選定的文字重新上屏。優(yōu)選的,上述文字輸入方法還包括在保存已上屏的文字的上下文信息之后,檢測是否通過光標切換輸入模式,若是,則按照正常按鍵輸入處理。優(yōu)選的,上述文字輸入方法還包括在保存已上屏的文字的上下文信息之后,檢測是否按下非回退鍵,若是,則按照正常按鍵輸入處理。優(yōu)選的,上述文字輸入方法還包括檢測到按下回退鍵的信息之后,選定本次輸入錯誤的已上屏的文字。優(yōu)選的,上述文字輸入方法還包括在將從再次生成的候選文字中選定的文字重新上屏的同時,覆蓋本次輸入錯誤的已上屏的文字。本發(fā)明還提供一種文字輸入系統(tǒng),包括候選文字生成模塊和上屏模塊,其中候選文字生成模塊用于根據(jù)輸入生成侯選文字,上屏模塊用于將從生成的侯選文字中選定的文字上屏;此外,上述文字輸入系統(tǒng)還包括保存模塊和檢測模塊,其中,保存模塊用于保存已上屏的文字的上下文信息;檢測模塊用于檢測按下回退鍵的信息;候選文字生成模塊還用于根據(jù)保存的已上屏的文字的上下文信息,再次生成候選文字;上屏模塊還用于將從再次生成的候選文字中選定的文字重新上屏。優(yōu)選的,上述檢測模塊還用于在保存模塊保存已上屏的文字的上下文信息之后,檢測是否通過光標切換輸入模式。優(yōu)選的,上述檢測模塊還用于在保存已上屏的文字的上下文信息之后,檢測是否按下非回退鍵。優(yōu)選的,上述文字輸入系統(tǒng)還包括文字選擇模塊,用于檢測到按下回退鍵的信息之后,選定本次輸入錯誤的已上屏的文字。優(yōu)選的,上述文字輸入系統(tǒng)還包括覆蓋模塊,用于在上屏模塊將從再次生成的候選文字中選定的文字重新上屏的同時,覆蓋本次輸入錯誤的已上屏的文字。與現(xiàn)有的文字輸入方法及文字系統(tǒng)相比較而言,本發(fā)明實施例所提供的文字輸入方法及文字輸入系統(tǒng)通過保存已上屏的文字的上下文信息,并在檢測到按下回退鍵的信息之后,恢復到即將選定文字上屏的場景,更正之前不符合預(yù)期的已上屏的文字,提高了輸入效率。
圖1為本發(fā)明文字輸入方法一種實施例的流程圖;圖2 (a)、圖2 (b)、圖2 (c)和圖2 (d)為本發(fā)明文字輸入方法進行回退的一個例子;圖3(a)、圖3(b)、圖3(c)和圖3(d)為本發(fā)明文字輸入方法進行回退的另一個例子;圖4為本發(fā)明文字輸入方法另一種實施例的流程圖;圖5為本發(fā)明文字輸入方法又一種實施例的流程圖;圖6為本發(fā)明文字輸入系統(tǒng)一種實施例的模塊圖;圖7為本發(fā)明文字輸入系統(tǒng)又一種實施例的模塊圖。
具體實施例方式下面結(jié)合附圖和具體實施例對本發(fā)明技術(shù)方案作進一步的詳細描述,以使本領(lǐng)域的技術(shù)人員可以更好的理解本發(fā)明并能予以實施,但所舉實施例不作為對本發(fā)明的限定。本發(fā)明的文字可以是包含標點的字符串或者單個字符,例如可以是單個中文字符,或者是由多個中文字符所組成的詞語,還可以是單個英文字母、英文單詞、由英文字母與標點符號所組成的網(wǎng)絡(luò)域名,或者是由阿拉伯數(shù)字與標點符號所組成的網(wǎng)址。當然,本發(fā)明的文字還包括其它形式,對文字定義本發(fā)明不做限制。圖1為本發(fā)明文字輸入方法一種實施例的流程圖。在本實施例中,在輸入文字的過程中,由于誤選文字或者是將文字拼寫錯誤而導致已上屏的文字不符合預(yù)期,如果沒有進行其它操作,而直接按下本發(fā)明所定義的回退鍵, 即可恢復到即將選定文字上屏的場景,更正之前不符合預(yù)期的已上屏的文字。即將選定文字上屏的場景是指用戶已經(jīng)在輸入法編輯器所提供的侯選窗口上輸入完畢,并開始在侯選窗口上選擇所輸入的文字時的狀態(tài)。具體而言,本實施例中的文字輸入方法,包括如下步驟步驟S101,根據(jù)輸入生成侯選文字,將從生成的侯選文字中選定的文字上屏。步驟S102,保存已上屏的文字的上下文信息(Context)。具體而言,通過按空格鍵或者是從侯選窗口選擇文字之后,本發(fā)明文字輸入方法將保存本次已上屏的文字所包含的上下文信息,該上下文信息包括在候選窗口所輸入的信息和已上屏文字的信息。比如,當已上屏的文字為中文時,該上下文信息包括在侯選窗口中所輸入的拼音,以及上屏的中文字符的個數(shù);當已上屏的文字為英文字母、英文單詞、網(wǎng)絡(luò)域名,或者是網(wǎng)址時,該上下文信息包括在侯選窗口中所輸入的英文字母及標點,以及上屏的英文字母及標點的個數(shù)。步驟S103,檢測到按下回退鍵的信息。本實施例中的回退鍵可以是單個鍵,也可以是組合鍵,比如可以是Ctrl鍵與PageUp鍵的組合,或者是Ctrl鍵與Backspace鍵的組合。 為了方便記憶,本實施例優(yōu)選為Ctrl鍵與Backspace鍵的組合,因為Ctrl鍵是使用較多的功能鍵,而Backspace鍵通常用于將光標向后移動或者刪除光標處的前一個字符。當然,回退鍵的組合方式也可自行定義,只要不跟其它快捷鍵沖突即可,本發(fā)明對此不做限定。步驟S104,根據(jù)保存的已上屏的文字的上下文信息,再次生成候選文字。具體而言,當按下回退鍵之后,通過將步驟SlOl中保存的已上屏的文字的上下文信息再次生成候選文字,從而恢復到即將選定文字上屏的場景。在本發(fā)明文字輸入方法中,通過將已上屏的文字的上下文信息作為參數(shù)傳給輸入法內(nèi)核,由輸入法內(nèi)核再次生成候選文字并顯示在侯選窗口中,該過程相當于是再次進行相同的輸入,并得到相同的候選文字,但是速度要比再次輸入的速度快。步驟S105,將從再次生成的候選文字中選定的文字重新上屏。下面將通過具體的例子說明本發(fā)明文字輸入方法的應(yīng)用過程比如,用戶本來想輸入“我很誠實”四個字,于是在圖2(a)中的輸入法界面中輸入了 “cheng’ shi”,其所預(yù)期要上屏的文字本來是“誠實”,但是誤輸入了 “空格鍵”或者是選擇1,使得已上屏的文字變成為“城市”,輸入結(jié)果為圖2(b)中的“我很城市”。當發(fā)現(xiàn)已上屏的文字不符合預(yù)期之后,可直接按下Ctrl鍵與Backspace鍵的組合,恢復到圖2 (c)中的即將選定文字上屏的場景,當在圖2 (c)中選擇2之后,可將輸入結(jié)果更正為可圖2(d)中的 “我很誠實”。再比如,用戶本來想輸入“www.baihe. com”這一網(wǎng)址,于是在圖3 (a)中的輸入法界面中輸入了 “www. bai”,此時輸入法進行自動匹配后在侯選窗口中出現(xiàn)了 “www. baidu. com","www. baigoogledu. com”和“www. baihe. com”這三個網(wǎng)址,其所預(yù)期要上屏的文字本來是“www. baihe. com”,但是誤輸入了“空格鍵”或者是選擇1,使得已上屏的文字變成為 "www. baidu. com”,輸入結(jié)果為圖3(b)中的“www. baidu. com,,。當發(fā)現(xiàn)已上屏的文字不符合預(yù)期之后,可直接按下Ctrl鍵與Backspace鍵的組合,恢復到圖3 (c)中的即將選定文字上屏的場景,當在圖3(c)中選擇2之后,可將輸入結(jié)果更正為可圖3(d)中的“www. baihe. com,,。因此,與現(xiàn)有的文字輸入方法相比較而言,本實施例所提供的文字輸入方法通過保存已上屏的文字的上下文信息,并在檢測到按下回退鍵的信息之后,恢復到即將選定文字上屏的場景,更正之前不符合預(yù)期的已上屏的文字,提高了輸入效率。圖4為本發(fā)明文字輸入方法另一種實施例的流程圖。在本實施例中,當在輸入文字的過程中,由于誤選文字或者是將文字拼寫錯誤而導致已上屏的文字不符合預(yù)期,而又以光標進行了切換輸入模式操作之后,再按下本發(fā)明所定義的回退鍵,此時由于不同輸入模式之間的選擇文字的策略不同,為了避免對正常使用產(chǎn)生干擾,則本實施例將不進行回退操作。具體而言,本實施例中的文字輸入方法,包括如下步驟步驟S401,根據(jù)輸入生成侯選文字,將從生成的侯選文字中選定的文字上屏。步驟S402,保存已上屏的文字的上下文信息。步驟S403,檢測是否通過光標切換輸入模式。如果通過光標切換輸入模式,則進入步驟S404 ;否則,進入步驟S405。本實施例中,切換輸入模式可以是切換輸入法或者是切換輸入語言,比如從拼音輸入法切換到五筆輸入法,或者在拼音輸入法中從中文輸入法切換到英文輸入法。 步驟S404,按照正常按鍵輸入處理。本實施例中,按照正常按鍵輸入處理是指直接檢測用戶輸入的信息并根據(jù)用戶輸入的信息在侯選窗口上顯示侯選文字,而不根據(jù)保存的已上屏的文字的上下文信息再次生成候選文字。步驟S405,檢測是否按下回退鍵。如果按下回退鍵,則進入步驟S406 ;否則,進入步驟S404。步驟S406,選定本次輸入錯誤的已上屏的文字。本實施例中是通過模擬鍵盤消息選定本次輸入錯誤的已上屏的文字。比如,當要模擬圖3中的“www. baihe. com”所對應(yīng)的鍵盤消息時,可在按下Ctrl鍵與Backspace鍵的組合之后,首先模擬按下Shift鍵的鍵盤消息,再模擬13次(11次英文字母和2次的標點)按下Backspace鍵的鍵盤消息,最后模擬松開Shift鍵的鍵盤消息;接著將上述鍵盤消息發(fā)送給操作系統(tǒng),最終實現(xiàn)選定本次輸入錯誤的已上屏的文字。步驟S407,根據(jù)保存的已上屏的文字的上下文信息,再次生成候選文字。步驟S408,將從再次生成的候選文字中選定的文字重新上屏的同時,覆蓋本次輸入錯誤的已上屏的文字。另外,當通過光標切換輸入模式之后,如果并未進行其它的輸入操作,而直接按下回退鍵,也可以執(zhí)行回退操作。同時,在本實施例中,步驟S406是可選步驟,當按下回退鍵之后,可以不自動選擇本次輸入錯誤的已上屏的文字,同樣也可提高現(xiàn)有輸入方法的輸入效率。因此,與圖1中的文字輸入方法相比較而言,本實施例所提供的文字輸入方法不但可以通過檢測是否以光標進行了切換輸入模式操作,避免了對正常使用產(chǎn)生干擾;而且還可以選定本次輸入錯誤的已上屏的文字,以進一步提高輸入效率。圖5為本發(fā)明文字輸入方法又一種實施例的流程圖。在本實施例中,當在輸入文字的過程中,由于誤選文字或者是將文字拼寫錯誤而導致已上屏的文字不符合預(yù)期,而又按下非回退鍵,再按下本發(fā)明所定義的回退鍵,此時為了避免對正常使用產(chǎn)生干擾,則本實施例將不進行回退操作。具體而言,本實施例中的文字輸入方法,包括如下步驟步驟S501,根據(jù)輸入生成侯選文字,將從生成的侯選文字中選定的文字上屏。步驟S502,保存已上屏的文字的上下文信息。步驟S503,檢測是否按下非回退鍵。如果按下非回退鍵,則進入步驟S504 ;否則, 進入步驟S505。在本實施例中,非回退鍵是指除了所定義的回退鍵之外的其它鍵,比如當定義了 Ctrl鍵與Backspace鍵的組合為回退鍵之后,則除了 Ctrl鍵、Ctrl鍵與Backspace 鍵的組合,其它均為非回退鍵。此處不將Ctrl鍵定義為非回退鍵的原因在于,一般是先按下Ctrl鍵再按下Backspace鍵,最終才能實現(xiàn)回退,因此如果將Ctrl鍵定義為非組合鍵會造成誤判。同時,可通過設(shè)置與非回退鍵對應(yīng)的狀態(tài)標志位檢測是否按下非回退鍵。比如, 可先設(shè)置狀態(tài)標志位的原始值為“0”,當按下非回退鍵之后,狀態(tài)標志位的值變?yōu)椤?1”,當檢測到狀態(tài)標志位的值由“0”變?yōu)椤?”時,即說明按下非回退鍵。除此之外,還可將狀態(tài)標志位設(shè)置為其它阿拉伯數(shù)字或者是英文字母,本發(fā)明對此不做限定。步驟S504,按照正常按鍵輸入處理。本實施例中,按照正常按鍵輸入處理是指直接檢測用戶輸入的信息并根據(jù)用戶輸入的信息在侯選窗口上顯示侯選文字,而不根據(jù)保存的已上屏的文字的上下文信息再次生成候選文字。步驟S505,檢測是否按下回退鍵。如果按下回退鍵,則進入步驟S506 ;否則,進入步驟S504。步驟S506,選定本次輸入錯誤的已上屏的文字。在本實施例中,當按下的非回退鍵為Backspace鍵或者Delete鍵等具有刪除功能的鍵時,會導致步驟S506所選定的文字與需要進行回退操作的文字不相同,因此需要在步驟S503中進行預(yù)先檢測是否按下非回退鍵。步驟S507,根據(jù)保存的已上屏的文字的上下文信息,再次生成候選文字。步驟S508,將從再次生成的候選文字中選定的文字重新上屏的同時,覆蓋本次輸入錯誤的已上屏的文字。同樣,在本實施例中,步驟S506也是可選步驟,當按下回退鍵之后,可以不自動選擇本次輸入錯誤的已上屏的文字,同樣也可提高現(xiàn)有輸入方法的輸入效率。因此,與圖1中的文字輸入方法相比較而言,本實施例所提供的文字輸入方法不但可以通過檢測是否按下了非回退鍵,避免對正常使用產(chǎn)生干擾;而且還可以選定本次輸入錯誤的已上屏的文字,并將本次輸入錯誤的文字覆蓋,而不用人工刪除,以進一步提高輸入效率。圖6為本發(fā)明文字輸入系統(tǒng)一種實施例的模塊圖。在本實施例中,當在輸入文字的過程中,由于誤選文字或者是將文字拼寫錯誤而導致已上屏的文字不符合預(yù)期,如果沒有進行其它操作,而直接按下本發(fā)明所定義的回退鍵,即可恢復到即將選定文字上屏的場景,更正之前不符合預(yù)期的已上屏的文字。具體而言,本實施例中的文字輸入系統(tǒng)60,包括保存模塊601、檢測模塊602、候選文字生成模塊 603和上屏模塊604。保存模塊601用于保存已上屏的文字的上下文信息。檢測模塊602 用于檢測按下回退鍵的信息。候選文字生成模塊603用于根據(jù)輸入生成侯選文字,以及根據(jù)保存的已上屏的文字的上下文信息,再次生成候選文字。上屏模塊604用于將從生成的侯選文字中選定的文字上屏,該生成的侯選文字包括首次生成的侯選文字和再次生成的侯選文字。本發(fā)明還提供另一實施例的文字輸入法系統(tǒng)60,在該實施例中,檢測模塊602還用于在保存模塊601保存已上屏的文字的上下文信息之后,檢測是否通過光標切換輸入模式。當檢測到通過光標切換輸入模式之后,如果再按下回退鍵,則不進行回退操作。這樣可以在輸入文字的過程中,由于誤選文字或者是將文字拼寫錯誤而導致已上屏的文字不符合預(yù)期,而又以光標進行了切換輸入模式操作之后,再按下本發(fā)明所定義的回退鍵,避免了由于不同輸入模式之間的選擇文字的策略不同,對正常使用產(chǎn)生干擾。
本發(fā)明還提供又一實施例的文字輸入法系統(tǒng)60,在該實施例中,檢測模塊602還用于在保存已上屏的文字的上下文信息之后,檢測是否按下非回退鍵。當檢測到按下非回退鍵的信息之后,如果再按下回退鍵,則不進行回退操作。這樣可以在輸入文字的過程中, 由于誤選文字或者是將文字拼寫錯誤而導致已上屏的文字不符合預(yù)期,而又按下非回退鍵之后,再按下回退鍵,而對正常使用產(chǎn)生干擾。圖7為本發(fā)明文字輸入系統(tǒng)又一種實施例的模塊圖。與上述實施例的文字輸入法系統(tǒng)60相比較而言,在該實施例中,文字輸入法系統(tǒng) 70還包括文字選擇模塊605和覆蓋模塊606。文字選擇模塊605用于檢測到按下回退鍵的信息之后,選定本次輸入錯誤的已上屏的文字。覆蓋模塊606用于在上屏模塊604將從再次生成的候選文字中選定的文字重新上屏的同時,覆蓋本次輸入錯誤的已上屏的文字。這樣可以通過文字選擇模塊605選定本次輸入錯誤的已上屏的文字,然后通過覆蓋模塊606 將本次輸入錯誤的文字覆蓋,而不用人工刪除,以進一步提高輸入效率。以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。
權(quán)利要求
1.一種文字輸入方法,包括根據(jù)輸入生成候選文字,將從生成的候選文字中選定的文字上屏,其特征在于,所述文字輸入方法還包括保存已上屏的文字的上下文信息;檢測到按下回退鍵的信息;根據(jù)保存的已上屏的文字的上下文信息,再次生成候選文字; 將從再次生成的候選文字中選定的文字重新上屏。
2.如權(quán)利要求1所述的文字輸入方法,其特征在于,還包括在保存已上屏的文字的上下文信息之后,檢測是否通過光標切換輸入模式,若是,則按照正常按鍵輸入處理。
3.如權(quán)利要求1所述的文字輸入方法,其特征在于,還包括在保存已上屏的文字的上下文信息之后,檢測是否按下非回退鍵,若是,則按照正常按鍵輸入處理。
4.如權(quán)利要求1至3任一項所述的文字輸入方法,其特征在于,還包括檢測到按下回退鍵的信息之后,選定本次輸入錯誤的已上屏的文字。
5.如權(quán)利要求4所述的文字輸入方法,其特征在于,還包括在將從再次生成的候選文字中選定的文字重新上屏的同時,覆蓋本次輸入錯誤的已上屏的文字。
6.一種文字輸入系統(tǒng),包括候選文字生成模塊和上屏模塊,其中候選文字生成模塊用于根據(jù)輸入生成侯選文字,上屏模塊用于將從生成的侯選文字中選定的文字上屏,其特征在于,所述文字輸入系統(tǒng)還包括保存模塊和檢測模塊,其中所述保存模塊用于保存已上屏的文字的上下文信息;所述檢測模塊用于檢測按下回退鍵的信息;所述候選文字生成模塊還用于根據(jù)保存的已上屏的文字的上下文信息,再次生成候選文字;所述上屏模塊還用于將從再次生成的候選文字中選定的文字重新上屏。
7.利要求6的文字輸入系統(tǒng),其特征在于,所述檢測模塊還用于在保存模塊保存已上屏的文字的上下文信息之后,檢測是否通過光標切換輸入模式。
8.如權(quán)利要求6所述的文字輸入系統(tǒng),其特征在于,所述檢測模塊還用于在保存已上屏的文字的上下文信息之后,檢測是否按下非回退鍵。
9.如權(quán)利要求6至8任一項所述的文字輸入系統(tǒng),其特征在于,還包括文字選擇模塊, 用于檢測到按下回退鍵的信息之后,選定本次輸入錯誤的已上屏的文字。
10.如權(quán)利要求9所述的文字輸入系統(tǒng),其特征在于,還包括覆蓋模塊,用于在上屏模塊將從再次生成的候選文字中選定的文字重新上屏的同時,覆蓋本次輸入錯誤的已上屏的文字。
全文摘要
本發(fā)明涉及一種文字輸入方法,包括如下步驟根據(jù)輸入生成侯選文字,將從生成的侯選文字中選定的文字上屏;保存已上屏的文字的上下文信息;檢測到按下回退鍵的信息;根據(jù)保存的已上屏的文字的上下文信息,再次生成候選文字;將從再次生成的候選文字中選定的文字重新上屏。本發(fā)明還提供一種文字輸入系統(tǒng)。本發(fā)明實施例所提供的文字輸入方法及文字輸入系統(tǒng)通過保存已上屏的文字的上下文信息,并在檢測到按下回退鍵的信息之后,恢復到即將選定文字上屏的場景,更正之前不符合預(yù)期的已上屏的文字,提高了輸入效率。
文檔編號G06F3/023GK102193645SQ20101012829
公開日2011年9月21日 申請日期2010年3月16日 優(yōu)先權(quán)日2010年3月16日
發(fā)明者歐陽君沛, 龔云華 申請人:騰訊科技(深圳)有限公司