日文輸入法

日文輸入法（日語：日本語入力システム），是指為了將日語輸入電腦或行動電話等裝置而採用的編碼方法。在電腦中，英語等語言的輸入只需要像打字機時代那樣直接敲鍵盤就可以了，但是像日語這樣常用文字的數目達到數千的語言，輸入時不可能給每一個文字都分配一個按鍵，因此需要透過各種方式將文字編碼為能夠用簡便輸入。這樣的編碼系統就是日文輸入法。

日文輸入法在DOS時代都是透過前端處理器（Front End Processor）實現的，因此當時往往被稱作日語輸入前端處理器（日本語入力FEP，乃至於簡稱為FEP）。在Windows普及後則往往被稱作IME（Input Method Editor）。

在日語中，IME既可以泛指一切輸入法，也可能專指微軟日語輸入法Microsoft IME，但本文中不用IME專指微軟日語輸入法。而「入力」則泛指一切的輸入形式，如：輸入功率等。

另外，日語中專指文字輸入法的用語是「言語入力」。

## 鍵盤布局

### 標準QWERTY式

使用為美式英語設計的標準的QWERTY鍵盤就可以輸入日語。由於QWERTY鍵盤上並沒有銘刻假名，所以其使用者往往使用羅馬字輸入法。

但非JIS鍵盤也可以使用假名輸入的方法輸入日語，鍵位排列與JIS規格鍵盤稍有區別（「ろ」和「む」的位置不同）

JIS鍵盤有而QWERTY鍵盤沒有的按鈕，可以通過按下其他組合鍵來模擬（例如：Ctrl+Caps Lock 或 F6 切換為平假名，Alt+Caps Lock 或 F7 切換為片假名）。

一般來說，由於只要掌握了日語羅馬字的拼法就可以使用羅馬字輸入法，而直接輸入假名則需要記憶假名在鍵盤上的位置；儘管許多人使用附有假名的日語鍵盤，大多數人仍是靠羅馬字的方式輸入。輸入法的羅馬字與一般的有所不同，例如習慣上平文式羅馬字的「ぢ」及「じ」均為ji，而輸入法的前者則為di；輸入「でぃ」時默認需輸入dhi。輸入法的「ん」需輸入nn；輸入小字時，在其前加上 l 或 x，如 la 和 xa 可顯示「ぁ」，xtu, xtsu, ltu, ltsu 可顯示「っ」。

### JIS假名式

<image>

日本工業規格（JIS）對日文鍵盤上假名的排放位置作了規定。在日本銷售的鍵盤，大部分都是QWERTY鍵盤或者JIS鍵盤。Q W E R T Y在日文鍵盤對應著以下假名：た て い す か ん（Ta Te I Su Ka N'）

注意：標準的QWERTY鍵盤和JIS鍵盤的標點符號按鍵不同。例如QWERTY鍵盤上Shift+2是「@」，JIS鍵盤上卻是「"」。

標記著假名的日文鍵盤在日本以外的市場頗為罕見，但直接輸入平假名並沒有任何的硬體限制。通常只需要直接切換到日文鍵盤序列並切換到假名模式即可直接輸入平假名（也可以基於這個鍵盤序列通過輸入法轉換某些詞語到日語漢字），大部分新型的作業系統都有支援這個功能。

因為日語輸入是基於平假名的，輸入完整的日語還需要轉換漢字、片假名以及普通的英語字符、標點符號，所以日文鍵盤上會多幾個特殊按鈕，使空白鍵短了許多，令初學者需要一定時間才能習慣。

### 拇指上檔式

<image>

拇指上檔式（親指シフト）是直接輸入假名的鍵盤布局。後來做過一些更改後又稱作NICOLA（ニコラ）式。兩者統稱為拇指上檔鍵盤。

