Gebruikersavatar
Drieske
Artikelen: 0
Berichten: 10.179
Lid geworden op: za 12 jul 2008, 17:07

Sub- en superscript uitbouwen in latex

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

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
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 :P . 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 :P . Dat is wat ik voorlopig heb:

Code: Selecteer alles

\newcommand{\superscript}[1]{\ensuremath{^{\textrm{#1}}}}

\newcommand{\subscript}[1]{\ensuremath{_{\textrm{#1}}}}
Zoek je graag naar het meest interessante wetenschapsnieuws? Wij zoeken nog een vrijwilliger voor ons nieuwspostteam.
EvilBro
Artikelen: 0
Berichten: 7.081
Lid geworden op: vr 30 dec 2005, 09:45

Re: Sub- en superscript uitbouwen in latex

Drieske schreef: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}}}}
plagiaat?
Gebruikersavatar
Drieske
Artikelen: 0
Berichten: 10.179
Lid geworden op: za 12 jul 2008, 17:07

Re: Sub- en superscript uitbouwen in latex

Van beiden had ik geen idee ;) . Ik had het aan iemand gevraagd en die gaf mij deze code. De ene optie werkte, maar vond ik nog vrij veel werk. De andere dus niet. Nu, los daarvan, vind ik plagiaat een zwaar woord, daar het antwoorden op een probleem zijn. Als ik het juist interpreteerde. En zeker die tweede is imo perfect zelf te bedenken.
Zoek je graag naar het meest interessante wetenschapsnieuws? Wij zoeken nog een vrijwilliger voor ons nieuwspostteam.
Gebruikersavatar
jhnbk
Artikelen: 0
Berichten: 6.905
Lid geworden op: za 16 dec 2006, 09:10

Re: Sub- en superscript uitbouwen in latex

Ik denk dat je best eens gaat kijken naar de implementatie van de huidige ^ en _ in mathmode en dan het 'vertaalt'. Ik weet echter niet of die definities in tex macro's staan of hard coded in de tex interpreter zitten.

De tijdelijke oplossing zou ik gebruiken aangezien deze waarschijnlijk zeker nooit problemen gaat geven met volgende versies van LaTeX
Het vel van de beer kunnen verkopen vraagt moeite tenzij deze dood voor je neervalt. Die kans is echter klein dus moeten we zelf moeite doen.
EvilBro
Artikelen: 0
Berichten: 7.081
Lid geworden op: vr 30 dec 2005, 09:45

Re: Sub- en superscript uitbouwen in latex

Nu, los daarvan, vind ik plagiaat een zwaar woord, daar het antwoorden op een probleem zijn. Als ik het juist interpreteerde. En zeker die tweede is imo perfect zelf te bedenken.
Nou en? Jij doet alsof je iets bedacht hebt terwijl dat niet zo is. Je hebt gewoon iets overgenomen. Dat is plagiaat. Of jij dat een zwaar woord vindt, of het antwoorden zijn danwel dat je het zelf zou kunnen bedenken is totaal niet relevant. Gewoon niet doen alsof je iets zelf hebt bedacht.
Gebruikersavatar
Drieske
Artikelen: 0
Berichten: 10.179
Lid geworden op: za 12 jul 2008, 17:07

Re: Sub- en superscript uitbouwen in latex

Nou en? Jij doet alsof je iets bedacht hebt terwijl dat niet zo is. Je hebt gewoon iets overgenomen. Dat is plagiaat. Of jij dat een zwaar woord vindt, of het antwoorden zijn danwel dat je het zelf zou kunnen bedenken is totaal niet relevant. Gewoon niet doen alsof je iets zelf hebt bedacht.
Waar heb ik gezegd dat ik iets bedacht heb? Ik heb gezegd dat ik een tijdelijke oplossing had. Deze was voor mij van een maat. Excuses als dat steeds moet vermeld worden. Dat had ik nerges zien staan. Van de eerste heb ik het btw wél aangegeven. Dat hij dat van ergens anders haalt, kan ik niet weten. En los daarvan zie ik niet in waarom ik hier iets zou posten waarvan ik zelf al weet dat het gewoon op internet staat. Dat tweede had ik gewoon kunnen weglaten, maar ik zet het hier toch. Om te tonen dat ik, dacht ik, al een oplossing had.

@jhnbk: Bedankt. Dan hou ik het daar gewoon op, want ben niet echt een techneut ;) .
Zoek je graag naar het meest interessante wetenschapsnieuws? Wij zoeken nog een vrijwilliger voor ons nieuwspostteam.
EvilBro
Artikelen: 0
Berichten: 7.081
Lid geworden op: vr 30 dec 2005, 09:45

Re: Sub- en superscript uitbouwen in latex

Waar heb ik gezegd dat ik iets bedacht heb?
Drieske schreef: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}}}}
Gebruikersavatar
Drieske
Artikelen: 0
Berichten: 10.179
Lid geworden op: za 12 jul 2008, 17:07

Re: Sub- en superscript uitbouwen in latex

Ja, sorry voor de ongelukkige woordkeus dan. Het was iig nooit mijn intentie om plagiaat te plegen. ALS ik dat al zou willen doen, ga ik dat zeker niet op andere fora in het lang en breed bekend maken. Aangezien LateX code nooit openbaar wordt gemaakt bij het afgeven van een verslag (je moet enkel het pdf afgeven), zou niemand daar ooit achter kunnen komen, tenzij ik het erges anders zet da ik da gebruik. Maar bon, wat ik ook beweer, veel zal dat voor jou niet veranderen.
Zoek je graag naar het meest interessante wetenschapsnieuws? Wij zoeken nog een vrijwilliger voor ons nieuwspostteam.
Gebruikersavatar
jhnbk
Artikelen: 0
Berichten: 6.905
Lid geworden op: za 16 dec 2006, 09:10

Re: Sub- en superscript uitbouwen in latex

Bon. Dit gezegd zijnde houden we de discussie on topic graag!
Het vel van de beer kunnen verkopen vraagt moeite tenzij deze dood voor je neervalt. Die kans is echter klein dus moeten we zelf moeite doen.

Terug naar “Informatica en programmeren”