悠闲数学娱乐论坛(第2版)'s Archiver

kuing 发表于 2014-11-19 15:52

关于冒号

刚才人教群里聊到:
[quote]辽教师qzsb(2422****)  14:48:06
今天一个学生问我:  
已知  l:x+y-1=0......
那不就是l=0 吗
辽教师qzsb(2422****)  14:50:17
实际我们经常是说已知直线L:x+y-1=0
学生以为是 L 除以 x+y-1=0,所以就说真麻烦,直接L=0就完了呗
[/quote]
让我想起在排版上的细节,其实“普通的冒号”和“比例上的冒号”,在排版上,两者是有区别的。

如果冒号表示比例,那么它是一个二元运算符,于是冒号与两边的间距应类似于加号之类的那样,就像 $x:y=x+y$;

如果冒号只是作为一个标点符号,那么它两边的距离是不一样的,就像 $l\colon x+y=0$。

在LaTeX中,公式中的冒号默认会被理解为比(经5楼isee提示,其实也不是,只是近似),因此 $x:y=x+y$ 的代码直接 \$x:y=x+y\$ 就没问题了。

但是如果直线方程也这样写 \$l:x+y=0\$ 其结果为 $l:x+y=0$,这就变成了比的间距,这时被理解为 $l$ 除以后面的东西也是说得过去的。

那正确的代码应该怎么写?

或者你会想到直接将其断开,写成 \$l\$: \$x+y=0\$,让冒号置于文本模式中,自然就是个普通的冒号了。这在行内公式中勉强可以。

其实更专业的方法是用一个专门用于公式中的冒号的命令 \colon ,代码 \$l\colon x+y=0\$ 的效果就是 $l\colon x+y=0$。

类似地,$f\colon A\to B$ 也应为 \$f\colon A\to B\$。

isee 发表于 2014-11-19 22:45

[i=s] 本帖最后由 isee 于 2014-11-19 22:53 编辑 [/i]

哈,巧了,手上正好有刘海洋的 LaTeX入门。

数学的标点符号就只有$,;!?\colon$这五个,而.表句号通常在行末,无间距问题。


个人在偶机器上实验发现:\colon 与手动的\!: 最终效果是一样的。

而刘海洋在书中说\mathpunct命令把一个符号看做数学标点,\colon命令的定义就相当于\mathpunct{:}

kuing 发表于 2014-11-19 22:50

话说,公式中的 : 是比多还是冒号多?
如果多数是冒号,那重定义可能是个更好的选择

isee 发表于 2014-11-19 23:11

[b]回复 [url=http://kuing.orzweb.net/redirect.php?goto=findpost&pid=12510&ptid=3190]3#[/url] [i]kuing[/i] [/b]


    我觉得不用动默认的,自己调就行。

直接输入键盘的:用这个例子是最明显不过了\[f(x):=x^2\]

也就是说键盘直接输入的:和$=$在数学公式里它们是一样来对待的,都是二元关系符(两个关系符在一起,中间没有间距)


不过,这基本没人在意这个,话说回来,这就是LaTeX存在的意义。

isee 发表于 2014-11-19 23:16

[i=s] 本帖最后由 isee 于 2014-11-19 23:20 编辑 [/i]

刘海洋书中继续有,关系符与二元运算符十分接近,也可以用键盘上的:\[x:y\]来表示比例。

事实上,大家都这样。


更准确的用法是以\mathbin{:}\[x\mathbin{:}y\]表示比例

isee 发表于 2014-11-19 23:24

[i=s] 本帖最后由 isee 于 2014-11-19 23:28 编辑 [/i]

关系符间距大一些,就是键盘上的:大一些。

这肉眼无法分别的。

那打破沙锅问到底,这个差别是多少呢?

脚注说,只有$\dfrac 1{18}$个 em 宽。



以上扯远了,总结一下,[color=Red]数学中的冒号是\colon,键盘上的冒号表数学里的二元关系符(就像“=><”一样的地位),数学中的比准确的应该是\mathbin{:}[/color]

kuing 发表于 2014-11-19 23:52

看了一下 source2e,里头给公式中冒号的定义是
\DeclareMathSymbol{:}{\mathrel}{operators}{"3A}
还真是关系符,一直以为是运算符,上面要改了……
话说什么时候需要用冒号表示关系?
我觉得如果默认情况是少数的话,重定义还是可以做的,也就是改一下上面这句话,如果多数时候是冒号,将 \mathrel 改成 \mathpunct 就行,需要比的时候再调

hbghlyj 发表于 2022-4-3 11:18

对比一下{:smile:}
[table=400]
[tr][td]x\mathord{:}y[/td][td]$x\mathord{:}y$[/td][/tr]
[tr][td]x\mathpunct{:}y[/td][td]$x\mathpunct{:}y$[/td][/tr]
[tr][td]x\colon y[/td][td]$x\colon y$[/td][/tr]
[tr][td]x\mathbin{:}y[/td][td]$x\mathbin{:}y$[/td][/tr]
[tr][td]x:y[/td][td]$x:y$[/td][/tr]
[tr][td]x\mathrel{:}y[/td][td]$x\mathrel{:}y$[/td][/tr]
[/table]

APPSYZY 发表于 2022-4-6 01:45

[i=s] 本帖最后由 APPSYZY 于 2022-4-6 01:47 编辑 [/i]

[b]回复 [url=http://kuing.orzweb.net/redirect.php?goto=findpost&pid=12511&ptid=3190]4#[/url] [i]isee[/i] [/b]
$:=$最好用$\coloneqq$代替,后者的$:$和$=$在竖直方向上做到了完全对齐,而前者做不到。

kuing 发表于 2022-4-6 01:54

[b]回复 [url=http://kuing.orzweb.net/redirect.php?goto=findpost&pid=44316&ptid=3190]9#[/url] [i]APPSYZY[/i] [/b]

嗯,这个[inlinecode]\coloneqq[/inlinecode]是 mathtools 宏包提供的命令,现在本论坛也支持 mathtools(也是最近才添加的),所以这里也可以用。

isee 发表于 2022-4-6 11:43

[b]回复 [url=http://kuing.orzweb.net/redirect.php?goto=findpost&pid=44318&ptid=3190]10#[/url] [i]kuing[/i] [/b]

哈哈哈,好好好

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.