Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
- data Text :: *
- module Data.String
- class Show a => Render a where
- renderAppend :: Render a => [a] -> Text
- renderChars :: Render a => Char -> [a] -> Text
- renderCommas :: Render a => [a] -> Text
- renderFile :: Render a => FilePath -> a -> IO ()
- rendertex :: (Render a, LaTeXC l) => a -> l
- readFileTex :: FilePath -> IO Text
- showFloat :: RealFloat a => a -> String
Re-exports
data Text :: *
A space efficient, packed, unboxed Unicode text type.
IsList Text | |
Eq Text | |
Data Text | This instance preserves data abstraction at the cost of inefficiency. We omit reflection services for the sake of data abstraction. This instance was created by copying the updated behavior of
The original discussion is archived here: could we get a Data instance for Data.Text.Text? The followup discussion that changed the behavior of |
Ord Text | |
Read Text | |
Show Text | |
IsString Text | |
Monoid Text | |
NFData Text | |
Semigroup Text | |
Pretty Text | |
Render Text | This instance escapes LaTeX reserved characters. |
Texy Text | |
Typeable * Text | |
Monad m => Stream Text m Char | |
type Item Text = Char |
module Data.String
Render class
class Show a => Render a where Source
Class of values that can be transformed to Text
.
You mainly will use this to obtain the Text
output
of a LaTeX
value. If you are going to write the result
in a file, consider to use renderFile
.
Consider also to use rendertex
to get Render
able values
into LaTeX
blocks.
If you want to make a type instance of Render
and you already
have a Show
instance, you can use the default instance.
render = fromString . show
Nothing
Render Bool |
|
Render Double | |
Render Float | |
Render Int | |
Render Integer | |
Render Word8 | |
Render Text | This instance escapes LaTeX reserved characters. |
Render TeXArg | |
Render LaTeX | |
Render Measure | |
Render TableSpec | |
Render HPos | |
Render Pos | |
Render Label | |
Render PaperType | |
Render ClassOption | |
Render TheoremStyle | |
Render Theme | |
Render CoverOption | |
Render OverlaySpec | |
Render ColorName | |
Render ColorModel | |
Render Color | |
Render ColSpec | |
Render IGOption | |
Render URL | |
Render HRefOption | |
Render ActionType | |
Render TikZ | |
Render Parameter | |
Render TikZColor | |
Render Step | |
Render GridOption | |
Render TPath | |
Render TPoint | |
Render Language | |
Render FontEnc | |
Render GeometryOption | |
Render a => Render [a] |
renderAppend :: Render a => [a] -> Text Source
Render every element of a list and append results.
renderChars :: Render a => Char -> [a] -> Text Source
Render every element of a list and append results,
separated by the given Char
.
renderCommas :: Render a => [a] -> Text Source
Render every element of a list and append results, separated by commas.
renderFile :: Render a => FilePath -> a -> IO () Source
rendertex :: (Render a, LaTeXC l) => a -> l Source
If you can transform a value to Text
, you can
insert that Text
in your LaTeX
code.
That is what this function does.
Warning: rendertex
does not escape LaTeX reserved characters.
Use protectText
to escape them.
Reading files
readFileTex :: FilePath -> IO Text Source
If you are going to insert the content of a file
in your LaTeX
data, use this function to ensure
your encoding is correct.