如何在输出中正确显示 < 和 >?

如何在输出中正确显示 < 和 >?

我尝试将一些 XML 标签写入文本中,但无法让 < 和 > 符号在输出中正确显示。我遗漏了什么?

我尝试了<tag>\<tag\>,前者导致¡tag¿,而后者导致 错误消息。

文档类别为report,环境为document

答案1

对于格式化标签,例如更<tag>喜欢将它们包装到 中\verb|<tag>|

另外,我建议创建一个自定义命令,如下所示(这将允许您一次更改所有 XML 标签的排版):

\documentclass[varwidth]{standalone}
\usepackage{xcolor}
\newcommand{\tag}[1]{\texttt{\textbf{\textcolor{red}{<}}#1\textbf{\textcolor{red}{>}}}}
\begin{document}
This is an XML \verb|<tag>| example.

This is an improved \tag{tag} example.
\end{document}

结果:

在此处输入图片描述

答案2

如果您需要输入更多这些标签,该listings包可能值得一试(使用颜色作为操作符(或文字,或其他任何颜色)是比较棘手的;如果您喜欢它们,通常建议使用包minted,但不幸的是它不能做内联操作!catch 22!):

\documentclass{article} 
\usepackage{listings} 
\begin{document}
      \lstinline[language=xml]!<tag>!  
\end{document} 

关于代码的一些注释:

  1. !是两个实例之间的代码分隔符:因此,这应该是代码中未出现的符号(参见命令|中出现的符号)\verbm0nhawk的解决方案)。因此,

    \lstinline<<tag>< % wrong
    \lstinline><tag>< % not wrong, but not what you want  
    \lstinline$<tag>$ % right 
    \lstinline+<tag>+ % right
    \lstinline|<tag>| % right 
    
  2. [除非您执行以下操作,否则分隔符不能是这样的:

    \lstinline[][<tag>[
    

    (发生的情况是,当它第一次遇到时,它\lstinline会寻找一个可选的对列表。) key=value[

  3. 我发布这个答案,主要是因为使用\verb,你最终会得到不同的字体系列,这很可能是你的愿望!如果您想要相同的字体系列,这个解决方案是开放的。

输出:

线趣.png

相关内容