SafariPowerToy next stage
基本上因為有些 code 是牽涉到 platform/machine dependency,所以在沒有 x86 機器情況下,我沒辦法去測試,所以就不包這部份的 binary。那功能上的部份就不探討這些方面。
那下一個 stage 是什麼,比較簡單的就是改掉簡繁轉換的某些字元衝突。像是簡體字"只"對應到正體可能也會有“隻“,"斗"或許是對應到"鬥",但是只和斗也是正體常用的字,把他們任意轉換之後,正體文就怪了。另外一招就是學中文 wikipedia,建一堆辭彙轉換。不過當然就是增加一堆 trade off。試想,在內部都用 unicode 表示下,簡繁字體都可以並存,drawing 時候全部丟去辭彙 search/replace,應該不是一個好方法。目前只是單一個字元,並且用 GNU perfect hash 產生出來的表格,至少快很多。那為什麼不直接把儲存的 unicode 內容本質上就改成正體編碼。我想還是不要任意去更動使用者內部儲存的資料比較好,因為目的和用途不知道情況下,這樣可能會破壞使用者在網頁上的輸入和 submit 資料。
另外一個部份,是想實作類似 Firefox 上使用 google toolbar 的 translation 其中一個功能,在滑鼠游標下的英文字彙,可以有類似 Dr.eye 的翻譯效果。這對看英文網頁幫助不少(汗),因為 firefox 的肥大和速度讓我不喜歡在 Mac OS X 下使用,所以有這樣的東西相對就拉近兩者所需功能的距離。如果你有打開 Universal Access 的話,在 Safari 裡面滑鼠移動到某個英文字,然後按下 Ctrl-Cmd-D,就可以直接在內建的 Dictionary 裡面查到英英解釋。這就是透過 Apple Accessibility API 所得到的效果,當然 WebKit 裡面也是有支援 Accessibility API 才有辦法。但是研究了很久 Apple Accessibility API,以及 WebKit 裡面的支援(這部份都還沒 document)。還是沒有辦法只取到單一個英文字,頂多只有整段片段。另外一個方法就是反組譯 Dictionary.app 去看他怎麼抓這部份單字,當然這也是一個苦差事,因為反組譯和他使用的 API 方式都很難懂。所以有對 Accessibility API 有經驗的朋友,希望能夠得到一些分享經驗或知識,就像隔行如隔山,搞不好點破就一切通了XD。
希望 這個構想能夠實現,不過,身為SafariPowerToy的重度依賴者,發現經過2007-009的更新之後,似乎safaripowertoy就會造成 safari 不能開啟的情形~
不知道 Apple 方面又做了什麼動作..能否請大大釋疑一下~
另,再度期待您的大作囉!
張貼留言