inputx-pinyin 1.0.2

Self-developed Mandarin Pinyin input method engine — segmenter, fuzzy syllables, FST dict, WASM-ready. Powers the Inputx IME.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.85"
name = "inputx-pinyin"
version = "1.0.2"
authors = ["GOLIA K.K."]
build = "build.rs"
exclude = [
    "data/unihan/",
    "data/jieba/",
    "data/corpus/cache/",
    "data/readings_unihan.tsv",
    "data/phrases_jieba.tsv",
    "data/phrases_composed.tsv",
    "data/heteronyms_candidates.tsv",
    "data/readings.tsv",
    "data/weights/weights.tsv",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Self-developed Mandarin Pinyin input method engine — segmenter, fuzzy syllables, FST dict, WASM-ready. Powers the Inputx IME."
homepage = "https://github.com/goliajp/inputx"
documentation = "https://docs.rs/inputx-pinyin"
readme = "README.md"
keywords = [
    "pinyin",
    "ime",
    "chinese",
    "input-method",
    "fst",
]
categories = [
    "text-processing",
    "internationalization",
    "encoding",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/goliajp/inputx"
resolver = "2"

[features]
bootstrap_only = []
default = []
tools = [
    "dep:ureq",
    "dep:aho-corasick",
    "dep:toml",
    "dep:sha2",
    "dep:serde",
    "dep:serde_json",
    "dep:flate2",
    "dep:bzip2-rs",
    "dep:tar",
    "dep:encoding_rs",
]

[lib]
name = "golia_pinyin"
crate-type = [
    "rlib",
    "cdylib",
    "staticlib",
]
path = "src/lib.rs"

[[bin]]
name = "compose-phrase-readings"
path = "tools/compose_phrase_readings.rs"
required-features = ["tools"]

[[bin]]
name = "find-heteronym-candidates"
path = "tools/find_heteronym_candidates.rs"
required-features = ["tools"]

[[bin]]
name = "merge-readings"
path = "tools/merge_readings.rs"
required-features = ["tools"]

[[bin]]
name = "pinyin-build-fst"
path = "tools/build_fst.rs"
required-features = ["tools"]

[[bin]]
name = "pinyin-build-weights"
path = "tools/build_weights.rs"
required-features = ["tools"]

[[bin]]
name = "pinyin-fetch-corpus"
path = "tools/fetch_corpus.rs"
required-features = ["tools"]

[[bin]]
name = "unihan-extract-readings"
path = "tools/build_readings_unihan.rs"
required-features = ["tools"]

[[test]]
name = "integration"
path = "tests/integration.rs"

[[test]]
name = "proptest_l0"
path = "tests/proptest_l0.rs"

[[bench]]
name = "lookup"
path = "benches/lookup.rs"
harness = false

[dependencies.aho-corasick]
version = "1"
optional = true

[dependencies.bzip2-rs]
version = "0.1"
optional = true

[dependencies.encoding_rs]
version = "0.8"
optional = true

[dependencies.flate2]
version = "1"
features = ["rust_backend"]
optional = true
default-features = false

[dependencies.fst]
version = "0.4"
default-features = false

[dependencies.phf]
version = "0.11"
features = ["macros"]
default-features = false

[dependencies.serde]
version = "1"
features = ["derive"]
optional = true

[dependencies.serde_json]
version = "1"
optional = true

[dependencies.sha2]
version = "0.10"
optional = true

[dependencies.tar]
version = "0.4"
optional = true
default-features = false

[dependencies.toml]
version = "0.8"
optional = true

[dependencies.ureq]
version = "2"
optional = true

[dev-dependencies.criterion]
version = "0.5"

[dev-dependencies.proptest]
version = "1"

[build-dependencies.fst]
version = "0.4"
default-features = false