2012年2月6日 星期一

在 Linux Mint 上安裝繁體中文輸入法


在過年前的某個週末,我的桌機終於掛了,雖然還有老 mini 頂著,可是一直放著也不是辦法,再加上 G4 mini 連 Youtube 都有點跑不動,所以還是得抱去光華修理並升級一下 (我實在懶得自己裝了 ....)。

基本上電腦壞掉並不是什麼罕見的事,但是就如我之前的文章所說,接下來該用哪個作業系統呢?雖然校園授權 XP 依然可以繼續用,可是它實在太落後了,像是:
  1. 我的 XP 是 32bit 的版本 (事實上很少人用過 64bit 的版本),記憶體最多只能定址 4GB,現在都什麼年代了 .....
  2. 而且 XP 預設根本不支援 SATA 介面 (因為 XP 太老了),想在 SATA 介面的電腦上灌 XP 請自行 Google 解法,我以前有稍微看過,但是我懶得去查了 ....
所以,在種種考量之下 (剛噴完 iPhone 沒閒錢買 mini 啦 ....),我選擇了 64bit 的 Linux Mint 12 來當我的作業系統,拜 PC free (iCloud) 所賜,現在我真的是完全拋棄桌面電腦的 iTunes 了~

可是,儘管是目前好評如潮的 Linux Mint,就我這些日子使用下來的感覺,縱使比五年前我用過的 Ubuntu 6.10 好得多,但我個人認為它還是不夠格稱作一個 "終端作業系統"!怎麼說呢?我舉一個最明顯的例子 -- 它提供中文語系卻沒有預裝中文輸入法?!這實在是很好笑的事,使用者看到中文介面安裝好了,興高采烈地開始使用,卻發現無法輸入中文?!而去網路上 Google 卻發現網友們不是一如往常地丟出幾句不清不楚的終端機指令,不然就是推薦無效的解法,更有趣的是,談論這個主題的中文文章幾乎都是大陸人寫的,推薦的輸入法常常是簡中輸入法 (fcitx),根本對台灣使用者沒用,好吧,可能是台灣的 Linux 用戶都太強了。

所以,這篇文章的目的就是說明如何在不用打指令的情況下,無痛安裝 iBus 中文輸入法,算是在網路上留個底。

1. 開啟 "漢語" 的語言支援


至右上角 "帳號" > "系統設定值" > "語言支援",之後下載 "漢語" 的相關套件,在 iBus 輸入法尚未安裝完成前,下面的 "鍵盤輸入法系統" 應該是 "無",至於其下拉式選單裡的其他選項都沒什麼用。

基本上我覺得這一步應該要包在中文語系的安裝包裡面 .... 算了,以 Linux 的中文支援度來說,這一點都不意外。

2. 安裝 iBus 中文輸入法軟體


至左下角的選單裡,找到 "其他" > "Synaptic 套件管理程式",開啟後搜尋 "iBus"。然後,你會在選單列中看到一大堆套件,"ibus" 是裡面的核心軟體,像是輸入法的引擎,故一定要裝,但是光裝這個並不會有中文輸入法,因為 "ibus" 只是引擎,沒有裡面的內容也是沒用 [1]。所以,接下來就是個人的選擇了,如果你跟我一樣習慣使用自動選字的注音輸入法,請加裝 "ibus-chewing" 及 "ibus-table-zhuyin" (其實只裝 ibus-chewing 就可以用了,但是會一直漏字或漏音標,總之會用得很不爽,但是加裝 ibus-table-zhuyin 後就幾乎不會漏東西了,很怪)。

選好套件之後,按下 "套用" 開始安裝,之後一直按 "下一步" 或 "確定" 即可。

3. 回去 "語言支援" 處將 "鍵盤輸入法系統" 的 "iBus" 打開,結束收工 (啟動 iBus 的快捷鍵預設是 Ctrl + Space)。

20120812 UpdateiBus 輸入法實在太爛了,而新版 Linux Mint 不僅修復了內建軟體 "軟體管理員" 會當掉的 bug,連套件資料庫也更新了,故建議各位丟掉 iBus 這爛貨,改用 gcin 吧~ 以下是我寫的更新文章:在 Linux Mint 上安裝繁體中文輸入法 (2)

