Older blog entries for caolan (starting at number 176)

Small LibreOffice font dropdown list improvements

The current font drop down had a few small annoyances in it, it previews the font by rendering the font’s name in that font itself, but assumes that the same point size in any given font will have the same baseline and height as the default UI font, which leads to misplaced entries and cut-off text, e.g.

The other gripe is the positioning of the extra preview text used if the font is a symbol font or cannot render its own name, e.g.
the positioning of the symbols of OpenSymbol,

So, now (checked into 3.4) the preview is more carefully vertically centred and scaled to fit if necessary. e.g.

Additionally the extra preview text is right aligned (also checked in for 3.4). For extra cunning (to be checked in today) when the font is tuned for rendering a specific script e.g. Arabic or Telugu, then some sample glyphs from that script are shown as extra preview text, seeing as its not massively useful to get an Latin script preview of the fontname which the massive likelihood is that its not really intended for use for that script, effectively guaranteed in the case that it doesn’t even have sufficient glyphs in it to render its own name. In most cases the string for each script is hopefully that scripts major language’s translation/equivalent to “Alphabet” or some such.

Syndicated 2011-02-09 14:25:00 from Caolan McNamara

Samsung Wave S8500 with Samsung Bada OS

I’ve now received my 20th near identical spam mail about “I recently bought a Samsung Wave S8500 with Samsung Bada OS when will your software be available for it”. I beginning to feel a deep dislike of the device and its OS. A word to the wise, If this is a guerilla marketing attempt, then it’s going badly wrong.

Syndicated 2010-10-21 15:24:23 from Caolan McNamara

STL Performance comparison, gcc 4.5.1 vs STLPort 4.5

Taking Alan Ning STL performance comparison of VC9, VC10 and STLPort I converted it over for Linux (available here) and compared the built in STL of gcc 4.5.1 on x86_64 versus STLPort 4.5 both at -O2. Tests and test-descriptions below are lifted directly from Alan. Times are actually in milliseconds, not seconds, but I didn’t bother regenerating the graph legends.

Lower bars are better, hardware is an i7 with 6 gigs memory.

The test for vector involves three operations – insertion, iterator traversal, and copy.

Native STL consistently faster.

Native STL consistently faster.

The test for string involves three operations – string copy, substring search, and concatenation.

Native STL apparently worse with strings with approx more than 3200 characters.

Native STL typically slower.

The test for map involves insertion, search, and deletion.

Native STL typically worse with maps over 200 elements.

Native STL typically faster.

The test for Deque comes with a twist. The deque is implemented is as a priority queue through make_heap(), push_heap() and pop_heap(). Random items are inserted and removed from the queue upon each iteration.

Native STL faster.

Native STL faster.

In general the gcc STL looks comparatively good with the exception of large maps.

Syndicated 2010-10-12 10:14:09 from Caolan McNamara

Week 1

Cedrics’s LibreOffice first-week codeswarm video is just so cool

Syndicated 2010-10-06 19:49:41 from Caolan McNamara

“the community”

I rather dislike “the community” as a term, it’s too easy to mentally substitute it as other people or useful idiots.

Syndicated 2010-08-27 08:51:00 from Caolan McNamara

Things I dislike debugging

Threads, window managers and complex text layout.

Syndicated 2010-08-12 11:14:15 from Caolan McNamara


callcatcher results for DEV300_m83 records a pleasingly large drop of -220 unused methods as sd reduces by 198 unused methods, while uui and framework drop to 0.

Prepared some patches to make OOo gtk3 ready, though probably best to hold off integrating into say 3.4 until the new build stuff is in place because for vanilla-land we’ll probably want to support building both gtk2 and gtk3 vclplugs side by side which is a bit hacky in the current gtk3 workspace

Syndicated 2010-06-18 08:27:27 from Caolan McNamara

DEV300_m78, lang-tags

DEV300_m78 callcatcher report. Down -10 overall. scripting and vbahelper are unused method free.

Fiddling with BCP 47 style language tags, Some code at here to make a sane mapping from the glibc locale strings to it, along with some mods to hunspell to make that the default dictionary naming scheme. Enchant, OOo and friends would need some tweaking as well to bubble the extra info up. End game would be that the edge case stuff like sr-Latn[-RS] and ca[-ES]-valencia would work out of the box.

fontconfig could do with a bit of love in that direction as well. I see some bogus tags of e.g. sd-in@devanagari in some font .conf files but fontconfig takes a language-territory tag, not @modifiers, so its reading those as sd-in. Ideal situation would be to be able to describe that as sd-Deva[-IN].

glibc has two ber locales, ber_DZ and ber_MA, unfortunately these are collective language codes, which is a real nuisance. In the case of the other collective code of no, i.e. no_NO gettext and others map it to nb_NO, ber_DZ is probably most likely equivalent to kab-DZ, but ber_MA does appear to in practice refer to a collection of three languages. Though for some inscrutable reason (copy and paste) the translations in the locale file are actually Azerbaijani/Azeri

Syndicated 2010-05-21 19:31:55 from Caolan McNamara


DEV300_m77 shows a gratifying large drop in unused writerperfect methods and small drop in sw. Total count now 694, -165 from m76

Syndicated 2010-04-22 09:00:24 from Caolan McNamara


DEV300_m74 +5 overall unused, though sal becomes unused method free.

Syndicated 2010-03-10 09:33:09 from Caolan McNamara

167 older entries...

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!