6 releases
0.1.5 | Dec 28, 2020 |
---|---|
0.1.4 | Dec 26, 2020 |
#862 in Text processing
34KB
842 lines
Sejong Buffer
Sejong Buffer is a buffer that receives ASCII bytes from standard English keyboard and sends out UTF-32 Hangul string. This buffer allows deletion by Jamo.
This rust library can be compiled as a WASM library or as part of another rust program.
USE
To use as an NPM package
Do NOT run in a node app, this package can only run in browser
Install: npm install sejong-buffer
In apps that built with webpack:
import('sejong-buffer').then(buffer => {
buffer.put('d');
buffer.put('k');
buffer.put('s');
buffer.put('s');
buffer.put('u');
buffer.put('d');
console.assert(buffer.to_string() === '안녕');
buffer.put('s');
console.assert(buffer.to_string() === '안녕ㄴ');
buffer.pop();
console.assert(buffer.out() === '안녕');
console.assert(buffer.out() === '');
});
To use in Rust program
Install: cargo install sejong
use sejong::{Buffer, Byte};
let mut buf = Buffer::default();
buf.put(Byte::NG as u8);
buf.put(Byte::A as u8);
buf.put(Byte::N as u8);
buf.put(Byte::N as u8);
buf.put(Byte::YEO as u8);
buf.put(Byte::NG as u8);
assert_eq!(buf.to_string(), "안녕");
buf.put(Byte::N as u8);
assert_eq!(buf.to_string(), "안녕ㄴ");
buf.pop();
assert_eq!(buf.out(), "안녕");
assert_eq!(buf.out(), "");
BUILD
WASM
- Install wasm-pack:
curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
- Build the wasm npm package:
wasm-pack build --release -- --features wasm
rust lib
No additional step. Just use as regular rust library.
Dependencies
~0–420KB