和JIS鍵盤最大的不同在於把QWERTY鍵盤放置空格的地方改為了兩個「拇指上檔鍵」，而空格自身變成了一個和Alt/Ctrl差不多大小的按鍵。這樣做使得可以很容易地按上檔鍵切換假名，而日語輸入不像英語那樣需要用空格隔開單詞，不會因為空格難按影響輸入。拇指上檔式把輸入假名的按鍵控制在3欄，而非JIS鍵盤的4欄。

21世紀以來，JIS鍵盤成了日語輸入時最常使用的鍵盤，拇指上檔鍵盤相比於JIS鍵盤處於完全不利的地位。但是由於使用者可以使用模擬程序在JIS鍵盤上實現拇指上檔鍵盤的效果，拇指上檔鍵盤的銷量不能直接反映使用拇指上檔式鍵盤布局的人數。

### 五十音順式

在公共設施和銀行ATM、自動導航儀上可以看到的鍵盤布局。將假名按照五十音圖的順序排列在鍵盤上。

在個人文字處理器剛剛出現的時代，許多公司發售過以50音順排列的打字機。

### 手提電話

手提電話的按鍵較電腦少，所以必須另外研發出一套完全不同的布局以及輸入方法。

#### 12 鍵布局

<image>

手提電話中的日語輸入基於手提電話上的數字按鈕。如圖中的鍵盤，每個數字都對應一行假名，例4鍵對應た行假名，這行假名包括有た ち つ て と っ，重複按4可選取想要的字。0除了對應わ行假名，還用作處理濁音和半濁音(ﾞ ﾟ符號)以及撥音ん。小寫假名以及促音與普通假名的輸入方法相同(重複按鍵)。假名輸入完畢按螢幕上提示操作以將某些字轉換成想要的詞語。

#### 觸控輸入

智慧型手機除了使用普通手機鍵盤的方式輸入之外，還能使用觸控輸入（フリック入力）。首先，各行あ段假名排成一個類似電腦鍵盤最右側數字鍵的布局，其他4段假名按十字形或者扇形排列あ段周圍。在按下某個あ段假名後手指不放並向對應方向移動，則可輸入相應的假名。

<image>

#### Godan 布局

除了行業標準的 QWERTY 和 12 鍵布局外，Google日文輸入法還提供 15 鍵 Godan 鍵盤布局，這是一種針對羅馬字輸入進行了優化的字母布局。

## 編碼方案及轉換

日文輸入法可分為漢字直接輸入（漢字直接入力）和假名漢字轉換（かな漢字変換）兩大類。其中漢字直接輸入又可分為聯想式和非聯想式，假名漢字轉換又可分為通過輸入羅馬字來轉換成平假名或直接輸入平假名。假名漢字轉換是在1978年9月26日發售的東芝JW-10中最初實現的。

絕大多數日語使用者使用的都是假名漢字轉換輸入法。由於在假名漢字轉換輸入法中，直接輸入平假名需要先記憶平假名的鍵盤分布，所以羅馬字輸入法也不乏使用者。也有部分軟體採用GUI選字方式甚至支援手寫模式作為輔助。

### 漢字直接輸入

漢字直接輸入，在日本往往被簡稱作「漢直」。由於漢直不是靠先輸入日語的讀音再由機器轉換為對應的漢字，而是直接輸入漢字或假名、符號對應的代碼，因而可以做到一字一碼，不會產生假名漢字轉換所出現的選詞選錯導致的錯別字。熟練者可以做到不看螢幕盲打。但是，打字者無法輸入自己不知道編碼的漢字。

在被稱作Mainframe的大型機剛剛能夠處理日語的時候（1970～1980年代早期），電腦還沒有假名漢字轉換的功能，記憶體容量也很少（那個時代即使是超大型機也只有256MB記憶體、幾十GB的硬碟），因此曾使用過巨型鍵盤直接輸入漢字（在一個鍵上分配數個漢字）、用數字鍵輸入漢字的機內碼或者JIS區位碼的漢字直接輸入法。

