novathesis
30 de outubro de 2026 · Read in English

novathesis 8.6.0 — Albatross: Crossing the Atlantic

A Atlântica — Instituto Universitário entra no template, o número de estudante pode ir para a capa, e o style/font=times passa finalmente a funcionar onde o Times New Roman não está instalado — Overleaf incluído.

Desenho a aguarela e tinta de um albatroz pousado numa onda, com as asas meio abertas

O nome de código é uma pequena piada: um albatroz a atravessar o Atlântico, para uma escola chamada Atlântica cujo primeiro curso suportado é de aeronáutica.

Atlântica — Instituto Universitário

O school=atlantica/cea cobre a licenciatura em Ciências da Engenharia Aeronáutica:

\ntsetup{school=atlantica/cea}

Segue as Normas para Apresentação e Discussão do Projecto Final de Licenciatura da escola (Fevereiro de 2019) e, onde o regulamento nada diz, a disposição de uma dúzia de teses reais da Atlântica. A4, frente e verso, Times New Roman a 12pt com espaçamento de 1,5 linhas e 12pt depois de cada parágrafo, notas de rodapé a 8pt, margens de 3 / 3,5 / 3,5 (interior) / 2,5 (exterior) cm, o cabeçalho a 1,8cm e o rodapé a 1,5cm do bordo do papel, e os capítulos a abrir em páginas ímpares. Todas as páginas levam o título e o nome do curso no cabeçalho, e o autor, a data e o número de página no rodapé.

Tens a capa e a página de rosto (sem figuras), a declaração de exclusiva responsabilidade numa página ímpar só dela, uma dedicatória opcional e uma declaração de reprodução opcional no verso da página de rosto.

Uma ressalva quanto a esta última: está desligada por omissão e o seu texto é um marcador genérico — a redacção oficial está na intranet da Atlântica. Liga-a com \ntsetup{print/copyright=true} no 0-Config/1_novathesis.tex e substitui o texto pelo oficial antes de entregares.

O número de estudante na capa

Um comando novo para o 0-Config/3_cover.tex:

\SetAuthorStudentNumber*()={12345}

Só as capas da Atlântica o imprimem. Em todas as outras escolas é aceite e ignorado, por isso não há nada a desfazer se mudares de escola, e a linha é simplesmente omitida quando não há número definido.

E uma correcção que vai muito para além da Atlântica

As normas da Atlântica pedem Times New Roman. O template tem um estilo de letra times há anos — e, em LuaLaTeX ou XeLaTeX, precisava que o Times New Roman, o Helvetica e o Courier New estivessem mesmo instalados na máquina. No Overleaf e na maioria dos sistemas Linux não estão, pelo que o style/font=times falhava por completo.

Cada letra em falta passa a ser substituída pelo seu clone TeX Gyre compatível nas métricas, que vem com o TeX Live: Termes para o Times New Roman, Heros para o Helvetica, Cursor para o Courier New. A compatibilidade de métricas é a parte que interessa — a substituta ocupa exactamente o espaço que a original ocuparia, por isso as quebras de linha e de página não se mexem.

As três são verificadas em separado, portanto uma máquina que tenha Times New Roman mas não tenha Courier New usa o Times verdadeiro e o clone para o monoespaçado. O colofão nomeia as letras que a compilação usou de facto, para que o PDF declare aquilo em que foi composto e não aquilo que pediu.

Se tinhas desistido do style/font=times por não compilar no Overleaf, agora compila.

Desde o último artigo aqui

Passaram duas versões sem anúncio neste blogue. A 8.4.0 — Crane: Same Flight, New Name mudou o Instituto Politécnico de Lisboa e o de Setúbal para Universidade Politécnica, e com eles os identificadores de escola: o ipl/isel é agora upl/isel e o ips/ests é agora ups/ests. Não há alias compatível com o passado, por isso um documento que ainda use o identificador antigo pára com um erro claro. A 8.5.0 — Kingfisher: Landing Where There Is No Water fez o template registar de que commit foi construído, acrescentou o make info para relatórios de erro, deu alternativa às letras descarregadas e aos ícones dos ODS quando o shell escape está desligado e — esta quebra compatibilidade — passou a mostrar nas listas de glossário e de símbolos apenas as entradas efectivamente citadas, como a lista de acrónimos sempre fez. Para voltar ao comportamento anterior, \ntsetup{glossaries/addall=true}.

A lista completa está no changelog.

← Todos os artigos