% LaTeX-Package for libertine % % $Id: libertine.sty,v 1.16 2007/06/08 15:29:19 mgn Exp $ % % Michael Niedermair m.g.n@gmx.de % \ProvidesPackage{libertine}% [2007/06/08 v0.8.7 alpha (Nm)] \RequirePackage{keyval,calc,ifthen} \def\fxl@scale{1}% scale factor \def\fxl@default{nf}% nf, osf, ss \def\fxl@debug{false}% debug \define@key{fxl}{scaled}[1]{\def\fxl@scale{#1}} \define@key{fxl}{default}[nf]{\def\fxl@default{#1}} \define@key{fxl}{debug}[true]{\def\fxl@debug{#1}} \def\ProcessOptionsWithKV#1{% \let\@tempc\relax \let\fxl@tempa\@empty \@for\CurrentOption:=\@classoptionslist\do{% \@ifundefined{KV@#1@\CurrentOption}% {}% {% \edef\fxl@tempa{\fxl@tempa,\CurrentOption,}% \@expandtwoargs\@removeelement\CurrentOption \@unusedoptionlist\@unusedoptionlist }% }% \edef\fxl@tempa{% \noexpand\setkeys{#1}{% \fxl@tempa\@ptionlist{\@currname.\@currext}% }% }% \fxl@tempa \let\CurrentOption\@empty } \ProcessOptionsWithKV{fxl} \AtEndOfPackage{% \let\@unprocessedoptions\relax } % ------------------------------------------------ % default \ifthenelse{\equal{\fxl@default}{nf}}{\renewcommand\rmdefault{fxl}}{} \ifthenelse{\equal{\fxl@default}{osf}}{\renewcommand\rmdefault{fxlj}}{} \ifthenelse{\equal{\fxl@default}{ss}}{\renewcommand\rmdefault{fxlo}}{} % debug \ifthenelse{\equal{\fxl@debug}{true}}{ \typeout{libertine: DEBUG ----------------------------------} \typeout{scaled = \fxl@scale} \typeout{default = \fxl@default} \typeout{---------- DEBUG ----------------------------------} }{}% % ------------------------------------------------------ \newcommand{\FontLibertine}{\fontfamily{fxl}\fontencoding{T1}\selectfont} \newcommand{\FontLibertineOF}{\fontfamily{fxlj}\fontencoding{T1}\selectfont} \newcommand{\FontLibertineFF}{\fontfamily{fxlf}\fontencoding{T1}\selectfont} \newcommand{\FontLibertineNR}{\fontfamily{fxln}\fontencoding{T1}\selectfont} \newcommand{\fxlUnderline}[1]{{\usefont{T1}{fxl}{m}{u}\selectfont #1}} \newcommand{\fxlBUnderline}[1]{{\usefont{T1}{fxl}{b}{u}\selectfont #1}} \newcommand{\fxlSI}[1]{{\usefont{T1}{fxl}{m}{si}\selectfont #1}} \newcommand{\fxlBSI}[1]{{\usefont{T1}{fxl}{b}{si}\selectfont #1}} % circle \newcommand{\FontLibertineCircle}{% \fontfamily{fxlc}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont} \newcommand{\fxlcsymbol}[1]{{\FontLibertineCircle\char#1}} \newcommand{\fxlcnumber}[1]{\fxlcsymbol{\arabic{#1}}} \newenvironment{xlenumerate}[1][1]{% \ifnum \@enumdepth >3 \@toodeep\else \advance\@enumdepth \@ne \edef\@enumctr{enum\romannumeral\the\@enumdepth}% \expandafter\def\csname p@enum\romannumeral\the\@enumdepth\endcsname{}% \expandafter\def\csname labelenum\romannumeral\the\@enumdepth\endcsname{% \csname theenum\romannumeral\the\@enumdepth\endcsname}% \expandafter\def\csname theenum\romannumeral\the\@enumdepth\endcsname{% \fxlcnumber{enum\romannumeral\the\@enumdepth}}% \list{\csname label\@enumctr\endcsname}{% \@nmbrlisttrue \def\@listctr{\@enumctr}% \setcounter{\@enumctr}{#1}% \addtocounter{\@enumctr}{-1}% \def\makelabel##1{\hss\llap{##1}}} \fi }{\endlist} % --------------------------------------------------------- \newcommand*\DeclareTextGlyphX[5]{% % \DeclareTextGlyphX{fxl}{U}{fxla7}{uniA7F1}{241} % #1=basefont #2=encoding #3=fontfamily #4=glyphname, #5=position \@namedef{#1@#4}{\fontfamily{#3}\fontencoding{#2}\selectfont\char#5}} \newcommand*\useTextGlyph[2]{% {\@nameuse{#1@#2}}} \newcommand*\ifGylphExists[2]{% \begingroup \setbox0=\hbox{\@nameuse{#1@#2}}% %\typeout{\string\wd0=\the\wd0}% \edef\x{\endgroup \ifdim\wd0>\z@ \noexpand\@firstoftwo \else \noexpand\@secondoftwo \fi}% \x } \input{fxl.inc} % % ------------------------------------------------ % \endinput