Ngeadal Logo
SourceForge Logo

Ngeadal (ᚍ, U+168D) is an Ada library for Unicode. Currently in a primitive stage, in the future it will support a wide variety of functions related to Unicode. It is not designed to be a general text library, nor will it handle general output or rendering.


Yes, a page update! A new release has been made, and a lot of work on the new maps has gone into CVS. While correct, the new maps will quite probably be slower than the old. Sorry. Now I have to work on normalization . . .


The ultimate goal for this library is to provide a complete Unicode library for Ada. To that end, basic Unicode input has been written, several varieties of Unicode strings are supported, and you can reference characters by their Unicode name. Future releases will provide normalization, more and betTer I/O, and character properties at the least (and in that order).

Currently in CVS:

Input of a Unicode (UTF32, UTF16, UTF8) file.
Input of an 8 bit encoded file. (Currently, no character maps are provided.)
Generalized maps.

Coming soon:

The basic 8 bit to Unicode maps.
Useful sample programs: unifile (identify a Unicode file), unifrob (various useful things - normalization, conversion, language tagging, etc.)

I need help with:

Testing this on other systems. So far it's tested on Debian GNU/Linux Woody with its GNAT. I'd like to add Makefiles to support other compilers (and other systems, if necessary.) Please tell me if you've compiled on another platform.

The webpage. This one's suboptimal, and even if I do sit down and rewrite it, the best it will be is functional, not pretty.

Scripting. Turning the Unicode data files into Ada is probably better done in Icon, Perl, Python or some other higher level language. Unfortunetly, I don't know any well enough for the job.

As always, feedback will affect what and how soon anything gets done, and code will affect it even more. Thanks.

See our project page.