Boost logo

Boost :

Subject: [boost] [Boost.Locale] For Preliminary Review of Boost Community (with Full documentation)
From: Artyom (artyomtnk_at_[hidden])
Date: 2009-11-08 09:23:28

Hello All,

I had written a Boost.Locale library that provides high quality localization facilities in C++ way.
This library uses internally ICU library to provide all facilities:

- Correct case conversion, case folding and normalization
- Collation including support of 4 Unicode collation levels.
- Date and time formatting and parsing
- Number formatting, spelling and parsing
- Monetary formatting and parsing
- Powerful message formatting including support plural forms,
  using GNU catalogs.
- Character, word, sentence and line-break boundary analysis.
- Codepage conversion
- Support of 8-bit character sets like Latin1 and UTF–8 encoded
- Support of char, wchar_t and C++0x char16_t, char32_t strings
  and streams.

I've tested it with:

- Linux GCC 4.1, 4.3. with ICU 3.6 and 3.8
- Windows MSVC-9 (VC 2008), with ICU 4.2
- Windows MingW with ICU 4.2
- Windows Cygwin with ICU 3.8

   Full tutorials:
   Doxygen reference documentation:

Source Code:


At this point I hand't written any JAM files yet and I use CMake.

So checkout the code, and run cmake /path/to/boost_locale/libs/locale

You need to have ICU 3.6 or above installed on your system. 4.2 and above recommended
It is mandatory dependency.

Notes for MSVC Users

In many examples I write:

    wstring tmp=L"שלום עולם!"; // Unicode string

In order to make these examples work correctly source code should include
BOM to let MSVC know that the text is UTF-8 and not ASCII...

So when you try to compile examples convert files in order to make them work correctly.

Todo List

- Create a good set of unit tests
- More boostification (Jam, etc)

I'm waiting for your inputs

    Artyom Beilis

Boost list run by bdawes at, gregod at, cpdaniel at, john at