使用 a2ps 打印 Latex 源

使用 a2ps 打印 Latex 源

当我尝试打印乳胶源代码时

a2ps somefile.tex

我从 egrep 收到错误消息,例如

egrep: Das Ende des angegebenen Intervalls ist nicht gültig

这意味着“给定间隔的结束无效”。之后 texi2dvia4ps 尝试编译我的 tex 文件并失败。我可以很好地打印其他源代码。知道出了什么问题吗?

编辑:jofels 答案解决了egrep 的问题。 a2ps 仍然尝试编译我的 .tex 文件,而不是将其打印为源代码。使用

a2ps --delegate=no somefile.tex

阻止它(部分)这样做。像 \item 或 \phi 这样的次要命令仍然会被解释,而不是像在文件中那样打印出来。

答案1

该消息(英文为“egrep: Invalid range end”)来自以下错误a2ps

/usr/bin/texi2dvi4a2psshell脚本调用egrep错误:

代替

echo "$command_line_filename" | egrep '^(/|[A-z]:/)' >/dev/null \
|| command_line_filename="./$command_line_filename"

它应该是

echo "$command_line_filename" | egrep '^(/|[A-Za-z]:/)' >/dev/null \
|| command_line_filename="./$command_line_filename"

由于该错误位于 shell 脚本中,因此您只需编辑该文件即可轻松修复它。

该模式检查文件名是否是绝对的(以 开头/,与类 Unix 系统相关)或以驱动器名称开头(例如C:,仅与 Windows 系统相关)。否则,文件名前面会带有./.

请随意向上游或您使用的发行版报告此错误。

相关内容