Sub- en superscript uitbouwen in latex
Geplaatst: ma 14 mar 2011, 16:19
Ik weet niet hoe vaak jullie met Latex moeten werken, maar persoonlijk vond (en vind) ik het wel jammer dat je in tekstmode niet gewoon "^" en "_" kunt gebruiken voor super- en subscript. Daarom was ik begonnen zoeken naar een oplossing, en iemand reikte mij een (oude) oplossing aan. Echter, ze werkt niet bij mij, en ik snap er niet zo heel veel van om te weten waar of wat er mis gaat. Daarom wou ik hier hulp vragen . Dit is de code
Hij heeft niets gezegd van extra packages nodig ofzo helaas. En voor hem is het ook al vrij lang geleden dat hij dit gedaan heeft . Zeker ligt het niet aan een te oude versie van Miktex ofzo. Ik werk met Miktex 2.9.
PS Ik heb wel al een tijdelijke oplossing bedacht, maar wou het graag nog beter . Dat is wat ik voorlopig heb:
Code: Selecteer alles
\makeatletter
\newcommand\textsubscript[1]{\@textsubscript{\selectfont#1}}
\def\@textsubscript#1{{\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
\newcommand\textbothscript[2]{%
\@textbothscript{\selectfont#1}{\selectfont#2}}
\def\@textbothscript#1#2{%
{\m@th\ensuremath{%
^{\mbox{\fontsize\sf@size\z@#1}}%
_{\mbox{\fontsize\sf@size\z@#2}}}}}
\def\@super{^}\def\@sub{_}
\catcode`^\active\catcode`_\active
\def\@super@sub#1_#2{\textbothscript{#1}{#2}}
\def\@sub@super#1^#2{\textbothscript{#2}{#1}}
\def\@@super#1{\@ifnextchar_{\@super@sub{#1}}{\textsuperscript{#1}}}
\def\@@sub#1{\@ifnextchar^{\@sub@super{#1}}{\textsubscript{#1}}}
\def^{\let\@next\relax\ifmmode\@super\else\let\@next\@@super\fi\@next}
\def_{\let\@next\relax\ifmmode\@sub\else\let\@next\@@sub\fi\@next}
\makeatother
PS Ik heb wel al een tijdelijke oplossing bedacht, maar wou het graag nog beter . Dat is wat ik voorlopig heb:
Code: Selecteer alles
\newcommand{\superscript}[1]{\ensuremath{^{\textrm{#1}}}}
\newcommand{\subscript}[1]{\ensuremath{_{\textrm{#1}}}}