He hecho un lstnewenvironment
en mi documento. No puedo hacer referencias cruzadas.
Aquí está el código
\lstnewenvironment{customlistings}[3]{
\lstset{
numbers=left,
language=#3,
breaklines=true ,
keywordstyle=\color{blue}\bfseries ,
numberstyle=\tiny\color{gray} ,
commentstyle=\color{green!30!black},
stringstyle = \color{violet},
morekeywords={\begin, \label, \documentclass
, \usepackage, \caption},
label=#2
}
\refstepcounter{counterA}
\begin{center}
\textbf{\large{Listing \thecounterA: #1}} \\
\textbf{\normalsize{#2}}
\end{center}
}{}
Así es como lo he usado.
\begin{customlistings}{[LaTeX]TeX}{The listings package}{TeX}
\begin{lstlisting}
%Your code goes here
%This is usually how you present code in \LaTex, without worrying about accidentally ..
\end{lstlisting}
\label{trickq}
\end{customlistings}
Quiero hacer referencia a él y debería aparecer como "Listado 1", siendo 1 la referencia. Intenté muchas cosas que incluyen buscar en Google, intentar poner este código en otro entorno y luego usar \label pero luego mi etiqueta. continúa desde la etiqueta anterior, es decir, muestra 4.2 en el documento en lugar de 1. Por favor ayuda
Respuesta1
Usaría el listing
paquete en lugar de hacer las cosas manualmente.
\documentclass{article}
\usepackage{listings,listing}
\usepackage{xcolor}
\lstnewenvironment{customlisting}[2][]
{\lstset{
basicstyle=\ttfamily,
columns=fullflexible,
numbers=left,
language=#2,
breaklines=true,
keywordstyle=\color{blue}\bfseries,
numberstyle=\tiny\color{gray},
commentstyle=\color{green!30!black},
stringstyle = \color{violet},
morekeywords={\begin, \label, \documentclass, \usepackage, \caption},
#1,
}%
}{}
\begin{document}
\begin{listing}
\begin{customlisting}{[LaTeX]TeX}
%Your code goes here
%This is usually how you present code in \LaTex, without worrying about accidentally ..
\end{customlisting}
\caption{The listing package}\label{TeX}
\end{listing}
\ref{TeX} is a listing
\end{document}
Puede personalizar la apariencia del título con el caption
paquete.