現在的漢字直接輸入可分為聯想式和非聯想式，不論哪種都是一字一碼。

#### 聯想式

編碼和所輸入的漢字有關。

- 基於漢字偏旁部首的：NIK-Code、にこにこ等。
- 基於文字意思、讀音等聯想的：ラインプット、カンテック、KIS、LTWORD等。

#### 非聯想式

編碼和所輸入的漢字無關。

- 基於區位碼等編碼的：Mac OS 的 Unicode Hex Input
- 由2～4個按鍵所指定：T-code、TUT-code、G-code、超絶技巧入力等。
- 由文字讀音指定：風及其兼容FEP。

### 假名漢字轉換

<image>

假名漢字轉換的典型動作方式如下：首先，使用者將想輸入的文字的讀音通過輸入裝置輸入。使用鍵盤輸入時有假名輸入和羅馬字輸入的區別。假名漢字轉換系統讀取讀音，通過語素解析（Text segmentation）和「讀音與漢字的對照表」（也就是所謂的辭典）轉換為漢字假名混寫文。

#### 直接輸入假名

通過敲擊鍵盤，輸入鍵盤上所銘刻的文字中的日文的那一部分所對應的假名。例如日本常見的JIS鍵盤，按鍵後輸入鍵的右側銘刻的假名。假名輸入（かな入力）存在不同的鍵盤布局。有些鍵盤布局只有特定的輸入法才能使用，例如anthy可以使用拇指上檔式輸入（即使不是拇指上檔式鍵盤也可用其他鍵模擬），而Google的mozc則不可。另外，在GNU/Linux中鍵盤布局與輸入法分離，如果不使用JIS鍵盤布局而使用直接輸入假名的輸入法，就會發現一部分按鍵順序與Windows輸入法不同。

#### 標準羅馬字

日本工業規格JIS X 4063:2000（仮名漢字変換システムのための英字キー入力から仮名への変換方式，中譯：為漢字假名轉換系統而設的英語輸入轉換為假名的轉換方式）曾經是一個日語羅馬字輸入（ローマ字入力）的標準，但是該標準已於2010年1月20日廢止。

將和讀音對應的羅馬字輸入後，羅馬字會被轉換為假名顯示在螢幕上。之後進行的假名漢字轉換通常與本階段分離，成為另一個階段。

#### 增強型羅馬字

增強型羅馬字方案類似漢語拼音輸入法的雙拼方案。都是使用鍵盤上的輔音和其他按鍵來代表元音組合，從而達到節省按鍵次數的方法。

<image>

這裡用一個例子解釋。這個鍵盤上除了aeiou和y以外，每個按鍵下都寫有對應的「韻母（？）」。像chuuka即可拆分為「c+yuu k+a」，而yuu對應c，也就編碼成了「ccka」。jinmin拆分為為「j+in m+in」，in對應n，所以編碼成了「jnmn」。而像「央(ou)」字這樣的「零聲母」則使用「l」代表聲母，因為日語沒有l開頭的發音。

「中華人民共和國中央人民政府、今日成立しました」這句話的標準羅馬字輸入（類似全拼）需要60次按鍵。使用增強型羅馬字（類似雙拼）則只需要42次按鍵。直接輸入假名如果是JIS鍵盤，則是41次按鍵外加6次上檔鍵。但是這個例子中為了實現雙拼，「ん」和「っ」就無法再用標準羅馬字輸入了，而是使用「q」輸入「ん」，輸入「っ」。

M式鍵盤是森田正典於1980年代所提出的增強型羅馬字方案。該鍵盤布局使用了和拇指上檔鍵盤類似的拇指上檔鍵。雖然得到了許多專業人士的極高評價，但是並未得到大的普及。以後的許多增強型羅馬字輸入方案的思考方式都可以說類似於M式鍵盤的處理模式。

日語維基百科上有許多增強型羅馬字方案，例如：AZIK、Km式ローマ字配列、チーズタイピング。

