顯示具有 webkit 標籤的文章。 顯示所有文章

gravatar

台灣有線頻道"綜合娛樂舊聞台"之 Google 傾斜網頁

真是受不了台灣的名為新聞台的娛樂舊聞台。每次播的不是行車紀錄器畫面,Youtube 影片,電視畫面翻拍,記者自己演一次的新聞,就是網頁上的舊聞。
Google 網頁搜尋會出現傾斜的新聞,早就不是新聞。幾百年前就看過的東西。這東西有那個神奇嗎,一直重播,還要訪問路人。那麼喜歡傾斜,舉個 Google Chrome 為例子,自己去改這的檔案加個 CSS 的描述不就得了。

gravatar

Safari 4 Developer Preview (40A12)

最新的 Safari 4 預覽版本 40A12 已經在 8/22 釋出,不過只能透過 ADC member site 下載,並且只有英文版本。最新的內容包含有

  • 可以在 Advance Preferences pane 裡面直接勾選要出現 Develop 選單。
  • 重新設計過的 Web Inspector
  • 整合 JavaScript Debugger,含有
    1. JavaScript Profiler
    2. Console API
  • 新的 WebKit 版本支援
    1. Gradients in CSS
    2. Masks in CSS
    3. Canvas in CSS
    4. Reflections in CSS
  • 對於 HTML 5 的支援
    1. Accessible Rich Internet Applications
    2. Cross-site XMLHttpRequest
    3. HTML 5 Cross-document Messaging
    4. HTML 5 Offline Applications
    5. HTML 5 Local & Session Storage
    6. Standalone Web Applications
    7. HTML 5 Canvas
    8. HTML 5 Media Elements
    9. Transforms in CSS
    10. Transitions in CSS
    11. Web Fonts in CSS
先前釋出最新一版的 SafariPowerToy 0.2.2,不需要更新已經可支援 Safari 4 40A12 版的繁簡字型轉換。

gravatar

Safari: 更快的 JavaScript 速度

根據 Surfin' Safari 最新的文章和測試,新的 JavaScript 引擎,代號為「SquirrelFish」的 interpreter,讓 Safari 的速度加速為 WebKit 3.1 的 1.6 倍(SunSpider benchmark suite)。可望讓 Firefox 3.0 引以為傲的速度不再專美於前。 最主要的改變是採用了 virtual machine。什麼是 SquirrelFish?這是一種以暫存器為基礎,direct-threaded,高階的 bytecode 引擎。使用一個簡單的 one-pass 編譯器為 syntax tree 產生 bytecode。SquirrelFish 擁有很多目前高效率虛擬機器的很多設計最新的研究,包含 Lua 程序語言(玩 World of Warcraft 的應該都知道)開發者 Professor M. Anton Ertl, et al, Professor David Gregg, et al, 所作的研究。
繼續閱讀

gravatar

[OSX]更多的browser效能評比

利用 WebKit 所提供的 SunSpider benchmark 來測試 Mac OS X 上各家的瀏覽器裡面 JavaScript 的效能。 測試平台是 Mac OS X 10.5.2 Leopard on Apple iBook 1.2Ghz。瀏覽器包含正式版的 Firefox 2.0.11、Safari 3,測試版的 Firefox 3.0b5pre、WebKit Nightly Build、Opera 9.5beta。測試結果看來都是測試版的瀏覽器大獲全勝,其中又以 Firefox 3.0b5pre 最為突出,一改 Firefox 讓人詬病的速度問題。再來是 WebKit,效能上只輸 Firefox 3b5pre 一點,很難想像用他來作為核心的 Safari 竟然會有這麼大的差距。接著是 Opera 9.5beta,雖然他們號稱速度上是第一,可能整體上來說沒錯,但是畢竟在單純 JavaScript 上沒有這麼好的成績。敬陪末座的就是舊版 Gecko 核心的 Camino 1.5 和 Firefox 2.0.11。
在 Firefox 3b5pre 釋出後不到一天,一些 Addons 已經更新支援最新的 Firefox 3 beta nightly build,例如 Adblock Plus

gravatar

Firefox 3 beta pre4

