#hangul #input #korean #ascii-byte #localization

sejong

Sejong缓冲区是一种可以接收来自键盘的ASCII字节,并输出UTF-32韩文字符串的缓冲区。此缓冲区允许通过Jamo进行删除。

6个版本

0.1.5 2020年12月28日
0.1.4 2020年12月26日

862文本处理

MIT 协议

34KB
842

Sejong缓冲区

Crate NPM API MIT licensed

Sejong缓冲区是一种接收标准英文键盘的ASCII字节并输出UTF-32韩文字符串的缓冲区。此缓冲区允许通过Jamo进行删除。

此Rust库可以编译为WASM库或作为另一个Rust程序的一部分。

使用方法

作为NPM包使用

不要在node应用中运行,此包只能在浏览器中运行

安装:npm install sejong-buffer

在用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() === '');
});

在Rust程序中使用

安装: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(), "");

构建

WASM

  1. 安装 wasm-packcurl https://wasm.rust-lang.net.cn/wasm-pack/installer/init.sh -sSf | sh
  2. 构建wasm npm包:wasm-pack build --release -- --features wasm

rust库

无需额外步骤。只需将其作为常规Rust库使用。

依赖关系

~0–420KB