萬用 Preprocessor Compiler:Prepros

Prepros 是一個能支援多款 CSS、JavaScript 和 HTML Preprocessor 的 compiler,它支援 LESS、Sass、Scss、Stylus、Jade、Slim、CoffeeScript、Haml 和 Markdown,有些名我還是第一次聽。有了它就不用再裝 Ruby 之類的東西,因為它已經內置 compile 時所需的程式。它可以在 compile 的時候亦可以 minify code(minify 是指將檔案中不必要的空白字元、註解清除,令檔案變小,加快網頁載入的時間),亦支援近年流行的 Live Reload 功能(在檔案儲存時瀏覽器會即時重新載入有關的網頁,方便即時看到剛才修改過的效果,只需要安裝 Prepros 的 extension 和在 Prepros 開啟這個功能就可以了)。它支援的 Preprocessor 數量和功能可以媲美 Mac 的 CodeKit。不過 Prepros 不能直接 minify 最原始的 JavaScript 檔案,亦沒有優化圖片的功能,但都足夠一般的使用。重點的是 Prepros 是免費的!

Read More

Laraval 4 中文語系翻譯

Laravel 4 不再附帶英文以外的 validataion error message 語系翻譯,如果要用其他語系的話,就要自己另外下載。Caouecs 已經在 GitHub 開了一個 repository 收集不同的翻譯,我自己也譯了繁體中文,大家可以下載需要的翻譯。如果是打算做中文介面的話,最好也要將各欄位的中文名加到 app/lang/XX/validation.php 內的 attributes array 內。因為 Laravel 本身是用 input 的 name 來做 attribute 的名稱,所以如果不自訂 attributes array 的話顯示錯誤訊息時會中英夾雜。

Laravel 4

我自己學習 PHP 其實都只是一年前開始,這是因為我選修了兩科關於 PHP 的科目。那時學的都是一些最基本的 PHP,製作 HTML 表單連驗證、修改、儲存到資料庫都是用同一個 PHP 檔案,內裏用幾個 if 來分隔開不同的部分,還會用 session 來重新填寫表單內容。現在回想起都覺得這種寫法非常嘔心,因為實在太長,而且夾雜着 PHP 和 HTML,自己寫完都不想再去看。

Read More

Bitbucket 免費 Academic License

BitbucketGitHub 一樣都是有名的 Git repository (repo) hosting 供應商。兩者的免費版差別在於 Github 免費版只可以開到公開的 repo 而 Bitbucket 就可以開到公開和私人的 Git repo,如果不想公開源碼的話可以考慮用 Bitbucket。Bitbucket 最多可以與五個人共用私人的 repo,但它有推薦制度來增加共用名額,最多能與八個人共用同一個私人 repo。

如果想再增加使用者而你又有大學電郵地址的話,可以免費申請 Bitbucket 的 Academic License。Academic License 可以將 repo 與無限人共用私人 repo。只需在表格填上自己 Bitbucket 帳戶資料、大學資料就可以了。留意自己的 Bitbucket 帳戶是要將表格所填的大學電郵設定帳戶預設的電郵,否則不能升級。如果你平時並不是用大學電郵地址來 commit 的話,你可以再加上其他電郵地址,這樣就不會在 Bitbucket repo 的網頁介面顯示提交人為 Unknown,而是顯示為你的帳戶。

成功升級 Academic License

SimCity

期待了十年的 SimCity (2013) 終於出了新版(不計算 SimCity Society 的話),但結果一推出就劣評如潮。首先就是將以往單機遊戲變成網上遊戲,雖然 EA 聲稱改為網上遊戲的原因並非因為 DRM,但原因很明顯示為了防盜版。而伺服器郤未能承受到全球大量的玩家,加上其他種種的 bug,令玩家憤怒。結果 EA 要送 Origin 遊戲給玩定消氣。

Read More

使用 Exchange ActiveSync 同步 Outlook.com 郵箱

微軟的 Outlook.com 已經開放了一段時間,如果想在 Android 上收發 Outlook.com 的電郵除了用傳統的 SMTP+POP 或者使用官方的專用 app 之外,其實還可以用 Exchange ActiveSync。雖然 Outlook.com 沒有交待過 Exchange ActiveSync 的設定方法,但做法其實不難,只需要用手機內置的電郵 app(不是 Gmail app)再使用本文提供的設置就可以了(方法同樣適用於 Hotmail 郵箱)。

Read More

TrackPoint 使用滑鼠中鍵

TrackPoint

