一行显示列表

一行显示列表

在 pdf 中,列表列表显示在一行中,如下所示:

1
Example of json object for each tweet34 2 Tweets and cluster identifier per
user34

这里12是数字,34是页码。两者都在同一页,但和不同captionlabel我使用的列表代码是:

\pdfbookmark[1]{\lstlistlistingname}{lol}

\lstlistoflistings

我怎样才能做到这一点:

1 Example of json object for each tweet  34 
2 Tweets and cluster identifier per user 34

这是我的两个清单代码:

\begin{listing}
    \begin{minted}[frame=single,
    framesep=3mm,
    linenos=true,
    xleftmargin=21pt,
    tabsize=4]{js}
    {     
    "_id": "tweet id"
    "user_id" : "ID of the user" 
    }
    \end{minted}
    \caption{Example of json object for each tweet} 
    \label{list:first_json}
\end{listing}

\begin{listing}
    \begin{minted}[frame=single,
    framesep=3mm,
    linenos=true,
    xleftmargin=21pt,
    tabsize=4]{js}
    {     
    "_id": "json object id",
    "user_id": "ID of the user"
    }
    \end{minted}
    \caption{Tweets and cluster identifier per user} 
    \label{list:second_json}
\end{listing} 

答案1

摘要:使用\listoflistings而不是\lstlistoflistings


可以通过以下示例重现该问题:

\documentclass{article}
\usepackage{minted,listings}
\begin{document}
\lstlistoflistings

\begin{listing}
    \begin{minted}{js}
    a
    \end{minted}
    \caption{Example of json object for each tweet} 
\end{listing}


\begin{listing}
    \begin{minted}{c}
    s
    \end{minted}
    \caption{Tweets and cluster identifier per user} 
\end{listing} 
\end{document}

输出

使用 \lstlistoflistings 输出

你做错的是混合了来自两个不同包的环境和宏。环境listing由 定义minted,但\lstlistoflistings由 定义listings。你应该使用\listoflistings,它由 定义minted。这样做会得到

使用 \listoflistings 输出

所有\listof宏都从临时文件中读取信息,但minted和都listings将标题信息写入文件.lol,因此\lstlistoflistings读取由生成的文件minted,并且其内容显然与\lstlistoflistings预期的结构不同,并且输出是错误的。

相关内容