Code Monkey home page Code Monkey logo

classe-latex-fei's Introduction

Build Status

Classe LaTeX da FEI

Este repositório contém a classe LaTeX do Centro Universitário da FEI para formatação de trabalhos acadêmicos (monografia, dissertação ou tese), baseada no guia formatação de 2015 da biblioteca. A classe possibilita a criação de um trabalho acadêmico completo, com inserção de elementos pré-textuais (capa, folha de rosto, ficha catalográfica, epígrafe, dedicatória, sumário e listas de figuras, tabelas, algoritmos, siglas e símbolos), passando pelo corpo do texto e elementos pós-textuais (índice remissivo, referências bibliográficas, apêndices e anexos).

No manual, os usuários encontrarão informações detalhadas sobre a utilização da classe, seus comandos e algumas boas práticas para que o trabalho fique no formato desejado pela biblioteca.

Instalação

A classe está disponível através do TeX Live (Windows, Linux), MikTeX (Windows) e MacTeX (Mac OS). Instale uma das distribuições e procure pela classe fei no gerenciador de pacotes da distribuição. Alternativamente, baixe uma versão estável do repositório, extraia o arquivo compactado e coloque o arquivo fei.cls no mesmo diretório de seu documento tex.

Utilização

Recomenda-se iniciar um documento através de um dos dois templates [1] [2], testados e prontos para compilação, e consultar eventuais comandos e ambientes no manual em PDF.

Novas versões

Para receber anúncios de novas versões da classe, utilize a função "Watch" do GitHub no repositório.

Ajuda e Comunidade

  • O manual em PDF é a fonte primária de instrução relacionada ao uso da classe e descreve todos os comandos, opções e ambientes disponíveis.
  • A wiki no GitHub aborda dúvidas relacionadas a instalação do LaTeX, fontes didáticas para aprender a linguagem LaTeX e dicas de editores de TeX e ferramentas para facilitar a compilação de projetos grandes.
  • Um grupo do Google é disponibilizado para eventuais trocas de informações entre usuários da classe.

Licença

Released under the LaTeX Project Public License v1.3c or later See http://www.latex-project.org/lppl.txt

classe-latex-fei's People

Contributors

aislancesar avatar andresmendes avatar douglasrizzo avatar heliovillanueva avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

classe-latex-fei's Issues

Explicações adicionais de como criar floats

Explicar como colocar "Legenda: " nas legendas de baixo dos floats (exemplos no PDF "Estrutura" e no PDF de tutorial de figuras).
Mencionar a diferença entre tabela e quadro (as bordas laterais).

Legendas dos algoritmos e lista de algoritmos não são formatados sob as recomendações do guia

As legendas dos algoritmos e a lista de algoritmos são geradas pelo pacote algorithm2e. O pacote não permite que as mesmas soluções de formatação usadas para as legendas dos demais floats sejam usadas nos algoritmos, então não é possível adicionar duas legendas (uma para a descrição e outra menor para a fonte). Ele também não permite que a formatação da lista de algoritmos seja feita da mesma forma que a lista de ilustrações e de tabelas, então estamos num impasse.
Como workaround eu criei a opção algo-as-figure, que trata algoritmos como ilustrações e formata-os de acordo, mas nós já brigamos com a biblioteca para termos direito a uma lista de algoritmos, então seria legal conseguir fazer isso funcionar de novo.

Só um adendo, o algorithm2e é um dos melhores no que faz, porém não é atualizado desde 2013 e possivelmente foi abandonado pelo autor. Se algum herói quiser tentar hackear o código-fonte, a versão mais recente dele se encontra aqui. Outra opção seria trocar o pacote de algoritmos usado pela classe, o que será sugerido em outro issue.

Quadros e tabelas na lista de figuras e tabelas

Olá, percebi um problema ao utilizar o ambiente quadro e table junto com tabular e a formatação que aparece na lista de figuras e tabelas.

Pelo que entendi do guia da biblioteca a lista de figuras pode conter além das figuras, quadros, mapas, diagramas etc. Enquanto a lista de tabelas deve conter apenas as tabelas (dados tratados estatisticamente, o que quer que isso signifique). Percebi que ao utilizar o ambiente quadro com tabular o quadro aparece na lista de figuras corretamente. Entretanto, a lista de tabelas tem a sua contagem conforme a ordem de tabelas e quadros que apareceram anteriormente.

Para exemplificar, imagine a seguinte ordem no corpo do texto.

Figura
Quadro
Figura
Tabela
Figura
Quadro
Tabela

Atualmente a lista de figuras conteria a seguinte informação:
Figura 1
Quadro 1
Figura 2
Figura 3
Quadro 3

e a lista de tabelas conteria
Tabela 2
Tabela 4

Acredito que o correto seria:
Figura 1
Quadro 1
Figura 2
Figura 3
Quadro 2

