gensprep(8)
β¨ gensprep(8) β¨
okay bestie, gather round π this is the gensprep page from the ICU 78.3 manual, and she's a little compiler goblin who turns filtered StringPrep data into actual binary. no cap.
πΈ NAME πΈ
gensprep β compiles StringPrep data from files that were already filtered by filterRFC3454.pl β¨
π¦ SYNOPSIS π¦
gensprep [ -h, -?, --help ] [ -v, --verbose ] [ -c, --copyright ] [ -s,
--sourcedir source ] [ -d, --destdir destination ]
π DESCRIPTION π
So here's the tea π: gensprep reads files that have already been filtered through RFC 3454, and it compiles all that info into binary form. Iconic behavior honestly.
The file it spits out is called <name>.icu, and that baby can be read directly by ICU, OR you can hand it off to pkgdata(8) so it gets incorporated into a bigger archive or library. main character energy for a binary blob, fr fr.
All the files that gensprep actually reads? Those are living down in the FILES section, go look π
β¨ OPTIONS β¨
-h,-?,--helpβ prints help about usage and then dips out. classic.-v,--verboseβ spills extra informative messages while it's running, iykyk π£οΈ-c,--copyrightβ sneaks a copyright notice into the binary data π-s,--sourcedirsource β sets the source directory to source. the default comes from the environment variableICU_DATA.-d,--destdirdestination β sets the destination directory to destination. the default also comes from the environment variableICU_DATA.
π ENVIRONMENT π
ICU_DATAβ specifies the directory containing ICU data. defaults to${prefix}/share/icu/78.3/.
β οΈ okay real talk bestie, some tools in ICU depend on the presence of the trailing slash. so if you set ICU_DATA, you MUST make sure that slash is there. it's giving picky, but it's giving picky for a reason. π
π FILES π
These are the files gensprep reads, and it goes looking for them in source /misc for the rfc3454_*.txt files, and in source /unidata for NormalizationCorrections.txt. π§
rfc3453_A_1.txtβ contains the list of unassigned codepoints in Unicode version 3.2.0....rfc3454_B_1.txtβ contains the list of code points that are commonly mapped to nothing....rfc3454_B_2.txtβ contains the list of mappings for casefolding of code points when Normalization form NFKC is specified....rfc3454_C_X.txtβ contains the list of code points that are prohibited for IDNA.NormalizationCorrections.txtβ contains the list of code points whose normalization has changed since Unicode Version 3.2.0.
β VERSION β
78.3 π
π COPYRIGHT π
Copyright (C) 2000-2002 IBM, Inc. and others.
π«Ά SEE ALSO π«Ά
pkgdata(8) β go say hi, she's the one who packages your stuff up π
and that's the whole page, bestie. this one's an ICU MANPAGE from way back on 18 March 2003, filed under gensprep(8). slay, periodt. π β¨ππ¦
π¦ where this page comes from
- arch rolling: icu 78.3-1 Β· LicenseRef-Unicode-3.0 AND BSD-2-Clause AND BSD-3-Clause AND NAIST-2003
- ubuntu stonking: icu-devtools 78.3-2ubuntu1 Β· MIT
- Copyright (C) 2016 and later: Unicode, Inc. and others
- Copyright (C) 2003 IBM, Inc. and others
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms