package uutf

  1. Overview
  2. Docs
Non-blocking streaming Unicode codec for OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

uutf-0.9.4.tbz
md5=bf5880a8f2e75d0a9152d896ea288ba7

Description

Uutf is a non-blocking streaming codec to decode and encode the UTF-8, UTF-16, UTF-16LE and UTF-16BE encoding schemes. It can efficiently work character by character without blocking on IO. Decoders perform character position tracking and support newline normalization.

Functions are also provided to fold over the characters of UTF encoded OCaml string values and to directly encode characters in OCaml Buffer.t values.

Uutf is made of a single, independent, module and distributed under the BSD3 license.

README

Uutf — Non-blocking streaming Unicode codec for OCaml

Release 0.9.4

Uutf is a non-blocking streaming codec to decode and encode the UTF-8, UTF-16, UTF-16LE and UTF-16BE encoding schemes. It can efficiently work character by character without blocking on IO. Decoders perform character position tracking and support newline normalization.

Functions are also provided to fold over the characters of UTF encoded OCaml string values and to directly encode characters in OCaml Buffer.t values.

Uutf is made of a single, independent, module and distributed under the BSD3 license.

Home page: http://erratique.ch/software/uutf
Contact: Daniel Bünzli <daniel.buenzl i@erratique.ch>

Installation

Uutf can be installed with opam:

opam install uutf

If you don't use opam consult the opam file for build instructions and a complete specification of the dependencies.

Documentation

The documentation and API reference is automatically generated by ocamldoc from uutf.mli. It can be consulted online and there is a generated version in the doc directory of the distribution.

Sample programs

Sample programs are located in the test directory of the distribution. They can be built with:

ocamlbuild tests.otarget

The resulting binaries are in _build/test :

  • test.native tests the library, nothing should fail.

  • utftrip.native, among other things, reads unicode on stdin and rewrites it on stdout. Invoke with --help for more information. Depends on Cmdliner.

Dependencies (3)

  1. ocamlbuild build
  2. ocamlfind
  3. ocaml >= "4.00.0" & < "4.06.0"

Dev Dependencies

None

Used by (49)

  1. coin < "0.1.2"
  2. conan
  3. confero
  4. containers >= "2.1"
  5. containers-thread
  6. crowbar
  7. csvtool
  8. dolmen_type
  9. dotenv
  10. embedded_ocaml_templates
  11. ezjsonm >= "1.3.0"
  12. hvsock >= "2.0.0"
  13. imap
  14. inquire = "0.2.1" | >= "0.3.1"
  15. iri < "0.4.0"
  16. irmin >= "2.3.0"
  17. irmin-bench >= "2.7.0"
  18. jingoo >= "1.2.13"
  19. jsonm < "1.0.0"
  20. jupyter-kernel >= "0.3"
  21. lsp < "1.10.5"
  22. m17n
  23. markup < "0.7.3"
  24. mrmime
  25. multipart_form
  26. notty < "0.2.0"
  27. ocamlformat >= "0.9" & < "0.10"
  28. octez-libs
  29. oidc < "0.1.1"
  30. omd >= "2.0.0~alpha3"
  31. opam-core >= "2.2.0~alpha"
  32. opine
  33. otfm < "0.3.0"
  34. owi
  35. pecu < "0.2"
  36. printbox >= "0.3" & < "0.6"
  37. repr
  38. rosetta < "0.3.0"
  39. slug
  40. stringCodepointSplitter
  41. tezos-micheline
  42. tyxml >= "3.3.0" & < "4.1.0"
  43. unstrctrd
  44. uucp >= "2.0.0" & < "15.1.0"
  45. uunf < "0.9.2"
  46. uuuu < "0.2.0"
  47. xtmpl >= "0.13.0" & < "0.16.0"
  48. yuscii
  49. zed >= "3.2.0"

Conflicts (1)

  1. cmdliner < "0.9.6"