text: An efficient packed Unicode text type.

[ bsd2, data, library, text ] [ Propose Tags ]

An efficient packed, immutable Unicode text type (both strict and lazy), with a powerful loop fusion optimization framework.

The Text type represents Unicode character strings, in a time and space-efficient manner. This package provides text processing capabilities that are optimized for performance critical use, both in terms of large data quantities and high speed.

The Text type provides character-encoding, type-safe case conversion via whole-string case conversion functions. It also provides a range of functions for converting Text values to and from ByteStrings, using several standard encodings.

Efficient locale-sensitive support for text IO is also supported.

These modules are intended to be imported qualified, to avoid name clashes with Prelude functions, e.g.

import qualified Data.Text as T

To use an extended and very rich family of functions for working with Unicode text (including normalization, regular expressions, non-standard encodings, text breaking, and locales), see the text-icu package: http://hackage.haskell.org/package/text-icu

—— RELEASE NOTES ——

Changes in 0.11.2.0:

  • String literals are now converted directly from the format in which GHC stores them into Text, without an intermediate transformation through String, and without inlining of conversion code at each site where a string literal is declared.


[Skip to Readme]

Flags

Automatic Flags
NameDescriptionDefault
developer

operate in developer mode

Disabled
integer-simple

Use the simple integer library instead of GMP

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.7.0.1, 0.7.1.0, 0.7.2.1, 0.8.0.0, 0.8.1.0, 0.9.0.0, 0.9.0.1, 0.9.1.0, 0.10.0.0, 0.10.0.1, 0.10.0.2, 0.11.0.0, 0.11.0.1, 0.11.0.2, 0.11.0.3, 0.11.0.4, 0.11.0.5, 0.11.0.6, 0.11.0.7, 0.11.0.8, 0.11.1.0, 0.11.1.1, 0.11.1.2, 0.11.1.3, 0.11.1.5, 0.11.1.6, 0.11.1.7, 0.11.1.8, 0.11.1.9, 0.11.1.10, 0.11.1.11, 0.11.1.12, 0.11.1.13, 0.11.2.0, 0.11.2.1, 0.11.2.2, 0.11.2.3, 0.11.3.0, 0.11.3.1, 1.0.0.0, 1.0.0.1, 1.1.0.0, 1.1.0.1, 1.1.1.0, 1.1.1.1, 1.1.1.2, 1.1.1.3, 1.1.1.4, 1.2.0.0, 1.2.0.2, 1.2.0.3, 1.2.0.4, 1.2.0.5, 1.2.0.6, 1.2.1.0, 1.2.1.1, 1.2.1.2, 1.2.1.3, 1.2.2.0, 1.2.2.1, 1.2.2.2, 1.2.3.0, 1.2.3.1, 1.2.3.2, 1.2.4.0, 1.2.4.1, 1.2.5.0, 2.0, 2.0.1, 2.0.2, 2.1, 2.1.1
Dependencies array, base (<5), bytestring (>=0.9 && <0.11), deepseq (>=1.1.0.0 && <1.4), extensible-exceptions, ghc-prim, integer (>=0.1 && <0.2), integer-gmp (>=0.2), integer-simple (>=0.1 && <0.5) [details]
License BSD-3-Clause
Copyright 2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
Author Bryan O'Sullivan <bos@serpentine.com>
Maintainer Bryan O'Sullivan <bos@serpentine.com>
Revised Revision 2 made by phadej at 2020-09-19T08:29:15Z
Category Data, Text
Home page https://github.com/bos/text
Bug tracker https://github.com/bos/text/issues
Source repo head: git clone https://github.com/bos/text
head: hg clone https://bitbucket.org/bos/text
Uploaded by BryanOSullivan at 2013-05-02T00:36:33Z
Distributions Arch:1.2.5.0, Fedora:2.0.2, FreeBSD:1.2.1.3
Reverse Dependencies 5431 direct, 9197 indirect [details]
Downloads 615189 total (834 in the last 30 days)
Rating 2.75 (votes: 25) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for text-0.11.3.1

[back to package description]

Text: Fast, packed Unicode strings, using stream fusion

This package provides the Data.Text library, a library for the space- and time-efficient manipulation of Unicode text in Haskell.

Normalization, conversion, and collation, oh my!

This library intentionally provides a simple API based on the Haskell prelude's list manipulation functions. For more complicated real-world tasks, such as Unicode normalization, conversion to and from a larger variety of encodings, and collation, use the text-icu package.

That library uses the well-respected and liberally licensed ICU library to provide these facilities.

Get involved!

Please report bugs via the github issue tracker.

Master git repository:

  • git clone git://github.com/bos/text.git

There's also a Mercurial mirror:

  • hg clone https://bitbucket.org/bos/text

(You can create and contribute changes using either Mercurial or git.)

Authors

The base code for this library was originally written by Tom Harper, based on the stream fusion framework developed by Roman Leshchinskiy, Duncan Coutts, and Don Stewart.

The core library was fleshed out, debugged, and tested by Bryan O'Sullivan bos@serpentine.com, and he is the current maintainer.