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

八達通查閱易

千呼萬喚始出來!去年有人用了 Android 的 NFC 功能來讀取八達通卡的餘額後,八達通公司終於推出了官方的八達通 Android app。這個 Android app 最主要的功能在於它能夠顯示最近十次的交易紀綠。

要查閱八達通卡的資料,要先登記八達通卡編號。只有登記過的八達通卡方可查閱。登記後,將有 NFC 功能的手機放到八達通卡上,app 就會到八達通公司的伺服器下載該卡的餘額及最近十次的交易紀綠並顯示在手機屏幕上。三十秒後就會從屏幕自動消失。如果要再查閱另一張卡的話,要先按 Back 鍵返回上一頁。

八達通查閱易的最近十次交易紀錄

由於用法和先前在 Play Store 發佈的八達通 app 相比實在太麻煩,所以有不少負面評價。主要在於查閱餘額要經互聯網而非直接解讀卡內的資料和預先登記卡號。卡內其實已經有卡號,要人預先填寫確實多餘。另外,如果知道卡號的話八達通公司一定可以查到卡的餘額和交易紀綠,所以要再用 NFC 拍卡亦都是多餘。但相信八達通公司日後不會將查閱功能改為直接解讀,因為怕被人反編譯(Android 的應用程式主要是用 Java 寫的,像 Java 這些需要編譯兩次的程式都是容易被人反編譯)。而要預先登記卡號是為了防止他人未經卡主同意就拍卡讀取資料(例如在街上用手機拍一下口袋來知道你卡內的餘額)。自從八達通日日賞賣私隠一事之後,估計八達通公司都不會收回預先登記、三十秒顯示的設定,生怕又被公眾投訴私隠外洩,再度影響公司形像。

我自己用過幾次,決定不會再用其他八達通 app。只因為它可以讀取到最近十次交易紀錄,但郤發現乘搭港鐵巴士的紀錄都變成輕鐵。如果日後會加入儲存紀錄功能就更加好。

八達通公司這次推出 Android app 旨在向外界宣揚它造的 app 才是正統,希望大家不要再用其他的 app 來讀取卡內資訊。但卻令到它本身有出售的 USB 讀卡器變得無用(那個讀卡器同樣是要連接到八達通公司的伺服器來讀取資訊)。但它肯推出手機 app 已經算是與時並進了。