Automatisch trefwoordenregister

27 oktober 2011

Up-to-date

Het trefwoordenregister van de site wordt voortaan enkele malen per etmaal (3, voorlopig) automatisch opnieuw gegenereerd. Ik hoef dat niet meer handmatig te starten.

De trefwoordenregister wordt nu rechtstreeks op de webserver gegenereerd in plaats van vanaf een lokale kopie van de contentbestanden. Uiteraard gebruik ik daarvoor crontab.

Deze verbetering betekent dat nieuwe woorden uit gewijzigde of nieuwe artikelen voortaan na enkele uren ook in het trefwoordenregister staan.

ISO-8859

De woorden worden nu correct gesorteerd voor de tekenset ISO-8859-1, waarin bijna alle pagina’s van mijn site gecodeerd zijn. Eerder kwamen de letters met accenten (, , , , , , , , , , , ) na de z, omdat bij het sorteren de ASCII-volgorde werd aangehouden. Ik kon het wel handmatig oplossen door een werkbestand vanaf mijn lokale kopie van de website tijdelijk over te hevelen naar de webserver (onder Unix, om precies te zijn FreeBSD), om die daar correct te sorteren. Daarna ging het weer terug om de genereerprocedure af te maken.

De reden is dat Unix de zogeheten locales ondersteunt, zodat op de juiste wijze per taal en tekenset kan worden gesorteerd. Windows kan dat waarschijnlijk ook wel, maar ik weet niet hoe, en eerlijk gezegd wil ik dat ook niet weten. Voor tekstmanipulaties is het goede oude Unix beter geschikt. Dat vind ik tenminste wel.

Een voorbeeld: het Engelse woord ‘exit’, het Portugese xito (= succes) en het Catalaanse woord xit – dat om een of andere vage reden ergens op mijn site blijkt voor te komen: ze staan nu bij elkaar in de trefwoordenlijst. Woorden die beginnen met een Duitse ü worden samengesorteerd met Duitse of andere woorden met een u.

Nu alles op de server gebeurt, is geen handmatig ingrijpen meer nodig om dit goed te krijgen.

Meer achtergrondinfo

Details over het instellen van de collating sequence voor het sorteren vindt u hier. Wat ik doe in mijn Bourne shell-script is:
LC_COLLATE="en_US.ISO8859-1" ; export LC_COLLATE
voordat ik uitvoer:
sort -u
op een gegenereerde lijst met woorden uit de content op mijn website.

Bronbestanden

Zie script.htm. Daar vindt u het shellscript en twee C-sources, met daarbij diverse toelichtingen.

Dit alles alleen in het Engels, niet in het Nederlands.

Kleuren: Neutraal Raar Geen voorkeur Pagina opnieuw laden