Olympus E-M10

不經不覺我的 Olympus E-M10 相機買了都有一年了。這一年來都影了大概有四千多張相片。最初買相機的原因主要是用來拍畢業相,而且之前用的 Canon PowerShot A640 不知是不是因為發霉的關係,拍出來的相片都好像有一層霧般灰曚曚般。所以想買一部新的來取代它。亦因為這個原因,近年來都是用手機影相為主。

Read More

轉用 Hexo

之前一直都想用 static site generator 來取代沿用的 WordPress。現在終於由 WordPress 轉到 Hexo,並且將網站改用 GitHub Pages 架站。

Hexo 是一個用 Node 寫的 static site generator,它的定位是用來造 blog,不過用來做一些簡單的文檔網站都可以。近年開始流行如 Jekyll 之類的 static site generator,主要的特色除了是可以將網站放到普通的 web hosting 外,就是可以用 Markdown 寫文章。用 Markdown 的好處就是語法比 HTML 簡單,尤其適合寫一些文字為主,不需要特別排版的文章。還有就是寫一些夾雜着程式碼的文章。Static site generator 通常都會提供 syntax highlight 功能,而且還會將生成的 syntax highlight HTML 直接匯出,無須在 client side 做 syntax highlight。之前在 WordPress 寫夾雜着不少程式碼的文章時就要不時切換 HTML 和 WYSIWYG editor 來補加 <code> 之類的 tag,用了不少時間才寫完。

寫文章方面,因為匯出 HTML 需要先安裝 Hexo,所以不能像 WordPress 般方便。我的做法是在 Cloud9 開一個 workspace 來寫文。這樣就不用每部機都要裝一次 Hexo,而且下一次開啟時還能保留 editor 和 shell 的 context。寫文時亦可以開啟 server 來預覽網站。完成後就可以 deploy 到 GitHub Pages。如果嫌沒有網頁寫作介面的話可以安裝 hexo-admin plugin。

轉移過程最麻煩的地方就是要人手逐篇文章去檢查轉換完的 Markdown。雖然 Hexo 有提供 WordPress 轉移 plugin,但因為它的轉換插件只是作簡單的轉換,沒有特別去 escape Markdown 語法的字符。加上它沒有將上載到 WordPress 的圖片下載一次。所以要逐張圖片人手處理。有些文章實在有太多圖片,我在轉移的時候只保留部分的圖片。留言方面,因為先前已經轉用 Disqus,所以只需要在設定檔填上 Disqus ID 就可以在文章顯示以前的留言。

在 Windows 刪除路徑名太長的檔案

通常寫 JavaScript project 都會用到 NPM,NPM 和其他 package manager 不同之處就是每個 package 的 dependency 都會放在其 package 內的 node_modules 資料夾,而不會將所有 dependency 放去同一個資料夾內。這個做法的好處是不同的 package 即使用了相同的 module 但不同版本都不會衝突。但壞處是當一個 module 有 dependency 時,而這些 dependency 自己本身都有 dependency 時,便會令 project 的 node_modules 資料夾內有非常多層的資料夾。如果用 Windows 的話,有可能因路徑名太長不能刪除資料夾和檔案。

但原來解鈴還須繫鈴人,有人做了一個簡單的 Node 工具 rimraf 可以順利地移除這些資料夾。

首先,用 NPM 安裝 rimraf:

1
npm install -g rimraf

然後,將要刪除的資料夾傳到 rimraf 即可:

1
rimraf C:\Users\Eric\Documents\proj

整理 MP3 ID3 tag

之前有整埋 MP3 的 ID3 tag,以下是我的小分享。

如果要整理 MP3 檔的 ID3 tag 的話,可以用 Mp3tag。在設定頁,揀選 Tags | Mpeg,在 Write 部分只剔選 ID3v2,而下面就只揀選 ID3v2.3 UTF-16。而在 Remove 部分則剔選 ID3v1 及 APE。這樣就應該不會再有亂碼。

如果要移除其他 tag(例如歌詞、iTunes 遺留下來的 tag),可以在 Mp3tag 的檔案欄的項目按右鍵,然後點選 Extended tags。歌詞的 tag 是 UNSYNCEDLYRICS

