diff options
author | Karl Berry <karl@freefriends.org> | 2023-02-01 21:04:40 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-02-01 21:04:40 +0000 |
commit | 165f553315d9f59ef87cf00148148f9e15539f84 (patch) | |
tree | 54377cb7c31f0092ffeea81387644392ca00dd08 /Master/texmf-dist/doc/latex | |
parent | 19544b227d42aa5d47703377e243aadbdae5a0ff (diff) |
abntexto (1feb23)
git-svn-id: svn://tug.org/texlive/trunk@65705 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex')
-rw-r--r-- | Master/texmf-dist/doc/latex/abntexto/README (renamed from Master/texmf-dist/doc/latex/abntexto/README.txt) | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/abntexto/abntexto-manual.pdf | bin | 246005 -> 124830 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/abntexto/abntexto-manual.tex | 353 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/abntexto/abntexto.bib | 30 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/abntexto/abntexto.tex | 449 |
5 files changed, 466 insertions, 370 deletions
diff --git a/Master/texmf-dist/doc/latex/abntexto/README.txt b/Master/texmf-dist/doc/latex/abntexto/README index 850a1cd3f3a..bd658f4e981 100644 --- a/Master/texmf-dist/doc/latex/abntexto/README.txt +++ b/Master/texmf-dist/doc/latex/abntexto/README @@ -1,6 +1,6 @@ Public Domain Software -2022-10-12 -1.2.1-alpha +2023-01-31 +2.0.0-alpha Elayson abntexto.classe at gmail.com diff --git a/Master/texmf-dist/doc/latex/abntexto/abntexto-manual.pdf b/Master/texmf-dist/doc/latex/abntexto/abntexto-manual.pdf Binary files differindex 79ea6ff35f9..c168af62961 100644 --- a/Master/texmf-dist/doc/latex/abntexto/abntexto-manual.pdf +++ b/Master/texmf-dist/doc/latex/abntexto/abntexto-manual.pdf diff --git a/Master/texmf-dist/doc/latex/abntexto/abntexto-manual.tex b/Master/texmf-dist/doc/latex/abntexto/abntexto-manual.tex deleted file mode 100644 index 7d9d2b3153b..00000000000 --- a/Master/texmf-dist/doc/latex/abntexto/abntexto-manual.tex +++ /dev/null @@ -1,353 +0,0 @@ -\documentclass{abntexto} - -\makeatletter - -\usepackage[brazil]{babel} -\usepackage[T1]{fontenc} -\usepackage{newtxtext} -\usepackage{newtxmath} -\usepackage{lipsum} \def\lip{\lipsum[1][1-2]} -\usepackage{graphicx} -\usepackage[cmyk]{xcolor} -\usepackage[style=abnt]{biblatex} \addbibresource{abntexto.bib} -\usepackage[colorlinks]{hyperref} -%\let\href=\relax \newdimen\bibitemsep \def\textcite#1{{\bfseries#1}} - -% MARKUP -% ================================================ - -\def\ttnoligs{\ttfamily\@noligs} - -\def\cs#1{{\ttnoligs \string#1}} -\def\meta#1{{\ttnoligs <#1>}} % ⟨⟩ -\def\cc#1{{\ttnoligs \{\meta{#1}\}}} -\def\kk#1{{\ttnoligs [\meta{#1}]}} - -\def\arg{\cc{arg}} -\def\opt{\kk{opt}} -\def\ccval#1{{\ttnoligs \{#1\}}} -\def\kkval#1{{\ttnoligs [#1]}} -\def\pkg#1{{\ttnoligs #1}} - -% VERBATIM -% ================================================ - -\def\adef#1{\catcode`#1=13 \begingroup \lccode`\~=`#1\lowercase{\endgroup\def~}} -\def\dodef#1{\catcode`#1=12 } -\def\verbcatcodes{\let\do=\dodef \dospecials \catcode`\|=0 } - -{\catcode`\^^M=13 - \gdef\verbpercent#1^^M{{\color{graycomment}\itshape\@percentchar#1^^M}} -} - -\long\def\codeon{\par\begingroup \verbcatcodes - \adef{\^^I}{\ \ \ }% - \adef{\^^M}{\par\leavevmode}% - \adef{ }{\ }% - \adef{\%}{\verbpercent}% - \startverb -} -{\catcode`\ =13 \catcode`\^^M=13 \catcode`\|=0 \catcode`\\=12 - |gdef|startverb^^M#1^^M\codeoff{|verbbox{#1}|par|endgroup |verbreset} -} -\def\verbbox#1{\def\tnba@placewidth{\hsize \advance\hsize-3cm}% - \vskip\placeabovespace - \parindent=0pt - \ifx\tnba@savedplace\empty\else\tnba@makelegend\fi - \nobreak\nointerlineskip\vskip10pt - {\verbfont{#1}}% - \nobreak\nointerlineskip\vskip8pt - \ifx\tnba@savedsrc\empty\else\tnba@makesrc\fi - \vskip\placebelowspace -} -\def\verbreset{% - \let\tnba@savedplace=\empty - \let\tnba@savedlegend=\empty - \let\tnba@savedsrc=\empty - \let\@currentlabel=\empty -} -\def\verbfont{\raggedright\leftskip=6pt\singlesp\small\ttnoligs\leftframed} -\long\def\leftframed#1{\setbox0=\vtop{#1}% - \hbox{{\color{graybar}\kern1.5cm\vrule width1pt}\box0}% -} - -% MISC -% ================================================ - -\sizeselectordef\large{14.4pt}{17pt} -\sizeselectordef\Large{20.74pt}{25pt} -\sizeselectordef\LARGE{25pt}{30pt} - -\definecolor{graybar}{gray}{0.75} -\definecolor{graycomment}{gray}{.2} - -\legendplacedef{code}{Código}{Lista de códigos}{cód.\,#1}{loc} -\def\loclabelwidth{10.6ex} -\def\me{o autor.} - -\tocilowercase -\sectionlowercase - -\clubpenalty=10000 -\widowpenalty=10000 - -\let\cite=\textcite -\def\bibfont{\singlesp} -\bibitemsep=18pt - -\def\corrprinton{\begingroup \def\section##1##2{\heading{##2}}} -\def\corrprintoff{\par\endgroup} - -\makeatother - - - -\begin{document} - -\leavevmode\vskip1.9in - -{\centering \LARGE\sffamily\bfseries - abntexto\\[0.4em] \Large\itshape\mdseries - Classe para {\upshape\LaTeX}\\[2em] \normalfont\large - Elayson\\[1ex] - \href{mailto:abntexto.classe@gmail.com}{abntexto.classe at gmail.com}\\[2.5ex] - \today\par} - -\vskip3in - -{\centering \large\ttfamily 1.2.1-alpha\par} - -\newpage - -\maketoc - -\textual - -\section{Apresentação} - -O \pkg{abntexto} é uma classe do \LaTeX\ criada para facilitar a utilização das normas da Associação Brasileira de Normas Técnicas (ABNT) em trabalhos acadêmicos (monografias, dissertações, teses). - -Este \emph{não} é um manual sobre \LaTeX\ (ou \TeX, a ferramenta que o constitui) nem tampouco uma descrição detalhada sobre as normas ABNT. Para aprender sobre \LaTeX\ leia \cite{viaexemplos} ou \cite{latex2eunnoficial}, disponível também em francês. Além disso, também se pode ler \cite{texbytopic} para aprender sobre o sistema \TeX\footnote{Note que os livros referenciados não foram realmente citados e isso não é aceito na Norma, no entanto este não é um trabalho acadêmico real, mas um manual.}. - -Já existe uma classe para aplicação das normas ABNT cujo nome é \pkg{abntex2}. Mas, diferente desta, o \pkg{abntexto} não depende do \pkg{memoir}, uma classe de código-fonte e manual extensos e que implementa funções as quais, em sua maioria, não são pertinentes a um documento que use as diretrizes da ABNT. - -As normas ABNT as quais o \pkg{abntexto} se propõe a seguir são aquelas em vigor até o momento da criação deste manual. - -\section{Chamando a classe} - -Digite as linhas em \ref{vb:início} e use \pkg{abntexto}. - -\legend{code}{Início} \src\me -\label{vb:início} -\codeon -\documentclass{abntexto} - -\usepackage[brazil]{babel} % para obter os padrões de hifenização corretos -\usepackage[T1]{fontenc} -\usepackage{newtxtext} % fontes New TX, semelhantes a Times -\usepackage{newtxmath} - -\begin{document} - Texto -\end{document} -\codeoff - -\section{Fonte tipográfica} - -O tamanho da fonte é 12\,pt de imediato e pode ser configurado com o comando \cs\setfontsize\cc{size} sendo que 12\,pt é a única opção disponível. Mas, se você deseja outro tamanho de fonte, crie-o usando \cs\fontsizedef\cc{size}\cc{defs}. Além disso, com os seletores de tamanho \cs\normalsize\ e \cs\small\ que configuram 12\,pt e 10\,pt, nessa ordem, é possível mudar o tamanho da fonte no corpo do documento. - -O espaçamento é de um e meio e pode ser alterado para dois com \cs\spacing\ccval{2}, por exemplo. Os atalhos \cs\singlesp, \cs\onehalfsp\ e \cs\doublesp\ estão disponíveis. Note que o espaçamento simples não tem o mesmo valor que o espaçamento um, portanto, \cs\singlesp\ é diferente de \cs\spacing\ccval{1}! Os atalhos \cs\onehalfsp\ e \cs\doublesp\ tem o mesmo significado de \cs\spacing\ccval{1.5} e \cs\spacing\ccval{2}. - -\section{\emph{Layout}} - -A folha é A4 por padrão e as margens esquerda e direita são de 3\,cm, 2\,cm para páginas ímpares e de 2\,cm, 3\,cm para páginas pares, respectivamente. Além disso, as margens superior e inferior têm, nessa ordem, 3\,cm, 2\,cm para todo o documento. Todas essas medidas podem ser alteradas com a macro \cs\paper\ que deve ser usada assim: \cs\paper\ccval{left=0cm, right=0cm, top=0cm, botttom=0cm}. - -Além das chaves anteriores também existe \cs{twoside} que é booleana, ou seja, aceita os valores \cs{true} ou \cs{false} e serve para ativar o modo de impressão em duas folhas aonde as medidas das margens horizontais se invertem nas páginas pares. Ao não informar um valor para \cs{twoside} subentende-se que seja \cs{true}, portanto \cs\paper\ccval{twoside} equivale a \cs\paper\ccval{twoside=true} e esse princípio também se aplica a outras chaves booleanas. - -\section{Sumário} - -Os comandos que mudam a fonte das entradas no ToC (Table of Contents, em inglês) são \cs\tocifont, \cs\tociifont, \dots, \cs\tocvfont\ (ver \ref{vb:contents}). - -\legend{code}{Aparência do sumário} \src\me -\label{vb:contents} -\codeon -\documentclass{abntexto} - -\usepackage{color} - -\tocifont{\color{red}\itshape} -\tociifont{\color{blue}\bfseries} - -\begin{document} - \maketoc - - \section{Título} - \subsection{Título} -\end{document} -\codeoff - -\section{Secionamento} - -A personalização das macros de seção (\cs\section, \cs\subsection\ etc.) é análoga a personalização do sumário e deve ser feita com \cs\sectionfont, \cs\subsectionfont, etc. como exemplificado em \ref{vb:sec}. - -Também há como alterar o espaço vertical acima e abaixo das seções usando \cs\sectionspaces, \cs\subsectionspaces, etc. Por exemplo, \cs\sectionspaces\ccval{2ex}\ccval{1cm} insere um espaço de 2\,ex acima de \cs\section\ e de 1\,cm abaixo. - -\legend{code}{Aparência das seções} \src\me -\label{vb:sec} -\codeon -\documentclass{abntexto} - -\usepackage{color} - -\sectionfont{\color{blue}\scshape} -\subsectionfont{\color{red}\slshape} -\subsubsectionfont{\color{yellow}\sffamily} - -\begin{document} - \maketoc - - \section{Texto} - \subsection{Texto} - \subsubsection{Texto} -\end{document} -\codeoff - -\section{Alíneas} - -Use o ambiente \cs{topics} para criar alíneas. Ele dispõe de dois níveis sendo que o segundo usa um travessão como marcador conforme o exemplo em \ref{vb:topics}. Naturalmente o uso de \cs\label\ é permitido. - -\legend{code}{Alíneas} \src\me -\label{vb:topics} -\codeon -\begin{topics} - \item \label{al:x} 1 - \begin{topics} - \item x - \item y - \item z - \end{topics} - \item \label{al:y} 2 - \item 3 -\end{topics} -\codeoff - -\section{Áreas de legenda} - -Use \cs\place\ para inserir áreas de legenda como mostrado em \ref{vb:place}. Mas existem condições: \cs\place\ deve vir por último e \cs\label\ precisa estar depois de \cs\legend. Além disso, existe a possibilidade de alterar o espaço vertical acima e abaixo de uma área de legenda com \cs\placespaces\cc{aboveskip}\cc{belowskip}. - -\legend{code}{Áreas de legenda} \src\me -\label{vb:place} -\codeon -\usepackage{graphicx} - -\begin{document} - \legend{figure}{Um título} - \src{\texttt{www.site.com.br}. Acesso em 01 jan. 2020.} - \label{fig:teste} - \place{\includegraphics[width=0.4\linewidth]{example-image}} - - Ver \ref{fig:teste}. -\end{document} -\codeoff - -O leitor pode querer definir uma nova área de legenda usando, por exemplo, a instrução: \cs\legendplacedef\ccval{diagram}\ccval{Diagrama}\ccval{Lista de diagramas}\ccval{diag.\cs\,\cs#1}\ccval{lod} que vai criar o comando \cs\makelod\ para escrever no documento as entradas do arquivo auxiliar .lod. - -%* - -\section{Formatação de {\ttfamily\protect\textbackslash cite} e referências} - -Até o momento o \pkg{abntexto} não possui macros para formatação de \cs\cite\ e referências. Utilize \cs{\usepackage[style=abnt]\{biblatex\}}. - -\section{Citações} - -Para inserir aspas em citações diretas use \cs\qt\ccval{texto}. Mas, se tratando de citações diretas com mais de três linhas, alterne para \cs\quote\ccval{texto \cs\cite\cc{key}}. - -\newpage - -\corrprinton -%\printbibliography -\corrprintoff - -\newpage -\appendix - -\section{\emph{Feedback}} -Sugestões, relatos de \emph{bugs} e doações são bem-vindas. - -\section{Código-fonte} - -\makeatletter -\newcount\seccount \def\thesec{\the\seccount} -\def\extlabelwidth{4ex} -\def\extlabelbox#1{\hbox to\extlabelwidth{#1~---~\hfil}} -\def\l@subsection#1#2{\smartaboveskip{\penalty351}{\vskip1em plus1pt}% - \begingroup - \usetocifont \nobreak - \extlineshape \relax - \hskip-\leftskip \maybeuctoc{#1}\nobreak\hfil\nobreak - \hbox to1.55em{\hss #2\kern-1pt\kern1pt}\par - \endgroup -} -\def\subsection#1{\par \smartaboveskip{\penalty351}{\vskip\subsectionabove}\noindent - \advancecount\seccount - \setbox0=\hbox{\usesubsectionfont \thesec\quad}% - {\usesubsectionfont \hangindent=\wd0 \box0 #1\tnba@nbpar}% - \nobreak \smartbelowskip{\vskip\subsectionbelow}% -} -\makeatother - -% SOURCE MACROS -% ================================================ - -\makeatletter - -\definecolor{bg}{cmyk}{0,0.06,0,0} -\definecolor{comment}{cmyk}{0.9,0,0,0.1} - -\def\sec#1\par{\subsection{#1}} - -\newdimen\hhkern \hhkern=12pt -\newdimen\vvkern \vvkern=12pt - -\def\hh{\kern\hhkern} -\def\vv{\kern\vvkern} - -{\catcode`\^^M=13 - \gdef\verbpercent#1^^M{{\bfseries\color{comment}\@percentchar#1^^M}} -} - -\def\srccatcodes{\catcode`\!=14 \catcode`\%=9 \catcode`\|=0 } -\def\codecatcodes{\let\do=\dodef \dospecials} - -\long\def\bcode{\par\begingroup \codecatcodes - \adef{\^^I}{\ \ \ }% - \adef{\^^M}{\par\leavevmode}% - \adef{ }{\ }% - \adef{\%}{\verbpercent}% -% \def\par##1{\endgraf\ifx##1\par\leavevmode\fi##1}\obeylines - \startcode -} -{\catcode`\%=13 \catcode`\ =13 \catcode`\^^M=13 \catcode`\|=0 \catcode`\\=12 - |long|gdef|startcode #1% |ecode{|codefont{#1}|par|endgroup} -} - -\def\codefont{\raggedright\small\ttnoligs\bgbox} - -\long\def\bgbox#1{\setbox0=\vbox{\advance\hsize-24pt \vv#1\vv}% - \ifdim\ht0>\dimexpr \pagegoal - \pagetotal \relax - \setbox2=\vsplit0 to\dimexpr \pagegoal - \pagetotal -24pt \relax - \fi - \vskip8pt minus2pt - \drawbg2\par \drawbg0% - \vskip8pt minus2pt -} -\def\drawbg#1{\leavevmode - \rlap{{\color{bg} \vrule width\dimexpr\wd#1+24pt\relax height\ht#1 depth\dp#1}}% - \hbox{\hh\box#1\hh}% -} - -\def\inputsrc#1{\begingroup \parskip=0pt \srccatcodes \input #1\endgroup} - -\inputsrc{abntexto.cls} - -\end{document} diff --git a/Master/texmf-dist/doc/latex/abntexto/abntexto.bib b/Master/texmf-dist/doc/latex/abntexto/abntexto.bib index 6e58d2d95ff..7110e1db1d2 100644 --- a/Master/texmf-dist/doc/latex/abntexto/abntexto.bib +++ b/Master/texmf-dist/doc/latex/abntexto/abntexto.bib @@ -1,24 +1,24 @@ @book{texbytopic, - author = {Viktor Eijkhout}, - title = {\TeX\ by topic: a \TeX nician’s reference}, - location = {England}, + author = {Viktor Eijkhout}, + title = {\TeX\ by topic: a \TeX nician’s reference}, + location = {England}, publisher = {Addison-Wesley}, - date = {1992}, - url = {https://www.ctan.org/pkg/texbytopic}, - urldate = {2022-09-28} + date = {1992}, + url = {https://www.ctan.org/pkg/texbytopic}, + urldate = {2022-09-28} } @book{viaexemplos, - author = {Sadao Massago}, - title = {\LaTeXe\ Via Exemplos}, + author = {Sadao Massago}, + title = {\LaTeXe\ Via Exemplos}, location = {São Paulo}, - date = {2022-05-17}, - url = {https://www.ctan.org/pkg/latex-via-exemplos}, - urldate = {2022-09-28} + date = {2022-05-17}, + url = {https://www.ctan.org/pkg/latex-via-exemplos}, + urldate = {2022-09-28} } @book{latex2eunnoficial, - author = {Torsten Martinsen and Stephen Gilmore and Karl Berry}, - title = {\LaTeXe: An unofficial reference manual}, - date = {2022-05}, - url = {https://www.ctan.org/pkg/latex2e-help-texinfo}, + author = {Torsten Martinsen and Stephen Gilmore and Karl Berry}, + title = {\LaTeXe: An unofficial reference manual}, + date = {2022-05}, + url = {https://www.ctan.org/pkg/latex2e-help-texinfo}, urldate = {2022-09-28} } diff --git a/Master/texmf-dist/doc/latex/abntexto/abntexto.tex b/Master/texmf-dist/doc/latex/abntexto/abntexto.tex new file mode 100644 index 00000000000..2183e6ebf7a --- /dev/null +++ b/Master/texmf-dist/doc/latex/abntexto/abntexto.tex @@ -0,0 +1,449 @@ +% !TeX TS-program = lualatex + +\documentclass{abntexto} + +\makeatletter + +\def\erase{}\def\enderase{} +\long\def\rewrite#1\endrewrite{} +\def\lightmode{\long\def\erase##1\enderase{} \def\rewrite{}\def\endrewrite{}} +%\lightmode + +\erase +\usepackage[brazil]{babel} +\usepackage{fontspec} +\enderase +\usepackage{lipsum} \def\lip{\lipsum[1][1-2]} \def\lipp{\lipsum[1]} +\usepackage{graphicx} +\usepackage[cmyk]{xcolor} +\erase +\usepackage[style=abnt]{biblatex} \addbibresource{abntexto.bib} +\usepackage[colorlinks,linkcolor=blue]{hyperref} +\enderase + +\rewrite +\let\href=\relax \def\textcite#1{{\bfseries#1}} \def\today{} +\endrewrite + +% MARKUP +% ================================================ + +\def\ttnoligs{\ttfamily\@noligs} + +\def\cs#1{{\ttnoligs \string#1}} +\def\meta#1{{\ttnoligs <\/{\itshape#1\/}>}} % ⟨⟩ +\def\cc#1{{\ttnoligs \{\meta{#1}\}}} +\def\kk#1{{\ttnoligs [\meta{#1}]}} + +\def\arg{\cc{arg}} +\def\opt{\kk{opt}} +\def\ccval#1{{\ttnoligs \{#1\}}} +\def\kkval#1{{\ttnoligs [#1]}} +\def\pkg#1{{\ttnoligs #1}} + +% VERBATIM +% ================================================ + +\def\adef#1{\catcode`#1=13 \begingroup \lccode`\~=`#1\lowercase{\endgroup\def~}} +\def\dodef#1{\catcode`#1=12 } +\def\codecatcodes{\let\do=\dodef \dospecials \catcode`\|=0 } + +{\catcode`\^^M=13 + \gdef\codepercent#1^^M{{\color{graycomment}\itshape\@percentchar#1^^M}} +} + +\long\def\codeon{\begingroup \codecatcodes + \adef{\^^I}{\space\space\space}% + \adef{\^^M}{\par\leavevmode}% + \adef{\ }{\space}% + \adef{\%}{\codepercent}% + \startcode +} + +{\catcode`\ =13 \catcode`\^^M=13 \catcode`\|=0 \catcode`\\=12 + |gdef|startcode^^M#1^^M\codeoff{|codebox{#1}|par|endgroup |codereset} +} +\def\codebox#1{\def\tnba@placewidth{\hsize \advance\hsize-3cm}% + \vskip\aboveplace + \parindent=0pt + \ifx\tnba@savedplace\empty\else\tnba@makelegend\fi + \nobreak\nointerlineskip\vskip10pt + {\codefont{#1}}% + \nobreak\nointerlineskip\vskip8pt + \ifx\tnba@savedsrc\empty\else\tnba@makesrc\fi + \vskip\belowplace +} +\def\codereset{% + \let\tnba@savedplace=\empty + \let\tnba@savedlegend=\empty + \let\tnba@savedsrc=\empty + \let\@currentlabel=\empty +} +\def\codefont{\raggedright\leftskip=6pt\singlesp\small\ttnoligs\leftframed} +\long\def\leftframed#1{\hbox{{\color{graybar}\kern1.5cm\vrule width1pt}\vtop{#1}}} + +% MISC +% ================================================ + +\definecolor{mono}{cmyk}{0,0,0,.73} +\definecolor{graybar}{gray}{.75} +\definecolor{graycomment}{gray}{.2} + +\erase +\setmainfont{TeX Gyre Termes} +\setmonofont{Inconsolatazi4-Regular}[Color=mono] +%\newfontfamily\bgfont{Inconsolatazi4-Regular}[Color=bgfontcolor] +\enderase + +\def\tocifont{\bfseries} +\def\sectionfont{\bfseries} + +\sizedef \large {14.4pt}{17pt}{} +\sizedef \Large {20.74pt}{25pt}{} +\sizedef \LARGE {25pt}{30pt}{} + +\definelegendplace{code}{Código}{Lista de códigos}{cód.\,#1}{loc} +\def\me{o autor.} + +\clubpenalty=10000 +\widowpenalty=10000 + +\let\cite=\textcite +\def\bibfont{\singlesp} +\erase +\bibitemsep=18pt +\enderase + +\makeatother + + + +\begin{document} + +\leavevmode\vskip1.9in + +{\centering \LARGE\sffamily\bfseries + abntexto\\[0.4em] \Large\itshape\mdseries + Classe para {\upshape\LaTeX}\\[2em] \normalfont\large + Elayson\\[1ex] + \href{mailto:abntexto.classe@gmail.com}{abntexto.classe at gmail.com}\\[2.5ex] + 2023-01-31\par} + +\vskip3in + +{\centering\large\ttfamily 2.0.0-alpha\par} + +\newpage + +\maketoc + +\textual + +\section{Apresentação} + +O \pkg{abntexto} é uma classe do \LaTeX\ criada para facilitar a utilização das normas da Associação Brasileira de Normas Técnicas (ABNT) em trabalhos acadêmicos (monografias, dissertações, teses). + +Este \emph{não} é um manual sobre \LaTeX\ (ou \TeX, a ferramenta que o constitui) nem tampouco uma descrição detalhada sobre as normas ABNT. Para aprender sobre \LaTeX\ leia \cite{viaexemplos} ou \cite{latex2eunnoficial}, disponível também em francês. Além disso, também se pode ler \cite{texbytopic} para aprender sobre o sistema \TeX\footnote{Note que os livros referenciados não foram realmente citados e isso não é aceito na Norma, no entanto este não é um trabalho acadêmico real, mas um manual.}. + +Já existe uma classe para aplicação das normas ABNT cujo nome é \pkg{abntex2}. Mas, diferente desta, o \pkg{abntexto} não depende do \pkg{memoir}, uma classe de código-fonte e manual extensos e que implementa funções as quais, em sua maioria, não são pertinentes a um documento que use as diretrizes da ABNT. + +As normas ABNT as quais o \pkg{abntexto} se propõe a seguir são aquelas em vigor até o momento da criação deste manual. + +O \pkg{abntexto} ainda está em estágio \emph{alpha} e seu uso em documentos sérios não é recomendado, uma vez que \emph{bugs} são esperados. + +\section{Chamando a classe} + +Digite as linhas em \ref{cd:início} e use \pkg{abntexto}. + +\legend{code}{Início} \src\me +\label{cd:início} +\codeon +% !TeX TS-program = lualatex +\documentclass{abntexto} + +\usepackage[brazil]{babel} +\usepackage{fontspec} + +\setmainfont{TeX Gyre Termes} + +\begin{document} + Texto +\end{document} +\codeoff + +\section{Fonte tipográfica} + +O tamanho da fonte é 12\,pt de imediato e pode ser configurado com o comando\\ \cs\setfontsize\cc{id} sendo que 12\,pt é a única opção disponível. Além disso, com os seletores de tamanho \cs\normalsize\ e \cs\small\ que configuram 12\,pt e 10\,pt, nessa ordem, é possível mudar o tamanho da fonte no corpo do documento. + +Mas, se você deseja outro tamanho de fonte, crie-o usando \cs\definefontsize\cc{id}\hfil\break \cc{definições} e \cs\sizedef\cs\ \unskip\meta{seletor}\cc{tamanho}\cc{entrelinha natural}. Em\hfil\break \cc{definições}, o seletor \cs\normalsize\ deve estar presente por meio de \cs\sizedef, caso contrário, a classe mostrará um erro. + +O espaçamento é de um e meio e pode ser alterado para dois com \cs\spacing\ccval{2}, por exemplo. Os atalhos \cs\singlesp, \cs\onehalfsp\ e \cs\doublesp\ estão disponíveis. Note que o espaçamento simples não tem o mesmo valor que o espaçamento um, portanto, \cs\singlesp\ é diferente de \cs\spacing\ccval{1}! Os atalhos \cs\onehalfsp\ e \cs\doublesp\ tem o mesmo significado de \cs\spacing\ccval{1.5} e \cs\spacing\ccval{2}. + +\section{\emph{Layout}} + +A folha é A4 por padrão e as margens esquerda e direita são de 3\,cm, 2\,cm para páginas ímpares e de 2\,cm, 3\,cm para páginas pares, respectivamente. Além disso, as margens superior e inferior têm, nessa ordem, 3\,cm, 2\,cm para todo o documento. Todas essas medidas podem ser alteradas com a macro \cs\setlayout\ que deve ser usada assim: \cs\setlayout\ccval{left=\meta{medida}, right=\meta{medida}, top=\meta{medida}, botttom=\meta{medida}}. + +Além das chaves anteriores também existe \cs{twoside} que é booleana, ou seja, aceita os valores \cs{true} ou \cs{false} e serve para ativar o modo de impressão em duas folhas onde as medidas das margens horizontais se invertem nas páginas pares. Ao não informar um valor para \cs{twoside} subentende-se que seja \cs{true}, portanto \cs\setlayout\ccval{twoside} equivale a \cs\setlayout\ccval{twoside=true} e esse princípio também se aplica a outras chaves booleanas. + +Existem dois comandos que configuram o \emph{layout} da página: \cs\pretextual\ que, além de desabilitar o modo \cs{twoside}, remove a numeração de página e é executado automaticamente logo após \cs{\begin\{document\}} e o comando \cs\textual\ que deve ser executado manualmente logo antes da primeira chamada de \cs\section\ para que a numeração de página seja posta no topo da página e as margens passem a ser espelhadas. + +\section{Sumário} + +Os comandos que mudam a fonte das entradas no ToC (Table of Contents, em inglês) são \cs\tocifont, \cs\tociifont, \dots, \cs\tocvfont\ (ver \ref{cd:contents}). + +\legend{code}{Aparência do sumário} \src\me +\label{cd:contents} +\codeon +\documentclass{abntexto} + +\usepackage{color} + +\def \tocifont {\color{red}\itshape\MakeUppercase} +\def \tociifont {\color{blue}\bfseries} + +\begin{document} + \maketoc + + \section{Título} + \subsection{Título} +\end{document} +\codeoff + +\section{Secionamento} + +A personalização das macros de seção (\cs\section, \cs\subsection\ etc.) é análoga a personalização do sumário e deve ser feita com \cs\sectionfont, \cs\subsectionfont, etc. como exemplificado em \ref{cd:sec}. + +Também há como alterar o espaço vertical acima e abaixo das seções usando \cs\abovesection, \cs\belowsection\ e derivados. Por exemplo, \cs\def\cs\abovesubsection\ccval{2cm} insere um espaço de 2\,cm acima de \cs\subsection. + +\legend{code}{Aparência das seções} \src\me +\label{cd:sec} +\codeon +\documentclass{abntexto} + +\usepackage{color} + +\def \sectionfont {\color{blue}\scshape} +\def \subsectionfont {\color{red}\itshape} +\def \subsubsectionfont {\color{yellow}\sffamily} + +\begin{document} + \maketoc + + \section{Texto} + \subsection{Texto} + \subsubsection{Texto} +\end{document} +\codeoff + +\section{Alíneas} + +Use o ambiente \cs{topics} para criar alíneas. Ele dispõe de dois níveis sendo que o segundo usa um travessão como marcador conforme o exemplo em \ref{cd:topics}. Naturalmente, é permitido usar \cs\label\ após um item. + +\legend{code}{Alíneas} \src\me +\label{cd:topics} +\codeon +\begin{topics} + \item \label{al:x} 1 + \begin{topics} + \item x + \item y + \item z + \end{topics} + \item \label{al:y} 2 + \item 3 +\end{topics} +\codeoff + +\section{Áreas de legenda} + +Use \cs\place\ para inserir áreas de legenda como mostrado em \ref{cd:place}. Mas existem condições: \cs\place\ deve vir por último e \cs\label\ precisa estar depois de \cs\legend. Além disso, existe a possibilidade de alterar o espaço vertical acima e abaixo de uma área de legenda com \cs\def\cs\aboveplace\cc{valor}\ e \cs\def\cs\belowplace\cc{valor}. + +\legend{code}{Áreas de legenda} \src\me +\label{cd:place} +\codeon +\usepackage{graphicx} + +\begin{document} + \legend{figure}{Um título} + \src{\texttt{www.site.com.br}. Acesso em 01 jan. 2020.} + \label{fig:teste} + \place{\includegraphics[width=0.4\linewidth]{example-image}} + + Ver \ref{fig:teste}. +\end{document} +\codeoff + +O leitor pode querer definir uma nova área de legenda usando, por exemplo, a instrução: \cs\definelegendplace\ccval{diagram}\ccval{Diagrama}\ccval{Lista de diagramas}\ccval{diag.\cs\,\cs#1}\ccval{lod} que vai criar o comando \cs\makelod\ para escrever no documento as entradas do arquivo auxiliar .lod. + +\section{Formatação de {\ttfamily\protect\textbackslash cite} e referências} + +Até o momento o \pkg{abntexto} não possui macros para formatação de \cs\cite\ e referências. Utilize \cs{\usepackage[style=abnt]\{biblatex\}}. + +\section{Citações} + +Para inserir aspas em citações diretas use \cs\enquote\ccval{texto}\cs\cite\cc{key}. Mas, se tratando de citações diretas com mais de três linhas, alterne para \cs\Enquote\ccval{texto \cs\cite\cc{key}}. + +\section{Apêndice e anexo} + +Com os comandos \cs\appendix\ e \cs\annex\ as próximas seções serão formatadas com os indicativos desejados: “Apêndice 1 --- \dots” ou “Anexo 1 --- \dots” (ver \ref{cd:appendix}). + +\legend{code}{Anexos e apêndices} \src\me +\label{cd:appendix} +\codeon +\begin{document} + \appendix + \section{Lorem} + \section{Lipsum} + + \annex + \section{Lorem} + \section{Lipsum} +\end{document} +\codeoff + +Pode-se alterar a largura dos rótulos das entradas de apêndice/anexo no sumário redefinindo \cs\appendixlabelwidth \,/\,\cs\annexlabelwidth. + +%\end{document} + +\newpage + +\erase +\corrprinton +\printbibliography +\corrprintoff +\enderase + +\newpage + +\let\origsection=\section +\appendix + +\section{Glossário} + +%\countsection=0 +%\def\sec#1{{\def\addcontentsline##1##2##3{}\origsection{#1}}} +%\sec{Glossário} + +Você pode criar glossários com o pacote \pkg{glossaries}. + +\codeon +\usepackage{lipsum} +\usepackage{glossaries} + +\makenoidxglossaries + +\newglossaryentry{metalism}{name=metalismo,description={Tipo de sistema monetário cujo valor da moeda, geralmente de uma nação ou de um país, é determinado pela quantidade constante de certo metal (ouro ou prata), desta forma se estabelece um valor fixo de troca entre esses metais e o próprio dinheiro}} + +\newglossaryentry{lip}{name=lipsum,description={\lipsum[1]}} + +\begin{document} + O \gls{metalism} e o \gls{lip}. + + \corrprinton + \printnoidxglossary + \corrprintoff +\end{document} +\codeoff + +\section{Lista de siglas} + +O pacote \pkg{glossaries} também serve para criar uma lista de siglas. + +\codeon +\usepackage{lipsum} +\usepackage[acronym]{glossaries} + +\makenoidxglossaries + +\newacronym{ibge}{IBGE}{Instituto Brasileiro de Geografia e Estatística} +\newacronym{html}{HTML}{Hypertext Markup Language} + +\begin{document} + 1ª chamada: \gls{ibge}, \gls{html}. + + 2ª chamada: \gls{ibge}, \gls{html}. + + \corrprinton + \def\acronymname{Lista de siglas} + \printnoidxglossary[type=acronym] + \corrprintoff +\end{document} +\codeoff + +\section{\emph{Feedback}} +Sugestões, relatos de \emph{bugs} e doações são bem-vindas. + +\section{Código-fonte} + +% MACROS PARA O CÓDIGO-FONTE +% ================================================ + +\makeatletter + +\definecolor{bg}{cmyk}{0,0.06,0,0} +\definecolor{comment}{cmyk}{0.9,0,0,0.1} +\definecolor{letter}{cmyk}{0,0,0,.8} + +\parskip=0pt plus.2ex minus.1ex + +\countsection=0 +\def\addcontentsline#1#2#3{} +\def\sectionfont{\itshape} +\def\sec#1\par{\origsection{#1}} + +{\catcode`\^^M=13 + \gdef\codepercent#1^^M{{\bfseries\color{comment}\@percentchar#1^^M}} +} + +\def\codecatcodes{\let\do=\dodef \dospecials} + +\long\def\bcode{\par\begingroup \codecatcodes + \adef{\^^I}{\space\space\space}% + \adef{\^^M}{\par\leavevmode}% + \adef{\ }{\space}% + \adef{\%}{\codepercent}% + \startcode +} +{\catcode`\%=13 \catcode`\ =13 \catcode`\^^M=13 \catcode`\|=0 \catcode`\\=12 + |long|gdef|startcode #1^^M% |ecode{|codefont{#1}|par|endgroup} +} + +\def\codefont{\raggedright\fontsize{9pt}{10pt}\selectfont\ttnoligs\addfontfeature{Color=letter}\bgbox} + +\newdimen\tmpdim +\newdimen\coloronwd \coloronwd=\hsize +\newdimen\hh \hh=3pt \def\hhkern{\kern\hh} +\newdimen\vv \vv=4pt \def\vvkern{\kern\vv} + +\splitmaxdepth=4pt + +\def\coloron#1{\leavevmode \setbox0=\vbox{\vvkern \hsize=\coloronwd \advance\hsize-2\hh + \hbox{\hhkern\vbox{#1}\hhkern}\vvkern}% + \coloronA \box0 +} +\def\coloronA{\rlap{\color{bg}\vrule width\wd0 height\ht0 depth\dp0}} + +\def\splitcoloron{\tmpdim=\pagegoal \advance\tmpdim by-2\vv + \setbox4=\vsplit2 to\tmpdim + \coloron{\unvbox4}\par + \coloron{\unvbox2}% +} +\long\def\bgbox#1{\par \vskip\medskipamount + \setbox0=\vbox{\vvkern \hsize=\coloronwd \advance\hsize-2\hh + \hbox{\hhkern\vbox{#1}\hhkern}\vvkern}% + \ifdim \ht0>\pagegoal + \setbox2=\vbox{\advance\hsize-2\hh #1}% + \splitcoloron + \else + \coloron{#1}% + \fi + \par \vskip\smallskipamount +} + +\def\srccatcodes{\catcode`\!=14 \catcode`\%=9 \catcode`\|=0 } + +\begingroup \raggedbottom \parskip=0pt \srccatcodes +\input abntexto.cls% +\par\endgroup + +\end{document} |