e então
Tabela 1
Tabela 2

Espero que eu tenha conseguido evidenciar o erro e que eu tenha compreendido corretamente o guia da biblioteca.

Explicar no manual como usar xindy no Windows

O xindy é um indexador de palavras independente de lingaugem de programação e que, felizmente, suporta LaTeX. Ele é melhor que o indexador padrão do LaTeX, o makeindex, porque trabalha melhor com caracteres Unicode (ou seja, todos que não escrevam em inglês), além de suportar diversos estilos de formatação de índices, listas de símbolos e de abreviaturas. Antes ele só existia pra Mac/Linux mas, a partir de junho de 2015, começou a fazer parte do MikTeX, a distribuição de LaTeX para Windows.
Precisamos explicar isso no manual, onde eu menciono que ele só funciona em Linux e, possivelmente, cortar o suporte pro makeindex, que faz uns 30 anos que não é atualizado e precisa de um processo de compilação diferente pra funcionar.

File 'brazilian-abnt-abnt.lbx' not found!

Pode ser um problema muito basico, mas passei bastante tempo sem usar o Latex e mesmo quando usava nunca fui muito bom. Estou tentando usar a classe fei para criar meu documento mas, embora consigo compilar sem problemas, recebo esta mensagem de aviso constantemente apos cada compilacao

Package biblatex Warning: File 'brazilian-abnt-abnt.lbx' not found!
(biblatex) Ignoring mapping 'brazilian-abnt' -> 'brazilian-abnt-
abnt'.
Package biblatex Info: Trying to load language 'brazilian-abnt'...
Package biblatex Info: ... file 'brazilian-abnt.lbx' found.

onde posso adquirir tais arquivos ? na propria mensagem de erro vejo o caminho do arquivo porem nao tenho ideia de ondei baixa-lo.

novamente, peco desculpas pela pergunta de iniciante.

Quadros e tabelas

Aparentemente existe uma diferença entre quadro (informação sem nenhum número) e tabela (um quadro com números). A bibliotecária pediu que eu arrumasse isso, mas a classe atual não permite.

\glsaddall não funciona com opção sublist

Quando o comando \glsaddall é usado para adicionar todos os símbolos e abreviaturas cadastrados às listas (independente de terem sido usados no texto ou não) e a opção sublist está habilitada, os cabeçalhos das sublistas de símbolos (e.g. Geral, Subscritos etc.) são listados na lista de abreviaturas.
Atualmente o workaround para isso é não usar \glsaddall e simplesmente adicionar cada símbolo /abreviatura manualmente, usando o comando \gls{} e afins.
Caso as pessoas que usem sublistas de símbolos queiram usar \glsaddall, esse problema deve ser corrigido.

makeglossaries não roda no Windows 10 (Miktex 2.9)

a ultima atualização não esta rodando no miktex 2.9 (windows 10)

e na penúltima versão...
não gera de forma alguma a lista de símbolos e siglas...por fim consegui fazer sair a lista de siglas, apos instalar o texmaker, porem o cabeçalho "SIGLAS" fica alinhado a esquerda.

com a ajuda fundamental do André, consegui gerar ambas as listas após instalar um package ActivePerl-5.20.2.2002-MSWin32-x64-299195...porem minha maquina ficou extremamente lenta, principalmente para ligar e desligar...por fim, retirei esse package e tive ainda que restaurar a maquina para voltar ao normal...

Nome das seções não estão em letra maiúscula no sumário

O problema pode ser visto na imagem abaixo.
image

Eu consegui resolver o problema fazendo esta modificação no arquivo da classe fei.

\renewcommand{\cftsectionfont}{\uppercase}
Esta linha foi adicionada na linha n⁰ 461 do arquivo fei.cls, o resultado final foi esse:

\renewcommand{\cftchapterfont}{\bfseries} % coloca o titulo de capítulos em negrito
\renewcommand{\cftsectionfont}{\uppercase} % solução encontrada
\renewcommand{\cftsubsectionfont}{\bfseries} % coloca o titulo das secoes em negrito
\renewcommand{\cftsubsubsectionfont}{\bfseries\itshape} % coloca o titulo das secoes em negrito
\renewcommand{\cftparagraphfont}{\itshape} % coloca o titulo das secoes em negrito

No arquivo ficou assim:
image

Implementar citações e referências numéricas

O pacote biblatex-abnt possui o estilo abnt-numeric, no qual as citações são feitas com números entre parênteses, igual o guia da biblioteca recomenda. É preciso ver se as referências são formatadas da forma esperada também.

  • adicionar opção na classe fei para utilizar citações numéricas abnt-numeric;
  • verificar se as referências são formatadas da forma esperada;
  • descrever opção nova da classe no manual;
  • descrever novos comandos de citação no manual, ou apontar para o manual do biblatex-abnt;
  • criar testes.

