LaTeX: Como adicionar um rótulo a uma entrada Verbatim do Fancyvrb

0

Eu quero incluir um arquivo de dados no meu trabalho. Eu gostaria de importá-lo textualmente. Eu já estou usando fancyvrb para usar verbatim em notas de rodapé, é por isso que estou tentando usar esse pacote; fancyverb não é um requisito. No entanto, apenas adicionar "label=data:label" parece não funcionar. Analisei a documentação de fancyvrb , mas isso não respondeu à minha pergunta . Existe uma maneira de incluir um arquivo textual e poder fazer referência a ele?

Estou usando o TexStudio 2.6.6 no Windows 8.1.

Meu exemplo mínimo de trabalho está aqui:

file.tex

\documentclass[a4paper,12pt]{article} 
\usepackage{fancyvrb}
\begin{document}
A file and its content:
\VerbatimInput[label=data:label]{data.dat}
This should be a number: \ref{data:label}.\
End of file.
\end{document}

data.dat

some data
on several lines.

Resultado

A file and its content:
some data
on several lines.
This should be a number: ??.
End of file.

Saída do Build:

Process started: pdflatex.exe -synctex=1 -interaction=nonstopmode "file".tex

Process exited normally

Saída do registro / problemas:

line 7: Reference 'data:label' on page 1 undefined
There were undefined references.
    
por Alrekr 18.05.2014 / 21:52

1 resposta

1

Veja como eu fiz isso sozinho;

Usando o pacote listings , foi apenas uma questão de usar \lstset{language={}} e, em seguida, incluir o texto usando \lstinputlisting com as opções corretas.

-O texto não é uma fonte monoespaçada típica, mas está perto o suficiente .-

Alterando \lstset para \lstset{basicstyle=\footnotesize\ttfamily,language={}} , a fonte é monoespaçada.

Novo file.tex :

\documentclass[a4paper,12pt]{article} 
\usepackage{listings}
\begin{document}
A file and its content:
%\lstset{language={}} % changed
\lstset{basicstyle=\footnotesize\ttfamily,language={}}
\lstinputlisting[caption=data.dat,label=data:label]{data.dat}
This is now a number: \ref{data:label}.\
End of file.
\end{document}

Nova saída :

A file and its content:
Listing 1: data.dat
some data
on several lines .
This should be a number: 1.
End of file.
    
por 19.05.2014 / 11:27

Tags