English [EngiN33R] UTF-8 Wrapper Library icon

22 comments
05.12.17 09:09:04 pm
like 11 like it!
2 kb, 547 Downloads
EngiN33R
Moderator
Offline Off
This is an official tiny wrapper library that helps you forget about UTF-8 conversions in the new CS2D versions. The library replaces the msg, msg2, print and parse functions to always use UTF-8. The library has a safeguard against being loaded multiple times, so it should be safe to include in your mod or script without additional considerations.

When using this library for UTF-8 strings in your code, make sure to save your .lua files as UTF-8 without BOM!

In case you need raw access to UTF-8 helper functions, the library provides the following:

• utf8.codepoint(char) [number] - get the Unicode codepoint of the given character.
• utf8.encode(char) [string] - get the UTF-8 representation of a single character.
• utf8.convert(str) [string] - get a CS2D-ready UTF-8 representation of the given string.

After loading this library, UTF-8 conversion works as follows:

• utf8.convert("欢迎来到CS2D") gives
UTF-8:xE6xACxA2xE8xBFx8ExE6x9DxA5xE5x88xB0x43x53x32x44

• utf8.convert("Привет CS2D!") gives
UTF-8:xD0x9FxD1x80xD0xB8xD0xB2xD0xB5xD1x82x20x43x53x32x44x21
edited 1×, last 05.12.17 09:17:54 pm
ok This file has been reviewed and approved by SQ (05.12.17 09:09:52 pm)

Comments

22 comments
Goto Page
To the start Previous 1 2 Next To the start

Log in!

You need to log in to be able to write comments!Log in
05.12.17 09:18:02 pm
like I like it!
Up
Infinite Rain
Reviewer
Offline Off
Good work. But why don't you use a standard Lua way of making a module? I.E. No global declarations and one return. If you do it that way, then there's no reason to implement a safeguard, as "require" function already has a safeguard implemented.
05.12.17 09:15:38 pm
like I like it!
Up
SQ
Moderator
Offline Off
This deserves a like.
To the start Previous 1 2 Next To the start