Monday, July 7, 2008

IdeoCal 1.1.1 版

國曆+農曆的萬年曆又做了一次小幅的更新,主要是修正使用者所做的設定無法正常作用的問題,目前的版本為 1.1.1,仍然是適用於 Mac OS X 10.4 與 10.5。另外,往後若需要這個萬年曆的最新資訊,可以到這個固定的網址來看看:http://www.ideographer.com/ideocal/ ,至於要直接下載的話,就請按這裡吧。

過一陣子我也會更新 Google 小工具的版本,讓它跟 Mac 版比較一致。大家若有任何意見還請不吝指教。

本文同步刊登於符號工作站


Sunday, May 25, 2008

Yahoo! 的倉頡輸入法還不錯

近日在 Mac 上試了一下 Yahoo! 奇摩以 OpenVanilla 為基礎發展出來的中文輸入法,這個輸入法在官方網站上強調的是智慧型注音輸入法,不過對於我這個倉頡使用者來說,焦點自然是放在其中倉頡的部份。

在這個輸入法中,我發現一項我夢寐以求的功能,就是打錯碼時,錯誤的碼會被自動清除。這個功能(至少對我來說)非常重要,因為若是每次打錯時就要盯著螢幕一個個把錯誤的碼清掉,實在不知會浪費多少時間,若是要去按 Esc 來清除也實在多此一舉,左手又必須離開原本打字的標準位置。既然錯誤的碼是錯誤的,若是打字者打字速度不慢,那麼最快的方法就是讓它自動消失,並讓打字者重新輸入,這樣要重新輸入正確的字往往不需要多花超過一秒的時間。奇異輸入法有這樣的功能,不過它的 bug 實在稍微多了點,在我的電腦上還會完全失去作用,所以本人就沒有花錢買下來。

Yahoo! 輸入法的倉頡部份還有兩個不錯的功能,就是「使用動態字頻調整(將常用字移到選字列表前方)」,以及可以不接受非 Big 5 以外的字。

但它也有個問題,就是它無法讓使用者順利關掉「打到字根最大長度時立刻組字」的選項,我只好試著到個人專屬 (Home) 之下的資源庫 (Library),打開 Preferences 裡的 com.yahoo.KeyKey.Generic-cj-cin.plist,然後把 ShouldCommitAtMaximumRadicalLength 的值設成 false,終於解決了問題。 另外,它在碰到重覆碼時,是用選字的方式,而不是在輸入碼前加一個X,對我這個討厭選字的人來說比較不合習慣,不過對許多倉頡使用者來說還是標準的輸入方法。在選字時,似乎不能用空白鍵來選第一個字,讓人感到不太方便。

雖然有這些小問題,但使用這個輸入法後 ,我在Mac 上打字的速度的確提升了。它已經成為我現在主要使用的中文輸入工具。感謝!

本文同步刊登於符號工作站

Friday, May 9, 2008

傻傻分不清楚的 t 與 d

最近在使用 Mac OS X 內附的牛津美語字典時,發現只要在發音部份選美國英語 IPA 音標,許多輕音節的開頭 t 字母(特別是在元音之間)都會被標注成 d (舌尖濁塞音)的發音,而非 t (舌尖清塞音)。例如 water 一詞,字典上標注的是 |ˈwɔdər| 或 |ˈwɑdər| 而非 |ˈwɔtər| 或 |ˈwɑtər|。這種標法,看來是為了凸顯美國英語的特色,若是選英國英語,則仍是標注為 t。很多人都知道,美國英語 t 與 d 字母的發音在輕音節常常會變得一樣,例如 latter 與 ladder 雖然有 t 與d 的不同,但這兩個詞的發音是一模一樣的。

但究竟是 t 變得像 d 還是 d 變得像 t 呢?其實都不是,而是在這種環境下,t 變成了舌尖閃音 (flap,IPA: ɾ),d 也變成了舌尖閃音 ɾ,所以兩者就沒有分別了。所謂閃音,就是用舌尖快速拍打一下上門齒內側到上牙齦間的地方而形成的音。我用 Mac OS X Leopard 內建的 text-to-speech 功能,錄了這 latter 與 ladder 兩個詞的發音如下:

latterladder

再看看 Mac OS X 字典裡的音標,輕音節的 d 標成 /d/,與 d 在其他情況下的 d 發音一樣(即舌尖濁塞音),而且輕音節的 t 卻也都標成 d,這恐怕是有討論的空間的。沒有錯,這種輕音節的 t 字母的發音會變得與輕音節的 d 沒有分別,但就如前述,d 不再是舌尖濁塞音 [d],而是閃音 [ɾ],而 t 也沒有變成舌尖濁塞音 [d],而是也變成了 ɾ。

再者,輕音節的 t 與 d 失去分別的這個現象,我相信大多研究英語的語言學者會把它當成語音上的 (phonetic) 現象,而非音韻上的 (phonological),例如,即使在美式發音中,發音者如果想要特別清楚地發音時,輕音節的 t 還是會被發成 [t] 的。而一般的字典注音,應該是標出音韻上的即可,大可不必突然在這個地方用語音學的標法。說白話點,我們在教別人英語發音時,我們還是會告訴他,輕音節 t 的發音仍是 /t/,只不過在實際發音時會受到環境影響而表現得有些不同,進而與 d 混同,而不會告訴他,那個 t 一開始就要被當成 d 來發音。 就算真的要做語音上的標音,這裡也應該是標成閃音 [ɾ] 而非 [d] 才對。

