Este repositório contêm um template de relatório para UCs do DETI, este template não é oficial mas algo que eu compilei ao longo de vários relatórios para diferentes UCs.
O ficheiro main.tex é o ficheiro principal, outros ficheiros podem ser
incluídos através dos mecanismos \input e \include.
O template inclui uma configuração para a ferramenta latexmk, para compilar
o documento basta correr o seguinte comando:
$ latexmk -pdfO PDF gerado irá encontrar-se em build/main.pdf.
O latexmk também pode pré-visualizar e recompilar o documento sempre que
os ficheiros fontes forem alterados através do seguinte comando:
$ latexmk -pvcA classe relatorio-deti utiliza opções para controlar os pacotes ativados
de maneira a cortar o tempo de execução para pacotes que não são
necessários, as opções disponíveis são as seguintes:
code, para listagens de códigomath, para inserir expressões matemáticasdiagrams, para criar diagramas com TikZbibliography, para adicionar bibliografia e citações
A opção language=<language> permite alterar alterar a linguagem do documento
de português (a linguagem por defeito) para outra suportada pelo babel.
A opção final marca um documento como completado/pronto para entrega
removendo o texto Draft da primeira página do documento.
A opção noheader permite remover o cabeçalho remover o cabeçalho presente nas
páginas normalmente.
A capa do relatório apresenta o título, o ano letivo, a UC e os membros do relatório. Estes diferentes campos são configurados no preambulo.
O título do documento é configurado pelo comando \title normal do latex.
\title{Título do documento}O nome da UC é configurado pelo comando \cadeira.
\cadeira{Nome da UC}A data do documento é configurado pelo comando \relatorioData.
\relatorioAno{2069/2070}O valor é simplesmente texto, podendo ser omitido a segunda parte do ano.
\relatorioAno{2069}Os membros são configurados por chamadas consecutivas do comando \membro
\membro{Membro 1}{999998}
\membro{Membro 2}{999999}Em baixo encontram-se exemplos de como adicionar vários tipos de conteúdo comuns.
Listagem de código requerem a opção code na classe.
Código é adicionado através do ambiente minted este requer que o programa
pygmentize esteja instalado e fornece código com highlighting.
\begin{minted}{c}
int main(void) {
return 0;
}
\end{minted}O minted é configurado de modo que o espaço branco comum à esquerda do
código é removido (opção autogobble), por isso o código pode ser indentado
no latex sem causar problemas no resultado.
Caso se pretenda adicionar texto como código, mas que não têm uma linguagem
(por exemplo, a listagem de um diretório) pode se utilizar a linguagem especial
text.
\begin{minted}{text}
test/a
d
test/a
test/b
\end{minted}Adicionalmente pode ser necessário adicionar um título e \label a listagem
de código, isto pode ser implementado utilizando o ambiente listing
do seguinte modo:
\begin{listing}[H]
\centering
\begin{minted}{bash}
find "$@" -type d -print0
\end{minted}
\caption{Segunda iteração do comando para obter os subdiretórios}
\label{code:implementation_second_subdir_find}
\end{listing}Bibliografia requer a opção bibliography na classe.
Primeiro é preciso declarar os ficheiros de bibliografia no preambulo, isto
é feito com o comando \addbibresource.
\addbibresource{bibliography.bib}Os ficheiros seguem o formato BibTex.
@article{posix,
author = {},
journal = {IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008)},
title = {{IEEE Standard for Information Technology--Portable Operating System
Interface (POSIX(TM)) Base Specifications, Issue 7}},
year = {2018},
doi = {10.1109/IEEESTD.2018.8277153},
}A seguir podem se adicionar citações ao documento com o comando \cite.
\cite{posix}Finalmente no final do documento adiciona-se a bibliografia completa.
\printbibliography[heading=bibintoc]Este trabalho encontra-se ao abrigo da licença MIT.
Imagens do DETI incluídas no repositório são propriedade da Universidade de Aveiro.