LaTeX技巧790:让listings显示与vebatim显示一致

listings已经是很多用户进行代码排版的主要宏包,其强大的定制性,能够让程序代码显示更为人性化,更美观,有时我们会需要下面的问题,listings与verbatim显示有差异。

\documentclass[a4paper]{report}
\usepackage{listings}
\lstset{basicstyle=\ttfamily}

\begin{document}

This is lstlisting:

\begin{lstlisting}
: paxos.learn ( addr n v -- Ethernet packet )
      2 paxos.pack32          ( addr n v -- addr payload )
      paxos.eth_type.learn    ( addr payload -- addr payload ethtype )
      swap paxos.eth_packet ; ( addr payload ethtype -- ethernet_packet )
\end{lstlisting}

This is verbatim (and what I want):

\begin{verbatim}
: paxos.learn ( addr n v -- Ethernet packet )
      2 paxos.pack32          ( addr n v -- addr payload )
      paxos.eth_type.learn    ( addr payload -- addr payload ethtype )
      swap paxos.eth_packet ; ( addr payload ethtype -- ethernet_packet )
\end{verbatim}

\end{document}

效果图:TMDVP我们发现两个显示的内容空格的地方有较大差异。 修正这一代码的方法即:

\documentclass[a4paper]{report}
\usepackage{listings}

\begin{document}

\lstset{
  basicstyle=\ttfamily,
  columns=fullflexible,
  keepspaces=true,
}
\verb|basicstyle=\ttfamily, columns=fullflexible, keepspaces=true|
\begin{lstlisting}
: paxos.learn ( addr n v -- Ethernet packet )
      2 paxos.pack32          ( addr n v -- addr payload )
      paxos.eth_type.learn    ( addr payload -- addr payload ethtype )
      swap paxos.eth_packet ; ( addr payload ethtype -- ethernet_packet )
\end{lstlisting}

This is verbatim (and what I want):

\begin{verbatim}
: paxos.learn ( addr n v -- Ethernet packet )
      2 paxos.pack32          ( addr n v -- addr payload )
      paxos.eth_type.learn    ( addr payload -- addr payload ethtype )
      swap paxos.eth_packet ; ( addr payload ethtype -- ethernet_packet )
\end{verbatim}

\end{document}

效果图:gbL7G选自:http://tex.stackexchange.com/questions/172702/how-can-i-make-lstlisting-look-exactly-like-verbatim

分享到:
未经允许不得转载:LaTeX技巧790:让listings显示与vebatim显示一致
已有 条意见

    最新文章

    加载中...
      本站提供专业LaTeX排版、咨询、定制服务,请点击下图咨询详情


      全国首个精品的LaTeX视频教程,大牛带着你入门,让LaTeX学习不再纠结,请点击下图咨询详情

      热门评论

        联系我们

        交流QQ群:91940767
        本站QQ号:343083553
        邮箱联系latexstudio@qq.com
        淘宝店铺https://shop240512713.taobao.com/ 提供排版,模板定制,培训,图片处理,视频教程等LaTeX服务。

        关注我们微信公众号

        如果您投稿或者希望加入我们团队,请发送您的简历到latexstudio@qq.com。