2015年5月25日 星期一

macports 和 aptitude / apt-get 指令對照

有用到再繼續補充:

操作Ubuntu apt-get / aptitudeMacports
列出已安裝的套件dpkg -l port installed
列出已安裝套件 PKG 包含的檔案pkg -L PKG port contents PKG
搜尋包含 NAME 字串的套件aptitude search NAME port search NAME
顯示套件 PKG 的詳細資訊aptitude show PKG port info PKG

2015年5月24日 星期日

JavaScript 測試 framework 評估小記

找了一下 javascript unit test 的 framework, 看了一陣子, 還是很久以前試過的 QUnit 最順眼, 載入一個 JS, 一個 CSS 檔就可以用了, 語法也簡單 (或著說比較習慣, BDD 風格看起來頗囉唆的)。

一開始不小心找到牛刀 Karma (是 test runner 不是 test framework), 糊里糊塗的裝來用, 看看預設用的 Jasmine, 還有 Jasmine, Mocha 和 QUnit 的比較文 (前兩者是 BDD 風格)。順便得知可搭配 PhantomJS 作 headless browser 測試。那天真的需要 Karma 時再來用吧。或是直接找個 QUnit + PhantomJS 的 runner, 大概也可滿足下一層級的需求。

參照這幾篇應該可以順利裝好 Karma。用Ubuntu 12.04 的話, 需要先手動升級 npm 至新版, 才能成功安裝 Karma。

雖然不會去用牛刀級的 framework, 看牛刀級的 framework 可以得知生態圈的全貌以及相關的熱門套件, 也是不錯的入門方法。

大幅提升開發時間的 vim 必備 plugin: syntastic

用 IDE 開發的一大好處是: 寫程式的當下, IDE 會即時編譯程式碼, 指出編譯錯誤的地方。可以大幅縮短「寫碼 -> 編譯失敗 -> 寫碼 -> 編譯失敗 -> ...」的流程。VIM 可透過 syntastic 達到一樣的效果, 存檔後立即編譯, 然後指出編譯錯誤的地方。Script language 也有同樣效果。安裝後我不需改任何設定就可以愉快地寫 C++ 和 Python。

通常寫 C/C++ 時, 會在編譯時加上 "-I/path/to/header", 這樣編譯器才知道上那找標頭檔。syntastic 同樣地也需要這個設定。設定方法是在程式碼的目錄下 (或父目錄, 或父父目錄...) 建立 .syntastic_cpp_config , 裡面直接寫 "-I/path/to/header", syntastic 就知道上那找標頭檔了。

參考資料: http://stackoverflow.com/a/19143873/278456

在 Fedora 下裝 id-utils

Fedora 似乎因為執行檔撞名,而沒有提供 id-utils 的套件 ,但這是使用 gj 的必要套件,只好自己編。從官網抓好 tarball ,解開來編譯 (./configure && make)就是了。 但編譯後會遇到錯誤: ./stdio.h:10...