{-# LANGUAGE OverloadedStrings #-}
module Text.LaTeX.Packages.Fontenc (
fontenc
, FontEnc (..)
, useencoding
) where
import Text.LaTeX.Base
import Text.LaTeX.Base.Class
fontenc :: PackageName
fontenc :: PackageName
fontenc = PackageName
"fontenc"
data FontEnc = T1 | OT1 deriving Int -> FontEnc -> ShowS
[FontEnc] -> ShowS
FontEnc -> PackageName
(Int -> FontEnc -> ShowS)
-> (FontEnc -> PackageName) -> ([FontEnc] -> ShowS) -> Show FontEnc
forall a.
(Int -> a -> ShowS)
-> (a -> PackageName) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> FontEnc -> ShowS
showsPrec :: Int -> FontEnc -> ShowS
$cshow :: FontEnc -> PackageName
show :: FontEnc -> PackageName
$cshowList :: [FontEnc] -> ShowS
showList :: [FontEnc] -> ShowS
Show
instance Render FontEnc where
render :: FontEnc -> Text
render FontEnc
T1 = Text
"T1"
render FontEnc
OT1 = Text
"OT1"
instance Texy FontEnc where
texy :: forall l. LaTeXC l => FontEnc -> l
texy = Text -> l
forall l. LaTeXC l => Text -> l
forall t l. (Texy t, LaTeXC l) => t -> l
texy (Text -> l) -> (FontEnc -> Text) -> FontEnc -> l
forall b c a. (b -> c) -> (a -> b) -> a -> c
. FontEnc -> Text
forall a. Render a => a -> Text
render
useencoding :: LaTeXC l => [FontEnc] -> l
useencoding :: forall l. LaTeXC l => [FontEnc] -> l
useencoding [FontEnc]
xs = [l] -> PackageName -> l
forall l. LaTeXC l => [l] -> PackageName -> l
usepackage ((FontEnc -> l) -> [FontEnc] -> [l]
forall a b. (a -> b) -> [a] -> [b]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap FontEnc -> l
forall l. LaTeXC l => FontEnc -> l
forall t l. (Texy t, LaTeXC l) => t -> l
texy [FontEnc]
xs) PackageName
fontenc