如何列出具有对齐和语法高亮功能的代码?

如何列出具有对齐和语法高亮功能的代码?

我想以比例字体高效地排版代码,并带有语法高亮和水平对齐。我该怎么做?

包裹列表提供语法高亮,但不提供对齐。如果我使用比例字体,据我所知,没有办法水平对齐文本。

环境制表符允许对齐,但不支持自动语法高亮。如果我想使用颜色,则需要手动添加颜色。此外,制表符是普通文本,因此引号和撇号会被更改,并且空格会合并为一个空格。

我没有设法将这两个环境结合起来。每次都无法编译或看起来错误。


这是它应该是什么样子的示例。我使用一些变通方法和手动突出显示来制作它。

以比例字体列出代码的示例,具有对齐和语法高亮功能

如果我删除突出显示和解决方法,它的代码如下:

\begin{tabbing}
    (defclass request () \\
    \hspace{1.5em} \= ( \= (url \= :reader request-url \\
        \>  \>  \> :initarg :url \\
        \>  \>  \> :type string} \\
        \>  \>  \> :documentation "Request URL.") \\
        \>  \> (method \= :reader request-method \\
        \>  \>  \> :initarg :method \\
        \>  \>  \> :initform :get \\
        \>  \>  \> :type keyword\\
        \>  \>  \> :documentation "Request method, e.g :get, :post.") \\
        \>  \> (parameters \= :reader request-parameters \\
        \>  \>  \> :initarg :parameters \\
        \>  \>  \> :initform nil \\
        \>  \>  \> :type association-list \\
        \>  \>  \> :documentation "The request parameters, as an association list.")) \\
        \> (:documentation "A general HTTP request."))
\end{tabbing}

相关内容