You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
tex-compiler/texmf-dist/tex/latex/lwarp/lwarp-realscripts.sty

174 lines
4.7 KiB

%%
%% This is file `lwarp-realscripts.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% lwarp.dtx (with options: `realscripts')
%% This is a generated file.
%% Copyright 2016-2020 Brian Dunn
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
%% of this license or (at your option) any later version.
%% The latest version of this license is in
%% http://www.latex-project.org/lppl.txt
%% and version 1.3 or later is part of all distributions of LaTeX
%% version 2005/12/01 or later.
\LWR@ProvidesPackagePass{realscripts}[2016/02/13]
\ExplSyntaxOn
\DeclareDocumentCommand \LWR@print@realsubscript {m} {
\fontspec_if_fontspec_font:TF {
\fontspec_if_opentype:TF
{ \fontspec_if_feature:nTF {+subs}
{ {\addfontfeature{VerticalPosition=Inferior}#1} }
{ \fontspec_if_feature:nTF {+sinf}
{ {\addfontfeature{VerticalPosition=ScientificInferior}#1} }
{ \fakesubscript{#1} }
}
}
{ \fontspec_if_aat_feature:nnTF {10} {2}
{ {\addfontfeature{VerticalPosition=Inferior}#1} }
{ \fakesubscript{#1} }
}
}
{ \fakesubscript{#1} }
}
\DeclareDocumentCommand \LWR@HTML@realsubscript {m} {
\LWR@HTML@textsubscript{#1}
}
\LWR@formatted{realsubscript}
\DeclareDocumentCommand \LWR@print@realsuperscript {m} {
\fontspec_if_fontspec_font:TF
{
\fontspec_if_opentype:TF
{ \fontspec_if_feature:nTF {+sups}
{ {\addfontfeature{VerticalPosition=Superior}#1} }
{ \fakesuperscript{#1} }
}
{ \fontspec_if_aat_feature:nnTF {10} {1}
{ {\addfontfeature{VerticalPosition=Superior}#1} }
{ \fakesuperscript{#1} }
}
}
{ \fakesuperscript{#1} }
}
\DeclareDocumentCommand \LWR@HTML@realsuperscript {m} {
\LWR@HTML@textsuperscript{#1}
}
\LWR@formatted{realsuperscript}
\DeclareDocumentCommand \LWR@print@textsubsuperscript {s O{l} mm} {
\leavevmode
\group_begin:
\IfBooleanTF #1
{
\hbox_set:Nn \l_tmpa_box {\textsubscript*{#3}}
\hbox_set:Nn \l_tmpb_box {\textsuperscript*{#4}}
}
{
\hbox_set:Nn \l_tmpa_box {\textsubscript{#3}}
\hbox_set:Nn \l_tmpb_box {\textsuperscript{#4}}
}
\hbox_set:Nn \l_tmpa_box
{ \box_move_down:nn \subsupersep {\box_use:N \l_tmpa_box} }
\hbox_set:Nn \l_tmpb_box
{ \box_move_up:nn \subsupersep {\box_use:N \l_tmpb_box} }
\str_case:nnF {#2}
{
{l}{\use_i:nnn}
{c}{\use_ii:nnn}
{r}{\use_iii:nnn}
}
{
\PackageWarning{realscripts}{
Unknown~alignment~option~`#2'. \MessageBreak
One~ of~ `l',~ `c',~ `r',~ only
}
\use_i:nnn
}
{
\hbox_overlap_right:n { \box_use:N \l_tmpa_box }
\hbox_overlap_right:n { \box_use:N \l_tmpb_box }
\skip_horizontal:n {
\dim_max:nn {\box_wd:N \l_tmpa_box} {\box_wd:N \l_tmpb_box}
}
}
{
\dim_compare:nTF { \box_wd:N \l_tmpa_box > \box_wd:N \l_tmpb_box }
{
\skip_horizontal:n {
0.5\box_wd:N \l_tmpa_box-0.5\box_wd:N \l_tmpb_box
}
\box_use:N \l_tmpb_box
\skip_horizontal:n {
-0.5\box_wd:N \l_tmpa_box-0.5\box_wd:N \l_tmpb_box
}
\box_use:N \l_tmpa_box
}
{
\skip_horizontal:n {
0.5\box_wd:N \l_tmpb_box-0.5\box_wd:N \l_tmpa_box
}
\box_use:N \l_tmpa_box
\skip_horizontal:n {
-0.5\box_wd:N \l_tmpb_box-0.5\box_wd:N \l_tmpa_box
}
\box_use:N \l_tmpb_box
}
}
{
\skip_horizontal:n {
\dim_max:nn {\box_wd:N \l_tmpa_box} {\box_wd:N \l_tmpb_box}
}
\hbox_overlap_left:n { \box_use:N \l_tmpa_box }
\hbox_overlap_left:n { \box_use:N \l_tmpb_box }
}
\group_end:
}
\ExplSyntaxOff
\newcommand*{\LWR@realscriptsalign}{}
\newcommand*{\LWR@setrealscriptsalign}[1]{%
\renewcommand*{\LWR@realscriptsalign}{}%
\ifthenelse{\equal{#1}{c}}{%
\renewcommand{\LWR@realscriptsalign}{%
\LWR@print@mbox{text-align:center} ; %
}%
}{}%
\ifthenelse{\equal{#1}{r}}{%
\renewcommand{\LWR@realscriptsalign}{%
\LWR@print@mbox{text-align:right} ; %
}%
}{}%
}
\DeclareDocumentCommand \LWR@HTML@textsubsuperscript {s O{l} mm} {%
\LWR@setrealscriptsalign{#2}%
\InlineClass[\LWR@realscriptsalign]{supsubscript}{%
\textsuperscript{#4}\textsubscript{#3}%
}%
}
\LWR@formatted{textsubsuperscript}
\FilenameNullify{%
\RenewDocumentCommand{\textsuperscript}{s m}{}%
\RenewDocumentCommand{\textsubscript}{s m}{}%
\renewcommand{\fakesubscript}[1]{}%
\renewcommand{\fakesuperscript}[1]{}%
\renewcommand{\realsubscript}[1]{}%
\renewcommand{\realsuperscript}[1]{}%
\renewcommand{\textsubsuperscript}[2]{}%
\renewcommand{\textsupersubscript}[2]{}%
}
\endinput
%%
%% End of file `lwarp-realscripts.sty'.