我是 TEX 新手,正在使用书写文本作为在线 latex 编辑器。我的问题是,当我在文本中输入连字符时,它有时会出现,有时不会出现。这是什么原因造成的?我该如何解决这个问题?
我输入的代码示例是:
\documentclass[12pt,oneside]{amsart}
\usepackage{amssymb}
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{corollary}[theorem]{Corollary}
\theoremstyle{definition}
\newtheorem{definition}[theorem]{Definition}
\theoremstyle{remark}
\newtheorem{remark}[theorem]{Remark}
\newcommand{\R}{{\mathbb R}}
\newcommand{\nil}{\varnothing}
\begin{document}
Reissener–Nordstrom
Reissener – Nordstrom
\end{document}
我得到的输出是“ReissenerNordstrom Reissener Nordstrom”,而我期望的是“Reissener-Nordstrom Reissener-Nordstrom”。
谢谢
答案1
连字符是 n-破折号的 Unicode 字符。您可以使用
\documentclass[12pt,oneside]{amsart}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amssymb}
[...]
我将第一个改为连字符,以使区别显而易见:
答案2
连字符用于复合词,例如:son-in-law
。对于数字范围,使用两个破折号:15--24
。句子中的标点符号使用三个破折号,---
例如这个。但是,如果您处于数学模式,则情况会有所不同,因为破折号是减号。因此,您需要使用 、\hbox
或\mbox
或\text
(如果您已amsmath
加载包)。
我只是粘贴了下面的代码http://scribtex.com,并且我得到的输出 PDF 似乎运行良好。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Compound words like: daughter-in-law.\par
Number ranges: 15--24.\par
Punctuation in sentences---such as this.
\bigskip
However, in math mode, a dash gets treated as a minus sign:
$15-25$, $15--24$
So use \textbackslash mbox (or \textbackslash hbox) to get back to text mode:
$a \mbox{-} b$ $15 \mbox{--} 24$
\bigskip
or with `amsmath` you can also use `\textbackslash text`:
$a \text{-} b$
$14 \text{--} 24$
\end{document}