我有以下乳胶代码,我试图修饰一段 HTML 代码:
[``temperatures'', ``root'', ``\verb#*<TABLE*<TABLE*</TR>#</TABLE>*#'']
但我收到错误消息:
You can't use `macro parameter character #` in horizontal line
我想知道如何解决这个问题。
谢谢
答案1
从source2e
(部分54.3 逐字;重点补充):
该命令
\verb
生成内联逐字文本,其中参数由任何一对字符。
因此,由于您可能有兴趣将其用作#
逐字文本的一部分,请使用不同的分隔符对,因为#
错误消息表明这是不允许的:
\documentclass{article}
\begin{document}
[``temperatures'', ``root'', ``\verb!*<TABLE*<TABLE*</TR>#</TABLE>*!'']
\end{document}
为什么会出现错误信息?
\verb#*<TABLE*<TABLE*</TR>#</TABLE>*#
实际上是
\verb#*<TABLE*<TABLE*</TR>#
离开
</TABLE>*#
带有悬垂的#
。
答案2
嗯,你有三#
在您的\verb
调用 中出现。#
是一个特殊字符,因此当它遇到第一个时,它会变成分隔符。当它遇到第二个时,动词内容结束并#
重新获得其特殊含义。当它遇到第三个时,:(
将分隔符更改为类似|
或@
(或实际上任何内容中不存在的字符)。
就像是
[``temperatures'', ``root'', ``\verb+*<TABLE*<TABLE*</TR>#</TABLE>*+'']
答案3
如果您的文件中没有字符#
但仍然出现相同的错误消息,请执行以下操作:
1) delete the .aux and the .bbl files in your folder
2) Recompile
这是唯一对我有用的方法。
希望能帮助到你 !