TeXShop 自动删除某些粘贴的字符组

TeXShop 自动删除某些粘贴的字符组

对于我的 LaTeX 方程式,我使用 Mathtype 出色的将方程式复制为 TeX 代码的功能。当我想在 LaTeX 中使用编号方程式,并且还想在 Mathtype 中输入方程式而不是直接在 TeX 语言中输入时,就会出现一个小问题。

当我从 Mathtype 复制/粘贴一个方程式时,它显示为:

\[{a^2} + {b^2} = {c^2}\]

或者

$${a^2} + {b^2} = {c^2}$$

取决于 Mathtype 中的复制设置。

但是在我的文档中,我会将此方程式包装在方程式环境中(以获得编号),如下所示:

\begin{equation}
{a^2} + {b^2} = {c^2}
\label{eq:abc}
\end{equation}

我必须手动删除\[ \]或,$$因为它们不属于方程环境。TeXShop 是否可能检测到这些符号粘贴时自动删除它们或者用\begin{equation}\end{equation}?替换它们

因此,如果我粘贴\[它,就会用 替换它\begin{equation}

我知道这个问题本身太具体了,但如果存在解决方案,它可以适用于人们可能拥有的其他复制/粘贴仪式。

编辑:

我在 Mountain Lion 的文本替换工具中找到了几乎满足我需要的解决方案。

  1. 首先在系统偏好设置中启用符号和文本替换。
  2. 对其进行配置,使得\[被 替换\begin{equation},并且\]被 替换\end{equation}在此处输入图片描述
  3. 将公式从 Mathtype 复制/粘贴到 TeXShop 文档中。
  4. 编译代码之前,右键单击文档中的某处并转到Substitutions -> Show Substitutions
    在此处输入图片描述
  5. 将打开以下窗口: 在此处输入图片描述 检查Text Replacements并单击Replace All
  6. 編輯文檔。

但是,这不会自动替换粘贴的符号,需要额外的步骤。所以我仍在寻找一种“粘贴时”的方法。

答案1

简单,将以下文件作为“Latex (Texshop).tdl”保存到您的“translator”文件夹中。

MathType Output Translator 1.0: "Latex (Texshop)", "Daniel Wei 2013", language

include "LaTeX (base vars).tdl";
// redefinitions of base variables

var/"TranslatorName" = "Latex (Texshop)";
var/"TranslatorFileName" = "Latex (Texshop).tdl";

var/"BeginMathDisplay" = "\begin{equation}\label{}@n";
var/"EndMathDisplay" = "@n\end{equation}";

include "LaTeX (base rules).tdl";

然后在 Mathtype 首选项中,只需选择“Latex (Texshop)”作为您的复制样式。

相关内容