Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

定义环境没有标题和标签时结果有问题 #36

Closed
views63 opened this issue Jun 24, 2019 · 4 comments
Closed

定义环境没有标题和标签时结果有问题 #36

views63 opened this issue Jun 24, 2019 · 4 comments
Labels
wontfix This will not be worked on

Comments

@views63
Copy link

views63 commented Jun 24, 2019

最小例子

\documentclass[cn,11pt,cyan]{elegantbook}
\begin{document}
\begin{definition}
测试
\end{definition}
\end{document}

结果
20190625022156
期待结果
20190625022349
目前只能使用如下代码实现

\documentclass[cn,11pt,cyan]{elegantbook}
\begin{document}
\begin{definition}{ }{}
测试
\end{definition}
\end{document}

修改 elegantbook.cls 中的 \newenvironment{definition}[2]

\newenvironment{definition}[2]
  {\ifstrempty{#1}{}{\edefinition[#1]}\ifstrempty{#2}{}{\label{def:#2}}}
  {\endedefinition}

仍需要使用 \begin{definition}{}{} 才能达到效果。期望能直接使用 \begin{definition} 达到期望的效果。

@EthanDeng EthanDeng added the wontfix This will not be worked on label Jun 25, 2019
@EthanDeng
Copy link
Member

由于定理类环境都用了 tcolorbox 宏包定理设置,所以写法是 \begin{theorem}{}{} 这样。

@views63
Copy link
Author

views63 commented Jun 25, 2019

由于定理类环境都用了 tcolorbox 宏包定理设置,所以写法是 \begin{theorem}{}{} 这样。

如果不修改 \newenvironment{definition}[2] 那段, 用\begin{theorem}{}{} 编译时会报错的,需要在第一对 {} 中间添加空格。

@muzimuzhi
Copy link

如果不修改 \newenvironment{definition}[2] 那段, 用\begin{theorem}{}{} 编译时会报错的,需要在第一对 {} 中间添加空格。

  • 具体会报什么错?
  • 如果确认会报错,能否新开一个 issue,然后提供能复现错误的最小例子?

使用 elegantbook v3.08 编译下面的例子,我没有得到报错

\documentclass[lang=cn]{elegantbook}
\begin{document}
\begin{definition}{}{}
content
\end{definition}
\end{document}

@views63
Copy link
Author

views63 commented Aug 14, 2019

如果不修改 \newenvironment{definition}[2] 那段, 用\begin{theorem}{}{} 编译时会报错的,需要在第一对 {} 中间添加空格。

* 具体会报什么错?

* 如果确认会报错,能否新开一个 issue,然后提供能复现错误的最小例子?

使用 elegantbook v3.08 编译下面的例子,我没有得到报错

\documentclass[lang=cn]{elegantbook}
\begin{document}
\begin{definition}{}{}
content
\end{definition}
\end{document}

我现在也没办法重现。记得当时是提示缺少参数。

\newenvironment{definition}[2]
  {\ifstrempty{#1}{\edefinition}{\edefinition[#1]}\ifstrempty{#2}{}{\label{def:#2}}}
  {\endedefinition}

\ifstrempty{#1} 进入了 \edefinition[#1]}\ifstrempty{#2}{}{\label{def:#2} 然后提示缺少参数了。
中间已经多次升级 texlive 不知道有没有关系。现在确实无法重现了

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

3 participants