Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Komplexer Unterstrich?

765 views
Skip to first unread message

Mark Paede

unread,
Aug 11, 2000, 3:00:00 AM8/11/00
to
Hallo!

Zur Kennzeichnung von komplexen Variablen werden diese ja
unterstrichen dargestellt. Nur ist \underline zu lang dafuer, ich bin
mir auch sicher irgendwo schon mal eine Loesung (mit einem kurzen
Unterstrich) gesehen zu haben, kann sie aber nicht mehr finden.

Dankbar fuer jede Hilfe,
Mark

David Kastrup

unread,
Aug 11, 2000, 3:00:00 AM8/11/00
to
Mark Paede <mpa...@hotmail.com> writes:

> Zur Kennzeichnung von komplexen Variablen werden diese ja
> unterstrichen dargestellt. Nur ist \underline zu lang dafuer, ich
> bin mir auch sicher irgendwo schon mal eine Loesung (mit einem
> kurzen Unterstrich) gesehen zu haben, kann sie aber nicht mehr
> finden.

Ist ja wohl in absolut jeder lausigen Anleitung zum Mathemodus von TeX
und/oder LaTeX enthalten.

\b


--
David Kastrup Phone: +49-234-32-25570
Email: d...@neuroinformatik.ruhr-uni-bochum.de Fax: +49-234-32-14209
Institut für Neuroinformatik, Universitätsstr. 150, 44780 Bochum, Germany

Mark Paede

unread,
Aug 11, 2000, 3:00:00 AM8/11/00
to
On 11 Aug 2000 11:23:33 +0200, David Kastrup
<d...@mailhost.neuroinformatik.ruhr-uni-bochum.de> wrote:

>\b
Hm, den hatte ich zwar gesucht, aber die Loesung ist doch nicht so
optimal, z.B. sieht \b{\ensuremath U} ziemlich bescheiden aus. Im
Prinzip ist das wohl das gleiche Problem wie bei \underline - naemlich
dass die Mittelung auf das gesamte Zeichen bezogen wird, was aber bei
kursiven Zeichen IMHO nicht sinnvoll ist. Kann man das irgendwie
vermeiden oder gibt es noch eine andere Leosung?

Mark

Mark Paede

unread,
Aug 11, 2000, 3:00:00 AM8/11/00
to
On 11 Aug 2000 11:23:33 +0200, David Kastrup
<d...@mailhost.neuroinformatik.ruhr-uni-bochum.de> wrote:

>Mark Paede <mpa...@hotmail.com> writes:
>
>> Zur Kennzeichnung von komplexen Variablen werden diese ja
>> unterstrichen dargestellt. Nur ist \underline zu lang dafuer, ich
>> bin mir auch sicher irgendwo schon mal eine Loesung (mit einem
>> kurzen Unterstrich) gesehen zu haben, kann sie aber nicht mehr
>> finden.
>
>Ist ja wohl in absolut jeder lausigen Anleitung zum Mathemodus von TeX
>und/oder LaTeX enthalten.

Leider nicht - z.B. im Kopka (und anderen) findet man \b nicht im
Mathe-Bereich, wo ich gesucht hatte, sondern unter Akzente...

>\b
Danke, der ists.

Mark

David Kastrup

unread,
Aug 11, 2000, 3:00:00 AM8/11/00
to
Mark Paede <mpa...@hotmail.com> writes:

> On 11 Aug 2000 11:23:33 +0200, David Kastrup
> <d...@mailhost.neuroinformatik.ruhr-uni-bochum.de> wrote:
>

> >\b
> Hm, den hatte ich zwar gesucht, aber die Loesung ist doch nicht so
> optimal, z.B. sieht \b{\ensuremath U} ziemlich bescheiden aus. Im
> Prinzip ist das wohl das gleiche Problem wie bei \underline - naemlich
> dass die Mittelung auf das gesamte Zeichen bezogen wird, was aber bei
> kursiven Zeichen IMHO nicht sinnvoll ist. Kann man das irgendwie
> vermeiden oder gibt es noch eine andere Leosung?


Sorry, da habe ich mich vertan. \b ist ein Textakzent, kein
Matheakzent. Unterstrich in Mathe finde ich in der Tat jetzt auf
Anhieb nicht.

Hans Friedrich Steffani

