下載網址: https://popcorntime.io
開源專案網址: https://github.com/popcorn-official
從國外論壇看到這軟體, 可以正常使用.
據說是採用 bit torrent 的技術, 高清(HD), 且可以有英文字幕.
軟體介面有多國語言.
其它版本:
http://popcorn-time.se/
若需要支援中文字幕版本的軟體(非官方), 可從此下載:
http://1somethings.blogspot.tw/2014/05/popcorn-time_25.html
2015年9月24日 星期四
2015年9月22日 星期二
C 語言程式設計 - 除錯用巨集範例(print message for debugging)
這是一個可重複使用, 事先定義在 common header 中, 用來列印除錯訊息的範例.
主要是利用 __FILE__, __LINE__, __FUNCTION__ 等 compilier build-in 提供的資訊.
此時所有的 debug message 就不用再次(重覆)寫這幾個內容.
#define DBG_PRINTF_EN (0)
#define DBG_PRINTF(fmt, ...) \
do { \
if (DBG_PRINTF_EN) \
printf("%s:%d:%s(): " fmt, __FILE__, __LINE__, __FUNCTION__, ##__VA_ARGS__); \
} while (0)
主要是利用 __FILE__, __LINE__, __FUNCTION__ 等 compilier build-in 提供的資訊.
此時所有的 debug message 就不用再次(重覆)寫這幾個內容.
#define DBG_PRINTF_EN (0)
#define DBG_PRINTF(fmt, ...) \
do { \
if (DBG_PRINTF_EN) \
printf("%s:%d:%s(): " fmt, __FILE__, __LINE__, __FUNCTION__, ##__VA_ARGS__); \
} while (0)
標籤:
C,
Debugging,
Programming
2015年9月21日 星期一
[教學] Subversion (svn) 如何將部份檔案標記為不提交(commit).
此範例以 bash (Shell) 為例:
定義一個名為 svn 的 bash function, 輸入指令:
$ svn() { if [[ $1 = "ci" ]]; then command svn ci `svn st | sed -e "/^--- Changelist 'ignore-on-commit'/,/^--- Changelist/d" | grep '^[ADMR]' | awk '{print $NF}'`; elif [[ $1 = "skip" ]]; then command svn cl 'ignore-on-commit' "${@:2}"; elif [[ $1 = "unskip" ]]; then command svn cl --remove "${@:2}"; else command svn "$@"; fi; }
當使用 svn ci 指令時, 會自動將 'ignore-on-commit' 此 changelist 中的檔案剃除.
此名稱是 SVN Tortoise 預設使用的名稱. 所以建議使用此 changelist 名單.
增加 [欲忽略的檔案] 到 'ignore-on-commit' 名單中:
$ svn skip FILENAME
或自行採用原生指令:
$ svn cl 'ignore-on-commit' FILENAME
A [ignore-on-commit] FILENAME
FILENAME 為欲忽略的檔案名稱.
反之, 欲取消忽略此檔案:
$ svn unskip FILENAME
或自行採用原生指令:
$ svn cl --remove FILENAME
D [ignore-on-commit] FILENAME
備註:
目前已知問題為, 當除了 'ignore-on-commit' 中的檔案以外, 沒有其他變動的檔案, 會視為想要 commit 'ignore-on-commit' 此名單中的所有檔案.
定義一個名為 svn 的 bash function, 輸入指令:
$ svn() { if [[ $1 = "ci" ]]; then command svn ci `svn st | sed -e "/^--- Changelist 'ignore-on-commit'/,/^--- Changelist/d" | grep '^[ADMR]' | awk '{print $NF}'`; elif [[ $1 = "skip" ]]; then command svn cl 'ignore-on-commit' "${@:2}"; elif [[ $1 = "unskip" ]]; then command svn cl --remove "${@:2}"; else command svn "$@"; fi; }
當使用 svn ci 指令時, 會自動將 'ignore-on-commit' 此 changelist 中的檔案剃除.
此名稱是 SVN Tortoise 預設使用的名稱. 所以建議使用此 changelist 名單.
增加 [欲忽略的檔案] 到 'ignore-on-commit' 名單中:
$ svn skip FILENAME
或自行採用原生指令:
$ svn cl 'ignore-on-commit' FILENAME
A [ignore-on-commit] FILENAME
FILENAME 為欲忽略的檔案名稱.
反之, 欲取消忽略此檔案:
$ svn unskip FILENAME
或自行採用原生指令:
$ svn cl --remove FILENAME
D [ignore-on-commit] FILENAME
備註:
目前已知問題為, 當除了 'ignore-on-commit' 中的檔案以外, 沒有其他變動的檔案, 會視為想要 commit 'ignore-on-commit' 此名單中的所有檔案.
標籤:
bash,
Linux,
Subversion,
svn
Shell: bash, tcsh, sh 的比較 (不同)
bash:
Linux 的使用者普遍使用的 shell, 網路上找到的 Linux script 或相關教程. 都是以 bash 為範本.
tcsh:
若你是個 C 語言的開發者, tcsh 的語法較為接近 C.
sh:
在各種 Unix-like 平台之間, 相容性最高的 shell, 若要寫一個通用的 script, 以 sh 最為理想.
(建議一定要瞭解 sh 的基本用法)
[參考網頁]
個人建議學 bash + sh. 參考網頁: https://web.fe.up.pt/~jmcruz/etc/unix/sh-vs-csh.html
Linux 的使用者普遍使用的 shell, 網路上找到的 Linux script 或相關教程. 都是以 bash 為範本.
tcsh:
若你是個 C 語言的開發者, tcsh 的語法較為接近 C.
sh:
在各種 Unix-like 平台之間, 相容性最高的 shell, 若要寫一個通用的 script, 以 sh 最為理想.
(建議一定要瞭解 sh 的基本用法)
[參考網頁]
個人建議學 bash + sh. 參考網頁: https://web.fe.up.pt/~jmcruz/etc/unix/sh-vs-csh.html
訂閱:
文章 (Atom)