我正在寻找一个看起来像这样的符号:[]-->
到目前为止,我想出了 $\Box\rightarrow$。但问题是,箭头距离框太远:
我怎样才能实现这一点,以便盒子离箭头不太远?
更新:下面的解决方案。
此外,我还需要一个可能的反事实:
\newcommand{\counterfactualmight}{\ensuremath{%
\mathord{\Diamond}\kern-1.5pt
\raise0.5pt\hbox{$\mathord{\rightarrow}$}}}
更新 2:更好的解决方案 从 http://www.ctan.org/pkg/comprehensive
%..
\usepackage{txfonts}
\usepackage{pxfonts}
%..
\begin{enumerate}
\item A conditional: X $\rightarrow$ Y
\item A strict conditional: X $\strictif$ Y
\item A would-counterfactual conditional: X $\boxright$ Y
\item A might-counterfactual conditional: X $\Diamondright$ Y
\end{enumerate}
答案1
\kern
、、\raise
和\hbox
的组合\mathord
(最后一个将 的状态更改为“普通”)应该可以达到对齐和\rightarrow
的目的:\Box
\rightarrow
\documentclass{article}
\usepackage{amssymb}
\newcommand{\counterfactual}{\ensuremath{%
\Box\kern-1.5pt
\raise1pt\hbox{$\mathord{\rightarrow}$}}}
\begin{document}
$\Box\rightarrow$ vs.\ \counterfactual
\end{document}
附录:我不知道您打算\counterfactual
在文本模式还是数学模式下使用宏。(顺便说一句,这也是我过去\ensuremath
将宏的内容括起来的原因。)如果您打算在数学模式下使用它,最好将其赋予“mathrel”(关系运算符)状态,例如,将其定义为
\newcommand{\counterfactual}{\ensuremath{%
\mathrel{\Box\kern-1.5pt\raise1pt\hbox{$\mathord{\rightarrow}$}}}}
这样,诸如 $A \counterfactual B$ 之类的表达式中的间距将是正确的,而无需进一步摆弄。
答案2
除了后退量之外,无需猜测或测量任何事物。箭头应与普通箭头处于同一高度。因此,我们可以利用\mathop
应用于单个对象的事实,使其相对于数学轴居中。
\documentclass{article}
\usepackage{amssymb}
\newcommand{\counterfactual}{%
\mathrel{\mathop\Box}\mathrel{\mkern-2.5mu}\rightarrow
}
\newcommand{\mightcounterfactual}{%
\mathrel{\mathop\Diamond}\mathrel{\mkern-2.8mu}\rightarrow
}
\begin{document}
$A\counterfactual B$
$A\mightcounterfactual B$
$\counterfactual_{\counterfactual}
\mightcounterfactual_{\mightcounterfactual}$
\end{document}