LaTeX中如何原样打印含\r、\n的代码?\verb命令报错求助
简单解决LaTeX中\verb报错的问题
嘿,我懂你遇到的麻烦——本来想简单用\verb打印代码结果报错,搜出来的方案又太复杂。给你几个超简单的可行办法:
换用\verb的其他分隔符:
原生\verb支持用任意非字母数字、非空格的字符作为分隔符,只要前后一致就行。你的代码里没有|或者!,直接换成它们就行,完全不用改代码内容:\verb|while (tmp[0] == '\r' || tmp[0] == '\n') {tmp++;}|或者:
\verb!while (tmp[0] == '\r' || tmp[0] == '\n') {tmp++;}!这个方法最省事,不用导任何额外包,直接就能用。
用\texttt手动转义特殊字符:
如果换分隔符还是不行,就用\texttt环境,把LaTeX里的特殊字符(比如{})转义成\{和\},还有换行符\r、\n要写成\textbackslash r和\textbackslash n:\texttt{while (tmp[0] == '\textbackslash r' || tmp[0] == '\textbackslash n') \{}tmp++;\}}这个方法稍微麻烦点,但胜在兼容性拉满,任何环境下都能用。
进阶方案:用fancyvrb包的\Verb命令:
如果经常要打印代码,或者在特殊环境(比如表格单元格、命令参数里)用,导言区加一行包导入,之后用\Verb(注意大写V),稳定性比原生\verb好太多:\usepackage{fancyvrb} % 之后随便用 \Verb|while (tmp[0] == '\r' || tmp[0] == '\n') {tmp++;}|
大概率换分隔符就能解决你的问题,毕竟原生\verb报错大多是因为分隔符和代码/周围文本冲突了~
内容的提问来源于stack exchange,提问作者OrenIshShalom
相关产品推荐
相关产品推荐

