如果使用制表符而不是空格进行缩进,Sagetex 会忽略缩进 - 如何让它识别制表符?

如果使用制表符而不是空格进行缩进,Sagetex 会忽略缩进 - 如何让它识别制表符?

以下示例是视觉上相同的代码。唯一的区别是缩进方式不同。第一个示例使用了四个空格,第二个示例使用了一个制表符。

1.

\documentclass{article}
\usepackage{sagetex}
\begin{document}

\begin{sageblock}
def f(x):
    return x
\end{sageblock}

f(x) returns itself.
For example, $f(2)=\sage{f(2)}$.

\end{document}

输出:

 def f(x):
    return x
f(x) returns itself. For example, f(2) = 2.
\documentclass{article}
\usepackage{sagetex}
\begin{document}

\begin{sageblock}
def f(x):
    return x
\end{sageblock}

f(x) returns itself.
For example, $f(2)=\sage{f(2)}$.

\end{document}

输出:

 def f(x):
 return x
f(x) returns itself. For example, f(2) = ??.

错误:

  File "./example.sagetex.sage.py", line 14
    return x
    ^
IndentationError: expected an indented block

LaTeX Warning: Reference @sageinline0 on page 1 undefined on input line 11.

通过观察错误以及代码逐字打印的方式可以清楚地看出,sagetex 忽略了制表符中的缩进。如何才能使制表符也被识别为缩进?

相关内容