我個人對這樣的標音法是蠻不解的,在此提出給大家參考。

本文同步刊登於符號工作站

Tuesday, March 25, 2008

中文搜尋日久見人性?

相信大家都有在電腦上使用搜尋功能的經驗,不管是 Google、Yahoo、或是應用軟體內裡的搜尋功能。一般最簡單搜尋方式的不外乎是輸入一個詞,然後如果網路上或文件裡出現一模一樣的詞,就會被找到。不過有些搜尋功能不止是這樣,而是會對搜尋條件與結果做多一點的干預。Mac OS X 10.5 Leopard 的中文搜尋就是這樣。

Leopard 有一個新的「tokenization」機制,可以把一向連在一起的中文字做某種的分隔。在蘋果網站的 Leopard 新功能介紹中就說到,10.5 裡增加了新的中文「tokenizer」,它會根據中文字之間的關係與意義,聰明地這些字分割開來,以呈現關聯性最高的搜尋結果。

Tokenization 就是把一連串的字元切開,變成一個個有作用的單位,例如在處理中文時,語言中的「詞」(word) 就是一個很好用的單位,只是在電腦的處理上,這些 token 不一定會跟真實語言中的單位完全吻合,而通常會是對程式的目的有用或有幫助的單位。例如「美國總統候選人」只是一串連續的字元,對程式來說由於沒有其他資訊,可能只能做最基本的搜尋,但經過 tokenization 後可能會分成「美國 總統 候選人」之類的,電腦認得這些單位後,就有機會可以呈現更好的搜尋結果。假如使用者用「共和黨候選人」當關鍵字,而這幾個字元也被切成「共和黨 候選人」的話,則「美國總統候選人」這句話就可以被找出來而呈現在搜尋結果裡,因為兩者都有「候選人」,當然由於「共和黨」一詞未出現,所以其關聯性可以被定得低一點。 假設現在有「什麼時候選人類學教科書?」這句話,它雖然表面上有「候選人」三個字,但如果被切成「什麼 時候 選 人類學 教科書 ?」,那麼在搜尋時就可能與「美國總統候選人」產生不了很大的關聯。

現在用 Mac OS X 10.5 底下的 Mail.app 來做搜尋會發現,用「垃圾郵件」、「垃圾」、「郵件」當作搜尋關鍵字,都可以找到內含「垃圾郵件」的信件,但是如果輸入「圾郵」來搜尋,照很多人的習慣會以為也可以搜尋到「垃圾郵件」,但事實上可能會搜尋不到東西。用 Spotlight 來搜尋也會有這樣的結果。此外,Google 也有類似的效果,例如搜尋「統計報表」,會發現有些只出現「統計」的、只出現「報表」的、或是「統計」與「報表」兩者都出現但分開出現在不同位置的網頁,也被搜尋出來。

這種做法會使搜尋有機會更貼近使用者的需求,不過對於有些已經習慣傳統搜尋的電腦玩家來說,可能會覺得有點囉嗦。在使用 Google 做搜尋時, 若使用者不要搜尋引擎這麼雞婆,可以用雙引號加在關鍵字上,例如打入 "共和黨候選人" ,就只有那些包含這六個字而且這六個字照關鍵字的方式一起出現的網頁才會被搜尋出來了。

但 Leopard 的搜尋有點奇怪, 若一篇文件只出現「報表」而沒出現「統計」,那麼用「統計報表」當關鍵字還是搜尋不到該文件的,不知道是不是搜尋條件本身不會被切開的關係。另外用「圾郵」一律找不出「垃圾郵件」四字,這對某些人來說會有點困惑,如果這時還是可以把「垃圾郵件」找出來,只是關聯度較低的話,也許會比較好用。像我自己在 Mail.app 中用「報表」兩字進行搜尋,竟會找不到標題為「垃圾郵件日報表」的信件,並不符合我的預期。顯然, 搜尋結果是否能讓使用者感到滿意,和 tokenization 的做法有很大的關係。

Leopard 的中文搜尋算是有新意,Google 甚至在搜尋的過程中不斷學習,似乎都是想更接近人性,但搜尋機制改變了,人似乎也要改變自己搜尋方式才能得到最好的結果,Leopard 大概就是一個例子吧。

本文同步刊登於符號工作站

Monday, February 25, 2008

更新了那個有農曆的萬年曆

國曆+農曆的萬年曆 widget 加入了新功能,這次主要是可設定幾種不同的背景顏色,也可以調整星期排列的方式。要調整時,只要按右下角的 i 字樣把它翻面,就可以設定了。其實在這一版裡面還有一些使用者需求沒到能照顧到,不過,就慢慢來吧,希望下次更新時還能更進步。 當然,若覺得這一版還有任何問題的話,也歡迎不吝指教。

