パスワードを忘れた? アカウント作成
661680 journal

kzkの日記: からんば。(KDEの見た目を改善しませう) 7

日記 by kzk

今日はKarambaについて探索してみます。
実は前からちょっと気になっていた。
(kinnekoさんの日記で出て来たのが直接の原因であるけれど)

* 本家URL
- Karamba
- SuperKaramba

まずはSuperKarambaとKarambaの関係。
AUTHORファイルを見ればSuperKarambaはKarambaに機能を追加したものであると予想が着いた。(webサイトには明記してないな)
他にもSuperSuperKarambaなんてのも有る。(超スーパーウルトラマンみたいだ)
kde-look.orgではMegaSuperKarambaなんてジョーク言ってる輩ももいる。

一応以下ではKarambaはSuperKarambaを指していると考えて下さい。
現在主流っぽいので。

では開始。

「KarambaはKDEの見た目拡張ソフトである。」

そう言われてもイメージが湧かないので、kde-look.orgのKarambaSectionを見て頂きたい。
Karambaでどういうことができるのかを画像で鮮明につかめると思う。
@see

OSxライクなドックバーやcpuの状態の表示etc.
#OSxのドックバーに似てるとかで前Winのソフトが訴えられてなかったでしたっけ?
#まぁその辺は気にせず。

使い方は簡単。
Karambaのインストール後、getして来たブツをインストールするのみ。
./configureの前に make -f Makefile.cvs がいるのがちょっと注意。

/* karamba install */
$cd superkaramba
$make -f Makefile.cvs
$./configure
$make
$make install

/* theme install */
@see

/* 他のブツ */
それぞれのドキュメント参照

enjoy Karamba!

一般ユーザーの方はこの辺でさようならで御座います。

-----------------------------------------------------------------------

さてかなり気になる内部解析をしてみようか。
始めの対象はkaramba-0.17。オリジナルの方。簡単な方。

さて解析開始だ。
Rubyソースコード完全解析って本でディレクトリ構造とヘッダファイルが重要だみたいなのを読んだので実践してみよう。
と思ったがKDevelopを使っているので核になるクラスは大方プロジェクト名を小文字にしたクラスだなという訳でkaramba.h, karamba.cppを拝見。

ふむふむ。
面白くねえな。
Karamba起動時に与えたファイルを一行一行読み込んで独自の文法にそってパースし、独自拡張したWidgetにその設定を渡していくのみ。

次。SuperKaramba。versionは0.32b。
独自拡張Widgetの種類が増え、元々KarambaにあるWidgetの機能拡張が施されている。
本質は変わっていない。
劇的なのはPythonで色々できるようになっていること。
これは面白そうである。

exampleディレクトリを見ればサンプルがついているが、karamba側でC++で定義した関数を呼び出せるだけっぽい。(だけとはいうが結構強力)
実装方法はPython/C APIというものを用いている。
PythonからC or C++を呼び出せるらしい。
参考URL : @see

見てると結構簡単そうな感じだ。
しかし他言語を組み込むってのはもっと難しいと思ってたが意外に簡単そうだ。
ちと感動。

最後に、Themeを作成してみたいという方の為の情報は↓。
@see

-----------------------------------------------------------------------

お、RssSensorなるものがある。
これは実装が気になるな。
自分にとってはタイムリーなネタであるし。

ネットから取って来るのはKIO::NetAccessを用いている。
カスだな(おぃおぃ)
しかしQDomを用いたRSSのパース部分はかなり簡潔だ。

頂き(さんま風に)。

-----------------------------------------------------------------------

「見た目拡張」ってのは語弊がある気がするなぁ。
「拡張Widgetの提供」とかの方がよいのかもしれない。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

コンピュータは旧約聖書の神に似ている、規則は多く、慈悲は無い -- Joseph Campbell

読み込み中...