自動完成

自動完成(英語:Auto-Complete)功能,指用戶在輸入一個字串的部分內容時,就提供下拉式選單自動推薦相關常用字串供用戶選擇以快速輸入的一項功能特性。

維基百科搜尋建議自動完成功能

歷史

自動完成(也稱爲自動改正)和預測字詞(也稱爲預測文字)技術最早是由中國的科學家和語言學家發明的。在1950年代,中文輸入主要依靠中文打字機,但是由於漢字是語素文字,比起使用使用拼音文字的語言,中文打字機的設計更複雜特殊,隨之而來是極低的打字效率[1]。用戶需要在中文打字機的幾千個按鍵中尋找需要文字。[2][3][4]

1950年代,打字機的按鍵排序開始改進,人們首先將文字的排列從傳統的字典排序改爲了根據常用程度排序,這和現在的自動完成具有相同的邏輯。[5]關聯字詞的能力也很快被添加到中文打字機上,打字機可以根據已經輸入的字元推薦接下來可能會輸入的字,這一功能和已經和電腦時代的中文輸入法類似以及手機時代的預測文字功能非常類似。根據斯坦福大學的歷史學家墨磊寧(Thomas Mullaney)所説,中國在1960年代和1970年代設計的中文打字機對現代電腦的文字處理功能有了很大的啓發,也對現代電腦的發展有着很大的貢獻。[6][2][5]

在Web瀏覽器

 
Firefox 3的地址列自動完成功能。

通常指瀏覽器等軟件自動跟蹤用戶最近鍵入的資訊,如Web站點地址、表單的中資訊以及搜尋查詢等並在鍵入新的資訊時試圖預測用戶要鍵入的資訊,並提供可能的匹配內容的功能,目前大多現代網頁瀏覽器都已具備此功能。[7]

  • 使用Web瀏覽器內建的功能,經由瀏覽器的表單資料記憶功能,取得符合條件的字串。
  • 使用AJAX功能,以已輸入的片段內容,向WebServer端取得符合篩選條件的字串清單。

在電子郵件軟件

電子郵件軟件中,自動完成通常用於填寫收件人的電子郵件地址。只要輸入電子郵件地址的前幾個字,就會出現下拉式選單供選擇。就像網站URL一樣,電子郵件地址往往是很長的一串字,因此不方便輸入。

在程式碼的編輯器

很多程式語言的整合式開發環境或編輯器中都支援自動完成。例如在輸入類別或元件的變數後,再輸入".",會出現其成員變數或成員函數名稱的下拉式選單供選擇。

在命令列

 
Bash中命令列補全的實例。

命令列補全英語Command-line completion(Command-line completion)允許用戶在CLI鍵入命令、檔案名等的一部分,再透過補全按鍵(常為Tab)加以補全。

在其他軟件

參考資料

  1. ^ Mcclure, Max. Chinese typewriter anticipated predictive text, finds historian. 12 November 2012. 
  2. ^ 2.0 2.1 Sorrel, Charlie. How it Works: The Chinese Typewriter. Wired. February 23, 2009.  參數|magazine=與模板{{cite web}}不匹配(建議改用{{cite magazine}}|website=) (幫助)
  3. ^ Greenwood, Veronique. Why predictive text is making you forget how to write. New Scientist. 14 December 2016. 
  4. ^ O'Donovan, Caroline. How This Decades-Old Technology Ushered In Predictive Text. Buzzfeed. 16 August 2016. 
  5. ^ 5.0 5.1 Mullaney, Thomas S. 90,000 Characters on 1 Keyboard. Foreign Policy. 2018-07-16 [25 April 2020]. 
  6. ^ Featured Research – world's first history of the Chinese typewriter, Humanities at Stanford, January 2, 2010 
  7. ^ 使用自动完成功能节省时间. Microsoft Corporation. 于2009年6月30日查阅.. [2009年6月30日]. (原始內容存檔於2011年1月28日). 
  8. ^ TabKey Appinn - Tab 一下,自动完成输入!. 小众软件. 于2009年6月30日查阅.. [2009年6月30日]. (原始內容存檔於2021年1月26日).