simple-text-format: Simple text based format strings with named identifiers.

[ bsd3, development, library, text ] [ Propose Tags ]

A simple library for format strings based on text and attoparsec. See the readme for more details.

[Skip to Readme]
Versions 0.1
Dependencies attoparsec, base (>=4.7 && <5), text [details]
License BSD-3-Clause
Copyright Copyright: (c) 2017 Justus Adam
Author Justus Adam
Category Development, Text
Home page
Source repo head: git clone
Uploaded by justus at Wed May 24 12:47:20 UTC 2017
Distributions NixOS:0.1
Downloads 221 total (6 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2017-05-24 [all 1 reports]
Hackage Matrix CI




Maintainer's Corner

For package maintainers and hackage trustees

Readme for simple-text-format-0.1

[back to package description]


This library provides a very simple format string syntax with named identifiers based on text and attoparsec.

Syntax for identifiers is ${variable-name}. Please note that it is whitespace sentitive, meaning ${var] references the variable "var" whereas ${ var} referenced the varaible " var". The rendering is agnostic to the data structure you use to keep the identifiers. The formatting function expects simply a function Text -> Maybe Text There is currently no escaping mechanism, meaning $ parses to "$" but there is no way to get a literal ${.

let formatStr = "A string with ${var} and ${var2}"
let identMap = [("var", "something"), ("var2", "something else")] :: HashMap Text Text
format' formatStr (lookup identMap)
-- A string with something and something else