Lenovo ThinkPad 的特色之一就是鍵盤中間有一個「中原一點紅 (TrackPoint)」,這個小紅點和鍵盤下面的左中右鍵合組成 UltraNav。UltraNav 可以令使用者在雙手不離開鍵盤的情況下使用滑鼠。不過這個中鍵只可以作頁面上下左右滾動或者直接作為滑鼠中鍵使用,不可以設為兩個功能同時存在。我自己是將它設定做頁面滾動,如果在瀏覽網頁時想開新分頁 / 關閉分頁的話就用 Touchpad 的三指按下 Multi-touch 動作來代替按下滑鼠中鍵。有時候為了使用滑鼠中鍵而要走去用 Touchpad 有時都覺得麻煩。

原來有人寫了一個程式叫 TPMiddle,只需要下載它並放到 Start Menu 內的 Startup 資料夾就可以令到 UltraNav 的中鍵同時可以做到頁面滾動和滑鼠中鍵的功能。現在想開新分頁 / 關閉分頁的話只需要按一下中鍵就可以了;想滾動頁面的話就按住中鍵並在 TrackPoint 施力就可以了。

Facebook for Android 出了更新了!

早前 Facebook 創辦人暨現任 CEO Mark Zuckerberg 於訪談中說到以 HTML5 編寫 Facebook Android app 是公司決策上最大的錯誤,今日他們終於不再用 WebView + PHP 顯示貼文了!速度的確快了不少。不過郤引來一眾香港用戶投訴,指界面會轉用簡體中文,甚至連《蘋果日報》都有報道,指 Facebook app 出現簡體中文是要打中內地市場。

如果你的 Android Facebook app 界面是以簡體中文顯示的話,請檢查你的設備是否使用「中文(香港)」、「中文(香港特別行政區)」之類的語言。如果是的話,請切換到「中文(繁體)」、「中文(台灣)」之類的語言,問題就會迎刃而解。

使用 zh_TW 時會以繁體中文顯示

為甚麼使用「中文(台灣)」就沒有問題?原因是 Android 根本就沒有 zh_HK 這個語言,zh_HK 只是一眾手機平板廠商自作聰明加上去的。Android SDK 的 emulator 都只有「中文(繁體)」和「中文(簡體)」。但廠商自行加了 zh_HK 後,郤沒有做好如果 app 沒有 zh_HK 的界面語言的話要怎樣 fallback。結果用戶將設備語言設成「中文(香港)」後,只有原生的 app 才會出現繁體中文界面,其他 app 甚至是內置的 Google apps(例如 Google Play、Gmail)只會出現英文界面。Sony 更將中文輸入法與語系綑綁,如果要輸入香港字的話,就必須要將系統語言設為「中文(香港)」,使用「中文(台灣)」就不能輸入。

Sony Xperia ion 的語言設定

正因為 Android 本身就沒有 zh_HK,相信只有香港的 Android app developer 才會知道香港用戶有機會會使用 zh_HK 這個語系,開發 app 時會加上 zh_HK 界面語言,所以大多數的 Android app 就算有配上 zh_TW 的界面語言,如果用戶將自己的系統語言設成 zh_HK 的話都很可能只看到英文,又或者會像 Facebook app 一樣出現簡體中文。

可能當時 Android 的開發團隊當時未有考慮到部分地區例如香港會使用多過一種語言,不像美國般只用英文,所以將系統的地區和語言合併來設定。如果系統將地區和語言是分開來設定的話,那就不會出現今日 Facebook app 的情況,廠商又不用自作聰明地加上 zh_HK 了。在目前的情況,如果想用繁體中文介面的話,我還是建議大家用 zh_TW,不要再用 zh_HK。(我自己都是用 zh_TW 的)

12 月 15 日補充:本地 Android app 開發者小倫在其網誌小倫角落分享了如何整理 Android app 的界面語言。

Sony Xperia ion

七月中在電訊數碼買了 Sony Xperia ion 兼上台,換走了之前用開的 Motorola Milestone。之前的 Milestone 實在太慢,在接電話時會當機,如果電話響時不覺意地旋轉屏幕會更容易當機,其主因都是 RAM 不足。雖然 Milestone 有實體 QWERTY 鍵盤,但我比較少用。因為不習慣指法,所以都是使用虛擬鍵盤。因此,選購新手機首重屏幕大小,令到虛擬鍵盤的按鍵面積更大。

Read More

Lenovo ThinkPad X230

早前在學校買了 Lenovo ThinkPad X230。學校只有 Lenovo 和 HP 選擇,聽聞 HP 的手提電腦散熱不良、容易壞(之前在實習時就見過 PCCW 的維修人員為整個辦工室的 HP Workstation 換底板,原因是容易氧化而導致壞機。而這些機只是買了幾個月而已),所以最後鎖定了 Lenovo。

Read More