![排版“T_n-space”的最佳方式](https://linux22.com/image/428052/%E6%8E%92%E7%89%88%E2%80%9CT_n-space%E2%80%9D%E7%9A%84%E6%9C%80%E4%BD%B3%E6%96%B9%E5%BC%8F.png)
在拓扑学中,人们经常谈论满足各种分离条件的空间,例如 T₀ 空间。当我必须在 LaTeX 中输入“T₀ 空间”时,我会写
T$_0$-space
但我认为这样使用数学模式有点不妥。我想我也可以写
$\text{T}_0$-space
但这感觉不像是\text{}
应该用来做什么。
我的问题是:有什么方法可以完全不破解地排版?
答案1
我建议您(a)加载amsmath
其\nobreakdash
宏的包并(b)定义一个名为的宏\Tsp
(您可以自由地想出一个不同的名字......)如下:
\newcommand{\Tsp}[1][0]{$\mathrm{T}_{\!#1}$\nobreakdash-space}
该\Tsp
宏设置为接受一个可选参数,其默认值为0
。请注意,如果要在数学模式下使用此宏,则应将其包含在\text
指令中。该\nobreakdash
宏禁止在 (“破折号”)符号处换行-
,因为我认为不允许在T_0
和之间换行space
。
观察在 和 的下标参数之间插入了“负细间距”字距\mathrm{T}
。如果这样会使符号彼此靠得太近,请考虑用 替换\!
。\mkern-2mu
(\!
相当于\mkern-3mu
。)
\documentclass{article}
\usepackage{amsmath}
\newcommand{\Tsp}[1][0]{$\mathrm{T}_{\!#1}$\nobreakdash-space}
\begin{document}
\Tsp, \Tsp[1], \Tsp[n]
$\dotsc\text{ \Tsp[2] }\dotsc$
\end{document}