Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/copperspice/cs_string
Header-only library providing unicode aware string support for C++
https://github.com/copperspice/cs_string
copperspice cpp string unicode
Last synced: 2 days ago
JSON representation
Header-only library providing unicode aware string support for C++
- Host: GitHub
- URL: https://github.com/copperspice/cs_string
- Owner: copperspice
- License: other
- Created: 2017-05-17T14:47:59.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-01-04T01:15:12.000Z (12 days ago)
- Last Synced: 2025-01-06T19:12:40.480Z (9 days ago)
- Topics: copperspice, cpp, string, unicode
- Language: C++
- Homepage: https://www.copperspice.com/
- Size: 240 KB
- Stars: 106
- Watchers: 11
- Forks: 13
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## CsString
### Introduction
CsString is a standalone library which provides unicode aware string support.
The CsBasicString class is a templated class which provides unicode aware string support. The encoding, such
as UTF-8 or UTF-16, is passed to the CsBasicString template. The following typedefs are provided for convenience.using CsString = CsBasicString;
using CsString_utf8 = CsBasicString;
using CsString_utf16 = CsBasicString;### System Requirements
To use CsString you will need a C++17 compiler and a C++17 standard library.
Uses the CMake build system for building and running the unit test suite. This library has been tested with clang
sanitizer and an extensive industry code review.### Running the Catch Tests
To enable unit testing set the BUILD_TESTS in the root CMakeLists.txt file to ON. You can also configure the
setting by passing -DBUILD_TESTS=ON on the CMake command line.If you do not have the Catch2 library installed the files can be download from our website. This is a header
only library.https://download.copperspice.com/toolchain/catch/
Either add the path where the Catch2 files are located or pass the path using -DCMAKE_PREFIX_PATH on the CMake
command line. The following shows how to pass both arguments.export CMAKE_FLAGS="-DBUILD_TESTS=on -DCMAKE_PREFIX_PATH=C:/Catch2/lib/cmake/Catch2"
Build this library and then run CTest in the root of your build directory.
### Documentation
Class level documentation for CsString is available on the CopperSpice website:
https://www.copperspice.com/docs/cs_string/index.html
### Presentations
Our YouTube channel contains over 65 videos about C++, programming fundamentals, Unicode/Strings, multithreading,
graphics, CopperSpice, DoxyPress, and other software development topics.https://www.youtube.com/copperspice
Links to additional videos can be found on our website.https://www.copperspice.com/presentations.html
### Authors / Contributors
* **Ansel Sermersheim**
* **Barbara Geller**### License
This library is released under the BSD 2-clause license. For more information refer to the LICENSE file provided with
this project.### References
* Website: https://www.copperspice.com
* Twitter: https://twitter.com/copperspice_cpp
* Email: [email protected]* Github: https://github.com/copperspice
* Forum: https://forum.copperspice.com
* Journal: https://journal.copperspice.com