================================

是的,就是這麼簡單,但是足以讓新手把系統砍掉換回 Windows。我實在不了解的地方有三點:
  1. 這麼簡單的東西,網路上為何沒有詳盡的中文教學?如果很冷門也就算了,但是中文輸入法的重要性應該不用我多加贅述。
  2. 這麼簡單的東西,為何一堆網友硬是要用終端機指令解決?想練英打也不必用這個練吧!
  3. Linux 跟 Mac OSX 一樣內建萬國語系的支援 (正確地說,要靠網路下載),但為何都不預裝該國語文的輸入法?就算被預裝的那一套很爛都無彷,至少不要讓新手剛灌好系統就處於手足無措的狀態。

    我個人猜測是輸入法的軟體眾多,為了給使用者多一點 "選擇性",所以就不預裝了。聽起來很合理,但是 Linux 一直有著 "什麼都要自己選擇" 的毛病,若我是不折不扣的新手,哪知道什麼 iBus、gcin 或 SCIM?反正這些東西都是開源的,又沒有圖利廠商的問題,為何不能預裝一套

    20120206 Update較新版本的 Ubuntu 在裝完中文語系之後會預裝 SCIM 中文輸入法,但是之前 (像我五年前用的 6.10 版) 的版本也是沒有
嗯 ...... 個人覺得 Linux 的某些發行版 [2] 雖然已有很大的進步,但是對於 "使用者取向" 的考量還是不夠親切,光是對於中文語系的支援就可見微知著。除此之外,iBus 這輸入法還很容易跟其他軟體斷線 [3],有時又會出現一些靈異現象 .... (有人可能會說 gcin 或 SCIM 比較好 ... 可是我在 "Synaptic 套件管理程式" 裡搜尋不到什麼有用的套件 ....) 所以 Linux 及其社群還是有很大的進步空間,這種水準的作品簡直就像業餘人士做的 (系統內還有一大堆 buggy 的軟體,我就先不提了 ... 看看上面及下面的螢幕擷圖,色彩是不是怪怪的?這就是內建擷圖軟體的傑作)。

20120212 Update系統居然內建兩個 "幾乎相同" 的擷圖軟體,其中 "拍下螢幕擷圖" 是有問題的那一個,擷圖的色彩會很怪,但是 "螢幕擷圖" 就一切正常 ..... 好樣的,還有這一招 ....

附帶一提,Linux Mint 12 裡內建一個 "軟體管理員" 程式,可以讓使用者輕鬆地安裝軟體 (基本上這就像 Mac OSX 的 Mac App store,但是這種玩意在 Linux 裡已經流行 N 年了,而且裡面的東西都是免費的),可是一搜尋就當掉了,別浪費時間去用這個垃圾,請愛用老牌的 "Synaptic 套件管理程式"。


20130620 Update:軟體管理員在後來的新版 Mint 中已經被修好了,回應的網友也有提醒我此項資訊,很抱歉我一直忘記更新文章。



附註
1. 當你勾選 "ibus" 或是開始安裝之後,你會發現很多其他的套件也一併被安裝了,那是因為套件相依性的關係,不要管它就好了,沒有那些套件的話,iBus 可能無法正常運作。
2. 除了 Mint 之外,像是 Ubuntu 及 OpenSuSE 都是比較有在 GUI 上下功夫的發行版 (distro),那為何不選最有名的 Ubuntu 呢?因為它最近主打的 Unity 介面聲名狼藉,我又懶得自己去換 ...
3. OpenVanilla 的作者 zonble 說得好:"輸入法是任何軟體的外掛程式,當你發現輸入法失靈的時候,就表示該軟體與輸入法之間的連結斷了。"

