Long before Hugh Laurie found Hollywood stardom as the irascible Dr. House on American TV he was one of Britain’s best loved television stars, starring in such shows as A Bit of Fry and Laurie, Jeeves and Wooster, and, of course, Blackadder.
This is his own song “Mystery” which he first performed in the pilot of A Bit of Fry and Laurie, over 20 years ago, updated with some of the more British reference translated for the American audience.
Yesterday, a German AZIndex user asked if it was possible to convert German index headings containing umlauts to their non-accented equivalents when sorting indexes with German names in it. The mappings would be:
Ä => Ae ä => ae
ß => ss
Ö => Oe ö => oe
Ü => Ue ü => ue
Thus Österreich becomes Oesterreich and Müller becomes Mueller. I am told this is a common feature of German telephone directories, for example.
Well, it’s been a bit of a rough week for AZIndex and some of its users. I knew that adding better support for indexes in other languages would be tricky, but I didn’t realize that it would be quite so difficult and bug-ridden. After five quick updates in succession, I believe the serious bugs have been squashed and things seemed to have settled down (or it could be just that everyone’s taken the weekend off!).
Unfortunately, one of the bugs I introduced caused the upgrading of the AZIndex database table to fail on some systems, causing the loss of all their index settings. I will be making changes to the plugin to prevent such a catastrophic loss from happening in future, but there is one lesson we can all learn from this incident…
Don’t go blindly upgrading every plugin the moment you see that a new version is available, especially if it an essential part of your blog, and certainly if your blog is a critical part of your business (or hobby). That holds doubly true for plugins that are still under development and tagged as BETA software (as AZIndex still is).
If you are having problems with installing or activating the latest version of AZIndex (0.7.4), and you are an advanced WordPress user, I need your help in trying to track down the problem.
If you see the error message when you go to the AZIndex settings page:
AZINDEX_PLUGIN_ERROR: The required AZIndex database table – wp_az_indexes – does not exist. Please deactivate then re-activate the AZIndex plugin to correct the problem.
and it doesn’t go away when you try reactivating, I would like to know the following information:
- the version of WordPress you are running
- the version of PHP you are running
- the version of MySQL you are running
- run PHPMyAdmin and take a look at your WordPress database tables — is there a table called something like wp_az_indexes in there? (It might have another prefix like wp_xxx_az_indexes).
I just put out another quick version of AZIndex to fix a nasty problem a few users were having when installing v0.7.1. It turns out that upgrading the AZIndex database table was failing for those people who a still using a very old version of MySQL (4.0 and below), which left the plugin dead in the water. The good news is that only a very few users would have been affected.
This new version should get those people up and running again although, unfortunately, their index definitions will have been lost (I will work on a method of upgrading that will prevent that from happening again).
My apologies to those who were adversely affected by this problem.
UPDATE: In my haste to put out a fix for the problem caused to a few people with 0.7.1 I put out a bad version (0.7.2) which, if you installed it, probably irretrievably wiped out your AZIndex settings (unless you had the foresight to make a backup). My apologies to those of you who lost their settings. I need to include a safer way to upgrade which will allow users to retrieve their settings if something goes horribly wrong).
2nd UPDATE: Fixed another bug causing lower case characters to be sorted in the wrong order (in English-only indexes).
I have just released AZIndex version 0.7.1 to the unsuspecting world 8-).
The only significant change in this release is the addition of support for national languages. This means that indexes should now be sorted (collated) in the correct order, and accented characters (and other non-English characters) should appear correctly in the alphabetical titles and links in your index.
My thanks to commenter “K” who took the time to test an early (and not so successful) version of the national language support. Thanks to his perseverance, I have managed to squash many of the bugs that were still in the code a couple of days ago.
To enable the national language support for an index simply select the Turn on additional support for national languages option in the index settings. In the vast majority of cases, that is all you should need to do. There are also options to set different locale and collation tables, but unless you are having problems with items appearing out of order or being grouped incorrectly, then you should not need to use them.
All European languages should be supported, but I am less certain about languages like Chinese and Japanese. It’s also possible that the right-to-left languages (Arabic and Hebrew) may still not work correctly. Feedback on any of these is welcome.
Please note, I have only tested these new options on English Windows XP and Linux systems, so it is possible that some bugs will show up when you run AZIndex on non-English systems. Please report any problems you find by posting a comment on this blog or via email.
Just a quick update on what I have been working on with the AZIndex plugin. I decided it was finally time to do something that I have long been putting off — adding national language support to the plugin. That doesn’t mean I am translating all the English text to other languages (sorry!), but I am looking at fixing the problems to do with sorting indexes with non-English characters in it, and the displaying of non-English characters in the alphabetical links and headings.
But, wow, little did I realize the complexity that is PHP national language support. Unicode support will only appear in PHP 6.0, so I have to rely on the older PHP APIs, and only those which are likely to be installed on a WordPress server (i.e not many!). Not only that, but I discovered that WordPress used something called UTF-8 (which is a multi-byte codepage where characters can be one, two, or even three bytes long) which is fine, but PHP’s collation (sorting) function on Windows doesn’t work with UTF-8 so, on Windows systems, you have to convert every index item into the local codepage before the index can be sorted. Yuck!
Did you know that flight attendants are legally required to hand you a napkin whenever they give you a drink?
And yet, that’s what a Delta flight attendant told me on my flight back from London a couple of weeks ago, as she was serving me a Diet Coke. I was reading my newspaper when they came round with the drinks trolley, and since they never give you the whole can anymore, I just wanted to hang onto the plastic cup without deploying the tray. So with newspaper in one hand, and a cup of Diet Coke in the other, I declined the proffered napkin.
A Pair of African Tawny Eagles
During one of the game drives at Ngala last summer, we came across a beautiful pair of African tawny eagles perched on a tree branch nearby. We were just asking our guide if they might be a breeding pair when our question was answered for us by the eagles themselves…
Now that I’m getting up to speed again on the blog, I decided to update the blog’s theme to allow for paged and threaded comments, as supported under WordPress 2.7. After an afternoon of misery and frustration (and has anything in the history of humankind been more frustating than CSS to use?) everything seems to be working okay.
Hey, I’ve even managed to get Gavatars working!
What fun! (Just don’t tell Brandon, or he’ll be wanting them on his blog too!).