#### 不同假名輸入方式的比較

富士通的網站做了一個不同輸入方式速度的比較。輸入700字左右的朝日新聞的「天聲人語」文章，結果如下：

輸入方式｜按鍵總計｜文字鍵｜濁音鍵｜上檔鍵｜假名記號鍵｜其他｜按鍵數/漢字假名混寫文的字數｜輸入耗時

拇指上檔｜1001｜994｜0｜0｜0｜7｜1.03｜06.04min

JIS｜1211｜994｜100｜0｜100｜17｜1.56｜07.81min

新JIS｜1309｜994｜100｜203｜0｜12｜1.69｜07.38min

標準羅馬字輸入｜1773｜1713｜0｜55｜5｜2.29｜10.02min

看來儘管標準羅馬字輸入的按鍵量是JIS假名輸入按鍵的近1.5倍，但是JIS假名輸入的效率才是標準羅馬字輸入的近1.3倍。

## 日文輸入法軟體的主要功能

### 輸入·轉換

使用者直接或間接輸入假名序列（未轉換文字列），按下「変換」鍵之後輸入法開始判斷進行分詞，並開始漢字轉換。許多輸入法軟體擁有包括熟語在內橫跨多個文節的用例資料庫，能夠根據前後文節不同將讀音轉換成合適的漢字。一部分輸入法中，未轉換文字列積攢了很多假名之後會自動開始轉換，或者是在輸入了標點符號後自動轉換標點之前的內容。

轉換結果符合要求，則直接按確定鍵將結果轉交給其他應用程式。當轉換結果不是預期的轉換結果時，使用者可分別選擇每一文節的轉換結果，或者改變文節間的切分。當然，如果不用進行選字，默認的轉換結果就是對的，那當然是最好的了。轉換精度的優劣是決定輸入法性能的決定性因素之一。

### 辭典

<image>

各輸入法收入有假名漢字轉換用的詞彙資料庫（日語稱之為「系統辭典」，和「使用者辭典」相對）。在漢字之外也收錄有符號/特殊文字、英語單詞、表情符號、方言詞彙、網路語言等等，有的輸入法利用轉換系統，實現了郵政編碼轉換為地名、翻譯、計算等功能。

在許多輸入法中，使用者可以將自己需要的詞彙加入到使用者辭典裡去。輸入法自動學習功能強大、系統自帶辭典豐富的話，可以減少自定義詞彙的工作量。有的輸入法可以把某個不需要卻常常出現在轉換結果候選的裡的詞通過設置屏蔽。

### 自動學習

通過使用者的轉換、選字的結果增加未來的轉換精度。通過自動學習，輸入法可以更加切合個人的需要，但是有時錯誤的選字結果也被學習了，下次選字時就會出現在前面給人帶來麻煩。ATOK等等可以直接編輯轉換歷史記錄刪除不要的轉換結果。

有時學習數量過多，反而降低了轉換精度，或使得學習功能異常（參見Microsoft IME）。此時需要重新初始化輸入法的學習結果。

### 輸入輔助功能

減少輸入字數的輸入預測（入力予測）功能，在和電腦相比輸入速度慢的手機系統上得到了發展。之後，在2000年代後期，ATOK和Google日文輸入法等電腦用的輸入法中也加入了輸入預測功能。Google日文輸入法的預測功能使用的是從Google搜索系統中得來的數據，和手機系統的輸入預測的工作方式不同。

有的輸入法為幫助使用者正確選擇同音詞，會在選字時出現解說同音詞意思、用法的彈出窗口。

有的能夠打字很快的使用者會覺得，如果使用輸入預測，則需要在預測列表中一一選擇自己需要的詞，反而降低了打字速度，因此輔助功能對他們是多餘的。此外選字時彈出的解說詞義窗口有時會影響程序的反應速度。因此許多輸入法中的輸入輔助功能是可以選擇不使用的。

## 知名日文輸入法軟體

<image>

