<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-9113038</id><updated>2011-04-21T20:50:32.689+02:00</updated><title type='text'>Marc Cramdal's blog</title><subtitle type='html'>This blog is about my work on kde development.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9113038.post-115727490821106872</id><published>2006-09-03T11:08:00.000+02:00</published><updated>2006-09-03T11:15:08.223+02:00</updated><title type='text'>Syntax Highlighting update</title><content type='html'>I always find new wonders in KDE.&lt;br /&gt;&lt;br /&gt;Did you know that in Kate configuration, you can update the Syntax Hightlighting. It's easy as pie. Just go in Kate settings, then Editor, then Hightlighting. Once there, you have a download button. A dialog lists then the different rules and automaticaly detects the new ones.&lt;br /&gt;&lt;br /&gt;I don't know what I really updated but it's really nice :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-115727490821106872?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/115727490821106872/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=115727490821106872' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/115727490821106872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/115727490821106872'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2006/09/syntax-highlighting-update.html' title='Syntax Highlighting update'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-115254285040962710</id><published>2006-07-10T16:43:00.000+02:00</published><updated>2006-07-10T16:52:35.153+02:00</updated><title type='text'>Kopete countdown script</title><content type='html'>Today is my first holiday day. So I wanted to have a countdown for my away message showing the time left before my holidays and then a nice "Vacances !!!!" (it's holiday in french) message. &lt;br /&gt;&lt;br /&gt;To achieve this, I just wrote a little Ruby script &lt;a href="http://marccramdal.blogspot.com/2006/06/kopete-scripting.html"&gt;this time&lt;/a&gt;. It's the first time I write such a big (!) Ruby script and it's very easy with &lt;a href="http://www.ruby-doc.org/docs/ProgrammingRuby/"&gt;some help&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So this is the result :&lt;br /&gt;&lt;center&gt;&lt;a href="http://imageshack.us"&gt;&lt;img src="http://img147.imageshack.us/img147/4751/temp28yw.png" border="0" width="211" alt="Image Hosted by ImageShack.us" /&gt;&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;And below you can find the script.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#!/usr/bin/ruby&lt;br /&gt;&lt;br /&gt;require "time"&lt;br /&gt;&lt;br /&gt;###### CHANGE SETTINGS HERE ######&lt;br /&gt;# Can be any valid date time of the type : Wed Apr 09 08:56:04&lt;br /&gt;time0 = String "15:00" &lt;br /&gt;&lt;br /&gt;# Message before event occurs, use %% to put the number of hours left&lt;br /&gt;message_before = String "%% heures avant (ip)"&lt;br /&gt;&lt;br /&gt;# Message after event occurs. Same use of %% here. It will be a positive number of hours.&lt;br /&gt;message_after = String "Vacances !!!!"&lt;br /&gt;&lt;br /&gt;# Update the message every sleep_time seconds&lt;br /&gt;sleep_time = Integer 60&lt;br /&gt;#######&lt;br /&gt;&lt;br /&gt;target = Time.parse(time0)&lt;br /&gt;&lt;br /&gt;while true&lt;br /&gt; current = Time.new&lt;br /&gt; difference = target - current&lt;br /&gt; hours = (difference.abs / 3600).floor;&lt;br /&gt; minutes = ((difference.abs - hours*3600)/60).floor&lt;br /&gt; &lt;br /&gt; # Format the number of hours left&lt;br /&gt; time_left = String(hours) + ":" + sprintf("%02d",minutes)&lt;br /&gt;&lt;br /&gt; if difference &gt; 0 # If the event isn't past&lt;br /&gt;  `dcop kopete KopeteIface setAway "#{message_before.sub("%%", time_left)}" false`&lt;br /&gt; else&lt;br /&gt;  `dcop kopete KopeteIface setAway "#{message_after.sub("%%", time_left)}" false`&lt;br /&gt;  break&lt;br /&gt; end&lt;br /&gt; &lt;br /&gt; sleep sleep_time;&lt;br /&gt; &lt;br /&gt;end &lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-115254285040962710?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/115254285040962710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=115254285040962710' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/115254285040962710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/115254285040962710'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2006/07/kopete-countdown-script.html' title='Kopete countdown script'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-115116984301683762</id><published>2006-06-24T19:13:00.000+02:00</published><updated>2006-06-24T19:29:38.490+02:00</updated><title type='text'>Kopete Scripting</title><content type='html'>Yes, it is possible to write scripts for Kopete. Kopete has like any other KDE application a nice DCOP interface.&lt;br /&gt;&lt;br /&gt;Here are two examples. The scripts are probably not nice but I never really learnt how to make scripts (I usually open a "how to write bash/perl scripts"-webpage while I'm writing a script ;-))&lt;br /&gt;&lt;br /&gt;First, an easy one; it output a fortune in Kopete away message:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;dcop kopete KopeteIface setAway "`fortune`" false&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The next one, using perl. Well, I'm using Gentoo. And I often install some software using emerge. When you run emerge in Konsole, the title bar change to something like "emerge (9 on 43) kde-base/ark-3.0.1". So this script will run in background and every minute (sleep 60), it will cycle through konsole windows and see if one has this kind of title. If true, it outputs it into Kopete away message.&lt;br /&gt;&lt;br /&gt;With this, you can watch your compilations when you're not home, without a ssh server, just using your jabber account ;-)&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#!/usr/bin/perl&lt;br /&gt;my @konsoleInstances;&lt;br /&gt;my $awayMessage;&lt;br /&gt;&lt;br /&gt;while( true )&lt;br /&gt;{&lt;br /&gt;    @konsoleInstances=`dcop | grep konsole`;&lt;br /&gt;    &lt;br /&gt;    foreach $instance (@konsoleInstances)&lt;br /&gt;    {&lt;br /&gt; $instance =~ s/\n//;&lt;br /&gt; &lt;br /&gt; $awayMessage=`dcop $instance konsole-mainwindow#1 caption`;&lt;br /&gt;&lt;br /&gt; if ($awayMessage =~ /.*emerge.*/)&lt;br /&gt; {&lt;br /&gt;     system("dcop kopete KopeteIface setAway \"$awayMessage\" false");&lt;br /&gt;     last;&lt;br /&gt; }&lt;br /&gt;     }&lt;br /&gt;    system("sleep 60");&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Using Kicker's Quickbrowser applet, you can quickly access your scripts to renew your fortune when you are bored with the current one :&lt;br /&gt;&lt;center&gt;&lt;a href="http://imageshack.us"&gt;&lt;img src="http://img45.imageshack.us/img45/8036/kopetescripts1cu.png" border="0" width="334" alt="Image Hosted by ImageShack.us" /&gt;&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;I'm sure there are many other possibilities and I'm sure that some of you already wrote some scripts. Feel free to share !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-115116984301683762?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/115116984301683762/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=115116984301683762' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/115116984301683762'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/115116984301683762'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2006/06/kopete-scripting.html' title='Kopete Scripting'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-114858527818535941</id><published>2006-05-25T21:23:00.000+02:00</published><updated>2006-05-25T21:27:58.196+02:00</updated><title type='text'>Kubuntu shipits</title><content type='html'>Maybe all of you already know it but I just discovered that &lt;a href="https://shipit.kubuntu.org/"&gt;free CD shipits are finally available&lt;/a&gt; for Kubuntu 6.06LTS. &lt;br /&gt;&lt;br /&gt;I think it's a nice way to discover KDE or make your friends discover it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-114858527818535941?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/114858527818535941/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=114858527818535941' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/114858527818535941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/114858527818535941'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2006/05/kubuntu-shipits.html' title='Kubuntu shipits'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-113620780411006829</id><published>2006-01-02T14:15:00.000+01:00</published><updated>2006-01-02T14:23:12.093+01:00</updated><title type='text'>Kopete supports Adium styles</title><content type='html'>Hello !&lt;br /&gt;&lt;br /&gt;I wanted to show you some screenshots of what &lt;a href="http://mlarouche.blogspot.com/2005/12/kopete-xhtmlcss-engine-news.html"&gt;Michaël recently added to Kopete&lt;/a&gt; : Kopete now supports the &lt;a href="http://www.adiumxtras.com/index.php?a=search&amp;cat_id=5"&gt;Adium styles&lt;/a&gt; (all styles I tested where quite perfectly rendered by Kopete !)&lt;br /&gt;&lt;br /&gt;Chatwindow example :&lt;br /&gt;&lt;table width="100%"&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td align="center"&gt;&lt;a href="http://img491.imageshack.us/my.php?image=temp11ns.png" target="_blank"&gt;&lt;img src="http://img491.imageshack.us/img491/5387/temp11ns.th.png" border="0" alt="Free Image Hosting at www.ImageShack.us" class="showonplanet"/&gt;&lt;/a&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;a href="http://img493.imageshack.us/my.php?image=temp38kf.png" target="_blank"&gt;&lt;img src="http://img493.imageshack.us/img493/5922/temp38kf.th.png" border="0" alt="Free Image Hosting at www.ImageShack.us" class="showonplanet" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;The style configuration panel. On the left, you select the style, on the right, the preview and at the bottom, some variants of the style. Variants are some different color sets for the same style.&lt;br /&gt;&lt;br&gt;&lt;center&gt;&lt;a href="http://img491.imageshack.us/my.php?image=temp27mr.png" target="_blank"&gt;&lt;img src="http://img491.imageshack.us/img491/478/temp27mr.th.png" border="0" alt="Free Image Hosting at www.ImageShack.us" class="showonplanet" /&gt;&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;Another great advantage of this kind of style is that it's very quick to be rendered (it uses  &lt;a href="http://wiki.kde.org/tiki-index.php?page=Kopete%20XHTML%2BCSS"&gt;XHTML and CSS&lt;/a&gt; instead of XSLT parsing)&lt;br /&gt;&lt;br /&gt;To try it, you have to check Kopete 0.12 branch in branches/work/kopete.&lt;br /&gt;&lt;br /&gt;Thanks Michaël :-)&lt;br /&gt;&lt;br /&gt;btw, Happy new year!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-113620780411006829?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/113620780411006829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=113620780411006829' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/113620780411006829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/113620780411006829'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2006/01/kopete-supports-adium-styles.html' title='Kopete supports Adium styles'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-113550873667561208</id><published>2005-12-25T12:02:00.000+01:00</published><updated>2005-12-25T12:08:39.090+01:00</updated><title type='text'>Merry Christmas !</title><content type='html'>Merry Christmas to you, KDE Developer or User (if you aren't, Merry Christmas too)&lt;br /&gt;&lt;br /&gt;My little Christmas present is &lt;a href="http://wiki.kde.org/tiki-index.php?page=Kopete+Webcam+Support"&gt;this little draft&lt;/a&gt; about Kopete Webcam Support. It's far from being complete, so feel free to edit, modify or whatever else but it should help the user and &lt;a href="http://bram85.blogspot.com/2005/12/nice-features-no-docs.html"&gt;Bram&lt;/a&gt; ;-) (who is imho right on this point; I have written this little howto because it took me some time to find how to make my noname webcam work).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-113550873667561208?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/113550873667561208/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=113550873667561208' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/113550873667561208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/113550873667561208'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2005/12/merry-christmas.html' title='Merry Christmas !'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-113095983486059177</id><published>2005-11-02T20:27:00.000+01:00</published><updated>2005-11-02T20:33:37.503+01:00</updated><title type='text'>Superkaramba edit field</title><content type='html'>Hello !&lt;br /&gt;&lt;br /&gt;It's the first time I see a &lt;a href="http://www.kde-look.org/content/show.php?content=30887"&gt;superkaramba theme&lt;/a&gt; using the "new" edit field available in Superkaramba. That's nice because this feature has been imho forgotten. Now we are maybe going to see new Superkaramba themes like a desktop translator or whatever you want !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-113095983486059177?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/113095983486059177/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=113095983486059177' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/113095983486059177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/113095983486059177'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2005/11/superkaramba-edit-field.html' title='Superkaramba edit field'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-112945285239145862</id><published>2005-10-16T10:45:00.000+02:00</published><updated>2005-10-16T10:54:12.400+02:00</updated><title type='text'>Select image dialog and Jabber avatars</title><content type='html'>I'm just wondering whether I'm the only one or not to dislike the idea of selecting only square pictures for contacts photos in Kopete or in KAdressbook. In Kopete, I would like to have the option "Resize image to n x n" even if the original photo isn't square. In KAddressbook, I just don't see why there is this constraint on the photo size. But maybe I'm missing something ? What is your opinion on this question ;-) ?&lt;br /&gt;&lt;br /&gt;But it's cool that Kopete trunk supports Jabber avatars now !!! Another thing which will allow some migrations from MSN to Jabber I hope.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-112945285239145862?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/112945285239145862/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=112945285239145862' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/112945285239145862'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/112945285239145862'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2005/10/select-image-dialog-and-jabber-avatars.html' title='Select image dialog and Jabber avatars'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-112577756987821818</id><published>2005-09-03T21:56:00.000+02:00</published><updated>2005-09-03T22:00:06.656+02:00</updated><title type='text'>Save your bug query</title><content type='html'>I just discovered that I was able to save my bug queries. As you create a &lt;a href="http://bugs.kde.org/query.cgi"&gt;complex query&lt;/a&gt; in the KDE Bug tracking system, you can give it a name and save it and even put it in your page footer. &lt;br /&gt;&lt;br /&gt;Now I have Kopete in my page footer and I can find all &lt;a href="http://bugs.kde.org/buglist.cgi?short_desc_type=allwordssubstr&amp;short_desc=&amp;long_desc_type=allwordssubstr&amp;long_desc=&amp;product=kopete&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;bugidtype=include&amp;bug_id=&amp;votes=&amp;emailassigned_to1=1&amp;emailtype1=substring&amp;email1=&amp;emailassigned_to2=1&amp;emailreporter2=1&amp;emailcc2=1&amp;emailtype2=substring&amp;email2=&amp;changedin=&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;order=Reuse+same+sort+as+last+time&amp;cmdtype=doit&amp;newqueryname=&amp;namedcmd=Kopete"&gt;kopete  bugs&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;Hey, you can even click the previous link to find some bug to fix in Kopete ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-112577756987821818?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/112577756987821818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=112577756987821818' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/112577756987821818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/112577756987821818'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2005/09/save-your-bug-query.html' title='Save your bug query'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-112566698772342235</id><published>2005-09-02T15:16:00.000+02:00</published><updated>2005-09-02T17:35:45.283+02:00</updated><title type='text'>Kopete debugging</title><content type='html'>&lt;p style="text-align:justify;text-indent:10px"&gt;I'm trying to debug some code for Kopete but it is awfully difficult (for me) because there are a lot of functions calls and I know which function is called, but not which function called. Moreover, I have not the courage to learn how to use gdb and kdevelop debugger runs the bad kopete (the not-installed one). I have discovered a tool, thanks to Olivier Goffart, kdebugdialog which allow to change the number of output you want to get (ie. I can get only Jabber plugin output, etc.) And it works for all KDE applications using kdDebug. Just try it and you will see how nice this tool is :-)&lt;/p&gt;&lt;br /&gt;&lt;p style="text-align:justify;text-indent:10px"&gt;Finally, I succeeded in solving the bug :-). It prevented the user to send a message to a group containing Jabber contacts.&lt;/p&gt;&lt;br /&gt;&lt;p style="text-align:justify;text-indent:10px"&gt;Some days ago, Olivier closed an annoying bug: Statistics plugin and History plugin didn't appear in contact list context menu on some Kopete installation (well, all my friend's installations ;-)). So in KDE 3.5 you will be able to see the new history dialog (cf. previous posts) and give us some feedback (fulltext search, history sorted by date; I think it's the best history browser ever seen ;-)) and to test statistics plugin.&lt;/p&gt;&lt;br /&gt;&lt;p style="text-align:justify;text-indent:10px"&gt;I just saw that I had a new tool on this blog called "Show word verification for comments". I have activated it and I hope that it will avoid some unwanted spam comments in my blog. You will just have to type a word displayed on a picture before posting your comment.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-112566698772342235?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/112566698772342235/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=112566698772342235' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/112566698772342235'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/112566698772342235'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2005/09/kopete-debugging.html' title='Kopete debugging'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-112185792827222177</id><published>2005-07-20T12:53:00.000+02:00</published><updated>2005-07-23T08:36:51.113+02:00</updated><title type='text'>Thoughts about Plasma : the ALI</title><content type='html'>&amp;nbsp;&amp;nbsp;&amp;nbsp;Hello,&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   I'm a bit involved on the kde-artists.org and it is really interesting to speak and work with people who want to make something really great !&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;b&gt;&lt;font color="red"&gt;Disclaimer: this blog is not any official decision from KDE developers, it's only my personal thoughts about a new application launcher.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;b&gt;The idea&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   I just wanted to blog about the &lt;acronym title="Application Launcher Interface"&gt;ALI&lt;/acronym&gt;. First, what is the ALI, it's just a little acronym for &lt;i&gt;Application Launcher Interface&lt;/i&gt;, the future remplacement for KMenu. KMenu is currently the way we are used to launch applications. It's the way you use to browse your applications, to see which ones are on your computer. It's the way new KDE users use to discover these applications. But... it's a bit cluttered.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   Here is my idea (one of the many ideas on kde-artists :-)) to replace this old KMenu. It comes from the idea that it should be the more clear and light as possible. Maybe it looks like KMenu but I think it's more powerfull. First, the mockup :&lt;br /&gt;&lt;center&gt;&lt;a href="http://img243.imageshack.us/my.php?image=ali34go.png" target="_blank"&gt;&lt;img class="showonplanet" src="http://img243.imageshack.us/img243/6526/ali34go.th.png" border="0" alt="Free Image Hosting at www.ImageShack.us" /&gt;&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   This kind of plasmoid is showing on the top of the screen, over your windows, as you press some key, or click some button, or make a mouse gesture, or say "ALI" ... whatever you want (but I think some keyboard shortcut is cool). As you release the key, it disappears with some blending effect for instance. In the first column, you see the main categories. In the second one, the subcategories. In the last one, the applications. If there are not subcategories, the applications go obviously in the second column.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   First, it's bigger. It's easier to see. Maybe you have to move your mouse a bit further, but the entries are bigger and you won't have to be so precise as currently in KMenu, which imo takes more time than moving the mouse a bit further.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   Then, you can't start some applications at the same time. Currently, you open KMenu, browse a bit through it, start an application. If you want to start a second application, you have to reopen it. In this new ALI, you will have to keep the key pressed and you can start as many applications as you want.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   Another (great ?) feature I wish we could have in it: in the second column, you see &lt;i&gt;Mail Client&lt;/i&gt;. If you put your mouse over it, it open the next column. But if you double-click, it starts the default mail client (here KMail).&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   Last but not least, at the bottom right, you have Konqi. It shows you a little panel with some information. Here he says that KMail is your default mail client. But he could give you the number of time you launch the selected application, the location of the application binary (hey, do you have a quick way to find the application binary name in KMenu; I just found that I had to edit KMenu to look at this, annoying, no ? ;-))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   Finally, just note how the selected menu items are connected between each other (like in late BeOS beta Dano). Amaury call this "visual coherence". Indeed, you see your way in the menu and it helps the menu clarity.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;b&gt;   About filtering in the ALI&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   I don't think it is required since you will have a search tool on the desktop using Tenor framework. In this search tool, you could just type &lt;code&gt;app:mail&lt;/code&gt; and it will shows up all the mail-related applications, maybe in the style of the following mockup:&lt;br /&gt;&lt;img class="showonplanet" src="http://img346.imageshack.us/img346/2519/searchdock66qq.png" /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;      (thanks Amaury for the mockup)&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   &lt;b&gt;About &lt;/b&gt;&lt;span style="font-style: italic;"&gt;A&lt;/span&gt;&lt;b&gt;LI&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   I think it's important to note that this &lt;i style="font-weight: bold;"&gt;A&lt;/i&gt;LI is an &lt;i style="font-weight: bold;"&gt;A&lt;/i&gt;pplication launcher. So I don't think that we have to put in it some things like your contacts, your current appointements etc. Plasma will include some other plasmoids/menus more task oriented for this. &lt;span style="font-weight: bold; font-style: italic;"&gt;A&lt;/span&gt;LI just is about launching &lt;span style="font-weight: bold; font-style: italic;"&gt;A&lt;/span&gt;pplications ;-)&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;   So it is my proposal for the new ALI :-). If you have ideas (especially innovative ones), feel free to go on kde-artists and explain it !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-112185792827222177?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/112185792827222177/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=112185792827222177' title='12 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/112185792827222177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/112185792827222177'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2005/07/thoughts-about-plasma-ali.html' title='Thoughts about Plasma : the ALI'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>12</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-111737182664329070</id><published>2005-05-29T14:40:00.000+02:00</published><updated>2005-05-29T15:03:46.650+02:00</updated><title type='text'>Kopete history</title><content type='html'>Hello !&lt;br /&gt;&lt;br /&gt;Here is my recent work : &lt;br /&gt;&lt;br /&gt;First, I have been working on the new &lt;b&gt;Add applet&lt;/b&gt; dialog, as Aaron kindly explained in his blog. The result is the following :&lt;br /&gt;&lt;center&gt;&lt;img src="http://img134.echo.cx/img134/1907/addapplet7dy.png" border="0" class=showonplanet/&gt;&lt;br&gt;&lt;small&gt;Nuvola icon theme, filtering in action&lt;/small&gt;&lt;/center&gt;&lt;br /&gt;Now Aaron has added Drag&amp;Drop, support for all kind of applets (including Menu buttons).&lt;br /&gt;&lt;br /&gt;But I have been working on Kopete history too. The history dialog wasn't usable at all : you could only go previous and next, by steps of N messages. Now, there is a list on the left with the days for which there is log for the selected contact. When you click on the day, you get the log for all the day. You can list all your history by selecting &lt;i&gt;All&lt;/i&gt; in the combobox.&lt;br /&gt;&lt;br /&gt;But that's not all ! You can search through your history : just enter a word, click search and the date list will pe populated by the days for which there is a result ; You can search only for one contact, or through all your history !&lt;br /&gt;&lt;center&gt;&lt;img src="http://img134.echo.cx/img134/5170/history88ab.png" class=showonplanet border="0"&gt;&lt;br&gt;&lt;small&gt;A debugging chatsession with a buddy, search in action&lt;/small&gt;&lt;/center&gt;&lt;br /&gt;I think this dialog could be much nicer, but I'm not an usability expert !&lt;br /&gt;&lt;br /&gt;Kopete has never been so cool =)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-111737182664329070?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/111737182664329070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=111737182664329070' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/111737182664329070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/111737182664329070'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2005/05/kopete-history.html' title='Kopete history'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-110469865284630071</id><published>2005-01-02T21:25:00.000+01:00</published><updated>2005-01-02T21:44:12.846+01:00</updated><title type='text'>Kopete statistics, predictions</title><content type='html'>I have a good news and a bad one :&lt;br /&gt;&lt;br /&gt;The good one : thanks to JohnFlux I started to write the code for predictions. Currently, it is able to search for centroids (= time of the day where events cluster). Seems to be nothing important, but it allows to get the average time where users use to change status (only Online now).&lt;br /&gt;&lt;br /&gt;So you get something like this now in the statistics dialog :&lt;br /&gt;&lt;code&gt;&lt;br /&gt;12:22&lt;br /&gt;19:33&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Your contact goes only at about 12:22 and 19:33...&lt;br /&gt;&lt;br /&gt;You will easily understand why such stats are only good when your contact have a stable, predictive behaviour. So I still need to compute the standard deviation to get the confidence we can have in the prediction.&lt;br /&gt;&lt;br /&gt;The bad one, now : I'm back to school...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-110469865284630071?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/110469865284630071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=110469865284630071' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110469865284630071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110469865284630071'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2005/01/kopete-statistics-predictions.html' title='Kopete statistics, predictions'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-110462071719139628</id><published>2005-01-01T23:58:00.000+01:00</published><updated>2005-01-02T00:05:17.190+01:00</updated><title type='text'>Kopete Statistics, Chapter 5</title><content type='html'>Hello,&lt;br /&gt;&lt;br /&gt;I would like to share this screenshot : it is the latest feature I added : ability to ask questions to the database. Here you select a day, maybe a time (depends on whether the question requires it), you select the question and click on Ask. You get an answer below.&lt;br /&gt;&lt;br /&gt;Currently there are only two questions : &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;contact status at the date and time (gives the contact status at ...)&lt;br /&gt;&lt;li&gt;main status at date (gives the most used status for the given day)&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="http://img134.exs.cx/img134/1610/screenphoto23fw.png" width="549" height="599" alt="Image Hosted by ImageShack.us" class="showonplanet"/&gt;&lt;br /&gt;&lt;br /&gt;And finally,&lt;br /&gt;&lt;center&gt;&lt;font color="red" size="15"&gt;Happy New Year !&lt;/font&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-110462071719139628?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/110462071719139628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=110462071719139628' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110462071719139628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110462071719139628'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2005/01/kopete-statistics-chapter-5.html' title='Kopete Statistics, Chapter 5'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-110444694808051541</id><published>2004-12-30T23:37:00.000+01:00</published><updated>2004-12-31T00:10:23.006+01:00</updated><title type='text'>Kopete Statistics, Chapter 4</title><content type='html'>My plugin is now fully in CVS. If you download CVS and compile Kopete, you should compile it too.&lt;br /&gt;&lt;br /&gt;I added two features :&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;One very little : it gives the last time the contact was present (it means Online, or Away, but there)&lt;br /&gt;&lt;li&gt;I have added the DCOP interface which JohnFlux was asking in the comments of my last blog entry. So now, you have the following :&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;dcopStatus&lt;/b&gt; gives the status for a given KABC contactID at a given date and time.&lt;br /&gt;&lt;li&gt;&lt;b&gt;dcopWas&amp;lt;STATUS&amp;gt;&lt;/b&gt; which says true or false if the status is STATUS or not at a given date and time.&lt;br /&gt;&lt;li&gt;&lt;b&gt;dcopStatisticsDialog&lt;/b&gt; which shows the stats.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;I need your suggestions to add more stats, more DCOP calls. My imagination is not so big.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-110444694808051541?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/110444694808051541/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=110444694808051541' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110444694808051541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110444694808051541'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2004/12/kopete-statistics-chapter-4.html' title='Kopete Statistics, Chapter 4'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-110389724447139422</id><published>2004-12-24T14:52:00.000+01:00</published><updated>2004-12-24T15:09:30.376+01:00</updated><title type='text'>My CVS Account and kopete statistics </title><content type='html'>I'm happy : I now have my KDE CVS access. Yes, one would say that it is not difficult to get one, but nevertheless, I'm happy.&lt;br /&gt;&lt;br /&gt;Kopete statistics plugin seems to work and I like looking at this stats. Want to know if X will be online today at a given hour ? Open the statistics dialog, and look at the chart. However there are no predictions. I think this is a bit more difficult and I will maybe take some time to release such code.&lt;br /&gt;&lt;br /&gt;Last, you have to have linked your contacts to KABC because my plugin requires an identifiant for the contact to store it in the database, and Kopete metacontacts only have one if they're in KABC.&lt;br /&gt;&lt;br /&gt;I'm always asking myself if a database cleaner is required. I'm using this plugin for about two months now and database takes 315 Ko.&lt;br /&gt;&lt;br /&gt;At this time, my first commit was importing into CVS my statistics plugin. So now statistics plugin is available on CVS. Feel free to test it. I would enjoy some feedback :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-110389724447139422?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/110389724447139422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=110389724447139422' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110389724447139422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110389724447139422'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2004/12/my-cvs-account-and-kopete-statistics.html' title='My CVS Account and kopete statistics '/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-110163045718755772</id><published>2004-11-28T08:50:00.000+01:00</published><updated>2004-11-28T09:37:30.780+01:00</updated><title type='text'>Kopete statistics, chapter 3</title><content type='html'>I have made some progress this week that I can share with you. I have tried to take in account your comments.&lt;br /&gt;&lt;br /&gt;First, new things :&lt;br /&gt;- Plugin can now display statistics &lt;b&gt;for a day&lt;/b&gt; of the week or &lt;b&gt;a month&lt;/b&gt; (see screenshot). There is always a &lt;b&gt;General&lt;/b&gt; page which shows global informations on the contact.&lt;br /&gt;- Charts are displayed vertically.&lt;br /&gt;- Hours are displayed following the HH:mm:ss format. No more 1,0003 hours ;-)&lt;br /&gt;- More descriptive tooltips when you go over a chart. &lt;br /&gt;&lt;br /&gt;Still to do :&lt;br /&gt;- lilachaze has began to work on the Unknown-Offline status, so in a near future, Offline status should be well-logged.&lt;br /&gt;- Maybe a /stat command to display chat in the chatwindow ?&lt;br /&gt;- General statistics for all contacts, and ability to ask questions : for instance, &lt;i&gt;Who is generally online on thursdays (between 2pm and 4pm) ?&lt;/i&gt;&lt;br /&gt;- A &lt;b&gt;database cleaner&lt;/b&gt; : when a contact goes Offline for two seconds, then back Online, it is rather stupid to log this. First, it overloads database. Then it will give false informations for the previsions. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Screenshots:&lt;/b&gt;&lt;br /&gt;&lt;img src="http://uploads.savefile.com/redir/36194.png" class="showonplanet"&gt;&lt;br /&gt;&lt;i&gt;(for planetkde.org readers, there is a second screenshot, but I have not put it on planet because two big screenshots, that's huge :-))&lt;/i&gt;&lt;br /&gt;&lt;img src="http://uploads.savefile.com/redir/36197.png"&gt;&lt;br /&gt;&lt;br /&gt;I'm awaiting your comments ! If i'm boring you with my blog, say it too :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-110163045718755772?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/110163045718755772/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=110163045718755772' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110163045718755772'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110163045718755772'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2004/11/kopete-statistics-chapter-3.html' title='Kopete statistics, chapter 3'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-110098986550392227</id><published>2004-11-20T23:13:00.000+01:00</published><updated>2004-11-20T23:35:05.476+01:00</updated><title type='text'>Kopete statistics plugin, a screenshot</title><content type='html'>On screenshot is clearer than a long text. Here is one with some explanations.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://maccramdal.port5.com/snap5.png" class="rapemewithachainsawthanks"&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;First statistics group : some general times. How many time Kopete has seen this contact (it means online or offline or away). How many time Kopete saw this user Online, etc.&lt;br /&gt;&lt;li&gt;Then, average message length and the time between two messages. Easy to understand ;-)&lt;br /&gt;&lt;li&gt;Then, charts. The first in black is the repartition by hours of the "seen" time. Here Kopete saw this contact at 20:00 16% of the &lt;b&gt;total seen time&lt;/b&gt;. Kopete saw him &lt;b&gt;Online&lt;/b&gt; 10% of the &lt;b&gt;total seen time&lt;/b&gt; etc. When you go over the bars which are simple HTML &amp;lt;hr&amp;gt;, you get a tooltip.&lt;br /&gt;&lt;li&gt;Then you see the different status this user has taken today. You can check quickly when he was Online with the blue lines.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;The log tab is only the database fields in a listview. &lt;br /&gt;&lt;br /&gt;A word on "predictions" :&lt;br /&gt;The next thing I want to implement is a prediction saying when the user will probably go Online or Offline. For Online it is not that much difficult. For Offline, I'm awaiting lilachaze's patch ;-). It will be really great then.&lt;br /&gt;&lt;br /&gt;I hope you like it :-) Feel free to comment (i'm not sure if comments works well but they should). Last but not least, really sorry for all my mistakes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-110098986550392227?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/110098986550392227/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=110098986550392227' title='20 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110098986550392227'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110098986550392227'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2004/11/kopete-statistics-plugin-screenshot.html' title='Kopete statistics plugin, a screenshot'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>20</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-110079227969206703</id><published>2004-11-18T15:14:00.000+01:00</published><updated>2004-11-19T13:24:23.656+01:00</updated><title type='text'>Kopete statistics plugin, chapter 2</title><content type='html'>I finally found the solutions for a recurrent crash in my plugin, and it so stupid that I will not explain this ;-)&lt;br /&gt;&lt;br /&gt;Now you can see the average length of your contact's messages, and the time he takes to type between to messages. Not very useful for now but could be used maybe in the future to perform some predictions.&lt;br /&gt;&lt;br /&gt;Also, I added a new kind of stat on a friend's request: in the stats view, you can now view when your contact was online today. So, if you were not in front of your computer, you can see if X was online from 13:00 to 14:33:12 or so ...&lt;br /&gt;&lt;br /&gt;It still have some issues, things to do :&lt;br /&gt;- Check when contacts are offline. For this Unknown status is required to be default when you are not connected. lilachaze will maybe do the change but I have to wait for this. That's not a big issue, but I have to wait.&lt;br /&gt;- Predictions: how to do theses ? What kind of predictions ? &lt;br /&gt;&lt;a href="http://www.acmqueue.com/modules.php?name=Content&amp;pa=showpage&amp;pid=90&amp;page=4"&gt;This article about IM predictions&lt;/a&gt; is really interesting but it speaks from concept, and not how to do this. I need to find how to manage this, how to do my calculations to provide stats...&lt;br /&gt;&lt;br /&gt;Thus, &lt;b&gt;if you have ideas on this question&lt;/b&gt;, feel free to comment :-)&lt;br /&gt;&lt;br /&gt;I have some little and - I think - great ideas for getting useful informations like trying to search the away status for things like "lunch", "dinner" to get when the users is eating but this is a detail...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-110079227969206703?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/110079227969206703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=110079227969206703' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110079227969206703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110079227969206703'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2004/11/kopete-statistics-plugin-chapter-2.html' title='Kopete statistics plugin, chapter 2'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9113038.post-110045009356666598</id><published>2004-11-14T17:24:00.000+01:00</published><updated>2004-11-14T17:35:29.146+01:00</updated><title type='text'>Kopete Statistics Plugin</title><content type='html'>My current developping is my first serious involvment in KDE. I'm trying to do a Kopete statistics plugin which will be able to do the following :&lt;br /&gt;- Log the changes of status of the contacts. Then save in the database by periods (Contact X was Away from Date1 to Date2). This is works. Has to be improved since there is a problem for knowing when a contact is offline (i would like to check changes from Unknown to Offline and then to Offline to something else, but contacts are Offline as default, when you're not connected, which is, I think, illogical).&lt;br /&gt;- Gather some unuseful small stats (average message length, time between two messages (awareness)) etc. &lt;br /&gt;- Output some predictions. That would be the greater thing of this plugin : I could ask to the plugin, "when do I have the bigger probability to see contact X" for instance and it would answer to me.&lt;br /&gt;&lt;br /&gt;Well, this will go slowly, because I have school, and competitions at the end of the year, but surely.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9113038-110045009356666598?l=marccramdal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marccramdal.blogspot.com/feeds/110045009356666598/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9113038&amp;postID=110045009356666598' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110045009356666598'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9113038/posts/default/110045009356666598'/><link rel='alternate' type='text/html' href='http://marccramdal.blogspot.com/2004/11/kopete-statistics-plugin.html' title='Kopete Statistics Plugin'/><author><name>Marc Cramdal</name><uri>http://www.blogger.com/profile/01692709135007472363</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
