"Maar waarom kan alleen een tekstverwerker woorden afbreken?", dacht ik. Waarom geen webbrowser, of waarom niet een mobiele telefoon, waar de ruimte pas echt krap is? Ik wou dat mijn programma's in ieder geval hun teksten netjes met afgebroken woorden toonden. Dat bleek makkelijker gezegd dan gedaan.
Het bleek dat je nergens een goed algoritme kunt vinden hoe je een Nederlands woord afbreekt. Dus is er ook heel weinig software omdat te doen. Dus, wat doe je dan als kundig informaticus: je ontwerpt een algoritme. Op deze pagina deel ik mijn algoritme, genaamd "Breekijzer" met de rest van de wereld.
Bijvoorbeeld: "pannekoek" wordt goed afgebroken, evenals "pannenkoek". "Grizzlybeer" is een onregelmatig gespeld woord en wordt geweigerd. De instinker "lamplicht" wordt foutief afgebroken als "lam-plicht", maar goed afgebruiken als deze lettergreepcombinatie in de lijst van ongeldige lettergreepcombinaties staat.
Breekijzer is zeer compact en vereist weinig rekenkracht. Als een goed resultaat afdoende is kan het zonder extra lijstbestand gebruikt worden. Toepassing in een mobiele telefoon, waar de ruimte beperkt, zou dus mogelijk zijn, maar toepassing in een tekstverwerker, waar alleen een perfect resultaat acceptabel is, ook.
Breekijzer is geen kant en klare oplossing. Het bevat niet de lijsten van ongeldige lettergrepen die nodig zijn voor het perfect functioneren. Ook zal de programmacode niet direct in je tekstverwerker in te bouwen zijn. Voorlopig concentreert het zich op het demonstreren van de techniek. Wie weet evolueert het in de toekomst tot een kant en klare oplossing.
Het plan is om de referentieïmplementatie een openbronlicentie uit te geven. Totdat de licentie bepaald is, zijn alle rechten voorbehouden aan de auteur en kunt u de referentieïmplementatie alleen voor persoonlijke doeleinden gebruiken.
(C) 2007 Daniël Mantione - E-mail: daniel.mantione@freepascal.org