kooldock 測試與修改
Kooldock是一個像是mac osx底下Menu Bar小工具,類似的還有 Ksmothdock。其實呢?Kooldock 是改進自 Ksmothdock 的。過年期間因為無聊試了一下 ksmothdock與kooldock,覺得有kooldock較好用,但是仍有中文顯示的問題,所以就做了一些小修改(事實上只改了一行)。

Kooldock是一個像是mac osx底下Menu Bar小工具,類似的還有 Ksmothdock。其實呢?Kooldock 是改進自 Ksmothdock 的。過年期間因為無聊試了一下 ksmothdock與kooldock,覺得有kooldock較好用,但是仍有中文顯示的問題,所以就做了一些小修改(事實上只改了一行)。
安裝Kooldock
目前Kooldock的版本是0.3 ,另外他有提供cvs的tarball下載,所有東西都可以自
http://www.kde-apps.org/content/show.php?content=12097找到下載的連結
解開tarball後進入kooldock目錄,執行
./configure
make --prefix=/usr/local (我習慣安裝在/usr/local下)
make install
即可安裝完成
(我的環境是 Fedora Code 3, KDE3.3)
ps: 如果使用 cvs version需先執行 make -f Makefile.dist 以產生 configure 檔
接著就可以執行他了。
kooldock &
你就可以在桌面下方看到如下圖的樣子

其實他會在 ~/.kde/share/apps/下
產生 /kooldock/menu的目錄
目錄下產生01_XXX 02_XXX .....的檔案,那就是底下icon的設定檔,可以直接編輯,或透過kooldock提供的管理程式來做。
但是,使用中文時就會出現問題了。如同上圖一般。
修正中文問題 ( 我是在 zh_TW.UTF-8 環境下)
我在kooldock的source code中找到了 item.cpp
大約在 79 行處,將code 由
name = line.mid(5).stripWhiteSpace();
改為
name = QString::fromUtf8(line.mid(5).stripWhiteSpace().ascii());
即可解決,原因是 QFile::readLine()函數(Qt3.3.3)將UTF-8編碼的中文檔案讀進來時造成的,我只是利用ascii()及QString::fromUtf8()將他轉成正確的編碼。
見下圖:

未來還可以改進的地方
1. 由程式可以看出,kooldock所用的顯示字串是name=XXXX 中的 XXXX。比較好的作法是,根據目前的語系環境決定,像是我在zh_TW的環境下,就取用name[zh_TW]=YYYY中的YYYY。
2. 滑鼠由上而下進入kooldock時,上面的字會時顯示不出來。
3. 穩定性也是可以加強的地方。

安裝Kooldock
目前Kooldock的版本是0.3 ,另外他有提供cvs的tarball下載,所有東西都可以自
http://www.kde-apps.org/content/show.php?content=12097找到下載的連結
解開tarball後進入kooldock目錄,執行
./configure
make --prefix=/usr/local (我習慣安裝在/usr/local下)
make install
即可安裝完成
(我的環境是 Fedora Code 3, KDE3.3)
ps: 如果使用 cvs version需先執行 make -f Makefile.dist 以產生 configure 檔
接著就可以執行他了。
kooldock &
你就可以在桌面下方看到如下圖的樣子

其實他會在 ~/.kde/share/apps/下
產生 /kooldock/menu的目錄
目錄下產生01_XXX 02_XXX .....的檔案,那就是底下icon的設定檔,可以直接編輯,或透過kooldock提供的管理程式來做。
但是,使用中文時就會出現問題了。如同上圖一般。
修正中文問題 ( 我是在 zh_TW.UTF-8 環境下)
我在kooldock的source code中找到了 item.cpp
大約在 79 行處,將code 由
name = line.mid(5).stripWhiteSpace();
改為
name = QString::fromUtf8(line.mid(5).stripWhiteSpace().ascii());
即可解決,原因是 QFile::readLine()函數(Qt3.3.3)將UTF-8編碼的中文檔案讀進來時造成的,我只是利用ascii()及QString::fromUtf8()將他轉成正確的編碼。
見下圖:

未來還可以改進的地方
1. 由程式可以看出,kooldock所用的顯示字串是name=XXXX 中的 XXXX。比較好的作法是,根據目前的語系環境決定,像是我在zh_TW的環境下,就取用name[zh_TW]=YYYY中的YYYY。
2. 滑鼠由上而下進入kooldock時,上面的字會時顯示不出來。
3. 穩定性也是可以加強的地方。
1 迴響 |
0 引用


