intl-segmenter-polyfill-rs-web
v0.1.7
Published
A polyfill for Intl.Segmenter
Downloads
12
Readme
Intl-Segmenter-Polyfill-rs
About
This project polyfills the Intl.Segmenter API for browsers that do not support it.
See the bugzilla issue here.
As firefox 122 will support the API, this project will be archived in a predictable future.
Usage
Install wasm-pack
cargo install wasm-pack
Install binaryen
Use your package manager to install binaryen
.
Install icu4x-datagen
cargo install icu_datagen
Generate the data
sh icu-datagen.sh
Build
sh build.sh
Use it in your project
import * as IntlSegmeterPolyfill from "intl-segmenter-polyfill-rs";
// Browsers like firefox
if (Intl.Segmenter === undefined) {
Intl.Segmenter = IntlSegmeterPolyfill.Segmenter;
const segmenterFr = new Intl.Segmenter('fr', { granularity: 'sentence' });
const string1 = 'Hello World. Xin chào thế giới!';
const iterator1 = segmenterFr.segment(string1)[Symbol.iterator]();
console.log(iterator1.next().value.segment);
// Expected output: 'Hello World. '
console.log(iterator1.next().value.segment);
// Expected output: 'Xin chào thế giới!'
}
Use it directly in the browser
<!-- Modify your src according to your need -->
<script type="module" src="/node_modules/intl-segmenter-polyfill-rs-web/intl_segmenter_polyfill_rs.js"></script>
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.