
Como copio o código para o latex para obter um resultado parecido com este:
...Sem as barras vermelhas, claro. Não sei como obter a numeração do lado esquerdo ao compilar o LaTeX. Usar \verbatim
apenas me dá o código.
Atualizar:É necessário ter o código colorido como apareceria no Matlab.
Responder1
Para minha tese de mestrado eu estava escrevendo muitos códigos em MatLab. Para deixar "bem impresso" usei a mesma embalagem que o @cmhughes mencionou. Fica assim (no preâmbulo):
\usepackage{listings} %For code in appendix
\lstset
{ %Formatting for code in appendix
language=Matlab,
basicstyle=\footnotesize,
numbers=left,
stepnumber=1,
showstringspaces=false,
tabsize=1,
breaklines=true,
breakatwhitespace=false,
}
Então, quando você quiser incluir seu arquivo de código, basta usar \lstinputlisting
. Continuando com o exemplo:
\lstinputlisting[language=Matlab]{./Code/calc_error.m}
Eu particularmente adorei isso porque me permitiu alterar meu código no MatLab na própria pasta e não precisei atualizá-lo no LaTeX, pois estava apontando diretamente para o arquivo e não para o código em si.
O resultado será algo assim:
Claro, você sempre pode brincar \lstset
para conseguir o que deseja, conforme explicado ema documentação
Responder2
Se você não precisar de destaque de código, o fancyvrb
pacote servirá. Eu não uso matlab
, mas para fins de demonstração, suponha que você tenha um arquivo chamado yourfile.m
, então o código a seguir fornecerá a numeração do lado esquerdo. VerbatimInput{yourfile.m}
insere seu arquivo.
\documentclass[10pt]{article}
\usepackage{fancyvrb}
\fvset{%
fontsize=\small,
numbers=left
}
\begin{document}
\VerbatimInput{yourfile.m}
\end{document}
Outra opção é ominted
. Ele usa fancyvrb
e usa internamente a Pygments
biblioteca de python
para realce de sintaxe. Experimente o exemplo a seguir, substituindo yourfile.m
pelo seu arquivo real. Você tem que compilar com -shell-escape
a opção habilitada. Leia o manual sobre a instalação da Pygments
biblioteca.
\documentclass[10pt]{article}
\usepackage{minted}
\newmintedfile{matlab}{
linenos=TRUE,
fontsize=\small,
}
\usemintedstyle{trac}
\begin{document}
\matlabfile{yourfile.m}
\end{document}