+%%%% patch \@text@composite because of {y,t}albaselineshift
+
+% %% \pltx@isletter from plfonts.dtx
+% \def\pltx@mark{\pltx@mark@}
+% \let\pltx@scanstop\relax
+% \long\def\pltx@cond#1\fi{%
+% #1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi}
+% \long\def\pltx@isletter#1{%
+% \expandafter\pltx@isletter@i\romannumeral-`0#1\pltx@scanstop}
+% \long\def\pltx@isletter@i#1\pltx@scanstop{%
+% \pltx@cond\ifx\pltx@mark#1\pltx@mark\fi{\@firstoftwo}%
+% {\pltx@isletter@ii\pltx@scanstop#1\pltx@scanstop{}#1\pltx@mark}}
+% \long\def\pltx@isletter@ii#1\pltx@scanstop#{%
+% \pltx@cond\ifx\pltx@mark#1\pltx@mark\fi%
+% {\pltx@isletter@iii}{\pltx@isletter@iv}}
+% \long\def\pltx@isletter@iii#1\pltx@mark{\@secondoftwo}
+% \long\def\pltx@isletter@iv#1#2#3\pltx@mark{%
+% \pltx@cond\ifx\pltx@mark#3\pltx@mark\fi{%
+% \pltx@cond{\ifnum0\ifcat A\noexpand#21\fi\ifcat=\noexpand#21\fi>\z@}\fi
+% {\@firstoftwo}{\@secondoftwo}%
+% }{\@secondoftwo}}
+
+% \def\@text@composite@x#1#2{%
+% \ifx#1\relax
+% #2%
+% \else\pltx@isletter{#1}{#1}{%
+% \begingroup
+% \setbox\z@\hbox\bgroup%
+% \ltj@yablshift\z@ \ltj@tablshift\z@
+% #1%
+% \@tempcntb\directlua{luatexja.pltx_composite_last_node_char()}%)
+% \xdef\pltx@composite@temp{\noexpand\@tempcntb=\the\@tempcntb\relax}%
+% \aftergroup\pltx@composite@temp
+% \egroup
+% \ifnum\ltjgetparameter{direction}=3 %
+% \@tempdima=\ltj@tablshift sp\else\@tempdima=\ltj@yablshift sp\fi
+% \ifnum\@tempcntb<\z@\@tempcnta\z@\else
+% \@tempcnta=\ltjgetparameter{jacharrange}{\ltjgetparameter{chartorange}{\@tempcntb}}\relax
+% \ifnum\@tempcnta=\z@\@tempdima\z@\fi
+% \fi
+% \ifnum\@tempcnta>\z@
+% \ifodd\ltjgetparameter{alxspmode}{\@tempcntb}\else\leavevmode\hbox{}\fi
+% \begingroup\mathsurround\z@$%
+% \hbox{\lower\@tempdima\box\z@}
+% $\endgroup%
+% \ifnum\ltjgetparameter{alxspmode}{\@tempcntb}<2\hbox{}\fi
+% \else
+% \ifdim\@tempdima=\z@{\ltj@yablshift\z@ \ltj@tablshift\z@#1}%
+% \else\lower\@tempdima\box\z@\fi
+% \fi
+% \endgroup}%
+% \fi
+% }
+