23 則留言:

  1. 我猜是因為Linuxmint的繁體中文市場太小,
    而輸入法的引擎和內容的數量相對起來太多,
    所以沒辦法預設使用者取向是什麼。

    回覆刪除
  2. 沒有錯,那的確是原因之一。

    但也就我文中所說的,一個中文介面居然沒有預裝中文輸入法,簡直就是不可思議的事!沒有錯,Linux 最大的好處就是給使用者很大的自由度,但是這種自由度並非站在 "一般使用者" 的角度來看,而是站在 "geek" 的角度來設計。像文中所舉的這種荒唐行為真的只會出現在自由軟體中,因為商業軟體有 "客戶",惹火客戶就沒錢賺,所以再怎麼樣都會內建一套中文輸入法,儘管它可能很難用 (像 Mac OSX 的漢音及注音就很爛),可是至少使用者一拿到機器就能開始做事。

    Ubuntu 一開始也是這麼誇張,學了幾年終於學乖了,因為它想推廣給一般使用者 (至於那些本來就是用來給 geek 練功的發行版就不要求了),Mint 過幾年一定也會走向這一步,只希望它不要像 Ubuntu 一樣越來越華而不實,最後被使用者唾棄。

    "反正沒付錢,也別要求這麼多" 這句話還真是在哪都能用 .... 付費經濟還是必要的,在某些方面,付費真的代表品質。

    回覆刪除
    回覆
    1. 我要感謝您》我才可以用中文發表此文》
      就在我用了兩天linux mint》爬了許多文後》還不能輸入中文》已經決定移除linux mint的時後》看到此篇文章》深有同感》謝謝您

      刪除
  3. 由於對unity很惱火, 我剛安裝mint和cinnamon, 更火....倒退好幾年

    回覆刪除
    回覆
    1. unity真的又醜難用,建議安裝gnome-shell,會有不一樣的感受。
      當然如果不習慣新介面,可以到登入畫面選擇classic GNOME。

      刪除
    2. 不是聽說 Ubuntu 新版預設把 classic 移除掉了嗎~

      http://www.arthurtoday.com/2011/12/linux-mint-ubuntu.html

      我沒用過預裝 Unity 的 Ubuntu,不過目前真的沒看過正評 .....

      刪除
  4. 沒有中文輸入法很荒謬,但是徹底排斥command安裝套件對於玩linux的使用者來說一樣荒謬。
    許多人只是想找一套『不會中毒的Windows』來玩,然後可以告訴人家自己在玩linux,這個比較可笑。

    回覆刪除
    回覆
    1. 沒有錯,玩 Linux 很少人不用 CLI,但若你看過我以前的文章,應該能看出我不是排斥 CLI 的人,只不過我是在 Mac OSX 上玩 command 就是了,指令有些不同。

      我只是認為,Linux 的 GUI 一直做得很半調子,到底是想不想推廣呢 ....?很多簡單的事情真的沒必要打指令,GUI 就該幫基礎使用者搞定。文明的進步就是朝向 GUI 走,進階使用者用 CLI 較有效率沒錯,但不能要求一般人也要如此,還是你認為用 Linux 非指令不可?就是因為社群裡有太多人有這樣的想法,覺得 CLI 至高無上,Linux 才會搞到現在還是走不進一般家庭,因為周圍懂 Linux 的幫手也大多遊說 "事事以 command 完成" 的電腦經。

      話說回來,我用 Linux 並不是想找 "不會中毒" 的作業系統,充其量只是因為它免費!它系統裡一大堆 bug 很多的軟體簡直跟病毒沒什麼兩樣,每週都在更新不知道在更新什麼,有明顯問題的東西還是沒修好。

      刪除
  5. 其實玩Linux這麼多年以來我覺得文明也不見得必然是朝向GUI(微軟到Win7都還有cmd.exe、Mac也有terminal),GUI和CLI有著不同的長處,雖然我也是比較偏愛文字介面,但是如果要說哪種比較適合(不能說比較"好",因為"好"很難認定),那麼一切都是視需求而定,有些工作,譬如依照特定格式來大量批次更名等,這就是CLI的長處,當然硬要用GUI來一個一個改也行,只是時間上是幾千幾萬倍的差別了(而且還很容易出錯,因為這種大量機械化操作不適合人類)...當然GUI上也是有眾多的應用是CLI不及之處...像分析封包我還是習慣開Wireshark來看...

    回覆刪除
    回覆
    1. 喔~這就是 "卡車理論" 的另一種應用阿~

      http://www.appletech.tw/2011/08/pc.html

      "卡車理論" 意指時代的轉變,舊時代的東西還是必須的,可是不再有那麼多人需要它。我說文明朝向 GUI 走,並不是代表 CLI 將死,而是科技已經越來越進步,一般人都能以 GUI 入門來使用電腦 (或行動裝置),但是對於進階使用者來說,CLI 依然留在那裡讓他們使用,兩者之間沒有衝突,只是這樣的人畢竟是少數。

      還有,我覺得使用 CLI 才危險阿,CLI 的指令一下去就直接執行了,幾乎都沒有防呆警示,若搞不清楚自己在幹麼,或是打錯字,可能會死得更難看 ... 工作效率高是沒錯,毀掉自己檔案的效率也很高 ....

      刪除
  6. 如果版主能有機會參與任何一項計畫,哪怕只是最簡單的翻譯,就不會有這樣充滿抱怨的心態。這些人不是全職在寫這些程式,他們有自己的正職,在閒暇之餘熱心的投入,這些BUG也都是使用者的feedback,然後一來一往的把問題找出來,並且解決,發行成穩定版本。
    所以你當然不會在乎他在更新什麼,可是熱心的開發者在乎,他認為每個使用者都應該即時享受到他辛苦修改程式碼之後的便利及功能。我只能說你的『每週都在更新不知道在更新什麼』是蠻傷人心的說法。

    另外,開發程式只是專案的一小部份,那些開發人員只管開發,不管圖形;所以圖形無論你喜不喜歡,其實都跟底層開發人員無關;充其量只是呼叫圖形界面的函式庫會與底層function相依。設想一個IBUS輸入法框架光是繁體中文的團隊,把程式碼往上送,到gnome接受,到各個LINUX發行版團隊接納、驗證,在交到你手上已經是將近一個月的事情了;這當中牽涉到的人不下幾百人,不下10個國家的人互相努力,如果你了解當中的過程,你就不會有這樣的抱怨。

    有很多BUG的軟體跟病毒對你來說可能是一樣,但是病毒更新是為了侵害你,軟體更新是為了服務你。linux的世界如果都是你這樣的人,我們會很灰心。

    以上,非常灰心

    回覆刪除
    回覆
    1. 由於你的留言被 Blogger 歸類為垃圾留言,所以沒有在第一時間內回覆,先跟你道個歉。

      我並沒有忽視你們的辛苦,畢竟你們是無償付出,我個人在本文及回應中的確有失言之處,在此跟你們開發者致歉。

      我個人並不了解自由軟體社群的運作,這輩子也沒能力加入,但要不是我發了這篇文,我想你們也不見得會注意到一般使用者的心聲吧?我不知道自由軟體的測試是怎麼進行的,因為我實在看到太多 "幾乎無法使用" 的東西在系統中,就連 iBus 也是問題一籮筐。

      我想,不管有沒有收費,每位開發者都是以 "做出最好的程式" 為目標,你們不太可能放出很誇張的程式碼,那為什麼成品會讓我這種不明究理的使用者有這樣的感覺?我想這就是 Linux 整體的問題。你說開發者不管圖形,我個人認為這並不是很好的作法,因為你的東西就是要在 GUI 上面跑,除非你只給自己用,不然這種開發方式只會讓問題不斷地延續。

      "Fragmentation" 是 Android 最大的問題,但是這同樣也可以用在 Linux 上,而且還更嚴重。我想你們之所以不管 GUI,就是因為圖形介面太多種,弄起來會累死,所以只寫程式碼不管圖形,但這樣不出問題都難。你們可以來我這裡回覆,我也可以道歉,也能體諒你們的辛苦,但是其他使用者呢?可能直接砍掉重灌了吧?

      軟體是否開源跟軟體的品質完全是兩回事,使用者不見得要求很強大的軟體,基本功能夠用就好,可惜的是,Linux 的 GUI 至今尚未成熟,開發團隊之間的溝通也還有問題尚待解決,我期待未來有一天像我這樣的小白不再存在。

      另外,你說把程式碼往上送的過程居然會牽扯到那麼多人,你真的認為這種事情應該繼續下去嗎?

      刪除
  7. 小弟100%贊成克里斯格主的觀點...
    先抱歉小弟也不是Linux社群的熱心人士,亦不熟悉社群的運作,可是能使用無須花錢購買、不用上網啟動金鑰的桌面作業系統,打從心裡感激不盡。
    很多的前輩或高手都曾數落國內政府、企業、一般市井小民放著自由軟體不用,偏偏就愛用比爾蓋茲牌的窗戶與歐肥死,如同克里斯兄所言,高手輕輕一躍就可跳過的高牆,要叫這些不會武功的死老百姓一夜之間增進一甲子功力馬上跟進,談何容易?完全且易懂的GUI、高度中文在地化、不下CLI指令的Linux,才能真正走入尋常百姓家。講白一點,要說服老闆支持PC換成自由軟體陣營,就得讓全公司多數白痴業務都會使用這些PC作業系統,否則每年一樣要花預算添購維護資訊軟硬體並執行教育訓練,誰敢胡亂向上建言?伺服器就算了,PC茲事體大,又不是每個user都很容易教導,一旦碰到辯才無礙、很盧又愛打小報告的,死的永遠是IT人員...眾人之事就是政治之事,政治之事就是顧客(使用者)永遠是對的,這是現實,無關技術>"<

    回覆刪除
  8. I just installed Mint 12. Your article is very helpful to me!! Thank you!! (I have not installed Chinese Input Method yet, so I can only type English XDDD)

    回覆刪除
    回覆
    1. You haven't installed Chinese input methods yet .... so I'm just wondering how my article helped you ? :P

      刪除
  9. 我要感謝您》我才可以用中文發表此文》
    就在我用了兩天linux mint》爬了許多文後》還不能輸入中文》已經決定移除linux mint的時後》看到此篇文章》深有同感》謝謝您

    回覆刪除
    回覆
    1. 不客氣 :)

      當初寫這篇文章的目的就是為了在網路上留底,Linux Mint 的聲勢已經漸漸高過 Ubuntu,卻沒有中文輸入法的安裝教學,實在太誇張,很高興能幫助到您。

      其實,正如我文章所說,這篇教學根本不應該出現,怎麼能讓使用者為了輸入法這種基本的東西而煩惱!

      刪除
  10. 軟體管理員的問題mint13似乎已經解決

    回覆刪除
  11. 我也是最近受不了 Unity 而切換到 Mint 的其中一人,這篇文章幫我解決了一些麻煩。

    兩年前 Ubuntu 剛開始搭 Unity 的時候我也強迫自己用了幾個星期,但是始終無法習慣,事實上那個時候的 Unity 連基本的可用性都有問題,常常莫名其妙卡住,根本還沒到達 production 的等級,所以最後還是切回傳統的 GNOME。現在 Ubuntu 必須手動裝 GNOME,而且 GNOME3 也有 Unity 化的傾向,看起來 Mint 可能還是 Debian 陣營比較友善的選擇吧。

    至於使用者介面的問題,我的心得是命令列和 gui 各自有適合的作業情境,用對工具才會提昇工作效率。Windows 也有一些動作非得到命令列才能完成,但 Windows 的命令列比起 Linux 更難用,在 Windows 下用命令列是很痛苦的事。

    回覆刪除
    回覆
    1. Windows 的命令列是抄襲 Unix 的,而且很多符號是相反的,使用起來就很彆扭,當然了,最糟糕的還是它的命令列工具簡直少得可憐。

      刪除
  12. 我再說一次,想來討論問題可以,只想無腦謾罵請滾蛋,某些自以為正義的自由軟體人士想裝清高對我沒用。

    我知道這些三流之輩都是罵完射後不理,所以我會直接刪文,省省力氣吧!

    回覆刪除
  13. 感謝 克里斯兄

    在您的文章我找到起動 Linux mint Mate 16 中文的設定方法..... 現在可以正常輸入了!


    回覆刪除