23 lines
809 B
Plaintext
23 lines
809 B
Plaintext
// While Neko also includes some UTF-8 operations,
|
|
// native strings are just arrays of bytes
|
|
var us = "¥·£·€·$·¢·₡·₢·₣·₤·₥·₦·₧·₨·₩·₪·₫·₭·₮·₯·₹";
|
|
|
|
// load some Std lib primitives
|
|
utfGet = $loader.loadprim("std@utf8_get", 2);
|
|
utfSub = $loader.loadprim("std@utf8_sub", 3);
|
|
utfAlloc = $loader.loadprim("std@utf8_buf_alloc", 1);
|
|
utfAdd = $loader.loadprim("std@utf8_buf_add", 2);
|
|
utfContent = $loader.loadprim("std@utf8_buf_content", 1);
|
|
|
|
// Pull out the Euro currency symbol from the UTF-8 currency sampler
|
|
var uc = utfGet(us, 4);
|
|
$print("UFT-8 code for '", utfSub(us, 4, 1), "': ", uc, "\n");
|
|
|
|
// Build a UTF-8 buffer
|
|
var buf = utfAlloc(4);
|
|
|
|
// Add a Pound Sterling symbol
|
|
uc = 8356;
|
|
utfAdd(buf, uc);
|
|
$print("UTF-8 code ", uc, ": ", utfContent(buf), "\n");
|