I am trying to put two listings side by side in a custom float using the float package using minipages. What I am trying to do works fine inside a figure (both captions appear) but inside my custom code environment only the second ("Listing 2") caption appears.
MWE:
\documentclass{article}
\usepackage{lipsum}
\usepackage{caption}
\usepackage{listings}
\usepackage{float}
\floatstyle{plaintop}
\newfloat{code}{thp}{lop}
\floatname{code}{Listing}
\begin{document}
\lipsum
\begin{code}[t]
\begin{minipage}{0.45\linewidth}
\captionof{lstlisting}{Disappears}
Inside custom 1
\end{minipage}\hfill%
\begin{minipage}{0.45\linewidth}
\captionof{lstlisting}{Appears}
Inside custom 2
\end{minipage}
\end{code}
\begin{figure}[t]
\begin{minipage}{0.45\linewidth}
\caption{Appears}
Inside figure 1
\end{minipage}\hfill%
\begin{minipage}{0.45\linewidth}
\caption{Appears}
Inside figure 2
\end{minipage}
\end{figure}
\end{document}
How can I solve this?

\floatstyle{plaintop}means you can only have one caption per float, placed on top. – David Carlisle Sep 28 '20 at 23:23