若需要關於這個 widget 的其他細節,可參考之前的這篇文章:做了一個有農曆的萬年曆。要下載的話就按這裡吧。

至於 Google 小工具則是未能更新,先說聲抱歉了。 :P

本文同步刊登於符號工作站

Sunday, February 3, 2008

Mac OS X 語文處理的幾個好與壞

這裡有一些與 Mac OS X 語文處理有關的小發現,有的在 10.4 就有了,也許有很多人已經知道,只是本人比較笨而一直沒有注意到,有的則是在10.5 (Leopard) 出現的問題,也一起記在這裡。

  • Big 5 編碼提供了一些英數字的全形符號,不過這全形與半形的問題有時還真是會造成困擾,例如 1 與 1 看起來很像,但卻是兩個不同的字元。還好,在某些需要輸入數字的 Mac 軟體中,即使輸入的是中文的全形數字,也可以被認得為正常的數字。例如 Dashboard 裡的單位轉換 widget,若是在公里轉換為公尺的時候若輸入全形的「10」(公里),它也會正常地轉換為 10,000 公尺。在 Mail.app 的搜尋欄位裡輸入全形的「1234」,也可以找到包含 1234(半形)這個數字的郵件,打入全形的「macbook」也可以找到包含半形 MacBook 的郵件,算是挺人性的。

  • 用 control + delete 可以刪掉字母上的附加符號。例如在「文字編輯」(TextEdit) 中按 option + e 再單獨按 e,會輸入一個 é,此時如果按下 control + delete,則只會刪掉 e 頭上的那一撇,但不會把 e 本身刪掉。

  • 到系統偏好設定 > 國際設定 > 格式,設定不同的地區,會影響 Mac OS X 內建月曆 widget 的星期排列順序,例如我一開始是設成 English (Taiwan),結果月曆 widget 是從星期一開始排到星期日,如果選擇英國英語,也是這麼排列,但如果選的是美國英語,則是從星期日排到星期六。隨附的 iCal 軟體也會受此影響。我個人是比較喜歡從星期一到星期日的排法。

  • 我們之前提過 VoiceOver Utilities 可以讓使用者自行設定某些詞要怎麼念,然後系統在朗讀英文時就會照設定的方式念。在 10.4 時,系統預設「GIF」要念成 jiff,不過很有趣地,到了 10.5「GIF」的念法被改成 giff,也就是 g 的發音從 /dʒ/ 變成了 /g/。英文維基百科說某些英文字典把兩種發音並列,算是兩種都可以,不過使用 Mac OS X 內建的牛津美語字典則只列出 /dʒ/ 的版本。


  • 在新版 Safari 中,網頁中的粗體中文變得相當不清楚。
    中文字體到了 Leopard 還是幾乎沒改變,所以過去說的沒行距、沒粗細、字體種類少等問題都還是一樣、字形品質本身當然也沒有有什麼改善。

  • 這個問題和上一個有點關係。以前的 Safari 在中文介面下,若也是用預設中文字體顯示網頁文字, 就沒辦法顯示粗體,若用日文字體的話就可以,因為日文字體之內已包含幾種不同粗細等級。不過在 Safari 3 裡面,網頁中的中文字體也可顯示為粗體了。這看起來是一種改進,問題是中文字體本身仍然沒有提供不同等級的粗細,所以網頁中的粗體其實是硬把原來的字形加粗而成,其品質當然就有點糟糕了。由於本來的中文黑體已經不太細,再硬加粗就有糊成一團的感覺,各中文 Mac 討論區也的確有不少人在抱怨。根本的解決之道,就是蘋果應該提供精緻而有不同粗細的中文字體。

先說到這兒囉。

本文同步刊登於符號工作站

Thursday, December 20, 2007

做了一個有農曆的萬年曆

我之前做了一個 Google 小工具 (gadget),是一個結合國曆跟農曆的萬年曆,除了兩種曆法的日期對照外,也可以顯示農曆節日與節氣, 也有干支紀年以及生肖。既然做了這個 gadget,我就順勢把它移植到了 Mac OS X 上,成為一個 Dashboard widget,如果有人覺得用得上的話,可以在此下載。 (已做了一點修改,Mac OS X 10.4 與 10.5 皆適用)

它的用法是:

  • 點左箭頭可顯示上一個月,點右箭頭可顯示下一個月。
  • 點左右箭頭之間文字,可回到目前的月份。
  • 將滑鼠游標移到日期數字上,可顯示農曆日期、節日、與節氣。
  • 按鍵盤的上鍵或下鍵可顯示前一年與後一年,按左或右鍵則是顯示上一個月或下一個月,按 home 可回到目前的月份。

農曆日期與節氣的計算,我是採用林洵賢先生的程式,可說是相當的準確,在此對他表示感謝。不過照例還是得聲明一下,若這個 widget 裡面的資訊有任何錯誤,請以政府公布的為準。

如果你沒有 Mac,也可以試試我之前做的 Google 小工具,不過外觀不一樣,而且沒有鍵盤的控制方式,所以 Mac 版應該是好用一點。如果大家有什麼意見,不妨留言讓我知道。

本文同步刊登於符號工作站