我使用它\usepackage{newunicodechar}
在数学模式下轻松输入一些unicode字符。
例如,我使用 unicode 卷曲的 phi ( ϕ ) 在数学模式下插入 phi。问题是,文本模式下以这个 phi 开头的任何 Unicode 单词都会更改为数学模式!所以我的问题是:我如何使用 ifmmoder
或其他 TeX 命令来做出适当的定义, \newunicodechar{ϕ}
使其在每种模式下表现不同?(不幸的是,我不太了解 TeX..)
% -*- coding: utf-8 -*-
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[greek]{babel}
\usepackage{newunicodechar}
\usepackage{Kerkis}
\newunicodechar{ϕ}{\varphi}
\begin{document} ϕαγητό \textlatin{means food}
$ϕ$
\end{document}
答案1
我没有Kerkis
包,所以没有测试过,但是
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[greek]{babel}
\usepackage{newunicodechar}
\usepackage{Kerkis}
\newunicodechar{ϕ}{\ifmmode\varphi\else\textphi\fi}
\begin{document} ϕαγητό \textlatin{means food}
$ϕ$
\end{document}
我在这里使用过\textphi
,但如果您的文本希腊字体同时具有 phi 形式,您可以用在文本模式下定义 var phi 的命令来替换。