mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-25 10:58:52 +00:00
Use macros with parameters for modulo macros
It turns out that it is possible to use macros with parameters in lib/symbols. I use this to simplify the use of mod-like macros. Update documentation.
This commit is contained in:
parent
00a98856f8
commit
d59046512c
250
lib/doc/Math.lyx
250
lib/doc/Math.lyx
@ -236,6 +236,7 @@ logicalmkup
|
||||
\docbook_mathml_prefix 1
|
||||
\author -584632292 "Richard Kimberly Heck"
|
||||
\author -563046850 "Jean-Marc LASGOUTTES"
|
||||
\author -495245474 "Jean-Marc Lasgouttes"
|
||||
\author 177693 "x"
|
||||
\author 5863208 "ab"
|
||||
\author 47243155 "Jean-Marc"
|
||||
@ -29069,24 +29070,257 @@ modulo-
|
||||
\begin_layout Standard
|
||||
The modulo-function is special,
|
||||
because it exists in four variants.
|
||||
The variants in a displayed formula are:
|
||||
The variants in a
|
||||
\change_deleted -495245474 1689684546
|
||||
displayed
|
||||
\change_inserted -495245474 1689684548
|
||||
n inline
|
||||
\change_unchanged
|
||||
formula are:
|
||||
\change_deleted -495245474 1689684526
|
||||
|
||||
\begin_inset Formula
|
||||
\begin{align*}
|
||||
\underline{\textrm{Command}\raisebox{-0.9mm}{}} & & \underline{\textrm{Result}}\\
|
||||
\mathrm{a\backslash mod\textrm{␣}b} & & a\mod b\\
|
||||
\mathrm{a\backslash pmod\textrm{␣}b} & & a\pmod b\\
|
||||
\mathrm{a\backslash bmod\textrm{␣}b} & & a\bmod b\\
|
||||
\mathrm{a\backslash pod\textrm{␣}b} & & a\pod b
|
||||
\mathrm{a\backslash mod\textrm{␣}b\textrm{␣}} & & a\mod b\\
|
||||
\mathrm{a\backslash pmod\textrm{␣}b\textrm{␣}} & & a\pmod b\\
|
||||
\mathrm{a\backslash bmod\textrm{␣}b\textrm{␣}} & & a\bmod b\\
|
||||
\mathrm{a\backslash pod\textrm{␣}b\textrm{␣}} & & a\pod b
|
||||
\end{align*}
|
||||
|
||||
\end_inset
|
||||
|
||||
|
||||
\change_inserted -495245474 1689684215
|
||||
|
||||
\end_layout
|
||||
|
||||
\begin_layout Standard
|
||||
In an inline formula less space is set before the function names for all variants.
|
||||
By default the modulo-functions take only the first character following the command into account.
|
||||
\noindent
|
||||
\align center
|
||||
|
||||
\change_inserted -495245474 1689684215
|
||||
\begin_inset Tabular
|
||||
<lyxtabular version="3" rows="5" columns="2">
|
||||
<features booktabs="true" tabularvalignment="middle">
|
||||
<column alignment="left" valignment="top" width="0pt">
|
||||
<column alignment="block" valignment="top">
|
||||
<row>
|
||||
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684215
|
||||
Command
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684215
|
||||
Result
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
</row>
|
||||
<row>
|
||||
<cell alignment="left" valignment="top" leftline="true" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684286
|
||||
a
|
||||
\backslash
|
||||
mod
|
||||
\begin_inset space \textvisiblespace{}
|
||||
\end_inset
|
||||
|
||||
b
|
||||
\change_unchanged
|
||||
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
<cell alignment="center" valignment="top" leftline="true" rightline="true" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684457
|
||||
\begin_inset Formula $a\mod b$
|
||||
\end_inset
|
||||
|
||||
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
</row>
|
||||
<row>
|
||||
<cell alignment="left" valignment="top" leftline="true" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684416
|
||||
a
|
||||
\backslash
|
||||
pmod
|
||||
\begin_inset space \textvisiblespace{}
|
||||
\end_inset
|
||||
|
||||
b
|
||||
\begin_inset space \textvisiblespace{}
|
||||
\end_inset
|
||||
|
||||
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
<cell alignment="center" valignment="top" leftline="true" rightline="true" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684474
|
||||
\begin_inset Formula $a\pmod b$
|
||||
\end_inset
|
||||
|
||||
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
</row>
|
||||
<row change="inserted -495245474 1689684088">
|
||||
<cell alignment="center" valignment="top" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684419
|
||||
a
|
||||
\backslash
|
||||
bmod
|
||||
\begin_inset space \textvisiblespace{}
|
||||
\end_inset
|
||||
|
||||
b
|
||||
\begin_inset space \textvisiblespace{}
|
||||
\end_inset
|
||||
|
||||
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
<cell alignment="center" valignment="top" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684488
|
||||
\begin_inset Formula $a\bmod b$
|
||||
\end_inset
|
||||
|
||||
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
</row>
|
||||
<row change="inserted -495245474 1689684088">
|
||||
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684421
|
||||
a
|
||||
\backslash
|
||||
pod
|
||||
\begin_inset space \textvisiblespace{}
|
||||
\end_inset
|
||||
|
||||
b
|
||||
\begin_inset space \textvisiblespace{}
|
||||
\end_inset
|
||||
|
||||
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
|
||||
\begin_inset Text
|
||||
|
||||
\begin_layout Plain Layout
|
||||
|
||||
\change_inserted -495245474 1689684502
|
||||
\begin_inset Formula $a\pod b$
|
||||
\end_inset
|
||||
|
||||
|
||||
\end_layout
|
||||
|
||||
\end_inset
|
||||
</cell>
|
||||
</row>
|
||||
</lyxtabular>
|
||||
|
||||
\end_inset
|
||||
|
||||
|
||||
\change_unchanged
|
||||
|
||||
\end_layout
|
||||
|
||||
\begin_layout Standard
|
||||
In a
|
||||
\change_deleted -495245474 1689684554
|
||||
n inline
|
||||
\change_inserted -495245474 1689684556
|
||||
display
|
||||
\change_unchanged
|
||||
formula
|
||||
\change_inserted -495245474 1689684559
|
||||
,
|
||||
|
||||
\change_unchanged
|
||||
|
||||
\change_deleted -495245474 1689684562
|
||||
less
|
||||
\change_inserted -495245474 1689684563
|
||||
more
|
||||
\change_unchanged
|
||||
space is set before the function names for all variants
|
||||
\change_inserted -495245474 1689684688
|
||||
but
|
||||
\series bold
|
||||
|
||||
\backslash
|
||||
mod.
|
||||
|
||||
\series default
|
||||
This later version is also the only one that does not take the
|
||||
\series bold
|
||||
b
|
||||
\series default
|
||||
as argument but acts as a binary operator
|
||||
\change_unchanged
|
||||
.
|
||||
|
||||
\change_deleted -495245474 1689684609
|
||||
By default the modulo-functions take only the first character following the command into account.
|
||||
To use more than one character,
|
||||
put them in \SpecialChar TeX
|
||||
braces:
|
||||
@ -29100,6 +29334,8 @@ In an inline formula less space is set before the function names for all variant
|
||||
\end_inset
|
||||
|
||||
|
||||
\change_unchanged
|
||||
|
||||
\end_layout
|
||||
|
||||
\begin_layout Section
|
||||
|
22
lib/symbols
22
lib/symbols
@ -11,7 +11,7 @@
|
||||
# Note that the first argument of \def must not uses braces, and the second
|
||||
# must use braces.
|
||||
#
|
||||
# syntax: Either
|
||||
# syntax: (note that there should be no space character in the definition)
|
||||
# \def\macroname{definition}
|
||||
# or
|
||||
# \def\macroname{definition} requires
|
||||
@ -23,6 +23,11 @@
|
||||
# ("" for empty strings is not supported. One would have to use x for fields
|
||||
# that are not set.)
|
||||
#
|
||||
# It is also possible to use parameters for the macros
|
||||
# \def\macroname#1{definition using #1}
|
||||
#
|
||||
# TODO: Devise a mechanism to represent these in DocBook/XHTML
|
||||
#
|
||||
# If you put any symbol with a requirement inside an iffont clause, you
|
||||
# must put an alternative definition with the same requirement in the
|
||||
# corresponding else clause. Otherwise the LaTeX output would depend on the
|
||||
@ -1115,12 +1120,19 @@ exp lyxblacktext 0 0 func x
|
||||
Pr lyxblacktext 0 0 funclim x
|
||||
gcd lyxblacktext 0 0 funclim x
|
||||
deg lyxblacktext 0 0 func x
|
||||
mod lyxblacktext 0 0 func x amsmath
|
||||
bmod lyxblacktext 0 0 func x
|
||||
pmod lyxblacktext 0 0 func x
|
||||
pod lyxblacktext 0 0 func x amsmath
|
||||
|
||||
|
||||
#
|
||||
# Modulo notation
|
||||
#
|
||||
|
||||
# the original definitions have spacing differences between display/inline/script,
|
||||
# but we cannot reproduce that here
|
||||
\def\bmod{\mkern1mu\mathbin{\textrm{mod}}\mkern1mu}
|
||||
\def\pmod#1{\mkern18mu(\textrm{mod}\mkern6mu#1)}
|
||||
\def\pod#1{\mkern18mu(#1)} amsmath
|
||||
\def\mod#1{\mkern12mu\textrm{mod}\mkern6mu#1} amsmath
|
||||
|
||||
# mathtools.sty
|
||||
vcentcolon cmr 58 58 mathrel : mathtools
|
||||
ordinarycolon cmr 58 58 mathrel : mathtools
|
||||
|
Loading…
Reference in New Issue
Block a user