Skip to content

NightOwl888/ICU4N

Repository files navigation

International Components for Unicode

Nuget Azure DevOps builds (main) GitHub GitHub Sponsors

ICU4N is a set of .NET libraries providing Unicode and Globalization support for software applications, a .NET port of the popular ICU4J project.

This is a port of ICU4J, version 60.1. We have ported about 40% of the code, and while we aren't planning to add any additional features it is still a work in progress.

Features

Here are some of the major features that have been ported:

  1. BreakIterator
  2. RuleBasedBreakIterator
  3. Normalizer
  4. Normalizer2
  5. FilteredNormalizer2
  6. UnicodeSet
  7. Collator
  8. RuleBasedCollator
  9. Transliterator
  10. RuleBasedTransliterator

There are several other features too numerous to mention, but APIs are currently in flux between releases. We have over 1600 passing tests, most failures are just due to missing dependencies.

NuGet Packages

Install-Package ICU4N -Pre

We have setup the project structure similar to ICU4J, however this may change in the future. Here is a list of the packages available on NuGet:

We are looking into the best way to allow end users to be able to provide their own data distributions for smaller deployment artifacts.

Documentation

We have converted most of the documentation comments so Visual Studio Intellisense works. However, for full API docs the best source at the moment is the ICU4J API Reference. There is also a lot of other great info on the ICU project's web site, such as the Feature Comparison Page.

Building and Testing

To build the project from source, see the Building and Testing documentation.

Saying Thanks

If you find this library to be useful, please star us on GitHub and consider a sponsorship so we can continue bringing you great free tools like this one. It really would make a big difference!

GitHub Sponsors