Recent blog entries for munizao

 
.*..*****.
....*...**
.**...**..
.*..*****.
.*.***.***
***.......
.***.....*
****.*.***
.*.*.*.*.*
.**.*...**
F21 I6 L20 N20 P23 T10 U10 V9 W12 X4 Y19 Z12 

This is output from a program I am working on. Currently, it creates a random field and finds the number of each pentomino within. I want to use the pentomino counter to find answers to questions like, "What is the minimal 2-succinct cover of the pentominoes?" See my polyomino cover site if you care to know what that means. No, that's not terminology you'll find anywhere else. If there are real terms better than the ones I made up, I'd like to know.

Bun-Bun's Theatre of Horrors Presents: Tasklist

I've been looking at the tasklist applet since trying out Iain's "tooltip" patch that he mentioned here a bit ago. My first impression on trying it was, "Yuck," (it doesn't follow the tooltip style from my gtk theme, and it displays the tooltip on the wrong part of the screen entirely.) Then I looked at the patch itself and noticed it didn't use a real tooltip but instead makes a halfbaked attempt at drawing a tooltip from scratch.

What could posess someone to not use a real tooltip on the buttons? I began to have the awful suspicion that mere incompetance could not cause such ugliness, but something deeper must have been going on.

And indeed, to my mounting horror as I read the tasklist applet code, I found that there was. The buttons on the tasklist are not real buttons, you see, but facsimiles painted on a larger widget. So of course, they could not have tooltips added to them. Suddenly, seemingly disparate problems I had with tasklist began to make sense. The buttons don't prelight, unlike any other button in any other gtk+ app, because they're not buttons. You can't tab between the buttons to switch windows, because they're not buttons. At the expense of additional code complexity, (to rewrite, (somewhat inadequately,) the bits of gtk+ they chose not to use in the first place,) and loss of functionality, a small amount of memory footprint has been saved.

Now, this might be an understandable mistake, if it had been made absent an example of how to do this right, but the authors not only had the old gnome-pager around, but they were writing it specifically as a replacement. Now, I have heard that the old gnome-pager code was unmaintainable, but that is no reason to replace the design with this monstrosity.

That said, I should thank the tasklist authors for all the hard work that they've put into it, and note that quite a bit of it was done quite well.

Commited my customizable default list enhancement to character picker yesterday. Yeah I know, gnome-applets is in feature freeze, but charpick's uselessness is itself a bug, and officially it is still in alpha, even though it's going into its second stable release soon; (figure that one out.) Kudos to George for adding the panel size/orient hint fixes, and fixing the broken properties stuff, and to the others who have fixed bugs. I've slacked off in developing charpick since I no longer use it myself; (if I had known about xmodmap I'd never have written it in the first place.) But once gtk supports Unicode, charpick will once again become interesting, so I'm keeping it on the back burner.

Front burner projects include my pitch-pipe applet, for which I'll use bse as a backend for producing sound, and a sawmill theme, code-named Xiqatclapgú. Clipboard applet, (and my whole ill-concieved multiple selection + metadata project,) is really a no burner project for the moment, and would probably be an embarassment if it goes into gnome-applets 1.2 as it stands.

I am planning in the long term to play with adding metadata imformation to x selections, and am looking at writing a gedit plugin as a testbed. So to get my bearings I have been playing with the reverse plugin, so that it will reverse just the selection if there is one, rather than the whole buffer. Fun.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!