-text-pipes
+pipes-text
==========
-This repo is called `text-pipes`, but the package is named `pipes-text` as one might expect.
-The two modules it contatins, `Pipes.Text` and `Pipes.Text.Parse`, use materials from [`pipes-text`](https://github.com/ibotty/pipes-text);
-otherwise they follow the pattern of [`pipes-bytestring`](https://github.com/Gabriel439/Haskell-Pipes-ByteString-Library), adding a few `pipes-prelude`-like operations.
-The most important function, `decodeUtf8`, written by ibotty, uses the development version of the text package; this package can however be built with the hackage `text`
-though `decodeUtf8` will then not exist.
+This package follows the rule `pipes-text : pipes-bytestring :: text : bytestring` It has three modules, `Pipes.Text` , `Pipes.Text.Encoding` and `Pipes.Text.IO`; the division has more or less the significance it has in the `text` library.
- >>> runEffect $ stdinLn >-> P.takeWhile (/= "quit") >-> stdoutLn
- hi<Return>
- hi
- quit<Return>
- >>> runSafeT $ runEffect $ readFile "README.md" >-> toUpper >-> hoist lift stdout
- TEXT-PIPES
- ==========
- ...
\ No newline at end of file
+Note that the module `Pipes.Text.IO` uses version 0.11.3 or later of the `text` library. (It thus works with the version of `text` that came with the 2013 Haskell Platform. To use an older `text`, install with the flag `-fnoio`
\ No newline at end of file
name: pipes-text
version: 0.0.0.7
synopsis: Text pipes.
-description: Many of the pipes and other operations defined here mirror those in
- the `pipes-bytestring` library. Folds like `length` and grouping
- operations like `lines` simply adjust for the differences between
- `ByteString` and `Text` and `Word8` and `Char`. It is hoped that this
- homogeneity will aid in learning the terms and programming style associated
- with both of them.
+description: (This package will be in a draft, or testing, phase until version 0.0.1. Please report any api objections or installation difficulties on the github page!)
+
+ This organization of the package follows the rule
+ .
+ * @pipes-text : pipes-bytestring :: text : bytestring@
.
- The most distinctive addition of the library to that core is the
- apparatus for encoding and decoding `Text` and `ByteString`.
+ Familiarity with the other three packages should give one an idea what to expect where. The package has three modules, @Pipes.Text@ , @Pipes.Text.Encoding@ and @Pipes.Text.IO@; the division has more or less the significance it has in the @text@ library.
.
- Also defined are some simple functions akin to the `String`
- operations in `Pipes.Prelude`, and others like the utilities in `Data.Text`.
+ Note that the module @Pipes.Text.IO@ is present as a convenience (as is @Data.Text.IO@). Official pipes IO would use @Pipes.ByteString@ and the decoding functions present here, based on the new Michael Snoyman's new @text-stream-decoding@ package. In particular, the @Pipes.Text.IO@ functions use Text exceptions.
.
- All of the `IO` operations defined here - e.g `readFile`, `stdout` etc.
- - are conveniences akin to those in `Data.Text.IO` which e.g. try to
- find the system encoding and use the exceptions defined in the `text`
- library. Proper `IO` in the sense of this library will employ
- `pipes-bytestring` in conjuntion with 'pure' operations like
- `decodeUtf8` and `encodeUtf8` that are defined here.
+ @Pipes.Text.IO@ uses version 0.11.3 or later of the @text@ library. It thus works with the version of @text@ that came with the 2013 Haskell Platform. To use an older @text@, install with the flag @-fnoio@
homepage: https://github.com/michaelt/text-pipes
bug-reports: https://github.com/michaelt/text-pipes/issues