Documentação do biblatex-abnt: https://www.ctan.org/pkg/biblatex-abnt

Trocar pacote de algoritmos padrão (algorithm2e)

Como mencionado no bug #18 , o pacote algorithm2e é um dos melhores pacotes no que faz, porém não é atualizado desde 2013 e possivelmente foi abandonado pelo autor. Ele sempre foi um pé no saco com relação a formatação da lista de algoritmos e legendas, então estou cogitando substituí-lo. A opção mais certeira seria usar o algorithmic, parte do bundle algorithms. Este pacote é recomendado pela IEEE e é usado na classe LaTeX deles.

Para que o pacote seja adiciconado à nossa classe, ele precisa dar suporte a:

  • tradução das palavras chave (e.g. if, else, for) para o português;
  • formatação da lista de algoritmos sob o padrão da biblioteca:
    • escrever 'Algoritmo' no início de cada entrada da lista, em formatação simples, e separado pelo en dash do resto da legenda;
    • o título da lista deve ser "Lista de Algoritmos", centralizado e em caixa alta;
    • escrever 'Algoritmo' no início de cada entrada da lista, em formatação simples, e separado pelo en dash do resto da legenda;
    • as outras formatações devem ser similares às das listas existentes (pontos separando legenda da numeração da página, espaçamento entre os pontos, fonte da numeração etc);
  • formatação das legendas sob o padrão da biblioteca (uma legenda em cima, fonte 12, com a descrição do algoritmo, e outra embaixo, fonte 10, com a fonte do algoritmo).

O primeiro eu sei que o algorithmic é capaz de fazer. Os outros precisam de mais pesquisa e experimentação. Se alguém já usou ele, pode falar aí embaixo. Se alguém souber de outros pacotes de algoritmos que tenham outras vantagens, podem falar também. Eu vou postando novidades caso descubra coisas novas.

Problemas ao compilar com nova atualização do pacote memoir

Ola @douglasrizzo, aparentemente algum update do pacote memoir quebrou o pacote da FEI. A seguir está o resultado de uma tentativa em tentar compilar o template fornecido.

Para testar está tudo nesse repositório aqui https://gitlab.com/leo_costa/latex-template