iTunes 都可以整理 MP3 的 ID3 tag,但預設是不會將 tag 的改動寫回 MP3 檔內,如果沒有特別處理過的話在其他 player(例如電話)播放就未必見到改動過的 ID3 tag。

如果要補回專輯的 cover art 的話,除了 Google image search 之外,iTunes Store 本身都有提供大量 cover art。除了用 iTunes 來自動補回 cover art 之外,也可以用 iTunes Artwork Finder。只需揀選 Album,輸入專輯名並選擇 iTunes Store 地區就可以開始搜尋。網站會提供 600 px 和 1500 px 的圖像。只需右鍵複製再在 Mp3tag 的 Cover 欄右鍵貼上就能替歌曲補回 cover art。

Inline CSS

最近需要寫一個發送 email 的 program。如果要用 HTML 的話,最好都是找到現成的 HTML email framework。(例如 Zurb 的 Ink,其他的可以參考 Responsive Email Resources 網站)因為 HTML email 和平時做網頁分別很大,例如:

  • CSS 要 inline,<style> 並不是全部 email client 都能支援
  • 排版要用 <table>
  • 圖片視乎需要當成附件,Base64 未必能被 email client 支援
    但設計 email 時如果要寫 inline style 是非常難寫,所以都是用工具轉。我試過用 Gulpgulp-inline-cssgulp-inline,效果不錯。

    Read More

OnePlus One + Xperia Z2

最近發現我的 Xperia ion 有時候會誤以為耳機還插在電話,結果電話不會響。隔一段時間後重啟又會變回正常。加上 ion 因為少 RAM 而經常自己 kill app,最後決定換部新的電話。

之前一直都想換電話,在上年 10 月中的時候收到訂購 OnePlus One 的邀請,買了一部 64 GB Sandstone Black。後來發現不太合意,收機當晚就決定退貨。後來買了 Sony Xperia Z2。

Read More

Data.One 的行車速度圖

香港政府的 Data.One 有提供運輸署的行車速度圖 XML 資料。資料以線條為單位,表示路段的行車速度。雖然它有提供 Excel 格式的路段起點和終點座標和其他基本資料,但郤沒有提供地圖示意各路段是對應那條實際的道路。而且座標系統是使用政府測量用的 HK80 而非一般網上地圖 API 的十進制 WGS84 座標。如果想使用這些資料的話,就要先將 HK80 座標轉為 WGS84,然後將點和線畫在地圖上,再對比實際的道路才能知道各條線所代表的道路。

我已經將行車速度圖 Excel 內的點轉成 WGS84 座標,而且做了個 KML 檔案標示各點和線。KML 檔可以用 Google Earth 開啟。(KML 內的物件已超出 Google Maps My Place 匯入 KML 檔的上限,所以要用 Google Earth 開啟。)

行車速度圖的路段

ThinkPad 死電池

在大學買的 ThinkPad X230 已經用了兩年(2012 年 8 月購入),但就先後壞了兩次電池。第一次壞是在 2014 年 2 月(一年半),用了 72 個 cycle 的電池突然不能充電和放電,Power Manager 顯示為 poor condition。由於電池只有一年保養,所以到 Lenovo 維修中心買新電池。但新電池未夠半年就有問題。

新電池在用了幾個月後就錯估電量。當電量剩餘約三分之一時,Windows 和 ThinkVantage Power Manager 就會突然提示電量只有 6%。如果不在幾分鐘內插上電源電腦就會自動關機。試過校正電池電量,但過了一段時間又會打回原形,於事又要到維修中心一趟。這次因為電池保養未完,所以直接換了電池。新電池大約可以用到三個多小時,不知這次壽命如何。三粿電池的芯都是用 SANYO,但之前兩粿的電池品質都有問題。

除了主電池之外,底板的電池用了一年多就沒電。一般桌上電腦的底板電池用了五六年才會用完,底板電池用了一年多就用完簡直離譜。另外,它的 Windows recovery media 也是有問題的。買機後馬上用 USB 手指做了一個 recovery media,後來用這個 USB 手指做系統還原時發現有錯誤,結果要拿去維修中心重裝系統。

ThinkPad 的品質差原來都不是新鮮事,原來前幾年發生過 ThinkPad E420「主板門」事件。雖然 E 系不是原 IBM 系列,但都可以見到 Lenovo 的品質問題不是個別事件。日後再買電腦都應該不會再考慮 Lenovo。