2009/04/30

[軟體] Xmind 3.02 少了流程圖



如上圖,在我的電腦上可以發現 xmind 3.0.2 裝完了之後,建立新檔是沒有流程圖的。
這~~ 很怪耶,因為 flow chart 應該是早就有的東西才對。

我花了一些時間去重裝 xmind 跟 java jre 6 的部份,結果發現根本不是那麼回事。

xmind 的官網有一些 sample 可以讓人家下載,我下載了 test-flowchart 這個範例文件檢查是否可以正常開啟流程圖,看起來也是正常的。

所以結論應該是 xmind 忘了把 flow chart 放進 template 之類的錯誤吧。
現行如果要新增一個 flow chart ,應該就是把剛剛那個 test flowchart 加到範本集裡面,這樣就可以新增一份文件的時候,直接建構流程圖。

// 怪了,我記得 Ubuntu 底下沒這個問題過啊。

2009/04/22

[Linux] GPL 的簡報


唔,應該說是前幾天公司請了律師來講解 GPL 自由/開源軟體的法律座談。
結果去聽了一下,嗯,其實對於他講的東西沒有很滿意。
(也蠻難搞的,因為法律人不知道程式的部份,我們做軟體的不懂法律)

大致上用 Xmind 寫了這樣的連結圖,有需要簡報的時候,可以拿來擴充一下。

2009/04/21

[軟體] Yahoo Keykey 輸入法會掉條目



左邊是最新的 Keykey 1.0 build 2140 版本
右邊是香草輸入法 0.8b1 也是目前能用最新的版本(好啦,好像很久沒更新了)

我用的表格是自已建立的,不過有按照 keykey 的需求照作,而且香草可以使用,沒有理由 keykey 不能用才對。另外要抱怨一下,這個 Keykey 的使用者問題回報的頁面真的是有夠爛。

1. 需要 Yahoo 的帳號。 (雖然拎背有,但是拎背很不想給你知道。)
2. 明明自已的信箱才一堆垃圾信,不要牽拖到別人的信箱好唄?
3. 連 browser 都牽拖成必填的欄位下來,拜託,我只是用輸入法,不要亂搞到別人的 application 上面去,這個選項怎樣都應該是 optional 。

結論: Yahoo 很愛牽拖,而且,這個 Keykey 跟香草的關係一直沒有很正式的 announce 出來。

[Linux] Ubuntu 8.04 更新 dbus 有錯


anton:~$ deluser messagebus
Removing user `messagebus' ...
Warning: Removing group `messagebus', since no other user is part of it.
Done.
anton:~$ dpkg --configure dbus
正在設定 dbus (1.1.20-1ubuntu3.2) ...
Warning: The home dir /var/run/dbus you specified can't be accessed: No such fil
e or directory
Adding system user `messagebus' (UID 108) ...
Adding new group `messagebus' (GID 119) ...
Adding new user `messagebus' (UID 108) with group `messagebus' ...
Not creating home directory `/var/run/dbus'.
chown: cannot access `/var/run/dbus': No such file or directory
dpkg:處理 dbus (--configure)時出錯:
子程序·post-installation script·返回了錯誤號·1
在處理時有錯誤發生:
dbus

簡單的說,更新到一半, postinst 錯誤訊息先說 messagebus 這個 user 已經存在了。
(好吧,那我手動砍掉這個 user account 吧)
然後又說沒有 /var/run/dbus 這個目錄。
(好吧,那我手動新增這個目錄吧)
然後就可以下 dpkg --configure -a ,讓系統恢復正常更新的運作了。

呃... 不過這應該是 dbus 包裝的 postinst script 沒寫好吧?

[Linux] Debian 更新的時候發生的問題

99% [3 Packages bzip2 991232] [等待標頭] [等待標頭]
bzip2: Data integrity error when decompressing.
Input file = (stdin), output file = (stdout)

It is possible that the compressed file(s) have become corrupted.
You can use the -tvv option to test integrity of such files.

You can use the `bzip2recover' program to attempt to recover
data from undamaged sections of corrupted files.

錯誤 http://security.debian.org etch/updates/main Packages
子程序 bzip2 回傳錯誤碼(2)

早上更新某台 debian 的機器的時候發現了這樣的錯誤,不知道怎麼處理。
結果後來是把 apt/sources.list 註解掉 security 的部份

deb http://security.debian.org/ etch/updates main contrib
deb-src http://security.debian.org/ etch/updates main contrib


再執行 apt-get update 後就可以動了。

當然, apt-get 可以動了,就要再把 security 拉回來用,不然沒有 security 蠻可怕的。

p.s 這個問題在 ubuntu 底下也有發生,看起來是 apt-get 的問題吧。

2009/04/14

[Programming] system 正確的抓取 return value

錯誤的抓法

#include <stdlib.h>

int main (void)
{
int ret;

ret = system("error: command not found");

return ret;
}


看一下 system 是怎麼寫的,就可以知道為什麼 ret 不一定是你想要的答案了。
這是正確的做法:
#define _GNU_SOURCE
#include <stdlib.h>

int main (void)
{
int ret;

ret = system("error: command not found");

if (WIFEXITED(ret))
return WEXITSTATUS(ret);
else
return -1;
}


// 以上不是我寫的,是公司裡的 eric 學長教的,看 code 才是基本功。

2009/04/10

[軟體] Vim 技巧 noeol 跟 binary 檔的處理

遇到一個很討厭的情況是 vim 在處理一些檔案的時候會自動把 no end of line (eol) 的檔案自動加上 eol 的情況,所以會讓某些需要沒有 eol 的文檔發生不可預期的錯誤。
當然 parser 可以再改進,不過有些時候情況很趕,所以不喜歡 vim 太雞婆的動作,這裡就需要在 .vimrc 裡面加上
setlocal binary
來處理,這樣就可以解決這個問題了。

[Windows] git-bash 底下的工具

因為工作轉到 Windows 平台上的關係,所以很多工具改到 Windows 上面運作,跟著在 TortoiseGit 底下使用 git-bash 來維護自己的專案原始碼。結果就是裝了前面提過的 auto-hotkey 使用熱鍵來提昇自己的平台操作速度; 但除了 hotkey...