The spreadsheet package

[Tags:bsd3, library]

Read and write spreadsheets from and to files containing comma separated values (CSV) in a lazy way. See also the csv package and, Both do not parse lazy. Reading from other source than plain Strings could be easily added.

If you install this package by

cabal install -fbuildExamples

then an example program is compiled and installed, too. This program fills a template text using data from a CSV file. E.g. given a file template.txt with content

 Born: BIRTH

and names.csv with content


the call

 csvreplace template.txt <names.csv

produces the output

 Name: Georg Cantor
 Born: 1845
 Name: Haskell Curry
 Born: 1900
 Name: Ada Lovelace
 Born: 1815

You may also generate one file per CSV row in the following manner:

 csvreplace --multifile=FIRSTNAME-SURNAME.txt template.txt <names.csv

For similar (non-Haskell) programs see cut, csvfix, csvtool.


Versions 0.1, 0.1.1,, 0.1.2,, 0.1.3,,,,,
Dependencies base (>=1.0 && <5), bytestring (>=0.9 && <0.11), explicit-exception (==0.1.*), transformers (>=0.2 && <0.4), utility-ht (>=0.0.2 && <0.1) [details]
License BSD3
Author Henning Thielemann <>
Maintainer Henning Thielemann <>
Category Data, Text
Home page
Source repository head: darcs get
this: darcs get --tag
Uploaded Mon Jul 16 14:53:46 UTC 2012 by HenningThielemann
Distributions LTSHaskell:, NixOS:, Stackage:, Tumbleweed:
Downloads 2283 total (131 in the last 30 days)
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI




buildexamplesBuild example executablesDisabledAutomatic
splitbaseChoose the new smaller, split-up base package.EnabledAutomatic

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


Maintainer's Corner

For package maintainers and hackage trustees