Fix display of some math symbols

* Fix spacing in lib/symbols after recent commits about math spacing, as well as
  older spacing issues (e.g. \Join).

* InsetMathKern now uses the same em value as other math length commands.

What is nice is that the kerning amount now matches the ones found in the
packages definition (modulo 10mu that lyx currently adds between relations).

Testcase: $\CheckedBox\LEFTcircle\RIGHTcircle\photon\gluon\vcentcolon\dblcolon\Coloneqq\eqcolon\models\hookrightarrow\bowtie\hookleftarrow\Join\APLinv\neq$
This commit is contained in:
Guillaume Munch 2016-11-11 20:52:03 +01:00
parent 1805b41564
commit ad7e2435cf
2 changed files with 33 additions and 28 deletions

View File

@ -300,8 +300,8 @@ spadesuit cmsy 127 170 mathord ♠
# We define lyxnot as mathrel in order to have proper alignment # We define lyxnot as mathrel in order to have proper alignment
lyxnot cmsy 54 47 mathrel / lyxnot cmsy 54 47 mathrel /
iffont cmsy iffont cmsy
# 9mu = 0.5em which is the extra space added to relation operators # 10mu is the extra space added to relation operators
\def\not{\lyxnot\kern-9mu} \def\not{\lyxnot\kern-20mu}
else else
\def\not{\kern4mu\lyxnot\kern-19mu} \def\not{\kern4mu\lyxnot\kern-19mu}
endif endif
@ -692,7 +692,7 @@ AC wasy 58 0 textmode ∿ wasysym,amstext,lyxmath
\def\HF{\approx} wasysym \def\HF{\approx} wasysym
VHF wasy 64 0 x ≋ # triple tilde VHF wasy 64 0 x ≋ # triple tilde
Square wasy 50 0 x □ Square wasy 50 0 x □
\def\CheckedBox{\Square\kern-0.8em\checked} wasysym \def\CheckedBox{\Square\kern-13.4mu\checked} wasysym
XBox wasy 52 0 x ⊠ XBox wasy 52 0 x ⊠
hexagon wasy 55 0 x ⬡ hexagon wasy 55 0 x ⬡
pentagon wasy 68 0 x ⬠ pentagon wasy 68 0 x ⬠
@ -726,8 +726,8 @@ Leftcircle wasy 73 0 x x
LEFTCIRCLE wasy 71 0 x ◖ LEFTCIRCLE wasy 71 0 x ◖
Rightcircle wasy 74 0 x x Rightcircle wasy 74 0 x x
RIGHTCIRCLE wasy 72 0 x ◗ RIGHTCIRCLE wasy 72 0 x ◗
\def\LEFTcircle{\LEFTCIRCLE\kern-1em\Circle} wasysym \def\LEFTcircle{\LEFTCIRCLE\kern-13.4mu\Circle} wasysym
\def\RIGHTcircle{\RIGHTCIRCLE\kern-1em\Circle} wasysym \def\RIGHTcircle{\RIGHTCIRCLE\kern-13.4mu\Circle} wasysym
# Defined by amsmath.sty # Defined by amsmath.sty
@ -790,7 +790,7 @@ APLup wasy 0 0 x x
APLdown wasy 70 0 x x APLdown wasy 70 0 x x
APLinput wasy 125 0 x x APLinput wasy 125 0 x x
APLcomment wasy 127 0 x x APLcomment wasy 127 0 x x
\def\APLinv{\div\kern-17mu\APLbox} wasysym \def\APLinv{\div\kern-17.9mu\APLbox} wasysym
APLuparrowbox wasy 110 0 x ⍐ APLuparrowbox wasy 110 0 x ⍐
APLdownarrowbox wasy 111 0 x ⍗ APLdownarrowbox wasy 111 0 x ⍗
APLleftarrowbox wasy 112 0 x ⍇ APLleftarrowbox wasy 112 0 x ⍇
@ -801,11 +801,11 @@ Bowtie wasy 49 0 x ⋈
leftturn wasy 34 0 x ⟲ leftturn wasy 34 0 x ⟲
rightturn wasy 33 0 x ⟳ rightturn wasy 33 0 x ⟳
# diagrams # diagrams
\def\photon{\AC\kern-3mu\AC\kern-3mu\AC\kern-3mu\AC} wasysym \def\photon{\AC\AC\AC\AC} wasysym
lyxgluonelement wasy 80 0 x x notexisting lyxgluonelement wasy 80 0 x x hiddensymbol
lyxgluonbelement wasy 81 0 x x notexisting lyxgluonbelement wasy 81 0 x x hiddensymbol
lyxgluoneelement wasy 82 0 x x notexisting lyxgluoneelement wasy 82 0 x x hiddensymbol
\def\gluon{\lyxgluonbelement\kern-3mu\lyxgluonelement\kern-3mu\lyxgluonelement\kern-3mu\lyxgluonelement\kern-3mu\lyxgluonelement\kern-3mu\lyxgluonelement\kern-3mu\lyxgluonelement\kern-3mu\lyxgluoneelement} wasysym \def\gluon{\lyxgluonbelement\lyxgluonelement\lyxgluonelement\lyxgluonelement\lyxgluonelement\lyxgluonelement\lyxgluonelement\lyxgluoneelement} wasysym
# special characters # special characters
cent wasy 103 0 x &#00A2; cent wasy 103 0 x &#00A2;
permil wasy 104 0 x ‰ permil wasy 104 0 x ‰
@ -1110,20 +1110,21 @@ pod lyxblacktext 0 0 func x amsmath
# mathtools.sty # mathtools.sty
\def\vcentcolon{:} mathrel : mathtools vcentcolon cmr 58 58 mathrel : mathtools
\def\dblcolon{\vcentcolon\kern-8mu\vcentcolon} mathrel :: mathtools ordinarycolon cmr 58 58 mathrel : mathtools
\def\coloneqq{\vcentcolon\kern-7mu=} mathrel ≔ mathtools \def\dblcolon{\vcentcolon\kern-10.9mu\vcentcolon} mathrel :: mathtools
\def\Coloneqq{\dblcolon\kern-7mu=} mathrel ::= mathtools \def\coloneqq{\vcentcolon\kern-11.2mu=} mathrel ≔ mathtools
\def\coloneq{\vcentcolon\kern-7mu-} mathrel :- mathtools \def\Coloneqq{\dblcolon\kern-11.2mu=} mathrel ::= mathtools
\def\Coloneq{\dblcolon\kern-7mu-} mathrel ::- mathtools \def\coloneq{\vcentcolon\kern-11.2mu-} mathrel :- mathtools
\def\eqqcolon{=\kern-8mu\vcentcolon} mathrel ≕ mathtools \def\Coloneq{\dblcolon\kern-11.2mu-} mathrel ::- mathtools
\def\Eqqcolon{=\kern-8mu\dblcolon} mathrel =:: mathtools \def\eqqcolon{=\kern-11.2mu\vcentcolon} mathrel ≕ mathtools
\def\eqcolon{-\kern-8mu\vcentcolon} mathrel -: mathtools \def\Eqqcolon{=\kern-11.2mu\dblcolon} mathrel =:: mathtools
\def\Eqcolon{-\kern-8mu\dblcolon} mathrel -:: mathtools \def\eqcolon{-\kern-11.2mu\vcentcolon} mathrel -: mathtools
\def\colonapprox{\vcentcolon\kern-7mu\approx} mathrel :≈ mathtools \def\Eqcolon{-\kern-11.2mu\dblcolon} mathrel -:: mathtools
\def\Colonapprox{\dblcolon\kern-7mu\approx} mathrel ::≈ mathtools \def\colonapprox{\vcentcolon\kern-11.2mu\approx} mathrel :≈ mathtools
\def\colonsim{\vcentcolon\kern-7mu\sim} mathrel :∼ mathtools \def\Colonapprox{\dblcolon\kern-11.2mu\approx} mathrel ::≈ mathtools
\def\Colonsim{\dblcolon\kern-7mu\sim} mathrel ::∼ mathtools \def\colonsim{\vcentcolon\kern-11.2mu\sim} mathrel :∼ mathtools
\def\Colonsim{\dblcolon\kern-11.2mu\sim} mathrel ::∼ mathtools
# #
@ -1152,7 +1153,7 @@ iffont cmsy
\def\impliedby{\Longleftarrow} mathrel ⟸ amsmath \def\impliedby{\Longleftarrow} mathrel ⟸ amsmath
\def\mapsto{\mapstochar\kern-9mu\rightarrow} mathrel ↤ \def\mapsto{\mapstochar\kern-9mu\rightarrow} mathrel ↤
\def\longmapsto{\mapstochar\kern-6mu\lyxbar\kern-11mu\rightarrow} mathrel ⟻ \def\longmapsto{\mapstochar\kern-6mu\lyxbar\kern-11mu\rightarrow} mathrel ⟻
\def\models{\vert\kern-7mu\lyxeq} mathrel ⊨ \def\models{\vert\kern-3mu\lyxeq} mathrel ⊨
else else
\def\implies{=>} mathrel ⟹ amsmath \def\implies{=>} mathrel ⟹ amsmath
\def\impliedby{<=} mathrel &#x27F8; amsmath \def\impliedby{<=} mathrel &#x27F8; amsmath
@ -1160,7 +1161,7 @@ endif
iffont cmm iffont cmm
\def\hookrightarrow{\lhook\kern-12mu\rightarrow} mathrel &#x21AA; \def\hookrightarrow{\lhook\kern-12mu\rightarrow} mathrel &#x21AA;
\def\hookleftarrow{\leftarrow\kern-12mu\rhook} mathrel &#x21A9; \def\hookleftarrow{\leftarrow\kern-12mu\rhook} mathrel &#x21A9;
\def\bowtie{\triangleright\kern-6mu\triangleleft} mathrel &#x22C8; \def\bowtie{\triangleright\kern-10mu\triangleleft} mathrel &#x22C8;
endif endif
iffont msa iffont msa
\def\dashrightarrow{\lyxdabar\lyxdabar\lyxright} mathrel &#x290F; amssymb \def\dashrightarrow{\lyxdabar\lyxdabar\lyxright} mathrel &#x290F; amssymb
@ -1171,7 +1172,7 @@ else
endif endif
\def\dasharrow{\dashrightarrow} mathrel &#x290F; amssymb \def\dasharrow{\dashrightarrow} mathrel &#x290F; amssymb
iffont msb iffont msb
\def\Join{\ltimes\kern-18.5mu\rtimes} amssymb \def\Join{\ltimes\kern-22mu\rtimes} amssymb
else else
\def\Join{|x|} amssymb \def\Join{|x|} amssymb
endif endif

View File

@ -49,7 +49,11 @@ void InsetMathKern::metrics(MetricsInfo & mi, Dimension & dim) const
{ {
dim.asc = 0; dim.asc = 0;
dim.des = 0; dim.des = 0;
// match em value used in mathed_*muskip
FontInfo const oldfont = mi.base.font;
mi.base.font.setFamily(SYMBOL_FAMILY);
dim.wid = wid_.inPixels(mi.base); dim.wid = wid_.inPixels(mi.base);
mi.base.font = oldfont;
} }