unread,
Aug 12, 2000, 3:00:00 AM8/12/00
to
On Fri, 11 Aug 2000 11:00:54 +0200, Mark Paede <mpa...@hotmail.com> wrote:
>Zur Kennzeichnung von komplexen Variablen werden diese ja
>unterstrichen dargestellt. Nur ist \underline zu lang dafuer, ich bin
>mir auch sicher irgendwo schon mal eine Loesung (mit einem kurzen
>Unterstrich) gesehen zu haben, kann sie aber nicht mehr finden.

Ich empfehle zuallererst logisches Markup! Also erstmal
\newcommand{\compl}[1]{\underline{#1}}

Jetzt hat man erstmal Ruhe und kann sich an einem verregneten
Wocheende um eine neue Definition von \compl bemuehen. Hilfreich ist
dabei sicher ein Blick in die Definition von \underline.

Hans Friedrich Steffani

--
Hans Friedrich Steffani
Institut fuer Elektrische Maschinen und Antriebe, TU Chemnitz
mailto:hans.s...@e-technik.tu-chemnitz.de
http://www.tu-chemnitz.de/~hfst/

Mark Paede

unread,
Aug 14, 2000, 3:00:00 AM8/14/00
to
On 12 Aug 2000 10:04:01 GMT, hans.s...@e-technik.tu-chemnitz.de
(Hans Friedrich Steffani) wrote:

>Ich empfehle zuallererst logisches Markup! Also erstmal
>\newcommand{\compl}[1]{\underline{#1}}

:-) Genau dafuer liebe ich Tex...

>Jetzt hat man erstmal Ruhe und kann sich an einem
>verregneten Wocheende

Ohje, damit sieht's zur Zeit aber eng aus - zum Glueck :-)

>um eine neue Definition von \compl bemuehen. Hilfreich ist
>dabei sicher ein Blick in die Definition von \underline.

Irgendwie kann ich mir nicht vorstellen, dass es da keine fertige
Loesung gibt, aber sei's drum. Also gesetz dem Fall obiger -
unangenehmer - Fall tritt ein, wo finde ich diese Definition?
Wobei ich schaetze, dass ich damit groessere Probleme kriege: Sowohl
\underline als auch \b zentrieren mittig auf den Buchstaben, auch bei
kursiven - hier muesste dann ein "kursiv-Ausgleich" erfolgen. Das
wiederum hoert sich so an, als ob ich mich mit den Schriften
beschaeftigen muss...

Mark


Hans Friedrich Steffani

unread,
Aug 14, 2000, 3:00:00 AM8/14/00
to
On Mon, 14 Aug 2000 15:26:38 +0200, Mark Paede <mpa...@hotmail.com> wrote:
>>um eine neue Definition von \compl bemuehen. Hilfreich ist
>>dabei sicher ein Blick in die Definition von \underline.

> Also gesetz dem Fall obiger -


>unangenehmer - Fall tritt ein, wo finde ich diese Definition?

Z.B. in latex.ltx dort allerdings nur den nackten Code. Ansonsten
sollte aus ltboxes.dtx auch eine dvi-Datei mit dem dokumentierte Code
zu erstellen sei.

Mark Paede

unread,
Aug 15, 2000, 3:00:00 AM8/15/00
to
On 14 Aug 2000 16:33:00 GMT, hans.s...@e-technik.tu-chemnitz.de
(Hans Friedrich Steffani) wrote:

>On Mon, 14 Aug 2000 15:26:38 +0200, Mark Paede <mpa...@hotmail.com> wrote:
>>>um eine neue Definition von \compl bemuehen. Hilfreich ist
>>>dabei sicher ein Blick in die Definition von \underline.
>
>> Also gesetz dem Fall obiger -
>>unangenehmer - Fall tritt ein, wo finde ich diese Definition?
>
>Z.B. in latex.ltx dort allerdings nur den nackten Code. Ansonsten
>sollte aus ltboxes.dtx auch eine dvi-Datei mit dem dokumentierte Code
>zu erstellen sei.

Danke, da habe ich gerade mal geguckt:
% \DescribeMacro\underline
% |\underline{|\meta{text}|}| : Makes an underlined hbox with
% \meta{text} in it.
Damit erfuellen sich genau die Befuerchtungen meines letzten Postings.
Nicht dass ich spaeter die Definition genau verstehen wuerde, aber da
ist die hbox das Problem, da es dieser ja egal ist, ob das Zeichen
gerade oder kursiv ist.
Letztendlich muss man wohl doch auf die Zeichenebene zurueckgehen.

Mark

Mark Paede

unread,
Aug 15, 2000, 3:00:00 AM8/15/00
to
On 11 Aug 2000 11:23:33 +0200, David Kastrup
<d...@mailhost.neuroinformatik.ruhr-uni-bochum.de> wrote:

>\b [Zur Kennzeichnung von komplexen Variablen]...
ist im Mathe-Modus leider nicht die Loesung, wie die Veruche mit
diversen "U" zeigen:
$U${\em U} {\em U\b{U}} $\b{U}\b{\ensuremath{U}}\b{\em U}U$

Gibt es fuer den Mathe-Modus was zu \b vergleichbares? Die Schriften
zu mischen ist ja nicht das wahre...

Mark

Hans Friedrich Steffani

unread,
Aug 15, 2000, 3:00:00 AM8/15/00
to
On Tue, 15 Aug 2000 11:04:08 +0200, Mark Paede <mpa...@hotmail.com> wrote:
>Damit erfuellen sich genau die Befuerchtungen meines letzten Postings.
>Nicht dass ich spaeter die Definition genau verstehen wuerde, aber da
>ist die hbox das Problem, da es dieser ja egal ist, ob das Zeichen
>gerade oder kursiv ist.

Variablen sind doch immer kursiv?

Mark Paede

unread,
Aug 15, 2000, 3:00:00 AM8/15/00
to
On 15 Aug 2000 09:40:53 GMT, hans.s...@e-technik.tu-chemnitz.de
(Hans Friedrich Steffani) wrote:

>On Tue, 15 Aug 2000 11:04:08 +0200, Mark Paede <mpa...@hotmail.com> wrote:
>>Damit erfuellen sich genau die Befuerchtungen meines letzten Postings.
>>Nicht dass ich spaeter die Definition genau verstehen wuerde, aber da
>>ist die hbox das Problem, da es dieser ja egal ist, ob das Zeichen
>>gerade oder kursiv ist.
>
>Variablen sind doch immer kursiv?

Ja, genau da ist das Problem: Bei einem kursiven Zeichen (Variable)
wird \underline zu lang. Mit $\b{U}$ wird das U gerade gesetzt, bei
$\b{\ensuremath U}$ sitzt der Unterstrich mittig unter der Mathe-Box
und {\em\b{U}} ist ein anderes u als $U$.
Wenn ich jetzt \underline anpassen wollte braeuchte ich verschiedene
Varianten fuer z.B. A, U und u. Da ich ziemlich viele komplexe
Variable habe waere das einigermassen muehsam immer die richtige
Anpassung rauszusuchen.

Mark

Christoph Wutzke

unread,
Aug 15, 2000, 3:00:00 AM8/15/00
to
In article <734ips0jq17vijp9l...@4ax.com> Mark Paede <mpa...@hotmail.com> writes:

> >
> >Variablen sind doch immer kursiv?
> Ja, genau da ist das Problem: Bei einem kursiven Zeichen (Variable)
> wird \underline zu lang. Mit $\b{U}$ wird das U gerade gesetzt, bei
> $\b{\ensuremath U}$ sitzt der Unterstrich mittig unter der Mathe-Box
> und {\em\b{U}} ist ein anderes u als $U$.
> Wenn ich jetzt \underline anpassen wollte braeuchte ich verschiedene
> Varianten fuer z.B. A, U und u. Da ich ziemlich viele komplexe
> Variable habe waere das einigermassen muehsam immer die richtige
> Anpassung rauszusuchen.
>

Sorry, falls der Tip schon kam; ich hab das nicht verfolgt: accents.sty
von Javier Bezos, zu finden unter

CTAN:macros/latex/contrib/supported/bezos

könnte hilfreich sein.

Christoph

--
Christoph Wutzke wut...@numerix.fernuni-hagen.de

Mark Paede

unread,
Aug 15, 2000, 3:00:00 AM8/15/00
to
On 15 Aug 2000 10:58:07 GMT, wut...@numerix.fernuni-hagen.de
(Christoph Wutzke) wrote:

Kam noch nicht - und ist anscheinend genau das, was ich gesucht habe
:-)
Danke!

Mark

Daniel Lutz

unread,
Aug 15, 2000, 3:00:00 AM8/15/00
to
Mark Paede <mpa...@hotmail.com> wrote in message
news:9s1ipsghceinb8q3d...@4ax.com...

> On 11 Aug 2000 11:23:33 +0200, David Kastrup
> <d...@mailhost.neuroinformatik.ruhr-uni-bochum.de> wrote:
>
> >\b [Zur Kennzeichnung von komplexen Variablen]...
> ist im Mathe-Modus leider nicht die Loesung, wie die Veruche mit
> diversen "U" zeigen:
> $U${\em U} {\em U\b{U}} $\b{U}\b{\ensuremath{U}}\b{\em U}U$
>
> Gibt es fuer den Mathe-Modus was zu \b vergleichbares? Die Schriften

Ja:


\documentclass{article}
\makeatletter

% \ubar[<pos>]{<math>}
% Setzt (rel. kurze) Linie unter <math>.
% Linie wird um <pos>*Höhe nach rechts verschoben.
% Bsp:
% \ubar Z_a^\prime
% \ubar[-0.1]{Y}_a^b => \/ b
% / a
% --
\newcommand{\ub@rs}[4]{{% #1: \xxxstyle. #2: <math>. #3: _^. #4: <pos>
\setbox\z@\hbox{$\m@th#1{#2}$}%
\setbox\@ne\null \ht\@ne\ht\z@ \dp\@ne\dp\z@
\dimen@.277em% Mind.-Breite Unterstrich
\wd\@ne.5\wd\z@ \ifdim\wd\@ne < \dimen@ \wd\@ne\dimen@ \fi
\setbox\tw@\hbox{$\m@th#1\underline{\box\@ne}$}% \hbox2: Unterstrich
\setbox\thr@@\hbox{$\m@th#1{#2}_{\copy\z@}$}
\dimen@\wd\thr@@ \advance\dimen@-\wd\z@
\advance\dimen@-\wd\tw@ \divide\dimen@\tw@
% \dimen@: horiz. Abstand zwischen Boxes, wenn gegeneinander zentriert
\dimen@ii\ht\z@ \advance\dimen@ii\dp\z@% Höhe von <math>
\advance\dimen@ #4\dimen@ii
\dimen@ii\wd\z@ \advance\dimen@ii-\wd\tw@ \advance\dimen@ii-\dimen@
\ifdim \dimen@ii > \z@
% <math> reicht weiter nach rechts als Unterstrich
\ifdim \dimen@ > \z@
% <math> reicht weiter nach links als Unterstrich
\kern\dimen@
\fi
\wd\tw@\z@ \box\tw@
\kern-\dimen@
#2#3
\else
% Unterstrich reicht weiter nach rechts als <math>
\ifdim \dimen@ > \z@
% <math> reicht weiter nach links als Unterstrich
\wd\z@\z@ \box\z@%
\kern\dimen@
\else
\wd\z@\z@
\kern-\dimen@ \box\z@ \kern\dimen@
\fi
\box\tw@ #3
\fi}}
\newcommand{\ub@rscr}[3]{%
\mathchoice%
{\ub@rs\displaystyle{#2}{#3}{#1}}
{\ub@rs\textstyle{#2}{#3}{#1}}
{\ub@rs\scriptstyle{#2}{#3}{#1}}
{\ub@rs\scriptscriptstyle{#2}{#3}{#1}}}
\newcommand{\ubar}[2][-0.1]{%
\s@vescripts
{%
\ub@rscr{#1}{#2}%
{%
\ifx\s@bscript\relax\else _{\s@bscript} \fi
\ifx\s@perscript\relax\else ^{\s@perscript} \fi
}%
}%
}

% \s@vescripts{<after>}
% Versucht, die folgenden Tokens als Sub-/Superscripts auszuwerten
% (werden entfernt).
% Wenn keine Sub-/Superscripts: \s@bscript bzw. \s@perscript = \relax.
% <after> wird expandiert, _nachdem_ \s@bscript und \s@perscript
% gesetzt worden sind
% Bsp.:
% \s@vescripts{(\s@bscript)[\s@perscript]}_a^{bc} % --> (a)[bc]
% \s@vescripts{(\s@bscript)[\s@perscript]}x % --> ()[]x
\newcommand{\s@vescripts}[1]{%
\let\s@bscript\@nil
\let\s@perscript\@nil
\s@vesubscript
{%
\ifx\s@bscript\@nil
\let\s@bscript\relax
\fi
\ifx\s@perscript\@nil
\let\s@perscript\relax
\fi
#1%
}%
}
\newcommand{\s@bscript}{}
\newcommand{\s@perscript}{}
\newcommand{\s@vesubscript@}[3]{\def\s@bscript{#3}\s@vesubscript{#1}}
\newcommand{\s@vesuperscript@}[3]{\def\s@perscript{#3}\s@vesubscript{#1}}
\newcommand{\s@vesubscript}[1]{%
\ifx\s@bscript\@nil

\ReturnElseFi{\IfNextCatThenElse_{\s@vesubscript@{#1}}{\s@vesuperscript{#1}}
}%
\else
\ReturnFi{\s@vesuperscript{#1}}%
\fi
}
\newcommand{\s@vesuperscript}[1]{%
% Wird nur erst eingefügt (von \s@vesubscript),
% wenn _ schon behandelt
\ifx\s@perscript\@nil
\ReturnElseFi{\IfNextCatThenElse^{\s@vesuperscript@{#1}}{#1}}%
\else
\ReturnFi{#1}%
\fi
}

% \IfNextCatThenElse<token>{<true clause>}{<false clause>}
% Prüft ob, das nächste token den gleiche Catcode aufweist
% wie <token>.
% Entlehnt von \@ifnextchar in latex.ltx (ltdfns.dtx)
% Bsp.:
% $\IfNextCatThenElse_{T}{F}_a$ % --> T_a
% $\IfNextCatThenElse_{T}{F}-a$ % --> F-a
% \catcode`-=8
% $\IfNextCatThenElse_{T}{F}_a$ % --> T_a
% $\IfNextCatThenElse_{T}{F}-a$ % --> T-a
\newcommand*{\IfNextCatThenElse}[3]{}
\let\IfNextCatThenElse=\:
\def\:{\@xifnct} \expandafter\def\: {\futurelet\@let@token\@ifnct}
\let\:\IfNextCatThenElse
\def\IfNextCatThenElse#1#2#3{%
\let\reserved@d=#1%
\def\reserved@a{#2}\def\reserved@b{#3}%
\futurelet\@let@token\@ifnct}
\newcommand*{\@ifnct}{%
\relax\ifx\@let@token\@sptoken
\let\reserved@c\@xifnct
\else
\ifcat\noexpand\@let@token\reserved@d
\let\reserved@c\reserved@a
\else
\let\reserved@c\reserved@b
\fi
\fi
\reserved@c}

\newcommand{\ReturnFi}{}
\long\def\ReturnFi#1\fi{\fi #1}
\newcommand{\ReturnElseFi}{}
\long\def\ReturnElseFi#1\else#2\fi{\fi #1}

\begin{document}
Der Code ab der Zeile mit \verb|\newcommand{\ubar}|
dient nur dazu, die Sub- und Superscripts in die
Argumente von \verb|\mathchoice| einzuschliessen.

Unterschied zu Billigvariante:
\newcommand{\ubarm}[2][-0.1]{\ub@rscr{#1}{#2}\relax}
$\ubar Y_a^b$ oder $\ubarm Y_a^b$.
\end{document}


Gruss
Dani

Mark Paede

unread,
Aug 15, 2000, 3:00:00 AM8/15/00
to
On Tue, 15 Aug 2000 15:24:08 +0200, "Daniel Lutz" <dl...@ntb.ch>
wrote:

>Mark Paede <mpa...@hotmail.com> wrote in message
>news:9s1ipsghceinb8q3d...@4ax.com...
>> On 11 Aug 2000 11:23:33 +0200, David Kastrup
>> <d...@mailhost.neuroinformatik.ruhr-uni-bochum.de> wrote:
>>
>> >\b [Zur Kennzeichnung von komplexen Variablen]...
>> ist im Mathe-Modus leider nicht die Loesung, wie die Veruche mit
>> diversen "U" zeigen:
>> $U${\em U} {\em U\b{U}} $\b{U}\b{\ensuremath{U}}\b{\em U}U$
>>
>> Gibt es fuer den Mathe-Modus was zu \b vergleichbares? Die Schriften
>
>Ja:

>% \ubar[<pos>]{<math>}
[...]
Dachte mir doch, dass das nicht so einfach ist...
Im Moment bin ich mit accents.sty (vgl. Posting von Christoph) ganz
zufrieden. Deine Loesung sieht aufwaendiger, aber flexibler aus, ich
werde sie mir auf jeden Fall merken (bzw. abspeichern).

Danke & Gruss
Mark


0 new messages