Re: “Fusione” di due caratteri

#7928
Up
0
Down
::

Ho provato il comando fusione, perché mi serviva per unire due simboli, e non mi funzionava perché al posto della seconda variabile #2 mi dava sempre \cdot
Riprendo questo topic per questa piccola correzione perché forse appunto hai dimenticato il secondo parametro #2 al posto di \cdot.
`\newcommand{\fusione}[2]{%
\def\fusioneinn##1##2{\ooalign{\hfil$##1#1$\hfil\cr\hfil$##2$\hfil\crcr}}%
\mathop{%
\vphantom{#1}%
\mathpalette\fusioneinn#2}\displaylimits}`

Errore di copiatura fu 😀

Su comp.text.tex Donald Arsenau ha mostrato una macro che fa migliorare di molto il codice precedente
`\makeatletter
%%% La seguente macro è di D. Arsenau
\def\mov@rlay#1#2{\leavevmode\vtop{%
\baselineskip\z@skip \lineskiplimit-\maxdimen
\ialign{\hfil$\m@th#1##$\hfil\cr#2\crcr}}}
\newcommand{\fusione}[3][\mathord]{%
#1{%
\ifx#1\mathop\vphantom{#2}\fi%
\mathpalette\mov@rlay{#2\cr#3}}\ifx#1\mathop\displaylimits\fi}
\makeatother
\newcommand{\bigcupcdot}{\fusione[\mathop]{\bigcup}{\cdot}}
\newcommand{\bigcupminus}{\fusione[\mathop]{\bigcup}{-}}
\newcommand{\nnrightarrow}{\fusione[\mathrel]{\parallel}{\longrightarrow}}
\newcommand{\machsum}{\fusione[\mathbin]{\lower.2ex\hbox{$\square$}}{\circ}}`
Non c’è più bisogno di ridefinire un comando interno. Gli argomenti sono:

#1 (opzionale}: il tipo di simbolo richiesto (\mathop, \mathbin o \mathrel); di default è \mathord
#2: il simbolo più ampio in larghezza
#3: il simbolo da sovrapporre

Ciao
Enrico

Go to top