| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Text.LaTeX.Base.Render
Description
- 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.
Instances
| 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 Renderable 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
Minimal complete definition
Nothing
Instances
| 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.