<image>

<image>

名稱｜開發者｜附註

Anthy｜京都大學Project Heke｜自由軟體（LGPL）。基本上只處理漢字轉換。輸入使用uim、ibus、fcitx或者附屬的anthy.el等等。名稱來自少女革命的姬宮安希。ibus-anthy支持模擬拇指上檔鍵盤。主頁

ATOK｜JustSystems｜專有軟體。有GNU/Linux版本。有Mac版本。

Baidu IME｜百度｜專有軟體，目前僅有Windows版。該輸入法主要面向喜愛流行文化的年輕人，內置大量宅文化詞彙和流行語，以及2ch常用的顏文字和ASCII Art。並以二次元萌系角色作為其代言人，一度在中文御宅族中成為話題。曾經在EULA中寫明了「會自動將使用者輸入的資訊加密送至百度的伺服器」，後來該功能被改為默認不啟用。

Canna(輸入軟體)｜NEC等｜原由NEC開發。後成為自由軟體（MIT許可證）。只有漢字轉換。最新版Canna 3.7p3(2004/05/20)。

EGBRIDGE｜エルゴソフト｜Mac用。2008年結束銷售。

FIXER｜シティソフト

FSKAREN｜富士ソフト｜嵌入式。針對Android、Windows Mobile

Google日文輸入法｜Google｜免費專有軟體（Windows、Mac用）。自由軟體版為Mozc（三段BSD）。

Microsoft IME｜微軟｜微軟Windows和Office附帶。

Japanist｜富士通｜Windows Only。OAK是Japanist的前身。Japanist的最新版是Japanist 03。支持模擬拇指上檔鍵盤。

Katana｜アイフォー｜初期曾由大塚商會開發

NECAI｜NEC｜PC-9800系列用。

PRIME｜只有漢字轉換。自由軟體（GPLv2）。

sj3｜SONY等｜原為索尼開發，後成為自由軟體（三段BSD）。只有漢字轉換。

SKK｜ SKK Openlab｜最早由佐藤雅彥使用Emacs Lisp開發。自由軟體（GPLv2+）。ibus-skk elisp skk

Social IME｜奧野陽｜Windows Only。可以將自定義詞彙上傳到伺服器上。通過使用者登錄詞彙擴充詞庫。轉換漢字時必須總在線。

T-Code｜自由軟體。

Tegaki｜自由軟體。手寫。

TUT-Code｜大岩 元,高嶋孝明

VJE｜バックス｜DOS時代的產品。2006年開發中止。2008年為雅虎假名漢字轉換提供API。

Wnn｜オムロン｜針對嵌入式。具備網路透明性。原本為工作站開發。有自由軟體的FreeWnn（主頁）和專有軟體的 Wnn8 for Ubuntu等。

WX シリーズ｜エー・アイ・ソフト｜有DOS版、Windows3.x~NT版、Mac OS8/9版、OS/2版。WXG for Linux/FreeBSD 1.0β作為自由軟體推出，取得了很大反響；但是正式版還沒出現，公司就被吞併了。

松茸｜管理工學研究所｜DOS用。電腦普及初期曾和JustSystems的一太郎分庭抗禮。後因不支援Windows而失去了半壁江山。

ことえり｜Apple｜Mac OS、Mac OS X自帶。名字來自於《源氏物語》「文を書けど、おほどかに言選りをし」。

書院IME｜夏普｜也存在名為Power書院的文字處理器。

風 (日文輸入法)｜演算星組｜現為共享軟體。

かわせみ_(軟體)｜物書堂｜Mac用。專有軟體。

## 外部連結

- いろいろなカナ入力配列
- http://homepage3.nifty.com/gicchon/index.htm
- Welcome to My Home Page（一個關於許多日語輸入法的個人網站）
- 日本語入力プログラムについて考える
- Google 輸入工具
- 在線日語鍵盤
- 在手機上使用日語輸入法？你需要知道這些技巧