Running with gitlab-runner 17.0.0~pre.88.g761ae5dd (761ae5dd)
on green-6.saas-linux-small-amd64.runners-manager.gitlab.com/default YKxHNyexq, system ID: s_a201ab37b78a
Preparing the "docker+machine" executor
01:38
Preparing environment
00:05
Running on runner-ykxhnyexq-project-58151255-concurrent-0 via runner-ykxhnyexq-s-l-s-amd64-1716493494-2c3e339f...
Getting source from Git repository
00:01
Fetching changes with git depth set to 20...
Initialized empty Git repository in /builds/leo_costa/latex-template/.git/
Created fresh repository.
Checking out 541948b7 as detached HEAD (ref is main)...
Skipping Git submodules setup
$ git remote set-url origin "${CI_REPOSITORY_URL}"
Executing "step_script" stage of the job script
00:02
Using docker image sha256:9dce14d8cc3e51271f1dabbdf179abb6624e220567288ce2cd424f9b889c883c for registry.gitlab.com/islandoftex/images/texlive:latest with digest registry.gitlab.com/islandoftex/images/texlive@sha256:6e50a568382e7545a0ead36f9b7ee3e2b914bcf62196383b703a98b75000a4e7 ...
$ cd texto/
$ pdflatex template.tex
This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
(./template.tex
LaTeX2e <2023-11-01> patch level 1
L3 programming layer <2024-04-11>
(./fei.cls
Document Class: fei 2022/12/23 4.10.4 Modelo da FEI
(/usr/local/texlive/2024/texmf-dist/tex/latex/kvoptions/kvoptions.sty
(/usr/local/texlive/2024/texmf-dist/tex/latex/graphics/keyval.sty)
(/usr/local/texlive/2024/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty)
(/usr/local/texlive/2024/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty))
(/usr/local/texlive/2024/texmf-dist/tex/latex/newtx/newtxtext.sty
`newtxtext' v1.744, 2024/04/01 Text macros taking advantage of TeXGyre Termes a
nd its extensions (msharpe)
(/usr/local/texlive/2024/texmf-dist/tex/latex/xpatch/xpatch.sty
(/usr/local/texlive/2024/texmf-dist/tex/latex/l3kernel/expl3.sty
(/usr/local/texlive/2024/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def))
(/usr/local/texlive/2024/texmf-dist/tex/latex/l3packages/xparse/xparse.sty)
(/usr/local/texlive/2024/texmf-dist/tex/latex/etoolbox/etoolbox.sty))
(/usr/local/texlive/2024/texmf-dist/tex/latex/xcolor/xcolor.sty
(/usr/local/texlive/2024/texmf-dist/tex/latex/graphics-cfg/color.cfg)
(/usr/local/texlive/2024/texmf-dist/tex/latex/graphics-def/pdftex.def)
(/usr/local/texlive/2024/texmf-dist/tex/latex/graphics/mathcolor.ltx))
(/usr/local/texlive/2024/texmf-dist/tex/generic/iftex/iftex.sty)
(/usr/local/texlive/2024/texmf-dist/tex/latex/xkeyval/xkeyval.sty
(/usr/local/texlive/2024/texmf-dist/tex/generic/xkeyval/xkeyval.tex
(/usr/local/texlive/2024/texmf-dist/tex/generic/xkeyval/xkvutils.tex)))
(/usr/local/texlive/2024/texmf-dist/tex/latex/base/textcomp.sty)
(/usr/local/texlive/2024/texmf-dist/tex/generic/xstring/xstring.sty
(/usr/local/texlive/2024/texmf-dist/tex/generic/xstring/xstring.tex))
(/usr/local/texlive/2024/texmf-dist/tex/latex/base/ifthen.sty)
(/usr/local/texlive/2024/texmf-dist/tex/latex/carlisle/scalefnt.sty)
(/usr/local/texlive/2024/texmf-dist/tex/generic/kastrup/binhex.tex)
(/usr/local/texlive/2024/texmf-dist/tex/latex/fontaxes/fontaxes.sty))
(/usr/local/texlive/2024/texmf-dist/tex/latex/memoir/memoir.cls
Document Class: memoir 2024/01/26 v3.8.2 configurable book, report, article doc
ument class
! LaTeX Error: Command @namelet already defined.
Or name \end... illegal, see p.192 of the manual.
See the LaTeX manual or LaTeX Companion for explanation.
Type H for immediate help.
...

l.97 \expandafter\let\csname #1\endcsname}

?
! Emergency stop.
...

l.97 \expandafter\let\csname #1\endcsname}

! ==> Fatal error occurred, no output PDF file produced!
Transcript written on template.log.
Cleaning up project directory and file based variables
00:00
ERROR: Job failed: exit code 1

A parte do erro é essa aqui:

! LaTeX Error: Command @namelet already defined.
Or name \end... illegal, see p.192 of the manual.
See the LaTeX manual or LaTeX Companion for explanation.
Type H for immediate help.
...

l.97 \expandafter\let\csname #1\endcsname}

?
! Emergency stop.

Esse erro também está acontecendo no Windows (TeXStudio + MiKTeX)

Mencionar apêndice com \ref{} retorna valor errado

Esse é um problema antigo.

  • Chapters são numerados 1, 2, 3 etc
  • Depois do comando \appendix, eles começam a ser listados com letras A, B, C etc.
  • Porém, quando são referenciados usando e.g. \ref{meu-apendice}, acontece algum problema e não é a letra correta que aparece no lugar do comando \ref{meu-apendice}.

Abaixo segue um MWE que eu acabei de testar e teve o comportamento correto (mwe.pdf). A ideia é ver porque esse MWE funciona e a classe da FEI, que usa uma estratégia bem parecida, não funciona.

\documentclass{memoir}

\renewcommand{\appendix}{
	\renewcommand{\chaptername}{\appendixname}
	\setcounter{chapter}{0}
	\renewcommand{\thechapter}{\Alph{chapter}}
}

\begin{document}

\chapter{Introduction}
More stuff in appendix \ref{my-appendix}.

\appendix

\chapter{More stuff} \label{my-appendix}
\end{document}

Posicionamento da legenda da imagem!

Douglas,

Na página 6 do manual da biblioteca, na parte sobre ilustrações está escrito:
Para qualquer tipo de ilustração (desenho, esquema, fotografia, gráfico, mapa, organograma, planta, quadro, retrato, figura e outros), sua identificação deve aparecer na parte superior, ALINHADA À ESQUERDA DA ILUSTRAÇÃO E NÃO DA MARGEM, com fonte 12, seguida de seu número de ordem de ocorrência no texto, em algarismo arábico, travessão e do título. A ilustração pode aparecer na margem esquerda ou centralizada.

Atualmente a classe está alinhando o texto à margem, e não à figura.

Atenciosamente,
Aislan...

Ilustrações vs. Figuras

No corpo do texto a legenda apresenta a palavra "figura X", enquanto na lista de ilustrações a palavra que aparece é "Ilustração X". A bibliotecária pediu para que eu arrume isso.

Listas de símbolos e abreviaturas possuem numeração na página

O comando \printglossaries, do pacote glossaries, gera as listas de símbolos e abreviaturas. Essas listas não podem ser formatadas como as outras, portanto não foi possível remover a numeração das páginas em que elas aparecem.

Lembrar de testar casos em que as listas abrangem mais de uma página.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.