コードを整列および構文の強調表示付きでリストするにはどうすればよいですか?

コードを整列および構文の強調表示付きでリストするにはどうすればよいですか?

構文の強調表示と水平方向の配置を使用して、プロポーショナル フォントでコードを効果的にタイプセットしたいと思います。どうすればできますか?

その包みリスト構文の強調表示はありますが、配置はできません。プロポーショナル フォントを使用する場合、私の知る限り、テキストを水平方向に揃える方法はありません。

環境タブ配置はできますが、自動構文強調表示はできません。色を付けたい場合は、手動で配置する必要があります。また、タブ通常のテキストなので、引用符とアポストロフィは変更され、空白は 1 つのスペースに縮小されます。

これら 2 つの環境を組み合わせることができませんでした。毎回、コンパイルされなかったり、見た目がおかしくなったりしました。


これがどのように表示されるかの例です。いくつかの回避策と手動のハイライトを使用してタブで作成しました。

配置と構文の強調表示を伴うプロポーショナル フォントでのコード リストの例

ハイライトと回避策を削除すると、コードは次のようになります。

\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}

関連情報