Firefox 2 在 mac os x 執行,除了網頁資料下載速度快點,顯示還有效能都不如 Safari。連字體都是只有醜醜的 Gray Level AntiAlias。Firefox 3 測試版出來時,就迫不及待的去嘗試。因為主要是把 Carbon 換成 Cocoa,把畫面和字型繪製改由 Cairo。結果一試就大失所望,因為效能真是慢到一個不行。以常用的 Google Spreadsheets 來說,在儲存格上上打注音輸入中文真是慢到一個不行。所以還是想等到他推出正式版本再說吧,畢竟現在還是 beta。在 Slashdot文章這篇 Undocumented API 才是王道提到一些主要原因。接著再下載最新的 Firefox 3 nightly build 來試試看,果然感覺速度或效能已經比 Firefox 2 快了,搭配 Arial Unicode MS 字體,Cairo 畫出來的 CJK 字型很美觀,已經有點迫不及待想要丟掉 Firefox 2.0。
至於 Apple 在 WebKit 裡面擺的 binary lib 果然是大有來頭,因為從 WebKit repository checkout 的程式碼,擺著沒有 source code 的 lib 就已經很讓人猜疑。

gravatar

踩到 WebKit 地雷

更新了 WebKit nightly build,結果使用出現一些小問題,其實也不是大地雷。第一個是,可以看到網頁內容但是上面的連結或控制項卻無法用滑鼠點選。關掉 tab 或是 reload 都無效,只有重開 Safari。第二個地雷是,本來可以用的 google spreadsheets,現在進去變成整頁的觀看模式,無法編輯。 第一個是不定時炸彈,但是幾乎很少遇到;第二個問題就算用原廠 Safari 的 WebKit 也無法用 google docs。再來翻翻看有沒有以前的 nightly build history 好了,看看之前的 nightly build version 再不再。

gravatar

Safari + WebKit Core

找到兩全其美的辦法了,因為跑 WebKit 的話雖然也是 Safari 的外殼,但是某些 plugin (Input Managers) 無法使用。後來用了類似 WebKit 在 WebKitTools/Scripts/run-safari script 的方法,在環境變數裡面增加了:

export DYLD_FRAMEWORK_PATH=/path/to/WebKit/framwork/...
export WEBKIT_UNSET_DYLD_FRAMEWORK_PATH=YES
其中的 path to WebKit framework 就是去下載 WebKit 後,進去 WebKit.app/Contents/Resources 可以看到 JavaScriptCore.framework、JavaScriptGlue.framework、WebCore.framework、WebKit.framework 那些檔案,把路徑只到這個 Resources 就可以了。 然後接下來只要下指令 open /Applications/Safari.app 一樣是跑 Safari 但是骨子裡卻是新版的 WebKit,同時一些 plugins 也可以繼續使用 :D ps: 目前似乎有的小問題的就是中文輸入選字時候按空白鍵,同時會被當成網頁按空白鍵,也就是下一頁的功能。不過問題還好也影響不太大。

gravatar

用 WebKit 後就不想換回去了

WebKit 當然就是 Safari 的 kernel,以前使用 WebKit nightly build 的經驗是,偶而看普通的網頁就會當掉,實在受不了所以只能忍耐用 Apple build 的 WebKit 版本。最近因為在玩 Yahoo! Fantasy baseball,常常會去看一些畫面 layout 比較複雜的頁面和 mlb.com,比較驚訝的是最近開 top 一看發現 Safari 的 RPRVT (Private Memory) 竟然高達 697MB,quit 掉 Safari 後就撿回來不少記憶體空間。第一次遇到這種情況,之前最高也是才 300MB 出頭。所以自己的使用習慣是用一段時間的 Safari 就會 quit 然後重新啟動。不過說也奇怪,把 WebCore cache disable 以及自己寫的 Safari Plugin 來設定 NSURLCache 的 memory/disk size 竟然也限制不了 Safari 一直長大的問題。所以這個問題也就無解,並且不了了之。 最近使用 WebKit 的經驗是感覺蠻穩定了,而且 memory leakage 似乎不會那麼嚴重,至少把頁面該關的都關掉後,就回復到蠻基本的 RPRVT 用量。並且至少新的 WebKit 也可以上 docs.google.com,就不用再開 Camino 來應付。缺點大概就是一些 Safari Plugin 不能用,比如說 SafariBlock,就無法阻擋廣告的出現。