重新定义命令/删除 LaTeX Preview 中方程式的左侧间距(也在 Emacs AUCTeX 中)

重新定义命令/删除 LaTeX Preview 中方程式的左侧间距(也在 Emacs AUCTeX 中)

当我跑步时

\documentclass{article}

\usepackage{amsmath}
\usepackage[active, tightpage, displaymath]{preview}

\begin{document}

\begin{equation*}
1+2 = 3
\end{equation*}

\end{document}

我得到以下结果 在此处输入图片描述

我检查了这个问题“使用预览包裁剪方程式”但是那里提供的解决方案,使用外部脚本或替换所有内联方程式,对我来说不起作用,因为该图像片段将用于 Emacs auctex 预览,自动将“ \usepackage[options...]{preview}”插入到原始 tex 文档中,生成方程式片段,然后将它们叠加在方程式字符串上,使编辑更像所见即所得。

无论如何,Emacs auctex 变量preview-default-preamble允许我在生成预览图像时向前言中插入一些自定义字符串,所以我正在寻找类似的东西

\renewcommand{\begin{equation*}}{\begin{math}\displaystyle}
\renewcommand{\end{equation*}}{\end{math}}

当我运行时插入到序言中preview-document

但这些天真的\renewcommand命令当然不起作用。我知道我可以使用\renewcommand或甚至\def\let来重新定义宏,但我该如何对具有某些参数的宏执行此操作?更直接地说,

我应该在序言中放入什么以便每当编译器看到\begin{equation*}它时就用它替换它\begin{math}\displaymath并运行它?

PS. 这可能看起来像一个 XY 问题,但我也对找到解决方案感兴趣,因为我可以用它做其他事情。:-)

答案1

感谢 ShreevatsaR 的评论,我找到了它,它很简单!我不知道为什么我如此痴迷于宏,但我只是把

\renewenvironment{equation*}{\begin{math}\displaystyle}{\end{math}}

并且它完美地工作了。(虽然我不能代替$\begin{math}\end但这不是什么大问题,并且可以理解为什么它不起作用。)

我还会编辑标题,因为这个带有间距的预览对我来说很长一段时间以来都是一个小烦恼(参见如何在公式上设置预览乳胶左缩进?)。

相关内容