Home

Awesome

C++20 CI Build

Modern C++20 Unicode Library

The goal of this library is to bring painless unicode support to C++ with simple and easy to understand APIs.

The API naming conventions are chosen to look familiar to those using the C++ standard libary.

Feature Overview

Unicode Technical Specifications

Integrate with your CMake project

git submodule add --name libunicode https://github.com/contour-terminal/libunicode 3rdparty/libunicode
add_subdirectory(3rdparty/libunicode)

add_executable(your_tool your_tool.cpp)
target_link_libraries(your_tool PRIVATE unicode::unicode)

Contributing

Users of this library

Disclaimer

This library is -in terms of features- by no means competive to the ICU library, but it attempts to provide a clean and intuitive modern C++ API for those that do not want to fight legacy-style C APIs.

I hope that over time we can add more and more features to this library to conform to the Unicode specification eventually at some point and I welcome everyone to contribute to it by forking the library, creating pull requests, or even just constructive feedback.

License

libunicode - a modern C++20 unicode library
-------------------------------------------

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.