vorlagevortrag/ahilbig-letterspace.sty
2021-04-11 14:32:21 +02:00

76 lines
3.5 KiB
TeX

% -*- coding: utf-8; -*-
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
% |
% (C)opyright A. Hilbig, mail@andrehilbig.de |
% http://www.andrehilbig.de/Publications |
% |
% diese Datei: ahilbig-letterspace.sty |
% |
% Das Dokument steht unter der Lizenz: Creative Commons by-nc-sa Version 4.0 |
% http://creativecommons.org/licenses/by-nc-sa/4.0/deed.de |
% |
% Nach dieser Lizenz darf das Dokument beliebig kopiert und bearbeitet werden, |
% sofern das Folgeprodukt wiederum unter gleichen Lizenzbedingungen vertrieben |
% und auf die ursprünglichen Urheber verwiesen wird. |
% Eine kommerzielle Nutzung ist ausdrücklich ausgeschlossen. |
% |
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
% |
% HINWEISE/ERWEITERUNG |
% Diese Pakete basieren auf den entsprechenden Paketen von Prof. Dr. Ludger Humbert |
% (http://ddi.uni-wuppertal.de/ -- humbert@uni-wuppertal.de) und wurden zum Teil angepasst. Seine |
% Pakete basieren wiederum auf Entwicklungen von Prof. Dr. Till Tantau |
% (http://www.tcs.uni-luebeck.de/de/mitarbeiter/tantau/). Beiden gilt mein Dank hierfür. |
% |
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
% |
\ProvidesPackage{ahilbig-letterspace}
\RequirePackage{ifluatex}
\def\textlsuppercase#1{\edef\temp{#1}\textls{\expandafter\uppercase\expandafter{\temp}}}
\newbox\lectureletterbox
\newif\iflec@uppercasetextls
\ifluatex
\def\textls#1{%
\begingroup
\def\.{\relax}
\lec@uppercasetextlsfalse
\edef\lec@temp{#1}%
\expandafter\textls@\lec@temp\pgf@stop%
}
\def\textlsuppercase#1{%
\begingroup
\def\.{\relax}
\lec@uppercasetextlstrue
\edef\lec@temp{#1}%
\expandafter\textls@word\lec@temp\. \pgf@stop%
}
\def\textls@word#1 #2\pgf@stop{%
\textls@#1\pgf@stop%
\def\pgf@temp{#2}%
\ifx\pgf@temp\pgfutil@empty%
\endgroup%
\else%
\ \kern.3ex%
\textls@word#2\pgf@stop%
\fi%
}
\def\textls@{%
\pgfutil@ifnextchar\pgf@stop{\pgfutil@gobble}{%
\pgfutil@ifnextchar\unhbox{\textls@@gobbeltwo}{%
\pgfutil@ifnextchar\penalty{\textls@@gobbeltwo}{%
\textls@@}}}%
}
\def\textls@@#1{%
\iflec@uppercasetextls\uppercase{#1}\else#1\fi\kern0.3ex\textls@%
}
\def\textls@@gobbeltwo#1#2{\textls@}
\fi