当我尝试打印乳胶源代码时
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/texi2dvi4a2ps
shell脚本调用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 系统相关)。否则,文件名前面会带有./
.
请随意向上游或您使用的发行版报告此错误。