texlive[76157] Master: abntexto-uece (27aug25)
commits+karl at tug.org
commits+karl at tug.org
Wed Aug 27 22:11:10 CEST 2025
Revision: 76157
https://tug.org/svn/texlive?view=revision&revision=76157
Author: karl
Date: 2025-08-27 22:11:10 +0200 (Wed, 27 Aug 2025)
Log Message:
-----------
abntexto-uece (27aug25)
Modified Paths:
--------------
trunk/Master/tlpkg/bin/tlpkg-ctan-check
trunk/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc
Added Paths:
-----------
trunk/Master/texmf-dist/doc/latex/abntexto-uece/
trunk/Master/texmf-dist/doc/latex/abntexto-uece/CHANGELOG
trunk/Master/texmf-dist/doc/latex/abntexto-uece/README.md
trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.pdf
trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.tex
trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.bib
trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.pdf
trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.tex
trunk/Master/texmf-dist/tex/latex/abntexto-uece/
trunk/Master/texmf-dist/tex/latex/abntexto-uece/abntexto-uece.cls
trunk/Master/tlpkg/tlpsrc/abntexto-uece.tlpsrc
Added: trunk/Master/texmf-dist/doc/latex/abntexto-uece/CHANGELOG
===================================================================
--- trunk/Master/texmf-dist/doc/latex/abntexto-uece/CHANGELOG (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/abntexto-uece/CHANGELOG 2025-08-27 20:11:10 UTC (rev 76157)
@@ -0,0 +1,17 @@
+# `abntexto-uece`
+
+- Autor: Elayson Abreu
+- Versão: 2025-08-27 1.0
+- Contato: abntexto.classe at gmail.com
+- Licença: Public Domain Software 2025
+
+## Sobre
+
+Classe LaTeX não-oficial para preparação de TCCs, dissertações e teses
+de acordo com as normas da Universidade Estadual do Ceará (UECE).
+
+# Changelog
+
+## [1.0] - 2025-08-27
+
+- Início.
\ No newline at end of file
Added: trunk/Master/texmf-dist/doc/latex/abntexto-uece/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/abntexto-uece/README.md (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/abntexto-uece/README.md 2025-08-27 20:11:10 UTC (rev 76157)
@@ -0,0 +1,11 @@
+# `abntexto-uece`
+
+- Author: Elayson Abreu
+- Version: 1.0 2025-08-27
+- Contact: abntexto.classe at gmail.com
+- License: Public Domain Software 2025
+
+## About
+
+This is a unofficial LaTeX class created for Brazilian students to facilitate the use of standards from the Universidade Estadual do Ceará (UECE) in academic works like TCCs, dissertations, theses. Manual: `abntexto.uece.pdf`.
+
Property changes on: trunk/Master/texmf-dist/doc/latex/abntexto-uece/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.pdf 2025-08-27 20:10:26 UTC (rev 76156)
+++ trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.pdf 2025-08-27 20:11:10 UTC (rev 76157)
Property changes on: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.tex (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.tex 2025-08-27 20:11:10 UTC (rev 76157)
@@ -0,0 +1,96 @@
+%! abntexto-uece.cls
+%! Author: Elayson Abreu
+%! Version: 1.0 2025-08-27
+%! Contact: abntexto.classe at gmail.com
+%! License: Public Domain Software 2025
+
+% !TeX TS-program = lualatex
+\documentclass{abntexto-uece}
+
+\usepackage{lipsum}
+\usepackage[colorlinks,linktocpage]{hyperref}
+\usepackage[english,brazil]{babel}
+\usepackage{fontspec}
+\usepackage{unicode-math}
+
+\Autor{Fulano de Tal}
+\Universidade{Universidade Estadual do Ceará}
+\SiglaDaInstituicao{SIGLA}
+
+% Estes três são mutuamente exclusivos.
+%\Programa{Programa de Pós-Graduação em Saúde Coletiva}
+%\Faculdade{Faculdade de Filosofia Dom Aureliano Matos}
+\Centro{Centro de Ciências e Tecnologia}
+
+% Estes dois são mutuamente exclusivos.
+%\Especializacao{Especialização em Gestão Pedagógica da Escola Básica}
+%\Curso{Curso de Graduação em Informática Licenciatura a Distância}
+
+\Cidade{Cidade --- Ceará}
+\AnoDeEntrega{Ano de Entrega}
+\Titulo{Um título de exemplo}
+\Subtitulo{um subtítulo}
+\TipoDeTrabalho{Dissertação}
+\DescricaoDoTrabalho{\xTipoDeTrabalho\ apresentada a \xUniversidade\
+ como cumprimento às exigências legais para obtenção do
+ título de Mestre.}
+\AreaDeConcentracao{Matemática}
+\Orientador{Dr.\,Nome}
+\Coorientador{Dr.\,Nome}
+\AvaliadorA{
+ Dr.\,Nome \\
+ Faculdade \\
+ Universidade
+}
+\AvaliadorB{
+ Dr.\,Nome \\
+ Faculdade \\
+ Universidade
+}
+\AvaliadorC{
+ Dr.\,Nome \\
+ Faculdade \\
+ Universidade
+}
+\Dedicatoria{Dedico este trabalho a\dots}
+\Epigrafe{Linha de texto}
+\Resumo{brazil}{Parágrafo do Resumo.}
+\Resumo{english}{Paragraph.}
+\PalavrasChave{brazil}{
+ Palavra 1,
+ Palavra 2,
+ Palavra 3,
+ Palavra 4,
+}
+\PalavrasChave{english}{
+ Keyword 1,
+ Keyword 2,
+ Keyword 3,
+ Keyword 4,
+}
+\setmainfont{XITS}[
+ UprightFont = *-Regular,
+ BoldFont = *-Bold,
+ ItalicFont = *-Italic,
+ BoldItalicFont = *-BoldItalic,
+ Extension = .otf
+]
+\setmathfont{XITSMath-Regular.otf}
+
+\begin{document}
+\ImprimirPretextual
+\nonum\notoc\section{Lista de Figuras}
+\makelof
+\nonum\notoc\section{Sumário}
+\maketoc
+\section{Introdução}
+\lipsum[1]
+\legend{figure}{Um título}\src{Elaboração própria.}
+\begin{place}
+ \includegraphics[width=.3\linewidth]{example-image}
+\end{place}
+\subsection{Uma seção secundária}
+\subsubsection{Uma seção terciária}
+\section{Desenvolvimento}
+\section{Conclusão}
+\end{document}
\ No newline at end of file
Property changes on: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece-exemplo.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Index: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.bib
===================================================================
--- trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.bib 2025-08-27 20:10:26 UTC (rev 76156)
+++ trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.bib 2025-08-27 20:11:10 UTC (rev 76157)
Property changes on: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.bib
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.pdf 2025-08-27 20:10:26 UTC (rev 76156)
+++ trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.pdf 2025-08-27 20:11:10 UTC (rev 76157)
Property changes on: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.tex (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.tex 2025-08-27 20:11:10 UTC (rev 76157)
@@ -0,0 +1,430 @@
+%! abntexto-uece.cls
+%! Author: Elayson Abreu
+%! Version: 1.0 2025-08-27
+%! Contact: abntexto.classe at gmail.com
+%! License: Public Domain Software 2025
+
+% !TeX TS-program = lualatex
+\documentclass{abntexto-uece}
+
+\usepackage[brazil,shorthands=off]{babel}
+\usepackage[cmyk]{xcolor}
+\usepackage{lipsum}
+\usepackage[
+ style = abnt,
+ maxbibnames = 100,
+ extrayear = true,
+]{biblatex} \addbibresource{abntexto-uece.bib}
+\usepackage{unicode-math}
+\usepackage[colorlinks,linktoc=page]{hyperref}
+\usepackage{microtype}
+\usepackage{fontspec}
+\usepackage{listings}
+\usepackage{lua-widow-control} \clubpenalty=10000\widowpenalty=10000
+
+\makeatletter
+
+% VERBATIM
+% ================================================
+
+\def\adef#1{\catcode`#1=13 \begingroup \lccode`\~=`#1\lowercase{\endgroup\def~}}
+\def\setverb{\def\do##1{\catcode`##1=12}\dospecials\space}
+\def\verbchar#1{%
+ \ifx\savedttchar\undefined\else \catcode\savedttchar=\savedttcharc \fi
+ \chardef\savedttchar=`#1\relax
+ \chardef\savedttcharc=\catcode`#1\relax
+ \adef{#1}{\leavevmode\hbox\bgroup\setverbchar\readverb}%
+ \bgroup\lccode`\~=`#1\lowercase{\egroup\def\readverb ##1~}{##1\egroup}%
+ \catcode`#1=13
+}
+\def\setverbchar{\setverb
+ \adef{ }{\ }%
+ \adef{\{}{\bgroup\normalcolor\char`\{}%
+ \adef{\}}{\char`\}\egroup}%
+ \adef{[}{\bgroup\normalcolor\char`[}%
+ \adef{]}{\char`]\egroup}%
+ \ttfamily
+}
+
+\edef\bslash{\csstring\\}
+\def\mytarget#1{\vbox to0pt{\kern-12pt \hypertarget{#1}{}\vss}}
+\def\1{`}\def\2{``}
+{\catcode`\`=13 \AtBeginDocument{%
+ \verbchar{`}%
+ \def\^`{\bgroup \docpoint}%
+ \def\docpoint#1`{\egroup\leavevmode\edef\tmp{\csstring#1}%
+ \expandafter\parsecn \string#1\relax
+ \ifcsname \cn s/^\tmp\endcsname \else
+ \mytarget{\cn s/^\tmp}\csgdef{\cn s/^\tmp}{}%
+ \fi
+ \hyperlink{\cn s/\tmp}{\color{blue}\ttfamily\if\cn c\bslash\fi\tmp}%
+ }%
+ \def\parsecn #1#2\relax {\edef\cn{\if\bslash#1c\else n\fi}}%
+ \def\`{\bgroup \mainpoint}%
+ \def\mainpoint #1`{\egroup\leavevmode\edef\tmp{\csstring#1}%
+ \expandafter\parsecn \string#1\relax
+ \ifcsname \cn s/\tmp\endcsname \moremainpoints \else
+ \mytarget{\cn s/\tmp}\csgdef{\cn s/\tmp}{}%
+ \fi
+ \ifcsname \cn s/^\tmp\endcsname
+ \hyperlink{\cn s/^\tmp}{\ttfamily\if\cn c\bslash\fi\tmp}\else
+ {\color{red}\ttfamily\string#1}%
+ \fi
+ }%
+ \def\moremainpoints{\errmessage{Second main documentation point \if\cn c\bslash\fi\tmp}}
+}}
+
+\let\lchevron=<
+{\catcode`<=13 \AtBeginDocument{\catcode`<=13
+ \def<#1>{\ifhmode\else\expandafter\hbox\fi\bgroup\normalcolor\ttfamily
+ $\color{gray}\langle$\/{\rmfamily\itshape #1\/}$\color{gray}\rangle$\egroup}}%
+}
+
+\def\type#1{\NoCaseChange{\protect\typeA{#1}}}
+\def\typeA#1{\bgroup\normalshape\ttfamily{\escapechar=-1\relax\expandafter}\detokenize{#1}\egroup}
+% Precisamos de \m at ne aqui, \m at ne=-1.
+\pdfstringdefDisableCommands{%
+ \def\type#1{\bgroup\escapechar\m at ne\expandafter\egroup\detokenize{#1}}%
+ \let\escapechar=\relax
+ \let\m at ne=\relax
+}
+
+\definecolor{P}{RGB}{242, 121, 0} % Primitivas.
+\definecolor{C}{RGB}{23, 230, 23} % Comentários.
+\definecolor{B}{RGB}{245, 250, 247} % Fundo.
+
+\lstset{
+ language = [latex]tex,
+ basicstyle = \abntsmall\singlesp\ttfamily,
+ texcsstyle = *\color{P}, % O listings não permite ":"
+ commentstyle = \color{C}, % no nome dessas cores. Bug.
+ backgroundcolor = \color{B},
+ frame = leftline,
+ rulecolor = \color{lightgray},
+ columns = fullflexible,
+ breaklines = false,
+ keepspaces = true,
+ aboveskip = 0pt plus1.2ex minus.67ex,
+ belowskip = 0pt plus1.2ex minus.67ex,
+ abovecaptionskip = 0pt,
+ belowcaptionskip = 0pt,
+% tabsize = 1, % Sem efeito, porque o documento usa Espaço na tabulação.
+}
+
+% #1 = linewidth
+% #2 = border
+% #3 = padding
+% #4 = padding-top
+% #5 = padding-right
+% #6 = padding-bottom
+% #7 = padding-left
+% #8 = margin-left
+% #9 = margin-right
+\def\mylstset#1#2#3#4#5#6#7#8#9{\lstset{
+ linewidth = \dimexpr#1 -#2 -#3 -#5\relax,
+ framerule = \dimexpr#2\relax,
+ framesep = \dimexpr#3\relax,
+ xleftmargin = \dimexpr#2 +#3 +#7 +#8\relax,
+ xrightmargin = \dimexpr#9\relax,
+ framextopmargin = \dimexpr#4\relax,
+ framexrightmargin = \dimexpr#5\relax,
+ framexbottommargin = \dimexpr#6\relax,
+ framexleftmargin = \dimexpr#7\relax,
+}}
+\mylstset{\linewidth}{1pt}{0pt}{0pt}{0pt}{0pt}{0pt}{0pt}{0pt}
+
+\lstnewenvironment{lst}[1][\placepos]{%
+ \let\medskipamount=\smallskipamount
+ \place[#1]\vbox\bgroup
+}{%
+ \egroup\endplace
+}
+\lstnewenvironment{longlst}[1][\placepos]{%
+ \begingroup
+ \processplacearg{#1}%
+ \parskip=0pt \parindent=0pt
+ \initplace
+ \printlegendbox
+ \resetORIlabel \ignorespaces
+}{%
+ \unskip
+ \savedplacewidth=\hsize
+ \printsrcbox
+ \finishplace
+ \resetplace \gresetORIlabel
+ \endgroup
+}
+
+\def\hookXP{}
+\lstnewenvironment{xp}[1][]{%
+ \lstset{
+ frame = leftline,
+ basicstyle = \normalsize\ttfamily\singlesp\vskip-\baselineskip,
+ texcsstyle = \normalcolor,
+ commentstyle = \normalcolor,
+ backgroundcolor = \color{white},
+ gobble = 4,
+ }%
+ \mylstset{\linewidth}{0pt}{0pt}{0pt}{0pt}{0pt}{\parindent}{0pt}{0pt}%
+ \expandafter\lstset \expandafter{\hookXP,#1}%
+ \endgraf\null
+}{}
+
+% ETC.
+% ================================================
+
+\setmainfont{XITS}[
+ UprightFont = *-Regular,
+ BoldFont = *-Bold,
+ ItalicFont = *-Italic,
+ BoldItalicFont = *-BoldItalic,
+ Extension = .otf
+]
+\setmathfont{XITSMath-Regular.otf}
+\setmonofont{InconsolataN}[
+ UprightFont = *-Regular,
+ BoldFont = *-Bold,
+ Extension = .otf
+]
+
+\definelegendplace{code}{Código}{loc}
+%\definelegendplace{output}{Saída}{loo}
+%\definelegendplace{scr}{\emph{Screenshot}}{loscr}
+
+\let\over=\@@over
+\AtBeginDocument{\def\refname{Referências}} % Removido \^ da definição.
+\def\hooksection{}
+\AtBeginDocument{\pretocmd\appendix{\clearpage}{}{}}
+\pretocmd\annex{\clearpage}{}{}
+\def\etex{\leavevmode\hbox{$\varepsilon$-\TeX}}
+\def\pdflatex{\leavevmode\hbox{PDF\LaTeX}}
+\def\xelatex{\leavevmode\hbox{Xe\LaTeX}}
+\def\lualatex{\leavevmode\hbox{Lua\LaTeX}}
+\def\me{Elaboração própria.}
+\def\bibfont{\raggedright\interlinepenalty=10000\singlesp\bibitemsep=\baselineskip}
+%\appto\textual{
+% \def\@evenhead{\abntsmall \firstmarks0\hfil\thepage}
+% \def\@oddhead {\abntsmall \botmarks1\hfil\thepage}
+% \def\sectionmark #1{\marks0{Seção \thesection: \unexpanded{#1}}}
+% \def\subsectionmark#1{\marks1{Subseção \thesubsection: \unexpanded{#1}}}
+% \preto\@oddhead {\lower4pt\rlap{\vrule width\hsize height.4pt}}
+% \preto\@evenhead{\lower4pt\rlap{\vrule width\hsize height.4pt}}
+%}
+%\patchcmd{\eletroniclayout}{false}{true}{}{}
+\let\onesidelayout=\eletroniclayout
+\let\twosidelayout=\eletroniclayout
+\let\Metadados=\relax
+\hypersetup{
+ pdfauthor = Elayson Abreu,
+ pdftitle = Classe ABNTexto-UECE: trabalhos
+ conforme as normas da UECE,
+ pdfsubject = Manual da classe ABNTexto-UECE,
+ pdfcreator = LaTeX with abntexto-uece,
+ pdfkeywords = ABNTexto-UECE; LaTeX; Classe; ABNT.
+}
+\makeatother
+
+\begin{document}
+
+\leavevmode\vskip1.9in
+\begingroup \centering \LARGE\sffamily\bfseries
+ Classe ABNTexto-UECE\vskip2em \normalfont\large
+ Elayson Abreu\vskip-3pt
+ \href{mailto:abntexto.classe at gmail.com}%
+ {abntexto.classe at gmail.com}\vskip2ex
+ \today
+\vskip2in\endgroup
+
+\noindent\hfil {\Large\ttfamily 1.0}
+\newpage
+
+\nonum\notoc\section{Sumário}
+\maketoc
+\newpage
+
+\section{Introdução}
+
+Esta classe é destinada aos estudantes da UECE como auxílio na criação de trabalhos acadêmicos: TCCs, dissertações e teses. Ela foi baseada na classe `abntexto.cls` disponível no CTAN: \url{https://ctan.org/pkg/abntexto} e no Guia de Normalização de Trabalhos Acadêmicos da UECE: \url{https://www.uece.br/biblioteca/wp-content/uploads/sites/27/2024/09/GUIA-UECE-2024-Atualizado-1.pdf}, 5ª edição, V1, 2024.
+
+Exemplo de uso desta classe disponível no arquivo `abntexto-uece-exemplo.tex` (Código~\ref{cd:ex}):
+
+\legend{code}{Exemplo de uso} \label{cd:ex}
+\src\me
+\begin{longlst}
+ % !TeX TS-program = lualatex
+ \documentclass{abntexto-uece}
+
+ \usepackage{hyperref}
+ \usepackage[english,brazil]{babel}
+ \usepackage{fontspec}
+ \usepackage{unicode-math}
+
+ \Autor{Fulano de Tal}
+ \Universidade{Universidade Estadual do Ceará}
+ \SiglaDaInstituicao{SIGLA}
+
+ % Estes três são mutuamente exclusivos.
+ %\Programa{Programa de Pós-Graduação em Saúde Coletiva}
+ %\Faculdade{Faculdade de Filosofia Dom Aureliano Matos}
+ \Centro{Centro de Ciências e Tecnologia}
+
+ % Estes dois são mutuamente exclusivos.
+ %\Especializacao{Especialização em Gestão Pedagógica da Escola Básica}
+ \Curso{Curso de Graduação em Informática Licenciatura a Distância}
+
+ \Cidade{Cidade --- Ceará}
+ \AnoDeEntrega{Ano de Entrega}
+ \Titulo{Um título de exemplo}
+ \Subtitulo{um subtítulo}
+ \TipoDeTrabalho{Dissertação}
+ \DescricaoDoTrabalho{\xTipoDeTrabalho\ apresentada a \xUniversidade\
+ como cumprimento às exigências legais para obtenção do
+ título de Mestre.}
+ \AreaDeConcentracao{Matemática}
+ \Orientador{Dr.\,Nome}
+ \Coorientador{Dr.\,Nome}
+ \AvaliadorA{
+ Dr.\,Nome \\
+ Faculdade \\
+ Universidade
+ }
+ \AvaliadorB{
+ Dr.\,Nome \\
+ Faculdade \\
+ Universidade
+ }
+ \AvaliadorC{
+ Dr.\,Nome \\
+ Faculdade \\
+ Universidade
+ }
+ \Dedicatoria{Dedico este trabalho a\dots}
+ \Epigrafe{Linha de texto}
+ \Resumo{brazil}{Parágrafo do Resumo.}
+ \Resumo{english}{Paragraph.}
+ \PalavrasChave{brazil}{
+ Palavra 1,
+ Palavra 2,
+ Palavra 3,
+ Palavra 4,
+ }
+ \PalavrasChave{english}{
+ Keyword 1,
+ Keyword 2,
+ Keyword 3,
+ Keyword 4,
+ }
+
+ \setmainfont{XITS}[
+ UprightFont = *-Regular,
+ BoldFont = *-Bold,
+ ItalicFont = *-Italic,
+ BoldItalicFont = *-BoldItalic,
+ Extension = .otf
+ ]
+ \setmathfont{XITSMath-Regular.otf}
+
+ \begin{document}
+ \ImprimirPretextual
+ \nonum\notoc\section{Lista de Figuras}
+ \makelof
+ \nonum\notoc\section{Sumário}
+ \maketoc
+ \section{Introdução}
+ \lipsum[1]
+ \legend{figure}{Um título}\src{Elaboração própria.}
+ \begin{place}
+ \includegraphics[width=.3\linewidth]{example-image}
+ \end{place}
+ \subsection{Uma seção secundária}
+ \subsubsection{Uma seção terciária}
+ \section{Desenvolvimento}
+ \section{Conclusão}
+ \end{document}
+\end{longlst}
+
+% MACROS PARA O CÓDIGO-FONTE
+% ================================================
+
+\pdfstringdefDisableCommands{\def\marks#1#2{}}
+\appendix{\marks0{}\marks1{}Código-fonte\label{ap:codigo-fonte}}
+
+\makeatletter
+\newcounter{codesection}
+\newcounter{codesubsection}[codesection]
+\let\c at section=\c at codesection
+\let\c at subsection=\c at codesubsection
+\def\thecodesection{\arabic{codesection}}
+\def\thecodesubsection{\thecodesection.\arabic{codesubsection}}
+\edef\toclevel at codesection{\mainseclevel}
+\edef\toclevel at codesubsection{\the\numexpr\mainseclevel-1\relax}
+
+\appto\hooktocsection{\def\extleaders{}%
+ \edef\savedskips{\rightskip=\the\rightskip \parfillskip=\the\parfillskip\relax}}
+\appto\hooktocsubsection{\def\extleaders{}%
+ \edef\savedskips{\rightskip=\the\rightskip \parfillskip=\the\parfillskip\relax}}
+\appto\hookextline{\savedskips}
+
+\def\toclabelbox{\lowercase{\eqbox{codetoc}}}
+\def\tocsectionfont{\itshape\MakeUppercase}
+\def\tocsubsectionfont{}
+\def\sectionfont{\tocsectionfont}
+\def\subsectionfont{\itshape}
+
+% O \addcontentsline{#1}{#2}{#3} está programado para
+% enviar marcadores apenas se #1 = toc. Podemos
+% mudar isso com \hypersetup{bookmarkstype=<outro>}.
+\hypersetup{bookmarkstype=codetoc}
+\patchcmd{\targetsection}{\refstepcounter{section}}{\refstepcounter{codesection}}{}{}
+\patchcmd{\targetsection}{\addcontentsline{toc}}{\addcontentsline{codetoc}}{}{}
+\patchcmd{\targetsubsection}{\refstepcounter{subsection}}{\refstepcounter{codesubsection}}{}{}
+\patchcmd{\targetsubsection}{\addcontentsline{toc}}{\addcontentsline{codetoc}}{}{}
+
+\def\hooksection{}
+\def\codesection{\section}
+\def\codesubsection{\subsection}
+
+\colorlet{C}{.}
+\definecolor{tmp}{RGB}{128, 0, 32} \colorlet{P}{tmp}
+\definecolor{tmp}{RGB}{255, 228, 236} \colorlet{B}{tmp}
+
+\expanded{\noexpand\lstdefinelanguage{mylang}{
+ language = [latex]tex,
+ texcs = {\directlua{for k,v in pairs(tex.primitives())
+ do tex.print(k, v.. ',')end}},
+ deletetexcs = {end}
+}}
+
+\lstset{
+ language = mylang,
+ frame = single,
+ numbers = left,
+ numbersep = \dimexpr-5pt+\addnumbersep\relax,
+ numberstyle = \fontsize{8bp}{9bp}\selectfont,
+ literate = {\^^M\%.}{}1,
+}
+\def\addnumbersep{9pt}
+\mylstset{\linewidth}{0pt}{0pt}{3pt}{0pt}{3pt}{13pt+\addnumbersep}{0pt}{0pt}
+
+\newcount\codecount \codecount=1
+\newbox\mybox
+\setbox\mybox=\hbox to\hsize{\hfil\abntsmall\ttfamily\bfseries\color{gray}abntexto-uece.cls}
+\lstnewenvironment{code}[1][]{%
+ \lstset{
+ title = \copy\mybox\nobreak,
+ firstnumber = \codecount,
+ #1
+ }%
+}{%
+ \global\codecount=\value{lstnumber}\relax
+}
+\appto\hookXP{
+ frame = none,
+ numbers = none,
+ numbersep = 0pt,
+ gobble = 4,
+}
+\parskip=0pt plus.2ex minus.1ex
+\@starttoc{codetoc}
+{\def\excl{!}\catcode\1\!=14 \catcode\1\%=9 \input{abntexto-uece.cls}}
+\end{document}
\ No newline at end of file
Property changes on: trunk/Master/texmf-dist/doc/latex/abntexto-uece/abntexto-uece.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/abntexto-uece/abntexto-uece.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/abntexto-uece/abntexto-uece.cls (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/abntexto-uece/abntexto-uece.cls 2025-08-27 20:11:10 UTC (rev 76157)
@@ -0,0 +1,380 @@
+%! abntexto-uece.cls
+%! Author: Elayson Abreu
+%! Version: 1.0 2025-08-27
+%! Contact: abntexto.classe at gmail.com
+%! License: Public Domain Software 2025
+
+% \codesection{Identificação da classe}
+
+% \begin{code}
+\NeedsTeXFormat{LaTeX2e}
+
+\ProvidesClass{abntexto-uece}%
+ [2025-08-27 1.0 Preparation of works in UECE standards]
+
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{abntexto}}
+
+\ProcessOptions
+
+\LoadClass{abntexto}
+%. \end{code}
+
+% \codesection{Macros auxiliares}
+
+% O comando `\RecortarEsquerda` remove espaço à esquerda a nível de processador de expansão, significando dizer que podemos fazer algo do tipo:
+%\begin{xp}
+% \edef\y{ 123}
+% \edef\x{\RecortarEsquerda \y}
+% \show\x % >123.
+%\end{xp}
+% `\RecortarDireita` é análogo ao comando anterior e permite remover espaços à direita:
+%\begin{xp}
+% \edef\y{123 }
+% \edef\x{\expandafter\RecortarDireita\expandafter{\y}}
+% \show\x % >123.
+%\end{xp}
+% `\RecortarAmbos` remove espaços à esquerda e direita.
+
+% \begin{code}
+\def\RecortarEsquerda{\romannumeral-`\.}
+
+\count2=\catcode`?
+\catcode`?=3
+\def\RecortarDireita#1{\RecortarDireitaA#1? ?}
+\def\RecortarDireitaA#1 ?{\RecortarDireitaB#1?}
+\def\RecortarDireitaB#1?#2{#1}
+\catcode`?=\count2
+
+\def\RecortarAmbos#1{\expandafter\RecortarDireita\expandafter{\romannumeral-`\.#1}}
+%. \end{code}
+
+% \codesection{Macros de identificação do documento}
+
+% Definindo macros de identificação do documento.
+
+% \begin{code}
+\def\Autor{\def\xAutor}
+\def\Universidade{\def\xUniversidade}
+\def\Centro{\def\xFaculdade{}\def\xPrograma{}\def\xCentro}
+\def\Faculdade{\def\xCentro{}\def\xPrograma{}\def\xFaculdade}
+\def\Programa{\def\xCentro{}\def\xFaculdade{}\def\xPrograma}
+\def\Curso{\def\xEspecializacao{}\def\xCurso}
+\def\Especializacao{\def\xCurso{}\def\xEspecializacao}
+\def\SiglaDaInstituicao{\def\xSiglaDaInstituicao}
+\def\Titulo{\def\xTitulo}
+\def\Subtitulo{\def\xSubtitulo}
+\def\Cidade{\def\xCidade}
+\def\AnoDeEntrega{\def\xAnoDeEntrega}
+\def\TipoDeTrabalho{\def\xTipoDeTrabalho}
+\def\DescricaoDoTrabalho{\def\xDescricaoDoTrabalho}
+\def\AreaDeConcentracao{\def\xAreaDeConcentracao}
+\def\Orientador{\def\xOrientador}
+\def\Coorientador{\def\xCoorientador}
+\def\AvaliadorA{\def\xAvaliadorA}
+\def\AvaliadorB{\def\xAvaliadorB}
+\def\AvaliadorC{\def\xAvaliadorC}
+\def\AvaliadorD{\def\xAvaliadorD}
+\def\Agradecimentos{\def\xAgradecimentos}
+\def\Dedicatoria{\def\xDedicatoria}
+\def\Epigrafe{\def\xEpigrafe}
+%. \end{code}
+
+% `\xResumo` e `\xPalavrasChave` são definidos apenas como indicativo de que `\Resumo` e `\PalavrasChave` foram chamados pelo estudante e, adicionalmente, aqueles serão usados em `\CamposMandatorios`.
+
+% `\Mandatorio\<atributo>` verifica se `\x<atributo>` está vazio ou indefinido. Se sim, uma mensagem de alerta é emitida pedindo que `\<atributo>{<valor>}` seja chamado no preâmbulo. `\CamposMandatorios` será chamado em `\begin{document}`.
+
+% `\Centralizar` e `\Direita` serão úteis para alinhamento de caixas ou parágrafos de linhas únicas, por exemplo, `\Centralizar\begin{minipage}{<largura>}\end{minipage}`.
+
+% \begin{code}
+\def\Resumo#1#2{\def\xResumo{#2}\csdef{resumo/#1}{#2}}
+\def\PalavrasChave#1#2{\def\xPalavrasChave{#2}\csdef{pchave/#1}{#2}%
+ \def\tmp{#1}\@tempcnta=1 \doPalavrasChave#2,\relax,%
+}
+\def\doPalavrasChave#1,{\if&\RecortarEsquerda#1&\expandafter\doPalavrasChave \else
+ \ifx\relax#1\else
+ \csedef{xPalavraChave\@Alph\@tempcnta/\tmp}{\RecortarAmbos{#1}}%
+ \advance\@tempcnta by1
+ \expandafter\expandafter\expandafter \doPalavrasChave
+ \fi\fi
+}
+
+\def\Mandatorio#1{\ifcsname x\expandafter\@gobble\string#1\endcsname
+ \expandafter\ifx\csname x\expandafter\@gobble\string#1\endcsname\empty
+ \ClassWarning{abntexto-uece}{Campo obrigatório vazio! "\string#1"}
+ \csdef{x\expandafter\@gobble\string#1}{??}\fi
+ \else
+ \ClassWarning{abntexto-uece}{Campo obrigatório vazio! "\string#1"}
+ \csdef{x\expandafter\@gobble\string#1}{??}
+ \fi
+}
+\def\CamposMandatorios{
+ \Mandatorio\Autor
+ \Mandatorio\Universidade
+ \Mandatorio\SiglaDaInstituicao
+ \ifdefined\xCentro \else
+ \ifdefined\xFaculdade \else
+ \ifdefined\xPrograma \else
+ \ClassWarning{abntexto-uece}{^^JUm dos três campos precisa ser chamado:
+ \noexpand\Centro ou \noexpand\Faculdade ou \string\Programa!}
+ \Centro{}\Faculdade{}\Programa{}%
+ \fi\fi\fi
+ \ifdefined\xCurso \else
+ \ifdefined\xEspecializacao \else
+ \ClassWarning{abntexto-uece}{^^JUm dos dois campos precisa ser chamado:
+ \noexpand\Curso ou \string\Especializacao!}
+ \Curso{}\Especializacao{}
+ \fi\fi
+ \Mandatorio\SiglaDaInstituicao
+ \Mandatorio\Titulo
+ \Mandatorio\Subtitulo
+ \Mandatorio\Cidade
+ \Mandatorio\AnoDeEntrega
+ \Mandatorio\TipoDeTrabalho
+ \Mandatorio\DescricaoDoTrabalho
+ \Mandatorio\AreaDeConcentracao
+ \Mandatorio\Orientador
+ \Mandatorio\Coorientador
+ \Mandatorio\AvaliadorA
+ \Mandatorio\Resumo
+ \Mandatorio\PalavrasChave
+}
+
+\AtBeginDocument{\CamposMandatorios}
+
+\def\Centralizar{\noindent\hfil}
+\def\Direita{\noindent\hfill}
+%. \end{code}
+
+% \codesection{Impressão dos elementos pré-textuais}
+
+% Definições de `\ImprimirCapa`, `\ImprimirFolhaDeRosto`, `\ImprimirFichaCatalografica`, `\ImprimirErrata`, `\ImprimirFolhaDeAprovacao`, `\ImprimirAvaliadores`, `\ImprimirDedicatoria`, `\ImprimirAgradecimentos`, `\ImprimirResumo`, `\ImprimirPalavrasChave`, `\ImprimirPretextual`, `\Metadados`. Todas essas intruções podem ser redefinidas pelo usuário.
+
+% \begin{code}
+\def\ImprimirCapa{
+ \Centralizar
+ \begin{minipage}{.7\linewidth}
+ \centering
+ \includegraphics[height=4\baselineskip]{example-image}\\
+ \MakeUppercase{\xUniversidade}\\
+ \MakeUppercase{\xCentro\xFaculdade\xPrograma}\\
+ \MakeUppercase{\xCurso\xEspecializacao}\\
+ \end{minipage}
+ \Enter[3]
+ \Centralizar\MakeUppercase{\xAutor}
+ \Enter[5]
+ \Centralizar
+ \begin{minipage}{.7\linewidth}
+ \centering\MakeUppercase{\xTitulo}
+ \end{minipage}
+ \vfill
+ \Centralizar\MakeUppercase{\xCidade} % A próxima linha em branco é necessária.
+
+ \Centralizar\MakeUppercase{\xAnoDeEntrega}
+}
+\def\ImprimirFolhaDeRosto{
+ \Centralizar\MakeUppercase{\xAutor}
+ \Enter[9]
+ \Centralizar
+ \begin{minipage}{.7\linewidth}
+ \centering\MakeUppercase{\xTitulo}
+ \end{minipage}
+ \Enter[2]
+ \Direita
+ \begin{minipage}{.5\linewidth}
+ \singlesp\nohyph
+ \xDescricaoDoTrabalho
+ \Enter
+ Área de concentração: \xAreaDeConcentracao.\\
+ Orientador(a): \xOrientador.\\
+ Coorientador(a): \xCoorientador.
+ \end{minipage}
+ \vfill
+ \Centralizar\MakeUppercase{\xCidade} % A próxima linha em branco é necessária.
+
+ \Centralizar\MakeUppercase{\xAnoDeEntrega}
+}
+%. \end{code}
+
+% É provável que a biblioteca de sua instituição forneça a ficha catalográfica em formato |.pdf|. Nesse caso, `\ImprimirFichaCatalografica` servirá apenas de preenchimento.
+
+% \begin{code}
+\def\CDU{000}
+\def\CDD{A000}
+\def\NumeroDeFolhas{100}
+\edef\icardHeight{\the\dimexpr\icardHeight+4\baselineskip}
+
+\def\ImprimirFichaCatalografica{
+ \leavevmode\vfill
+ \Centralizar Dados Internacionais de Catalogação na Publicação (CIP)
+ \Enter[.5]
+ \Centralizar
+ \begin{indexcard}
+ \noindent \CDD\hskip\parindent \qquad \xAutor
+
+ \setbox0=\hbox{\CDD\qquad}\leftskip=\wd0 % A linha em branco antes
+ % dessa instrução é necessária.
+ \xTitulo: \xSubtitulo\ / \xAutor\ --- \xCidade: \xUniversidade,
+ \xSiglaDaInstituicao, \xAnoDeEntrega.
+
+ \NumeroDeFolhas\,f.
+
+ \xTipoDeTrabalho\ (\MakeUppercase{\xAreaDeConcentracao}) --- \xUniversidade,
+ \xSiglaDaInstituicao: \xCidade, \xAnoDeEntrega.
+
+ Orientador(a): \xOrientador.
+
+ Coorientador(a): \xCoorientador.
+
+ \ImprimirPalavrasChaveFicha{brazil}
+ I. \xTitulo: \xSubtitulo.
+
+ \Direita CDU \CDU
+ \end{indexcard}
+}
+\def\ImprimirPalavrasChaveFicha#1{\def\tmp{#1}\@tempcnta=1 \doImprimirPalavrasChaveFicha}
+\def\doImprimirPalavrasChaveFicha{%
+ \ifcsname xPalavraChave\@Alph\@tempcnta/\tmp\endcsname
+ \the\@tempcnta.~\csname xPalavraChave\@Alph\@tempcnta/\tmp\endcsname .\space
+ \advance\@tempcnta by1
+ \expandafter\doImprimirPalavrasChaveFicha
+ \else
+ \ignorespaces
+ \fi
+}
+\def\ImprimirErrata{
+ \nonum\notoc\section{Errata}
+ \begingroup
+ \ifdefined\fullcite \bibfont\fullcite{ferrigno2011}.\else
+ \ClassWarning{abntexto-uece}{"biblatex.sty" ausente.}
+ \fi
+ \par\endgroup % Esse \par é necessário.
+ \Enter
+ \Centralizar
+ \begin{tabular}{cccc}
+ \hline
+ \bfseries Folha & \bfseries Linha & \bfseries Onde se lê & \bfseries Leia-se \\ \hline
+ 16 & 10 & auto-clavado & autoclavado \\ \hline
+ \end{tabular}
+}
+\def\ImprimirFolhaDeAprovacao{
+ \Centralizar\xAutor
+ \Enter[2]
+ \Centralizar
+ \begin{minipage}{.7\linewidth}
+ \centering\xTitulo
+ \end{minipage}
+ \Enter[2]
+ \Direita
+ \begin{minipage}{.5\linewidth}
+ \singlesp
+ \xDescricaoDoTrabalho
+ \Enter
+ Área de concentração: \xAreaDeConcentracao.
+ \end{minipage}
+ \Enter
+ {\parindent=1.5cm Aprovado em 00/00/0000.\par}
+ \Enter
+ \Centralizar BANCA EXAMINADORA
+ \Enter
+ \ImprimirAvaliadores
+}
+\def\ImprimirAvaliadores{\@tempcnta=1 \doImprimirAvaliadores}
+\def\doImprimirAvaliadores{%
+ \ifcsname xAvaliador\@Alph\@tempcnta\endcsname
+ \judgeline{\csuse{xAvaliador\@Alph\@tempcnta}}%
+ \Enter
+ \advance\@tempcnta by1
+ \expandafter\doImprimirAvaliadores
+ \fi
+}
+\def\ImprimirDedicatoria{
+ \leavevmode\vfill
+ \Direita
+ \begin{minipage}{\dimexpr\linewidth-8cm}
+ \xDedicatoria
+ \end{minipage}
+}
+\def\ImprimirAgradecimentos{
+ \nonum\notoc\section{\bfseries Agradecimentos}
+ {\parindent=1.5cm\xAgradecimentos\par}
+}
+\def\ImprimirEpigrafe{
+ \leavevmode\vfil
+ \Direita
+ \begin{minipage}{5cm}
+ \noindent \enquote{\xEpigrafe}\\ (autor,~ano)
+ \end{minipage}
+}
+\def\ImprimirResumo#1#2{
+ \nonum\notoc {\selectlanguage{#1}\section{\abstractname}}
+ \noindent {\selectlanguage{#1}\csname resumo/#1\endcsname\par}
+ \Enter
+ \noindent \textbf{#2:}~%
+ \begingroup \selectlanguage{#1}\nohyph
+ \ImprimirPalavrasChave{#1}%
+ \par\endgroup
+}
+
+\def\ImprimirPalavrasChave#1{%
+ \expandafter\expandafter\expandafter \RecortarEsquerda
+ \expandafter\@gobble
+ \expanded{%
+ \expandafter\expandafter\expandafter \ImprimirPalavrasChaveA
+ \csname pchave/#1\endcsname ,\relax,%
+ }%
+}
+\def\ImprimirPalavrasChaveA#1,{\if&\RecortarEsquerda#1&\expandafter\ImprimirPalavrasChaveA\else
+ \ifx\relax#1.\else
+ ;\space \RecortarAmbos{#1}%
+ \expandafter\expandafter\expandafter \ImprimirPalavrasChaveA
+ \fi\fi
+}
+
+\AtBeginDocument{\@ifpackageloaded{babel}{\relax}{\def\selectlanguage#1{}}}
+
+\def\ImprimirPretextual{
+ \ImprimirCapa \newpage
+ \ImprimirFolhaDeRosto \newpage
+ \ImprimirFichaCatalografica \newpage
+ \ImprimirErrata \newpage
+ \ImprimirFolhaDeAprovacao \newpage
+ \ifdefined\xAgradecimentos \ImprimirAgradecimentos \fi \newpage
+ \ifdefined\xDedicatoria \ImprimirDedicatoria \fi \newpage
+ \ifdefined\xEpigrafe \ImprimirEpigrafe \fi \newpage
+ \ImprimirResumo{brazil}{Palavras-chave} \newpage
+ \ImprimirResumo{english}{Keywords} \newpage
+}
+%. \end{code}
+
+% \codesection{Metadados}
+
+% \begin{code}
+\def\Metadados{%
+ \ifdefined\hypersetup \expandafter\hypersetup \else \expandafter\@gobble \fi
+ {
+ pdftitle = \xTitulo,
+ pdfauthor = \xAutor,
+ pdfcreator = LaTeX with abntexto-uece,
+ pdfkeywords = \ImprimirPalavrasChave{brazil},
+ }%
+}
+\AtBeginDocument{\Metadados}
+%. \end{code}
+
+% \codesection{Ajustes finais}
+
+% Trocando a palavra \enquote{Ilustração} por \enquote{Figura}. Essa redefinição não é necessária se você estiver usando o `abntexto` numa versão igual ou superior a 4.0.4-beta.
+
+% \begin{code}
+\definelegendplace{figure}{Figura}{lof}
+%. \end{code}
+
+% Indentação deixou de ser 1,5~cm e passou a ser 2~cm. O título das figuras/tabelas deve ser em negrito. \LaTeX\ emite um erro quando `\\` é chamado no modo vertical: o removeremos para que os alertas de `\Mandatorio` sejam destacados no terminal.
+
+% \begin{code}
+\parindent=2cm
+\appto\targetlegend{\bfseries}
+\let\@nolnerr=\relax
+
+\endinput
+%. \end{code}
\ No newline at end of file
Property changes on: trunk/Master/texmf-dist/tex/latex/abntexto-uece/abntexto-uece.cls
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check 2025-08-27 20:10:26 UTC (rev 76156)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check 2025-08-27 20:11:10 UTC (rev 76157)
@@ -21,7 +21,7 @@
my @TLP_working = qw(
12many 2up
a0poster a2ping a4wide a5comb
- aaai-named aalok aastex abbr abc abnt abntex2 abntexto
+ aaai-named aalok aastex abbr abc abnt abntex2 abntexto abntexto-uece
aboensis abraces abspos abstract abstyles
academicons accanthis accents accessibility accfonts accsupp achemso
acmart acmconf acro acronym acroterm
Added: trunk/Master/tlpkg/tlpsrc/abntexto-uece.tlpsrc
===================================================================
Modified: trunk/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc 2025-08-27 20:10:26 UTC (rev 76156)
+++ trunk/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc 2025-08-27 20:11:10 UTC (rev 76157)
@@ -7,6 +7,7 @@
depend abnt
depend abntex2
depend abntexto
+depend abntexto-uece
depend acmart
depend acmconf
depend active-conf
More information about the tex-live-commits
mailing list.