<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">% Para este documento, usar XeLaTeX ou LuaLaTeX
%
\makeatletter
\@ifclassloaded{book}{}{
  %\documentclass[12pt,a4paper,twoside,openright]{book}
  \documentclass[12pt,a4paper,oneside]{book}
  %  \newif\iftwosidedocument
  %  \twosidedocumenttrue
}
\makeatother

\sloppy % prefer underfull than overfull

\usepackage{iftex} % detectar motor TeX usado

% testing TeX engine
%\ifPDFTeX
%  \PackageError{\jobname}{Precisa de XeLaTeX ou LuaLaTeX}{Use XeLaTeX ou LuaLaTeX}
%\fi

\ifXeTeX
\else\ifLuaTeX
\else
  \PackageError{\jobname}{Precisa de XeLaTeX ou LuaLaTeX}{Use XeLaTeX ou LuaLaTeX}
\fi\fi

\usepackage[english,brazil]{babel} % brazil como padrÃ£o

%% Font selection
\usepackage{fontspec} % iffont carrega ele
%\defaultfontfeatures{Ligatures=TeX}

\usepackage{fontsetup} % New Computer Modern Book weight

%\usepackage[olddefault]{fontsetup} % New Computer Modern regular weight

% iffont not works on LuaLaTeX. Need patch it.
% On XeLaTeX need patch too for external font
\usepackage{iffont} % On new xelatex/lualatex, it works (no patch needed)

%\makeatletter
%  \renewcommand{\@iffont@firstfont}{MS Mincho}
%\makeatother
  
%\ifXeTeX
%  \ifx \IfFontExistsTF\undefined
%    \let\IfFontExistsTF\iffontexists
%  \fi
%\else\ifLuaTeX
%  \ifx \IfFontExistsTF\undefined
%    \PackageError{\jobname}{fontspec is old}{Install updated fontspec package}
%  \fi
%\fi\fi

%\ifLuaTeX 

%%% patch on iffont
%%  \ifx \IfFontExistsTF\undefined
%%    %\PackageError{\jobname}{fontspec antigo}{Atualize para versÃ£o mais nova ou use XeLaTeX}
%%    \PackageError{\jobname}{'fontspec' antigo}{Atualize para versÃ£o mais nova}
%%  \fi
%%  % \usepackage{etoolbox} % iffont ja carregou
%%  \let\iffontexists\IfFontExistsTF
%%  \makeatletter
%%    \renewcommand{\@iffont@checkfont}[1]{
%%      \IfFontExistsTF{#1}{
%%        \nottoggle{@iffont@fontfound}{%
%%          \renewcommand{\@iffont@firstfont}{#1}
%%          \toggletrue{@iffont@fontfound}
%%        }{}
%%      }{\stepcounter{@iffont@fontsnotfound} }
%%    }
%%  \makeatother
%\fi  
  
%\ifXeTeX % need file name for font outside tex tree
%  \settofirstfound{\jafont}{NotoSerifCJK-Regular.ttc, msmincho.ttf, takaomincho.ttf, ipaexm.ttf, ipam.ttf}
%  \settofirstfound{\jagothic}{NotoSansCJK-Bold.ttc, msgothic.ttf, takaogothic.ttf, ipaexg.ttf, ipag.ttf}
%\else % LuaLa\teX (will use font name for all)  

%  \settofirstfound{\jafont}{Noto Serif CJK JP, MS Mincho, TakaoMincho, IPAexMincho, IPAMincho, Hiragino Mincho Pro}
%  \settofirstfound{\jagothic}{Noto Sans CJK JP, MS Gothic, TakaoGothic, IPAexGothic, IPAGothic, Hiragino Maru Gothic Pro}
%\fi

% DEBUG XeLaTeX
%\renewcommand\jafont{NotoSerifCJK-Regular.ttc}
%\renewcommand\jagothic{NotoSansCJK-Bold.ttc}

%  % versao 2016 nao tem \IfFontExistsTF no fontspec
%  \ifx \IfFontExistsTF\undefined
%    \PackageError{\jobname}{fontspec antigo}{Atualize para versÃ£o mais nova}
%  \fi
%
%  \IfFontExistsTF{Noto Serif CJK JP}{\newcommand{\jafont}{Noto Serif CJK JP}}%
%  {\IfFontExistsTF{MS Mincho}{\newcommand{\jafont}{MS Mincho}}%
%  {\IfFontExistsTF{TakaoMincho}{\newcommand{\jafont}{TakaoMincho}}%
%  {\IfFontExistsTF{IPAexMincho}{\newcommand{\jafont}{IPAexMincho}}%
%  {\IfFontExistsTF{IPAMincho}{\newcommand{\jafont}{IPAMincho}}%
%  {\IfFontExistsTF{Hiragino Mincho Pro}{\newcommand{\jafont}{Hiragino Mincho Pro}}%
%  {\newcommand{\jafont}{MS Mincho}}}}}}}
%  
%  \IfFontExistsTF{Noto Sans CJK JP}{\newcommand{\jafont}{Noto Sans CJK JP}}%
%  {\IfFontExistsTF{MS Gothic}{\newcommand{\jafont}{MS Gothic}}%
%  {\IfFontExistsTF{TakaoGothic}{\newcommand{\jafont}{TakaoGothic}}%
%  {\IfFontExistsTF{IPAexGothic}{\newcommand{\jafont}{IPAexGothic}}%
%  {\IfFontExistsTF{IPAGothic}{\newcommand{\jafont}{IPAGothic}}%
%  {\IfFontExistsTF{Hiragino Maru Gothic Pro}{\newcommand{\jafont}{Hiragino Maru Gothic Pro}}%
%  {\newcommand{\jafont}{MS Gothic}}}}}}}  

% versao antiga (2016) do fontspec ainda nao tem \IfFontExistsTF
% precisa atualizar o fontspec

%\IfFontExistsTF{\jafont}{}{\PackageError{\jobname}{Fonte japonÃªs Mincho (\jafont) nÃ£o encontrada.}{Instale um dos seguintes: Noto Serif CJK JP, MS Mincho, TakaoMincho, IPAexMincho, IPAMincho, Hiragino Mincho Pro}}
%\IfFontExistsTF{\jagothic}{}{\PackageError{\jobname}{Fonte japonÃªs Gothic nÃ£o encontrada.}{Instale um dos seguintes: Noto Sans CJK JP, MS Gothic, TakaoGothic, IPAexGothic, IPAGothic, Hiragino Maru Gothic Pro}}

\def\jafontlist{Noto Serif CJK JP, MS Mincho, TakaoMincho, IPAexMincho, IPAMincho, Hiragino Mincho Pro,[lmroman12-regular]} % Ãºltimo da list anÃ£o Ã© japonÃªs
\def\jagothicfontlist{Noto Sans CJK JP, MS Gothic, TakaoGothic, IPAexGothic, IPAGothic, Hiragino Maru Gothic Pro}

\settofirstfound{\jafont}{\jafontlist}
\settofirstfound{\jagothic}{\jagothicfontlist}
  
%\IfFontExistsTF{\jafont}{}{\PackageError{\jobname}{Fonte japonÃªs Mincho (\jafont) nÃ£o encontrada.}{Instale um dos seguintes: \jafontlist}}
%\IfFontExistsTF{\jagothic}{}{\PackageError{\jobname}{Fonte japonÃªs Gothic (\jagothic) nÃ£o encontrada.}{Instale um dos seguintes: \jagothicfontlist}}

% usando comando \ifdefstring e % \ifdefstrequal do etoolbox que iffont jÃ¡ carregou  
% \ifdefstring compara expansÃ£o de comando com o string
\ifdefstring\jafont{[lmroman12-regular]}{\PackageError{\jobname}{Fonte japonÃªs Mincho nÃ£o encontrada.}{Instale um dos seguintes: \jafontlist}}{}
% \ifdefstrequal compara expansÃ£o de dois comandos como string
\ifdefstrequal\jagothic\jafont{\PackageWarning{\jobname}{Fonte japonÃªs Gothic nÃ£o encontrada.}{Instale um dos seguintes: \jagothicfontlist}}{}

\newfontfamily{\jafamily}[BoldFont=\jagothic]{\jafont}
\newcommand{\textja}[1]{{\jafamily #1}}

% amsmath deve ser carregado antes do unicode-math,
% se precisar de alguns comandos de amsmath que nao esta
% em unicode-math como o \DeclareMathOperator

% \usepackage{amssymb} % para \circlearrowleft que nao tem no unicode-math
\usepackage{amsmath}
% \usepackage{amsbsy} % bold symbol: amsmath carrega

% \boldsymbol e ambiente boldmath nÃ£o funciona no unicode-math
% Mapeando o symbf como \boldsymbol
\makeatletter
\AtBeginDocument{%
  \@ifpackageloaded{unicode-math}{%
      \let\boldsymbol\symbf
  }{\let\symbf\boldsymbol}%
}{}
\makeatother
% \usepackage{xunicode} % textcomp equiv. Old and not works on lualatex (March, 2018). Now, fontspec features are sufficient for this
\usepackage{unicode-math} % amssymb,amsmath equiv.
\ifLuaTeX
  \usepackage{lualatex-math}
\fi

% Other packages
\usepackage[table]{xcolor} % colors, with table support
\usepackage{tikz} % graphics

% margins
\usepackage[margin=2cm]{geometry}

\usepackage[hyphens]{url} % will break url across line on hyphens
%\makeatletter
%  \g@addto@macro{\UrlBreaks}{\UrlOrds}
%\makeatother
% \usepackage{xurl}

\usepackage{hyperref} % link
\hypersetup{
  unicode=true,
  breaklinks=true,
  bookmarks=true
}
\usepackage{bookmark} % to add bookmark manually

% \providecommand{\url}[1]{\texttt{#1}}

\usepackage{lipsum}

\usepackage[stretch=10]{microtype} % microtipografia: funciona no PDFLaTeX e LuaLaTeX (parcialmente em XeLaTeX)
% atrapalha a copiar texto do PDF

\usepackage{setspace}

\onehalfspacing

% \usepackage{fancyhdr}

%\usepackage{bm} % fÃ³rmula matematica em negrito.

\usepackage{enumerate} % controle de enumeraÃ§Ã£o
% \usepackage{hhline} % linhas duplas na tabela
\usepackage{dcolumn} % alinhar decimais
\usepackage{tabularx} % igualar colunas
\usepackage{longtable}
% \toprule, midrule, cmidrule{}, bottomrule
\usepackage{booktabs}
% xtabular (tabela longa cnfigurÃ¡vel)
\usepackage{xtab}
% implementaÃ§Ã£o moderna de tabela (tblr que funciona tanto no modo texto como no modo matemÃ¡tico)
\usepackage{tabularray}
\UseTblrLibrary{booktabs,siunitx,caption}
 
\usepackage{makeidx}
\makeindex

\usepackage[nottoc]{tocbibind} % bibliogrphy and index on tableofcontents


\usepackage{amsthm}

\usepackage{multicol} % multiple column on document

\usepackage{makeidx} % pacote para produzir
% indice remissvo (glossÃ¡rio)
\makeindex % ativando o indice remissivo (glossÃ¡rio)

 % To solve probblem of \MakeUppercase that not works for accent char
 % and change to uppercase, the formula, ref, cite, etc too.
\usepackage[overload]{textcase}
\usepackage{listings} % format source code
\usepackage{showexpl} % ele carrega listings
% acento nao sobrevive no arquivo temporario de showexpl
% Use diretamente do arquivo externo, ou use XeLaTeX/LuaLaTeX

\usepackage{verbatim} % For verbatim
\usepackage{fancyvrb} % for VerbatimOut

\usepackage{keyval} % key=value in command parameter
%
% \usepackage{algorithmicx}
\usepackage{algpseudocode} %  arquivo de estilo de algorithmicx

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% pacotes usados nos exemplos correspondentes
%----------------------------------------------
%\usepackage{tikz} % pacote grÃ¡fico
\usetikzlibrary{babel} % para compatiblidade com o pacote babel, requerido por agumas bibliotecas como o cd.
\usetikzlibrary{calc} % calc eh para efetuar calculos matematicos ou expressoes em coordenadas
\usetikzlibrary{through} % circulo passando por ponto, por exemplo.
\usetikzlibrary{patterns} % preenchimentos
\usetikzlibrary{intersections} % interseccao entre caminhos
\usetikzlibrary{matrix} % matriz no tikz
\usetikzlibrary{cd} % diagrama comutativa
%
\usepackage{lettrine} % Para paragrafo no estilo biblia
\usepackage{caption} % configurar o titulo da figura e tabela
\usepackage{subcaption} % subfigura ou subtabela
\usepackage{wrapfig} % texto contornando a figura ou tabela
\usepackage{pdflscape} % rotaciona uma pÃ¡gina
\usepackage{pict2e} % para incrementar ambiente picture
\usepackage[mathlines]{lineno} % enumerar linhas de documento
\usepackage{blindtext} % gera parÃ¡grafos de textos sem sentido, para testes
\usepackage{fancybox} % caixas enfeitadas
\usepackage{framed} % moldura no texto
%\usepackage{exsheets} % para lista de exercicios e provas
% saida do xsim Ã© formatado manualmente sem usar este pacote
%\usepackage{xsim} % sucessor de exsheets (gera exercicios e respostas) 
\usepackage{tasks} % para lista de exercicios e provas
\usepackage{answers} % respostas
\usepackage{siunitx} % para unidade internacional.
\usepackage[shortlabels,inline]{enumitem} % para controle de listas e listas compactas
\usepackage{tabto} % para tabular itens da lista compacta.
% o pacote tasks ja carregou o ulem. Carregar de novo causa erro
% Agora tasks nÃ£o carrega mais (carregar explicitamente)
\usepackage[normalem]{ulem} % sublinhar,tachar, etc no texto

\usepackage{soul} % para destacar
\setulcolor{green} % cor para sublinhar
\setstcolor{red} % cor para cancelar
\sethlcolor{yellow} % cor para destaque

\usepackage{cancel} % cancelar elemento
% para cortar seta longa (negaÃ§Ã£o da seta longa)
\usepackage{centernot} % cortar sÃ­mbolo no centro
% fancyhdr and titlesec defines headrule and footrule,
% Use option pagestyles on titlesec package and
% load fancyhdr after titlesec
\usepackage[pagestyles]{titlesec} % para exemplo de titlesec
%\let\headrule\undefined
%\let\footrule\undefined
\usepackage{fancyhdr}
% para criar contorno
\usepackage{contour}
% texto sombreado
\usepackage{shadowtext}
% texto em degrade (gradiente linear)
\usepackage{gradient-text}
%
% texto circulado: de 2022
\usepackage{circledtext}
%
% Para evaluar expressÃµes matemÃ¡ticas
\usepackage{xfp} % estilo sin(pi)
\usepackage{numerica} % estilo \sin(\pi)
\usepackage{numerica-tables} % para tabelar

\usepackage{yfonts} % fonte Baroque para iniciais

%\usepackage{array} % precisa para acro usar longtable
%\usepackage{acro} % cria lista de siglas, e similares


% TODO's
%\usepackage{todonotes} % carega xkeyval, tikz, etc

%% caixa colorida usada para exemplo de certificado.
% \usepacakge{tcolorbox}

%  Adiciona a opÃ§Ã£o 'H' e tambÃ©m permite criar float personalizado.
%\usepackage{float} 
%\newfloat{algorithm}{tbp}{loa}[chapter]
% \floatname{algorithm}{AlgorÃ­timo}

% bug no titlesec 2.10.1 remove enumeracao da secao (corrigido em 2.10.2 de 21/03/2016).
% O Usuario de ubuntu 16.04 devem atualizar o titlesec
% https://tex.stackexchange.com/questions/299969/titlesec-loss-of-section-numbering-with-the-new-update-2016-03-15/300259
%
% Atualize o titlesec no ubuntu 16.04
% sudo wget http://mirrors.ctan.org/macros/latex/contrib/titlesec/titlesec.sty -O /usr/share/texlive/texmf-dist/tex/latex/titlesec/titlesec.sty

%========================================================
% rodap\'e deve estar em espa\c{c}amento simples,
% independente do espa\c{c}amento no corpo de documento
% Devera ser feito com linespread{} \@currsize
% pois comandos do setspace nao funciona como desejado
%========================================================
% foi copiado do book e alterado
\makeatletter % ativa uso de ``@'' no nome
\renewcommand\@makefntext[1]{%
    \parindent 1em%
    % inicio da altera\c{c}\~ao    
    \linespread{1} \@currsize \noindent
    % \hb@xt@1.8em{\hss\@makefnmark}#1}
    \hb@xt@0.45em{\hss\@makefnmark}#1}
% fim da altera\c{c}\~ao
\makeatother % desativa o uso de ``@'' no nome

\let\orilstlistingname\lstlistingname
\renewcommand{\lstlistingname}{Exemplo}
\renewcommand{\lstlistlistingname}{Lista de \lstlistingname s}
% setup  listings
\lstset{
%  language=[LaTeX]TeX,
  numbers=none,
  backgroundcolor=\color{yellow!30},
  breaklines=true,
  breakautoindent=true,
  % breakatwhitespace=true,    % quebra linha somente no espaÃ§o
  belowcaptionskip=1\baselineskip, % espaÃ§o apÃ³s o tÃ­tulo
  % aboveskip=2ex,
  %keepspaces=true, % to keep indentation
  columns=fullflexible, % para poder copiar codigo do PDF (fixed, flexible, fullflexible)
  frame=lines, %none, single, line % do codigo
}

% aplicando patch no codigo de showexpl para que o parametro abovecaptionskip funcione tambem no LTXexample

\makeatletter
\renewcommand\SX@KillAboveCaptionskip{%
  \ifx\lst@caption\@empty\else
    \lst@IfSubstring t\lst@captionpos
      {\vskip-\abovecaptionskip}{}%
  \fi
  \ifx\lst@belowcaption\undefined \else %adicionado
    \belowcaptionskip=\lst@belowcaption\relax % adicionado
  \fi %adicionado
}
\makeatother

% setup showexpl
\lstset{explpreset={
  pos=b,
  belowcaptionskip=0.5\baselineskip, % espaÃ§o apÃ³s o tÃ­tulo
%  language=[LaTeX]TeX,
  %basicstyle=\ttfamily\small,
  %identifierstyle=\color{black},
  %keywordstyle=\color{blue},
  %commentstyle=\color{red},
  %extendedchars=true,
  % extendedchars=false
  %showspaces=false,
  %showstringspaces=false,
%  numbers=none,
  %numberstyle=\tiny,
%  breaklines=true,
  %backgroundcolor=\color{lightgray},
%  breakautoindent=true,
  %captionpos=b,
  %xleftmargin=0pt,
  % captionpos=t.
  % aboveskip=2ex,
  % columns=fullflexible, 
%  columns=flexible, % para poder copiar codigo do PDF
  % para editor (sem ele, terq espaÃ§o indesejado)
  % from http://latex.org/forum/viewtopic.php?t=5636
  % hsep=2ex,  
%  frame=lines, %none, single, line % do codigo
  %rframe={single} % do resultado
  }
}

% para arquivo de BibTeX no listings
% https://tex.stackexchange.com/questions/85998/include-bibtex-contents-in-a-listings-block 
\lstdefinelanguage{BibTeX}
  {keywords={%
      @article,@book,@collectedbook,@conference,@electronic,@ieeetranbstctl,%
      @inbook,@incollectedbook,@incollection,@injournal,@inproceedings,%
      @manual,@mastersthesis,@misc,@patent,@periodical,@phdthesis,@preamble,%
      @proceedings,@standard,@string,@techreport,@unpublished%
      % author, editor, publisher, year, url, urldate
      },
   comment=[l][\itshape]{@comment},
   sensitive=false,
  }

\lstdefinestyle{lstexample}
{
%  language=[LaTeX]TeX,
%  keywordstyle=\bfseries,
%  identifierstyle=\itshape,
  backgroundcolor=\color{white},
  numbers=none,
  breaklines=true,
  breakautoindent=true,
%  belowcaptionskip=1\baselineskip, % espaÃ§o apÃ³s o tÃ­tulo
%  aboveskip=2ex,
  %keepspaces=true, % to keep indentation
  columns=fullflexible, % para poder copiar codigo do PDF
  frame=lines, %none, single, line % do codigo
%  explpreset={
%    attachfile=false,true
%    codefile=temporaryfilename,
%    explpreset=? defualti values is?
%    graphic=alternativegraphicsfileforoutput,
%    hsep=,
%    justification=\raggedright,% \raggedleft, \raggedright, \centering
%    overhang=,
%    pos=, % e t, b, l, r, and i
%    preset={},
%    rangeaccept=false, % true/false
%    rframe=,
%    varwidth=,
%    hsep,
%    wide,
%    width=
%  }
}

% LTXexample's parameter
%    attachfile=false,trure
%    codefile=temporaryfilename,
%    explpreset=? defualti values is?
%    graphic=alternativegraphicsfileforoutput,
%    hsep=,
%    justification=\raggedright,% \raggedleft, \raggedright, \centering
%    overhang=,
%    pos=, % e t, b, l, r, and i
%    preset={},
%    rangeaccept=false, % true/false
%    rframe=,
%    varwidth=,
%    hsep,
%    wide,
%    width=
%  }

% showexpl's LTXexample environment like ltxlisting
% is implemented (it use showexpl's preset (thus, need showexpl package}

\makeatletter 

% Para usar no exemplo de babel
\newenvironment{abstract}%
{\par\begin{center}\textbf{\small\abstractname}\vspace{-0.5em}\end{center}%
\begin{quotation}}%
{\end{quotation}}

%\newenvironment{abstract}{%
%  \if@twocolumn
%    \section*{\abstractname}%
%  \else
%    \small
%    \begin{center}%
%      {\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
%    \end{center}%
%    \quotation
%  \fi}
%{\if@twocolumn\else\endquotation\fi}

\let\orititle\title      
\let\oriauthor\author
\let\oridate\date
\newcommand{\makearticletitle}{%
  \begin{center}%
%    T\'{\i}tulo: 
    {\LARGE \@title \par}%
    \vspace*{1.5em}%
    {\large\center \@author }%
    \ifx\@date\@empty%
    \else%
      \par%
      \vspace*{1em}%
      {\large \@date}%
    \fi%
  \end{center}%
  \vspace*{1.5em}%
  \global\let\@author\@empty
  \global\let\@date\@empty
  \global\let\@title\@empty
  \global\let\title\relax
  \global\let\author\relax
  \global\let\date\relax
}

%\def\@maketitle{%
%  \newpage
%  \null
%  \vskip 2em%
%  \begin{center}%
%  \let \footnote \thanks
%    {\LARGE \@title \par}%
%    \vskip 1.5em%
%    {\large
%      \lineskip .5em%
%      \begin{tabular}[t]{c}%
%        \@author
%      \end{tabular}\par}%
%    \vskip 1em%
%    {\large \@date}%
%  \end{center}%
%  \par
%  \vskip 1.5em}
%\fi

\makeatother

%% ambientes de teoremas usado no exemplo
%% Definindo teormas e similares. Contador unico, vinculado a capÃ­tulos.
%\newtheorem{theorem}{Teorema}[chapter] % contador vinculado a capitulos
%\newtheorem{corollary}[theorem]{CorolÃ¡rio}
%\newtheorem{lemma}[theorem]{Lema}
%\newtheorem{proposition}[theorem]{ProposiÃ§Ã£o}
%\newtheorem{axiom}[theorem]{Axioma}
%\theoremstyle{definition}
%\newtheorem{definition}[theorem]{DefiniÃ§Ã£o}
%\newtheorem{example}[theorem]{Exemplo}
%\newtheorem{exercise}{ExercÃ­cio}[chapter] % contador prÃ³prio, vinculado a capitulo
%\theoremstyle{remark}
%\newtheorem{remark}[theorem]{ObservaÃ§Ã£o}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%% return to ams like mathcal instead of unicode-math ones
%\let\mathcal\relax % remove the definition by unicode-math
%\DeclareMathAlphabet{\mathcal}{OMS}{cmsy}{m}{n}
%% return to ams like mathbb instead of unicode-math ones
%\let\mathbb\relax % remove the definition by unicode-math
%\DeclareMathAlphabet{\mathbb}{U}{msb}{m}{n}

\let\orimathcal\mathcal
\let\orimathbb\mathbb
\DeclareMathAlphabet{\amsmathcal}{OMS}{cmsy}{m}{n}
\DeclareMathAlphabet{\amsmathbb}{U}{msb}{m}{n}

%\global\let\plainlabel\label
%\global\let\plainref\ref

% Fake bold in way to \mathversion{bold} works
% on XeLaTeX/LuaLaTeX with unicode-math.
% It loose several math symbols.
% \setmathfont[version=bold,FakeBold=3.5]{Latin Modern Math}
% De
% https://tex.stackexchange.com/questions/64839/how-to-change-listing-caption

% save some values for lstlinting
\newcounter{lstorichapter}
\newcounter{lstorisection}
%\let\orilabel\label
%\let\oriref\ref
\newcommand{\emptyaddcontentsline}[3]{}
\let\oriaddcontentsline\addcontentsline

\newcounter{orilstlisting}

%\let\oriref\ref % without link
%\makeatletter
%\let\refstar\@refstar % without link
%\makeatother

% Example of untf8 verbatim write
%\newenvironment{writefile}[1]
% {\deactivateeightbit\VerbatimOut{#1.out}}
% {\endVerbatimOut}
%\makeatletter
%\newcommand{\deactivateeightbit}{%
%  \count@=127
%  \loop
%    \catcode\count@=12
%    \ifnum\count@&lt;255
%    \advance\count@\@ne
%  \repeat
%}
%\makeatother

% from https://tex.stackexchange.com/questions/192941/showexpl-not-showing-caption-of-a-lstlisting-within to create vertical space
%\def\xstrut{\protect\rule[-2ex]{0pt}{2ex}}
%----------------------------------------------------------------

% showexpl's LTXexample preset
%\newcommand*\SX@@preset{%
%\renewcommand\documentclass[2][]{\SX@eat@version}%
%\renewcommand\usepackage[2][]{\SX@eat@version}%
%\renewenvironment{document}{}{}%
%\renewenvironment{figure}[1][]{\def\@captype{figure}}{}%
%\renewenvironment{table}[1][]{\def\@captype{table}}{}%
%\renewcommand\cite[1][]{}%
%\let\tableofcontens\relax \let\listoffigures\relax
%\let\listoftables\relax \let\printindex\relax
%\let\listfiles\relax \let\nofiles\relax
%\let\index\@gobble \let\label\@gobble
%\let\bibliography\@gobble
%\let\pagestyle\@gobble \let\thispagestyle\@gobble
%%%\let\immediate\relax \let\write\@gobbletwo
%%%\let\closeout\@gobble \let\@@input\@gobble
%\renewcommand\marginpar[2][]{}%
%\renewcommand\footnote[2][]{}%
%\let\@footnotetext\@gobble
%%%\abovedisplayskip=\z@
%%%\abovedisplayshortskip=\z@
%}
\makeatletter
\providecommand\SX@eat@version[1][]{}

\def\ltxlistingpresetfromshowexpl{%
\renewcommand\documentclass[2][]{\SX@eat@version}%
\renewcommand\usepackage[2][]{\SX@eat@version}%
\renewenvironment{document}{}{}%
\renewenvironment{figure}[1][]{\def\@captype{figure}}{}%
\renewenvironment{table}[1][]{\def\@captype{table}}{}%
\renewcommand\cite[1][]{}%
\let\tableofcontens\relax \let\listoffigures\relax
\let\listoftables\relax \let\printindex\relax
\let\listfiles\relax \let\nofiles\relax
\let\index\@gobble 
% \let\label\@gobble
\let\bibliography\@gobble
\let\pagestyle\@gobble \let\thispagestyle\@gobble
%%\let\immediate\relax \let\write\@gobbletwo
%%\let\closeout\@gobble \let\@@input\@gobble
\renewcommand\marginpar[2][]{}%
%\renewcommand\footnote[2][]{}%
%\let\@footnotetext\@gobble
%%\abovedisplayskip=\z@
%%\abovedisplayshortskip=\z@
} % showexpl default preset

\makeatother

% ltxlisting preset
\newcommand{\ltxlistingpreset}{
 \ltxlistingpresetfromshowexpl
 %
 \setcounter{lstorichapter}{\value{chapter}}%
 \setcounter{chapter}{0}%
 \setcounter{lstorisection}{\value{section}}%
 \setcounter{section}{0}%
 \let\oriaddcontentsline\addcontentsline%
 \let\addcontentsline\emptyaddcontentsline%
 \let\orimathcal\mathcal%
 \let\orimathbb\mathbb%
 \let\mathcal\amsmathcal%
 \let\mathbb\amsmathbb%
 \let\orimaketitle\maketitle
 \let\maketitle\makearticletitle
 \let\title\orititle      
 \let\author\oriauthor
 \let\date\oridate
 \let\orithempfootnote\thempfootnote
 \renewcommand{\thempfootnote}{\arabic{mpfootnote}}
 \setcounter{orilstlisting}{\value{lstlisting}}
}

\newcommand{\ltxlistingposset}{
 \setcounter{chapter}{\value{lstorichapter}}%
 \setcounter{section}{\value{lstorisection}}%
 \let\addcontentsline\oriaddcontentsline%
 \let\mathcal\orimathcal%
 \let\mathbb\orimathbb%
 \let\maketitle\orimaketitle
 \let\thempfootnote\orithempfootnote
 \setcounter{lstlisting}{\value{orilstlisting}}
}

\makeatletter
% from
% https://tex.stackexchange.com/questions/9035/how-to-pass-an-optional-argument-to-an-environment-with-verbatim-content
%
% \expandafter trick from
% https://tex.stackexchange.com/questions/196655/how-to-pass-figure-position-to-keyval-macro
\newenvironment{ltxlisting}{%
    \catcode`\^^M=\active
    \@ifnextchar[% se tem argumento opcional
        {\catcode`\^^M=5 \lxt@listing@start}
        {\catcode`\^^M=5 \lxt@listing@start[]}
}{\ltx@listing@end}

% Use of keyval from
% http://www.tex.ac.uk/FAQ-keyval.html
%
% Trick to ignore unkonown keys from
% https://tex.stackexchange.com/questions/314944/ignore-undefined-key-in-argument-its-defined-in-the-macro-before-its-used

\define@key{ltxlisting}{preset}{#1} % executte preset
% como eh dificil expandir segundo argumento antes do comando, define um comando auxiliar. Depois usar \expanafter para expandir argumento antes
\newcommand{\ltx@listing@setkeys}[1]{\setkeys{ltxlisting}{#1}}

%\def\lxt@listing@start[#1]{%
%  \begingroup
%    \ltxlistingpreset
%    % own preset
%    \let\KV@errx@ORI\KV@errx   % Save original error handling
%    \let\KV@errx\@gobble       % Ignore unknown keys
%      \setkeys{ltxlisting}{#1}
%    \let\KV@errx\KV@errx@ORI   % Restore original error handling      
%    %    
%    \def\ltx@listing@args{language={[LaTeX]TeX},#1}
%    \VerbatimEnvironment
%    % \deactivateeightbit
%    \begin{VerbatimOut}{\jobname.tmp}%
%}
%
%\def\ltx@listing@end{%
% \end{VerbatimOut}
% \begin{singlespacing}%
% \expandafter\lstinputlisting\expandafter[\ltx@listing@args]{\jobname.tmp}
% %\noindent
% \begin{framed} % frmae the output
% \noindent
% \begin{minipage}{\linewidth} % box the output
% \input{\jobname.tmp}
% \end{minipage}
% \end{framed}
% \end{singlespacing}%
% \ltxlistingposset
%\endgroup
%}

\def\lxt@listing@start[#1]{%
  %\begingroup
    \def\ltx@listing@args{language={[LaTeX]TeX},#1}
    \VerbatimEnvironment
    % \deactivateeightbit
    \begin{VerbatimOut}{\jobname.tmp}%
}

\def\ltx@listing@end{%
 \end{VerbatimOut}    %    
 \begin{singlespacing}
 \expandafter\lstinputlisting\expandafter[\ltx@listing@args]{\jobname.tmp}
 \end{singlespacing}
% \begingroup
% \begin{singlespacing}%
%   \ltxlistingpreset
%    % own preset
%   \let\KV@errx@ORI\KV@errx   % Save original error handling
%   \let\KV@errx\@gobble       % Ignore unknown keys
%     \expandafter\ltx@listing@setkeys\expandafter{\ltx@listing@args}
%   \let\KV@errx\KV@errx@ORI   % Restore original error handling      
% %\noindent
% \begin{framed} % frmae the output
% \noindent
% \begin{minipage}{\linewidth} % box the output
% \input{\jobname.tmp}
% \end{minipage}
% \end{framed}
% \end{singlespacing}%
% \ltxlistingposset
%\endgroup
%
\begin{ltxlistingout}[\ltx@listing@args]
\input{\jobname.tmp}
\end{ltxlistingout}
}

\newenvironment{ltxlistingout}[1][]
{ \begingroup
  \begin{singlespacing}%
  \ltxlistingpreset
  % own preset
  % disable keyval unknow 'key' error message for keyval
  \let\KV@errx@ORI\KV@errx   % Save original error handling
  \let\KV@errx\@gobble       % Ignore unknown keys
  % If xkeyval loaded, disable its one too
  \@ifpackageloaded{xkeyval}{%
    \let\XKV@err@ORI\XKV@err
    \let\XKV@err\@gobble
  }{}   
    \expandafter\ltx@listing@setkeys\expandafter{#1}  
%    \expandafter\ltx@listing@setkeys\expandafter{\ltx@listing@args}
  \let\KV@errx\KV@errx@ORI   % Restore original error handling for keyval
  \@ifpackageloaded{xkeyval}{\let\XKV@err\XKV@err@ORI}{}   % Restore original error handling for xkeyval
  %\noindent
  \begin{framed} % frame the output
  \noindent
  \begin{minipage}{\linewidth} % box the output
}{\end{minipage}
  \end{framed}
  \end{singlespacing}%
  \ltxlistingposset
  \endgroup
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%% ajuste de cabecalhos %%%%%%%%%%
% redefine a saida do capitulo e da secao
% \pagestyle{fancy} redefine eles,
%  entao deve colocar no final do ps@fancy 
% para ter efeito. Usando \addto do babel
\makeatletter
  \addto\ps@fancy{%
    \renewcommand{\chaptermark}[1]{%
      \markboth{\if@mainmatter\thechapter. \fi #1}%
        {\if@mainmatter\thechapter. \fi #1}}
    \renewcommand{\sectionmark}[1]{%
      \markright{\if@mainmatter\thesection. \fi #1}}
  }
\makeatother

% redefinindo o estilo da pagina "fancy"
\fancyhf{} % limpa o cabecalho
% redefine o cabcalho. \nouppercase foi usado para eliminar conversao para maiusculo do sumario/bibliografia
\fancyhead[LE,RO]{\bfseries\thepage}
\fancyhead[LO]{\bfseries\nouppercase\rightmark}
\fancyhead[RE]{\bfseries\nouppercase\leftmark}

% redefine o "plain" (usado na primeira pagina do capitulo).
\fancypagestyle{plain}{%
   \fancyhead{} % get rid of headers
   \fancyhead[LE,RO]{\bfseries\thepage} % colocar enumeracao
   \renewcommand{\headrulewidth}{0.5pt} % com linha horizontal
}

% linha horizontal entre cabecalho e corpo do documento
\renewcommand{\headrulewidth}{0.5pt}

% sem linha horizontal entre corpo de texo e rodape
\renewcommand{\footrulewidth}{0pt}

%%%%%%%% fim da redefinicao do cabecalho %%%%%%%%%%%%

% Providenciando logos
%%%%%%%%%%%%%%%%%%%%%%
\makeatletter

\AtBeginDocument{%
% From
% https://wiki.lyx.org/LyX/Logotype
%\providecommand{\LyX}{L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@}

\ifx\LyX\undefined
\def\@@LyX{L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@}%
%
\@ifpackageloaded{hyperref}
{\DeclareRobustCommand{\LyX}{%
  \texorpdfstring{\@@LyX}{LyX}}}%
{\DeclareRobustCommand{\LyX}{\@@LyX}}
\fi

% From
% https://tex.stackexchange.com/questions/18089/are-there-any-command-for-producing-the-bibtex-logo
%\ifx\BibTeX\undefined
%  \def\BibTeX{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em%
%     T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}%
%\fi

\ifx\BibTeX\undefined
  \def\@@BibTeX{B\kern-.05em{\sc i\kern-.025em b}\kern-.08em\TeX}%
%
\@ifpackageloaded{hyperref}
{
\DeclareRobustCommand{\BibTeX}{%
  \texorpdfstring{\@@BibTeX}{BibTeX}}}%
{\DeclareRobustCommand{\BibTeX}{\@@BibTeX}}    
\fi

% rotatebox trick from hologo (note that reflexbox fail inside section title)
%\ifx\XeTeX\undefined
%\@ifpackageloaded{hyperref}
%{
%\DeclareRobustCommand{\XeTeX}{%
%  \texorpdfstring{X\kern-.1667em\lower.7ex\hbox{\rotateboxbox[origin=c]{180}{E}}\kern-.125em\TeX}{XeTeX}}}%
%{\DeclareRobustCommand{\XeTeX}{%
%  X\kern-.1667em\lower.7ex\hbox{\rotateboxbox[origin=c]{180}{E}}\kern-.125em\TeX}}
%\fi

\ifx\XeLaTeX\undefined
\def\@@XeLaTeX{X\kern-.1667em\lower.7ex\hbox{\rotatebox[origin=c]{180}{E}}\kern-.125em\LaTeX}
%  
\@ifpackageloaded{hyperref}
{
\DeclareRobustCommand{\XeLaTeX}{%
  \texorpdfstring{\@@XeLaTeX}{XeLaTeX}}}%
{\DeclareRobustCommand{\XeLaTeX}{\@@XeLaTeX}}
\fi

% \LaTeX and \LaTeXe from latex.ltx
%\DeclareRobustCommand{\LaTeX}{L\kern-.36em%
%        {\sbox\z@ T%
%         \vbox to\ht\z@{\hbox{\check@mathfonts
%                              \fontsize\sf@size\z@
%                              \math@fontsfalse\selectfont
%                              A}%
%                        \vss}%
%        }%
%        \kern-.15em%
%        \TeX}
%\DeclareRobustCommand{\LaTeXe}{\mbox{\m@th
%  \if b\expandafter\@car\f@series\@nil\boldmath\fi
%  \LaTeX\kern.15em2$_{\textstyle\varepsilon}$}}

} %\AtBeginDocument

% fim do logo
\makeatother

% do amssymb, mas nao tem no unicode-math.
% usado no exemplo de diagrama comutativa
% " eh mapeado no babel. use ^^^^
% \providecommand{\circlearrowleft}{\symbol{^^^^27f2}}

% \providecommand{\circlearrowleft}{\symbol{10226}}

%\providecommand{\circlearrowleft}{\char{^^^^27f2}}
% Nao tem o comando \UnicodeMathSymbol?
%\makeatletter
% \let\UnicodeMathSymbol\um@mathsymbol@noparse
% \UnicodeMathSymbol{^^^^027F2}{\circlearrowleft}{\mathrel}{left circle arrow}%
% \DeclareUnicodeCharacter{27F2}{\circlearrowleft} % do inputenc (utf8)
% \def\circlearrowleft{\mathrel{\char^^^^27f2}}
%\makeatother

\providecommand{\circlearrowleft}{\acwopencirclearrow} % from unicode-math

\providecommand{\circlearrowleft}{\acwgapcirclearrow} % from unicode-math
% unicode version of \acwgapcirclearrow not appear on version 2017 of latin Modern (Cambria Math of Microsoft has this symbol).
% Need to tested on newer version of Latin Modern

% Defining from from amssymb
%\ifx\circlearrowleft\undefined
%  % From AMS (amssymb)
%  \DeclareSymbolFont{AMSa}{U}{msa}{m}{n} % from amsfonts
%  \DeclareMathSymbol{\circlearrowright}{\mathrel}{AMSa}{"08}
%  \DeclareMathSymbol{\circlearrowleft}{\mathrel}{AMSa}{"09}
%\fi

% \square do amssymb nÃ£o tem no unicode-math
% providenciando como \openbox do amsthm

%\ifx\square\undefined
%  \let\square\openbox
%\fi
\providecommand{\square}{\openbox}

% lmusrrache/rmustache nÃ£o tem no Latin Modern Math
% unicode math redefine no comeco do documento.
% Portanto, deve redefinir no comeco do documento (nÃ£o no preambulo)
% usando \AtBeginDocument
\DeclareSymbolFont{largesymbolsoriginal}{OMX}{cmex}{m}{n}  
\AtBeginDocument{
%  \let\lmoustache\lmoustacheoriginal 
%  \let\rmoustache\rmoustacheoriginal
\DeclareMathDelimiter{\lmoustache}{\mathopen}{largesymbolsoriginal}{"7A}{largesymbolsoriginal}{"40}
\DeclareMathDelimiter{\rmoustache}{\mathclose}{largesymbolsoriginal}{"7B}{largesymbolsoriginal}{"41}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% providenciando simbolos reservados para index, no indice remissivo
%
%\newcommand{\abssymbforindex}{|} % use \vert
%\index{delimitador!modulo@\abssymbforindex}
%\newcommand{\normsymbforindex}{\textbackslash |} % use \Vert
%\index{delimitador!norma@\normsymbforindex}

%\newcommand{\parenopensymbforindex}{$($}
%\index{delimitador!parenteaberta@$($}
%\newcommand{\parenclosesymbforindex}{$)$}
%\index{delimitador!parentefechada@$)$}
%\newcommand{\braceopensymbforindex}{$[$}
%\index{delimitador!colcheteaberta@[}
%\index{delimitador!colchetefechada@]}
%\newcommand{\curlyopensymbforindex}{\textbackslash\{}
\newcommand{\curlyopensymbforindex}{\{}
%\index{delimitador!chaveaberta@\curlyopensymbforindex}
%\newcommand{\curlyclosesymbforindex}{\textbackslash\}}
\newcommand{\curlyclosesymbforindex}{\}}
%\index{delimitador!chavefechada@\curlyclosesymbforindex}
\newcommand{\arrobasymbforindex}{$@$}
\newcommand{\exclsymbforindex}{$!$}

% Legenda a ser colocada embaixo da tabela/figura, conforme ABNT
% \providecommand{\legend}[1]{\par \medskip #1 \smallskip}
\providecommand{\legend}[1]{\par \medskip #1}

%%%%%%%%%%%%%%%%%%%%%
% provide some files
%-------------------
% \usepackage{filecontents} % nao precisa do pacote, se for usado no preamble e nao precisar reescrever quando arquivo ja existe
\begin{filecontents}{latex-via-exemplos-tabela.txt}
% Parabola
% % ou # marca a linha de comentario
-2	4
-1.5	2.25
-1.0	1
-0.5	0.25
0	0
0.5	0.25
1	1
1.5	2.25
2	4
\end{filecontents}

%\begin{filecontents}{latex-via-exemplos-lista-nomes.csv}
%"Nome","Trabalho","Observacao"
%"Nome 1","Trabalho 1",
%"Nome 2","Trabalho 2",
%\end{filecontents}

% InformaÃ§Ãµes
%%%%%%%%%%%%%
\title{\LaTeXe{} Via Exemplos}
\author{Sadao Massago\thanks{DFQM-UFSCar -- Campus de Sorocaba, SP
(\url{http://dfqm.sorocaba.ufscar.br/})} }
% VersÃ£o preliminar: janeiro a abril de 2018
% Primeira versÃ£o publica (0.5): abril de 2018.
% Primeira atualizacao (0.5.1): junho de 2018.
% Segunda atualizaÃ§Ã£o, adicionando o ABNT (0.5.2): junho de 2018.
% Terceira atualizaÃ§Ã£o (0.5.3): junho de 2018.
% Quarta atualizaÃ§Ã£o (0.5.4): agosto de 2019
% Quinta atualizaÃ§Ã£o (0.5.6): dezembro de 2019 
% Sexta atualizaÃ§Ã£o (0.5.7): julho de 2021 
% Setima atualizaÃ§Ã£o (0.5.8): 17 de maio de 2022
% Oitava atualizaÃ§Ã£o (0.5.9): 01 de maio de 2023
% Nona atualizaÃ§Ã£o (0.5.9): 01 de maio de 2023}
% Decima atualizaÃ§Ã£o (0.5.10): 08 de dezembro de 2024
% Decima primeira atualizaÃ§Ã£o (0.5.11): 08 de dezembro de 2024
% Decima segunda atualizaÃ§Ã£o: 19 de dezembro de 2024
% Decima terceira atualizaÃ§Ã£o: 29 de dezembro de 2024
% Decima quarta atualizaÃ§Ã£o: 31 de dezembro de 2024
% Decima quinta atualizaÃ§Ã£o:
\date{06 de janeiro de 2025}

%%%%%%%%%%%%%%%%%%%%%%%
% Documet start here
%----------------------
% INICIO DO DOCUMENTO
%%%%%%%%%%%%%%%%%%%%%%%
\pagestyle{empty}
\begin{document}

\maketitle

\thispagestyle{empty}

Copyright \textcopyright 2018--2025 por Sadao Massago. 
Todos os direitos reservados.
Este documento Ã© software livre; podendo ser redistribuÃ­do e/ou modificado de acordo com os termos da LicenÃ§a PÃºblica do Projeto LaTeX (LPPL); versÃ£o 1.3c da LicenÃ§a, ou (se for sua opÃ§Ã£o) qualquer versÃ£o posterior. 
Veja \url{http://www.latex-project.org/lppl.txt}.

\

A versÃ£o atual deste documento estÃ¡ disponÃ­vel em \\
\url{https://ctan.org/pkg/latex-via-exemplos}

%%{CTAN://info/latex-via-exemplos}

\clearpage\thispagestyle{empty}\cleardoublepage
\frontmatter
\chapter*{}
``\emph{NinguÃ©m Ã© tÃ£o pobre que nada possa dar e ninguÃ©m Ã© tÃ£o rico que nÃ£o precise receber}''
(Alvaro Granha Loregian)

\clearpage\thispagestyle{empty}\cleardoublepage
\frontmatter

% adiciona bookmark no PDF
\phantomsection
\pdfbookmark[chapter]{PrefÃ¡cio}{prefacio}
%\pdfbookmark[0]{PrefÃ¡cio}
\chapter*{PrefÃ¡cio}
O \LaTeXe{} Ã© um sistema de processamento de documentos implementados sobre o \TeX.

O objetivo deste documento Ã© apresentar o \LaTeXe{} de forma gradativa, usando os exemplos.
Assim, o documento contÃ©m muitos exemplos e suas saÃ­das, o que aumentou consideravelmente as pÃ¡ginas.

Este documento estÃ¡ dividido em 19 capÃ­tulos mais os apÃªndices.

Do CapÃ­tulo~1 atÃ© CapÃ­tulo~14 utilizam somente os pacotes da \texttt{base} e de \texttt{required} na qual qualquer sistema \LaTeX{} devem conter.
Do capÃ­tulo 15 a 18 utilizam os pacotes que nÃ£o sÃ£o da \texttt{base} e de \texttt{required} para incrementar a funcionalidade.
Nos apÃªndices, serÃ£o tratados alguns recursos extras que podem ser interessantes, mas que julgar que nÃ£o sejam de interesse de todos.

CapÃ­tulo~1 Ã© uma breve introduÃ§Ã£o sobre o sistema.

CapÃ­tulo~2 trata do primeiro documento em \LaTeXe, incluindo introduÃ§Ã£o Ã&nbsp; escrita de textos.

CapÃ­tulo~3 introduz sobre fÃ³rmulas matemÃ¡ticas.

CapÃ­tulo~4 trata sobre estrutura de textos.

CapÃ­tulo~5 Ã© uma continuaÃ§Ã£o do CapÃ­tulo~3, tratando sobre fÃ³rmulas matemÃ¡ticas.

CapÃ­tulo~6 trata sobre definiÃ§Ãµes de comandos e ambientes.

CapÃ­tulo~7 discute sobre divisÃ£o lÃ³gica de documentos, conhecido como ``seccionamentos''.

CapÃ­tulo~8 trata de definiÃ§Ãµes e uso dos ambientes do tipo teoremas.

CapÃ­tulo~9 discute sobre a criaÃ§Ã£o de figuras e tabelas flutuantes, tabelas longas e inclusÃ£o de imagem externa.

CapÃ­tulo~10 trata sobre ajuste das fontes e espaÃ§amentos.

CapÃ­tulo~11 trata sobre referÃªncias bibliogrÃ¡ficas e Ã­ndice remissivos. \BibTeX{} tambÃ©m serÃ¡ introduzido neste capÃ­tulo.

CapÃ­tulo~12 trata sobre medidas e contadores.

CapÃ­tulo~13 e 14 exploram vÃ¡rias possibilidades dentro dos pacotes de \texttt{base} e \texttt{required} que nÃ£o foram discutidos nos capÃ­tulos anteriores.

CapÃ­tulo~15 discute o uso de pacotes fora do \texttt{base} e \texttt{required} para ajuste de documentos.
A partir deste capÃ­tulo, serÃ£o apresentados pacotes fora do \texttt{base} e \texttt{required}. 
Isto significa que os pacotes indicados podem precisar de instalaÃ§Ã£o a parte em alguns sistemas.

CapÃ­tulo~16 discute o pacote \texttt{xcolor} especial para cores, e \texttt{tikz} espacial para criar ilustraÃ§Ãµes.

CapÃ­tulo~17 ilustra a criaÃ§Ã£o de \texttt{poster} e \texttt{slides} de apresentaÃ§Ã£o.

CapÃ­tulo~18 apresenta o uso de \XeLaTeX{} e Lua\LaTeX, considerado como a prÃ³xima geraÃ§Ã£o de \LaTeX.

CapÃ­tulo~19 apresenta a formataÃ§Ã£o no padrÃ£o de AssociaÃ§Ã£o Brasileira de Normas TÃ©cnicas (ABNT)\index{ABNT}.

ApÃªndice~A Ã© sobre sÃ­mbolos bÃ¡sicos do \LaTeX.

ApÃªndice~B Ã© sobre como escrever um pacote (arquivo de estilos).

ApÃªndice~C trata de editor \LyX{} que permite elaborar documentos de forma mais visual como os editores para escritÃ³rios, em vez de editar diretamente o cÃ³digo fonte em \LaTeX.

ApÃªndice~D trata da mala direta, criaÃ§Ã£o do caderno de resumos, folhetos, etc que sÃ£o interessantes para organizadores de eventos.

ApÃªndice~E trata de pacotes Ãºteis para elaborar provas e lista de exercÃ­cios.

ApÃªndice~F trata de pacotes interessantes para desenvolver projetos tal como escrever um livro ou similar.

ApÃªndice~G descreve alguns aplicativos livres interessantes que auxilia os usuÃ¡rios de \LaTeX.
\

% Sorocaba, abril de 2018.
% Sorocaba, junho de 2018.
% Sorocaba, agosto de 2019.
% Sorocaba, dezembro de 2019.
% Sorocaba, julho de 2021.
% Sorocaba, maio de 2022.
% Sorocaba, outubro de 2023.
% Sorocaba, dezembro de 2024.
Sorocaba, janeiro de 2025.

\

Sadao Massago \verb+&lt;sadao@ufscar.br&gt;+

%\pagestyle{headings}


\clearpage\thispagestyle{empty}\cleardoublepage

\pagestyle{fancy}

\phantomsection
\pdfbookmark[chapter]{\contentsname}{toc}
\tableofcontents

\clearpage\thispagestyle{empty}\cleardoublepage
\phantomsection
\pdfbookmark[chapter]{Lista de \lstlistingname s}{lstlisting}
\lstlistoflistings

\clearpage\thispagestyle{empty}\cleardoublepage
\mainmatter
\chapter{IntroduÃ§Ã£o}

\LaTeX{} Ã© um sistema de diagramaÃ§Ã£o de documentos profissional largamente utilizados, desenvolvido sobre o \TeX{}.
Para quem entende inglÃªs, os livros impressos recomendados sÃ£o \cite{book:lamport:1994} e \cite{book:goossens:2004}. 
Outros textos recomendados que podem ser lidos gratuitamente sÃ£o \cite{book:oeticker:2018}, \cite{misc:indiantug:2000} e \cite{book:wikibook:latex}.
Note que a traduÃ§Ã£o em portuguÃªs brasileiro do \cite{book:oeticker:2018} costuma estar desatualizado em relaÃ§Ã£o Ã&nbsp; versÃ£o original.
EntÃ£o prefira a versÃ£o em inglÃªs.

\section{Uma breve histÃ³ria}
O \TeX{} \cite{book:knuth:1986} e a fonte padrÃ£o \texttt{Computer Modern}, foram desenvolvidos pelo \emph{Donald Kunuth}\index{Donald Kunuth} em 1977 a 1985.
Dos sistemas implementados sobre o \TeX, o mas usado Ã© o \LaTeX{} \cite{book:lamport:1986} desenvolvido pela equipe de \emph{Leslie Lamport}\index{Leslie Lamport}, concluido em 1985.
A versÃ£o mais utilizada do \LaTeX{} foi concluÃ­do em 1994 que Ã© o \LaTeXe{} \cite{book:lamport:1994}.
Em 2004, o \TeX{} comeÃ§ou a suportar oficialmente o \texttt{utf-8}, facilitando a elaboraÃ§Ã£o de documentos multi-idiomas.
Em 2007, o Xe\TeX{} que suporta o uso de fontes do sistema implementado inicialmente no \texttt{Mac OSX} foi portado para \texttt{linux} e \texttt{Windows}.
Em 2008, o recurso de sincronizaÃ§Ã£o do documento fonte com o \texttt{PDF} tornou fÃ¡cil e \texttt{PDF} foi substituindo a saÃ­da DVI do \TeX{} na diagramaÃ§Ã£o.
Em 2010 foi lanÃ§ado a primeira versÃ£o estÃ¡vel do Lua\TeX{}, considerado como o sucessor do PDF\TeX{}. 
O Lua\TeX{}, alÃ©m de poder usar as fontes do sistema como o Xe\TeX, tambÃ©m pode estender a funcionalidade com a linguagem \texttt{script} \texttt{Lua}.

\section{Como usar \LaTeX{}}
O \TeX{}\index{TeX} Ã© um sistema de compilaÃ§Ã£o de documentos e o \LaTeX{}\index{LaTeX} Ã© um conjunto de macros (instruÃ§Ãµes) para automatizar e facilitar a diagramaÃ§Ã£o de documentos.

O documento Ã© preparado como arquivo texto num editor de texto, compilado pelo \LaTeX{}, visualizado e corrigido e compilado novamente, atÃ© obter o resultado desejado.
O arquivo fonte do documento costuma ser editado no editor prÃ³prio para \LaTeX{} tais como \texttt{TeXMaker}\index{TeXMaker} (\url{http://www.xm1math.net/texmaker/}) e \texttt{TeXStudio}\index{TeXStudio} (\url{https://www.texstudio.org/}), ambos disponÃ­vel livremente em vÃ¡rias plataformas. 
AlÃ©m de recursos para facilitar a escrever documentos, eles contam com botÃµes de compilaÃ§Ã£o e visualizaÃ§Ã£o, assim como sincronismo de \texttt{PDF} com o cÃ³digo fonte.
Para quem quer a funcionalidade mais prÃ³xima dos aplicativos de escritÃ³rios que permite visualizar como vai ficar enquanto escreve e quer elaborar o documento usando botÃµes e menus em vez de digitar comandos, poderÃ¡ optar pelo \LyX{}\index{LyX} (\url{https://www.lyx.org/}) que tambÃ©m Ã© livre e suporta vÃ¡rias plataformas.
Para evitar erros de escrita, Ã© recomendÃ¡vel que ative o corretor ortogrÃ¡fico com idioma desejado, o que depende de cada editor.
Para compilar, deverÃ¡ instalar alguma distribuiÃ§Ã£o de \TeX{}. 
Em geral, o mais recomendado Ã© o \texttt{TeXLive}\index{TeXLive} para \texttt{Linux}, \texttt{MacTeX}\index{MacTeX} para \texttt{Mac OSX} e \texttt{MikTeX}\index{MikTeX} para \texttt{Windows}, todos sÃ£o livres.

Evite usar o espaÃ§o no nome de arquivos para \LaTeX, pois o sincronismo do cÃ³digo fonte com o \texttt{PDF} (posicionar \texttt{PDF} na posiÃ§Ã£o correspondente Ã&nbsp; linha de cÃ³digo fonte e vice-versa) pode tornar parcial.

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Iniciando um Documento}
Neste capÃ­tulo, vamos tratar do bÃ¡sico de como comeÃ§ar um documento \LaTeX.

\section{Primeiro documento}
Um documento em \LaTeX{} inicia-se com o comando \verb+\documentclass+\index{documentclass} que especifica qual tipo de documentos serÃ¡ diagramado.
Em seguida, serÃ¡ especificado os pacotes (conjunto de instruÃ§Ãµes) adicionais a serem carregados e tambÃ©m serÃ¡ realizada algumas configuraÃ§Ãµes. Esta parte do documento Ã© chamado de \texttt{preamble}\index{preamble} (preÃ¢mbulo) do documento.
Depois inicia o conteÃºdo do documento com \verb+\begin{document}+, escreve o corpo do documento e finaliza o documento com \verb+\end{document}+.

O cÃ³digo do primeiro documento e sua saÃ­da em \texttt{pdf} (que estÃ¡ dentro da moldura) seria como do Exemplo~\ref{ex02:inicial}.

% \begin{spacing}{1}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex01-01.tex},label=ex:01-01]
\begin{ltxlisting}[caption={ex02-inicial.tex},label=ex02:inicial]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}

\begin{document}
Este Ã© primeiro parÃ¡grafo.
Continuando o primeiro parÃ¡grafo.

Este Ã© o segundo parÃ¡grafo.

EspaÃ§o extra      sÃ£o eliminados.
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O comando do \LaTeX{} inicia com o caractere especial ``\verb+\+''\index{\textbackslash@\verb+\+}. 
O primeiro comando \verb+\documentclass+\index{documentclass@\verb+\documentclass+} tem como parÃ¢metros delimitados pelos colchetes e outro com chaves.
O que Ã© delimitado pelo chaves Ã© o parÃ¢metro obrigatÃ³rio\index{parÃ¢metro!obrigatÃ³rio} (aqui, Ã© o \texttt{article}). 
Os parÃ¢metros colocados entre colchetes, separados pela vÃ­rgula sÃ£o os opcionais\index{parÃ¢metro!opcional}. 
Neste exemplo, sÃ£o \texttt{12pt} e \texttt{a4paper}. 
Opcionais significa que pode ou nÃ£o colocar tais opÃ§Ãµes.
O parÃ¢metro obrigatÃ³rio (colocado entre chaves) do comando \verb+\documentclass+ Ã© o tipo de documentos. 
Aqui foi escolhido o \texttt{article}\index{article} (artigo) que tem como objetivo, colocar maior quantidade de informaÃ§Ãµes no espaÃ§o limitado. 
Outro tipo de documento bastante usados Ã© o \texttt{book}\texttt{book} (livro).
Os parÃ¢metros opcionais usados foram \texttt{12pt}\index{12pt} que Ã© o tamanho de letra\index{tamanho!letra} em 12pt e \texttt{a4paper}\index{a4paper} que Ã© o tamanho do papel\index{tamanho!papel} em padrÃ£o \texttt{A4}.

Depois segue com sequÃªncia de comandos \verb+\usepackage+\index{usepackage@\verb+\usepackage+}.
O \verb+\usepackage+ carrega o pacote\index{pacote} (conjunto de instruÃ§Ãµes) que configura o documento ou disponibiliza os comandos especÃ­ficos.
O \LaTeX{} dispÃµe uma grande quantidade de pacotes, uma para casa situaÃ§Ã£o.
No Exemplo~\ref{ex02:inicial}, foram carregados os pacotes \texttt{fontenc}, \texttt{inputenc} e \texttt{babel}, todos eles com um parÃ¢metro.
O primeiro pacote \texttt{fontenc}\index{fontenc} Ã© usado para especificar a codificaÃ§Ã£o das fontes de letras. 
A opÃ§Ã£o \texttt{T1} indica que a fonte estÃ¡ em \texttt{T1} que dispÃµe de letras de 8-bits (acentuadas). 
Esta opÃ§Ã£o Ã© Ãºtil para definir a regra de hifenizaÃ§Ã£o local do documento no \texttt{preamble} e efetuar busca de texto com letras acentuadas no \texttt{PDF} final. 
A seguir, o pacote \texttt{inputenc}\index{inputenc} especifica a codificaÃ§Ã£o do documento fonte (o que estÃ¡ editando). 
Atualmente, o \texttt{utf8} Ã© o recomendado, mas antigamente usava o \texttt{latin1} para portuguÃªs brasileiro. 
Note que \texttt{inputenc} foi colocado depois da \texttt{fontenc}.
Assim, a faixa de coberta dos caracteres Ã© maior, nÃ£o limitando somente a faixa de \texttt{T1}.

O terceiro e Ãºltimo pacote deste exemplo Ã© o \texttt{babel} com a opÃ§Ã£o \texttt{brazil}. 
O pacote \texttt{babel}\index{babel} seleciona a regra de hifenizaÃ§Ã£o e nomes dos elementos (como figura, capÃ­tulo, etc) para idioma especificada. 
A opÃ§Ã£o \texttt{brazil} ou \texttt{brazilian} escolhe o portuguÃªs brasileiro (nÃ£o confundir com a opÃ§Ã£o \texttt{portugese} que escolherÃ¡ portuguÃªs de Portugal).

Depois encontra o \verb+\begin{document}+.
O comando \verb+\begin+\index{begin@\verb+\begin+} inicia um ambiente. 
Um ambiente\index{ambiente} Ã© uma configuraÃ§Ã£o que serÃ¡ aplicado nos trechos entre \verb+\begin{&lt;ambiente&gt;}+ e \verb+\end{&lt;ambiente&gt;}+\index{end@\verb+\end+}.
O \verb+\begin{document}+ e \verb+\end{document}+
determina o ambiente de documento na qual seus conteÃºdos serÃ£o colocados no arquivo \texttt{PDF}.

A quebra de linha nÃ£o efetua quebra de linha na saÃ­da. 
Para que tenha um novo parÃ¡grafo\index{parÃ¡grafo} de fato, deverÃ¡ pular uma linha.

Note que, se tiver mais de um espaÃ§o, o \LaTeX{} interpretarÃ¡ como um Ãºnico espaÃ§o.

Para gerar o arquivo \texttt{PDF}, deverÃ¡ processar com o \LaTeX.
Salve o arquivo com extensÃ£o \texttt{tex} e clique no botÃ£o de \texttt{Compilar} no caso de \texttt{TeXMaker} e botÃ£o \texttt{LaTeX} no caso de \texttt{TexStudio} (na versÃ£o mais nova, Ã© um triÃ¢ngulo verde). 

\section{Mensagem de erro e correÃ§Ã£o}

Quando ocorre erro de compilaÃ§Ã£o, o \texttt{TeXMaker} mostrarÃ¡ em vermelho na parte de baixo e indicarÃ¡ a linha onde ocorreu o erro. 
Maioria dos editores para \LaTeX{} posicionarÃ¡ automaticamente na linha do primeiro erro quando compila. 
Para demais erros, ao clicar nas mensagens de erros em vermelho, posicionarÃ¡ automaticamente na linha correspondente a tais erros.
Para melhorar a precisÃ£o da localizaÃ§Ã£o de erros, quebre o parÃ¡grafo em vÃ¡rias linhas (lembre-se que quebra de linha nÃ£o afeta o documento final).

Assim, deve corrigir os erros e compilar de novo, atÃ© sumir com todos os erros.

Quando compila o documento, o \texttt{TeXMaker} posicionarÃ¡ na pÃ¡gina do \texttt{PDF}, correspondente aonde fica o cursor no editor de texto. Para localizar qual cÃ³digo gerou uma determinada parte de \texttt{PDF}, clique no botÃ£o direito sobre parte do \texttt{PDF} e escolha ``clique para ir para a linha''.

\section{Caracteres especiais}
Existem vÃ¡rios caracteres especiais reservados para os comandos e similares do \LaTeX. Por exemplo, ``\verb+\+'' Ã© usado para iniciar um comando, chaves Ã© usado para indicar os parÃ¢metros, etc. 
Para inserir estes caracteres especiais\index{caracteres especiais} no documento, deverÃ¡ usar os comandos especiais de \LaTeX.

%A seguir, alguns deles. 
No cÃ³digo fonte do Exemplo~\ref{ex02:caracteres}, foi colocado somente os trechos que ficam no corpo do documento.
Para que o arquivo compile, deverÃ¡ colocar entre \verb+\begin{document}+ e \verb+\end{document}+ do arquivo vÃ¡lido como do Exemplo~\ref{ex02:inicial}. 

%\begin{singlespacing}
% \begin{LTXexample}[pos=b,caption={ex01-02.tex},label=ex:01-02]
\begin{ltxlisting}[caption={ex02-caracteres.tex},label=ex02:caracteres]
% esta Ã© comentÃ¡rio
Alguns caracteres especiais:
\textbackslash, \$, \#, \%, \&amp;, \_, \{, \}

Alguns acentos no modo TeX:
\'a, \`a, \^e, \'\i, \~a, \"u

``Abrindo e fechando aspas''

Logo do \LaTeX{} e do \TeX
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O Exemplo~\ref{ex02:caracteres}
% Ã© uma parte do arquivo de exemplo \texttt{ex01-02.tex} que 
mostra alguns comandos para produzir caracteres especiais.

Note que as letras com a acentuaÃ§Ã£o direta\index{acentuacao@{acentuaÃ§Ã£o}!direta} pelo teclado Ã© suportado, desde que \verb+\usepackage[utf8]{inputenc}+ ou equivalentes sejam colocados no \texttt{preamble} do documento. 
No exemplo acima, foi mostrado a acentuaÃ§Ã£o do modo \TeX{}\index{acentuacao@{acentuaÃ§Ã£o}!modo \TeX} que pode ser usados em alguns casos especiais, tais como dentro do arquivo de referÃªncias bibliogrÃ¡ficas, ou arquivos de pacotes.
Note que \verb+\'+ acentua a letra seguinte, mas ``i'' tem pingo e ``Ã­'' (com acento) nÃ£o tem pingo. \verb+\i+ Ã© o comando para produzir ``i'' sem pingo\index{i sem pingo}.
No derivado de e-TeX como o TeX autual, costuma automatizar a retirada de pingo quando acentua, eliminando a necessidade do uso de i sem pingo.

Note tambÃ©m que o acento agudo no modo \TeX{} Ã© produzido por apÃ³strofos e nÃ£o pelo acento agudo.
ApÃ³strofos\index{apÃ³strofos} Ã© aberto por um acento agudo e fechado pelo apÃ³strofos.
Aspas\index{aspas} Ã© aberto pelos dois acentos agudos e fechado pelos dois apÃ³strofos (fiquem atentos de que fechamento de aspas Ã© dois apÃ³strofos e nÃ£o Ã© aspas).

No \LaTeX, quando encontra ``\%''\index{comentario@{comentÃ¡rio}}\index{\%}, o restante desta linha serÃ¡ considerado como comentÃ¡rio\index{comentÃ¡rio} e Ã© ignorado completamente.

ComentÃ¡rio Ã© importante para inserir observaÃ§Ãµes sobre o cÃ³digo, ou desativar um trecho do cÃ³digo.
Em geral, quem quer remover um trecho do cÃ³digo de \LaTeX{} no documento, simplesmente comenta o trecho, pois se algum dia quiser ativar, Ã© sÃ³ remover o ``\%'' do comentÃ¡rio.

Para comentar/descomentar um trecho maior no \texttt{TeXMaker}, selecione o trecho e use o \texttt{Editar-&gt;Comentar} e \texttt{Editar-&gt;Descomentar}.

Quando editar um documento, existem palavras que devem aparecer grudados (nÃ£o pode ficar primeira parte no final de linha e outra no comeÃ§o da linha) como no caso de enumeraÃ§Ã£o de pÃ¡ginas, exemplos, teoremas, etc. 
Neste caso, usa-se o til (\verb+~+\index{\verb+~+}) em vez do espaÃ§o\index{espaÃ§o!nÃ£o quebrÃ¡vel}. 
Por exemplo, no caso de ``\verb+pÃ¡gina~1+'', nÃ£o acontece de ``\texttt{pÃ¡gina}'' ficar no final de uma linha e ``\verb+1+'' ficar no comeÃ§o da prÃ³xima linha. Outros casos Ã© colocar entre artigos e pronomes, como em \verb+O~Teorema de PitÃ¡goras+ para evitar que o artigo fique no final de uma linha e restante na prÃ³xima linha.

Por Ãºltimo, quando insere comandos e precisa ter espaÃ§o depois dele, coloque um par de chaves\index{espaÃ§o!depois do comando}. Por exemplo, ``\verb+\LaTeX produz+'' ficaria como ``\LaTeX produz'' (grudados) enquanto que ``\verb+\LaTeX{} produz+'' ficarÃ¡ como ``\LaTeX{} produz'' (com espaÃ§o correto). TambÃ©m lembre-se que no comando de \LaTeX, maiÃºsculo e minusculo sÃ£o distinguidas.
Portanto, ``\verb+Latex+'' ou ``\verb+\latex+'' resultarÃ£o em erros em vez de produzir logotipo de \LaTeX.

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{IntroduÃ§Ã£o Ã&nbsp;s FÃ³rmulas MatemÃ¡ticas}
Neste capÃ­tulo, veremos um pouco sobre as fÃ³rmulas matemÃ¡ticas.

\section{FÃ³rmula \texttt{textstyle} e \texttt{displaystyle}}

Uma fÃ³rmula matemÃ¡tica (ou modo matemÃ¡tico) \texttt{textstyle}\index{textstyle} (ou \texttt{inlinestyle}\index{inlinestyle}) Ã© uma fÃ³rmula no meio do texto. 
Por exemplo, denotaremos uma sequÃªncia por $\{x_n\}$ e seu limite por $\lim_n\to\infty x_n$ Ã© modo \texttt{textstyle}, pois fÃ³rmulas estÃ£o no meio do texto.
Agora as fÃ³rmulas matemÃ¡ticas que ocupam linha separada de texto como em
\[
x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}
\]
Ã© denominado de fÃ³rmula matemÃ¡tica no modo \texttt{displaystyle}\index{displaystyle}.

A fÃ³rmula no modo \texttt{textstyle} devem ficar delimitados entre ``\$''\index{\$} ou ``\textbackslash(''\index{\textbackslash parenteaberta@{\textbackslash$($}} e  ``\textbackslash)''\index{\textbackslash parentefechada@{\textbackslash$)$}}, ou ainda poderÃ¡ usar o ambiente \texttt{math}\index{math}.
O mais usado Ã© delimitar com ``\$''.

A fÃ³rmula no modo \texttt{displaystyle} devem ficar delimitados entre ``\$\$''\index{\$\$} (dois dÃ³lares) ou ``\textbackslash[''\index{\textbackslash[} e  ``\textbackslash]''\index{\textbackslash]}, ou ainda poderÃ¡ usar o ambiente \texttt{displaymath}\index{displaymath}. 
E recomendado que delimite com \textbackslash['' e  ``\textbackslash]'',
pois delimitar com ``\$\$'' (dois dÃ³lares) dificultarÃ¡ a depuraÃ§Ã£o (achar erros).

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex03-formulas.tex},label=ex03:formulas]
SoluÃ§Ã£o da equaÃ§Ã£o $ax^2+bx+x=0$ Ã© dado pela fÃ³rmula
\[
x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}
\]

Elemento da matriz $A$ costuma ser denotado por $a_{ij}$
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}


No modo matemÃ¡tico, ``\verb+^+''\index{\^{}@\verb+^+} Ã© usado para indicar a potÃªncia\index{modo matematico@{modo matemÃ¡tico}!potencia@{potÃªncia}} e ``\_''\index{\_@\verb+_+} indica o Ã­ndice\index{modo matematico@{modo matemÃ¡tico}!indice@{Ã­ndice}}.
Outros comandos utilizados foram, \verb+\frac+\index{frac@\verb+\frac+} que produz fraÃ§Ãµes\index{modo matematico@{modo matemÃ¡tico}!fracao@{fraÃ§Ã£o}}, onde primeiro parÃ¢metro Ã© numerador e segundo, o denominador. 
O comando \verb+\sqrt+\index{sqrt@\verb+\sqrt+} produz raiz\index{raiz} do argumento. 
O comando \verb+\pm+\index{modo matematico@{modo matemÃ¡tico}!operador!\verb+\pm+, $\pm$} Ã© o sÃ­mbolo $\pm$. 
Na matemÃ¡tica, muitos sÃ­mbolos sÃ£o usados e o \LaTeX{} dispÃµe de comandos para cada uma desses sÃ­mbolos. 
Em geral, o editor para \LaTeX{} dispÃµe de painel de inserÃ§Ã£o dos sÃ­mbolos matemÃ¡ticos para ajudar na elaboraÃ§Ã£o do documento. 
No caso de \texttt{TeXMaker}, tem um botÃ£o no painel lateral esquerdo que permitem ativar tais painÃ©is, organizados em grupos.
As letras gregas\index{letra!grega} no \LaTeX{} sÃ£o produzidas pelo comando com nome em inglÃªs. 
Se nome comeÃ§ar em maiÃºsculo, serÃ¡ letra grega maiÃºscula.

Note que, quando os parÃ¢metros de um comando for mais de um (mais de uma letra, por exemplo), deverÃ¡ colocar entre chaves, como foram feitos para \verb+\frac+ e \verb+sqrt+.

Isto vale tambÃ©m para expoentes e Ã­ndices, como foi feito no elemento da matriz (com Ã­ndices de duas letras).

O comando \verb+\sqrt+\index{sqrt@\verb+\sqrt+} aceita o parÃ¢metro opcional (delimitado pelos colchetes) para poder produzir raiz $n$-Ã©sima. 
O \verb+$\sqrt[n]{x}$+ produz $\sqrt[n]{x}$. 
O Exemplo~\ref{ex03:simbolos} ilustra algumas letras gregas e sÃ­mbolos. 
Note que uma tabela completa de sÃ­mbolos do \LaTeX{} \cite{book:pakin:2017} estÃ¡ disponÃ­vel gratuitamente.

%\begin{singlespacing}
% \begin{LTXexample}[pos=b,caption={ex02-01.tex, parte b},label=ex:02-01:b]
\begin{ltxlisting}[caption={ex03-simbolos.tex},label=ex03:simbolos]
Algumas letras gregas minÃºsculas: $\alpha, \beta, \gamma, \lambda, \pi$.

Algumas letras gregas MaiÃºsculas: $\Gamma, \Delta, \Lambda, \Pi, \Omega$.

Alguns sÃ­mbolos: 
$\le, \ge, \neq, \in, \notin, \exists, \nexists, \to, \infty, \forall, \therefore$.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

\section{Modo \texttt{displaystyle} no meio do texto}
As fÃ³rmulas no meio do texto (\texttt{textstyle}) sÃ£o produzidos de forma que economize a sua altura. 
Por isso, elementos que normalmente ficariam empilhados, ficariam como Ã­ndice e expoente. 
Por exemplo, $\displaystyle \lim_{n\to\infty}x_n$ no modo \texttt{textstyle}  ficaria como $\lim_{n\to\infty}x_n$. 
Para que uma fÃ³rmula fique como \texttt{displaystyle} no meio do texto\index{modo matematico@{modo matemÃ¡tico}!displaystyle!meio do texto}, coloque \verb+\displaystyle+ no comeÃ§o das fÃ³rmulas. O Exemplo~\ref{ex03:displaystyle} ilustra o caso.

%\begin{singlespacing}
\begin{ltxlisting}[pos=b,caption={ex03-displaystyle.tex},label=ex03:displaystyle]
Temos que $\lim_{n\to\infty}x_n=0$ %textstyle
e  $\displaystyle \lim_{n\to\infty}x_n=0$ %displaystyle

Outros casos $\sum_{i=0}^n i = 0+1+\cdots+n$
e $\displaystyle \sum_{i=0}^n i = 0+1+\cdots+n$.

ForÃ§ando a colocar encima/embaixo
\[ \int\limits_I f = \int^b_af(x)dx \]
ForÃ§ar a nÃ£o colocar encima/embaixo
\[ \sum\nolimits_{k=0}^n x_k = 1 \]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para forÃ§ar a colocar elementos embaixo em vez de como Ã­ndice quando usa o ``\verb+_+'', usa-se o comando \verb+\limits+, como no Exemplo~\ref{ex03:displaystyle}.
% ObservaÃ§Ã£o: No LuaLaTeX 0.8 (2018-02-17), \limits acima nÃ£o funcionou bem. O valor de baixo fica um pouco mais para direita.
% Idem para \mathop{}. No XeLaTeX, fica igual a do PDFLaTeX.
% Na versao 2018, ja estava resolvido tal problema

Note que, para colocar no modo \texttt{textstyle} nas fÃ³rmulas \texttt{displaystyle}, existe o comando \verb+\textstyle+\index{modo matematico@{modo matemÃ¡tico}!textstyle} que Ã© usado de forma similar a \verb+\displaystyle+. 
Nesta famÃ­lia de comandos, tambÃ©m existe o comando \verb+\scriptstyle+\index{modo matematico@{modo matemÃ¡tico}!scriptstyle} que tenta  reduzir o tamanho das fÃ³rmulas.

\section{EquaÃ§Ã£o enumerada e referÃªncias cruzadas}

Uma equaÃ§Ã£o enumerada Ã© produzido pelo ambiente \texttt{equation}\index{equation}. 
Quando algum comando do \LaTeX{} enumera automaticamente (equaÃ§Ãµes, seÃ§Ãµes, capÃ­tulos, figuras, tabelas, itens de istas enumeradas, teoremas, etc), sua enumeraÃ§Ã£o pode ser guardada e usada no outro lugar, recurso conhecido como referÃªncia cruzada\index{referÃªncia cruzada}. 
Para tanto, coloca-se o comando \verb+\label{nome do rÃ³tulo}+\index{label@\verb+\label+} que produz um rÃ³tulo\index{rÃ³tulo} que armazena a enumeraÃ§Ã£o e \verb+\ref{nome do rÃ³tulo}+\index{ref@\verb+\ref+} aonde quer colocar esta enumeraÃ§Ã£o.
O Exeplo~\ref{ex03:ref} ilustra o uso da referÃªncia cruzada.

%\begin{singlespacing}
%% truque do https://www.latex4technics.com/?note=30gq
%% para referencia funcionar no LTXexample
%\let\orilabel\label
%\setcounter{lstorichapter}{\value{chapter}}
%\begin{LTXexample}[pos=b,caption={ex02-02.tex},label=ex:02-02,preset={\let\label\orilabel,\setcounter{chapter}{1}}]
\begin{ltxlisting}[caption={ex03-ref.tex},label=ex03:ref]
\begin{equation}\label{eq:pitagoras}
a^2=b^2+c^2
\end{equation}
Pela EquaÃ§Ã£o~\ref{eq:pitagoras} da pÃ¡gina~\pageref{eq:pitagoras}\ldots
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}

Como jÃ¡ foi mencionado, o ambiente \texttt{equation} produz enumeraÃ§Ã£o automÃ¡tica na equaÃ§Ã£o. 
Assim, poderÃ¡ criar um rÃ³tulo para referenciar o nÃºmero desta equaÃ§Ã£o com o comando \verb+\label+. 
O nome do rÃ³tulo escolhido para esta equaÃ§Ã£o foi \texttt{eq:pitagoras}. 
Tome cuidado para nÃ£o usar espaÃ§os, letras acentuadas ou sÃ­mbolos especiais, o que dificulta a depuraÃ§Ã£o ou causa erros. 
No Exemplo~\ref{ex03:ref}, ``:'' foi usado em vez do espaÃ§o para separar palavras. 
Note que foi colocado o prefixo ``eq'' para rÃ³tulo da equaÃ§Ã£o. 
Como pode ter teoremas, equaÃ§Ãµes, figuras, etc que podem sugerir o mesmo nome, Ã© costume usar algum prefixo para cada categoria, o que facilitarÃ¡ a lembrar o elemento que Ã© associado ao rÃ³tulo.
Para referenciar (usar o nÃºmero) da equaÃ§Ã£o, foi usado o comando \verb+\ref+ e para referenciar a pÃ¡gina, foi usado o comando \verb+\pageref+\index{pageref@\verb+\pageref+}. 
Note que os editores especializados para \LaTeX, costuma ter recursos de listar os rÃ³tulos existentes para referÃªncias, o que facilita a editoraÃ§Ã£o e prevenir erros.
TambÃ©m note o uso de ``\verb+~+''\index{\~{}@\verb+~+} em vez do espaÃ§o para usar referÃªncias, o que evita que nome ``EquaÃ§Ã£o'' fique no final de uma linha e numeraÃ§Ã£o no comeÃ§o da prÃ³xima linha.

Quando usa a referÃªncia cruzada, as enumeraÃ§Ãµes sempre estarÃ£o coerentes e se usar o pacote \texttt{hyperref}, terÃ£o link automÃ¡ticos no documento PDF.

Uma observaÃ§Ã£o importante Ã© o fato do \LaTeX{} utilizar arquivo auxiliar para armazenar rÃ³tulos. Assim, quando usa as referÃªncias cruzadas, precisam compilar o documento duas vezes para ter a enumeraÃ§Ã£o ou link correta. 

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Estrutura de Texto}\label{chap:estrutura:texto}
Neste capÃ­tulo, vamos ver sobre a formataÃ§Ã£o de textos.

\section{Alinhamentos}
O alinhamento do texto padrÃ£o no \LaTeX{} Ã© justificado\index{alinhamento!justificado}, isto Ã©, alinhado tanto a direita como a esquerda.
Para alinhar somente a esquerda\index{alinhamento!esquerda} ou a direita\index{alinhamento!direita}, usa-se o ambiente \texttt{flushleft}\index{flushleft} e \texttt{flushright}\index{flushright}. 
Para centralizar\index{alinhamento!centralizado}, usa-se o ambiente \texttt{center}\index{center}.
O Exemplo~\ref{ex04:alinhamento} ilustra os alinhamentos de texto.

%\begin{singlespacing}
% \begin{LTXexample}[pos=b,caption={ex01-04.tex},label=ex:01-04]
\begin{ltxlisting}[caption={ex04-alinhamento.tex},label=ex04:alinhamento]
ParÃ¡grafo normal.
\begin{center}
ParÃ¡grafo centralizado.
\end{center}
\begin{flushright}
ParÃ¡grafo alinhado a direita.
\end{flushright}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Quando quer alinhar dentro do ambiente (o que tem \verb+\begin+ e \verb+\end+, poderÃ¡ colocar como comando \verb+\center+\index{center@\verb+\center+}, \verb+\flushleft+\index{flushleft@\verb+\flushleft+} e \verb+\flushright+\index{flushright@\verb+\flushright+}, respectivamente que o alinhamento se aplicarÃ¡ atÃ© obter o final do ambiente em questÃ£o.

Para ter trecho justificado em ambos os lados dentro do ambiente com alinhamento a esquerda, direita ou centralizada, costuma colocar dentro do ambiente \texttt{minipage} que veremos na SeÃ§Ã£o~\ref{sec:minipage}.

NÃ£o Ã© o alinhamento, mas para incluir linhas em branco\index{linhas em branco}, deverÃ¡ colocar ``\verb+\+'' intercalado com linhas em branco.
Para indicar uma nova linha\index{nova linha} (finalizar uma linha sem esperar atingir final de linha), coloca se ``\verb+\\+''\index{\textbackslash\textbackslash} ou \verb+\newline+\index{newline@\verb+\newline+}. 
Para inserir quebra de linhas\index{quebra de linha}, mas que justifique, deverÃ¡ usar o \verb+\linebreak+\index{linebreak@\verb+\linebreak+}, o que Ã© ilustrado no Exemplo~\ref{ex04:nova:linha}

%\begin{singlespacing}
\begin{ltxlisting}[caption={ex04-nova-linha.tex},label=ex04:nova:linha]
Esta Ã© a primeira linha \\
e esta e a segunda linha

\

Esta Ã© a primeira linha \linebreak
e esta Ã© a segunda linha.
\end{ltxlisting}
%\end{singlespacing}

Note o uso de ``\verb+\+''\index{\textbackslash@\verb+\+} para inserir linha em branco.

\section{Notas de rodapÃ© e Ãªnfase de texto}

Nota de rodapÃ©\index{nota de rodapÃ©} Ã© colocado pelo comando \verb+\footnote{&lt;texto&gt;}+\index{footnote} que colocarÃ¡ marca de rodapÃ© no local e \verb+&lt;texto&gt;+ na parte inferior da pÃ¡gina atual.

Ele Ã© usado para colocar alguma observaÃ§Ã£o, mas nÃ£o quer que conste como conteÃºdo do documento. 
Por exemplo, explicaÃ§Ã£o dos termos que aparece, podem ser colocados como rodapÃ©. Veja o Exemplo~\ref{ex04:rodape}

% showexpl usa \parbox e nÃ£o o minipage.
% Assim, nao hÃ¡ como colocar footnote embaixo dele.
% Usando lstlisting e minipage para ter mesmo effeito de showexpl
%\begin{singlespacing}
%\begin{lstlisting}[caption={ex06-08.tex},label=ex:06-08]
\begin{ltxlisting}[caption={ex04-rodape.tex},label=ex04:rodape]
No meio do texto, podemos colocar a nota de rodapÃ©\footnote{nota que fica na parte inferior da pÃ¡gina} para explicaÃ§Ãµes adicionais tais como significado da palavra, ou fonte que foi usada.
\end{ltxlisting}
% \end{singlespacing}

%\noindent
%\begin{framed}
%\begin{singlespacing}
%\begin{minipage}{\linewidth}
%\renewcommand{\thempfootnote}{\arabic{mpfootnote}}
%No meio do texto, podemos colocar a nota de rodapÃ©\footnote{nota que fica na parte inferior da pÃ¡gina} para explicaÃ§Ãµes adicionais tais como significado da palavra, ou fonte que foi usada.
%\end{minipage}
%\end{singlespacing}
%\end{framed}

Para enfatizar o texto\index{enfase@{Ãªnfase} de texto} dentro do contexto como os termos a ser definidos, usa-se o comando \verb+\emph{texto}+\index{emph@\verb+\emph+} ou o ambiente \texttt{em}\index{em}. 
Este comando (ou ambiente) alterna entre fontes romano reto e itÃ¡lico para que o trecho seja enfatizado.
%Outra Ãªnfase comum as palavras Ã© usar o negrito que faz destacar no meio do texto. O negrito Ã© produzido pelo comando \verb+\textbf{texto}+ ou pelo ambiente \texttt{bfseries}.
Note que os ambientes \texttt{em} tem a versÃ£o de comandos \verb+\em+\index{em@\verb+\em+} que pode ser usados dentro do outro ambiente (como os comandos de alinhamento).
Caso nÃ£o esteja dentro do ambiente, poderÃ¡ delimitar simplesmente pelos chaves e colocar o comando no comeÃ§o dele. Isto estÃ¡ ilustrado no Exemplo~\ref{ex04:enfase}.

%\begin{singlespacing}
% \begin{LTXexample}[pos=b,caption={ex03-01.tex},label=ex:03-01]
\begin{ltxlisting}[caption={ex04-enfase.tex},label=ex04:enfase]
\emph{Enfatizado} ou 
\begin{em}enfatizado\end{em}
ou 
\begin{center}
\em Centralizado e enfatizado.
\end{center}
ou
{\em Enfatizado.}
Texto normal.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

%Para as diversas necessidades, Ã© possÃ­vel controlar as fontes, o que serÃ¡ estudado no CapÃ­tulo~\ref{chap:fontes}.

\section{Listas}

O texto pode ter vÃ¡rias estruturas bÃ¡sicas, tais como listas, cotaÃ§Ãµes, etc.

Uma das mais utilizadas Ã© listas. 
%Veremos alguns deles.

%Vamos comeÃ§ar pelas listas.

Existem trÃªs tipos bÃ¡sicos de listas\index{lista} que sÃ£o especificadas pelos ambientes \texttt{enumerate}\index{enumerate} (lista enumerada\index{lista!enumerada}), \texttt{itemize}\index{itemize} (lista de itens\index{lista!itemizada}) e \texttt{description}\index{dscription} (lista de descriÃ§Ãµes\index{lista!descriÃ§Ã£o}).
Dentro de cada ambiente, cada item\index{lista!item} Ã© iniciado com o comando \verb+\item+\index{item@\verb+\item+}.
O Exemplo~\ref{ex04:listas} ilustra algumas destas listas.

%\begin{singlespacing}
% \begin{LTXexample}[pos=b,caption={ex06-01.tex},label=ex:06-01]
\begin{ltxlisting}[caption={ex04-listas.tex},label=ex04:listas]
\begin{enumerate}
  \item Este Ã© o primeiro item da lista enumerada.
  \item Agora, segundo item da lista enumerada
\end{enumerate}
\begin{itemize}
  \item Este Ã© o primeiro item da lista de itens.
  \item Agora, segundo item da lista de itens.
\end{itemize}
\begin{itemize}
  \item Item com marcador padrÃ£o.
  \item [$\ast$] Item com marcador personalizado.
\end{itemize}
\begin{description}
  \item [enumerada] Cada item recebe uma enumeraÃ§Ã£o.
  \item [itenizada] Em vez de enumeraÃ§Ã£o, recebe um marcador.
  \item [descriÃ§Ã£o] DescriÃ§Ã£o das palavras.
\end{description}
\end{ltxlisting}
%\end{singlespacing}

As listas podem conter outras listas como itens\index{sub listas}. 
Veja Exemplo~\ref{ex04:sublistas}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-01.tex, parte b},label=ex:06-01:b]
\begin{ltxlisting}[caption={ex04-sublistas.tex},label=ex04:sublistas]
\begin{enumerate}
  \item Este Ã© o primeiro item da lista enumerada.
  \item Segundo item Ã© lista de itens.
    \begin{itemize}
      \item Este Ã© o primeiro item da lista de itens.
      \item Agora, segundo item da lista de itens.
    \end{itemize}
  \item Este Ã© o terceiro item da lista enumerada.
\end{enumerate}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para trabalhar com listas enumeradas, Ã© aconselhÃ¡vel carregar o pacote \texttt{enumerate}\index{enumerate} que permite controlar as enumeraÃ§Ãµes\index{lista!enumerada!controle}.
Para isso, acrescente o comando \verb+\usepackage{enumerate}+ no \texttt{preamble} do documento.

No \texttt{enumerate}, passa-se um parÃ¢metro opcional que seria o modelo de enumeraÃ§Ã£o do primeiro item. 
Neste modelo, ``1'', ``i'', `` I'', ``a'' e ``A'' serÃ£o considerados contadores e eles sÃ£o incrementados a cada item.
Se aparecer estas letras que nÃ£o sejam contadores, delimite pelos chaves.
Veja o Exemplo~\ref{ex04:enumerate}.

%\begin{singlespacing}
% \begin{LTXexample}[pos=b,caption={ex06-01.tex, parte c},label=ex:06-01:c]
\begin{lstlisting}[caption={ex04-enumerate.tex},label=ex04:enumerate]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\usepackage{enumerate}
\begin{document}
\begin{enumerate}[Propr{i}ed{a}de 1)]
  \item $x + (y + z) = (x + y) + z$ (associativa)
  \item $x + y = y + x$ (comutativa)
\end{enumerate}
\end{document}
\end{lstlisting}
%\end{singlespacing}

% Precisa acertar a margem esquerda (conflito dos pacotes, ou
% por estar dentro do ambiente?
%\begin{singlespacing}
\begin{ltxlistingout}
\begin{enumerate}[label={Propriedade \arabic*)},leftmargin=8em]%listparindent={\widthof{\labelitemi}}]
  \item $x + (y + z) = (x + y) + z$ (associativa)
  \item $x + y = y + x$ (comutativa)
\end{enumerate}
\end{ltxlistingout}
%\end{singlespacing}
 
Se precisar de ambientes extras de listas diferentes do padrÃ£o, podemos definir usando o ambiente \texttt{list}\index{list}, o que nÃ£o vamos entrar em detalhes.

\section{Tabelas}

Uma tabela\index{tabela} no modo texto Ã© produzido pelo ambiente \texttt{tabular}\index{tabular} e a tabela no modo matemÃ¡tico Ã© produzido pelo ambiente \texttt{array}\index{array}, que apresentam o mesmo sintaxe e a mesma funcionalidade.

O argumento obrigatÃ³rio destes ambientes Ã© o ``alinhamento'' das colunas que devem ser especificados com ``l'' (left), ``c'' (center), ``r'' (right) ou ``p\{largura\}'' (texto justificado com largura fixa). 
Para traÃ§ar uma linha vertical entre colunas ou no bordo, usa-se o ``\verb+|+''\index{"@vertical@\vert}, junto as especificaÃ§Ãµes de alinhamento.
Os elementos da tabela Ã© indicado, separado pelo ``\&amp;''\index{\&amp;}, sendo que a mudanÃ§a de linhas Ã© feito pelo ``\verb+\\+''\index{\textbackslash\textbackslash} que Ã© \verb+\newline+. 
Para traÃ§ar uma linha horizontal, usa-se o comando ``\verb+\hline+''\index{hline@\verb+\hline+}.

O Exemplo~\ref{ex04:tabular} Ã© um exemplo de tabelas no modo texto.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-02.tex},label=ex:06-02]
\begin{ltxlisting}[caption={ex04-tabular.tex},label=ex04:tabular]
  \begin{tabular}{||l|c|r||} % linhas verticais duplas na borda e simples entre colunas
   \hline % uma linha horizontal no comeco da tabela
       &amp; 2 &amp; 3 \\ \hline % uma linha horizontal apos esta linha
   abc &amp; 3 &amp; 4 \\
   3   &amp; 4 &amp; $\frac{1+\sqrt{2}}{5}$ \\ \hline % uma linha horizontal pra finalizar
  \end{tabular}
  
  Tabela com uma coluna de largura fixa.

  \begin{tabular}{|p{3.5cm}|l|} \hline
   cenouras  (500g)          &amp; R\$0,50  \\ \hline
   cogumelos (vidro de 500g) &amp; R\$5,00  \\ \hline
   batata    (1Kg)           &amp; R\$1,20  \\ \hline \hline
   total                     &amp; R\$7,20  \\ \hline
\end{tabular}

Tabela de largura fixa

% largura da tabela Ã© 0.5 de \columnwidth (largura da linha)
\begin{tabular*}{0.5\columnwidth}{@{\extracolsep{\fill}}|l|c|r|}
   \hline
       &amp; 2 &amp; 3 \\ \hline
   abc &amp; 3 &amp; 4 \\
   3   &amp; 4 &amp; $\frac{1+\sqrt{2}}{5}$ \\ \hline
  \end{tabular*}
  
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para mesclar cÃ©lulas\index{tabela!mesclar cÃ©lulas} (juntar mais de uma cÃ©lula como sendo uma Ãºnica cÃ©lula), usa-se o comando \texttt{multicolumn}\index{multicolumn} que tem como primeiro argumento, o nÃºmero de cÃ©lulas a serem juntados, o segundo especifica o alinhamento da coluna e terceiro, o que vai colocar nesta cÃ©lula. 
Note que as formataÃ§Ãµes de colunas do \texttt{multicolumn} deve ser especificado um por um, independente de estar especificado ou nÃ£o no comeÃ§o da tabela.

No Exemplo~\ref{ex04:multicolumn} com o ambiente \texttt{array} (para ambiente matemÃ¡tico), foi usado o \texttt{multicolumn} para juntar duas primeiras colunas da primeira linha, centrando os dados e traÃ§ando linha vertical antes e depois da cÃ©lula.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-02.tex, parte b},label=ex:06-02:b]
\begin{ltxlisting}[caption={ex04-multicolumn.tex},label=ex04:multicolumn]
\[
  \begin{array}{||l|c|r||} \hline
   \multicolumn{2}{||c|}{2} &amp; 3 \\ \hline
   2^3 &amp; 3 &amp; 4 \\
   3 &amp; 4 &amp; \frac{1+\sqrt{2}}{5} \\ \hline  
  \end{array}
\]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para traÃ§ar linhas horizontais apenas em algumas cÃ©lulas, usa-se o comando \texttt{\textbackslash cline\{i-j\}}\index{cline@\verb+\cline+} onde ``\texttt{i}'' e ``\texttt{j}'' sÃ£o colunas iniciais e finais onde a linha Ã© traÃ§ada. Veja o Exemplo~\ref{ex04:cline}.

%\begin{singlespacing}
% \begin{LTXexample}[pos=b,caption={ex06-02.tex, parte c},label=ex:06-02:c]
\begin{ltxlisting}[caption={ex04-cline.tex},label=ex04:cline]
\begin{tabular}{||l|lr||} \hline
\textbf{Produto}  &amp; \multicolumn{2}{|c||}{\textbf{PreÃ§os}} \\\hline
   cenouras   &amp; R\$1.00 &amp; (por Kg) \\ \cline{2-3}  
              &amp; R\$0.20 &amp; (por unidade) \\ \hline
   cogumelos  &amp; R\$4.00 &amp; \multicolumn{1}{|r||}{(por vidro)} \\ \cline{1-1} \cline{3-3}
   pÃªssego    &amp;   &amp; \multicolumn{1}{|r||}{(por Kg)} \\ \hline
 \end{tabular}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

No Exemplo~\ref{ex04:cline}, o comando \texttt{multicolumn} foi usado somente para formatar a coluna (colocar linha vertical) e nÃ£o para juntar cÃ©lulas.

Para alinhar os decimais, usamos o pacote \texttt{dcolumn}\index{dcolum}
que define um novo especificador de colunas na tabela, especificado por \texttt{D\{&lt;decimal em TeX&gt;\}\{&lt;decimal em PDF&gt;\}\{&lt;casas decimais&gt;\}}.
 
\texttt{&lt;decimal em TeX&gt;} Ã© a especificaÃ§Ã£o de pontos decimais usado no arquivo TeX (como escreve no TeX), 
\texttt{&lt;decimal em PDF&gt;} Ã© o decimal utilizado para documento de saÃ­da PDF, e o \texttt{&lt;casas decimais&gt;} Ã© o nÃºmero de casas decimais a serem considerados (casas decimais excedentes serÃ£o truncados).
Caso a especificaÃ§Ã£o do nÃºmero de casas decimais for negativo, qualquer nÃºmero de casas decimais Ã© aceito sem ser truncados (alinhando nos pontos decimais).
 
Como especificar trÃªs parÃ¢metros toda vez que precise alinhar os pontos decimais Ã© trabalhoso, Ã© sugerido que defina um especificador no \texttt{preamble}, usando o comando \texttt{newcolumntype}\index{newcolumntype@\verb+newcolumntype+} como abaixo:

\begin{singlespacing}
\begin{lstlisting}[language={[LaTeX]TeX}]
\usepackage{dcolumn}
\newcolumntype{d}[1]{D{.}{\cdot}{#1}}
\newcolumntype{.}{D{.}{.}{-1}}
\newcolumntype{,}{D{,}{,}{2}}
\end{lstlisting}
\end{singlespacing}

Ele define especificador de colunas ``d{&lt;num&gt;}'' que Ã© interpretado como \texttt{D\{.\}\{\cdot\}\{&lt;num&gt;\}} e, ``.'' e ``,'' que serÃ£o interpretados como sendo \texttt{D\{.\}\{.\}\{-1\}} e \texttt{D\{,\}\{,\}\{2\}} respectivamente.

Note que podemos modificar os comandos anteriores para que ``.'' seja convertida para ``,'' ou vice versa.
Veja o Exemplo~\ref{ex04:dcolumn}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-02.tex, parte d},label=ex:06-02:d]
\begin{ltxlisting}[caption={ex04-dcolumn.tex},label=ex04:dcolumn]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\usepackage{dcolumn}
\newcolumntype{d}[1]{D{.}{\cdot}{#1}}
\newcolumntype{.}{D{.}{.}{-1}}
\newcolumntype{,}{D{,}{,}{2}}
\begin{document}
\begin{tabular}{|d{-1}|d{2}|.|,|}
\hline
1.2   &amp; 1.2   &amp;1.2    &amp;1,2    \\
1.23  &amp; 1.23  &amp;12.5   &amp;300,2  \\
1121.2&amp; 1121.2&amp;861.20 &amp;674,29 \\
184   &amp; 184   &amp;10     &amp;69     \\
.4    &amp; .4    &amp;       &amp;,4     \\
      &amp;       &amp;.4     &amp; \\ \hline
      
\end{tabular}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para ter as colunas igualadas automaticamente, usamos o pacote \texttt{tabularx}\index{tabularx} que define o ambiente \texttt{tabularx} onde primeiro argumento Ã© largura da tabela e segundo Ã© especificaÃ§Ã£o de colunas, mas apresenta um especificador de coluna especial ``X''. 
Todas as colunas especificadas por ``X'' terÃ¡ mesma largura 
(largura destas colunas depende da largura da tabela).
Veja o Exemplo~\ref{ex04:tabularx}.

%\begin{singlespacing}
% \begin{LTXexample}[pos=b,caption={ex06-02.tex, parte e},label=ex:06-02:e]
\begin{ltxlisting}[caption={ex04-tabularx.tex},label=ex04:tabularx]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\usepackage{tabularx}
\begin{document}
\begin{tabularx}{\linewidth}{|c|X|c|X|}
\hline
\multicolumn{2}{|c|}{\texttt{multicolumn} } &amp;
\scshape Terceira &amp; \scshape Quarta \\ \hline
 primeira &amp; a largura desta coluna depende da largura da 
tabela. &amp;
 terceira &amp; Quarta coluna funciona da forma similar a segunda e terÃ¡ a mesma largura da segunda \\ \hline
\end{tabularx}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

No Exemplo~\ref{ex04:tabularx}, foi usado o comando \verb+\linewidth+\index{linewidth@\verb+\linewidth+} que Ã© a medida da largura da linha atual.
Este comando aparece frequentemente quando queremos ajustar largura de um elemento para largura da linha atual. 
Mais sobre medidas, veja a SeÃ§Ã£o~\ref{sec:medidas:unidade} e SeÃ§Ã£o~\ref{sec:medidas} do CapÃ­tulo~\ref{chap:medidas:contadores}. 

O comando \verb+\footnote{texto}+ que coloca o ``texto'' no rodapÃ© do documento funciona tambÃ©m dentro do \texttt{tabularx}.

Para ajustes de tabelas de forma mais profissional, pode precisar do \texttt{booktabs}\index{booktabs} (nÃ£o Ã© da categoria \texttt{base/required}) e se precisar traÃ§ar linhas duplas ou similares na tabela, podemos usar o pacote \texttt{hhline}\index{hhline}. TambÃ©m existe o pacote para tabela colorida \texttt{colortbl}\index{colortbl}  (nÃ£o Ã© da categoria \texttt{base/required}). NÃ£o entraremos em detalhes destes pacotes, mas vale observar que \texttt{hhline} nÃ£o funciona no \texttt{tabularx}.


\section{Ambiente de tabulaÃ§Ã£o}

Ambiente de tabulaÃ§Ã£o\index{tabulaÃ§Ã£o}\index{tabulaÃ§Ã£o} Ã© bastante Ãºtil para escrever conteÃºdos alinhados em diversos pontos, tal como no caso de algoritmos.
O ambiente Ã© especificado pelo \texttt{tabbing}\index{tabbing}.

Para marcar a posiÃ§Ã£o de tabulaÃ§Ã£o, usa-se o comando \verb+\=+.
Quando uma linha for usado somente para marcar posiÃ§Ã£o, coloca-se o comando \verb+\kill+\index{kill@\verb+\kill+} no final dele, para que o mesmo nÃ£o seja impresso.

Para formatar conteÃºdos tabulados, Ã© comum que queira tabular vÃ¡rias linhas sucessivas. 
O comando \verb"\+"\index{+@\verb'\+'} translada a margem esquerda por 
uma tabulaÃ§Ã£o e \verb"\-"\index{-@\verb+\-+} retira uma tabulaÃ§Ã£o da margem esquerda.
Com isso, podemos diagramar textos tabulados como no caso do algoritmo do Exemplo~\ref{ex04:tabbing}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-03.tex},label=ex:06-03]
\begin{ltxlisting}[caption={ex04-tabbing.tex},label=ex04:tabbing]
\begin{tabbing}
mm\=mm\=mm\=mm\=mm\= \kill % apenas para marcar tabulaÃ§Ã£o
\{ SoluÃ§Ã£o real da equaÃ§Ã£o $ax^2+bx+c=0$ pela fÃ³rmula de Baskara \} \\
  $\Delta = b^2-4ac$ \\
  se d &lt; 0 entÃ£o \+ \\ % aplicar uma tabulaÃ§Ã£o em todas linhas de abaixo
     escreva ``nÃ£o hÃ¡ soluÃ§Ã£o real'' \\
     pare \- \\ % retirar uma tabulaÃ§Ã£o de todas linhas de abaixo
  senÃ£o \+ \\
     $x_1 = \frac{-b-\sqrt{\Delta}}{2a}$ \\ 
     $x_2 = \frac{-b+\sqrt{\Delta}}{2a}$ \- \\ 
  fim se
\end{tabbing}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Se por algum motivo, pretende usar a acentuaÃ§Ã£o no modo \TeX{} dentro do ambiente \texttt{tabbing}, note que existe trÃªs acentos no modo \TeX{} que nÃ£o podem ser usados dentro do \texttt{tabbing} que sÃ£o \verb+\'+, \verb+\`+ e \verb"\=".
Estes comandos sÃ£o reservados para controle de tabulaÃ§Ã£o. 
Assim, estes trÃªs comandos devem ser substituÃ­dos pelos comandos \verb+\a'+\index{a'@\verb+\a'+}, \verb+\a`+\index{a`@\verb+\a`+} e \verb"\a="\index{a=@\verb+\a=+} respectivamente (eles sÃ³ funcionam dentro do \texttt{tabbing}).

Existem vÃ¡rios outros comandos que podem ser explorados no ambiente \texttt{tabbing}, mas nÃ£o vamos entrar em detalhes.
Uma observaÃ§Ã£o Ã© que no caso de algoritmos ou cÃ³digo fonte de programas, existem pacotes especÃ­ficos que implementam ambientes bem mais fÃ¡ceis e versÃ¡teis do que \texttt{tabbing}.

% citados, \texttt{quotation}, \texttt{verse} e \texttt{verbatim}
\section{Textos de citaÃ§Ãµes, versos e \texttt{verbatim}}

O ambiente \texttt{quote}\index{quote} Ã© usado para escrever citaÃ§Ãµes\index{citaÃ§Ãµes} (trecho de outra fonte), exemplos e frases importantes.
O Exemplo~\ref{ex04:quote} foi extraÃ­do do ``The Not (So) Short Introduction to \LaTeX2e'' \cite{book:oeticker:2018}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-04.tex},label=ex:06-04]
\begin{ltxlisting}[caption={ex04-quote.tex},label=ex04:quote]
``Uma regra da tipografia sobre
o comprimento de uma linha Ã©:
\begin{quote}
Em mÃ©dia, nenhuma linha deve
ser maior que 66 caracteres.
\end{quote}
Este Ã© o motivo pelo qual as
pÃ¡ginas do \LaTeX{} possuem as
bordas tÃ£o grandes e tambÃ©m o
motivo pelo qual os jornais usam
impressÃ£o em colunas''.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

No ambiente \texttt{quote} usado para colocar citaÃ§Ãµes (trecho tirado da outra fonte), o texto inteiro ficarÃ¡ com margens maiores a esquerda e a direita, o que tornaria visÃ­vel quando colocar texto maior.

Quando o texto da citaÃ§Ã£o Ã© formado por vÃ¡rios parÃ¡grafos, pode querer que os parÃ¡grafos sejam indentados (tabulados para a direita).
Neste caso, use o ambiente \texttt{quotation}\index{quotation} em vez de 
\texttt{quote}.
O Exemplo~\ref{ex04:quotation} tambÃ©m usa o trecho do \cite{book:oeticker:2018} que explica os ambientes similares a \texttt{quote}, ficou com parÃ¡grafo indentado:

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-04.tex, parte b},label=ex:06-04:b]
\begin{ltxlisting}[caption={ex04-quotation.tex},label=ex04:quotation]
Veja que a cÃ³pia do trecho do ``The Not (So) Short Introduction to \LaTeX2e'' que explica os ambientes similares a \texttt{quote}, ficou com parÃ¡grafo indentado:
\begin{quotation}
``Existem dois ambientes similares: os ambientes quotation e verse.
Como ambiente \texttt{quotation} faz a indentaÃ§Ã£o dos parÃ¡grafos, 
ele Ã© usado para citaÃ§Ãµes longas que se estendem por vÃ¡rios parÃ¡grafos. 
O ambiente \texttt{verse} Ã© usado em poemas onde as quebras de linhas sÃ£o importantes. 
As linhas sÃ£o separadas por \verb+\\+ e por uma linha em branco no fim de cada verso''.
\end{quotation}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

No caso de versos\index{verso}, a linha que for quebrado pela falta de espaÃ§os, mas que constitui a mesma linha de cima, deve estar tabulado para direita.
O ambiente \texttt{verse}\index{verse} encarrega deste serviÃ§o.

O Exemplo~\ref{ex04:verse} Ã© um exemplo do ``Humpty Dumpty'' do \cite{book:oeticker:2018}, colocado na caixa com largura insuficiente.
Para criar caixas mais estreitas, foi usado o ambiente \texttt{minipage} que serÃ¡ tratado na SeÃ§Ã£o~\ref{sec:minipage} do CapÃ­tulo~\ref{chap:estrutura:texto}.


%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-04.tex, parte c},label=ex:06-04:c]
\begin{ltxlisting}[caption={ex04-verse},label=ex04:verse]
\begin{flushleft}
\begin{minipage}{0.5\linewidth}
\begin{verse}
Humpty Dumpty sat on a wall:\\
Humpty Dumpty had a great fall.\\
All the King's horses and all
the King's men\\
Couldn't put Humpty together
again.
\end{verse}
\end{minipage}
\end{flushleft}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para inserir o cÃ³digo fonte de programas\index{cÃ³digo fonte!programma} ou similar, usa-se o ambiente \texttt{verbatim}\index{verbatim} que coloca o texto de jeito que estÃ¡ (cÃ³pia \texttt{verbatim}). Este ambiente possui tambÃ©m a versÃ£o ``*'' \texttt{verbatim*}\index{verbatim*}.
Sem o ``*'', coloca o espaÃ§o e com o ``*'', coloca o caractere ``\verb*+ +'' no lugar de espaÃ§o.
Veja a diferenÃ§a entre o cÃ³digo colocado pelo \texttt{verbatim} e \texttt{verbatim*} do Exemplo~\ref{ex04:verbatim}.
 
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-04.tex, parte d},label=ex:06-04:d]
\begin{ltxlisting}[caption={ex04-verbatim.tex},label=ex04:verbatim]
\begin{verbatim}
\begin{quote}
texto citado, texto importante ou exemplos.
\end{quote}
\end{verbatim}

\begin{verbatim*}
\begin{quote}
texto citado, texto importante ou exemplos.
\end{quote}
\end{verbatim*}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O ambiente \texttt{verbatim} Ã© usado para colocar conteÃºdos que devem ser lidos letra por letra, como no cado do cÃ³digo fonte de programas ou trecho de documentos muito importantes.

Para nome das variÃ¡veis do programa, nome de arquivos, etc que sÃ£o curtos, mas tambÃ©m precisam ser lidos letra por letra, existe a versÃ£o comando que Ã© \verb+\verb+\index{verb@\verb+\verb+}.
No \verb+\verb+, o primeiro caractere Ã© o delimitador do argumento que deve ser usado tambÃ©m para indicar o final do argumento. Este delimitador pode ser escolhido (sÃ³ nÃ£o pode ser ``*''), mas fique atento que o final do argumento deve usar mesmo caractere. 
A versÃ£o com ``*''\index{verb*@\verb+\verb*+} exibe o espaÃ§o como``\verb+ +''.
Veja o Exemplo~\ref{ex04:verb}.

%\begin{singlespacing}
% \begin{LTXexample}[pos=b,caption={ex06-04.tex, parte e},label=ex:06-04:e]
\begin{ltxlisting}[caption={ex04-verb.tex},label=ex04:verb]
O comando \verb+\%+ produz ``\%''.

Nome de arquivos com espaÃ§o tal como \verb*|meu arquivo.tex|
nÃ£o Ã© recomendado para \LaTeX, pois dificulta a sincronizaÃ§Ã£o de PDF com o cÃ³digo fonte.
Use ``\verb+-+'' no lugar de espaÃ§o, como em \verb*|meu-arquivo.tex|.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para textos longos no ambiente \texttt{verbatim} deve carregar o pacote \texttt{verbatim}\index{verbatim} no ``preamble''.
Este pacote efetua algumas melhorias no ambiente \texttt{verbatim} e tambÃ©m implementa o comando \verb|\verÂ­batiminput|\index{verbatiminput@\verb+\verbatiminput+} que insere o arquivo externo diretamente no ambiente \texttt{verbatim}.

Note que, para inserir trecho dos cÃ³digos fontes de programas, existem pacotes apropriados que Ã© mais prÃ¡tico do que usar o ambiente \texttt{verbatim}.

% \texttt{minipage}
\section{Caixa \texttt{minipage}}\label{sec:minipage}
O ambiente \texttt{minipage}\index{minipage} cria uma ``caixa'' que nÃ£o Ã© exatamente uma estruturaÃ§Ã£o de textos, mas Ã© usado frequentemente quando nÃ£o encontra ambiente pronto para estruturaÃ§Ã£o desejada.

Por exemplo, podemos colocar um bloco de texto justificado no lado direito da pÃ¡gina, como no Exemplo~\ref{ex04:minipage}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-04.tex, parte f},label=ex:06-04:f]
\begin{ltxlisting}[caption={ex04-minipage.tex},label=ex04:minipage]
\begin{flushright}
\begin{minipage}{0.5\linewidth}
Este texto ficarÃ¡ justificado, mas como fica dentro de \texttt{minipage},
podemos colocar no lado direito. 
Para tanto, basta colocar \texttt{minipage} dentro do \texttt{flushright}. 
Claro que podemos colocar equaÃ§Ãµes, figuras e outros elementos sem problemas. 
Por exemplo, o Teorema de PitÃ¡goras foi posto abaixo:
\[ a^2=b^2+c^2 \]
\end{minipage}
\end{flushright}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O argumento obrigatÃ³rio para o ambiente \texttt{minipage} Ã© a largura da ``caixa''. 
No Exemplo~\ref{ex04:minipage}, foi usado \verb+0.5\linewidth+ que Ã© metade da largura da linha.

Este ambiente Ã© importante para colocar um parÃ¡grafo de texto dentro dos comandos que nÃ£o aceitam os parÃ¡grafos. 
Por exemplo, \verb+\fbox{}+\index{fbox@\verb+\fbox+} coloca moldura no elemento, mas nÃ£o aceita o parÃ¡grafo de texto. 
EntÃ£o, como colocar moldura no texto com vÃ¡rias linhas, ou nas figuras?
Ã‰ simples: colocar tudo no \texttt{minipage} e colocar dentro do \texttt{fbox}, como no Exemplo~\ref{ex04:minipage:fbox}.

%\let\orifootnote\footnote
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-04.tex, parte g},label=ex:06-04:g,preset=\let\footnote\orifootnote]
\begin{ltxlisting}[caption={ex04-minipage-fbox.tex},label=ex04:minipage:fbox,preset={\renewcommand{\thempfootnote}{\alph{mpfootnote}}}]
\fbox{
\begin{minipage}{0.75\linewidth} % 3/4 da largura de linha
Usando o \texttt{minipage}, podemos colocar moldura no texto com parÃ¡grafo como este.

O \texttt{fbox} nÃ£o acusa erros por ter parÃ¡grafo, pois o que estÃ¡ dentro de \texttt{minipage} Ã© apenas um ``objeto''. 

Este truque funciona tambÃ©m para outros comandos que impede de colocar parÃ¡grafos, mudar linhas, etc.

Note que as notas de rodapÃ©\footnote{rodapÃ© Ã© colocado pelo comando \texttt{\textbackslash footnote\{texto\} } } 
colocado dentro do minipage ficarÃ¡ na parte de baixo do \texttt{minipage} e nÃ£o da pÃ¡gina. 
O padrÃ£o dentro do \texttt{minipage} Ã© enumerar eles como letra e nÃ£o com nÃºmeros.
\end{minipage}
} % fbox
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para elementos com poucas linhas de cÃ³digo, a versÃ£o comando \verb+\parbox+\index{parbox@\verb+\parbox+} Ã© mais prÃ¡tico de ser usado.
Mas \verb+\parbox+ Ã© mais simplificado do que \texttt{minipage}, podendo perder alguns recursos. 
Por exemplo, alguns comandos e ambientes tais como \verb+\verb+ e \texttt{verbatim} nÃ£o funcionam dentro do \verb+\parbox+.
Assim, prefira usar o \texttt{minipage} sobre \verb+\parbox+.
Veja o Exemplo~\ref{ex04:parbox}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-07.tex},label=ex:06-07]
\begin{ltxlisting}[caption={ex04-parbox.tex},label=ex04:parbox]
Texto normal
\fbox{\parbox{3cm}{texto em vÃ¡rias linhas. \\ Com moldura.}}
Texto continua.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O primeiro parÃ¢metro do \verb+\parbox+ Ã© a largura, como no caso de \texttt{minipage}.
Tanto no \texttt{minipage} como o \texttt{parbox}, \verb+\linewidth+\index{linewidth@\verb+\linewidth+} dentro dele Ã© a largura da caixa passada como parÃ¢metro.

%linewidth: \the\linewidth
%
%\parbox{0.5\linewidth}{linewidth: \the\linewidth}
%
%\begin{minipage}{0.5\linewidth}
%linewidth: \the\linewidth
%\end{minipage}

\section{Colunas mÃºltiplas de texto}
Dependendo do documento, usa-se mais de uma coluna. 
Isto Ã© o caso de alguns artigos que podem usar duas colunas, ou \texttt{poster} que costuma usar trÃªs colunas ou mais. 
Mesmo no documento de uma coluna, o Ã­ndice remissivo costuma ficar em duas colunas. 
Apesar da maioria das classes de documentos tem implementado a opÃ§Ã£o de documento em duas colunas (opÃ§Ã£o \texttt{twocolumn}\index{twocolumn}) e comandos para alternar entre uma e duas colunas (comandos \verb+\onecolumn+\index{onecolumn@\verb+\onecolumn+}
e \verb+\twocolumn+\index{twocolumn@\verb+\twocolumn+}), a forma mais prÃ¡tico Ã© usar o pacote \texttt{multicol}\index{multicol} que implementa o ambiente \texttt{muticols}\index{multicols} que permite criar qualquer nÃºmero de colunas.
O padrÃ£o Ã© nÃ£o traÃ§ar linhas separando colunas, mas isto pode ser alterado, como no Exemplo~\ref{ex04:multicols}.
Aqui foi usado o \verb+\setlength+ para alterar a medida da espessura de linha que separa as colunas.
Medidas serÃ£o tratadas em SeÃ§Ã£o~\ref{sec:medidas:unidade} e SeÃ§Ã£o~\ref{sec:medidas} do CapÃ­tulo \ref{chap:medidas:contadores}.
O Exemplo~\ref{ex04:multicols} ilustra o uso de mÃºltiplas colunas.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex10-02.tex},label=ex:10-02]
\begin{ltxlisting}[caption={ex04-multicols.tex},label=ex04:multicols]
\documentclass[a4paper,12pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{color}
\usepackage{color}
\usepackage{multicol} % permite usar multiplas linhas
% espessura da linha que separa as colunas (0pt para desabilitar)
\setlength{\columnseprule}{1pt} 
\begin{document}
Este parÃ¡grafo estÃ¡ como uma Ãºnica coluna, padrÃ£o para maioria das classes de documentos.
\begin{multicols}{2} % inicia duas colunas
Este parÃ¡grafo estÃ¡ em duas colunas.
O ambiente \texttt{multicols} balanceia os conteÃºdos em colunas para que todas colunas tenham mesmo tamanho.
Se preferir que passe para prÃ³xima coluna somente quando a coluna ficar cheia, use a versÃ£o ``*'' que nÃ£o balanceia seus conteÃºdos.

Se quer finalizar a coluna manualmente, poderÃ¡ usar o \verb+\columnbreak+ que finaliza a coluna atual e passa para prÃ³xima coluna.
\end{multicols} % finaliza o mode de duas colunas
Agora estÃ¡ no modo de uma Ãºnica coluna novamente.
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

%A cor da linha de divisÃ£o tambÃ©m pode ser configurada, o que nÃ£o discutiremos aqui.
%% cor da linha que separa as colunas
%\def\columnseprulecolor{\color{blue}}

%
%
%Tratar do uso do pacote \texttt{multicols}

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Aprofundando nas FÃ³rmulas MatemÃ¡ticas}
Neste capÃ­tulo, vamos aprofundar mais nas fÃ³rmulas matemÃ¡ticas.
Para suporte Ã&nbsp; matemÃ¡tica, os pacotes \texttt{amssymb}\index{amssymb} e \texttt{amsmath}\index{amsmath} sÃ£o usados. 
Portanto, coloque o comando \verb+\usepackage{amssymb,amsmath}+ no \texttt{preamble} do documento.

\section{Usando algumas fontes matemÃ¡ticas}
Na matemÃ¡tica, alÃ©m dos sÃ­mbolos especiais e letras gregas, tambÃ©m usam alfabetos romanos de formatos diferentes. 
Por exemplo, para o conjunto dos nÃºmeros, costuma usar ``negrito do quadro negro'' (por exemplo, letra de traÃ§o duplo do AMS). 
Tais fontes sÃ£o selecionados pelos comandos apropriados. 
Aqui veremos alguns dos mais usados.

O conjunto dos nÃºmeros como real, racional, etc, usam a letra maiÃºscula em ``negrito do quadro negro''. Para tanto, poderemos usar o comando \verb+\mathbb+\index{modo matematico@{modo matemÃ¡tico}!alfabeto!\verb+\mathbb{ABCdef123}+, $\mathbb{ABCdef123}$}.

Para Conjunto de funÃ§Ãµes contÃ­nuas, costuma usar a letra ``C'' maiÃºscula na forma caligrÃ¡fica. 
A fonte caligrÃ¡fica Ã© indicado pelo comando \verb+\mathcal+\index{modo matematico@{modo matemÃ¡tico}!alfabeto!\verb+\mathcal{ABC}+, $\mathcal{ABC}$}.

Para algumas Ã¡reas de matemÃ¡tica, ainda usam a versÃ£o enfeitada de caracteres oferecido pelo comando \verb+\mathfrak+\index{modo matematico@{modo matemÃ¡tico}!alfabeto!\verb+\mathfrak{ABC}+, $\mathfrak{ABC}$}.

Para nome das funÃ§Ãµes, devemos usar a letra romana reta. 
O \LaTeX{} dispÃµe de comandos prontos para maioria das funÃ§Ãµes comumente usadas, mas as vezes precisamos escrever o nome da funÃ§Ã£o que nÃ£o estÃ¡ pronto, como o \verb+sen+ que representa a funÃ§Ã£o seno em portuguÃªs. 
Como \LaTeX{} implementa nome das funÃ§Ãµes em inglÃªs, o nome disponÃ­vel para \texttt{seno} Ã© \texttt{sin} produzido pelo comando \verb+\sin+. 
TambÃ©m notemos que no Brasil costuma usar \texttt{tg} para \texttt{tangente} e nÃ£o o \texttt{tan}.

Para estes e outros casos, podemos especificar os nomes das funÃ§Ãµes que \LaTeX{} nÃ£o dispÃµe, colocando dentro do comando \verb+\mathrm+\index{modo matematico@{modo matemÃ¡tico}!alfabeto!\verb+\mathrm{ABCdef123}+, $\mathrm{ABCdef123}$} que usa a fonte romana reta.
Veja o Exemplo~\ref{ex05:mat:fontes:basico}.

%\let\mathcal\amsmathcal
%\let\mathbb\amsmathbb
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-03.tex},label=ex:04-03]
\begin{ltxlisting}[caption={ex05-mat-fontes-basico.tex},label=ex05:mat:fontes:basico]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{amssymb,amsmath}
\begin{document}
Exemplo do uso de letra caligrÃ¡fica e de ``negrito do quadro negro''.
\[ f \in \mathcal{C}(\mathbb{R},\mathbb{R}) \]

Exemplo da letra romana maiÃºscula enfeitada $\mathfrak{R}$.

Exemplo do nome das funÃ§Ãµes
\[ \forall \theta \in \mathbb{R}, \cos^2\theta + \mathrm{sen}^2\theta = 1
\]

Outro exemplo: $\mathrm{tg}\theta = \frac{\mathrm{sen}\theta}{\cos\theta}$.

\[
\mathop{\mathrm{arg\,min}}_x f(x) = \{x : f(x) = \min_{x'} f(x')\}
\]
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\let\mathcal\orimathcal
%\let\mathbb\orimathbb
Se precisar deixar algum trecho da fÃ³rmula em negrito, poderÃ¡ usar o comando \verb+\bm+ do pacote \texttt{bm}\index{bm}.

Note que no \texttt{argmin}, o $x$ serÃ¡ colocado embaixo e nÃ£o como Ã­ndice. Para que o que foi colocado como Ã­ndice fique embaixo, usa-se o comando \verb+\mathop+\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\mathop+}.
O comando \verb+\,+ usado no meio de \texttt{argmin} Ã© um comando de espaÃ§amento usado na fÃ³rmula que insere pequeno espaÃ§o. Mais sobre espaÃ§amentos no modo matemÃ¡tico, veja a SeÃ§Ã£o~\ref{sec:medidas:unidade} e SeÃ§Ã£o~\ref{sec:medidas} do CaÃ­tulo~\ref{chap:medidas:contadores}.
 
Em geral, costuma definir comandos para nome das funÃ§Ãµes no \texttt{preamble} do documento para facilitar a digitaÃ§Ã£o. 
A definiÃ§Ã£o de comandos e ambientes serÃ£o estudados na SeÃ§Ã£o~\ref{sec:comandos} do CapÃ­tulo~\ref{chap:novo:comando}.

Os comandos para nome das funÃ§Ãµes prÃ©-definidas estÃ£o na SeÃ§Ã£o~\ref{sec:fonte:matematica} do CapÃ­tulo~\ref{chap:fontes}.
%A seguir, alguns nome das funÃ§Ãµes prÃ©-definidos.
%\verb+\arccos+, \verb+\cos+, \verb+\csc+, \verb+\exp+, \verb+\ker+, \verb+\limsup+, \verb+\min+, \verb+\sinh+, \verb+\arcsin+, \verb+\cosh+, \verb+\deg+, \verb+\gcd+, \verb+\lg+, \verb+\ln+, \verb+\Pr+, \verb+\sup+, \verb+\arctan+, \verb+\cot+, \verb+\det+, \verb+\hom+, \verb+\lim+, \verb+\log+, \verb+\sec+, \verb+\tan+, \verb+\arg+, \verb+\coth+, \verb+\dim+, \verb+\inf+, \verb+\liminf+, \verb+\max+, \verb+\sin+, \verb+\tanh+.

\section{Texto, funÃ§Ã£o por partes e matrizes}
Para inserir texto nas fÃ³rmulas, usa-se o comando \verb+\text+\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!\verb+\text+} do pacote \texttt{amsmath}. 
Evite de usar o \verb+\mbox+\index{mbox@\verb+\mbox+} para este propÃ³sito.

Para ilustrar, vamos usar o ambiente \texttt{cases}\index{modo matematico@{modo matemÃ¡tico}!ams!cases} usado para definir funÃ§Ãµes por partes, no Exemplo~\ref{ex05:mat:text}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-03.tex, parte b},label=ex:04-03:b]
\begin{ltxlisting}[caption={ex05-mat-text.tex},label=ex05:mat:text]
\[
|x| = \begin{cases}
-x, &amp; \text{ se } x &lt; 0 \\
x, &amp; \text{ caso contrÃ¡rio}\\
\end{cases}
\]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O caractere ``\&amp;''\index{\&amp;} indica o ponto de alinhamento e \verb+\\+\index{\textbackslash\textbackslash} indica a mudanÃ§a de linha.

O pacote \texttt{amsmath} dispÃµe de ambiente para produzir matrizes\index{modo matematico@{modo matemÃ¡tico}!matriz}. 
O ambiente \texttt{matrix}\index{modo matematico@{modo matemÃ¡tico}!ams!matrix} produz matriz sem o delimitador, \texttt{pmatrix}\index{modo matematico@{modo matemÃ¡tico}!ams!pmatrix} Ã© delimitado pelos parenteses\index{matriz!delimitador!parenteses}, \texttt{bmatrix}\index{modo matematico@{modo matemÃ¡tico}!ams!bmatrix} Ã© delimitado pelos colchetes\index{modo matematico@{modo matemÃ¡tico}!ams!matriz delimitado por cochetes},\texttt{Bmatrix}\index{modo matematico@{modo matemÃ¡tico}!ams!Bmatrix} Ã© delimitado pelas chaves\index{modo matematico@{modo matemÃ¡tico}!ams!matriz delimitado por chaves}, \texttt{vmatrix}\index{modo matematico@{modo matemÃ¡tico}!ams!vmatrix} Ã© delimitado pelas retas verticais\index{modo matematico@{modo matemÃ¡tico}!ams!matriz valor absoluto} e \texttt{Vmatrix}\index{modo matematico@{modo matemÃ¡tico}!ams!Vmatrix}  Ã© delimitado pelas retas verticais duplas\index{modo matematico@{modo matemÃ¡tico}!ams!matriz norma}.
Eles estÃ£o ilustradas no Exemplo~\ref{ex05:matriz}.
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-04.tex},label=ex:04-04]
\begin{ltxlisting}[caption={ex05-matriz.tex},label=ex05:matriz]
\[
  \begin{pmatrix}
   1 &amp; 2 &amp; 3 \\
   2 &amp; 3 &amp; 4 \\
   3 &amp; 4 &amp; 5  
  \end{pmatrix}, 
  \begin{bmatrix}
   1 &amp; 2 &amp; 3 \\
   2 &amp; 3 &amp; 4 \\
   3 &amp; 4 &amp; 5  
  \end{bmatrix}, 
  \begin{vmatrix}
   1 &amp; 2 &amp; 3 \\
   2 &amp; 3 &amp; 4 \\
   3 &amp; 4 &amp; 5  
  \end{vmatrix},
  \begin{Vmatrix}
   1 &amp; 2 &amp; 3 \\
   2 &amp; 3 &amp; 4 \\
   3 &amp; 4 &amp; 5  
  \end{Vmatrix}
\]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

\section[Delimitadores, chaves e integrais]{Delimitadores auto ajustÃ¡veis, chaves embaixo e integrais}

Existem delimitadores auto ajustÃ¡veis que aumenta conforme o seu conteÃºdo aumenta de altura.
Para usar ele, use \verb+\left+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\left+} antes do delimitador esquerdo (tais como %
``(''\index{modo matematico@{modo matemÃ¡tico}!delimitador!$($}, %
 ``[''\index{modo matematico@{modo matemÃ¡tico}!delimitador!$[$}, %
 ``\verb\+\{+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!chaveaberta@{\textbackslash\curlyopensymbforindex,$\curlyopensymbforindex$}},%
 ``|''\index{modo matematico@{modo matemÃ¡tico}!delimitador!$\backslash\vert$,$\vert$}, %
 ``\verb+\|+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!$\backslash\Vert$,$\Vert$}, %
 ``\verb+\langle+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\langle+,$\langle$}, %
 ``\verb+\lfloor+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\lfloor+,$\lfloor$}, %
 ``\verb+\lceil+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\lceil+,$\lceil$})%
 e use \verb+\left+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\right+} antes do delimitador direito (tais como %
``)''\index{modo matematico@{modo matemÃ¡tico}!delimitador!$)$}, %
 ``]''\index{modo matematico@{modo matemÃ¡tico}!delimitador!$]$}, %
 ``\verb\+\}+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!chavefechada@{\textbackslash\curlyclosesymbforindex,$\curlyclosesymbforindex$}},%
 ``|''\index{modo matematico@{modo matemÃ¡tico}!delimitador!$\backslash\vert$,$\vert$}, %
 ``\verb+\|+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!$\backslash\Vert$,$\Vert$}, %
 ``\verb+\rangle+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\rangle+,$\rangle$}, %
 ``\verb+\rfloor+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\rfloor+,$\rfloor$}, %
 ``\verb+\rceil+''\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\rceil+,$\rceil$}).
 Para colocar delimitador somente em um dos lados, ``.''\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\left.+}\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\right.+} Ã© usado para indicar delimitador vazio (quando tem somente em um dos lados, outro lado seria ``.'').
Cuidado para nÃ£o usar \verb+||+ para barra vertical dupla.
Veja o Exemplo~\ref{ex05:delimitador}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex, parte c},label=ex:02-01:c]
\begin{ltxlisting}[caption={ex05-delimitador.tex},label=ex05:delimitador]
\[ \left\|\frac{\frac{1}{x}}{\sqrt[3]{x^2+1}} \right\| \]
\[\left\{x \in [0,1) : \frac{x+1}{x-1} &lt; 0 \right\} \]
\[ 2\left[1+\frac{\left(1+\frac{1}{5}\right)^2}{2} \right]+5 \] 
\[ \left. \frac{x^2}{x+1}\right|_{x=1} = \frac{1}{2} \]
\[ \left\langle f, g \right\rangle = \int_b^a f(x)g(x)dx \]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para casos em que delimitadores auto ajustÃ¡veis nÃ£o funcionam como esperado, poderÃ¡ indicar o tamanho manualmente, colocando a especificaÃ§Ã£o do tamanho antes do delimitador. O especificador do delimitador grande na ordem crescente sÃ£o: \verb+\big+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\big+}, \verb+\Big+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\Big+}, \verb+\bigg+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\bigg+} e \verb+\Bigg+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\Bigg+}.
Veja Exemplo~\ref{ex05:delimitador:grande}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex, parte d},label=ex:02-01:d]
\begin{ltxlisting}[caption={ex05-delimitador-grande.tex},label=ex05:delimitador:grande]
\[ \bigg( \Big(x + (y - z) \Big) + w \bigg) \]

\[ \lambda \bigg( f(x+0) + \cdots f(x_n) \]
\[ + \sum_{i=0}^n x_i \bigg) \]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

A ``chave'' sobre (ou abaixo) da fÃ³rmula Ã© colocado pelo 
\verb|\overbrace|\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overbrace{abc}^{n}+, $\overbrace{abc}^{n}$}%
 e \verb|\underbrace|\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\underbrace{abc}_{n}+, $\overbrace{abc}_{n}$}%
.
Veja Exemplo~\ref{ex05:bracos}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex, parte e},label=ex:02-01:e]
\begin{ltxlisting}[caption={ex05-bracos.tex},label=ex05:bracos]
\[ \overbrace{1+1+\cdots+1}^{n-\text{vezes }} = n \]
\[ \underbrace{k+k+\cdots+k}_{n-\text{vezes}} = nk \]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Alguns casos de integrais mÃºltiplas estÃ£o ilustrados no Exemplo~\ref{ex05:integrais}.%
\index{modo matematico@{modo matemÃ¡tico}!integral!\verb+\int+, $\int$}%
\index{modo matematico@{modo matemÃ¡tico}!integral!\verb+\iint+, $\iint$}%
\index{modo matematico@{modo matemÃ¡tico}!integral!\verb+\iiint+, $\iiint$}%
\index{modo matematico@{modo matemÃ¡tico}!integral!\verb+\idotsint+, $\idotsint$}%
\index{modo matematico@{modo matemÃ¡tico}!integral!\verb+\oint+, $\oint$}%

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-04.tex},label=ex:04-05]
\begin{ltxlisting}[caption={ex05-integrais.tex},label=ex05:integrais]
Integrais mÃºltiplas
\[
\int_a^b f(x)\,dx\; \iint_R f(x.y)\,dxdy \; \iiint_B f(x,y,z)\,dxdydz \]
\[\idotsint f(x_1,\ldots,x_n)\,dx_1\cdots dx_n \]

Integral de linha $\oint f(x)\,dx$.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

\index{modo matematico@{modo matemÃ¡tico}!integral!\verb+\int+, $\int$}%
Note que \verb+cdots+\index{modo matematico@{modo matemÃ¡tico}!pontuacao@{pontuaÃ§Ã£o}!\verb+\cdots+, $\cdots$} produz trÃªs pontos no meio, enquanto que \verb+\ldots+\index{modo matematico@{modo matemÃ¡tico}!pontuacao@{pontuaÃ§Ã£o}!\verb+\ldots+, $\ldots$} produz trÃªs pontos embaixo.
Os comandos \verb+\,+ e \verb+\;+ inserem espaÃ§os extras na fÃ³rmula. 
Veja a SeÃ§Ã£o~\ref{sec:medidas} para detalhes.

pequenos espaÃ§os 
\section{Quebrando fÃ³rmulas em vÃ¡rias linhas}
Para quebrar uma equaÃ§Ã£o sem enumeraÃ§Ã£o em mais de uma linha, podemos usar o ambiente \verb+split+\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!split}.

Para criar alinhamento na equaÃ§Ã£o quebrada, coloca-se o \&amp; no ponto de alinhamento.
Para quebrar equaÃ§Ã£o enumerada em mais de uma linha, use o ambiente  \verb|aligned|\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!aligned} dentro do ambiente \verb+equation+ em vez de \verb|split| e insere o \&amp; nos pontos de alinhamento, como no Exemplo~\ref{ex05:split}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-04.tex, parte b},label=ex:04-04:b]
\begin{ltxlisting}[caption={ex05-split.tex},label=ex05:split]
\[
\begin{split}
2x+y=3 \\
x-y=1+a
\end{split}
\]

\[
\begin{split}
2x+y&amp;=3 \\
x-y&amp;=1+a
\end{split}
\]

\begin{equation}
\begin{aligned}
2x+y&amp;=3 \\
x-y&amp;=1+a
\end{aligned}
\end{equation}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Podemos tentar usar o ambiente \texttt{cases} para definir sistema de equaÃ§Ãµes como no Exemplo~\ref{ex05:cases:aligned},
mas isto nÃ£o efetua o alinhamento (na posiÃ§Ã£o de igualdade). 
NÃ£o podemos usar o  \&amp;, pois o alinhamento seria efetuado de forma prÃ³prio para colocar condiÃ§Ã£o da expressÃ£o e nÃ£o a equaÃ§Ã£o.
Assim, Ã© aconselhÃ¡vel usar o \verb+split+ (quando nÃ£o enumera) ou \verb+equattion+ com \verb+aligned+ (quando enumera) em vez de \texttt{cases}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-04.tex, parte c},label=ex:04-04:c]
\begin{ltxlisting}[caption={ex05-cases-aligned.tex},label=ex05:cases:aligned]
\begin{equation}
  \begin{cases}
      2x+y=1 \\
      x-y=1+a 
  \end{cases}
\end{equation}
\begin{equation}
  \left\{ \begin{aligned}
      2x+y&amp;=1 \\
      x-y&amp;=1+a 
  \end{aligned} \right.
\end{equation}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Existem diversos ambientes estilo \texttt{equations}. 
Vamos ver alguns deles:

O ambiente \texttt{gather}\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!gather} produz vÃ¡rias equaÃ§Ãµes, todas centralizadas.
Para inibir enumeraÃ§Ã£o em algumas delas, coloque o \verb|\nonumber|\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!\verb+\nonumber+} na equaÃ§Ã£o que deseja remover a enumeraÃ§Ã£o (antes da quebra de linhas). Veja o Exemplo~\ref{ex05:gather}

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-04.tex, parte d},label=ex:04-04:d]
\begin{ltxlisting}[caption={ex05-gather.tex},label=ex05:gather]
\begin{gather}
x+y+z=1 \\
x-y+z=2 \\
x+y=0
\end{gather}
\begin{gather}
x+y+z=1 \\
x-y+z=2 \nonumber \\
x+y=0
\end{gather}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para equaÃ§Ãµes em vÃ¡rias linhas, com pontos de alinhamento, 
usa-se o \texttt{align}\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!align} que pode inibir enumeraÃ§Ã£o de algumas equaÃ§Ãµes como em \texttt{gather}.

Quando escreve uma expressÃ£o grande quebrado em vÃ¡rias linhas,
as vezes Ã© legal tabular cada linha para direita.
Este efeito pode ser obtido pelo \verb|multline|\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!multiline}, como do Exemplo~\ref{ex05:multiline}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-04.tex, parte e},label=ex:04-04:e]
\begin{ltxlisting}[caption={ex05-multiline.tex},label=ex05:multiline]
\begin{align}
x+y+z&amp;=1 \\
x-y+z&amp;=2 \nonumber \\
x+y&amp;=0
\end{align}
\begin{multline}
Ax+Ay+Az=
  a_{11}x_1+\cdots +a_{1n}x_n+\cdots +\cdots +a_{n1}x_1+\cdots a_{nn}x_n    \\
  a_{11}y_1+\cdots +a_{1n}y_n+\cdots +\cdots +a_{n1}y_1+\cdots a_{nn}y_n    \\
  a_{11}z_1+\cdots +a_{1n}z_n+\cdots +\cdots +a_{n1}z_1+\cdots a_{nn}z_n    
\end{multline}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para mais ambientes deste estilo, consulte o manual de AMS\LaTeX. \cite[Cap. 8]{book:goossens:2004} explica bem os ambientes e comandos matemÃ¡ticos do AMS (que estÃ¡ sendo discutido parcialmente neste capÃ­tulo).

Note que, todos os ambientes do estilo \texttt{equation} 
(\texttt{equation}, \texttt{gather}, \texttt{align}, \texttt{multline}, etc)
apresentam a versÃ£o com *\index{equation*}\index{gather*}\index{align*}\index{multiline*} na qual remove toda enumeraÃ§Ã£o (versÃ£o * equivale 
a colocar \verb|\nonumber| em todas equaÃ§Ãµes).
Veja Exemmplo~\ref{ex05:align:star}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-04.tex, parte f},label=ex:04-04:f]
\begin{ltxlisting}[caption={ex05-align-star.tex},label=ex05:align:star]
\begin{align*}
x+y+z&amp;=1 \\
x-y+z&amp;=2 \\
x+y&amp;=0
\end{align*}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para equaÃ§Ãµes de vÃ¡rias linhas, uma linha independente de texto pode ser inserido pelo comando \verb+\intertext+\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!\verb+\intertext+}.

Veja Exemmplo~\ref{ex05:intertext}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-04.tex, parte f},label=ex:04-04:f]
\begin{ltxlisting}[caption={ex05-intertext.tex},label=ex05:intertext]
Para $y=2x$, temos
\begin{align*}
f(x)&amp;=2x+y+3x 
\intertext{juntando o $x$, temos}
&amp;=5x+y \\
 &amp; = 7x
\end{align*}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
Note que nÃ£o precisa colocar \verb+\\+ antes e depois do \verb+\intertext+. 
 
\section{Nome sobre setas e delimitador empilhados}

Para colocar nome nas setas\index{setas!com nome}, usa-se o \verb+\stackrel+\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!\verb+\stackrel+}.

Para colocar limitante de soma, produto, etc em duas linhas\index{limitante!duas linhas}, usa-se o \verb+\substack+\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!\verb+\substack+}.

 
Para colocar embaixo, poderÃ¡ usar o \verb+\underset+\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!\verb+\underset+}.

Simplesmente empilhar um sobre outro, usa-se o \verb+\atop+\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!\verb+\atop+}.

Veja Exemplo~\ref{ex05:stackrel}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-05.tex, parte b},label=ex:04-05:b]
\begin{ltxlisting}[caption={ex05-stackrel.tex},label=ex05:stackrel]
\[ X \stackrel{f}{\to} Y\]
\[ f : \underset{x}{X}  \underset{\mapsto}{\to} \underset{f(x)}{Y} \]
\[ L_i(x)=\prod_{\substack{j=0 \\ i\ne j}} \frac{x-x_j}{x_i-x_j} \]
\[ X \atop Y \]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Binomial de Newton pode ser produzido por \verb+binom+\index{modo matematico@{modo matemÃ¡tico}!costrucao@{construÃ§Ã£o}!\verb+\binom+} como no Exemplo~\ref{ex05:binom}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-05.tex, parte c},label=ex:04-05:c]
\begin{ltxlisting}[caption={ex05-binom.tex, parte c},label=ex05:binom]
Regra de Pascal:
\[ \binom{n}{k} = \binom{n-1}{k} + \binom{n-1}{k-1} \]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

\section{SubequaÃ§Ãµes}
 
Podemos usar subequaÃ§Ãµes\index{subequaÃ§Ã£o} no \LaTeX{} como no Exemplo~\ref{ex05:subequacao}.

%\setcounter{lstorichapter}{\value{chapter}}
%%\let\orilabel\label
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-05.tex, parde d},label=ex:04-05:d,preset={\let\label\orilabel,\setcounter{chapter}{1}}]
\begin{ltxlisting}[caption={ex05-subequacao.tex},label=ex05:subequacao]
\begin{subequations}
\begin{equation}\label{eq:regiao:a}
  x^2+y^2 \le 1
\end{equation}    
\begin{equation}\label{eq:regiao:b}
  y \ge 0
\end{equation}
\end{subequations}
As equaÃ§Ãµes \ref{eq:regiao:a} e  \ref{eq:regiao:b} determinam a parte superior do disco.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}

\section{AcentuaÃ§Ã£o no modo matemÃ¡tico}

Na matemÃ¡tica, usa a acentuaÃ§Ã£o\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}} para produzir nomes relacionados ao original  tais como $\hat f$ e $\bar f$ relacionados a $f$.
Tais acentuaÃ§Ãµes difere do modo texto.
Alguns desses acentuaÃ§Ãµes comumente encontrados na matemÃ¡tica sÃ£o: acento circunflexo, til, ponto, seta e barra.
AlÃ©m das acentuaÃ§Ãµes, tem tambÃ©m o caso de colorar expoentes como em $f'$ e $f^\ast$ que sÃ£o relacionados com $f$. 
O \LaTeX{} permite produzir estes e outros acentos e sÃ­mbolos usados como expoentes especiais na matemÃ¡tica.

\begin{tabular}{cc}
comando &amp; exemplo \\
\verb+\hat+ &amp; $\hat{a}$ \\
\verb+\tilde+ &amp; $\tilde{a}$ \\
\verb+\dot+ &amp; $\dot{a}$ \\
\verb+\ddot+ &amp; $\ddot{a}$ \\
\verb+\dddot+ &amp; $\dddot{a}$ \\
\verb+\ddddot+ &amp; $\ddddot{a}$ \\
\verb+\bar+ &amp; $\bar{a}$ \\
\verb+\vec+ &amp; $\vec{a}$ \\
\verb+\grave+ &amp; $\grave{a}$ \\
\verb+\acute+ &amp; $\acute{a}$ \\
\verb+\breve+ &amp; $\breve{a}$ \\
\verb+\check+ &amp; $\check{a}$ \\
\verb+\overset{\circ}{}+ &amp; $\overset{\circ}{a}$ \\
\end{tabular}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\hat{a}+, $\hat{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\tilde{a}+, $\tilde{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\dot{a}+, $\dot{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\ddot{a}+, $\ddot{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\dddot{a}+, $\dddot{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\ddddot{a}+, $\ddddot{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\bar{a}+, $\bar{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\vec{a}+, $\vec{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\grave{a}+, $\grave{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\acute{a}+, $\acute{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\breve{a}+, $\breve{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\check{a}+, $\check{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overset{\circ}{a}+, $\overset{\circ}{a}$}%

Alguns deles, como barra, requer alongamento quando tiver mais de um sÃ­mbolo (ou sÃ­mbolo grande). 
Neste caso, deverÃ¡ usar versÃ£o ajustÃ¡veis:

\begin{tabular}{cc}
comando &amp; exemplo \\
\verb+\widehat+ &amp; $\widehat{abc}$ \\
\verb+\widetilde+ &amp; $\widetilde{abc}$ \\
\verb+\overline+ &amp; $\overline{ab}$ \\
\verb+\overrightarrow+ &amp; $\overrightarrow{AB}$ \\
\verb+\overleftarrow+ &amp; $\overleftarrow{ab}$ \\
\verb+\overleftrightarrow+ &amp; $\overleftrightarrow{AB}$ \\
\end{tabular}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\widehat{abc}+, $\widehat{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\widetilde{abc}+, $\widetilde{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overline{abc}+, $\overline{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overrightarrow{abc}+, $\overrightarrow{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overleftarrow{abc}+, $\overleftarrow{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overleftrightarrow{abc}+, $\overleftrightarrow{abc}$}%

As vezes, precisamos colocar embaixo, como sublinhar.

\begin{tabular}{cc}
comando &amp; exemplo \\
\verb+\underbar+ &amp; $\underbar{abc}$ \\
\verb+\underline+ &amp; $\underline{abc}$ \\
\verb+\underrightarrow+ &amp; $\underrightarrow{AB}$ \\
\verb+\underleftarrow+ &amp; $\underleftarrow{ab}$ \\
\verb+\underleftrightarrow+ &amp; $\underleftrightarrow{AB}$ \\
\end{tabular}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\underbar{abc}+, $\underbar{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\underline{abc}+, $\underline{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\underrightarrow{abc}+, $\underrightarrow{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\underleftarrow{abc}+, $\underleftarrow{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\underleftrightarrow{abc}+, $\underleftrightarrow{abc}$}%

Colocar a direita (ou como expoente)

\begin{tabular}{cc}
comando &amp; exemplo \\
\verb+'+ &amp; $f'$ \\
\verb+^\prime+ &amp; $f^\prime$ \\
\verb+^\backprime+ &amp; $f^\backprime$ \\
\verb+^\ast+ &amp; $f^\ast$ \\
\verb+^\circ+ &amp; $20^\circ$ \\
\verb+^llcorner+ &amp; $x^\llcorner$ \\
\verb+^ulcorner+ &amp; $x^\ulcorner$ \\
\verb+^\perp+ &amp; $\vec{v}^\perp$ \\
\end{tabular}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!$f'$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+f^\prime+, $f^\prime$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+f^\backprime+, $f^\backprime$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+f^\ast+, $f^\ast$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+f^\circ+, $f^\circ$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+f^\llcorner+, $f^\llcorner$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+f^\ulcorner+, $f^\ulcorner$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+f^\perp+, $f^\perp$}%

NÃ£o confundir apÃ³strofos (usado na derivada $f'$ de $f$, por exemplo), com o acento agudo.
Note que i e j sem o ponto Ã© produzido por \verb+\imath+\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\imath+, $\imath$} e \verb+\jmath+\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\jmath+, $\jmath$}, respectivamente como em $\hat\imath$ e $\hat\jmath$.

Veja o Exemplo~\ref{ex05:acentos}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-06.tex},label=ex:06-06]
\begin{ltxlisting}[caption={ex05-acentos.tex},label=ex05:acentos]
\[ \hat{f}, \tilde{f}, \dot{x}, \dddot{x}, \bar{y},  \overset{\circ}{X}, \vec{v} \]
\[ \widehat{ABC}, \overrightarrow{AB}, \]
\[ f', f^\ast, 20^\circ, \vec{v}^\perp \]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Na matemÃ¡tica, colocar $/$ sobre o sÃ­mbolo significa a negaÃ§Ã£o do sÃ­mbolo.
Apesar de vÃ¡rios sÃ­mbolos de negaÃ§Ã£o comumente usados estÃ£o definidos, pode precisar produzir a negaÃ§Ã£o de alguns sÃ­mbolos especÃ­ficos. 
Para produzir tal negaÃ§Ã£o\index{modo matematico@{modo matemÃ¡tico}!negacao@{negaÃ§Ã£o}}, usa-se o comando \verb+\not+\index{modo matematico@{modo matemÃ¡tico}!simbolo@{sÃ­mbolo}!\verb+\not+}.

Por exemplo, \verb+\not\subset+ produz $\not\subset$.

Veja o Exemplo~\ref{ex05:negacao}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-06.tex},label=ex:06-06]
\begin{ltxlisting}[caption={ex05-negacao.tex},label=ex05:negacao]
Alguns comandos de negaÃ§Ã£o jÃ¡ existentes.
\[\nexists X : X \in X \]
\[\forall X, X \notin X \]
\[ X \neq \{X\} \]
Produzindo com comando \verb+\not+.
\[ X \not\subset Y \implies X \cap Y \neq X\]
\[X : X \not\ni x \]
\[r \not\perp s \]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}


\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Definindo Comandos e Ambientes}\label{chap:novo:comando}
Vamos ver o bÃ¡sico da definiÃ§Ã£o de comandos e ambientes

\section{Definindo comandos}\label{sec:comandos}
Quando tem o comando longo a ser digitado, poderÃ¡ definir um comando\index{definir comandos} que funciona como um atalho. 
Por exemplo, \verb+\mathbb{R}+ toda vez que queremos escrever o conjunto dos nÃºmeros reais Ã© cansativo. 
Definir comando para \verb+\mathbb{R}+ permite tambÃ©m, trocar facilmente pelo outro comando de fontes no lugar de \verb+\mathbb+.
%tais como  \verb+\mathds{R}+ do pacote \texttt{dsfont}, se desejar no futuro.

Para definir um comando, usa-se o \verb+newcommand+\index{newcommand@\verb+\newcommand+}.
Por exemplo, \verb+\newcommand{\Rset}{\mathbb{R}}+ define o comando \verb+\Rset+ que serÃ¡ substituÃ­do pelo \verb+\mathbb{R}+ quando Ã© compilado.
Se quer que \verb+\Rset+ funcione tanto dentro como fora das fÃ³rmulas, poderÃ¡ usar o \verb+\ensuremath+\index{ensuremath@\verb+\ensuremath+} como em \verb+\newcommand{\Rset}{\ensuremath{\mathbb{R}}}+.
Note que aqui foi evitado de definir como sendo \verb+\real+, pois o comando \verb+\natural+ jÃ¡ estÃ¡ definido no \LaTeX.

O nome do comando nÃ£o deve ter nÃºmeros. 
Por exemplo, \verb+\newcommand{\R2}{$\mathbb{R}^2$}+ resulta em erros, pois o nome do comando \verb+\R2+ contÃ©m o nÃºmero.

Analogamente, \verb+\newcommand{\sen}{\mathrm{sen}}+ define o comando para funÃ§Ã£o seno.
Em geral, para definir nome da funÃ§Ã£o, usa-se o \verb+\DeclaremathOperator+\index{DeclareMathOperator@\verb+\DeclareMathOperator+} do pacote \texttt{amsmath} tal como \verb+\DeclaremathOperator{\sen}{sen}+ 
em vez do \verb+\newcommand+.
Ele coloca automaticamente o \verb+\mathrm+ no segundo argumento.

O comando \verb+\newcommand{\argmin}{\mathop{\mathrm{arg\,min}}}+ define o comando \verb+\argmin+ para funÃ§Ã£o \texttt{arg min}, mas por ter \verb+\mathop+\index{mathop@\verb+\mathop+}, o limitante serÃ¡ colocado embaixo em vez de ser colocado como Ã­ndice. Note o uso de \verb+\,+ para inserir pequeno espaÃ§o entre \texttt{arg} e \texttt{min}.
Para facilitar, o pacote \texttt{amsmath} define a versÃ£o com ``*'' de \verb+\DeclaremathOperator+\index{DeclareMathOperator*@\verb+\DeclareMathOperator*+} que coloca o nome da funÃ§Ã£o dentro do \verb+\mathrm+ e \verb+\mathop+.

Quando jÃ¡ existe o comando, poderÃ¡ redefinir usando o \verb+\renewcommand+\index{renewcommand@\verb+\renewcommand+}. 

Se nÃ£o sabe se existe o comando, poderÃ¡ usar o \verb+\providecommand+\index{providecommand@\verb+\providecommand+} que define o comando caso nÃ£o existir.

Estas definiÃ§Ãµes de comandos costumam ficar no \texttt{preamble} do documento. Veja o Exemplo~\ref{ex06:newcommand}.
 
%\let\mathcal\amsmathcal
%\let\mathbb\amsmathbb
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-01.tex},label=ex:04-01]
\begin{ltxlisting}[caption={ex06-newcommand.tex},label=ex06:newcommand]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\newcommand{\Rset}{\ensuremath{\mathbb{R}}}
%\DeclareMathOperator{\sen}{sen} % modo amsmath
\newcommand{\sen}{\mathrm{sen}} % modo normal (sem amsmath)
%\DeclareMathOperator*{\argmin}{argmin} % modo amsmath
\newcommand{\argmin}{\mathop{\mathrm{arg\,min}}} % modo sem amsmath
\begin{document}
\[ \forall \theta \in \Rset, \cos^2\theta + \sen^2\theta = 1 \]
\[ \argmin_x f(x) = \left\{x: f(x) = \min_{x'} f(x') \right\} \]
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\let\mathcal\orimathcal
%\let\mathbb\orimathbb

Os comandos podem ter atÃ© 9 parÃ¢metros.
Os comandos com parÃ¢metros\index{comandos!com parÃ¢metros}, Ã© criado pelo comando \verb+\newcommand{\nome-do-comando}[n]{definiÃ§Ã£o}+ onde \texttt{n} Ã© o nÃºmero de parÃ¢metros.
No corpo da definiÃ§Ã£o do comando, \verb+#1+, \verb+#2+,\verb+#3+, \ldots especificam os parÃ¢metros na posiÃ§Ã£o  $1$, $2$, $3$, etc.

Quando usa os parÃ¢metros, o primeiro deles podem ser opcional\index{comandos!parÃ¢metro opcional}.
Neste caso, usa-se a sintaxe
\verb+\newcommand{\nome-do-comando}[n][v]{definiÃ§Ã£o}+
onde ``\texttt{v}'' Ã© o valor padrÃ£o quando o parÃ¢metro for omitido.
O Exemplo~\ref{ex06:parametro:opcional} ilustra o caso.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-01.tex, parte b},label=ex:04-01:b]
\begin{ltxlisting}[caption={ex06-parametro-opcional.tex},label=ex06:parametro:opcional]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\newcommand{\conj}[1]{\overline{#1}} % com um parametro
\newcommand{\norma}[2][]{\left\|#2\right\|_{#1}} % com parametro opcional
\newcommand{\seq}[2][n]{\left\{#2_0,\ldots,\,#2_{#1}\right\}}
\begin{document}
\[ \conj{z}\cdot z = \norma{z}^2 \neq \norma[\infty]{z}^2 \]
A sequÃªncia $\seq{x}$ para $n=5$ Ã© $\seq[5]{x}$.

${\conj zw}$
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
 
O comando \verb+\let+\index{let@\verb+\let+} cria uma copia do comando existente.
Por exemplo, \verb+\let\comandocopia\comandooriginal+ cria um comando \verb+\comandocopia+ que Ã© uma cÃ³pia do \verb+\comandooriginal+.
Assim, podemos redefinir o \verb+\comandooriginal+ e se precisar do original, Ã© sÃ³ chamar o \verb+\comandocopia+.
TambÃ©m poderÃ¡ restaurar o comando original usando o \verb+\let+.
Por exemplo,

\begin{lstlisting}[language={[LaTeX]TeX}]
 \let\tanoriginal\tan
 \renewcommand{\tan}{\mathrm{tg}}
\end{lstlisting}
 
redefine o comando \verb+\tan+, mas se precisar do \verb+\tan+ original, eh sÃ³ chamar o \verb+\tanoriginal+.
Para restaurar o original, Ã© sÃ³ usar o \verb+\let+ novamente com em \verb+\let\tan\tanoriginal+.

\section{Criando ambientes}
Para trecho maior de dados, o ambiente\index{ambiente} (o que tem \verb+\begin+ e \verb+\end+) Ã© mais adequado que os comandos.
Para criar ambientes, usa-se o comando \verb+\newenvironment+\index{newenvironment@\verb+\newenvironment+} na qual o primeiro parÃ¢metro Ã© 
nome do ambiente, segundo Ã© o que vai fazer antes e terceiro Ã© o que vai fazer depois.
Quando tem o parÃ¢metro\index{ambiente!parÃ¢metro} (que pode ter atÃ© nove), coloca o nÃºmero de parÃ¢metro como parÃ¢metro opcional de \verb+\newenvironment+, entre primeiro e segundo parÃ¢metro.
Assim como o comando, o ambiente tambÃ©m pode ter o primeiro parÃ¢metro como opcional\index{ambiente!parÃ¢metro opcional}.
Neste caso, passa o seu valor padrÃ£o apÃ³s nÃºmero de parÃ¢metro como sendo parÃ¢metro opcional ao \verb+\newenvironment+.

No Exemplo~\ref{ex06:ambiente}, o ambiente \texttt{dem} foi definido somente como a ilustraÃ§Ã£o.
Em geral, usa o ambiente \texttt{proof}\index{proof} do pacote \texttt{amsthm} para demonstraÃ§Ãµes.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-02.tex},label=ex:04-02]
\begin{ltxlisting}[caption={ex06-ambiente.tex},label=ex06:ambiente]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\newenvironment{myenv}{\begin{center}\em} {\end{center}}
\newenvironment{mypar}[1]{\par\noindent \hrulefill\fbox{ #1 }\hrulefill \\ } {\par\noindent\hrulefill \\}
\newenvironment{dem}[1][DemonstraÃ§Ã£o]{\textbf{#1:}\ }  {\hfill\rule{1ex}{1ex}\par}
\begin{document}
\begin{myenv}
Texto enfatizado e centralizado.
\end{myenv}
\begin{mypar}{Teste}
ParÃ¡grafo com tÃ­tulo simples.
\end{mypar}
\begin{dem}
\ldots
\end{dem}
\begin{dem}[Prova]
\ldots
\end{dem}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Como nÃ£o podemos clocar linhas em branco no meio da definiÃ§Ã£o de comandos ou ambientes para indicar o parÃ¡grafo, usa-se o comando \verb+\par+\index{par@\verb+\par+} para esta finalidade.
O comando \verb+\noindent+\index{noindent@\verb+\noindent+} desabilita temporariamente a indentaÃ§Ã£o (tabulaÃ§Ã£o para direita) da primeira linha do parÃ¡grafo.

Note que, tambÃ©m pode definir os comandos no modo \TeX{} em vez do modo \LaTeX.
Para isso, basta usar o \verb+\def+ que Ã© importante quando um comando define o outro. 
O \verb+\def+ que nÃ£o vamos discutir aqui, deve ser usado com cuidado, pois ele nÃ£o verifica se o comando exite ou nÃ£o, redefinindo caso existir.

\section{Quebrando o cÃ³digo em vÃ¡rias linhas}

Em geral, a definiÃ§Ã£o de comando ou ambiente deve ficar em uma Ãºnica linha, mas quando isto Ã© longo, precisamos dividir em mais de uma linha\index{comando!mÃºltiplas linhas}\index{ambiente!mÃºltiplas linhas} para boa organizaÃ§Ã£o. 
Neste caso, existe trechos que nÃ£o podem ser quebrados, mas isto requer um conhecimento extra.
Para contornar isto, note que o \LaTeX{} considera que a prÃ³xima linha Ã© uma continuaÃ§Ã£o da linha atual quando encontrar ``\%'' grudado na Ãºltima letra ativa (que nÃ£o seja comentÃ¡rio).
Assim, quando quebrar a definiÃ§Ã£o de comandos ou ambiente em mais de uma linha, coloque o ``\%'' grudado na Ãºltima letra. 
Fique atento de nÃ£o colocar espaÃ§o entre a Ãºltima letra e ``\%''.
Veja o Exemplo~\ref{ex06:comando:multilinhas}.

\begin{singlespacing}
%\begin{lstlisting}[caption={ex04-02.tex, parte b},label=ex:04-02:b]
\begin{lstlisting}[caption={ex06-comando-multlinhas.tex},label=ex06:comando:multilinhas]
\newcommand{\norma}[2][]{%
  \left\|#2\right\|_{#1}%
}
\newenvironment{mypar}[1]%
  {\par\noindent \hrulefill\fbox{ #1 }\hrulefill \\}% o que faz antes
  {\par\noindent\hrulefill \\}% o que faz depois
\end{ltxlisting}
%\end{lstlisting}
\end{singlespacing}

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{DivisÃ£o LÃ³gica de Documentos}
Neste capÃ­tulo, vamos estudar a divisÃ£o lÃ³gica de documentos.

\section{CapÃ­tulos, seÃ§Ãµes e similares}
Nos livros e relatÃ³rios, os conteÃºdos sÃ£o organizados em capÃ­tulos\index{capÃ­tulo}, indicado por \verb+\chapter+\index{chapter@\verb+\chapter+}.
Os capÃ­tulos podem ser divididos em seÃ§Ãµes\index{seÃ§Ã£o} indicado pelo comando \verb+\section+\index{section@\verb+\section+}, se assim desejar. 
Neste caso, evite ter capÃ­tulos com seÃ§Ãµes e outro sem seÃ§Ãµes, para ter uniformidades.

Se a seÃ§Ã£o ficar grandes, podem ser subdivididos em subseÃ§Ãµes\index{subseÃ§Ã£o} com o comando \verb+subsection+\index{subsection@\verb+\subsection+}, mas tome cuidado para que todas seÃ§Ãµes tenham subseÃ§Ãµes.

Existem ainda, \verb+\subsubsection+\index{subsubsection@\verb+\subsubsection+} (subsubseÃ§Ãµes), \verb+\paragraph+\index{paragraph@\verb+\paragraph+} (parÃ¡grafos\index{parÃ¡grafo}) e \verb+\subparagraph+\index{subparagrapg@\verb+\subparagraph+} (subparÃ¡grafos\index{subparÃ¡grafo}) que sÃ£o menos usados.

No caso de artigos, o conteÃºdo costuma ser divido em seÃ§Ãµes e caso desejar, seÃ§Ãµes podem ser subdivididos em subseÃ§Ãµes (evitando que tenha seÃ§Ã£o com subseÃ§Ã£o e outro sem subseÃ§Ã£o).

O capÃ­tulo inicia-se com o comando \verb+\chapter{TÃ­tulo}+ e seÃ§Ãµes com o comando \verb+\section{TÃ­tulo}+.

Estes comandos aceitam a opÃ§Ã£o de especificar os ``tÃ­tulos curtos''\index{tÃ­tulo curto} que sÃ£o usados no sumÃ¡rio e cabeÃ§alho, o que podem ser passados como parÃ¢metro opcional colocado antes do tÃ­tulo.
Neste formato, usado quando tÃ­tulo Ã© longo, tem a forma \verb+\chapter[TÃ­tulo Curto]{TÃ­tulo}+ e \verb+\section[TÃ­tulo Curto]{TÃ­tulo}+

%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%\setcounter{chapter}{0}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex05-01.tex},label=ex:05-01,preset={\setcounter{chapter}{0},\let\addcontentsline\emptyaddcontentsline}]
\begin{ltxlisting}[caption={ex07-capitulo.tex},label=ex07:capitulo]
\chapter[Titulo Curto]{TÃ­tulo Longo do CapÃ­tulo}
ApresentaÃ§Ã£o bem rÃ¡pida do capÃ­tulo.
\section[TÃ­tulo curto]{TÃ­tulo longo da seÃ§Ã£o}
Texto da seÃ§Ã£o
\section{TÃ­tulo da outra seÃ§Ã£o}
Texto da outra seÃ§Ã£o
\ldots
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%% \addtocounter{chapter}{-1}
%\let\addcontentsline\oriaddcontentsline

Quando hÃ¡ os capÃ­tulos e/ou seÃ§Ãµes, o sumÃ¡rio\index{sumÃ¡rio} podem ser produzidos automaticamente pelo comando \verb+\tableofcontents+\index{tableofcontents@\verb+\tableofcontents+}.
Para que o sumÃ¡rio apareÃ§a devidamente no documento final, precisa compilar o documento duas vezes, pois o \LaTeX{} usa o arquivo auxiliar para isso.

Para comandos do tipo capÃ­tulos (\verb+\chapter+, \verb+\section+, etc), existem as versÃµes com ``*''\index{chapter*@\verb+\chapter*+}\index{section*@\verb+\section*+} que nÃ£o serÃ£o enumeradas e nÃ£o serÃ£o colocadas no sumÃ¡rio, apesar de ter a mesma formataÃ§Ã£o.
Por exemplo, \verb+\chapter*{Resumo}+ nÃ£o serÃ¡ enumerado, nem vai no sumÃ¡rio.

Note que, no caso de artigos, o resumo tem formataÃ§Ã£o diferente do  restante das seÃ§Ãµes.
Assim, existe o ambiente especial \texttt{abstract}\index{abstract} para o resumo, o que nÃ£o Ã© mesmo que \verb+\section*+.

Note a diferenÃ§a e similaridade do Exemplo~\ref{ex07:capitulo:star} que usa a versÃ£o ``*'', com o Exemplo~\ref{ex07:capitulo} que usa a versÃ£o normal.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex05-01.tex, parte b},label=ex:05-01:b]
\begin{ltxlisting}[caption={ex07-capitulo-star.tex},label=ex07:capitulo:star]
\chapter*{Resumo}
Resumo aqui.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

\section{Capa, conteÃºdo frontal e principal}

O Exemplo~\ref{ex07:matter} ilustra a estrutura bÃ¡sica de um documentos tipo livro na qual nÃ£o vamos colocar a saÃ­da aqui, por ocupar vÃ¡rias pÃ¡ginas.

\begin{singlespacing}
%\begin{lstlisting}[caption={ex05-01.tex, parte c},label=ex:05-01:c]
\begin{lstlisting}[caption={ex07-matter.tex},label=ex07:matter]
\documentclass[12pt,a4paper]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\pagestyle{empty}
\begin{document}
% capa
\frontmatter
\chapter*{Resumo}\thispagestyle{empty}
Resumo aqui.
\pagestyle{headings}
\tableofcontents % SumÃ¡rio
\chapter{PrefÃ¡cio}
ApresentaÃ§Ã£o do trabalho.
\mainmatter
\chapter{TÃ­tulo do CapÃ­tulo Aqui}
ApresentaÃ§Ã£o bem rÃ¡pida do capÃ­tulo.
\section{TÃ­tuo da seÃ§Ã£o aqui}
Texto da seÃ§Ã£o
\ldots
\appendix % se existir apÃªndice
\chapter{TÃ­tulo do ApÃªndice 1} % se existir 
Texto do apÃªndice 1
\ldots
\backmatter % opcional
% referencia biliografica
% indice remissivo, se existir
\end{document}
\end{lstlisting}
\end{singlespacing}

O comando \verb+\pagestyle{empty}+\index{patestyle@\verb+\pagestyle+!empty} antes do \verb+\begin{document}+ remove as enumeraÃ§Ãµes das pÃ¡ginas para que parte inicial do livro fiquem sem a enumeraÃ§Ã£o.

A capa simples nos livros e relatÃ³rios podem ser produzidos pelo comando \verb+\maketitle+\index{maketitle@\verb+\maketitle+}, desde que seja fornecido algumas informaÃ§Ãµes tais como tÃ­tulo, autor e data pelos comandos \verb+\title+\index{title@\verb+\title+}, \verb+\author+\index{author@\verb+\author+} e \verb+\date+\index{date@\verb+\date+}, colocados antes do \verb+\maketitle+.
Veja Exemplo~\ref{ex07:maketitle}.

\begin{singlespacing}
\begin{lstlisting}[caption={ex07-maketitle.tex},label=ex07:maketitle]
\documentclass[12pt,a4paper]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\title{Exemplo}
\author{Sadao Massago}
\date{Fevereiro de 2018}
\begin{document}
\maketitle
\frontmatter
\ldots
\end{document}
\end{lstlisting}
\end{singlespacing}

Note que, \verb+\date+, quando nÃ£o especificado, serÃ¡ assumido como sendo \verb+\today+\index{today@\verb+\today+} que Ã© data de compilaÃ§Ã£o do documento. Se nÃ£o quer que apareÃ§a data, deve colocar \verb+\date{}+.

Para criar tÃ­tulos personalizados nos livros e relatÃ³rios, use o ambiente \texttt{titlepage}\index{titlepage}.
Note que nos livros e relatÃ³rios, a capa nÃ£o serÃ¡ contada como pÃ¡ginas, mas todas as outras pÃ¡ginas, mesmo totalmente em branco, serÃ£o contadas.

O comando \verb+\frontmatter+\index{frontmatter@\verb+\frontmatter+} disponÃ­vel somente para livros, indica que serÃ¡ matÃ©ria frontal\index{matÃ©ria!frontal}, tendo as pÃ¡ginas enumeradas em romano minÃºsculo e sem a contagem de capÃ­tulos (mesmo para versÃ£o sem ``*'').

O comando \verb+\thispagestyle{empty}+\index{thispagestyle@\verb+\thispagestyle+!empty} no \verb+\chapter*{Resumo}+ remove a enumeraÃ§Ã£o da pÃ¡gina atual (primeira pÃ¡gina do ``Resumo''). 
Note que capÃ­tulos usa o estilo de pÃ¡gina \texttt{plain}\index{estilo da pÃ¡gina!plain} que enumera embaixo da pÃ¡gina, mesmo que o estilo de pÃ¡gina esteja em \texttt{empty}. 
Assim, colocar \verb+\thispagestyle{empty}+ Ã© necessÃ¡rio para remover paginaÃ§Ã£o desta primeira pÃ¡gina do ``capÃ­tulo''.

Antes do sumÃ¡rio\index{sumÃ¡rio} colocado pelo comando \verb+\tableofcontents+\index{tableofcontents@\verb+\tableofcontents+}, foi colocado \verb+\pagestyle{headings}+\index{pagestyle@\verb+\pagestyle+!headings} para que volte a colocar pÃ¡ginas e cabeÃ§alho superior. 
Note que, no livro, o que vem antes do sumÃ¡rio nÃ£o devem ser paginados, mas o que vem depois do sumÃ¡rio, costuma ser paginados. 
Por ser \texttt{frontmatter}, a paginaÃ§Ã£o serÃ¡ em romano minusculo.

Depois do prefÃ¡cio, tem o comando \verb+\mainmatter+\index{mainmatter@\verb+\mainmatter+} que tambÃ©m Ã© disponÃ­vel somente para livros. 
Este comando reinicia a paginaÃ§Ã£o (comeÃ§a a contar de 1 novamente) e usa a enumeraÃ§Ã£o em arÃ¡bico. 
TambÃ©m faz comeÃ§ar a contar capÃ­tulos.

O comando \verb+\appendix+\index{appendix@\verb+\appendix+} indica que, o que segue sÃ£o apÃªndices\index{apÃªndice} que complementa o documento. 
Ele Ã© disponÃ­vel para livros, relatÃ³rios e artigos.
No caso de livros e relatÃ³rios, o comando \verb+\chapter+ comeÃ§arÃ¡ a produzir tÃ­tulo para apÃªndices em vez de capÃ­tulos (escreverÃ¡ ApÃªndice A, ApÃªndice B, etc em vez de CapÃ­tulo 1, CapÃ­tulo 2, etc). 
No caso de artigos, o comando \verb+\section+ que produzirÃ¡ os apÃªndices.
 
O comando \verb+\backmatter+\index{backmatter@\verb+\backmatter+} tambÃ©m Ã© disponÃ­vel somente para livros. 
O \verb+\backmatter+ faz com que \verb+\chapter+ funcione igual a \verb+\chapter*+ (versÃ£o ``*''). 
Como nÃ£o Ã© costume colocar \verb+\chapter+ no \texttt{backmatter}, o comando pode ser omitido.

Em geral, a parte final do documento Ã© a referÃªncia bibliogrÃ¡fica. 
Se existir o Ã­ndice remissivo, deverÃ¡ ser colocado depois da referÃªncia bibliogrÃ¡fica.

Note que o relatÃ³rio Ã© um documento e nÃ£o Ã© um livro. 
Assim, todas pÃ¡ginas exceto a capa, devem estar enumeradas em arÃ¡bico e em sequencias. 
Assim, nÃ£o hÃ¡ divisÃ£o de \texttt{frontmatter} e \texttt{mainmatter}, nÃ£o existindo comandos correspondentes.

A configuraÃ§Ã£o do documento no artigo Ã© ilustrado no Exemplo~\ref{ex07:article}. % que tambÃ©m omitiremos a sua saÃ­da final.

%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%% \let\orilabel\label
\let\orithesection\thesection
\renewcommand{\thesection}{\arabic{section}}
\newcommand{\articleappendix}{\setcounter{section}{0}\def\thesection{\Alph{section}}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex05-01.tex, parte e},label=ex:05-01:e,preset={\setcounter{chapter}{1},\setcounter{section}{0},\let\addcontentsline\emptyaddcontentsline,\let\title\orititle,\let\author\oriauthor,\let\date\oridate,\let\maketitle\makearticletitle,\let\appendix\articleappendix}]
\begin{ltxlisting}[caption={ex07-article.tex},label=ex07:article,preset={\let\maketitle\makearticletitle\let\appendix\articleappendix}]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,brazil]{babel}
\usepackage{amsmath,amssymb}
\title{Exemplo}
\author{Sadao Massago}
\date{Fevereiro de 2018}
\begin{document}
\maketitle
\begin{abstract}
Resumo aqui.
\end{abstract}
% \tableofcontents % so se for artigo longo
\section{TÃ­tulo da seÃ§Ã£o 1}
Texto da seÃ§Ã£o 1
\section{TÃ­tulo da seÃ§Ã£o 2}
Texto da seÃ§Ã£o 2
\ldots
\appendix % se tiver apÃªndice
\section{TÃ­tulo do ApÃªndice 1}
Texto do apÃªndice 1
\ldots
% referÃªncia biliogrÃ¡fica
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%%\let\ref\oriref
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%% \addtocounter{chapter}{-1}
\let\thesection\orithesection
%\let\addcontentsline\oriaddcontentsline


%\begin{singlespacing}
%\begin{lstlisting}[caption={ex05-01.tex, parte e},label=ex:05-01:e]
%\documentclass[12pt,a4paper]{article}
%\usepackage[T1]{fontenc}
%\usepackage[utf8]{inputenc}
%\usepackage{amsmath,amssymb}
%\title{Exemplo}
%\author{Sadao Massago}
%\date{Fevereiro, 2018}
%\begin{document}
%\maketitle
%\begin{abstract}
%Resumo aqui.
%\end{abstract}
%% \tableofcontents % se for artigo longo
%\section{TÃ­tulo da SeÃ§Ã£o 1}
%Texto da seÃ§Ã£o 1
%\section{TÃ­tulo da SeÃ§Ã£o 2}
%Texto da seÃ§Ã£o 2
%\ldots
%\appendix % se tiver apÃªndice
%\section{TÃ­tulo do apÃªndice 1}
%Texto do apÃªndice 1
%\ldots
%% referÃªncia biliogrÃ¡fica
%\end{document}
%\end{lstlisting}
%\end{singlespacing}

O \verb+\maketitle+\index{maketitle@\verb+\maketitle+} produz tÃ­tulo do artigo com informaÃ§Ãµes usando tÃ­tulo, autor e data fornecidos como nas capas dos livros e relatÃ³rios.

Note que nÃ£o costumamos usar o Ã­ndice remissivo para artigos, apesar de ter comandos disponÃ­veis para isso.

\section{Limpando o verso das pÃ¡ginas}
O livro costuma ser diagramado para impressÃ£o em dois lados (opÃ§Ã£o da classe de documento \texttt{twoside}\index{twoside}), embora poderÃ¡ optar em \texttt{oneside}\index{oneside} que Ã© um lado, se quiser.
TambÃ©m podemos usar \texttt{openright}\index{openright} que comeÃ§a o capÃ­tulo somente no lado direito (\texttt{openany}\index{openany} comeÃ§a o capÃ­tulo tanto no lado esquerdo como no lado direito).

Nestes casos, o verso do sumÃ¡rio, resumo, etc, assim como versos de finais dos capÃ­tulos, se existir, ficarÃ£o em branco em vez de ter enumeraÃ§Ã£o de pÃ¡ginas ou cabeÃ§alhos.
Para que isso aconteÃ§a, Ã© sÃ³ inserir o cÃ³digo
\begin{verbatim}
\clearpage\thispagestyle{empty}\cleardoublepage
\end{verbatim}
antes de cada capÃ­tulo ou comandos que produzem os capÃ­tulos ou similares, tais como sumÃ¡rio, referÃªncias bibliogrÃ¡ficas e Ã­ndice remissivo. 
TambÃ©m Ã© necessÃ¡rio antes do \verb+\mainmatter+. 
Veja o Exemplo~\ref{ex07:clearpage} na qual a saÃ­da foi omitida.

\begin{singlespacing}
\begin{lstlisting}[caption={ex07-clearpage.tex},label=ex07:clearpage]
\documentclass[12pt,a4paper,openright]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\pagestyle{empty}
\begin{document}
% capa
\frontmatter
\chapter*{Resumo}\thispagestyle{empty}
Resumo aqui.
\cleardoublepage
\pagestyle{headings}
\tableofcontents % SumÃ¡rio
\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{PrefÃ¡cio}
ApresentaÃ§Ã£o do trabalho.
\clearpage\thispagestyle{empty}\cleardoublepage
\mainmatter
\chapter{TÃ­tulo do CapÃ­tulo 1}
Texto do primeiro capÃ­tulo.
\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{TÃ­tulo do CapÃ­tulo 2}
Texto do segundo capÃ­tulo.
\ldots
\clearpage\thispagestyle{empty}\cleardoublepage
\appendix % se existir apÃªndice
\chapter{TÃ­tulo do ApÃªndice 1} % se existir 
Texto do apÃªndice 1
\ldots
\backmatter % opcional: sem efeito visual
\clearpage\thispagestyle{empty}\cleardoublepage
% referencia biliografica
\clearpage\thispagestyle{empty}\cleardoublepage
% indice remissivo, se existir
\end{document}
\end{lstlisting}
\end{singlespacing}

O comando \verb+\clearpage+\index{clearpage@\verb+\clearpage+} finaliza a pÃ¡gina. 
Por exemplo, se tiver algo pendente como figuras a serem colocadas, serÃ¡ feito.
Com \verb+\thispagestyle{empty}+\index{thispagestyle@\verb+\thispagestyle+!empty}, desabilita o estilo da pÃ¡gina atual e com \verb+\cleardoublepage+\index{cleardoublepage@\verb+\cleardoublepage+}, inserir pÃ¡gina em branco, se necessÃ¡rio. 

\section{Efetuando pequenos ajustes}
O primeiro parÃ¡grafo da seÃ§Ã£o ou capÃ­tulo nÃ£o serÃ¡ indentado (empurrado para direita).
A indentaÃ§Ã£o Ã© feito para distinguir um parÃ¡grafo do outro, mas como nÃ£o tem parÃ¡grafo anterior, nÃ£o hÃ¡ necessidades de indentaÃ§Ã£o.
No entanto, algumas pessoas podem querer indentar o primeiro parÃ¡grafo.
Se for o caso, basta usar o pacote \texttt{indentfirst}\index{indentfirst} no \texttt{preamble} do documento.

Por outro lado, se quer remover indentaÃ§Ã£o de algum parÃ¡grafo como o que segue uma fÃ³rmula matemÃ¡tica no modo \texttt{displaystyle}, basta usar o comando \verb+\noindent+\index{noindent@\verb+\noindent+}. 
%TambÃ©m pode inserir a indentaÃ§Ã£o, usando o comando \verb+\indent+, exceto nos lugares proibidos como o primeiro parÃ¡grafo.

TambÃ©m pode querer que uma pÃ¡gina fique um pouco maior para acomodar o conteÃºdo atual.
Neste caso, use o comando \verb+\enlargethispage+\index{enlargethispage@\verb+\enlargethispage+}. 
Por exemplo, \verb+\enlargethispage{\baselineskip}+ aumenta a pÃ¡gina atual por uma linha.
Este tipo de ajustes requer cuidados para nÃ£o comprometer a qualidade da diagramaÃ§Ã£o.

Se quer que algum comando seja executado apÃ³s o tÃ©rmino da pÃ¡gina atual, use o pacote \texttt{afterpage}\index{afterpage} que implementa o comando de mesmo nome.
Por exemplo, \verb+\afterpage{\clearpage}+ colocarÃ¡ todas figuras e tabelas pendentes na prÃ³xima pÃ¡gina.

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Teoremas e Similares}
Os ambientes para teoremas e similares podem ser criados de forma apropriada, facilmente no \LaTeX.

\section{Criando ambiente para teoremas}

Para definir o ambiente para escrever teoremas\index{teoremas} e similares, 
costuma usar o pacote \texttt{amsthm}\index{amsthm} que melhora a usabilidade do \verb+\newtheorem+\index{newtheorem@\verb+\newtheorem+} usados para este propÃ³sito.

O comando \verb+\newtheorem{theorem}{Teorema}[chapter]+ cria um ambiente chamado \texttt{theorem} que usa como tÃ­tulo ``Teorema'' com contador vinculado a capÃ­tulo (\texttt{chapter}).
Se for artigo, troque o \texttt{chapter} pelo \texttt{section} como em
\verb+\newtheorem{theorem}{Teorema}[section]+.

Para definir outros ambiente similares aos teoremas, tais como axioma, lema, corolÃ¡rio e proposiÃ§Ã£o, poderÃ¡ usar o comando tal como \verb+\newtheorem{proposition}[theorem]{ProposiÃ§Ã£o}+ onde \texttt{theorem} no parÃ¢metro opcional na segunda posiÃ§Ã£o indica que serÃ¡ contado junto com o teorema. 
Asim ficarÃ¡ Teorema~1.1, ProposiÃ§Ã£o~1.2, etc. 
O modelo para proposiÃ§Ã£o serve para demais ambientes similares aos teoremas.

Para ambientes como definiÃ§Ã£o, exemplos e exercÃ­cios, devemos usar o estilo definiÃ§Ã£o, obtido pelo comando \verb+\theoremstyle{definition}+\index{theoremstyle@\verb+\theoremstyle+!definition}.

A seguir, usa-se o \verb+\newtheorem+ novamente como \verb+\newtheorem{definition}[theorem]{DefiniÃ§Ã£o}+ e \verb+\newtheorem{example}[theorem]{Exemplo}+.

Para observaÃ§Ãµes e notas, deve mudar para estilo \texttt{remark} com o comando \verb+\theoremstyle{remark}+\index{theoremstyle@\verb+\theoremstyle+!remark}.

Note que \texttt{amsthm} providencia o ambiente para demonstraÃ§Ãµes, denominado de \texttt{proof}\index{proof}.
Veja o Exemplo~\ref{ex08:teorema}.
%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-05.tex},label=ex:06-05,preset={\setcounter{chapter}{0},\let\addcontentsline\emptyaddcontentsline}]

%\makeatletter
% % exercise env from xsim
% \let\originalexercise\exercise
% \let\originalendexercise\endexercise
% \let\c@exerciseoriginal\c@exercise
% % undefine env
% \let\exercise\@undefined
% \let\endexercise\@undefined
% \let\c@exercise\@undefined
%\makeatother
\begin{ltxlisting}[caption={ex08-teorema.tex},label=ex08:teorema]
\documentclass[12pt,a4paper]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{amssymb,amsmath}
\usepackage{amsthm} % para configurar o teorema
% Definindo teormas e similares. Contador unico, vinculado a capÃ­tulos.
\newtheorem{theorem}{Teorema}[chapter] % contador vinculado a capitulos
\newtheorem{corollary}[theorem]{CorolÃ¡rio}
\newtheorem{lemma}[theorem]{Lema}
\newtheorem{proposition}[theorem]{ProposiÃ§Ã£o}
\newtheorem{axiom}[theorem]{Axioma}
\theoremstyle{definition}
\newtheorem{definition}[theorem]{DefiniÃ§Ã£o}
\newtheorem{example}[theorem]{Exemplo}
\newtheorem{exercise}{ExercÃ­cio}[chapter] % contador prÃ³prio, vinculado a capitulo
\theoremstyle{remark}
\newtheorem{remark}[theorem]{ObservaÃ§Ã£o}
\begin{document}
\chapter{TriÃ¢ngulo EquilÃ¡tero}
\begin{definition}
  Um triÃ¢ngulo Ã© dito \emph{triÃ¢ngulo equilÃ¡tero} quando todos os lados forem congruentes.
\end{definition}
\begin{theorem}
  Todo triÃ¢ngulo equilÃ¡tero se, e somente se, todos Ã¢ngulos forem congruentes.
\end{theorem}
\begin{proof}
\ldots
\end{proof}
\begin{remark}
Um triÃ¢ngulo cuja todos Ã¢ngulos sÃ£o congruentes Ã© dito \emph{equiÃ¢ngulo}.
\end{remark}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
\theoremstyle{plain}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%\let\addcontentsline\oriaddcontentsline
%\makeatletter
% % restore exercise env of xsim
% \let\exercise\originalexercise
% \let\endexercise\originalendexercise
% \let\c@exercise\c@exerciseoriginal
%\makeatother

\section{ParÃ¢metros opcionais}

Note que os ambientes tipo teoremas permite colocar o tÃ­tulo como parÃ¢metro opcional do ambiente.
Isto tambÃ©m vale para o ambiente \texttt{proof} quando existem textos entre o enunciado do teorema e a sua prova.
O comando \verb+\proofname+\index{proofname@\verb+\proofname+} armazena o ``nome'' do ambiente \texttt{proof} que o valor atual Ã© ``\texttt{\proofname}''.
Quando a demonstraÃ§Ã£o Ã© finalizada pela equaÃ§Ã£o no modo \texttt{displaystyle}, a marca do final de demonstraÃ§Ã£o fica na linha de baixo.
Para corrigir isso, existe o comando \verb+\qedhere+\index{qedhere@\verb+\qedhere+} que indica onde a marca de final de demonstraÃ§Ã£o deve ser colocada.
Veja o Exemplo~\ref{ex08:teorema:parametro}.

% Para mudar a marca do final de demonstraÃ§Ã£o, redefina o comando \qedsymbol
%\renewcommand{\qedsymbol}{cqd.}


% showexpl juntamente com teoremas e referencias, causa erro na segunda compilacao.
% Nao sei porque, pois na equacao com referencias,
% ou teoremas sem referencias funcionam bem.
% Usando lstlisting e minipage para ter mesmo effeito de showexpl

%\setcounter{lstorichapter}{\value{chapter}}
%%\setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-05.tex, parte b},label=ex:06-05:b,preset={\let\label\orilabel,\setcounter{chapter}{0}}]
%\begin{definition}
%Um triÃ¢ngulo Ã© dito \emph{triÃ¢ngulo retÃ¢ngulo} quando tem um Ã¢ngulo reto. O lado oposto ao Ã¢ngulo reto Ã© denominado de \emph{hipotenusa} e outros dois lados sÃ£o denominados de \emph{catetos}.
%\end{definition}
%\begin{theorem}[PitÃ¡goras]\label{thm:pitagoras}
%  Sejam $\Delta ABC$, um triÃ¢ngulo retÃ¢ngulo onde $a$ Ã© hipotenusa. EntÃ£o
%  \[ a^2=b^2+c^2 \] 
%\end{theorem}
%\begin{remark}
%A reciproca do Teorema~\ref{thm:pitagoras} tambÃ©m Ã© verdadeira.
%\end{remark}
%\begin{proof}[\proofname{} do Teorema~\ref{thm:pitagoras}]
%\ldots
%Assim, temos que
%\[ a^2 + b^2 = c^2 \qedhere \]
%\end{proof}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%%\setcounter{section}{\value{lstorisection}}

%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%\let\orilabel\label
%\begin{singlespacing}
%% \begin{lstlisting}[caption={ex06-05.tex, parte b},label=ex:06-05:b]
%\begin{LTXexample}[pos=b,caption={ex06-05.tex, parte b},label=ex:06-05:b,preset={\let\label\orilabel,\setcounter{chapter}{1}}]
\begin{ltxlisting}[caption={ex08-teorema-parametro.tex},label=ex08:teorema:parametro,preset={\setcounter{chapter}{1}}]
\begin{definition}
Um triÃ¢ngulo Ã© dito \emph{triÃ¢ngulo retÃ¢ngulo} quando tem um Ã¢ngulo reto. O lado oposto ao Ã¢ngulo reto Ã© denominado de \emph{hipotenusa} e outros dois lados sÃ£o denominados de \emph{catetos}.
\end{definition}
\begin{theorem}[PitÃ¡goras]\label{thm:pitagoras}
  Sejam $\Delta ABC$, um triÃ¢ngulo retÃ¢ngulo onde $a$ Ã© hipotenusa. EntÃ£o
  \[ a^2=b^2+c^2 \] 
\end{theorem}
\begin{remark}
A reciproca do Teorema~\ref{thm:pitagoras} tambÃ©m Ã© verdadeira.
\end{remark}
\begin{proof}[\proofname{} do Teorema~\ref{thm:pitagoras}]
\ldots
Assim, temos que
\[ a^2 + b^2 = c^2 \qedhere \]
\end{proof}
\end{ltxlisting}
%\end{LTXexample}
%%\end{lstlisting}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}

%\noindent
%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%\fbox{\begin{minipage}{\linewidth}
%\begin{singlespacing}
%\setcounter{chapter}{1}
%\begin{definition}
%Um triÃ¢ngulo Ã© dito \emph{triÃ¢ngulo retÃ¢ngulo} quando tem um Ã¢ngulo reto. O lado oposto ao Ã¢ngulo reto Ã© denominado de \emph{hipotenusa} e outros dois lados sÃ£o denominados de \emph{catetos}.
%\end{definition}
%\begin{theorem}[PitÃ¡goras]\label{thm:pitagoras}
%  Sejam $\Delta ABC$, um triÃ¢ngulo retÃ¢ngulo onde $a$ Ã© hipotenusa. EntÃ£o
%  \[ a^2=b^2+c^2 \] 
%\end{theorem}
%\begin{remark}
%A reciproca do Teorema~\ref{thm:pitagoras} tambÃ©m Ã© verdadeira.
%\end{remark}
%\begin{proof}[\proofname{} do Teorema~\ref{thm:pitagoras}]
%\ldots
%Assim, temos que
%\[ a^2 + b^2 = c^2 \qedhere \]
%\end{proof}
%\end{singlespacing}
%\end{minipage}} 
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
 
\clearpage\thispagestyle{empty}\cleardoublepage
\chapter[Figuras, Tabelas e Imagens Externas]{Figuras e Tabelas Flutuantes, Tabelas Longas e Imagem Externa}
%Tratar tambÃ©m de caixas grÃ¡ficas.
Neste capÃ­tulo, trataremos de ilustraÃ§Ãµes e tabelas.

\section{Figuras flutuantes}

Elemento flutuante\index{elemento!flutuante} Ã© aquele que nÃ£o precisa ser colocado obrigatoriamente na posiÃ§Ã£o ``digitada'', mas que serÃ¡ colocado na melhor posiÃ§Ã£o possÃ­vel em termos de apresentabilidade.

A figura flutuante\index{figura!flutuante} Ã© especificada pelo ambiente \texttt{figure}\index{figure} e a tabela flutuante Ã© especificada pelo ambiente \texttt{table}\index{table}, respectivamente.
Veja o Exemplo~\ref{ex09:figura}.

%%\setcounter{lstorichapter}{\value{chapter}}
%% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%%\begin{LTXexample}[pos=b,caption={ex08-01.tex},label=ex:08-01,preset={\setcounter{chapter}{0},\let\addcontentsline\emptyaddcontentsline}]
%\begin{LTXexample}[pos=b,caption={ex08-01.tex},label=ex:08-01]
\begin{ltxlisting}[caption={ex09-figura.tex},label=ex09:figura]
\begin{figure}[hbp]
\center

    \

    Aqui se coloca a primeira figura

    \

 \caption[Primeira figura]{Primeira figura como elemento flutuante}
 \label{fig:simp}
\end{figure}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%%\setcounter{chapter}{\value{lstorichapter}}
%%\setcounter{section}{\value{lstorisection}}
%%\let\addcontentsline\oriaddcontentsline

O Exemplo~\ref{ex09:figura} ilustra o uso do ambiente flutuante \texttt{figure}. 
O parÃ¢metro opcional Ã© uma sequÃªncia de caracteres, especificando a ordem que tentarÃ¡ colocar a figura.

\begin{description}
  \item[h]\index{float!h} Onde foi digitado
  \item[b]\index{float!b} na parte inferior da pÃ¡gina
  \item[t]\index{float!t} na parte superior da pÃ¡gina
  \item[p]\index{float!p} pÃ¡gina separada.
  \item[!]\index{float!exclamation@\exclsymbforindex} ignorar a restriÃ§Ã£o de espaÃ§amento.
\end{description}

  No ambiente flutuante, o \LaTeX{} tentarÃ¡ as posiÃ§Ãµes seguindo a lista de especificaÃ§Ã£o dos parÃ¢metros e inserirÃ¡ na primeira posiÃ§Ã£o que satisfizer a exigÃªncia.
  Caso nenhuma posiÃ§Ã£o for conveniente, criarÃ¡ uma pÃ¡gina separada especialmente para ele.

 Durante a tentativa de inserÃ§Ã£o, existem restriÃ§Ãµes estÃ©ticas tal como considerar inadequado quando sobra muito pouco espaÃ§o para o texto. 
RestriÃ§Ãµes como estes podem ser ignorados quando utilizar a opÃ§Ã£o ``!''

O comando \verb+\caption+\index{caption@\verb+\caption+} produz enumeraÃ§Ã£o e tÃ­tulo da figura, podendo estar no comeÃ§o ou no final do ambiente \texttt{figure}. 
Ele aceita o nome curto como argumento opcional para ser usado na lista de figuras, caso tÃ­tulo da figura for longo.

Note que, o rÃ³tulo colocado pelo \verb+\label+\index{label@\verb+\label+} deverÃ¡ ficar dentro ou depois de \verb+\caption+ que Ã© responsÃ¡vel pela enumeraÃ§Ã£o das figuras.

Para colocar moldura, poderÃ¡ usar o \verb+\fbox+\index{fbox@\verb+\fbox+}, mas ele nÃ£o pode ter parÃ¡grafo como argumento. 
Neste caso, podemos usar a combinaÃ§Ã£o com \texttt{minipage} como no Exemplo~\ref{ex09:figura:fbox}.

%%\setcounter{lstorichapter}{\value{chapter}}
%% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex08-01.tex, parte b},label=ex:08-01:b]
\begin{ltxlisting}[caption={ex09-figura-fbox.tex},label=ex09:figura:fbox]
\begin{figure}[hbp!]
  \center
 \fbox{\begin{minipage}{0.5\linewidth}
  \center
  Aqui insere a segunda figura
  \caption{Segunda figura} \label{fig:frame}
 \end{minipage}
 } % fbox
\end{figure}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%%\setcounter{chapter}{\value{lstorichapter}}
%%\setcounter{section}{\value{lstorisection}}

%Caso em que precise inserir duas ou mais imagens numa mesma figura,  use o pacote \texttt{subfigure}.
 
\section{Tabelas flutuantes}

A tabela flutuante\index{tabela!flutuante} Ã© criado da forma similar, usando o ambiente \texttt{table}\index{table}. 
Os argumentos opcionais para controlar a posiÃ§Ã£o de inserÃ§Ã£o Ã© mesmo da figura. 
Veja o Exemplo~\ref{ex09:tabela:flutuante} que ilustra a tabela flutuante, contendo texto como elemento.

%%\setcounter{lstorichapter}{\value{chapter}}
%% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex08-01.tex, parte c},label=ex:08-01:c]
\begin{ltxlisting}[caption={ex09-tabela-flutuante.tex},label=ex09:tabela:flutuante]
\begin{table}[hbp]
\center

    \

    Aqui se coloca a primeira tabela

    \

 \caption{Primeira tabela}
 \label{tab:simp}
\end{table}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%%\setcounter{chapter}{\value{lstorichapter}}
%%\setcounter{section}{\value{lstorisection}}

Normalmente, o conteÃºdo da tabela Ã© criado pelo ambiente apropriado como \texttt{tabular} ou similar.
Alguns casos, podem ser criados como arquivo separado e inserido como no caso de figuras.

Note que, podemos criar moldura, incluindo o tÃ­tulo da tabela atravÃ©s de \texttt{fbox} combinado com o \texttt{minipage}, como feito na figura.

No caso do Exemplo~\ref{ex09:tabela:tabular} ilustra o uso de \texttt{tabular} dentro do ambiente \texttt{table} para criar tabela flutuante.

%% \setcounter{lstorichapter}{\value{chapter}}
%% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex08-01.tex, parte d},label=ex:08-01:d]
\begin{ltxlisting}[caption={ex09-tabela-tabular.tex},label=ex09:tabela:tabular]
\begin{table}[hbp]
 \center
 \begin{tabular}{|p{3.5cm}|l|} \hline
   cenouras  (500g)          &amp; R\$0,50  \\ \hline
   cogumelos (vidro de 500g) &amp; R\$5,00  \\ \hline
   batata    (1Kg)           &amp; R\$1,20  \\ \hline \hline
   total                     &amp; R\$7,20  \\ \hline
 \end{tabular}
 \caption{Usando tabular} \label{tab:tab}
\end{table}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%%\setcounter{chapter}{\value{lstorichapter}}
%%\setcounter{section}{\value{lstorisection}}

Note que, o comando \verb+\supressfloats+\index{supressfloats@\verb+\supressfloats+} podem ser usados para impedir que mais \texttt{floats} sejam inseridas na pÃ¡gina especÃ­fica, mas os ``floats'' com opÃ§Ã£o ``!'' nÃ£o respeitam este comando.

Para que ``floats'' nÃ£o processados (que ainda nÃ£o foram colocados) sejam postos antes de mudar a pÃ¡gina, basta usar
\verb+\clearpage+ ou \verb+\cleardoublepage+ usado para limpar configuraÃ§Ãµes de pÃ¡ginas (chamado pelo \verb+\chapter+, por exemplo).

Note que, lista de figuras\index{lista de figuras} e de tabelas\index{lista de tabelas} sÃ£o geradas pelos comandos \verb+\listoffigures+\index{listoffigures@\verb+\listoffigures+} e \verb+\listoftables+\index{listoftables@\verb+\listoftables+} que costumam ser colocados depois do \verb+\tableofcontents+\index{tableofcontents@\verb+\tableofcontents+} (sumÃ¡rio\index{sumÃ¡rio}).
 
\section{Tabelas longas}
 
O ambiente tabular Ã© ideal para tabelas pequenas. 
Mas as vezes precisamos de tabelas grandes que podem ocupar mais de uma pÃ¡gina. 
Para isso, existe o ambiente \texttt{longtable}\index{longtable} implementado no pacote do mesmo nome.
A tabela longa\index{tabela longa} Ã© contado junto com as tabelas flutuantes e nÃ£o devem ser colocados dentro do ambiente \texttt{table}. 
Ele tambÃ©m possui o comando \verb+\caption*+\index{caption*@\verb+\caption*+} (a versÃ£o ``*'' do \verb+\caption+) que coloca o tÃ­tulo, mas nÃ£o acrescenta na lista de tabelas.
Os parÃ¢metros bÃ¡sicos sÃ£o mesmo do ambiente \texttt{tabular}.

Veja o Exemplo~\ref{ex09:longtable}. Para que este exemplo funcione, deverÃ¡ ter \verb+\usepackage{longtable}+ no \texttt{preamble} do documento.

%% \setcounter{lstorichapter}{\value{chapter}}
%% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex08-02.tex},label=ex:08-02]
\begin{ltxlisting}[caption={ex09-longtable.tex},label=ex09:longtable]
 \begin{longtable}{|c|r|}
 \caption{Tabela Longa} \label{ltab:teste}
 \\ % Ã© necessÃ¡rio pular linha apÃ³s definiÃ§Ãµes preliminares: caption, label, etc.
 \hline
 \textbf{centrada} &amp; \textbf{para direita} \\ \hline \hline
 coluna 1 &amp; coluna 2 \\ \hline
 coluna 1 &amp; coluna 2 \\ \hline
 $\vdots$ &amp; $\vdots$ \\ \hline
 coluna 1 &amp; coluna 2 \\ \hline
 \end{longtable}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%%\setcounter{chapter}{\value{lstorichapter}}
%%\setcounter{section}{\value{lstorisection}}

Note que, ao iniciar o ambiente, coloca as configuraÃ§Ãµes tais como tÃ­tulos, o que fazer antes de mudar a pÃ¡gina, etc.
Depois pula a linha com ``\verb+\\+'' e resto segue normalmente. 
Como \texttt{longtable} usa o arquivo auxiliar para armazenar sua largura, pode precisar compilar duas vezes para ter o resultado desejado (assim como acontece com referÃªncias cruzadas).

Para efetuar as configuraÃ§Ãµes tais como o que fazer quando muda a pÃ¡gina, etc, veja o manual correspondente.

\section{Imagem externa}
As figuras podem ser elaboradas usando o prÃ³prio \LaTeX, mas muitas vezes criamos usando um programa externo.
As imagens externas\index{imagem externa} para serem inseridas no documento \LaTeX, deverÃ¡ estar no formato \texttt{pdf}, \texttt{jpg/jpeg} ou \texttt{png}. 
O formato \texttt{pdf} costuma ser usado para ilustraÃ§Ãµes cientÃ­ficos por ser pequeno e Ã© de alta qualidade (exceto quando convertido de algum formato \texttt{bitmap}).
Se o programa permite gerar \texttt{pdf}, prefira usar este formato. 
O formato \texttt{jpg/jpeg} Ã© apropriado para fotos, mas nÃ£o suporta transparÃªncias.
O formato \texttt{png} Ã© similar a \texttt{jpg/jpeg}, mas suporta transparÃªncias.

O comando para incluir grÃ¡ficos externos Ã© \verb+\includegraphics+\index{includegraphics@\verb+\includegraphics+} implementado no pacote \texttt{graphicx}\index{graphicx} (nÃ£o confundir com o pacote antigo \texttt{graphics} que tem menos recursos).
Para exemplo desta seÃ§Ã£o, assumimos que tenha \verb+\usepackage{graphicx}+ no \texttt{preamble} do documento.
Veja Exemplo~\ref{ex09:imagem}.

% \setcounter{lstorichapter}{\value{chapter}}
% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex09-01.tex},label=ex:09-01]
\begin{ltxlisting}[caption={ex09-imagem.tex},label=ex09:imagem]
\begin{figure}[hbp]
 \center
\includegraphics[width=0.5\linewidth]{latex-via-exemplos-fig}
\caption{Imagem PDF}
\end{figure}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}

Note que nÃ£o foi colocado a extensÃ£o (\texttt{.pdf}) no nome do arquivo.
Em geral omitimos a extensÃ£o do arquivo para poder trocar de formatos, se desejar.

No parÃ¢metro opcional, foi colocado \verb+width=0.5\linewidth+ para especificar que largura Ã© metade da largura da linha atual.
Os parÃ¢metros opcionais\index{includegraphics@\verb+\includegraphics+!parÃ¢metro opcional} controlam o tamanho e rotaÃ§Ã£o das imagens.

\begin{description}
  \item[width] largura da imagem
  \item[height] altura da imagem
  \item[totalheight] altura total (quando Ã© rotacionado,\texttt{height} sÃ³ mede da linha de base para cima).
  \item[scale] ampliaÃ§Ã£o
  \item[angle] rotaÃ§Ã£o em graus
  \item[origin] centro de rotaÃ§Ã£o especificado pela combinaÃ§Ã£o de ``l'' (left), ``r'' (right), ``t'' (top), ``b'' (botton) e ``c'' (center).
  \item[keepaspectratio] manter proporÃ§Ã£o quando \texttt{height} e \texttt{width} for especificado simultaneamente (usado sem o valor).
\end{description}

No caso de incluir o arquivo \texttt{PDF} com mais de uma pÃ¡gina\index{imagem PDF!mÃºltiplas pÃ¡ginas}, poderÃ¡ usar a opÃ§Ã£o \texttt{page} para indicar a pÃ¡gina a ser incluÃ­da.

O Exemplo~\ref{ex09:imagem:rotacao} ilustra a rotaÃ§Ã£o por $30^\circ$ em torno do centro.
 
% \setcounter{lstorichapter}{\value{chapter}}
% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex09-01.tex, parte b},label=ex:09-01:b]
\begin{ltxlisting}[caption={ex09-imagem-rotacao.tex},label=ex09:imagem:rotacao]
\begin{figure}[hbp]
 \center
\includegraphics[width=0.5\linewidth,angle=30,origin=c]{latex-via-exemplos-fig}
\caption{Imagem PDF}
\end{figure}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
 
As vezes queremos colocar figuras lado a lado para comparaÃ§Ã£o ou para economia de espaÃ§os. Para tanto, podemos usar o \texttt{minipage}, como no Exemplo~\ref{ex09:imagem:lado}.

% \setcounter{lstorichapter}{\value{chapter}}
% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex09-01.tex, parte c},label=ex:09-01:c]
\begin{ltxlisting}[caption={ex09-imagem-Äºado.tex},label=ex09:imagem:lado]
\begin{figure}[hbp]
\center
\begin{minipage}{0.4\linewidth}
\center
\includegraphics[width=0.3\linewidth]{latex-via-exemplos-fig}
\caption{lado esquerdo} \label{fig:lado1}
\end{minipage}
\begin{minipage}{0.4\linewidth}
\center
\includegraphics[width=0.3\linewidth,angle=30,origin=c]{latex-via-exemplos-fig}
\caption{lado direito} \label{fig:lado2}
\end{minipage}
\end{figure}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}

\section{Desenhando sobre a imagem externa}
As vezes queremos desenhar sobre a imagem externa importada no documento, como no caso de acrescentar fÃ³rmulas ou mais alguns detalhes.
Para isso, podemos usar o ambiente grÃ¡fico \texttt{picture}\index{picture}.

No Exemplo~\ref{ex09:imagem:sobreposicao} ilustra a sobreposiÃ§Ã£o para colocar fÃ³rmula sobre a imagem externa.

Note que a imagem foi inserida dentro do ambiente \texttt{picture}.

Observe como e onde foi usado o \verb|\unitlength|\index{unitlength@\verb+\unitlength+} para permitir o ajuste de escala (mudando o valor de \verb|\unitlength|) sem perder a posiÃ§Ã£o de sobreposiÃ§Ã£o jÃ¡ ajustada.

% \setcounter{lstorichapter}{\value{chapter}}
% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex09-04.tex},label=ex:09-04]
\begin{ltxlisting}[caption={ex09-imagem-sobreposicao.tex},label=ex09:imagem:sobreposicao]
\begin{figure}[htbp!]
\center
%
\unitlength=0.45\linewidth % unidade
\begin{picture}(1.0,1.0) % caixa reservada
\put(0,0){\includegraphics[width=\unitlength]{latex-via-exemplos-fig}}
% grade para localizar coordenadas
% \multiput(0,0)(0.1,0){11}{\line(0,1){1}}
% \multiput(0,0)(0,0.1){11}{\line(1,0){1}}
\put(0.35,0.45){\LARGE $e^{\pi i}+1=0$}
\end{picture}
\caption{TÃ©cnica de sobreposicao\label{fig:sobreposicao}}
\end{figure}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}

O ambiente \texttt{picture} Ã© um ambiente grÃ¡fico padrÃ£o do \LaTeX{} que permite criar ilustraÃ§Ãµes.
Note que, para criar ilustraÃ§Ãµes, existem vÃ¡rios pacotes grÃ¡ficos apropriados, mas se quiser usar o ambiente \texttt{picture},
lembre-se de colocar o \verb+\usepackage{pict2e}+\index{pict2e} no \texttt{preamble} do documento para eliminar limitaÃ§Ãµes de alguns comandos grÃ¡ficos deste ambiente.

O Exemplo~\ref{ex09:picture} ilustra os comandos bÃ¡sicos do ambiente \texttt{picture} com o uso do pacote \texttt{pict2e}.

% \setcounter{lstorichapter}{\value{chapter}}
% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex09-04.tex, parte b},label=ex:09-04:b]
\begin{ltxlisting}[caption={ex09-picture.tex},label=ex09:picture]
\begin{figure}[hbtp!]
\center
\unitlength=1cm % medida da  unidade
% \linethickness{1mm} % tome cuidado que e comando, nao a medida
\begin{picture}(5,4)(0,0) 
% put coloca o objeto grafico na posiÃ§Ã£o indicada
% line (segmento) e vector (vetor)
% Recebe vetor diretor e comprimento do segmento/vetor
\put(4,3.5){\line(0,1){0.5}} % segmento
\put(5,3){\vector(1,1){0.5}} % vetor
\put(2,2){\circle{1}} % circulo  com centro e raio. 
\put(1,1){\circle*{1.5}} % circle* Ã© circulo solido
\put(3,2){\oval(3,2)} % oval
\put(3.5,2){\makebox(0,0)[cc]{$A=\pi r^2$}} % Caixa de texto (com formulas)
\put(3,0) { \polyline(0,0)(1,0)(1,1)} % linhas poligonais
\put(5,0) { \polygon(0,0)(1,0)(1,1)} % poligonos
\put(6.5,0) { \polygon*(0,0)(1,0)(1,1)} % poligonos preenchidos
\thicklines % linha mais grossa
\put(4,1){\qbezier(0.0,0.0)(1.3,0.0)(2.0,2.8)} % curva bezier quadratica
\thinlines %linha normal (mais fina)
\put(6,1){\cbezier(0.0,0.0)(1.0,0.0)(1.0,1.0)(2.0,3.0)} 
% curva bezier cubica
\end{picture}

\caption{IlustraÃ§Ã£o no formato \TeX{}.\label{fig:tex}}
\end{figure}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}

\section{Caixas grÃ¡ficas}
O pacote \texttt{graphicx} dispÃµes de vÃ¡rios comandos relacionados com a mudanÃ§a de tamanho e rotaÃ§Ãµes.
Eles sÃ£o chamados de caixas grÃ¡ficas.
Os argumentos nÃ£o devem conter quebra de parÃ¡grafos. Assim, se precisar, deverÃ¡ usar juntamente com o \texttt{minipage} (ou \verb+\parbox+). 

Para escalar, usa-se o \verb+\scalebox+\index{scalebox@\verb+\scalebox+}. Para indicar o tamanho fixo, usa-se o \verb+\resizebox+\index{resizebox@\verb+\resizebox+}.
Veja o Exemplo~\ref{ex09:scale}.

% \setcounter{lstorichapter}{\value{chapter}}
% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex09-02.tex},label=ex:09-02]
\begin{ltxlisting}[caption={ex09-scale.tex},label=ex09:scale]
Tamanho normal.

\scalebox{2.5}{Ampliado por 2.5 vezes}

\scalebox{2}[3]{Ampliado por 2x3 vezes} % 2 no horizontal e 3 em vertical (deforma)

\resizebox{10cm}{!}{Com 10 cm de comprimento}

\resizebox{!}{0.5cm}{Com 0.5 cm de altura}

\resizebox{5cm}{0.75cm}{Com 5cm$\times$0.7cm} % deforma
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}

O ``!'' no \verb+\resizebox+ especifica que Ã© calculado automaticamente com outra medida.

A rotaÃ§Ã£o e feito pelo comando \verb+\rotatebox+\index{rotatebox@\verb+\rotatebox+}, onde parÃ¢metro opcional \texttt{origin}\index{rotatebox@\verb+\rotatebox+!origin} permite configurar o centro de rotaÃ§Ã£o, combinando ``l'' (left), ``r'' (right), ``t'' (top), ``b'' (botton) e ``c'' (center).
Veja o Exemplo~\ref{ex09:rotate}.
  
% \setcounter{lstorichapter}{\value{chapter}}
% \setcounter{lstorisection}{\value{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex09-02.tex, parte b},label=ex:09-02:b]
\begin{ltxlisting}[caption={ex09-rotate.tex},label=ex09:rotate]
\rotatebox{30}{Rotacionado} por $30^\circ$.

\rotatebox[origin=rb]{-30}{Rotacionado} por $-30^\circ$ em torno de lado direito inferior.

\rotatebox[origin=c]{45}{Rotacionado} por $45^\circ$ em torno de centro.

\reflectbox{Refletido} estÃ¡ refletido. Mesmo que o \scalebox{-1}[1]{Refletido}.

\raisebox{\depth}{\scalebox{1}[-1]{Refletido}} estÃ¡ refletido verticalmente.

\rotatebox[origin=c]{30}{\scalebox{1.5}{Ampliada e rotacionada}}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}

O \verb+\reflectbox+\index{reflectbox@\verb+\reflectbox+} reflete horizontalmente.
Para refletir verticalmente, use o \verb+\scalebox+, mas precisa ajustar a sua altura. 
%Aqui foi usado o \verb+\raisebox+\index{raisebox@\verb+\raisebox+}, o que nÃ£o vamos entrar em detalhes.

Uma caixa Ã© um bloco e alÃ©m de ser manipulados no tamanho e posiÃ§Ã£o, tambÃ©m pode ser usado mais de uma vez.
Por exemplo, se quer colocar um certo elemento em mais de um lugar, ou colocar mais tarde, poderÃ¡ criar uma caixa e armazenar dentro dele.
Neste texto, nÃ£o vamos entrar em detalhes sobre caixas, mas vÃ¡rias referÃªncias discutem sobre isso.

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Ajuste das Fontes}\label{chap:fontes}
Neste capÃ­tulo, veremos o controle das fontes no \LaTeX.

\section{SeleÃ§Ã£o da famÃ­lia de fontes}
Num documento, usa-se vÃ¡rios tipos de fontes. 
Por exemplo, o corpo do documento nos livros e artigos costuma ser em romano\index{fonte!romano} (o que tem enfeite nas pontas, denominado de serifa\index{serifa}).
Os tÃ­tulos dos artigos e livros podem ficar com fontes \texttt{sans serif}\index{sans serif} (sem serifa\index{fonte!sem serifa}). 
O corpo de slide de apresentaÃ§Ã£o ou poster costuma usar \texttt{sans serif} tambÃ©m.
O cÃ³digo de programa, nome do arquivo, etc que deve ser lido no pÃ© da letra costuma estar como \texttt{typewriter}\index{typewriter} (mono espaÃ§ado\index{fonte!nomo espaÃ§ado}).

Assim, nos documentos cientÃ­ficos, costumam usar trÃªs famÃ­lias de fontes bÃ¡sicos que sÃ£o romano (com serifa\index{com serifa}), \texttt{sans serif} (sem serifa) e \texttt{typewriter} (mono espaÃ§ado) na qual devem estar em harmonia. 
O \LaTeX{} usa a fonte Computer Modern\index{fonte!Computer Modern} por padrÃ£o na qual tem essas trÃªs fontes estÃ£o coerentes entre si.
Note que podem trocar para outras fontes, se desejar, mas estas trÃªs fontes devem estar em harmonia.

A famÃ­lia das fontes sÃ£o selecionadas pelo comando \verb+\textrm+\index{textrm@\verb+\textrm+} ou ambiente \texttt{rmfamily}\index{rmfamily} para romano, o que Ã© padrÃ£o para artigos e livros, pelo comando \verb+\textsf+\index{textsf@\verb+\textsf+} ou ambiente \texttt{sffamily}\index{sffamily} para \texttt{sans serif}, e pelo comando \verb+\texttt+\index{texttt@\verb+\texttt+} ou ambiente \texttt{ttfamily}\index{ttfamily} para \texttt{typewriter}.

Quando aplica a mudanÃ§a da fonte dentro de um ambiente, o ambiente de ajuste de fontes pode ser usado como comandos. Se nÃ£o estiver dentro do ambiente e quer usar a versÃ£o comando do ambiente, poderÃ¡ delimitar a sua atuaÃ§Ã£o, delimitando pelos chaves.
Veja Exemplo~\ref{ex10:family}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex03-01.tex, parte b},label=ex:03-01:b]
\begin{ltxlisting}[caption={ex10-family.tex},label=ex10:family]
\textsf{Fontes sem serifa}

\begin{sffamily}
Texto na fonte sem serifa.
\end{sffamily}

\textsf{Fontes mono espaÃ§ado}

\begin{ttfamily}
Texto na fonte mono espaÃ§ado.
\end{ttfamily}

\begin{center}
\sffamily
texto centralizado e em sans serif.
\end{center}

{\ttfamily Texto em nomo espaÃ§ado}

Texto normal.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}


\section{SeleÃ§Ã£o de formas e peso das fontes}

No \LaTeX, usa-se o comando para trocar forma de fontes, tais como negrito, itÃ¡lico, etc. 
Usar comando adequado no \LaTeX{} Ã© importante para automatizar o processo, nÃ£o somente para formataÃ§Ã£o de textos.
O texto enfatizado\index{fonte!enfatizado} Ã© produzido pelo comando \verb+\emph+\index{emph@\verb+\emph+} ou pelo ambiente \texttt{em}\index{em}.
O comando \verb+\emph+ altera entre fonte reto e itÃ¡lico para destacar palavras tal como termo que estÃ¡ sendo definido.

O texto em negrito\index{fonte!negrito}, por sua vez, Ã© produzido pelo comando \verb+textbf+\index{textbf@\verb+\textbf+} ou pelo ambiente \texttt{bfseries}\index{bfseries} para dar Ãªnfase maior que destaca no meio do texto.
Fonte nÃ£o negrito\index{fonte!nÃ£o negrito} que Ã© padrÃ£o pode ser especificado pelo comando \verb+\textmd+\index{textmd@\verb+\textmd+} ou ambiente \texttt{mdseries}\index{mdseries}. 

Ainda existem outras formas tal como o comando \verb+\textsc+\index{textsc@\verb+\textsc+} e ambiente \texttt{scshape}\index{scshape} para \texttt{small caps}\index{fonte!samll caps}, tambÃ©m conhecido como versaletes\index{versaletes}, comandos \verb+\textit+\index{textit@\verb+\textit+} e ambiente \texttt{itshape}\index{itshape} para itÃ¡licos\index{fonte!itÃ¡lico}. TambÃ©m existe o comando \verb+\textsl+\index{textsl@\verb+\textsl+} e ambiente \texttt{slshape}\index{slshape} que requer cuidado no uso.

O formato normal\index{fonte!formato normal} padrÃ£o Ã© \verb+\textup+\index{textup@\verb+\textup+} ou ambiente \texttt{upshape}\index{upshape}.
Veja Exemplo~\ref{ex10:series}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex03-01.tex, parte c},label=ex:03-01:c]
\begin{ltxlisting}[caption={ex10-series.tex},label=ex10:series]
\textbf{Texto em negrito}

\begin{bfseries}
Negrito como ambiente
\end{bfseries}

\begin{em}
ParÃ¡grafo enfatizado. \emph{Texto enfatizado dentro dele}
\end{em}

\textsc{Small Caps}

\begin{center}
\bfseries
Negrito e centralizado.
\textmd{Normal}
\end{center}

{\scshape Small Caps dentro dos chaves}

Texto normal
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Note que os comandos antigos\index{fonte!comandos antigos} \verb+\rm+, \verb+\tt+, \verb+\bf+, \verb+\sf+, \verb+\it+ e \verb+\sc+ para ajuste de fontes nÃ£o devem ser usados, pois nÃ£o podem ser combinados (por exemplo, nÃ£o Ã© possÃ­vel produzir itÃ¡lico negrito), alÃ©m de ter de problemas de ajustes de espaÃ§amentos (como a necessidade de correÃ§Ã£o de itÃ¡lico).

Para restaurar a fonte padrÃ£o\index{fonte!restaurar padrÃ£o}, basta usar o ambiente \texttt{normalfont}\index{normalfont} (que tem versÃ£o comando dele tambÃ©m).

\section{Tamanho das fontes}

Tamanho das fontes\index{fonte!tamanho} sÃ£o especificados tambÃ©m pelos comandos e o \LaTeX{} efetua ajuste automÃ¡tico em relaÃ§Ã£o ao tamanho padrÃ£o.

O tamanho de menor para maior sÃ£o definidos pelo ambientes

\texttt{tiny}: {\tiny tiny\index{tiny}}

\texttt{scriptsize}: {\scriptsize scriptsize\index{scriptsize}}

\texttt{footnotesize}: {\footnotesize footnotesize}

\texttt{normalsize}: {\normalsize normalsize\index{normalsize}}

\texttt{large}: {\large large\index{large}}

\texttt{Large}: {\Large Large\index{Large}}

\texttt{LARGE}: {\LARGE LARGE\index{LARGE}}

\texttt{huge}: {\huge huge\index{huge}}

\texttt{Huge}: {\Huge Huge\index{Huge}}

Lembrando que existem comandos correspondentes a cada um dos ambientes, similar a outros ambientes de fontes.
Veja Exemplo~\ref{ex10:size}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex03-01.tex, parte d},label=ex:03-01:d]
\begin{ltxlisting}[caption={ex10-size.tex},label=ex10:size]
\begin{Large}
Letra grande (2 escalas acima)
\end{Large}

\begin{em}
\small ParÃ¡grafo enfatizado com letra pequena (uma escala abaixo)
\end{em}

{\footnotesize Fonte 2 escalas abaixo}

Texto normal
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

A fonte com todos atributos padrÃ£o Ã© especificado no \LaTeX{} pelo comando \verb+\textnormal+\index{textnormal@\verb+\textnormal+} ou pelo ambiente \texttt{normalfont}\index{normalfont}.

\section{Ajuste de fontes no modo matemÃ¡tico}\label{sec:fonte:matematica}
No \LaTeX, as especificaÃ§Ãµes das fontes no texto e na fÃ³rmula matemÃ¡tica usam os comandos diferentes.
A especificaÃ§Ã£o da fonte mo modo matemÃ¡tico corresponde ao 
\verb|\text??{}| sÃ£o \verb|\math??{}|:
\verb|\mathrm{}|\index{mathrm@\verb+\mathrm+}, \verb|\mathsf{}|\index{mathsf@\verb+\mathsf+}, \verb|\mathtt{}|\index{mathtt@\verb+\mathtt+}, \verb|\mathbf{}|\index{mathbf@\verb+\mathbf+}, \verb|\mathit{}|\index{mathit@\verb+\mathit+}, \verb|\mathnormal{}|\index{mathnormal@\verb+\mathnormal+}, \verb|\mathcal{}|\index{mathcal@\verb+\mathcal+}.

O comando \verb|\mathcal{}|\index{mathcal@\verb+\mathcal+} que nÃ£o tem correspondente no modo texto, usa a fonte caligrÃ¡fica, mas somente em letras maiÃºsculas.

Os comandos acima nÃ£o funcionam para sÃ­mbolos e eles nÃ£o podem ser combinados.
Por exemplo, \verb|\mathbf{\matrm{A}}| Ã© mesmo que \verb|\mathrm{A}|. 

Assim, \verb+\mathbf+ nÃ£o Ã© apropriado para escrever fÃ³rmulas em negrito. Portanto, use \verb+\boldsymbol+\index{boldsymbol@\verb+\boldsymbol+} do pacote \texttt{amsmath} para converter parte da fÃ³rmula em negrito. Note que, nem todo sÃ­mbolo torna negrito com \verb+\boldsymbol+. Neste caso, use o comando \verb+\pmb+\index{pmb\verb+\pmb+} que emula o negrito, escrevendo trÃªs vezes com pequeno deslocamento.
%Note que, quando usa em conjunto com o \texttt{amsmath}, pode precisar colocar chaves duplas para prevenir erros em \verb+\bm+ 
Veja Exemplo~\ref{ex10:fontes:mat}.

O pacote \texttt{amssymb} dispÃµe de mais dois fontes bastante usados na matemÃ¡tica que sÃ£o \verb+\mathfrak+\index{mathfrak@\verb+\mathfrak+} e \verb+\mathbb+\index{mathbb@\verb+\mathbb+}.
Em geral, usa-se os pacotes \texttt{amsmath} e \texttt{amssymb} quando produz textos matemÃ¡ticos.
EntÃ£o acrescente \verb+\usepackage{amssymb,amsmath}+
no \texttt{preamble} do documento como no Exemplo~\ref{ex10:fontes:mat}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex03-02.tex, parte b},label=ex:03-02:b]
\begin{ltxlisting}[caption={ex10-fontes-mat.tex},label=ex10:fontes:mat]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{amssymb,amsmath}
%\usepackage{bm}
\begin{document}
\[ \forall x \in \mathbb{R},\mathrm{sen}^2(x)+\cos^2(x)=1 \]
{\bfseries Para $\pmb{i=0}$}: Por definiÃ§Ã£o, $0!=1$.
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Note que nomes (ou abreviaÃ§Ãµes) das funÃ§Ãµes devem estar em fonte romano reto. 
Assim, $\mathrm{sen}$ foi produzido, usando \texttt{mathrm}.

Para nÃ£o precisar especificar \verb|\mathrm{}|, existem comandos para nomes\index{comandos!nome das funÃ§Ãµes} de maioria das funÃ§Ãµes matemÃ¡ticas mais conhecidas.

Nome das funÃ§Ãµes prÃ©-definidas:

$\arccos$\index{arccos@\verb+\arccos+}, $\arcsin$\index{arcsin@\verb+\arcsin+}, $\arctan$\index{arctan@\verb+\arctan+}, $\arg$\index{arg@\verb+\arg+}, $\bmod$\index{bmod@\verb+\bmod+}, $\cos$\index{cos@\verb+\cos+}, $\cosh$\index{cosh@\verb+\cosh+}, $\cot$\index{cot@\verb+\cot+}, $\coth$\index{coth@\verb+\coth+}, $\csc$\index{csc@\verb+\csc+}, $\deg$\index{deg@\verb+\deg+}, $\det$\index{det@\verb+\det+}, $\dim$\index{dim@\verb+\dim+}, $\exp$\index{exp@\verb+\exp+}, $\gcd$\index{gcd@\verb+\gcd+}, $\hom$\index{hom@\verb+\hom+}, $\inf$\index{inf@\verb+\inf+}, $\ker$\index{ker@\verb+\ker+}, $\lg$\index{lg@\verb+\lg+}, $\lim$\index{lim@\verb+\lim+}, $\liminf$\index{liminf@\verb+\liminf+}, $\limsup$\index{limsup@\verb+\limsup+}, $\ln$\index{ln@\verb+\ln+}, $\log$\index{log@\verb+\log+}, $\max$\index{max@\verb+\max+}, $\min$\index{min@\verb+\min+}, $\sec$\index{sec@\verb+\sec+}, $\sin$\index{sin@\verb+\sin+}, $\sinh$\index{sinh@\verb+\sinh+}, $\sup$\index{sup@\verb+\sup+}, $\tan$\index{tan@\verb+\tan+}, $\tanh$\index{tanh@\verb+\tanh+}, $\Pr$\index{Pr@\verb+\Pr+}.

Note que o \emph{seno} em inglÃªs Ã© \emph{sine}, abreviado para \texttt{sin} que nÃ£o coincide com o termo usado no Brasil que Ã© \texttt{sen}.
Neste caso, costuma definir o comando para nÃ£o ficar digitando \texttt{mathrm} toda hora.
De forma anÃ¡loga, quando o comando produz nome nÃ£o usual, como no caso de tangente que Ã© $\tan$ no \LaTeX, mas costuma usar $\mathrm{tg}$ no Brasil, podem ser redefinidos.
A definiÃ§Ã£o e redefiniÃ§Ã£o de comandos estÃ£o na SeÃ§Ã£o~\ref{sec:comandos} do Capitulo~\ref{chap:novo:comando}. 

Mesmo com o texto em negrito, a equaÃ§Ã£o nÃ£o ficarÃ¡ em negrito. Para que todas as equaÃ§Ãµes de um trecho fiquem em negrito, usa-se o ambiente \texttt{boldmath}\index{boldmath}. Se quer que somente alguns sÃ­mbolos (ou um trecho) fique em negrito, usa-se o comando \verb+\boldsymbol+\index{boldsymbol@\verb+\boldsymbol+} do pacote \texttt{amsbsy}\index{amsbsy} que Ã© carregaado pelo \texttt{amsmath}. Note que \verb+\mathbf+ produz alfabeto em negrito na fÃ³rmula, mas nÃ£o os sÃ­mbolos. Uma observaÃ§Ã£o importante Ã© que o comando \verb+\boldsymbol+ e o ambiente \verb+\boldmath+ nÃ£o funcionam para \texttt{unicode-math} do Xe\LaTeX/Lua\LaTeX, sendo necessÃ¡rio substituir por \verb+\symbf+\index{symbf@\verb+\symbf+}. Paraa quem usa ou pretende usar \XeLaTeX{} e/ou Lua\LaTeX, uma soluÃ§Ã£o Ã© colora o cÃ³digo

\begin{singlespacing}
\begin{lstlisting}
\makeatletter
\AtBeginDocument{%
  \@ifpackageloaded{unicode-math}{%
      \let\boldsymbol\symbf
  }{\let\symbf\boldsymbol}%
}{}
\makeatother
\end{lstlisting}
\end{singlespacing}

no preÃ¢mbulo para que \verb+\boldsymbol+ e \verb+\symbf+ fiquem ativos com ou sem \texttt{unicode-math}

Veja o Exemplo~\ref{ex10:negrito}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-06.tex},label=ex:06-06]
\begin{ltxlisting}[caption={ex10-negrito.tex},label=ex10:negrito]
\documentclass{article}
\usepackage{amsbsy} % para sÃ­mbolo em negrito
\begin{document}
Normal
\[ a^2=b^2+c^2 \]
Alguns sÃ­mbolos em negrito
\[ \boldsymbol{a}^2=b^2+c^2 \]
Um trecho em negrito
\[\boldsymbol{a^2=b^2+c^2}\]
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}


\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{ReferÃªncias BibliogrÃ¡ficas e Ãndice Remissivo}
Veremos como produzir Ã­ndice remissivo e referÃªncias bibliogrÃ¡ficas no \LaTeX.

\section{ReferÃªncias bibliogrÃ¡ficas}
Uma referÃªncias bibliogrÃ¡ficas\index{referÃªncia bibliogrÃ¡fica} Ã© uma lista de referÃªncias externas usadas no trabalho, comumente apresentado no final do documento.
Esta lista Ã© definido pelo ambiente \texttt{thebibliography}\index{thebibliography} cuja argumento Ã© o elemento com maior largura, para ajustar alinhamento de seus itens. 
Cada item da referÃªncia Ã© especificado pelo comando \verb+\bibitem+\index{bibitem@\verb+\bibitem+} cujo argumento obrigatÃ³rio Ã© uma chave e argumento opcional Ã© o rÃ³tulo a ser impresso no item (se for omitido, serÃ¡ usado nÃºmeros). 
Depois segue os dados da referÃªncia bibliogrÃ¡fica como devem ser impressas.
Em geral, esta lista serÃ¡ colocado no final do documento (se existir o Ã­ndice remissivo, serÃ¡ antes do Ã­ndice remissivo). 
No Exemplo~\ref{ex11:bib}, o argumento \texttt{OPHS15} do \texttt{thebibliography} serÃ¡ usado para medir o espaÃ§o deixado Ã&nbsp; esquerda dos itens.
AlÃ©m disso, cada item tem o rÃ³tulo (argumento opcional) a ser impresso como nome. 
Depois vem a chave que serÃ¡ usado no documento para citar o item especifico.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex07-01.tex},label=ex:07-01,preset={\let\addcontentsline\emptyaddcontentsline}]
\begin{lstlisting}[caption={ex11-bib.tex},label=ex11:bib]
\begin{thebibliography}{OPHS15}
\bibitem[GMS04]{Goossens:2004}
 Michel Goossens and Frank Mittelbach
 \emph{The {\LaTeX} companion (second edition)}, Adilson--Wesley, 2004.
\bibitem[Tea00]{IndianTUG:2000}
 Tutorial Team, \emph{Online tutorials on {\LaTeX}},
 Indian {\TeX} User Group, 2000. 
\bibitem[LL94]{Lamport:1994} 
 Leslie Lamport,
 \emph{\LaTeX: A Document Preparation System (2nd Edition)},  Addison-Wesley Professional, 1994. 
 \bibitem[OPHS15]{Oetiker:2015}
 Tobias Oetiker et. al.,
 \emph{The Not So Short Introduction to \emph{\LaTeXe}}, URL: https://ctan.org/pkg/lshort-english,
2015.
\end{thebibliography}
\end{lstlisting}
%\end{LTXexample}
%\end{singlespacing}

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex07-01.tex},label=ex:07-01,preset={\let\addcontentsline\emptyaddcontentsline}]
\begin{ltxlistingout}
\begin{thebibliography}{OPHS15}
\bibitem[GMS04]{Goossens:2004:temp}
 Michel Goossens and Frank Mittelbach
 \emph{The {\LaTeX} companion (second edition)}, Adilson--Wesley, 2004.
\bibitem[Tea00]{IndianTUG:2000:temp}
 Tutorial Team, \emph{Online tutorials on {\LaTeX}},
 Indian {\TeX} User Group, 2000. 
\bibitem[LL94]{Lamport:1994:temp} 
 Leslie Lamport,
 \emph{\LaTeX: A Document Preparation System (2nd Edition)},  Addison-Wesley Professional, 1994. 
 \bibitem[OPHS15]{Oetiker:2015:temp}
 Tobias Oetiker et. al.,
 \emph{The Not So Short Introduction to \emph{\LaTeXe}}, URL: https://ctan.org/pkg/lshort-english,
2015.
\end{thebibliography}
\end{ltxlistingout}
%\end{LTXexample}
%\end{singlespacing}

No texto, uma citaÃ§Ã£o da referÃªncia bibliogrÃ¡fica Ã© inserida pelo comando \verb+cite{chave}+\index{cite@\verb+\cite+} onde \texttt{chave} Ã© a chave colocado no \verb+\bibitem+.

Se for citar mais de um item, coloque as chaves separadas pela virgula. TambÃ©m poderÃ¡ colocar informaÃ§Ãµes adicionais como parÃ¢metro opcional do \verb+\cite+.
Veja Exemplo~\ref{ex11:cite}.
 
\begin{singlespacing}
%\begin{lstlisting}[pos=b,caption={ex07-01.tex, parte b},label=ex:07-01:b]
\begin{lstlisting}[caption={ex11-cite.tex},label=ex11:cite]
Exemplo de referÃªncia bibliogrÃ¡fica (veja~\cite{Lamport:1994} e \cite{Oetiker:2015}).

Para exemplos usando o BibTeX, poderÃ¡ consultar
\cite{IndianTUG:2000, Goossens:2004}.

Para recursos avanÃ§ados de BibTeX, veja o 
\cite[Cap.~13]{Goossens:2004}.
\end{lstlisting}
\end{singlespacing}

%\noindent
%\fbox{\begin{minipage}{\linewidth}
%\begin{singlespacing}
\begin{ltxlistingout}
%Exemplo de referÃªncia bibliogrÃ¡fica (veja~\cite{Lamport:1994} e \cite{Oetiker:2015}).
Exemplo de referÃªncia bibliogrÃ¡fica (veja~[LL94] e [OPHS15]).

%Para exemplos usando o BibTeX, poderÃ¡ consultar \cite{IndianTUG:00, Goossens:2004}.
Para exemplos usando o BibTeX, poderÃ¡ consultar [Tea00, GMS04].

%Para recursos avanÃ§ados de BibTeX, veja o \cite[Cap.~13]{Goossens:2004}.
Para recursos avanÃ§ados de BibTeX, veja o 
[GMS04, Cap.~13].
\end{ltxlistingout}
%\end{singlespacing}
%\end{minipage}}

\section{Usando o \BibTeX}

Checar qual das referÃªncias foram usadas e formatar uniformemente de acordo com as exigÃªncias do editor Ã© uma tarefa difÃ­cil.
Para automatizar este serviÃ§o, podemos usar o \BibTeX{}\index{BibTeX}  que Ã© uma ferramenta especialmente desenvolvida para manipular referÃªncias bibliogrÃ¡ficas.
Os editores costumam deixar um arquivo de estilo prÃ³prio para \BibTeX{} e usando ele, o \BibTeX{} formatarÃ¡ automaticamente as referÃªncias bibliogrÃ¡ficas de acordo.
Outra coisa importante que o \BibTeX{} faz Ã© checar quais dos itens foram usados e imprimir somente as referÃªncias citadas no texto.

Para usar o \BibTeX, prepara o arquivo de referÃªncia bibliogrÃ¡fica\index{arquivo!referÃªncia bibliogrÃ¡fica} separado, com extensÃ£o \texttt{.bib}, que contÃ©m informaÃ§Ãµes das referÃªncias.
Em geral, costumamos usar os aplicativos grÃ¡ficos tal como aplicativo gratuito e multi plataforma \texttt{jabref}\index{jabref} (\url{http://www.jabref.org/}) para editar o arquivo de \BibTeX, mas tambÃ©m pode ser editado manualmente.

Aqui, vamos ver como preparar manualmente o arquivo \texttt{.bib}.
Veja o Exemplo~\ref{ex11:bibtex:bib} para ver como deve ficar o arquivo \texttt{.bib}.
\begin{singlespacing}
%\begin{lstlisting}[language=BibTeX,pos=b,caption={ex07-02.bib},label=ex:07-02:bib]
\begin{lstlisting}[language=BibTeX,caption={ex11-bibtex.bib},label=ex11:bibtex:bib]
@string{AW="Adilson--Wesley"}
@string{TUG="{\TeX{}} User Group"}

@book{Lamport:1994,
author={Leslie Lamport},
title="{\LaTeX{}}, A Document Preparation System (2nd Edition)",
publisher=AW,
address ={Reading, MA},
year=1994
}

@book{Goossens:2004,
author={Michel Goossens and Frank Mittelbach},
title="The {\LaTeX} companion (second edition)",
publisher=AW,
address ={Reading, MA},
year=2004
}

@book{Oeticker:2015,
author={Tobians Oeticker and Hubert Partl and Irene Hyna and Elisabeth Schlegl},
title="The Not So Short Introduction to {\LaTeXe{}}",
publisher=CTAN,
note={https://ctan.org/pkg/lshort-english},
year=2015
}

@book{IndianTUG:2000,
author={{Tutorial Team}},
title="Online Tutorials on {\LaTeX{}}",
publisher="Indian " # TUG,
note = {http://www.tug.org/tutorials/tugindia/},
year=2000
}

@article{Mertz:2009,
author={Andrew Mertz and William Slough},
title={A TikZ tutorial: Generating graphics in the
spirit of {\TeX}},
journal=TUGboat,
note={http://www.tug.org/TUGboat/tb30-2/tb95mertz.pdf}
volume=30,
number=2,
year=2009
}
\end{lstlisting}
\end{singlespacing}

O comando de \BibTeX{} inicia com ``@''\index{BibTeX!arroba@\arrobasymbforindex} seguido de nome e seus  dados entre chaves.
Os dados sÃ£o listas separados pela virgula na forma forma ``chave=dado'', onde dado pode ser delimitado por aspas ou chaves.

\texttt{@string}\index{BibTeX!arrobastring@{\arrobasymbforindex string}} permite definir abreviaturas.
No comeÃ§o do arquivo, foi definido as abreviaturas \texttt{AW} para ``Adilson--Wesley'' e \texttt{TUG} para ``\{\TeX\{\}\} User Group'' para facilitar a digitaÃ§Ã£o de dados.
Note que, comandos de \TeX{} devem ficar delimitados pelas chaves no arquivo de \BibTeX.

Depois encontra o \texttt{@book}\index{BibTeX!arrobabook@{\arrobasymbforindex book}} que especifica que Ã© dado de um livro.
Entre chaves, estÃ£o os dados do livro tais como tÃ­tulo, autor, etc, onde cada campo Ã© separado da outra pela virgula e dados do campo sÃ£o delimitados pelos chaves ou aspas.
Note que o primeiro elemento de \texttt{@book} Ã© uma chave a ser usado dentro do documento pelo comando \verb+\cite+ e Ã© Ãºnico que nÃ£o Ã© da forma \texttt{campo = dado do campo}
Tanto aspas como chaves podem ser usados para delimitar dados do campo, mas se dado for uma Ãºnica palavra como o ano, nÃ£o precisa do delimitador.

Relembrando que os comandos de \TeX{} devem ficar delimitados por chaves, o que indica ao \BibTeX{} para nÃ£o alterar esta parte (como converter entre maiÃºsculo e minÃºsculo).
Note o uso da abreviatura \texttt{AW} em alguns pontos do documento (sem colocar delimitadores).
Esta abreviatura foi definido no comeÃ§o do arquivo e serÃ¡ substituÃ­do automaticamente pelo seu valor ``Adilson--Wesley'' pelo \BibTeX.

No \texttt{publisher="Indian " \# TUG}, ``\#''\index{BibTeX!\#} faz a concatenaÃ§Ã£o de dois strings \verb*+Indian + e o string\texttt{TUG} que Ã© \verb+{\TeX{}} User Group+.

Quando tem vÃ¡rios autores, separe os nomes com ``and'' que o \BibTeX{} vai entender.
Quando nome ou sobrenome Ã© uma palavra composta, coloque \verb+{ }+ em vez de espaÃ§o, como em \verb+author="Paulo da Silva Gon{\c c}alves{ }Junior"+. Outra forma Ã© usar o formato ``sobrenome, nome'' como em \verb+author="Gon{\c c}alves Junior, Paulo da Silva"+.
No exemplo, ``Tutorial Team'' no campo do autor foi escrito desta forma.

Parte do campo que nÃ£o pode ser retocado (alterar entre maiÃºsculo e minÃºsculo, abreviar, etc) como no caso de comando de \LaTeX, coloque entre chaves extras. No caso do sobrenome dos autores, Ã© recomendÃ¡vel nÃ£o colocar entre chaves, pois a conversÃ£o automÃ¡tica entre maiÃºsculo e minÃºsculo serÃ¡ desativada.

% Quando Ã© um nome estrangeiro na qual a ordenaÃ§Ã£o nÃ£o ocorre de forma devida, poderÃ¡ usar o campo `` key'' para indicar a palavra usada para ordenaÃ§Ã£o.

Tendo o arquivo \texttt{.bib} pronto, efetuamos as citaÃ§Ãµes como no caso anterior.

Agora, no final do arquivo, onde colocamos o ambiente \texttt{thebibliography}, substituÃ­mos por

\begin{singlespacing}
\begin{lstlisting}
\bibliographystyle{[estilo bib]}
\bibliography{[arquivo bib]}
\end{lstlisting}
\end{singlespacing}

onde \texttt{[estilo bib]} Ã© o estilo usado para formatar as referÃªncias bibliogrÃ¡ficas e \texttt{[arquivo bib]} Ã© o nome do arquivo de \BibTeX{} (extensÃ£o \verb+bib+) sem extensÃ£o. Quando tiver mais de um arquivo, separe os nomes pela vÃ­rgula.

Agora execute o \LaTeX, \BibTeX{} e \LaTeX{} novamente. 
Em geral, os editores especializados para \LaTeX{} tem os botÃµes ou menus para rodar o \BibTeX, alÃ©m dos botÃµes de compilar (executar o \LaTeX).

Ao executar \BibTeX, serÃ¡ gerado a saÃ­da das referÃªncias bibliogrÃ¡ficas somente com itens citados. 
Por exemplo, para as citaÃ§Ãµes do Exemplo~\ref{ex11:cite}, o artigo com chave \texttt{Mertz:2009} serÃ¡ ignorado por nÃ£o estar citados.

Para mudar a formataÃ§Ã£o das referÃªncias, Ã© sÃ³ alterar o estilo em \verb+\bibliographystyle+\index{bibliographystyle@\verb+\bibliographystyle+} e executar o \BibTeX e \LaTeX{} novamente.
Os estilos bÃ¡sicos sÃ£o: \texttt{plain}\index{BibTeX!plain} (rÃ³tulo numÃ©rico), \texttt{unsrt}\index{BibTeX!unsrt} (similar a \texttt{plain}, mas sem ordenar -- na ordem que foi citado), \texttt{alpha}\index{BibTeX!alpha} (rÃ³tulo pelo sobrenome e ano), \texttt{abbrv}\index{BibTeX!abbrv} (similar a \texttt{plain}, mas mais compacto), \texttt{amsplain}\index{BibTeX!amsplain} (estilo \texttt{plain} do AMS), \texttt{amsalpha}\index{BibTeX!amsalpha} (estilo \texttt{alpha} do AMS).

AlÃ©m desses, existem vÃ¡rios outros estilos, dependendo da instalaÃ§Ã£o de cada sistema \TeX{} em uso.

Se o editor dispÃµe de arquivos de estilo para \BibTeX{} (com extensÃ£o \texttt{bst}\index{arquivo!bst}), deixe este arquivo junto com arquivo \texttt{tex} e no \verb+\bibliographystyle+, passe o nome deste arquivo \texttt{.bst} sem a extensÃ£o. 
Se arquivo Ã© \texttt{meuart.bst}, o estilo Ã© \texttt{meuart}.

Uma observaÃ§Ã£o importante Ã© que o \BibTeX{} nÃ£o suporta  adequadamente a acentuaÃ§Ã£o direta ainda. 
Assim, deverÃ¡ acentuar no modo \TeX. 
Lembre-se que a acentuaÃ§Ã£o no modo \TeX{} precisa estar entre chaves para \BibTeX{} nÃ£o tentar processar esta parte.   

Quando o editor exige um padrÃ£o diferente do disponÃ­vel e nÃ£o fornece o arquivo de estilo para \BibTeX, podemos contornar o problema da seguinte forma.
Primeiro termine o artigo ou livro com citaÃ§Ãµes necessÃ¡rias e usando um estilo mais prÃ³ximo do exigido.
Depois rode o \LaTeX{} e \BibTeX. O \BibTeX{} gerarÃ¡ um arquivo com extensÃ£o \texttt{bbl}\index{arquivo!bbl}, com o mesmo nome do arquivo \texttt{tex}. Este arquivo \texttt{.bbl} contÃ©m o ambiente \texttt{thebibliography} com itens de bibliografia jÃ¡ formatada. Copie ele para documento original onde estÃ¡ o 
\begin{verbatim}
\bibliographystyle{[estilo bib]}
\bibliography{[arquivo bib]}
\end{verbatim}
e efetue alteraÃ§Ãµes manualmente.

NÃ£o esqueÃ§a de comentar o
\begin{verbatim}
\bibliographystyle{[estilo bib]}
\bibliography{[arquivo bib]}
\end{verbatim}

Para especificar dados no arquivo de \BibTeX, alÃ©m da categoria \texttt{@book} (livro), existem muitas especificaÃ§Ãµes de documentos tais como \texttt{@article}\index{BibTeX!arrobaarticle@{\arrobasymbforindex article}} (artigo), \texttt{@manual}\index{BibTeX!arrobamanual@{\arrobasymbforindex manual}} (documentaÃ§Ã£o tÃ©cnica), \texttt{@phdthesis}\index{BibTeX!arrobaphdthesis@{\arrobasymbforindex phdthesis}} (tese de doutorado), etc, uma para cada categoria. 
Se nÃ£o enquadrar em nenhuma das categorias disponÃ­veis, use o \texttt{@misc}\index{BibTeX!arrobamisc@{\arrobasymbforindex misc}} (diversos).

A lista destas categorias e seus campos estÃ£o resumidos na tabela a seguir.

\noindent
\begin{longtable}{|p{0.2\linewidth}|l|p{0.2\linewidth}|p{0.35\linewidth}|}
%\\ 
\hline
\textbf{tipo} &amp; \textbf{bibtex} &amp; \textbf{necessÃ¡rio} &amp; \textbf{opcional}\\ \hline
artigos &amp; @article &amp; auther, title, journal year &amp; volume, number, pages, month, note\\  \hline
tese (doutorado) &amp; @phdthesis &amp; author, title, school, year &amp; type, address, month, note\\  \hline
dissertaÃ§Ã£o (mestrado) &amp; @mastersthesis &amp; author, title, school, year &amp; type, address, month, note\\  \hline
anais de conferÃªncia &amp; @proceedings &amp; title, year &amp; editor, volume, number, series, address, month, organization, publisher, note\\  \hline
artigo no anais de conferÃªcnia &amp; @inproceedings &amp; author, title, booktitle, year &amp; editor, volume, number, series, pages, address, month, organization, publisher, note\\  \hline
mesmo que inproceedings &amp; @conference &amp; author, title, booktitle, year &amp; editor, volume, number, series, pages, address, month, organization, publisher, note\\  \hline
livro &amp; @book &amp; author ou editor, title, publisher, year &amp; volume, number, series, address, edition, month, note\\  \hline
quase livro (notas e simlares) &amp; @booklet &amp; title &amp; author, howpublished, address, month, year, note\\  \hline
parte de um livro &amp; @inbook &amp; author ou editor, title, chapter ou pages, publisher, year &amp; volume, number, series, type, address, edition, month, year\\  \hline
parte de uma coleÃ§Ã£o &amp; @incollection &amp; author, title, booktitle, publisher, year &amp; editor, volume, number, series, type, chapter, pages, address, edition, month, note\\  \hline
manual &amp; @manual &amp; title &amp; author, organization, address, edition, month, year, note\\  \hline
relatÃ³rio tÃ©cnico &amp; @techreport &amp; author, title, institution, year &amp; type, number, address, month, note\\  \hline
nÃ£o pblicado &amp; @unpublished &amp; author, title, note &amp; month, year\\  \hline
outros &amp; @misc &amp; nenhuma &amp; author, title, howpublished, month, year, note\\ \hline
\end{longtable}

O texto sem estar com especificaÃ§Ã£o que inicia com ``@'' serÃ¡ ignorado pelo \BibTeX{} e funciona como comentÃ¡rio\index{BibTeX!comentÃ¡rio}.
Mas existe o especificador \texttt{@comment}\index{BibTeX!arrobacomment@{\arrobasymbforindex comment}} especial para inserir comentÃ¡rios\index{BibTeX!comentÃ¡rio} para fins de organizaÃ§Ã£o.

Como existem muitas categorias e cada categoria tem campos diferentes a ser preenchidos, editar o arquivo de \BibTeX{} manualmente nÃ£o Ã© muito simples.
Assim, costumamos usar os aplicativos prÃ³prios para isso. 
Como foi dito antes, um desses aplicativos Ã© o \texttt{jabref}\index{jabref} (\url{http://www.jabref.org/}) que funciona em quase toda plataforma e Ã© gratuito. 

\section{Ãndice remissivo}

Para criar o Ã­ndice remissivo, usa-se o pacote \texttt{makeidx}\index{makeidx} e o comando \verb+\makeindex+\index{makeindex@\verb+\makeindex+} no \texttt{preamble} do documento para ativar o seu uso.

Para acrescentar itens no Ã­ndice remissivo\index{indice@{indice} remissivo}, usa-se o comando \verb+\index{}+\index{index@\verb+\index+}, mas lembre-se de nÃ£o colocar espaÃ§os entre palavra referida e o comando.
Para colocar Ã­ndice remissivo com sub-entrada\index{indice@{Ã­ndice} remissivo!sub-entrada}, usa-se o ``!'' para separar entrada e sub-entrada, mas evite espaÃ§os nos lados de ``!'' (qualquer espaÃ§o extra pode causar confusÃµes na organizaÃ§Ã£o do Ã­ndice remissivo).

As vezes, Ã© necessÃ¡rio usar uma ``chave'' para classificar os itens\index{indice@{Ã­ndice} remissivo!com chave}.

Isto ocorre quando usamos sÃ­mbolos matemÃ¡ticos, aspas, ou outros caracteres especiais, formataÃ§Ã£o de caracteres, etc.
Sem a ``chave'' de classificaÃ§Ã£o, \texttt{makeindex} pode classificar usando o que estÃ¡ escrito, o que nem sempre corresponde a posiÃ§Ã£o correta. 
Para resolver este problema, usa-se o \verb+\index{chave@item}+.
Por exemplo
\begin{singlespacing}
\begin{lstlisting}
Ps Ã­tens em negrito\index{item em negrito@\textbf{Ã­tem em negrito}},
itens com aspas\index{item com aspas@``Ã­tem com aspas''} e sÃ­mbolos \index{simbolos@{sÃ­mbolos}}, etc podem ser colocados com ordenaÃ§Ã£o correta.
\end{lstlisting}
\end{singlespacing}
inserem entradas em negrito e item com aspas classificado corretamente.
Lembre tambÃ©m que as letras acentuadas costumam vir na posiÃ§Ã£o diferente das nÃ£o acentuadas.
Neste caso tambÃ©m poderÃ¡ usar a chave para colocar na posiÃ§Ã£o correta.
Veja o Exemplo~\ref{ex11:index}.

\begin{singlespacing}
%\begin{lstlisting}[pos=b,caption={ex05-02.tex},label=ex:05-02]
\begin{lstlisting}[caption={ex11-index.tex},label=ex11:index]
Podemos usar Ã­ndice remissivo\index{Ã­ndice remissivo} com sub-entrada\index{Ã­ndice remissivo!sub-entrada}.
TambÃ©m podemos usar ``chave'' para classificar os itens, como itens em negrito\index{item em negrito@\textbf{item em negrito}}, itens com aspas\index{item com aspas@``item com aspas''} e sÃ­mbolos como $\alpha$\index{alfa@$\alpha$}.
TambÃ©m podemos usar item e enumeraÃ§Ã£o em negrito\index{item e enumeraÃ§Ã£o em negrito@\textbf{item e enumeraÃ§Ã£o em negrito}|textbf}
\printindex % colocar indice remissivo (glossÃ¡rio) aqui.
\end{lstlisting}
\end{singlespacing}

No corpo do documento, terÃ¡ nenhuma diferenÃ§a visual em ter o \verb+\index{}+ e logo, a sua saÃ­da foi omitida.
  
Podemos especificar sub-entrada com chaves como em

\begin{singlespacing}
\begin{lstlisting}
itens em negrito com sub-entrada\index{item@\textbf{item}!\textbf{em negrito}!\textbf{com sub-entrada}}. 
\end{lstlisting}
\end{singlespacing}

Observe a ordem que usa o ``@'' e ``!'' na especificaÃ§Ã£o de itens com chave e subentrada.

Para indicar a ocorrÃªncia num trecho\index{indice remmissivo!trecho}, usa-se o \verb+\index{item|(+ para iniciar e \verb+\index{item|)+ para finalizar.

Quando um item referÃª-se ao outro, usa-se 
o \verb+\index{Ã­tem|see{referÃªncia}}+ com em
\begin{lstlisting}
grossÃ¡rio\index{grossÃ¡rio|see{Ã­ndice remissivo}}.
\end{lstlisting}

Para mudar a fonte usada na enumeraÃ§Ã£o da pÃ¡gina, coloque a especificaÃ§Ã£o apÃ³s ``|'' ou ``|('' dependendo de ser pÃ¡gina ou trecho como em
\begin{lstlisting}
Ãndice com paginaÃ§Ã£o em negrito\index{item e enumeraÃ§Ã£o em negrito@\textbf{Ã­tem e enumeraÃ§Ã£o em negrito}|textbf}.
\end{lstlisting}

Para colocar o Ã­ndice remissivo gerado, 
usa-se o comando \verb+\printindex+\index{printindex@\verb+\printindex+}.

Finalmente, para produzir o Ã­ndice remissivo, deverÃ¡ executar \LaTeX, \verb+makeindex+\index{makeindex} e \LaTeX{} novamente. 
Os editores especializados para \LaTeX{} costuma vir com botÃ£o ou menu para chamar o \texttt{makeindex}.

Note que, por padrÃ£o, o processador \texttt{makeindex} aceita somente atÃ© 3 nÃ­veis de sub-entrada.
Caso queira mais nÃ­veis, poderÃ¡ optar por usar \texttt{xindy}\index{xindy} em vez de \texttt{makeindex} com configuraÃ§Ã£o adequada.
O \texttt{xindy} suporta indexaÃ§Ã£o internacional, alÃ©m de diversas configuraÃ§Ãµes, entre eles, aumentar o nÃ­vel de sub-entradas via arquivo de configuraÃ§Ã£o.
Note que o desenvolvimento do \texttt{xindy} estÃ¡ parado. Assim, para Ã­ndice remissivo internacional, Ã© recomendado usar o \texttt{xindex}\index{xindex} ou \texttt{upmendex}\index{upmendex} em vez de \texttt{xindy}.

No entanto, dependendo do editor, pode nÃ£o vir com botÃ£o para executar o \texttt{xindex} ou similar.

O Ã­ndice remissivo do Exemplo~\ref{ex11:index} ficaria como segue

%\begin{singlespacing}
%\fbox{\begin{minipage}{\linewidth}
\begin{ltxlistingout}
\chapter*{Ãndice Remissivo}
\noindent Ã­ndice remissivo, 1

\hspace{2em} sub-entrada, 1
   
  \medskip

\noindent $\alpha$, 1

  \medskip

\noindent ``item com aspas'', 1

\noindent \textbf{item em negrito}, 1

\noindent \textbf{item e enumeraÃ§Ã£o em negrito}, \textbf{1}
\end{ltxlistingout}
%\end{minipage}}
%\end{singlespacing}

Note que @, !, | e \verb+"+ tem significados na entrada de Ã­ndice remissivo. 
Para colocar estes caracteres na entrada de Ã­ndice remissivo, coloque \verb+"+ antes dele.
Por exemplo, \verb+\index{"@author}+ insere ``@author'' na entrada de Ã­ndice remissivo.

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Medidas e Contadores}\label{chap:medidas:contadores}
Neste capÃ­tulo, veremos medidas e contadores.

\section{Unidade de medidas e espaÃ§amentos}\label{sec:medidas:unidade}

As vezes o espaÃ§amento ajustado automaticamente nÃ£o estÃ¡ bom e queremos fazer pequenos ajustes.

Para aumentar espaÃ§amento entre parÃ¡grafos em um determinado ponto, como entre texto e equaÃ§Ãµes altas, poderÃ¡ usar o \verb+\smallskip+\index{amallskip@\verb+\smallskip+}, \verb+\medskip+\index{medskip@\verb+\medskip+} e \verb+\bigskip+\index{bigskip@\verb+\bigskip+} para ter espaÃ§amentos maior que o padrÃ£o.
Note que, se quer ter espaÃ§amento maior entre texto e equaÃ§Ãµes em todo o documento, deverÃ¡ efetuar ajustes de parÃ¢metros \verb+\abovedisplayskip+\index{abovedisplayskip@\verb+\abovedisplayskip+} e \verb+\belowdisplayskip+\index{belowdisplayskip@\verb+\belowdisplayskip+}.

Para espaÃ§o horizontal e vertical, usa-se o \verb+\hspace{medida}+\index{hspace@\verb+\hspace+} e \verb+\vspace{medida}+\index{vspace@\verb+\vspace+} respectivamente.
Caso estiver inserindo o espaÃ§o vertical no comeÃ§o das pÃ¡ginas, ou espaÃ§o horizontal no comeÃ§o das linhas, use a versÃ£o com ``*'' \verb+\hspace*{medida}+\index{hspace*@\verb+\hspace*+} e \verb+\vspace*{medida}+\index{vspace*@\verb+\vspace*+}.

Medidas comumente usados sÃ£o:

\begin{description}
\item[pt] (point - unidade grÃ¡fica) = $\frac{1}{72.27}$in (polegada) ou $0.351$mm
\item[mm] (milimetro) = $2.845$pt
\item[pc] (pica) = $12$pt ou $4.218$mm
\item[cm] (centÃ­metro) = $2.371$pc
\item[in] (polegada) = $25.4$mm ou $72.27$pt ou $6.022$pc
\item[ex] altura da letra ``x'' minusculo da fonte corrente 
\item[em] largura da letra ``M'' maiÃºsculo da fonte corrente
\item[mu] (math unit) = $\frac{1}{18}$em
\item[\texttt{\textbackslash stretch\{peso\}}] espaÃ§o esticÃ¡vel com peso especificado.
\end{description}

Existem ainda vÃ¡rias ouras medidas menos usadas que foram omitidos aqui.

O \verb+\stretch{peso}+\index{stretch@\verb+\stretch+} produz medida que preenche o espaÃ§o.
Existem alguns comandos deste tipo que sÃ£o Ãºteis: \verb+\hfill+\index{hfill@\verb+\hfill+} (equivale a \verb+\hspace{stretch{1}}+),
\verb+\vfill+\index{vfill@\verb+\vfill+} (equivale a \verb+\vspace{stretch{1}}+),
\verb+\hrulefill+\index{hrulefill@\verb+\hrulefill+} (similar a \verb+\hfill+, mas preenche com linha),
\verb+\dotfill+\index{dotfill@\verb+\dotfill+} (similar a \verb+\hfill+, mas preenche com pontos).

Ainda existem comandos para inserir pequenos espaÃ§os, que sÃ£o 
\verb|\quad|\index{quad@\verb+\quad+} (insere espaÃ§o de $1$em = $18$mu),
\verb|\qquad|\index{qquad@\verb+\qquad+} (insere espaÃ§o de $2$\texttt{quad}=$2$em),
\verb|\enspace|\index{enspace@\verb+\enspace+} ou \verb|\enskip|\index{enskip@\verb+\enskip+} (insere espaÃ§o de $\frac{1}{2}$\texttt{quad}).
Estes comandos costumam ser usados para inserir pequenos espaÃ§amentos para melhora a aparÃªncia das fÃ³rmulas matemÃ¡ticas.
No modo matemÃ¡tico, ainda existem comandos de inserÃ§Ã£o de espaÃ§os menores que sÃ£o
\begin{description}
\item[\textbackslash,]\index{,@\verb+\,+} ($\frac{3}{18}$\texttt{quad} = $3$mu),
\item[\textbackslash:]\index{:@\verb+\:+} ($\frac{4}{18}$\texttt{quad} = $4$mu),
\item[\textbackslash;]\index{;@\verb+\;+} ($\frac{5}{18}$\texttt{quad} = $5$mu), 
\item[\textbackslash!]\index{"!@{\textbackslash\exclsymbforindex}} ($\frac{-3}{18}$\texttt{quad} = $-3$mu).
\end{description}

Veja Exemplo~\ref{ex12:espacos}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex03-03.tex},label=ex:03-03]
\begin{ltxlisting}[caption={ex12-espacos.tex},label=ex12:espacos]
palavra a esquerda \hfill palavra a direita.

palavra a esquerda \hrulefill palavra a direita.

palavra a esquerda \dotfill palavra a direita.

primeiro\hfill segundo\hrulefill\hrulefill terceiro\dotfill\dotfill\dotfill quarto

\bigskip

$x \in \mathrm{I\!R}, \enspace x&gt;0$.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Nota: O \verb+\mathbf{R}+ construÃ­do acima Ã© apenas como ilustraÃ§Ã£o. 
DeverÃ¡ usar a fonte apropriada tal como \verb+\mathbb+ do AMS.

Outra coisa que as vezes usamos para alinhamento dos elementos de fÃ³rmulas Ã© o comando \verb+\phantom+\index{phantom@\verb+\phantom+} que, em vez de produzir elementos da fÃ³rmula, reserva o espaÃ§o usado por ele.
Por exemplo, $\Gamma_{ij}^{\phantom{ij}k}$ e $\Gamma_{ij}^k$. produzido respectivamente por \verb+$\Gamma_{ij}^{\phantom{ij}k}$+ e \verb+$\Gamma_{ij}^k$+.
 

\section[Medidas]{Medidas prÃ©definidas ou definidos pelo usuÃ¡rio}\label{sec:medidas}
Existem algumas medidas prÃ©-definidas como comandos, relacionadas Ã&nbsp; configuraÃ§Ã£o das pÃ¡ginas e similares que costuma ser usados com certa frequÃªncia. 
Aqui, vamos citar algumas delas.
%Para referenciar, coloque ``\textbackslash'' antes dele, para ficar como comandos
\begin{description}
\item[\textbackslash textwidth]\index{textwidth@\verb+\textwidht+} Largura de texto atual.
\item[\textbackslash linewidth]\index{linewidth@\verb+\linewidth+} Largura da linha atual. Por exemplo, dentro da lista, serÃ¡ menor que o \verb+\textwidth+. 
\item[\textbackslash columnwidth]\index{columnwidth@\verb+\columnwidth+} Largura da coluna. Se for em uma coluna, coincide com \verb+\textwidth+.
\item[\textbackslash columnsep]\index{columnsep@\verb+\columnsep+} DistÃ¢ncia entre colunas no modo multi colunas.
\item[\textbackslash columnseprule]\index{columnseprle@\verb+\columnseprule+} Largura da linha que separa colunas no modo multi colunas (\verb+0pt+ para desabilitar).
\item[\textbackslash textheight]\index{textheight@\verb+\textheight+} Altura do texto atual.
\item[\textbackslash parindent]\index{parindent@\verb+\parindent+} IndentaÃ§Ã£o (quanto deixa no lado esquerdo) do parÃ¡grafo.
\item[\textbackslash parskip]\index{parskip@\verb+\parskip+} Quanto deixa de espaÃ§o antes do parÃ¡grafo.
\item[\textbackslash paperwidth]\index{paperwidth@\verb+\paperwidth+} Largura do papel.
\item[\textbackslash paperheight]\index{paperheight@\verb+\paperheight+} Altura do papel.
\item[\textbackslash unitlength]\index{unitlength@\verb+\unitlength+} Medida de unidade usado no ambiente \texttt{picture}.
\end{description}

Dentro do \texttt{minipage}, \verb+\textwidth+, \verb+\linewidth+ e \verb+\columnwidth+ assumem a largura do \texttt{minipage}, mas no \verb+\parbox+, somente \verb+\linewidth+ assumirÃ¡ a largura da caixa.

Para imprimir estas medidas, coloque o comando \verb+\the+\index{the@\verb+\the+} antes do comando de medidas.
Por exemplo, para imprimir o valor de \verb+\textwidth+, use \verb+\the\textwidth+.

Para definir uma nova medida, usa-se o comando \verb+\newlength{\minhamedida}+\index{newlength@\verb+\newlength+}. 
Este comando criarÃ¡ a medida \verb+\minhamedida+. 
Para definir ou altera o valor da medida, use \verb+\setlength{\minhamedida}{medida}+\index{setlength@\verb+\setlength+} onde \texttt{medida} Ã© a medida da \verb+\minhamedida+.

O valor da medida pode ser configurado a partir de \texttt{box} (caixa) existente (como texto, fÃ³rmulas, etc).
Uma caixa (de elemento) tem altura (\texttt{height}), largura (\texttt{width}) e a distÃ¢ncia da parte inferior atÃ© a linha base (\texttt{depth}). 

\verb+\settoheight{\minhamedida}{&lt;conteÃºdo&gt;}+\index{settoheight@\verb+\settoheigth+}, \verb+\settowidth{\minhamedida}{&lt;conteÃºdo&gt;}+\index{settowidth@\verb+\settowidth+} e \verb+\settodepth{\minhamedida}{&lt;conteÃºdo&gt;}+\index{settodepth@\verb+\settodepth+} configuram o valor da \verb+\minhamedida+ para essas medidas correspondentes ao seu parÃ¢metro.

Note que, pela facilidade, as vezes usamos o modo \TeX{} para configurar as medidas como em
\verb+\minhamedida=3.0cm+
ou atÃ© mesmo, omitir ``\verb+=+'' e escrever como 
\verb+\minhamedida 3.0cm+

 Para facilitar os cÃ¡lculos das medidas, normalmente usa-se o pacote \texttt{calc}.
 
 O pacote \texttt{calc}, alÃ©m de permitir calcular medidas com facilidade, ainda acrescentam alguns novos comandos tais como
\verb+\settototalheight{\algumamedida}{&lt;conteÃºdo&gt;}+\index{settototalheight@\verb+\settototalheight+} que configura \verb+\algumamedida+ para \texttt{width+depth} e
\verb+\widthof{&lt;conteÃºdo&gt;}+\index{widthof@\verb+\widthof+}, \verb+\heightof{&lt;conteÃºdo&gt;}+\index{heightof@\verb+\heightof+}, \verb+\depthof{&lt;conteÃºdo&gt;}+\index{depthof@\verb+\depthof+} e \verb+\totalheightof{&lt;conteÃºdo&gt;}+\index{totalheightof@\verb+\totalheightof+} 
que retornam \texttt{width}, \texttt{height}, \texttt{depth}, e \texttt{width+depth}, respectivamente.

Note que o calculo efetuado pelo pacote \texttt{calc} pode nÃ£o funcionar em alguns parÃ¢metros como medida de largura do \verb+\parbox+ e de \texttt{minipage}. Neste caso, coloque a expressÃ£o dentro do \verb+\dimexpr()+\index{dimexpr@\verb+\dimexpr+}. Note que expressÃ£o deve ficar dentro de parenteses e nÃ£o chaves.

Por exemplo,
\begin{singlespacing}
\begin{lstlisting}
\parbox{\dimexpr(\linewidth-1cm)}{texto}
\end{lstlisting}
\end{singlespacing}
efetuarÃ¡ calculo da largura da caixa como sendo \texttt{1cm} menor do que a largura da linha.

\section{Contadores}

\LaTeX{} usa diversos contadores para efetuar enumeraÃ§Ã£o automÃ¡tica, tais como pÃ¡ginas, equaÃ§Ãµes enumeradas, capÃ­tulos e seÃ§Ãµes, figuras, etc.

Estes contadores podem ser controladas, tanto na contagem como na sua aparÃªncia.

Em geral, o costume Ã© nomear contador com mesmo nome do ambiente e o que precede \verb+\the+ serÃ¡ usado para imprimir o seu valor.
Por exemplo, a impressÃ£o de enumeraÃ§Ã£o da pÃ¡gina usa o \verb+\thepage+\index{thepage@\verb+\thepage+} e enumeraÃ§Ã£o do capÃ­tulo usa \verb+\thechapter+\index{thechapter@\verb+\thechapter+} e assim por diante.

Os principais contadores prÃ© definidos no \LaTeX{} sÃ£o:
\texttt{part}, \texttt{chapter},
\texttt{section}, \texttt{subsection}, \texttt{subsubsection},
\texttt{paragraph}, \texttt{subparagraph},
\texttt{page}, \texttt{figure}, \texttt{table},
\texttt{footnote}, \texttt{mpfootnote} (rodapÃ© dentro do minipage) e
\texttt{equation}.

EntÃ£o, alterando o \verb"\the&lt;contador&gt;"\index{thecontador@\verb+\the&lt;contador&gt;+}, alterarÃ¡ como serÃ¡ impresso estes contadores.

Por exemplo, \verb+\renewcommand{\thepage}{\roman{page}}+ alterarÃ¡ a enumeraÃ§Ã£o das pÃ¡ginas para i, ii, iii, etc.

O estilo de enumeraÃ§Ã£o \verb+\roman+ acima, podem ser
\begin{description}
\item[\textbackslash\texttt{arabic}]\index{arabic@\verb+\arabic+} que Ã© 1, 2, 3 ...
\item[\textbackslash\texttt{alph}]\index{alph@\verb+\alph+} que Ã© a, b, c ... 
\item[\textbackslash\texttt{Alph}]\index{Alph@\verb+\Alph+} que Ã© A, B, C ... 
\item[\textbackslash\texttt{roman}]\index{roman@\verb+\roman+} que Ã© i, ii, iii ...
\item[\textbackslash\texttt{Roman}]\index{Roman@\verb+\Roman+} que Ã© I, II, III ...
\item[\textbackslash\texttt{fnsymbol}]\index{fnsymbol@\verb+\fnsymbol+} que Ã© sequencia de sÃ­mbolos (pode ser usado no rodapÃ©, se for pouco).
\end{description}
Veja Exemplo~\ref{ex12:contadores}.
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex10-04.tex},label=ex:10-04]
\begin{ltxlisting}[caption={ex12-contadores.tex},label=ex12:contadores,preset={\setcounter{section}{\value{lstorisection}}}]
A pÃ¡gina atual Ã© \thepage. 

SeÃ§Ã£o atual em romano minÃºsculo Ã© \roman{section}.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

As vezes, precisamos ajustar valores iniciais dos contadores, tais como das pÃ¡ginas, listas enumeradas, etc.
Para isso, usamos os comandos \verb+\setcounter+\index{setcounter@\verb+\setcounter+}, \verb+\stepcounter+\index{stepcounter@\verb+\stepcounter+} e \verb+\addtocounter+\index{addtocounter@\verb+\addtocounter+}.
Para decrementar, use o valor negativo no parÃ¢metro de \verb+\addtocounter+\index{addtocounter@\verb+\addtocounter+}.

No caso de listas enumeradas, os contadores sÃ£o
\texttt{enumi}\index{enumi}, \texttt{enumii}\index{enumii} (sub lista),
\texttt{enumiii}\index{enumiii} (subsub lista), \texttt{enumiv}\index{enumiv} (subsubsub lista).

Para que estes contadores sejam impressos na fonte reta, mesmo no ambiente em itÃ¡lico (enunciado do teorema, por exemplo), acrescente

\begin{singlespacing}
\begin{lstlisting}
\renewcommand{\labelenumi}{\textup{\theenumi.}}
\renewcommand{\labelenumii}{\textup{(\theenumii)}}
\renewcommand{\labelenumiii}{\textup{\theenumiii.}}
\renewcommand{\labelenumiv}{\textup{\theenumiv.}}
\end{lstlisting}
\end{singlespacing}

no \texttt{preamble} do documento.

AlÃ©m disso, o contador novo pode ser criado por \verb+\newcounter+\index{newcounter@\verb+\newcounter+}, Ãºtil para ser usado no ambiente/comando novo a ser criado.

Aqui, vamos criar um contador para testÃ¡-los.
Veja o Exemplo~\ref{ex12:newcounter}.

%%\let\ref\plainref
%\let\orilabel\label
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex10-04.tex, parte b},label=ex:10-04:b,preset=\let\label\orilabel]
\begin{ltxlisting}[caption={ex12-newcounter.tex},label=ex12:newcounter]
\newcounter{teste} % cria e inicializa com o valor zero.
\setcounter{teste}{1} % novo valor

O contador Ã© \theteste.

O contador em \texttt{Alph} Ã© \Alph{teste}.

Adicionando 1 e usando.
\refstepcounter{teste}\label{count:teste}.
Novo valor Ã© \theteste. 

Adicionando por 1 de novo \addtocounter{teste}{1}
Novo valor Ã© \theteste. 
O valor atribuÃ­do no rÃ³tulo \texttt{count:teste} apÃ³s o \texttt{refstepcounter} Ã© \ref{count:teste}.

Agora, a lista enumerada comeÃ§ando de $3$
\begin{enumerate}\setcounter{enumi}{2}
\item Um item.
\item Outro item.
\end{enumerate}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%%\let\ref\oriref

Para que o \verb+\label{}+ pegue o valor atual do contador, use o \verb+\refstepcounter+\index{refstepcounter@\verb+\refstepcounter+} que incrementa o contador por um e atualiza o valor para \verb+\label+.

Para pegar o valor de um contador (para ser usado como argumento para \verb+\setcounter+, por exemplo), use o comando \verb+\value+\index{value@\verb+\value+}.

Muitas vezes, um contador estÃ¡ vinculado no outro e quando outro for incrementado, ele serÃ¡ reinicializado. 
AlÃ©m disso, contadores vinculados aos outros imprimem dois valores (contador do outro mais dele).

Este vÃ­nculo pode ser criado pelo comando
\verb+\counterwithin{&lt;contador&gt;}{&lt;pai&gt;}+\index{counterwithin@\verb+\counterwithin+}. 
Quando o \verb+&lt;pai&gt;+ for incrementado, o \verb+&lt;contador&gt;+ Ã© reinicializado. 
Por exemplo, para que a enumeraÃ§Ã£o da equaÃ§Ã£o seja da forma \texttt{&lt;no. do capÃ­tulo&gt;.&lt;no da equaÃ§Ã£o&gt;}, basta colocar \verb+\counterwithin{equation}{chapter}+ no \texttt{preamble} do documento.
Observando que, para \LaTeX{} versÃ£o anterior a  2018/04/01, requer o pacote \texttt{chngcntr}.

Para eliminar um vÃ­nculo, usa-se o comando \verb+\@removefromreset+\index{arrobaremovefromreset@\arrobasymbforindex\verb+removefromreset+}. Por exemplo, para remover o vÃ­nculo do contador da equaÃ§Ã£o com o contador da seÃ§Ã£o, coloque o cÃ³digo

\begin{singlespacing}
\begin{lstlisting}
\makeatletter
\@removefromreset{equation}{section}
\makeatother
\end{lstlisting}
\end{singlespacing}
no \texttt{preamble} do documento.

Mais sobre manipulaÃ§Ãµes dos contadores, veja o \cite[CapÃ­tulo 3, SeÃ§Ã£o 3]{book:wikibook:latex}.

%\url{https://en.wikibooks.org/wiki/LaTeX/Counters}.


%\chapter{Teste}
%
%\LTXinputExample{test-code}
%% Value for pos
%% t,b,l,r,o, and i
%%for top, bottom, left, right, outer, and inner.
%\begin{LTXexample}[pos=b,caption={Caption of LTXexample},label=ex:start]
%\documentclass{article}
%\usepackage[utf8]{inputenc}
%\usepackage{lipsum}
%
%\begin{document}
%% comentÃ¡rio
%maÃ§Ã£
%\lipsum[1-2]
%\end{document}
%\end{LTXexample}
%
%% truque do https://www.latex4technics.com/?note=30gq
%% para referencia fucnionar no LTXexample
% \let\orilabel\label
%\begin{LTXexample}[frame=none,preset=\let\label\orilabel]
%  \begin{enumerate}
%  \item No need to manually number items here!
%  \item\label{second} Number two added automatically
%  \item Third item
%  \end{enumerate}
%  And here is a reference to item number \ref{second}
%\end{LTXexample}

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Mais Alguns Cuidados e Ajustes}
Neste capÃ­tulo, veremos mais alguns ajustes e incrementos no documentos.

\section{Comandos frÃ¡geis}
Existem comandos denominados frÃ¡geis por poder causar problemas quando Ã© passado como parÃ¢metros de alguns comandos ou ambientes. 
Por exemplo, o argumento do \verb+\chapter+ e \verb+\section+ costumam ser usado no sumÃ¡rio tambÃ©m. 
Se colocar comando que tem contadores como o \verb+\footnote+, causarÃ¡ problemas, pois tentarÃ¡ colocar rodapÃ© tambÃ©m no sumÃ¡rio.

Assim, quando colocar comandos no argumento da funÃ§Ã£o que usam o seu parÃ¢metro em mais de um lugar, requer cuidados.
AlÃ©m dos comandos de seccionamento (\texttt{chapter}, \texttt{section}, etc), \texttt{caption}, \texttt{thanks}, comandos que produz saÃ­da do cabeÃ§alho como \verb+\markboth+, etc, tambÃ©m usam o seu argumento em mais de um lugar.

Os comandos que causam problemas quando Ã© passado para argumento destes comandos sÃ£o chamados de comandos frÃ¡geis\index{comandos frÃ¡gil} e deve ser precedido de \verb+\protect+\index{protect@\verb+\protect+} para prevenir problemas.

Alguns comandos frÃ¡geis sÃ£o: comandos com argumento opcional, ambientes, fÃ³rmula no modo \texttt{displaystyle}, fÃ³rmula no modo \texttt{textstyle} delimidado por \verb+\(+ e \verb+\)+ (no entanto, delimitado por ``\$'' nÃ£o Ã© frÃ¡gil), \verb+\phantom+, ``\verb+\\+'', \verb+\item+ e \verb+\footnote+.

Veja Exemmplo~\ref{ex13:fragil}.

%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%% \let\orilabel\label
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-08.tex, parte b},label=ex:06-08:b,preset={\setcounter{chapter}{1},\setcounter{section}{0},\let\addcontentsline\emptyaddcontentsline}]
\begin{ltxlisting}[caption={ex13-fragil.tex},label=ex13:fragil,preset={\setcounter{chapter}{1}}]
\section{Sublinhando texto\protect\footnote{Forma antiga de enfatizar o texto}} % footnote Ã© frÃ¡gil: usar \protect
\ldots
\section{Sobre a famosa fÃ³rmula $a^2=b^2+c^2$} % delimitado por "$" nÃ£o Ã© frÃ¡gil
\ldots
\begin{figure}[hbp!]
\center
 Figura aqui.
 \caption{$\Gamma_{ij}^{\protect\phantom{ij}2}$} % \phantom Ã© frÃ¡gil
\end{figure}
\ldots
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%%\let\ref\oriref
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%% \addtocounter{chapter}{-1}
%\let\addcontentsline\oriaddcontentsline

\section{Babel e nomes}

O pacote de internacionalizaÃ§Ã£o \texttt{babel}\index{babel}
oferece regra de hifenizaÃ§Ã£o\index{hifenizaÃ§Ã£o} e nomes dos elementos tais como \texttt{capÃ­tulo}, \texttt{figura}, \texttt{tabela}, \texttt{sumÃ¡rio}, etc em vÃ¡rios idiomas\index{idioma}.
Para carregar mais de um idioma, coloque os idiomas separado pela vÃ­rgula no parÃ¢metro do \texttt{babel}. 
O idioma do Ãºltimo serÃ¡ considerado padrÃ£o e outros sÃ£o opcionais que podem ser ativados quando quiser. Ma, se preferir, poderÃ¡ usar ``\verb+main=&lt;idioma&gt;+'' na lista de parÃ¢metros para indicar o idioma padrÃ£o.

SeleÃ§Ã£o de idiomas pode ser mudado por \verb+\selectlanguage{&lt;idioma&gt;}+\index{selectlanguage@\verb+\selectlanguage+}.
Para demarcar somente um trecho no outro idioma, usa-se o ambiente \texttt{otherlanguage}\index{otherlanguage}.
Para trecho bem curto, poderÃ¡ usar  tambÃ©m o comando \verb+\foreignlanguage+\index{foreignlanguage@\verb+\foreignlanguage+}.
Veja Exemplo~\ref{ex13:babel}.

%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%% \let\orilabel\label
%\let\orithesection\thesection
%\renewcommand{\thesection}{\arabic{section}}
%%\newcommand{\articleappendix}{\setcounter{section}{0}\def\thesection{\Alph{section}}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex10-03.tex},label=ex:10-03,preset={\setcounter{chapter}{1},\setcounter{section}{0},\let\addcontentsline\emptyaddcontentsline,\let\title\orititle,\let\author\oriauthor,\let\date\oridate,\let\maketitle\makearticletitle}]
\let\thesectionoriginal\thesection
\begin{ltxlisting}[caption={ex13-babel.tex},label=ex13:babel,preset={\def\thesection{\arabic{section}}}]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\usepackage[english,brazil]{babel}
% Dados para tÃ­tulos
\title{Exemplo}
\author{Sadao Massago} % caso de mais de um autor, separe com o comando \and
\date{Fevereiro, 2018}
\begin{document}
\maketitle
\begin{abstract}
Resumo aqui.
\end{abstract}
\begin{otherlanguage}{english}
\begin{abstract}
Abstract here.
\end{abstract}
\end{otherlanguage}
% \tableofcontents % so se for artigo longo
\section{Mudando o idioma de um trecho}
O trecho curto pode ser no outro idioma como em ``\foreignlanguage{english}{This is english}''.
Para trechos maiores, use o ambiente \texttt{otherlanguage} como em
\begin{quote}
\begin{otherlanguage}{english}
This environment switches all language-related definitions, like the language specific names for figures, tables etc. to the other language.
\end{otherlanguage}
\end{quote}
\ldots
% referÃªncia biliogrÃ¡fica
\end{document}
\end{ltxlisting}
\let\thesection\thesectionoriginal
%\end{LTXexample}
%\end{singlespacing}
%%\let\ref\oriref
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%% \addtocounter{chapter}{-1}
%\let\thesection\orithesection
%\let\addcontentsline\oriaddcontentsline

Para escrever o nome tais como ``CapÃ­tulo'', ``Figura'', ``SumÃ¡rio'', etc, tem os comandos que produz estes nomes.
Redefinindo apropriadamente estes comandos, podemos alterar a sua saÃ­da.

Alguns nomes prÃ© definidos sÃ£o:
\verb+\abstractname+\index{abstractname@\verb+\abstractname+} (somente \texttt{article} e \texttt{report}), \verb+\appendixname+\index{appendixname@\verb+\appendixname+},
\verb+\bibname+\index{bibname@\verb+\bibname+} (somente \texttt{book} e \texttt{report}),
\verb+\chaptername+\index{chaptername@\verb+\chaptername+} (somente \texttt{book} e \texttt{report}),
\verb+\contentsname+\index{contentsname@\verb+\contentsname+},
\verb+\figurename+\index{figurename@\verb+\figurename+}, \verb+\indexname+\index{indexname@\verb+\indexname+},
\verb+\listfigurename+\index{listfigurename@\verb+\listfigurenname+},
\verb+\listtablename+\index{listtablename@\verb+\listtablename+},
\verb+\partname+\index{partname@\verb+\partname+},
\verb+\refname+\index{refname@\verb+\refname+} (somente \texttt{article}),
\verb+\tablename+\index{tablename@\verb+\tablename+}.

Note que o nome para referÃªncia bibliogrÃ¡fica no livro e relatÃ³rio sÃ£o \verb+\bibname+\index{bibname@\verb+\bibname+} enquanto que no artigo, Ã© \verb+\refname+\index{refname@\verb+\refname+}.

Alguns pacotes definem o nome usado para seus pacotes. 
Por exemplo, \texttt{amsthm} que define o ambiente \texttt{proof}, define tambÃ©m \verb+\proofname+\index{proofname@\verb+\proofname+}.

Para alterar ou definir novos nomes quando usa o babel, requer usar o recurso do babel, pois nomes prÃ© definidos no babel sÃ£o redefinidos dinamicamente quando altera os idiomas.

Assim, deverÃ¡ definir/redefinir os nomes dentro do comando \verb+\captions&lt;idioma&gt;+\index{caption&lt;idioma&gt;@\verb+\captionn&lt;idioma&gt;+} onde \texttt{&lt;idioma&gt;} Ã© o nome do idioma. 
Mas, se redefinir o \texttt{captions}, perderÃ¡ as definiÃ§Ãµes anteriores feitas pelo \texttt{babel}. 
Logo, utiliza o comando \verb+\addto+\index{addto@\verb+\addto+} do \texttt{babel} que acrescenta porÃ§Ãµes de cÃ³digo no final do comando especificado.

Por exemplo,

\begin{singlespacing}
\begin{lstlisting}
\addto\captionsbrazil{%
  \renewcommand\refname{ReferÃªncias BibliogrÃ¡ficas}%
}
\end{lstlisting}
\end{singlespacing}

no \texttt{preamble} altera o nome da referÃªncia bibliogrÃ¡fica no caso de artigos quando usa o idioma \texttt{brazil}.

Note que, no caso de portuguÃªs brasileiro, tanto pode usar o \texttt{brazil}\index{brazil} como o \texttt{brazilian}\index{brazilian}. 
Assim, precisarÃ¡ redefinir em ambos idiomas, se estiver implementando um pacote na qual nÃ£o sabe qual opÃ§Ã£o o usuÃ¡rio final vai usar.
Neste caso, define um comando auxiliar e coloca em cada um dos idiomas.

\begin{singlespacing}
\begin{lstlisting}
\providecommand{\theoremname}{Theorem} % Providenciando novo nome com valor padrÃ£o
\addto\braziliannames{%
  \renewcommand\refname{ReferÃªncias BibliogrÃ¡ficas}%
  \renewcommand{\theoremname}{Teorema}%  
}
\newcommand{\englishnames}{%
  \renewcommand{\theoremname}{Theorem}%
}

\addto\captionsbrazil{\braziliannames}
\addto\captionsbrazilian{\braziliannames}

\addto\captionsenglish{\englishnames}
\addto\captionsamerican{\englishnames}

\newtheorem{theorem}{\theoremname}[section]
\end{lstlisting}
\end{singlespacing}
%
no \texttt{preamble} apÃ³s carregar o pacote \texttt{babel}
habilita suporte para portuguÃªs brasileiro e inglÃªs.
Note que no \verb+\newtheorem+, estÃ¡ usando o comando \verb+\theoremname+ que serÃ¡ redefinido automaticamente quando o idioma muda.
Veja o exemplo~\ref{ex13:babel:caption}.

%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%% \let\orilabel\label
%\let\orithesection\thesection
%\renewcommand{\thesection}{\arabic{section}}
%%\newcommand{\articleappendix}{\setcounter{section}{0}\def\thesection{\Alph{section}}}
\begin{singlespacing}
%\begin{lstlisting}[caption={ex10-03.tex, parte b},label=ex:10-03:b,preset={\setcounter{chapter}{1},\setcounter{section}{0},\let\addcontentsline\emptyaddcontentsline,\let\title\orititle,\let\author\oriauthor,\let\date\oridate,\let\maketitle\makearticletitle}]
\begin{lstlisting}[caption={ex13-babel-caption.tex},label=ex13:babel:caption]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\usepackage{amsthm}
\usepackage[english,brazil]{babel}
\providecommand{\theoremname}{Theorem} % Providenciando novo nome com valor padrÃ£o
\addto\braziliannames{%
  \renewcommand\refname{ReferÃªncias BibliogrÃ¡ficas}%
  \renewcommand{\theoremname}{Teorema}%  
}
\newcommand{\englishnames}{%
  \renewcommand{\theoremname}{Theorem}%
}

\addto\captionsbrazil{\braziliannames}
\addto\captionsbrazilian{\braziliannames}

\addto\captionsenglish{\englishnames}
\addto\captionsamerican{\englishnames}

\newtheorem{theorem}{\theoremname}[section]

\title{Exemplo}
\author{Sadao Massago}
\date{Fevereiro, 2018}
\begin{document}
\maketitle
\begin{abstract}
Resumo aqui.
\end{abstract}
% \tableofcontents % so se for artigo longo
\section{Teoremas multi lingue}
\begin{otherlanguage}{english}
\begin{theorem}
\ldots
\end{theorem}
\end{otherlanguage}
\begin{theorem}
\ldots
\end{theorem}
\begin{thebibliography}{99}
\bibitem[GMS04]{Goossens:2004}
 Michel Goossens and Frank Mittelbach
 \emph{The {\LaTeX} companion (second edition)}, Adilson--Wesley, 2004.
\end{thebibliography}
\end{document}
\end{lstlisting}
\end{singlespacing}
%%\let\ref\oriref
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%% \addtocounter{chapter}{-1}
%\let\thesection\orithesection
%\let\addcontentsline\oriaddcontentsline
%
%
%\let\title\orititle
%\let\author\oriauthor
%\let\date\oridate
%\title{Exemplo}
%\author{Sadao Massago}
%\date{Fevereiro, 2018}
%\let\maketitle\makearticletitle
%%
%\noindent
%\let\orithesection\thesection
%\setcounter{lstorisection}{\value{section}}
%\def\thesection{\arabic{section}}
%\setcounter{section}{0}
%\let\addcontentsline\emptyaddcontentsline
%%
%\fbox{\begin{minipage}{\linewidth}

\let\orithesection\thesection
\begin{ltxlistingout}[preset={\title{Exemplo}\author{Sadao Massago}\date{Fevereiro, 2018}}\renewcommand{\thesection}{\arabic{section}}]
\maketitle
\begin{abstract}
Resumo aqui.
\end{abstract}
% \tableofcontents % so se for artigo longo
\section{Teoremas multi lingue}

\textbf{Theorem \arabic{section}.1.} \ldots

\textbf{Teorema \arabic{section}.2.} \ldots

\section*{ReferÃªncias BibliogrÃ¡ficas}
\begin{list}{--}{%
    %\setlength{\topsep}{2pt}%
    %\setlength{\itemsep}{0pt}%
    %\setlength{\parsep}{0pt}%
    %\setlength{\parskip}{0pt}%
    %\setlength{\labelwidth}{8pt}%
    \setlength{\leftmargin}{2em}%
    \setlength{\itemindent}{0.5em}%
    %\setlength{\labelsep}{2pt}%
  }%
  \item[[GMS04]] Michel Goossens and Frank Mittelbach
 \emph{The {\LaTeX} companion (second edition)}, Adilson--Wesley, 2004.  
\end{list}
\end{ltxlistingout}
\let\thesection\orithesection
%
%\end{minipage}}
%\setcounter{section}{\value{lstorisection}}
%\let\thesection\orithesection
%\let\addcontentsline\oriaddcontentsline

Note que, se usar a opÃ§Ã£o de idiomas como opÃ§Ã£o de documentos (no \verb+\documentclass+, o pacote \texttt{babel} reconhece este idioma e vai usar, mesmo que nÃ£o tenha passado opÃ§Ãµes no \texttt{babel}.


\section[EspaÃ§amento entre linhas]{Sobre espaÃ§amentos entre linhas e ``estouro de linhas''}

O espaÃ§amento entre linhas Ã© definido pelo comando \verb+\linespread+\index{linespread@\verb+\linespread+} onde \verb+\linespread{1.3}+ Ã© o espaÃ§amento um e meio e \verb+\linespread{1.6}+ Ã© o espaÃ§amento duplo, o que atuarÃ¡ a partir do prÃ³ximo parÃ¡grafo.

Note que o \LaTeX{} deixa ``estourar'' as linhas (\texttt{Overfull} \verb+\hbox+\index{Overfull hbox@Overfull \verb+\hbox+}) quando nÃ£o consegue acomodar devidamente o conteÃºdo nas linhas.
Para que ele use o espaÃ§amento grande entre elementos (\texttt{Underfull} \verb+\hbox+\index{Underfull hbox@Underfull \verb+\hbox+}) em vez de ``estourar linhas'', coloque \verb+\sloppy+\index{sloppy@\verb+\sloppy+} (para voltar, use \verb+\fussy+\index{fussy@\verb+\fussy+}).
Note que, independente de linha estar ``estourando'' ou ``espaÃ§ando demais'', deverÃ¡ checar cada um deles para ver se nÃ£o estÃ¡ prejudicado visualmente e se for o caso, resolver o problema.
 
\section{Sobre hifenizaÃ§Ã£o}

O pacote \texttt{babel} carrega a regra de hifenizaÃ§Ã£o para o idioma selecionada, mas as vezes encontramos as exceÃ§Ãµes na qual a regra do \texttt{babel} nÃ£o funciona devidamente.
Neste caso, poderÃ¡ indicar na palavra de texto, a posiÃ§Ã£o que pode ser hifenizada por ''\verb+\-+''\index{-@\verb+\-+} como em \verb+re\-fe\-rÃªn-\cia+.

Este comando Ã© ignorado quando nÃ£o hÃ¡ necessidade de hifenizaÃ§Ã£o. 
Quando precisar, serÃ¡ hifenizada somente nestes locais.

Em geral, quando encontra uma palavra hifenizada indevidamente, poderemos querer acrescentar regra de hifenizaÃ§Ã£o para tal palavra em vez de indicar localmente.
Para tanto, coloque o comando \verb+\hyphenation+\index{hyphenation@\verb+\hyphenation+} onde seu argumento Ã© a lista de palavras separados pelo espaÃ§o, onde cada palavra contÃ©m ``-'' na posiÃ§Ã£o de hifenizaÃ§Ã£o.
Note que, para colocar regra de hifenizaÃ§Ã£o das letras acentuadas pelo comando \verb+\hyphenation+, requer \verb+\usepackage[T1]{fontenc}+ ou similar para ativar fontes que suportam acentuaÃ§Ãµes.

o seguinte trecho de cÃ³digo colocado depois do carregamento do pacote \texttt{babel} no \texttt{preamble}, acrescenta hifenizaÃ§Ãµes das palavras correspondentes.

\begin{singlespacing}
\begin{lstlisting}
% regra de hifenizaÃ§Ã£o das palavras nÃ£o acentuadas:
% nÃ£o requer \usepackage[T1]{fontenc}
\hyphenation{li-vro tes-te cha-ve bi-blio-te-ca}
% regra de hifenizaÃ§Ã£o das palavras acentuadas:
% requer \usepackage[T1]{fontenc}
\hyphenation{co-men-tÃ¡-rio re-fe-rÃªn-cia}
\end{lstlisting}
\end{singlespacing}

Para que ele nÃ£o hifenize, Ã© sÃ³ colocar dentro de uma caixa, o que pode ser feito pelo comando \verb+\mbox+\index{mbox@\verb+\mbox+}.
O cÃ³digo do tipo \verb+\mbox{nÃ£o hifenizar}+ nÃ£o pode ser quebrado em linhas, mesmo na posiÃ§Ã£o de espaÃ§os. 
Este recurso permite proibir hifenizaÃ§Ã£o das palavras localmente.

Para que nÃ£o use a hifenizaÃ§Ã£o no documento inteiro, costuma aumentar o valor da penalidade de hifenizaÃ§Ã£o no \texttt{preamble} do documento, como em
\begin{singlespacing}
\begin{lstlisting}
\hyphenpenalty=10000
\exhyphenpenalty=10000
\end{lstlisting}
\end{singlespacing}


\section{Trocando fontes}

Fonte padrÃ£o do \LaTeX{} Ã© \texttt{Computer Modern} desenhado especialmente para ele, mas existem outras fontes incluÃ­dos no \TeX{} que podem ser usados.

Em geral, selecionar fontes manualmente requer cuidados e conhecimento sobre tipografia para nÃ£o combinar fontes incompatÃ­veis. 
Portanto, recorremos aos pacotes desenvolvidos pelas especialistas no assunto.

Vamos ver como usar a fonte \texttt{Times}\index{Times} que Ã© uma das fontes populares.
Para selecionar a fonte \texttt{times}, usa o pacote \texttt{mathptmx}\index{mathptmx}. 
Basta colocar \verb+\usepackage{mathptmx}+ no \texttt{preamble} para que fontes fiquem como \texttt{Times}.

Para o Palatino, use o pacote \texttt{mathpazo}\index{mathpazo} com o comando \verb+\usepackage{mathpazo}+.

Ainda existem vÃ¡rias outras fontes que vem em qualquer distribuiÃ§Ã£o \TeX, assim como fontes adicionais do \TeX{} mais completo.

\section{Trocando marcador da lista itemizada}

A marca de itens\index{lista!marca de itens} da lista \texttt{itemize} tambÃ©m pode ser redefinidas.
Por exemplo, o cÃ³digo
\begin{singlespacing}
\begin{lstlisting}
\renewcommand{\labelitemi}{$\bullet$}
\renewcommand{\labelitemii}{$\cdot$}
\renewcommand{\labelitemiii}{$\diamond$}
\renewcommand{\labelitemiv}{$\ast$}
\end{lstlisting}
\end{singlespacing}
ajustado adequadamente no \texttt{preamble} faz isso.

\section{Cores no \LaTeX{}}

O pacote \texttt{color}\index{color} (carregado automaticamente pelo pacote \texttt{graphicx}) oferece recursos bÃ¡sicos para trabalhar com cores no \LaTeX. 
Aqui, vamos supor que o \verb+\usepackage{graphicx}+ jÃ¡ estÃ¡ no \texttt{preamble}.
Para poder referenciar cores pelos nomes, coloque \verb+\usepackage[usenames]{color}+\index{color!usenames} no \texttt{preamble} tambÃ©m.
 
Os comandos de cores usam o parÃ¢metro opcional para indicar o modelo. 
Se for omitido, serÃ¡ assumido o que foi especificado na hora de carregar o pacote \texttt{color}.
Como estamos supondo que vai usar a opÃ§Ã£o \texttt{usenames} na opÃ§Ã£o do pacote \texttt{color}, se o modelo for omitido nos comandos de cores, serÃ¡ assumido como \texttt{named}\index{color!named} (por nomes). 
 
A cor Ã© especificado pelo comando \verb+\color[modelo]{cor}+\index{color@\verb+\color+}, mas lembre-se de proteger pelas chaves para que a cor retorne ao padrÃ£o fora dele. 
Para a cor do fundo (das pÃ¡ginas), usa-se o comando \verb|\pagecolor[modelo]{cor}|\index{pagecolor@\verb+\pagecolor+}. 
  No caso do trecho de textos, podemos usar os comandos
\verb|\textcolor[modelo]{cor}{texto}|\index{textcolor@\verb+\textcolor+} (texto com cor especificado), \verb|\colorbox[modelo]{cor}{texto}|\index{colorbox@\verb+\colorbox+} (caixa de texto com cor do fundo especificado) e \verb|\fcolorbox[modelo]{fcor}{bcolor}{texto}|\index{fcolorbox@\verb+\fcolorbox+} (caixa de texto com cor \texttt{bcolor} e cor do contorno \texttt{fcolor}) sÃ£o usados.
Veja o Exemplo~\ref{ex13:color}.
 
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex09-03.tex},label=ex:09-03]
\begin{ltxlisting}[caption={ex13-color.tex},label=ex13:color]
Cor normal. {\color{red} Somente neste trecho muda de cor.} Aqui Ã© cor normal.

Combinando:
\textcolor{white}{\colorbox{black}{texto colorido na caixa colorida}}
\end{ltxlisting}
%\end{singlespacing}
O comando \verb+\normalcolor+ retorna a cor padrÃ£o (dentro do trecho com cores personalizados), o que pode ser Ãºtil em alguns casos.

Segue uma tabela de cores bÃ¡sicos. 

\begin{table}[htbp]
\caption{cores aceitos em todos \texttt{drivers} no pacote \texttt{color}}
 \ \\
 \begin{tabular}{|c|c|c|c|c|c|c|c|}
  \hline
  black &amp; \colorbox{black}{\hspace*{1cm}} &amp; white &amp;  \colorbox{white}{\hspace*{1cm}} &amp;
  red &amp; \colorbox{red}{\hspace*{1cm}} &amp; green &amp; \colorbox{green}{\hspace*{1cm}}  \\ \hline
  blue &amp; \colorbox{blue}{\hspace*{1cm}} &amp; cyan &amp;  \colorbox{cyan}{\hspace*{1cm}} &amp;
  magenta &amp; \colorbox{magenta}{\hspace*{1cm}} &amp; yellow &amp; \colorbox{yellow}{\hspace*{1cm}}  \\ \hline
 \end{tabular}
\end{table}

 Para mais opÃ§Ãµes de cores, poderÃ¡ usar opÃ§Ãµes \texttt{dvipsnames,usenames} na opÃ§Ã£o do pacote \texttt{color}, mas memorizar muitas cores nÃ£o Ã© produtivo.
Assim, costuma usar o pacote mais avanÃ§ado de cores como o \texttt{xcolor} que permite misturar cores.
  
\section{Uso de caixas}
Para criar comando um pouco complexo, Ã© importante ter noÃ§Ã£o sobre as caixas.
No \LaTeX, os elementos sÃ£o colocados nas caixas e serÃ£o distribuÃ­das nas pÃ¡ginas.
Estas caixas nÃ£o sÃ£o quebrÃ¡veis.
Por exemplo, \verb+\mbox+\index{mbox@\verb+\mbox+} cria uma caixa e coloca o seu argumento.
Como a caixa nÃ£o pode ser quebrada, se colocar uma palavra dentro do \verb+\mbox+, ele nÃ£o serÃ¡ hifenizada, apesar disso nÃ£o ser a forma elegante de proibir a hifenizaÃ§Ã£o de uma palavra.
Antigamente, tambÃ©m usava o \verb+\mbox+ para inserir texto no meio das fÃ³rmulas, o que Ã© feito atualmente pelo comando \verb+\text+ do pacote \texttt{amsmath}.

A versÃ£o completa do \verb+\mbox+ Ã© o \verb+\makebox+\index{makebox@\verb+\makebox+} que aceitam parÃ¢metros opcionais. 
Por exemplo, um \texttt{strut}\index{strut} (espaÃ§o reservado verticalmente) pode ser criado rapidamente com o \verb+\makebox+ com auxÃ­lio de \verb+\strut+\index{strut@\verb+\strut+} (\verb+\strut+ reserva altura de uma linha).

Outras caixas que Ã© usado com certa frequÃªncia Ã© o \verb+\fbox+\index{fbox@\verb+\fbox+} que coloca moldura e \verb+\parbox+\index{parbox@\verb+\parbox+} que Ã© uma versÃ£o simples de \texttt{minipage}.

No caso de \verb+\fbox+, as medidas \verb+\fboxsep+\index{fboxsep@\verb+\fboxsep+} e 
\verb+\fboxrule+\index{fboxrule@\verb+\fboxrule+} controlam o espaÃ§o entre conteÃºdo e moldura, assim como a espessura de linha da moldura.

Uma versÃ£o completa com \verb+\fbox+ Ã© o \verb+\framebox+\index{framebox@\verb+\framebox+} que pode controlar a largura e o posicionamento.
Usando em combinaÃ§Ã£o com o comando \verb+\strut+ que insere espaÃ§o vertical, poderÃ¡ criar um retÃ¢ngulo com \verb+\framebox+.

O \verb+\parbox+ permite colocar textos com parÃ¡grafos e similares, o que Ã© proibido nas maioria das caixas. Assim, colocando os elementos dentro do \verb+\parbox+, poderÃ¡ usar textos com parÃ¡grafos e similares dentro da caixa comum. Note que, alguns casos mais complexos, requer o sudo do  \texttt{minipage} em vez do \verb+\parbox+.

Veja o Exemplo~\ref{ex13:caixa:fbox}.

\begin{ltxlisting}[caption={ex13-caixa-fbox.tex}, label=ex13:caixa:fbox]
Exemplo de um \texttt{strut}\mbox{\strut}, continuaÃ§Ã£o.

Texto com espaÃ§o\makebox[2em]{\strut}, continuaÃ§Ã£o.

\fbox{Texto com moldura}

\setlength{\fboxsep}{10pt}
\setlength{\fboxrule}{5pt}
\fbox{Texto com moldura personalizada}

\setlength{\fboxsep}{0pt}
\setlength{\fboxrule}{1pt}
\framebox[5em]{\strut} % um retÃ¢ngulo

\fbox{% moldura no texto com mais de uma linha
\parbox{\textwidth}{%
Linha 1\\
Linha 2
}}
\end{ltxlisting}

AlÃ©m de permitir manipulaÃ§Ãµes (mudar de tamanho, posiÃ§Ã£o, rotaÃ§Ã£o, etc),
o uso de caixas permite utilizar o elemento vÃ¡rias vezes.
Por exemplo, poderÃ¡ replicar vÃ¡rias vezes um elemento, ou efetuar medidas antes de posicionar elementos.
Para salvar uma caixa, usa-se o comando \verb+\sbox+\index{sbox@\verb+\sbox+} ou \verb+\savebox+.
Uma caixa salva pode ser usado usado pelo \verb+\usebox+.
Para salvar uma caixa, inicialmente cria uma variÃ¡vel para armazenar usando o \verb+\newsavebox+\index{newsavebox@\verb+\newsavebox+}.
Depois salva a caixa usando \verb+\savebox+\index{savebox@\verb+\savebox+}.
Uma caixa salva pode ser referenciado quantas vezes queira, pelo comando \verb+\usebox+\index{usebox@\verb+\usebox+}. Para alterar a altura onde caixa  serÃ¡ colocada, poderÃ¡ usar o comando \verb+\raisebox+\index{raisebox@\verb+\raisebox+}.
Veja o Exemplo~\ref{ex13:caixas}.
\begin{ltxlisting}[caption={ex13-caixas.tex}, label=ex13:caixas]
\newsavebox{\mybox} % cria a variavel para caixa
\savebox{\mybox}{Teste} % armazena conteudo
\usebox{\mybox}
\usebox{\mybox}
\raisebox{-2ex}{\usebox{\mybox}}

Outra linha
\end{ltxlisting}
Diferente do parÃ¢metro do comando, os atributos (cor, por exemplo) do elemento dentro da caixa salva nÃ£o podem ser alterados.
Assim, quando precisar usar mesmo elemento mais de uma vez com atributos diferentes (como no caso do texto sombreado), precisarÃ¡ criar um comando em vez de salvar e reusar as caixas.

Note que uma barra pode ser criado pelo comando
\verb+\rule+\index{rule@\verb+\rule+}, embora ele nÃ£o seja uma caixa.
Veja o Exemplo~\ref{ex13:rule}.

\begin{ltxlisting}[caption={ex13-rule.tex}, label=ex13:rule]
\rule{0.5\textwidth}{1pt}

Texto
\rule[0.1\textwidth]{1pt}{0.1\textheight}
continuaÃ§Ã£o
\end{ltxlisting}

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Algumas Dicas Para Criar Comandos e Ambientes}

\section[Comandos com ``@'' e ``*'']{Acessando os comandos com ``@'', criando comandos versÃ£o ``*'' e parÃ¢metro do tipo \texttt{chave=valor}}

As vezes precisamos usar os comandos ou ambientes que contÃ©m ``@'' no seu nome. 
O caso tÃ­pico Ã© redefinir comandos existentes tais como \verb+\maketitle+, estilo de cabeÃ§alho das pÃ¡ginas, etc.
Note que os comandos e ambientes que usam ``@'' no seu nome sÃ£o comandos sensÃ­veis e devem ser usados com cuidado.
Para acessar estes comandos e ambientes, coloque \verb+\makeatletter+\index{makeatletter@\verb+\makeatletter+} antes de usar e \makeatother+\index{makeatother@\verb+\makeatlther+} depois.

Por exemplo, ajustar o espaÃ§amento de linhas como sendo simples no texto de rodapÃ©, mesmo que esteja usando espaÃ§amento um e meio ou dupla no corpo do documento. 
Isto pode ser feito, acrescentando a seguinte cÃ³digo no \texttt{preamble} do documento.

%========================================================
% rodap\'e deve estar em espa\c{c}amento simples,
% independente do espa\c{c}amento no corpo de documento
% Devera ser feito com linespread{} \@currsize
% pois comandos do setspace nao funciona
%========================================================
% foi copiado do book e alterado

\begin{singlespacing}
\begin{lstlisting} 
\makeatletter % ativa uso de ``@'' no nome
\renewcommand\@makefntext[1]{%
    \parindent 1em%
    % inicio da altera\c{c}\~ao    
    \linespread{1} \@currsize \noindent
    % \hb@xt@1.8em{\hss\@makefnmark}#1}
    \hb@xt@0.45em{\hss\@makefnmark}#1}
% fim da altera\c{c}\~ao
\makeatother % desativa o uso de ``@'' no nome
\end{lstlisting}
\end{singlespacing}

Outro exemplo e o caso de usar linhas pontilhadas no sumÃ¡rio.

\begin{singlespacing}
\begin{lstlisting}
\makeatletter
\renewcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
\makeatother
\end{lstlisting}
\end{singlespacing}

no \texttt{preamble} do artigo habilita o uso de linhas pontilhadas no sumÃ¡rio\index{sumÃ¡rio!linhas pontilhadas}, para seÃ§Ãµes.
Para habilitar o pontilhado no capÃ­tulo do sumÃ¡rio Ã© mais complexo.
Veja o cÃ³digo do \url{https://tex.stackexchange.com/questions/62438/how-to-add-leaders-to-table-of-contents-without-tocloft}.

\begin{singlespacing}
\begin{lstlisting}
\renewcommand*\l@chapter[2]{%
  \ifnum \c@tocdepth &gt;\m@ne
    \addpenalty{-\@highpenalty}%
    \vskip 1.0em \@plus\p@
    \setlength\@tempdima{1.5em}%
    \begingroup
      \parindent \z@ \rightskip \@pnumwidth
      \parfillskip -\@pnumwidth
      \leavevmode \bfseries
      \advance\leftskip\@tempdima
      \hskip -\leftskip
      #1\nobreak
      \xleaders\hbox{$\m@th
        \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
        mu$}\hfill%
      \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
      \penalty\@highpenalty
    \endgroup
  \fi}
\end{lstlisting}
\end{singlespacing}
  
Note que, no \LaTeX, existem vÃ¡rios comandos e ambientes que tem versÃ£o normal e versÃ£o ``*'' na qual a versÃ£o ``*'' Ã© uma variaÃ§Ã£o da versÃ£o normal.
Para criar os comandos versÃ£o ``*'', usa-se o comando \verb+\@ifstar+\index{ifstar@\verb+\+\arrobasymbforindex\verb+ifstar+} que determina se estÃ¡ ou nÃ£o usando a versÃ£o ``*'', mas seu uso requer cuidados.

O cÃ³digo
%
\begin{singlespacing}
\begin{lstlisting}
\makeatletter
\def\myemph{\@ifstar\@myemph\@@myemph} % selecionando os comandos
\newcommand{\@myemph}[1]{\underline{#1}} % versao ``*''
\newcommand{\@@myemph}[1]{\emph{#1}} % versao normal
\makeatother
\end{lstlisting}
\end{singlespacing}
%
define a versÃ£o normal e versÃ£o ``*'' do \verb+\myemph+.
Note que na primeira linha foi usado o \verb+\def+ em vez de \verb+\newcommand+, o que Ã© necessÃ¡rio quando o comando tem parÃ¢metros. 
Com o \verb+\@ifstar+, seleciona o comando de acordo com a existÃªncia do ``*''.
Note que o primeiro Ã© versÃ£o com ``*'' e o segundo Ã© a versÃ£o sem ``*''.

Depois define os comandos com ``*'' e comandos sem ``*'' que foi usado anteriormente. 
Note o uso de ``@'' no nome destes comandos para proteger do uso indevido deles.

Assim, podemos usar a versÃ£o normal que enfatiza e versÃ£o ``*'' que sublinha.
Veja o Exemplo~\ref{ex14:star}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex04-06.tex},label=ex:04-06]
\begin{ltxlisting}[caption={ex14-star.tex},label=ex14:star]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\makeatletter
\def\myemph{\@ifstar\@myemph\@@myemph} % selecionando os comandos
\newcommand{\@myemph}[1]{\underline{#1}} % versao ``*''
\newcommand{\@@myemph}[1]{\emph{#1}} % versao normal
\makeatother
\begin{document}
Enfatizando palavras com \myemph{Teste} e \myemph*{Teste}.
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Note que no caso de ambientes, a versÃ£o com ``*'' pode ser definido diretamente, sem a necessidade do artifÃ­cio dos comandos como em
\begin{singlespacing}
\begin{lstlisting}
\newenvironment{mypar}[1]% 1 argumento eh titulo
  {\par \center ---------------&lt; #1 &gt;--------------- \\ }% tÃ­tulo e linha
  {\par \center ---------------&lt; fim &gt;--------------- \\}
  
\newenvironment{mypar*}[1]% 1 argumento que eh titulo
  {\par \center ---------------&lt; #1 &gt;--------------- \\ }% tÃ­tulo e linha
  {\par \center ------------------------------------- \\}
\makeatother
\end{lstlisting}
\end{singlespacing}


Outra coisa que pode querer Ã© criar comandos e ambientes que recebem os parÃ¢metros na forma \texttt{chave=valor}\index{parÃ¢metros!chave=valor}.

Para isso, usa-se o pacote \texttt{keyval}.
para implementar o parÃ¢metro do tipo \texttt{chave=valor}. Inicialmente, precisa criar uma regra do que fazer quando tiver uma determinada chave no parÃ¢metro, usando o comando \verb+\define@key+\index{definekey@\verb+\define+\arrobasymbforindex\verb+key+}.

O primeiro parÃ¢metro Ã© o grupo que o parÃ¢metro pertence.
Em geral, coloca o nome do comando ou ambiente para evitar conflitos.
Segundo parÃ¢metro Ã© o nome da chave e terceiro Ã© o que vai fazer. 
O \verb+#1+ serÃ¡ o valor da chave.

Em geral, se tiver o nome da chave sem o valor, darÃ¡ erro.
Se quer aceitar a chave sem o valor, poderÃ¡ passar o valor padrÃ£o como parÃ¢metro opcional.

O parÃ¢metro serÃ¡ evaluado pelo comando \verb+\setkeys+\index{setkeys@\verb+\setkeys+} onde primeiro parÃ¢metro Ã© o grupo que o parÃ¢metro pertence.

Note que, se o parÃ¢metro for definido pelo comando, precisarÃ¡ expandir antes, ou seja, retardar o \verb+\setkeys+. 
Para isso, usa-se o comando \verb+\expandafter+\index{expandafter@\verb+\expandafter+}, mas retardar o comando para expandir o segundo argumento primeiro nÃ£o Ã© simples.
Neste caso, define um comando auxiliar com um Ãºnico argumento que chama o \verb+\setkeys+ com nome do grupo prefixado e aplicar \verb+\expandafter+ neste comando.
Veja o Exemplo~\ref{ex14:keyval}.

\begin{ltxlisting}[caption={ex14-keyval}, label=ex14:keyval]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{keyval}
\makeatletter
% O que vai fazer se encontrar "foo" no parametro do grupo "my".
\define@key{my}{foo}{foo vale #1\par} % se receber foo sem o seu valor, dara erro
\define@key{my}{bar}[99]{bar vale #1\par} % com valor padrao "99" se valor nao for repassado.
\makeatother

% Definindo o comando auxiliar com um argumento
\def\mysetkeys#1{\setkeys{my}{#1}}
% Comando associado ao argumento
\def\mykeyvalue{foo=5}
\begin{document}
Testando o parÃ¢metro chave=valor.

\setkeys{my}{foo=3,bar}

O argumento que esta ``armazenado'' no comando.

\mykeyvalue

% expandindo o argumento primeiro para poder evaluar
\expandafter\mysetkeys\expandafter{\mykeyvalue}
\end{document}
\end{ltxlisting}

Agora, veja o Exemplo~\ref{ex14:keyval:env} para exemplo de implementaÃ§Ã£o do ambiente.
Nele, foi usado o \verb+\newif+\index{newif@\verb+\newif+} que cria um condicional.
O comando \verb+\newif\if&lt;nome&gt;+ cria o condicional \verb+\if&lt;nome&gt;+ que torna verdadeiro ou falso quando chamar \verb+if&lt;nome&gt;true+ ou \verb+if&lt;nome&gt;false+ respectivamente.

\begin{ltxlisting}[caption={ex14-keyval-env}, label=ex14:keyval:env]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{keyval}
\makeatletter
\newif\ifmyparkeyvaltitle % testar se tem titulo
% O titulo serÃ¡ associado ao comando para poder ser usado posteriormente.
\define@key{myparkeyval}{title}{
\hrulefill\fbox{#1}\hrulefill\myparkeyvaltitletrue
\def\myparkeyvaltitle{#1}}

\newenvironment{myparkeyval}[1][]{
\myparkeyvaltitlefalse
\par\noindent
\setkeys{myparkeyval}{#1}
\ifmyparkeyvaltitle
\else
  \hrule
\fi
\par}{
\par\noindent
\ifmyparkeyvaltitle
  \hrulefill\fbox{fim do \myparkeyvaltitle}\hrulefill
\else
  \hrule
\fi
\par}
\makeatother

\begin{document}
\begin{myparkeyval}
Sem titulo.
\end{myparkeyval}

\begin{myparkeyval}[title=Titulo]
Com titulo.
\end{myparkeyval}
\end{document}
\end{ltxlisting}

\section[Ambiente com parÃ¢metro na finalizaÃ§Ã£o e aplicaÃ§Ã£o do comando]{Ambiente com parÃ¢metro na finalizaÃ§Ã£o e aplicaÃ§Ã£o do comando no corpo}

No caso de ambiente precisar usar o argumento na finalizaÃ§Ã£o, precisarÃ¡ associar a algum comando.
Isto porque, o comando \verb+\newenvironment{ambiente}+ criarÃ¡ o par de comandos \verb+\ambiente+ (chamado pelo \verb+\begin{ambiente}+) e \verb+\endambiente+ (chamado pelo \verb+\end{ambiente}+) que funcionarÃ¡ em sincronismo. 
Os parÃ¢metros do ambiente sÃ£o passado para o comando de inicializaÃ§Ã£o, mas nÃ£o para a finalizaÃ§Ã£o.

Veja o Exemplo~\ref{ex14:parametro:finalizacao} que usa o segundo parÃ¢metro na finalizaÃ§Ã£o.

\begin{ltxlisting}[caption={ex14-parametro-finilizacao.tex}, label=ex14:parametro:finalizacao]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\newenvironment{mypartwo}[2]{
\par\noindent\hrulefill%
\ifx #1\empty
\else % se nao for vazio, coloca com fbox
  \fbox{#1}
\fi
\hrulefill\par
\def\mypartwoargtwo{#2}}{% agora eh finalizacao do ambiente
\par\noindent\hrulefill%
\ifx \mypartwoargtwo\empty
\else
  \fbox{\mypartwoargtwo}
\fi%
\hrulefill\par}
\begin{document}
\begin{mypartwo}{Inicio}{Fim}
Testando
\end{mypartwo}
\end{document}
\end{ltxlisting}


Note que no exemplo acima, foi usado o comando \verb+\ifx+\index{ifx@\verb+\ifx+} para verificar se o argumento correspondente Ã© ou nÃ£o vazio.
O comando \verb+\else+\index{else@\verb+\else+} Ã© \texttt{senÃ£o} e \verb+\fi+\index{fi@\verb+\fi+} Ã© \texttt{fim se}.


As vezes, queremos um ambiente que aplica um comando no corpo do ambiente.
No entanto, a chave aberta/fechada para indicar o parÃ¢metro deve aparecer em par tanto na inicializaÃ§Ã£o, com na finalizaÃ§Ã£o, nÃ£o podendo delimitar o corpo do ambiente.

Para casos como este, podemos usar um comando em vez da chave para inicializar/finalizar o agrupamento. Para inicializar o agrupamento, usa-se o comando \verb+\bgroup+ e para finalizar, usa-se o comando \verb+\egroup+.

Como um exemplo, vamos supor que queremos um ambiente que sublinhe todo texto, aplicando o \verb+\emph+ em todo corpo do ambiente (jÃ¡ existe tal ambiente que Ã© \verb+em+, mas aqui foi construÃ­do como um exemplo).
Exemplo~\ref{ex14:comando:corpo:ambiente}.

\begin{ltxlisting}[caption={ex14-comando-no-corpo-do-ambiente.tex}, label=ex14:comando:corpo:ambiente]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}

\newenvironment{myulbox}{\emph\bgroup}{\egroup}

\begin{document}
\begin{myulbox}
Testando o ambiente.
\end{myulbox}
\end{document}
\end{ltxlisting}

O uso de \verb+\bgroup+/\verb+\egroup+ falham para vÃ¡rios comandos tais como \verb+\underline+ e \verb+\fbox+. Nestes casos, poderÃ¡ usar o comando \verb+\collect@body+\index{collectbody@{\verb+\collect+\arrobasymbforindex\verb+body+}} do pacote \texttt{amsmath}.
Exemplo~\ref{ex14:comando:corpo:ambiente:amsmath} ilustra o uso do recurso de \texttt{amsmath} (Note que \verb+\collect@body+ vem antes do comando).

\begin{ltxlisting}[caption={ex14-comando-no-corpo-do-ambiente-amsmath.tex}, label=ex14:comando:corpo:ambiente:amsmath]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{amsmath}
\makeatletter
  \newenvironment{myfbox}{\collect@body\fbox}{}
\makeatother
\begin{document}
\begin{myfbox}
Testando o ambiente.
\end{myfbox}
\end{document}
\end{ltxlisting}

Note que \verb+\collect@body+ nÃ£o pode ser usado para ambiente que recebem quebra de linhas ou parÃ¡grafos e tambÃ©m nÃ£o funciona para aplicar comandos com mais de um parÃ¢metro. Para tais casos, poderÃ¡ recorrer ao pacote fora do \texttt{base}/\texttt{required} como o \texttt{environ}\index{environ} na qual \verb+\BODY+ corresponde ao conteÃºdo do ambiente (Exemplo~\ref{ex14:comando:corpo:ambiente:environ}).

% Exemplo do uso:
% \usepackage{environ}
% \NewEnviron{myulbox}{\underline{\BODY}} {}
\begin{lstlisting}[caption={ex14-comando-no-corpo-do-ambiente-environ.tex}, label=ex14:comando:corpo:ambiente:environ]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{environ}
\newcommand{\myframebox}[1]{\fbox{\parbox[\columnwidth]{#1}}}
\NewEnviron{myfbox}{\myframebox{\BODY}} {}
\begin{document}
\begin{myfbox}
Testando o ambiente.
\end{myfbox}
\end{document}
\end{lstlisting}


\section{Comandos definidos dentro do outro comando}

As vezes, queremos modificar um comando dentro do outro.
Por exemplo, comand \verb+\chapter+ e \verb+\section+ 
modificam os comandos para exibir informaÃ§Ãµes no cabeÃ§alho.
Outro caso Ã© os comandos que definem as informaÃ§Ãµes da capa 
como \verb+\title+ e \verb+\author+ na qual define comandos
internos para armazenar informaÃ§Ãµes para uso posterior.
O Exemplo~\ref{ex14:comando:aninhado} ilustra o uso de definiÃ§Ã£o do comando dentro do comando para armazenar o parÃ¢metro no comando interno para o uso posterior. 

\begin{ltxlisting}[caption={ex14-comando-aninhado.tex}, label=ex14:comando:aninhado]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\makeatletter
  \newcommand{\@my@title}{}
  \newcommand{\mytitle}[1]{\renewcommand{\@my@title}{#1}}
  \newcommand{\myprinttitle}{\@my@title}
\makeatother
\begin{document}
\mytitle{Teste}
O tÃ­tulo armazenado Ã© \myprinttitle
\end{document}
\end{ltxlisting}
Como cada chamada, o comando redefine o comando interno,
o comando interno deve existir antes.

Para redefinir um comando jÃ¡ existente, Ã© interessante tirar uma cÃ³pia dele antes de redefinir, o que permitiria usar ou restaurar o comando original, caso necessÃ¡rio. Para copiar um comando, usa-se o \verb+\let+\index{let@\verb+\let+}.
O Exemplo~\ref{ex14:comando:let} ilustra o uso de \verb+\let+.

\let\thesectionoriginaldolivro\thesection
\renewcommand{\thesection}{\arabic{section} }
\begin{ltxlisting}[caption={ex14-comando-let.tex}, label=ex14:comando:let]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\newcommand{\mythesection}{\roman{section}: }
\let\thesectionoriginal\thesection
\begin{document}
\let\thesection\mythesection
\section{EnumeraÃ§Ã£o nova}
\let\thesection\thesectionoriginal
\section{EnumeraÃ§Ã£o normal}
\end{document}
\end{ltxlisting}
\let\thesection\thesectionoriginaldolivro

Para desativar um comando, em geral associao ao comando \verb+\relax+ usando \verb+\let+.

Para definir comando com parÃ¢metro dentro da definiÃ§Ã£o de comandos, o parÃ¢metro do comando aninhado (de dentro) deve ter dois ``\#'' em vez de uma para distinguir com o parÃ¢metro do comando externo.
Veja o Exemplo~\ref{ex14:comando:aninhado:com:parametro}.

\begin{ltxlisting}[caption={ex14-comando-aninhado-com-parametro.tex}, label=ex14:comando:aninhado:com:parametro]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\newcommand{\mytitledtext}[1]{##1}
\newcommand{\mytitlefortext}[1]{%
  \renewcommand{\mytitledtext}[1]{\textbf{#1:} ##1}%
}
\mytitlefortext{Nota}
\begin{document}
\mytitledtext{Teste de aninhamento}
\end{document}
\end{ltxlisting}

Muitas vezes, usamos o comando de definiÃ§Ã£o do \TeX{} em vez do \LaTeX,
o que Ã© mais rÃ¡pido.
As vezes,  tambÃ©m usamos a versÃ£o \TeX{} para definir 
o comando definido dentro do \verb+newcommand+ para diferenciar.

Os comandos \TeX{} correspondentes ao \verb+\newcommand+
do \LaTeX{} sÃ£o: \verb+\def+\index{def@\verb+\def+}, \verb+edef+, \verb+gdef+ e \verb+xdef+.

Observe que \verb+\def+ redefine o comando 
caso jÃ¡ existir, o que requer cuidados para nÃ£o alterar 
o comando importante jÃ¡ existente.
A diferenÃ§a com o \verb+newcommand+ Ã© a indicaÃ§Ã£o dos nÃºmeros de parÃ¢metros.

Para definir comando com parÃ¢metros, acrescenta-se o \verb+#1#2+,\ldots, \verb+#&lt;n&gt;+, onde \verb+&lt;n&gt;+ Ã© o nÃºmero do parÃ¢metro (no mÃ¡ximo $9$). 
O Exemplo~\ref{ex14:comando:def} ilustra o uso de definiÃ§Ã£o do comando dentro do comando para armazenar o parÃ¢metro no comando interno para o uso posterior. 
\begin{ltxlisting}[caption={ex14-comando-def.tex}, label=ex14:comando:def]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\makeatletter
  \def\mytitle#1{\gdef\@my@title{#1}}
  \newcommand{\myprinttitle}{\@my@title}
  \mytitle{}
\makeatother
\begin{document}
\mytitle{Teste}
O tÃ­tulo armazenado Ã© \myprinttitle
\end{document}
\end{ltxlisting}

Note que foi usado \verb+\gdef+\index{gdef@\verb+\gdef+} que Ã© atalho para \verb+\global\def+, em vez de \verb+\def+ para que a definiÃ§Ã£o fique disponÃ­vel globalmente, dai em diante. No caso de usar o \verb+\def+, a definiÃ§Ã£o sÃ³ vale para dentro do ambiente que contÃ©m (caso definir comando usando \verb+\def+ dentro de algum ambiente -- entre \verb+\begin+ e \verb+\end+ -- fora dele o comando nÃ£o estarÃ¡ disponÃ­vel. No caso de \verb+\gdef+, comando definido continua disponÃ­vel fora do ambiente).

Existe o comando \verb+edef+\index{edef@\verb+\edef+} que expande os argumentos na hora de definir.
Por exemplo, \verb+\def\pagina{thepage}+ define comando que imprime a pÃ¡gina na qual o comando \verb+\pagina+ foi chamado, enquanto que \verb+\edef\pagina{thepage}+ define comando que imprime a pÃ¡gina na qual o comando \verb+\pagina+ foi definido. Note que, \verb+xdef+\index{xdef@\verb+\xdef+} Ã© um atalho para \verb+\global\edef+ que mantÃ©m a definiÃ§Ã£o dos comandos globalmente.
No caso da definiÃ§Ã£o de dentro ter parÃ¢metro, a indicaÃ§Ã£o de parÃ¢metro tambÃ©m leva dois ``\#''.
Outro caso Ã© acrescentar algo no comando jÃ¡ existente, como em\verb+\def\foo{\foo{} mais algo}+ que causa erros pela recursÃ£o infinita e \verb+\edef\foo{\foo{} mais algo}+ que funciona devidamente. Note que, para adicionar algo no comando ou ambiente existente, deverÃ¡ usar o \verb+\AddToHook+ ou similar para funcionar devidamente. %LaTeX 01/10/2020

\section{Alterando os comandos e ambientes existÃªntes}
As vezes, queremos efetuar alteraÃ§Ã£o no ambiente ou comandos existentes, adicionando comandos a mais. Isto costumava ser feito pelo comando \verb+\addto+ do pacote \texttt{babel} ou similar.
%\verb+appto+ e similares do pacote \texttt{etoolbox}, mas a partir da versÃ£o do \LateX{} 01/10/2020, tal recurso tornou parte da base de \LateX, com o comando \verb+\AddToHook+.
%Assim, vamos deixar \verb+\addto+ do \textt{babel} e comandos do \texttt{etoolbox} de lado e veremos o caso de uso de \verb+\AddToHook+ que nÃ£o requer pacotes adicionais.

Para exemplificar, considere o caso de definir o comando \verb+\foo+ e efetua a modificaÃ§Ã£o posterior com o \verb+\AddToHook+\index{AddToHook@\verb+\AddToHook+}.

\begin{singlespacing}
\begin{lstlisting}
\def\foo{um comando}
\AddToHook{cmd/foo/before}% Adicionando no comeÃ§o do comando
{Este Ã© }
\AddToHook{cmd/foo/after}% Adicionando no final do comando
{ de teste}
\end{lstlisting}
\end{singlespacing}
% 

A definiÃ§Ã£o original do comando \verb+\foo+ Ã© imprimir ``um comando'', psa o primeiro \verb+\AddToHook+ acrescenta ``Este Ã© '' antes dele, modificando para imprimir ``Este Ã© um comando'' e o segundo \verb+\AddToHook+ adiciona `` de teste'' no final, para imprimir ``Este Ã© um comando de teste''.
No parÃ¢metro de \verb+\AddToHook+, inicia com \verb+cmd+, indicando que Ã© um comando e seguido do separador do campo \verb+/+ e o nome do comando. Depois coloca-se o separador novamente e coloca a posiÃ§Ã£o que pode ser no inÃ­cio (\verb+before+) ou no final (\verb+after+). Se o Ãºltimo campo for omitido, serÃ¡ assumido \verb+\after+

Para o caso de alterar o ambiente, especifica \verb+\env+ em vez de \verb+cmd+ e se a alteraÃ§Ã£o for no inicializaÃ§Ã£o do ambiente, coloca-se \verb+before+ no Ãºltimo campo e se a alteraÃ§Ã£o for na finalizaÃ§Ã£o, coloca-se \verb+after+ no Ãºltimo campo do parÃ¢metro.

\begin{singlespacing}
\begin{lstlisting}
\newenvironment{myenv}{\begin{center}}{\end{center}}
\AddToHook{env/myenv/before}% Adicionando no comeÃ§o da inicializaÃ§ao do ambiente
{\begin{bfseries}}
\AddToHook{env/myenv/after}% Adicionando no final da finalizaÃ§Ã£o do ambiente
{\end{bfseries}}
\end{lstlisting}
\end{singlespacing}
% 

Caso o primeiro campo for omitido, serÃ¡ assumido como \verb+cmd+.

Note que, o comando de inicializaÃ§Ã£o e finalizaÃ§Ã£o do ambiente \verb+myenv+ sÃ£o \verb+beginmyenv+ e \verb+endmyenv+ respectivamente. Assim, podemos adicionar cÃ³digos diretamente nestes comandos em vez do ambiente. Desta forma, para inserir comando no comeÃ§o do documento\index{AddToHookbegindocument@\verb+AddToHook{begindocument}+} (que tem o atalho \verb+\AtBeginDocument+\index{AtBeginDocument@\verb+\AtBeginDocument+}) pode ser como no exemplo
\begin{singlespacing}
\begin{lstlisting}
\makeatletter   
\AddToHook{begindocument}% Adicionando no comeÃ§o do documento
{ \@ifpackageloaded{graphicx}{
    \def\logo{\includegraphics[height=3ex]{logo-ufscar}}
  }{\def\logo{UFSCar }}
}
\makeatother
\end{lstlisting}
\end{singlespacing}

que checarÃ¡ se o pacote \texttt{graphicx} foi carregado atravÃ©s do comando \verb+\@ifpackageloaded+\index{arrobaifpackageloaded@\verb+\@ifpackageloaded+}
e caso positivo, define o comando \verb+\logo+ para inserir imagem de logotipo. Caso nÃ£o for carregado, define o comando para apenas inserir o texto.
Checar pacotes carregados para decidir o que fazer Ã© tÃ©cnica utilizada pelos desenvolvedores de pacotes. 

Alguns comandos/ambientes importantes para desenvolvedores, incluem AlÃ©m do \texttt{begindocument} (inÃ­cio do documento), dependendo da necessidade, os desenvolvedores podem inserir cÃ³digo em \texttt{enddocument} (final do documento) e \texttt{shipout} (gerar pÃ¡gina) tambÃ©m, para ajustar parÃ¢metros, se necessÃ¡rio.  

Para acessar o parÃ¢metro do comando ou ambiente, use \verb+\AddToHookWithArguments+\index{AddToHookWithArguments@\verb+\AddToHookWithArguments+}
 em vez de \verb+\AddToHook+.

Para mais detalhes, consulte o manual.

% \AddToHook {begindocument}

%\AtBeginDocument but for the enddocument hook.


\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Usando Pacotes Fora do \texttt{base} e \texttt{required}}

AtÃ© agora, sÃ³ estudamos os pacotes disponÃ­veis em qualquer distribuiÃ§Ã£o \TeX, usando somente os pacotes do conjunto denominado de \texttt{base}\index{base} e \texttt{required}\index{required}.
No entanto, maioria das distribuiÃ§Ãµes \LaTeX{} instala uma grande quantidade de pacotes adicionais para incrementar a sua funcionalidade.
Assim, neste capÃ­tulo, vamos aventurar em alguns destes pacotes adicionais para facilitar o nosso trabalho.

\section[ConfiguraÃ§Ã£o das pÃ¡ginas]{Ajustando a configuraÃ§Ã£o das pÃ¡ginas e similares}

Para ajustar as margens, tamanho de papeis, espaÃ§amento entre cabeÃ§alho e texto, etc, usamos o pacote \texttt{geometry}\index{geometry}.
As configuraÃ§Ãµes podem ser feitas, passando no parÃ¢metro opcional do pacote, a lista dos itens na forma \texttt{chave=valor}, separado pela virgula.
TambÃ©m pode usar o comando \verb+\geometry+\index{geometry@\verb+\geometry+} apÃ³s carregar o pacote.

Para ajustar margem superior (\texttt{tmargin}\index{geometry!tmargin}), margem inferior (\texttt{bmargin}\index{geometry!bmargin}), margem esquerda (\texttt{lmargin}\index{geometry!lmargin}, serÃ¡ de dentro se for frente/verso), margem direita (\texttt{rmargin}\index{geometry!rmargin}, serÃ¡ de fora se for frente/verso), basta colocar algo como
\begin{singlespacing}
\begin{lstlisting}
\usepackage[tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm]{geometry}
\end{lstlisting}
\end{singlespacing}
ou
\begin{singlespacing}
\begin{lstlisting}
\usepackage{geometry}
\geometry{tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm}
\end{lstlisting}
\end{singlespacing}
%
no \texttt{preamble} do documento.

Para ajuste de espaÃ§amento entre linhas, usamos o pacote \texttt{setspace}\index{setspace} que tem  os comandos \verb+\singlespacing+\index{singlespacing@\verb+\singlespacing+} (espaÃ§amento simples), \verb+\onehalfspacing+\index{onehalfspacing@\verb+\onehalfspacing+} (espaÃ§amento um e meio) e \verb+\doublespacing+\index{doublespacing@\verb+\doublespacing+} (espaÃ§amento duplo), alÃ©m do ambiente \texttt{spacing}\index{spacing} que permite qualquer espaÃ§amento dentro dele.

Para que o documento fique em espaÃ§amento um e meio, coloque

\begin{singlespacing}
\begin{lstlisting}
\usepackage{setspace}
\onehalfspacing
\end{lstlisting}
\end{singlespacing}
%
no \texttt{preamble} do documento.

UsuÃ¡rio da classe \texttt{memoir}\index{memoir} devem colocar \verb+\DisemulatePackage{setspace}+\index{DisemulatePackagesetspace@\verb+\DisemulatePackage{setspace}+} antes de carregar o \texttt{setspace}.

Para desabilitar a hifenizaÃ§Ã£o em todo documento ou ativar hifenizaÃ§Ã£o na fonte mono espaÃ§ado (\verb+\ttfamily+), poderÃ¡ usar o pacote \texttt{hyphenat}\index{hyphenat}.
\begin{singlespacing}
\begin{lstlisting}
\usepackage[none]{hypenat}
\end{lstlisting}
\end{singlespacing}
no \texttt{preamble} desabilita hifenizaÃ§Ã£o em todo documento.
Se nÃ£o quer usar o pacote e quer desativar a hifenizaÃ§Ã£o, coloque
\begin{singlespacing}
\begin{lstlisting}
\hyphenpenalty=10000
\exhyphenpenalty=10000
\end{lstlisting}
\end{singlespacing}
no \texttt{preamble} do documento.

Para melhorar o ajuste de espaÃ§os, poderemos usar o pacote \texttt{microtype}\index{microtype} que usa o recurso de micro tipografia. 
Um desses ajustes Ã© reduzir ou ampliar levemente o tamanho da fonte para melhorar o espaÃ§amento.
Por exemplo, podemos colocar
\begin{singlespacing}
\begin{lstlisting}
\usepackage[stretch=10]{microtype}
\end{lstlisting}
\end{singlespacing}
no \texttt{preamble}.

CabeÃ§alho no estilo de pÃ¡gina \texttt{headings}\index{headings} coloca o tÃ­tulo do capÃ­tulo e seÃ§Ã£o no cabeÃ§alho em maiÃºsculo. 
Para tanto, usa-se o comando \verb+\MakeUppercase+\index{MakeUppercase@\verb+\MakeUppercase+} que nÃ£o funciona para letras acentuadas diretamente (funciona para acentuaÃ§Ã£o no modo \TeX). 
AlÃ©m disso, ele tenta converter inclusive as fÃ³rmulas, o que pode causar problemas.
O pacote \texttt{textcase}\index{textcase} permite sobrescrever o \verb+\MakeUppercase+ para evitar tais problemas, alÃ©m de mais alguns recursos adicionais.
Coloque
\begin{singlespacing}
\begin{lstlisting}
\usepackage[overload]{textcase}
\end{lstlisting}
\end{singlespacing}
%
no \texttt{preamble}.

Normalmente, a referÃªncia bibliogrÃ¡fica e Ã­ndice remissivo nÃ£o costumam ficar no sumÃ¡rio.
Para que eles constem no sumÃ¡rio, use o pacote \texttt{tocbibind}\index{tocbibind}. 
Usando a opÃ§Ã£o adicional, pode impedir que o sumÃ¡rio, lista de figuras e de tabelas fiquem fora do sumÃ¡rio.
\begin{singlespacing}
\begin{lstlisting}
\usepackage[nottoc,notlof,notlot]{tocbibind}
\end{lstlisting}
\end{singlespacing}
%
no \texttt{preamble} efetua esta tarefa.

Note que no \LaTeX, o texto Ã© justificado por padrÃ£o, mas nÃ£o existe comando para justificar um trecho dentro do outro alinhamento. 
Uma saÃ­da Ã© usar o \texttt{minipage}, mas \texttt{minipage} nÃ£o permite quebrar entre pÃ¡ginas.
Para resolver este problema, existe o pacote \texttt{ragged2e}\index{ragged2e} que providencia o ambiente \texttt{justify}\index{justify} (e comando \verb+\justify+\index{justify@\verb+\justify+}) que pode ser usado como outros comandos de alinhamento de texto no parÃ¡grafo.

\section{Estilo europeu}
Em Alguns paÃ­ses da Europa, um parÃ¡grafo Ã© separado pela outra com o espaÃ§amento maior entre linhas em vez de indentaÃ§Ã£o. 
Remover a indentaÃ§Ã£o Ã© feito, ajustando o valor de \verb+\parindent+\index{parindent@\verb+\parindent+} para zero, mas ajustar o espaÃ§amento antes do parÃ¡grafo por \verb+\parskip+\index{parskip@\verb+\parskip+} e acertar alguns detalhes requer conhecimento extra.
Para facilitar, existe o pacote \texttt{parskip}\index{parskip} que, ao ser usado, ajustam de forma apropriada.
Se nÃ£o quer usar o pacote, coloque
\begin{singlespacing}
\begin{lstlisting}
\setlength{\parindent}{0pt}
\setlength{\parskip}{1ex plus 0.5ex minus 0.2ex}
\end{lstlisting}
\end{singlespacing}
%
no \texttt{preamble}, mas isto nÃ£o ajustarÃ¡ tudo que o pacote faz.

Para produzir o estilo literÃ¡rio francÃªs\index{estilo literÃ¡rio!francÃªs} na qual a primeira letra do parÃ¡grafo ocupa mais de uma linha, tem o pacote \texttt{lettrine}\index{lettrine}.
O uso comum nos livros de literatura Ã© usar o \texttt{lettrine} no primeiro parÃ¡grafo do capÃ­tulo e manter o restante como normal.
Veja o Exemplo~\ref{ex15:lettrine} na qual Ã© assumido que tem o \verb+\usepackage{lettrine}+ no \texttt{preamble} do documento.
%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%\setcounter{chapter}{0} %\setcounter{section}{0}
%\let\addcontentsline\emptyaddcontentsline
%\begin{singlespacing}
%\begin{lstlisting}[pos=b,caption={ex11-03.tex},label=ex:11-03]
\begin{ltxlisting}[caption={ex15-lettrine.tex},label=ex15:lettrine]
\chapter{Um CapÃ­tulo}
\lettrine{E}{xiste} um pacote chamado \texttt{letrine} que oferece o estilo literÃ¡rio francÃªs (estilo bÃ­blico) na qual a primeira letra do parÃ¡grafo ocupa varias linhas. 
Alguns livros literÃ¡rios usa este estilo somente para o parÃ¡grafo do primeiro capÃ­tulo, mantendo outros parÃ¡grafos como sendo normal. O primeiro parÃ¢metro Ã© a letra (primeira letra) que ocuparÃ¡ vÃ¡rias linhas, e o segundo parÃ¢metro Ã© a continuaÃ§Ã£o dele atÃ© finalizar a palavra, que serÃ¡ escrito em maiÃºsculo. O comando ainda aceita parÃ¢metros opcionais para ajustar quantas linhas vai ocupar, etc.
\end{ltxlisting}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%\let\addcontentsline\oriaddcontentsline

%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%\setcounter{chapter}{0} 
%%\setcounter{section}{0}
%%\let\addcontentsline\emptyaddcontensline
%%\newcommand{\emptyaddcontentsline}[3]{}
%% \let\oriaddcontentsline\addcontentsline
%\let\addcontentsline\emptyaddcontentsline
%\begin{singlespacing}
%%\fbox{
%\begin{framed}\noindent
%\begin{minipage}{\linewidth}
%\chapter{Um CapÃ­tulo}
%\lettrine{E}{xiste} um pacote chamado \texttt{letrine} que oferece o estilo literÃ¡rio francÃªs (estilo bÃ­blico) na qual a primeira letra do parÃ¡grafo ocupa varias linhas. 
%Alguns livros literÃ¡rios usam este estilo somente para o parÃ¡grafo do primeiro capÃ­tulo, mantendo outros parÃ¡grafos como sendo normal. O primeiro parÃ¢metro Ã© a letra (primeira letra) que ocuparÃ¡ vÃ¡rias linhas, e o segundo parÃ¢metro Ã© a continuaÃ§Ã£o dele atÃ© finalizar a palavra, que serÃ¡ escrito em maiÃºsculo.
%O comando ainda aceita parÃ¢metros opcionais para ajustar quantas linhas vai ocupar, etc.
%\end{minipage}
%\end{framed}
%%}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%\let\addcontentsline\oriaddcontentsline

Note que, em muitos casos do usos de \texttt{lettrine}, costuma usar a fonte enfeitada (fonte para iniciais) na primeira letra como no exemplo~\ref{lettrine:b} que supÃµe o uso do pacote \texttt{yfonts} com codificaÃ§Ã£o \texttt{T1}, colocando o cÃ³digo

\begin{singlespacing}
\begin{lstlisting}
\usepackage[T1]{fontenc}
\usepackage{yfonts}
\end{lstlisting}
\end{singlespacing}

no \texttt{preamble}.

\begin{ltxlisting}[caption={ex15-lettrine-b.tex},label=ex15:lettrine:b]
\chapter{Um CapÃ­tulo}
\lettrine[lines=3]{\initfamily\small E}{xiste} um pacote chamado \texttt{letrine} que oferece o estilo literÃ¡rio francÃªs (estilo bÃ­blico) na qual a primeira letra do parÃ¡grafo ocupa varias linhas. 
Alguns livros literÃ¡rios usa este estilo somente para o parÃ¡grafo do primeiro capÃ­tulo, mantendo outros parÃ¡grafos como sendo normal. O primeiro parÃ¢metro Ã© a letra (primeira letra) que ocuparÃ¡ vÃ¡rias linhas, e o segundo parÃ¢metro Ã© a continuaÃ§Ã£o dele atÃ© finalizar a palavra, que serÃ¡ escrito em maiÃºsculo. O comando ainda aceita parÃ¢metros opcionais para ajustar quantas linhas vai ocupar, etc.
\end{ltxlisting}

Para mais fontes para iniciais, veja o \url{https://tug.org/FontCatalogue/}.

\section[CabeÃ§alho e tÃ­tulos]{Ajustando o cabeÃ§alho, tÃ­tulos de capÃ­tulos e de figuras}

Ajustar o cabeÃ§alho diretamente nÃ£o Ã© simples.
Assim, costumamos usar o pacote \texttt{fancyhdr}\index{fancyhdr} que permite personalizar o cabeÃ§alho das pÃ¡ginas.
Veja o Exemplo~\ref{ex15:fancyhdr} usado para produzir estilo de cabeÃ§alho deste documento.

\begin{singlespacing}
\begin{lstlisting}[caption={ex15-fancyhdr.tex},label=ex15:fancyhdr]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}

\usepackage{calc} % para calculo de medidas
\usepackage{fancyhdr} % personalizar o cabeÃ§alho

% \fancyheadoffset[LE,RO]{\marginparsep+\marginparwidth}

% redefine a saida do capitulo e da secao
% \pagestyle{fancy} redefine eles,
%  entao deve colocar no final do ps@fancy 
% para ter efeito. Usando \addto do babel
\makeatletter
  \addto\ps@fancy{%
    \renewcommand{\chaptermark}[1]{%
      \markboth{\if@mainmatter\thechapter. \fi #1}%
        {\if@mainmatter\thechapter. \fi #1}}
    \renewcommand{\sectionmark}[1]{%
      \markright{\if@mainmatter\thesection. \fi #1}}
  }
\makeatother

% redefinindo o estilo da pagina "fancy"
\fancyhf{} % limpa o cabecalho
% redefine o cabcalho. \nouppercase foi usado para eliminar conversao para maiusculo do sumario/bibliografia
\fancyhead[LE,RO]{\bfseries\thepage}
\fancyhead[LO]{\bfseries\nouppercase\rightmark}
\fancyhead[RE]{\bfseries\nouppercase\leftmark}

% redefine o "plain" (usado na primeira pagina do capitulo).
\fancypagestyle{plain}{%
   \fancyhead{} % get rid of headers
   \fancyhead[LE,RO]{\bfseries\thepage} % colocar enumeracao
   \renewcommand{\headrulewidth}{0.5pt} % com linha horizontal
}

% linha horizontal entre cabecalho e corpo do documento
\renewcommand{\headrulewidth}{0.5pt}

% sem linha horizontal entre corpo de texo e rodape
\renewcommand{\footrulewidth}{0pt}

%%%%%%%% fim da redefinicao do cabecalho %%%%%%%%%%%%

% iniciar com estilo empty
\pagestyle{empty}
\begin{document}
...
\pagestyle{fancy} % inicia o cabeÃ§alho personalizado
...
\end{document}
\end{lstlisting}
\end{singlespacing}

Note que o comando \verb+\fancypagestyle+\index{fancypagestyle@\verb+\fancypagestyle+} permite definir/redefinir estilo de pÃ¡ginas, exceto o \texttt{fancy}\index{fancy} que Ã© configurado diretamente, o que requer cuidados. 
Se usar erroneamente o \verb+\fancypagestyle{fancy}+, o \LaTeX{} pode parar no meio da compilaÃ§Ã£o quando encontrar o \verb+\pagestyle{fancy}+.


Para configurar o formato de tÃ­tulo do capÃ­tulo e seÃ§Ãµes, usamos o pacote \texttt{titlesec}\index{titlesec}.
Note que, para ajuste somente de capÃ­tulos, existe o pacote \texttt{fncychap}\index{fncychap} que permite escolher um modelo entre alguns prontos atravÃ©s da opÃ§Ã£o do pacote (\texttt{Sonny}\index{fncychap!Sonny}, \texttt{Lenny}\index{fncychap!Lenny}, \texttt{Glenn}\index{fncychap!Glenn}, \texttt{Conny}\index{fncychap!Conny}, \texttt{Rejne}\index{fncychap!Rejne}, \texttt{Bjarne}\index{fncychap!Bjarne}, \texttt{Bjornstrup}\index{fncychap!Bjornstrup}) e ajustar as fontes com comandos tais como \verb+\ChNumVar+\index{fncychap!ChNumVar@\verb+\ChNumVar+} e \verb+\ChTitleVar+\index{fncychap!ChTitleVar@\verb+\ChTitleVar+}. Mas o pacote \texttt{fncychap} nÃ£o consegue refazer o estilo como no  \texttt{titlesec}.

Assim, para configuraÃ§Ã£o mais refinada de tÃ­tulos de capÃ­tulos e seÃ§Ãµes, costumam usar o \texttt{titlesec}. 
Este pacote, alÃ©m de configuraÃ§Ã£o refinada de tÃ­tulos, tambÃ©m pode ser usado para configurar o cabeÃ§alho.
Note que, para configuraÃ§Ã£o mais refinado de cabeÃ§alhos, costuma usar o \texttt{fancyhdr}.
Veja o Exemplo~\ref{ex15:titlesec}.

%\begin{singlespacing}
%\begin{lstlisting}[caption={ex15-titlesec.tex},label=ex15:titlesec]
\begin{ltxlisting}[caption={ex15-titlesec.tex},label=ex15:titlesec]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}

\usepackage{calc} % para cÃ¡lculo de medidas

\usepackage[pagestyles]{titlesec} % para formatar tÃ­tulo do capÃ­tulo e seÃ§Ã£o

% formatando o titulo do capÃ­tulo
\titleformat{\chapter}[display] % modo display
{\bfseries\Large} % fonte usado no tÃ­tulo do capÃ­tulo
{\filleft\MakeUppercase{\chaptertitlename} \Huge\thechapter} % Como colocar o nome do capÃ­tulo
{4ex} % espaco entre nome do capÃ­tulo e titulo do capÃ­tulo
{\titlerule\vspace{2ex}\filright} % o que colocar antes do titulo do capitulo
[\vspace{2ex}\titlerule] % depois do titulo do capÃ­tulo

% \titlespacing*{\chapter}{0pt}{20pt}{16pt} % espacamento do titulo de capitulos
      
% Exemplo ajustado da documentaÃ§Ã£o
% formatando o tÃ­tulo da seÃ§Ã£o
\newcommand{\sectiontitlename}{SeÃ§Ã£o}

\titleformat{\section}[frame]% colocar moldura
{\normalfont}% fonte normal
{\filright\footnotesize
\enspace \MakeUppercase{\sectiontitlename}\enspace \thesection\enspace}% Como colocar o nome/enumeracao da seÃ§Ã£o
{8pt}% espaÃ§o antes do titulo da seÃ§Ã£o
{\Large\bfseries\filcenter}% antes do titulo da seÃ§Ã£o (ajustando fontes)

% \titlespacing{\section}{0pt}{*2}{*2}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% definindo o estilo do cabeÃ§alho usando titlesec
% para configuraÃ§Ã£o mais sofisticada, use fancyhdr
    
\newpagestyle{main}{ % Novo estilo de pagina
  \headrule
  \sethead[\thechapter. \scshape\chaptertitle][][]{}{}{\thechapter. \slshape\chaptertitle}
  \setfoot[][\thepage][]{}{\thepage}{}
}
    
\pagestyle{empty}
\begin{document}
\pagestyle{main} % inicia o cabeÃ§alho personalizado
\chapter{Um CapÃ­tulo}
Um capÃ­tulo novo.
\section{Usando \texttt{titlesec}}
\ldots       
\end{document}
\end{ltxlisting}
%\end{lstlisting}
%\end{singlespacing}

%{ % start group for titlesec
%\titleformat{\chapter}[display]{\bfseries\Large}
%{\filleft\MakeUppercase{\chaptertitlename} \Huge\thechapter}{4ex}{\titlerule\vspace{2ex}\filright}[\vspace{2ex}\titlerule]
%
%\newcommand{\sectiontitlename}{SeÃ§Ã£o}
%\titleformat{\section}[frame]{\normalfont}{\filright\footnotesize\enspace \MakeUppercase{\sectiontitlename}\enspace \thesection\enspace}{8pt}{\Large\bfseries\filcenter}
%
%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%\setcounter{chapter}{0}\setcounter{section}{0}
%\let\addcontentsline\emptyaddcontentsline
%\fbox{\begin{minipage}{\linewidth}
%\chapter{Um CapÃ­tulo}
%Um capÃ­tulo novo.
%\section{Usando \texttt{titlesec}}
%\ldots       
%\end{minipage}}
%} % end group for titlesec
%
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%\let\addcontentsline\oriaddcontentsline

Note que a primeira pÃ¡gina do capÃ­tulo serÃ¡ sempre do estilo \texttt{plain}. 
EntÃ£o, se quer que a primeira pÃ¡gina do capÃ­tulo seja diferente do \texttt{plain} padrÃ£o, deverÃ¡ redefinir ele.

Para configuraÃ§Ãµes mais complicadas de tÃ­tulos de capÃ­tulos e seÃ§Ãµes, use a opÃ§Ã£o \texttt{explicit}\index{titlesec!explicit} na qual os textos de tÃ­tulos sÃ³ serÃ£o colocados se for referenciado diretamente. 

Para usar o \texttt{titlesec} e \texttt{fancyhdr} ao mesmo tempo, deverÃ¡ carregar o \texttt{titlesec} com opÃ§Ã£o \texttt{pagestyles} e antes do \texttt{fancyhdr}.

%precisarÃ¡ ajustar o carretamento, pois eles definem os comandos \verb+headrule+ e \verb+\footrule+, causando erro no carregamento do segundo pacote.
%Se quer definir tÃ­tulos de capÃ­tulos e seÃ§Ãµes com \texttt{titlesec} e cabeÃ§alho da pÃ¡gina com \texttt{fancyhdr}, carregue da seguinte forma.
%\begin{singlespacing}
%\begin{lstlisting}
%\usepackage[pagestyles]{titlesec}
%\let\headrule\undefined % remover o comando \headrule
%\let\footrule\undefined % remover o comando \footrule
%\usepackage{fancyhdr}
%\end{lstlisting}
%\end{singlespacing}
%NÃ£o troque as ordens destes dois pacotes, pois os comandos \verb+\headrule+ e \verb+\footrule+ destes pacotes sÃ£o incompatÃ­veis.

Para configurar a saÃ­da de tÃ­tulos dos elementos flutuantes como figuras e tabelas que sÃ£o produzidos pelo comando \verb+\caption+\index{caption@\verb+\caption+}, costuma usar o pacote \texttt{caption}\index{caption} que implementa o comando \verb+\captionsetup+\index{captionsetup@\verb+\captionsetup+} para configurar o formato de tÃ­tulos das figuras e tabelas. Este pacote tambÃ©m implementa a versÃ£o ``*'' do \verb+\caption+\index{caption*@\verb+\caption*+} que nÃ£o serÃ¡ contabilizado (sÃ³ coloca o tÃ­tulo).

No Exemplo~\ref{ex15:caption}, estÃ¡ configurado o nome da figura no ambiente \texttt{figure} como sendo \texttt{Imagem}. A fonte do nome serÃ¡ em negrito, tÃ­tulo em itÃ¡lico, formato do nome Ã© modo simples e nome com tÃ­tulo serÃ¡ separado pelo ponto.

%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{chapter}{0}
\begin{singlespacing}
%\begin{lstlisting}[caption={ex11-03.tex, parte c},label=ex:11-03:c]
\begin{lstlisting}[caption={ex15-caption.tex},label=ex15:caption]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}

\usepackage{caption} % para formatar titulo do float (figura e tabela)

\captionsetup[figure]{name=Imagem,labelfont={bf}, textfont=it, labelformat=simple, labelsep=period}    
\pagestyle{empty}
\begin{document}

\begin{figure}[hbp!]
\center
Figura aqui.
\caption{Novo tÃ­tulo}\label{fig:titulo:novo}
\end{figure}

\clearcaptionsetup{figure}

\begin{figure}[hbp!]
\center
Figura aqui.
\caption{TÃ­tulo normal}\label{fig:titulo:normal}
\end{figure}
\end{document}
\end{lstlisting}
\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}

%\fbox{\begin{minipage}{\linewidth}
\begin{ltxlistingout}
\begin{center}
Figura aqui.

{\textbf{Imagem 1.} \textit{Novo tÃ­tulo}}
\end{center}
\begin{center}
Figura aqui.

{Figura 2: TÃ­tulo normal}
\end{center}
\end{ltxlistingout}
%\end{minipage}}

%\begin{figure}
%\caption{teste}
%\end{figure}


Para limpar as configuraÃ§Ãµes, usa o comando \verb+\clearcaptionsetup{figure}+\index{clearcaptionsetup@\verb+\clearcaptionsetup+}, onde \texttt{figure} pode ser \texttt{table}, se for da tabela.

Para criar configuraÃ§Ãµes complexas que Ã© difÃ­cil de ser ajustado com comandos acima, poderÃ¡ usar o comando \verb+\DeclareCaptionFormat+\index{DeclareCaptionFormat@\verb+\DeclareCaptionFormat+}.

Por exemplo, se quer que o nome da figura fique em maiÃºsculo negrito, separado por dois pontos e titulo em itÃ¡lico, basta criar o estilo novo com 
\begin{singlespacing}
\begin{lstlisting}
\DeclareCaptionFormat{meuestilo}{{\MakeUppercase\bfseries #1}#2\textit{#3}\par}
\end{lstlisting}
\end{singlespacing}
e usar como 
\verb+\captionsetup[figure]{format=meuestilo, labelsep=colon}+.

%geometry, OK
%setspace, OK
%hyphenat, OK
%microtype, OK.
%textcase, OK
%tocbibind, OK
%fancyhdr, OK
%fncychap, OK
%%Options: Sonny, Lenny, Glenn, Conny, Rejne, Bjarne, Bjornstrup
%% \usepackage[Sonny]{fncychap}
%titlesec, OK
%caption, OK

%\begin{verbatim}
%\usepackage{caption}
%\captionsetup[figure]{name=New Table Name,labelfont=it,textfont={bf,it},
%labelformat=simple, labelsep=colon}
%
%Label Format	Result
%labelformat = empty	No label is shown - i.e. no number or letter
%labelformat = simple	Shows number or letter in caption
%labelformat = parens	Shows number or letter in caption in parentheses - i.e. (1), (A)
%
%The labelsep option can be set to:
%Label Separator
%labelsep = none
%labelsep = colon
%labelsep = period
%labelsep = space
%labelsep = quad
%labelsep = newline
%
%\clearcaptionsetup{figure}
%\DeclareCaptionFormat{plain}{#1#2#3\par}
%
%\DeclareCaptionFormat{plain}{{\MakeUppercase #1}#2#3\par}
%
%\end{verbatim}

\section{Ajustando o sumÃ¡rio}

Para ajustar o estilo de sumÃ¡rio e similares, costuma usar o pacote \texttt{tocloft}\index{tocloft}. Este pacote tambÃ©m permite criar lista de objetos similares a de sumÃ¡rios (por exemplo, lista de algorÃ­timos).
Uma das coisas que ocorre com certa frequÃªncia Ã© ter livro sem as seÃ§Ãµes e com a ausÃªncia de linhas pontilhadas no capÃ­tulo do sumÃ¡rio, dificultar a localizaÃ§Ã£o da pÃ¡gina correspondente. Neste caso, Ã© sÃ³ acrescentar a linha pontilhada no capÃ­tulo, como no Exdemplo~\ref{ex15:tocloft}.
\begin{singlespacing}
\begin{lstlisting}[caption={ex15-tocloft.tex},label=ex15:tocloft]
\documentclass[a4paper,12pt,oneside]{book}
\usepackage[brazilian]{babel}
\usepackage{tocloft}
\setcounter{tocdepth}{1} % atÃ© nivel 1 (seÃ§Ã£o)
% Fontes do sumÃ¡rio
%\renewcommand{\cfttoctitlefont}{\hfill\Large}
%\renewcommand{\cftaftertoctitle}{\hfill}
% linhas pontilhadas para capÃ­tulo no sumÃ¡rio.
\renewcommand{\cftchapdotsep}{\cftdotsep}
\begin{document}
\tableofcontents % sumÃ¡rio
\chapter{Primeiro}
\section{SeÃ§Ã£o}
\chapter{Outro capÃ­tulo}
\section{Outra seÃ§Ã£o}
\end{document}
\end{lstlisting}
\end{singlespacing}
 na qual o sumÃ¡rio ficarÃ¡ algo moco segue
 
%\begin{singlespacing}
\begin{ltxlistingout}
{\noindent\huge\bfseries SumÃ¡rio}
\vspace{12ex}

{\bfseries\noindent {1}\hspace{1em}Primeiro\dotfill{2}}

{1.1}\hspace{1em}SeÃ§Ã£o\dotfill{2}

\medskip

{\bfseries\noindent {2}\hspace{1em}Outro CapÃ­tulo\dotfill{3}}

{2.1}\hspace{1em}Outra seÃ§Ã£o\dotfill{3}
\end{ltxlistingout}
%\end{singlespacingout}

\section{Links}

Quando usa o pacote \texttt{hyperref}\index{hyperref}, sumÃ¡rio, Ã­ndice remissivo, as referÃªncias cruzadas e citaÃ§Ãµes ganham link automaticamente. 
AlÃ©m disso, poderÃ¡ configurar informaÃ§Ãµes gerais do documento PDF gerado, tais como titulo, autor, palavras-chave, etc relacionado com o documento PDF.

A configuraÃ§Ã£o do PDF pode ser feito por algo como segue.
\begin{singlespacing}
\begin{lstlisting}
...
\usepackage{hyperref}

% configurando o PDF
\hypersetup{
  bookmarks=true, % show bookmarks bar?
  unicode=true, % non-Latin characters in Acrobatâ€™s bookmarks
  breaklinks=true, %break long url across lines
%  pdftoolbar=true, % show Acrobatâ€™s toolbar?
%  pdfmenubar=true, % show Acrobatâ€™s menu?
%  pdffitwindow=false, % window fit to page when opened
%  pdfstartview={FitH}, % fits the width of the page to the window
  pdftitle={Pacote hyperref}, % title
  pdfauthor={Sadao Massago}, % author
  pdfsubject={Uso do pacote hyperref}, % subject of the document
%  pdfcreator={Creator}, % creator of the document
%  pdfproducer={Producer}, % producer of the document
%  pdfkeywords={keyword1, key2, key3}, % list of keywords
%  pdfnewwindow=true, % links in new PDF window
%  colorlinks=false, % false: boxed links; true: colored links
%  linkcolor=red, % color of internal links (change box color with linkbordercolor)
%  citecolor=green, % color of links to bibliography
%  filecolor=magenta, % color of file links
%  urlcolor=cyan % color of external links
}
...
\end{lstlisting}
\end{singlespacing}

Note que, apenas carregar o \texttt{hyperref} jÃ¡ Ã© suficiente para maioria dos casos, mas em geral, se estiver usando pacotes que ajustam os comandos de referÃªncias cruzadas ou citaÃ§Ãµes, o pacote \texttt{hyperref} deve vir depois deles para nÃ£o perder os links.

AlÃ©m do link automÃ¡tico, poderÃ¡ inserir links para sites, etc, usando o comando \verb+\url+\index{url@\verb+\url+}.
\begin{singlespacing}
\begin{lstlisting}
Veja  \url{https://en.wikibooks.org/wiki/LaTeX/Hyperlinks} por exemplo.
\end{lstlisting}
\end{singlespacing}
Atualmente, o \texttt{url} Ã© importante para ser colocado nas referÃªncias bibliogrÃ¡ficas.
O estilo moderno para \BibTeX{} costuma usar o campo \texttt{url}\index{BibTeX!url} na qual o seu valor pode ser ser colocado no arquivo de \BibTeX{}, como em
\begin{singlespacing}
\begin{lstlisting}
...
url = {https://en.wikibooks.org/wiki/LaTeX/},
urldate = {2018-06-11},
...
\end{lstlisting}
\end{singlespacing}
onde \texttt{urldate}\index{BibTeX!urldate} Ã© a data da Ãºltima consulta.

Para estilos um pouco antigo que nÃ£o tem o campo \texttt{urldate}, poderÃ¡ colocar a data de Ãºltimo acesso no campo \texttt{note}\index{BibTeX!note} como em
\begin{singlespacing}
\begin{lstlisting}
...
url = {https://en.wikibooks.org/wiki/LaTeX/},
note = {(Visited on 2018-06-11)},
...
\end{lstlisting}
\end{singlespacing}

No caso de estar usando o estilo antigo na qual ignora o campo \texttt{url}, poderÃ¡ colocar no campo \texttt{note}, usando o comando \verb+\url+.
%A data de acesso em geral serÃ¡ colocado junto a \texttt{note}, ou junto ao ano.
\begin{singlespacing}
\begin{lstlisting}
...
note = "URL: \url{https://en.wikibooks.org/wiki/LaTeX/} (Visited on 2018-06-11)",
...
\end{lstlisting}
\end{singlespacing}
mas cuidado para nÃ£o colocar em \texttt{note} e \texttt{url} ao mesmo tempo, para evitar duplicaÃ§Ãµes nos estilos que suportam \texttt{url}.

Para deseja um estilo clÃ¡ssico com suporte a \texttt{url}, o pacote \texttt{urlbst}\index{urlbst} dispÃµe de \texttt{alphaurl}\index{BibTeX!alphaurl}, \texttt{plainurl}\index{BibTeX!alphaurl}, \texttt{abbrvurl}\index{BibTeX!abbrvurl} e \texttt{unsrturl}\index{BibTeX!unsrturl} correspondentes a \texttt{alpha}, \texttt{plain}, \texttt{abbrv} e \texttt{unsrt} respectivamente. Note que, para estes estilos, a data de Ãºltimo acesso Ã© no campo \texttt{lastchecked}\index{BibTeX!lastchecked} e nÃ£o no \texttt{urldate}. Para que funcione tanto nestes estilos quanto no estilo mais moderno, poderÃ¡ colocar ambos os campos.

Obviamente, o arquivo \texttt{tex} correspondente ao estilo bibliogrÃ¡fico com URL deve usar o pacote \texttt{hyperref} ou o \texttt{url}.

Quando quer acrescentar o link com texto onde clicar Ã© diferente do endereÃ§o do link, poderÃ¡ usar o \verb+\href+ como em

\begin{singlespacing}
\begin{lstlisting}
\href{https://en.wikibooks.org/wiki/LaTeX/}{wikibooks, \LaTeX{}}
\end{lstlisting}
\end{singlespacing}

TambÃ©m poderÃ¡ criar os links manualmente, dentro do documento.
Para isso, define a chegada do link com o comando \verb+\hypertarget+\index{hypertarget@\verb+\hypertarget+} e cria link para ele, com o comando \verb+\hyperlink+\index{hyperlink@\verb+\hyperlink+}.
Veja o \url{https://en.wikibooks.org/wiki/LaTeX/Hyperlinks} para detalhes.

Quando usa as fÃ³rmulas nos tÃ­tulos, aparece ``lixo'' no indicador (\texttt{bookmarks}) do PDF.
Isto porque, no indicador, sÃ³ o texto Ã© aceito. 
Para evitar isso, existe o comando \verb+\texorpdfstring+\index{textorpdfstring@\verb+\textorpdfstring+} que coloca conteÃºdo de \LaTeX{} ou texto, dependendo de estar no documento ou no \texttt{bookmarks}.

Por exemplo,
\begin{singlespacing}
\begin{lstlisting}
\section{\texorpdfstring{$E=mc^2$}{E = mc ** 2}}
\end{lstlisting}
\end{singlespacing}

UsarÃ¡ $E=mc^2$ para o documento, mas \texttt{E = mc ** 2} para o indicador (\texttt{bookmarks}).

Alguns comandos pode nÃ£o funcionar no \texttt{bookmarks} do PDF, como o caso de \verb+\MakeUppercase+.
O pacote \texttt{hyperref} dispÃµe de comando \verb+\pdfstringdefDisableCommands+\index{pdfstringdefDisableCommands@\verb+\pdfstringdefDisableCommands+}
para redefinir estes comandos dentro do \texttt{bookmarks}.
Por exemplo, para desativar o \verb+\MakeUppercase+ ou redefinir \verb+\\+ dentro do \texttt{bookmarks} do PDF, coloque
\begin{singlespacing}
\begin{lstlisting}
\pdfstringdefDisableCommands{%
  \let\MakeUppercase\relax%desativando
  \def\\{ }% em vez da nova linha, serÃ¡ espaÃ§o
  \def\and{ e }
}
\end{lstlisting}
\end{singlespacing}
no \texttt{preamble} do documento.

Quando adiciona um item manualmente no sumÃ¡rio atravÃ©s do comando \verb+\addcontentsline+\index{addcontentsline@\verb+\addcontentsline+}, o link do sumÃ¡rio pode nÃ£o posicionar corretamente na pÃ¡gina correta.
Para o funcionamento correto (posicionamento correto) do link no sumÃ¡rio requer que o \verb+\addcontentsline+ deve ser chamado logo em seguida da mudanÃ§a de capÃ­tulo ou seÃ§Ã£o.
Caso nÃ£o esteja, Ã© sÃ³ colocar \verb+\phantomsection+\index{phantomsection@\verb+\phantomsection+} oferecido pelo pacote \texttt{hyperref} antes do \verb+\addcontentsline+. 

Note que ``\verb+"|+'' na entrada do Ã­ndice remissivo para inserir o sÃ­mbolo ``\verb+|+'' nÃ£o funciona em conjunto com o pacote \texttt{hyperref}.
A forma de contornar isso Ã© definir um comando para ``\verb+|+'' e usar na entrada do Ã­ndice remissivo.

%
%hyperref,
%
%\verb+\section{\texorpdfstring{$E=mc^2$}{E = mc ** 2}}+ para bookmark do PDF (hyperref)? Uso do comando \verb+\url{}+ no arquivo de BibTeX.

\section{Controle das listas e listas \texttt{inline}}

O pacote \texttt{enumerate} permite controlar as enumeraÃ§Ãµes das listas.
Mas as vezes queremos efetuar controle mais refinado ou controlar o rÃ³tulo de listas nÃ£o enumeradas tambÃ©m.
O pacote \texttt{enumitem}\index{enumitem} permite formatar a lista de forma similar ao pacote \texttt{enumerate}, mas com recursos adicionais.

Existe tambÃ©m os casos que queremos as listas que coloquem vÃ¡rios itens na mesma linha, denominado de listas \texttt{inline}\index{lista!inline}. 
Existem vÃ¡rios pacotes que permitem criar listas \texttt{inline}, mas esta tarefa tambÃ©m pode ser feita pelo pacote \texttt{enumitem}.

A opÃ§Ã£o \texttt{shortlabels}\index{enumitem!shortlabels} no pacote \texttt{enumitem} ativa o modo de compatibilidade com o pacote \texttt{enumerate}, permitindo formatar enumeraÃ§Ã£o da lista \texttt{enumerate} via modelos.
A opÃ§Ã£o \texttt{inline}\index{enumitem!inline} criarÃ¡ a versÃ£o ``*'' dos ambientes de lista que sÃ£o listas \texttt{inline} (nÃ£o muda de linha entre os itens).
Para alinhar os itens das listas versÃ£o ``*'', poderÃ¡ usar o pacote \texttt{tabto}\index{tabto}.

Veja o Exemplo~\ref{ex:d:enumitem} que usa os pacotes \texttt{enumitem} e \texttt{tabto}.

\begin{ltxlisting}[caption={ex-d-enumitem.tex},label=ex:d:enumitem]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc} % codificaÃ§Ã£o da fonte em 8-bits
\usepackage[utf8]{inputenc} % acentuaÃ§Ã£o direta
\usepackage[brazil]{babel} % em portuguÃªs brasileiro
\usepackage{amssymb} %para comando \square
\usepackage[inline,shortlabels]{enumitem}
\usepackage{tabto}
\usepackage{xcolor} % para mudar de cor
\begin{document}
% Em vez de indentar, cria espaÃ§o extra entre parÃ¡grafos
\parindent=0em % indentaÃ§Ã£o nula
\parskip=\baselineskip % um linha entre parÃ¡grafos

% No parÃ¢metro opcional, aceita a formataÃ§Ã£o de enumeraÃ§Ã£o como do pacote enumerate (ativado pela opÃ§Ã£o shortlabels)
% TambÃ©m poderÃ¡ configurar as fontes
% As opÃ§Ãµes sÃ£o separados pela vÃ­rgula
\begin{enumerate}[1),font=\color{blue}]
\item Item 1
\item Item 2
\item Item 3
\end{enumerate}

% Nas listas como o enumerate e itemize, poderÃ¡ configurar o \label que rotula os itens. Neste exemplo, serÃ¡ colocado um circulo na enumeraÃ§Ã£o.
% O "*" no label serÃ¡ substituido pelo enumi, enumii, etc dependendo do seu nÃ­vel.
\begin{enumerate}[label={\large\protect\textcircled{\normalsize\arabic*}}]
\item Item 1
\item Item 2
\item Item 3
\end{enumerate}

%A versÃ£o ``*'' produz lista inline que nÃ£o efetua mudanÃ§a de linhas quando muda o item.
\begin{enumerate*}[a)]
\item Item 1
\item Item 2
\item Item 3
\item Item 4
\item Item 5
\item Item 6
\item Item 7
\item Item 8
\item Item 9
\item Item 10
\end{enumerate*}

% Para alinhas os Ã­tens, use em conjunto com tabto.
% Quantas "colunas" vai ter na tabulaÃ§Ã£o (que serÃ¡ usada na lista versÃ£o "*")
\NumTabs{5}
% Na lista versÃ£o *, poderÃ¡ indicar o que colocar entre itens consecutivos com itemjoin
% No caso, o \tab serÃ¡ usado para alinhar itens em colunas.
\begin{enumerate*}[1.,itemjoin={\tab}]
\item Item 1
\item Item 2
\item Item 3
\item Item 4
\item Item 5
\item Item 6
\item Item 7
\item Item 8
\item Item 9
\item Item 10
\end{enumerate*}

%\NumTabs{4} % poderÃ¡ mudar o nÃºmero de colunas, se desejar
% Ãtens longas podem ocupar dois ou mais "colunas" automaticamente
\begin{itemize*}[label=$\square$, itemjoin={\tab}]
\item Item 1
\item Item 2
\item Item 3
\item Item 4
\item Item 5
\item Item 6 e longa, com espaÃ§o maior
\item Item 7
\item Item 8
\end{itemize*}
\end{document}
\end{ltxlisting}


\section{Trocando as fontes -- parte 2}

\LaTeX{} dispÃµe de diversas fontes gratuitas para diagramar o documento.
Em geral, para versÃ£o impressa, costuma usar o \texttt{Latin Modern}\index{Latin Modern} que Ã© uma extensÃ£o do \texttt{Computer Modern}\index{Computer Modern} para derivados de latim que tem letras acentuadas. 
Outra opÃ§Ã£o Ã© \texttt{MLModern}\index{MLModern} que Ã© fonte compatÃ­vel com \texttt{Computer Modern} e \texttt{Latin Modern}, mas um pouco mais grossa, adequado para livros eletrÃ´nicos.
%Note que o \texttt{Computer Modern} tradicional e \texttt{Latin Modern} sÃ£o adequados para textos impressos no papel, e o \texttt{MLModern} Ã© adequado para texto a ser lido na tela.
Para usar o \texttt{MLModern}, carregue o pacote \texttt{mlmodern} e para usar a fonte \texttt{Latin Modern}, carregue o pacote \texttt{lmodern} no \texttt{preamble} do documento, como em

\begin{singlespacing}
\begin{lstlisting}
\usepackage{mlmodern} % MLModern, com espessura Book.
% \usepackage{lmodern} % Latin Modern, com espessura igual a Computer Modern tradicional.
\end{lstlisting}
\end{singlespacing}
%

AlÃ©m de variantes do tradicional \texttt{Computer Modern}, diversas combinaÃ§Ãµes de fontes podem ser escolhidas usando pacotes correspondentes. Aqui, veremos algumas entre muitas outras.

%ML Modern\index{} (CompatÃ­vel com computer modern, na espessura Book), mais grossa que tradicional, ideal para livros eletrÃ´nicos pela legibilidade na tela.
%\begin{singlespacing}
%\begin{lstlisting}
%\usepackage{mlmodern} % ML Modern (compatÃ­vel com computer modern, mas com espessura Book)
%\end{lstlisting}
%\end{singlespacing}


%Concrete (texto e fÃ³rmula)
%\begin{singlespacing}
%\begin{lstlisting}
%\usepackage{lmodern} % para complementar
%\usepackage{ccfonts} % Concrete (serifa grossa?)
%\end{lstlisting}
%\end{singlespacing}

Fonte \texttt{Times} pode ser escolhido com
\begin{singlespacing}
\begin{lstlisting}
\usepackage{newtxtext,newtxmath}
\end{lstlisting}
\end{singlespacing}

A fonte \texttt{Palatino} com
\begin{singlespacing}
\begin{lstlisting}
\usepackage{newpxtext,newpxmath}
\end{lstlisting}
\end{singlespacing}

A fonte matemÃ¡tico em \texttt{sans serif}, compatÃ­vel com o computer modern, ideal para \texttt{poster} e \texttt{slides}.
\begin{singlespacing}
\begin{lstlisting}
\usepackage{lmodern} % computer modern com extensÃ£o para derivados ee latin
\usepackage{sansmathfonts} %fonte compatÃ­vel com computer modern sans para fÃ³rumulas matemÃ¡ticas
\renewcommand{\familydefault}{\sfdefault}% sans serif como padrÃ£o
\end{lstlisting}
\end{singlespacing}

Outra opÃ§Ã£o para \texttt{poster} e \texttt{slides} (texto e fÃ³rmulas em \texttt{sans serif}). Por ser espessura ``Book'', Ã© mas legÃ­vel do que uso de \texttt{lmodern}+\texttt{sansmathfonts}.
\begin{singlespacing}
\begin{lstlisting}
\usepackage[sfdefault]{notomath} % sffamily as \notosans
\end{lstlisting}
\end{singlespacing}

Note que, o conjunto de fontes Noto ainda nÃ£o tem fontes matemÃ¡ticos serifados para matemÃ¡tica (2024). Se nÃ£o precisar de fÃ³rmulas matemÃ¡ticas, poderÃ¡ usar o pacote \texttt{noto} para usar fontes \texttt{noto}.

Se quer usar a fonte \texttt{sans serif} na fÃ³rmula matemÃ¡tica (para uso em  \texttt{slides} e \texttt{poster}), poderÃ¡ carregar o pacote \texttt{sfmath}\index{sfmath} ou similar para forÃ§ar a usar a fonte \texttt{sans serif} pra fÃ³rmulas, mas nem todas fontes tem sÃ­mbolos necessÃ¡rios em \texttt{sans serif}. Por isso, \texttt{sfmath} permite usar fontes diferentes do texto na fÃ³rmula, atravÃ©s de opÃ§Ãµes.

%A fonte \texttt{iwona} ideal para \texttt{poster} e \texttt{slides}.
%\begin{singlespacing}
%\begin{lstlisting}
%\usepackage{lmodern} % para complementar
%\usepackage[math]{iwona} % sans serif com transiÃ§Ã£o grosso fino
%\end{lstlisting}
%\end{singlespacing}

Fonte \texttt{Schoolbook L} pode ser escolhdo por
\begin{singlespacing}
\begin{lstlisting}
\usepackage{mlmodern} % para complementar
\usepackage{fouriernc} % schoobook L: Serifa grossa?
\end{lstlisting}
\end{singlespacing}

A fonte \texttt{stix} (estilo compatÃ­vel com \texttt{Times New Roman})
\begin{singlespacing}
\begin{lstlisting}
\usepackage{newtxtext} % para complementar
\usepackage{stix} % compativel com New Times Roman
\end{lstlisting}
\end{singlespacing}
A versÃ£o nova da fonte \texttt{stix} pode ser carregado pelo pacote 
\texttt{stix2} .

Note que, para complementar a fonte com a outra, como do \texttt{amssymb}, deve carregar o complemento antes do pacote de fonte desejado. 
Quando vÃ¡rios pacotes de fontes sÃ£o carregados e tiver conflitos, o que vale Ã© do pacote carregado por Ãºltimo.

TambÃ©m existem pacotes de fontes que acrescentam comandos para fontes adicionais. 
Por exemplo, o pacote \texttt{dsfont}\index{dsfont} adiciona o comando \verb+\mathds+ para usar a fonte ``negrito de quadro negro'' alternativo dentro das fÃ³rmulas.
Da forma anÃ¡loga, o pacote \texttt{calligra}\index{calligra} acrescenta o comando \verb+\textcalligra+\index{textcalligra@\verb+\textcalligra+} para textos na fonte caligrÃ¡fica.

Para ver as fontes livres do \LaTeX{} e os pacotes correspondentes, veja o site \url{http://www.tug.dk/FontCatalogue/}.

\section{Texto somente com contorno, sombreado e degradÃª}
No caso de cartazes e folhetos, as vezes usamos texto somente com contorno para tÃ­tulos na qual usa-se a letra grande.
Uma forma fÃ¡cil de fazer isso Ã© usar o pacote \texttt{contour}\index{contour}
que permite criar um contorno no elemento. 
Veja o Exemplo~\ref{ex15:contour}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex},label=ex:11-06]
\begin{ltxlisting}[caption={ex15-contour.tex},label=ex15:contour]
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{contour}
%\contourlength{0.5pt} % controle da espessura do contorno
\begin{document}
{\Huge \contour{red}{\color{white}\scshape AtenÃ§Ã£o:}}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para sombrear o texto, costuma usar o pacote \texttt{shadowtext}.
Veja o Exemplo~\ref{ex15:shadow}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex},label=ex:11-06]
\begin{ltxlisting}[caption={ex15-shadow.tex},label=ex15:shadow]
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{shadowtext}
\shadowcolor{blue!40!white}
%\shadowoffset{2pt} % deslocamento da sombra
\begin{document}
{\Huge \shadowtext{\sffamily AtenÃ§Ã£o}}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para produzir o texto em degradÃª\index{degradÃª!texto}, existe o pacote novo chamado \texttt{gradient-text}\index{gradient-text} (\url{https://www.ctan.org/pkg/gradient-text})% de 2022 
que implementa a aplicaÃ§Ã£o do gradiente linear no texto. Caso ele nÃ£o for instalÃ¡vel pelo gerenciador de pacotes e nÃ£o souber instalar manualmente, basta abaixar o arquivo \texttt{gradient-text.sty} e deixar junto com o documento \TeX.

O \texttt{gradient-text} suporta somente o modelo de cor em RGB. Para usar outros modelos de cores como pelo nome, poderÃ¡ criar um novo comando com auxilio do \verb+\convertcolorspec+\index{convertcolorspec@\verb+\convertcolorspec+} do pacote \texttt{xcolor}. Note que, para que letras acentuadas sejam aceitas, requer \XeLaTeX/Lua\LaTeX.
Veja o Exemplo~\ref{ex15:gradient-text}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex},label=ex:11-06]
%
% truque de uar expandafter com varios argumentos, de https://tex.stackexchange.com/questions/133753/how-do-i-have-to-invoke-expandafter-for-a-macro-with-multiple-arguments
\begin{ltxlisting}[caption={ex15-gradient.tex},label=ex15:gradient-text]
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{xcolor}
\usepackage{gradient-text}
% comando que aceita cor pelo nome
\makeatletter
\newcommand{\inverted@gradientRGB}[3]{\gradientRGB{#3}{#1}{#2}}
\newcommand{\gradienttext}[4][named]{%
  \convertcolorspec{#1}{#3}{RGB}{\gradienttext@startcolor}%
  \convertcolorspec{#1}{#4}{RGB}{\gradienttext@endcolor}%
  \edef\gradienttext@colors{{\gradienttext@startcolor}{\gradienttext@endcolor}}
  \expandafter\inverted@gradientRGB\gradienttext@colors{#2}
}
\makeatother
\begin{document}
Com cor em RGB: {\Huge \gradientRGB{Texto em degradÃª}{0,255,0}{0,0,255}}

Com comando criado: {\Huge \gradienttext{Texto em degradÃª}{orange!50!red}{yellow}}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

\section{Circulando o texto}
O \LaTeX{} %pacote \texttt{textcomp}
 implementa  o comando \verb+\textcircled+\index{textcircled@\verb+\textcircled+} para  nÃºmeros/letras com cÃ­rculos.
  O comando bÃ¡sico Ã© \verb+\textcircled+\index{textcircled@\verb+\textcircled+} que coloca circulo no seu argumento.
Veja o Exemplo~\ref{ex15:textcircled}.

% exemplo baseado em
% https://www.latex4technics.com/?note=6806YG
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex},label=ex:11-06]
\begin{ltxlisting}[caption={ex15-textcircled.tex},label=ex15:textcircled]
\documentclass[12pt,a4paper]{article}
\usepackage{enumitem}
\begin{document}
\textcircled{\small{2}}\quad\textcircled{\small{A}}
\begin{enumerate}
[label=\large\protect\textcircled{\small\arabic*}]
\item First item
\item Second item
\item Third item
\end{enumerate}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para controle mais sofisticado, existe um pacote novo \texttt{circledtext}\index{circledtext} (\url{https://www.ctan.org/pkg/circledtext}).% de 2022.
Caso ele nÃ£o for instalÃ¡vel pelo gerenciador de pacotes e nÃ£o souber instalar manualmente, basta abaixar o arquivo \texttt{textcircled.sty} e deixar junto com o documento \TeX.

Veja o Exemplo~\ref{ex15:circledtext}.

% exemplo baseado no seu manuaal
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex},label=ex:11-06]
\begin{ltxlisting}[caption={ex15-circledtext.tex},label=ex15:circledtext]
\circledtextset{width=1em}
\documentclass[12pt,a4paper]{article}
\usepackage{circledtext} % tem o comando \circledtext
\circledtextset{resize=real}
\usepackage{enumitem}
\begin{document}
\circledtextset{width=1em}
\circledtext{8}\quad
\circledtext{888}\quad
\circledtext*{8}\quad
\circledtext*{888}

Algumas alteraÃ§Ãµes da configuraÃ§Ã£o

\circledtext[boxtype=O]{12}\quad
\circledtext[boxtype=oo ]{88}\quad
\circledtext[boxtype=Oo ]{88}\quad
\circledtext[boxtype=OO ]{88}\quad
\circledtext*[boxtype=oo ]{88}\quad
\circledtext*[boxtype=Oo ]{88}\quad
\circledtext*[boxtype=OO ]{88}\quad

%\circledtext[yscale=0.5]{15}
\circledtext[width=3em,height=1em]{abc}

\begin{enumerate}
[label=\protect\circledtext{\arabic*}]
\item First item
\item Second item
\item Third item
\end{enumerate}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

%Existe tambÃ©m, a opÃ§Ã£o de usar o \texttt{pifont}\index{pifont} ou o pacote \texttt{circledsteps}

% \usepackage{chngcntr} % nÃ£o e necessÃ¡rio a partir de  2018/04/01
% para usar counterwithin
\section{Escrevendo medidas internacionais}

Para escrever medidas, requer alguns cuidados tais como usar letra romana reta (por ser abreviatura da palavra), ter pequeno espaÃ§o entre valor e medida, entre outros.
Por exemplo, $\qty{10}{\kilo\gram}$ e nÃ£o $10kg$, $\qty{5}{\litre}$ e nÃ£o $5l$ e assim por diante.

Para facilitar a escrever unidades de medidas corretamente no documento, o \texttt{siunitx}\index{siunitx} providencia comandos para escrever na unidade internacional.
Normalmente \texttt(siunitx) usarÃ¡ formataÃ§Ã£o usando a fonte do modo matemÃ¡tico, mas pode converter para usar a fonte do modo texto com o comando \verb+\sisetup{unit-mode=text}+.

Para produzir o nÃºmero rapidamente, tem o comando \verb+\num+\index{num@\verb+\num+}.
O comando \verb+\ang+\index{ang@\verb+\ang+} gera Ã¢ngulos rapidamente.
Para exemplos a seguir, serÃ¡ assumido que foi carregado o pacote \texttt{siunitx} no \texttt{preamble}
Veja o Exemplo~\ref{ex15:num}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-09.tex},label=ex:11-09]
\begin{ltxlisting}[caption={ex15-num.tex},label=ex15:num]
NÃºmeros

\num{12345.67890} \\ % espacando de 3 em 3 casas
\num{12345,67890} \\ % ``,'' tambÃ©m pode ser usado para decimal
// +- Ã© substituido por $\pm$
\complexnum{1 +- 2i}       \\ % i Ã© nÃºmero complexo
\num{.3e45}       \\ % notacao cientifica
\numproduct{1.654 x 2.34 x 3.430} % ``x'' vira $\times$

% valor monetaria costuma ser arredondado em duas decimais
% DE (AlemÃ£o) usa virgula para decimais tambÃ©m
R\$\num[locale=DE,round-precision=2,round-mode=places]{27.3671}
e
R\$\num[locale=DE,round-precision=2,round-mode=places]{15}

Ã‚ngulos

\ang{10}    \\ % grau
\ang{5.3}  \\ % grau com decimal
\ang{-1,5}   \\ % ``,"" tambÃ©m pode ser usado como decimal
\ang{1;2;3} \\ % grau, minuto e segundo
\ang{;;1}   \\ % so o segundo
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O comando \verb+\unit+\index{unit@\verb+\unit+} produz unidade de medida de acordo com o seu parÃ¢metro (o comando da versÃ£o 2 equivalente \verb+\si+\index{si@\verb+\si+} tambÃ©m continua funcionando). 
A configuraÃ§Ã£o de saÃ­da pode ser efetuado pelo parÃ¢metro opcional.
O \verb+\unit+, assim como \verb+\num+ e \verb+\ang+, funciona tanto no modo texto como no modo matemÃ¡tico.

Em geral, coloca-se pequeno espaÃ§o entre valor e medida.
O comando \verb+\qty+\index{qty@\verb+\qty+} automatiza isso. O comando da versÃ£o 2 equivalente Ã© \verb+\SI+\index{SI@\verb+\SI+} que pode ser usado quando \verb+\qty+ nÃ£o estÃ¡ disponÃ­vel como no caso de usar junto com o pacote \texttt{physics}, ou quer colocar sÃ­mbolo antes do valor.

Ele tem a forma
\verb+\qty[opÃ§Ã£o]{valor}[simbolo anterior]{unidade}+
Veja o Exemplo~\ref{ex15:si}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-09.tex, parte b},label=ex:11-09:b]
\begin{ltxlisting}[caption={ex15-si.tex},label=ex15:si]
Entrada literal (Neste modo, nÃ£o hÃ¡ opÃ§Ã£o de formataÃ§Ã£o).

\unit{kg.m/s^2} \\
\unit{g_{polymer}~mol_{cat}.s^{-1}}

Entrada pelo macro (permite configurar a formataÃ§Ã£o usando opÃ§Ã£o do comando ou do parÃ¢metro do pacote).

\unit{\kilo\gram\per\square\second} \\
\unit{\gram_{polymer}\mol_{cat}\per\second}

Mais exemplos\\
\unit{\kilo\gram\metre\per\square\second} \\
\unit{\gram\per\cubic\centi\metre}        \\
\unit{\square\volt\cubic\lumen\per\farad} \\
\unit{\metre\squared\per\gray\cubic\lux}  \\
\unit{\henry\second}

Medidas com valor

\qty{1.23}{J.mol^{-1}.K^{-1}}  \\ % modo textual
\qty{.23e7}{\candela}          \\ % como macros
\qty[locale = DE]{1.345}{\coulomb\per\mole} % alemanha usa virgula como decimal tambÃ©m

Medida nÃ£o numÃ©rico

\qty[parse-numbers = false]{x}{\metre\per\second}

Ã© mesmo que

$x\,\unit{\metre\per\second}$

% Comando da versÃ£o 2 permite colocar elemento antes do nÃºmero.
% Para este exemplo, estÃ¡ arredondando para duas casas decimais.
\SI[per-mode=symbol,locale=DE,round-precision=2,round-mode=places,round-integer-to-decimal]{1.987}[R\$]{\per\kilogram} \\ % com simbolo R$ antes

Colocar medida apÃ³s valor usando \verb+\unit+ e 
colocar valor jÃ¡ com medida usando \verb+\qty+ 
pode apresentar diferenÃ§a no espaÃ§amento. \\
\unit{10\celsius} \\ % valor concatenado com medida
\qty{10}{\celsius} % valor e medida usando macro
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Alguma das medidas padrÃ£o sÃ£o: 
\verb+\ampere+\index{si!ampere@\verb+\ampere+}, \verb+\candela+\index{si!candela@\verb+\candela+}, \verb+\kelvin+\index{si!kelvin@\verb+\kelvin+}, \verb+\kilogram+\index{si!kilogram@\verb+\kilogram+}, \verb+metre+\index{si!metre@\verb+\metre+} ou \verb+meter+\index{si!meter@\verb+\meter+},
\verb+\mole+\index{si!mole@\verb+\mole+}, \verb+\second+\index{si!second@\verb+\second+}, \verb+\litre+\index{si!litre@\verb+\litre+}, \verb+\celsius+\index{si!celsius@\verb+\celsius+}, \verb+\percent+\index{si!percent@\verb+\percent+}, etc que sÃ£o muitas. 
Para saber mais, consulte o manual do pacote.

Para conversÃ£o de medidas, 
\verb+\giga+\index{si!giga@\verb+\giga+}, \verb+\mega+\index{si!mega@\verb+\mega+}, \verb+\kilo+\index{si!kilo@\verb+\kilo+}, \verb+\hecto+\index{si!hecto@\verb+\hecto+}, \verb+\deca+\index{si!deca@\verb+\deca+}, \verb+\deci+\index{si!deci@\verb+\deci+}, \verb+\centi+\index{si!centi@\verb+\centi+}, \verb+\milli+\index{si!milli@\verb+\milli+}, \verb+\micro+\index{si!micro@\verb+\micro+}, \verb+\nano+\index{si!nano@\verb+\nano+}, etc. sÃ£o disponÃ­veis.

Exemplo: \verb+\qty{20}{\kilo\gram}+ e mesmo que \verb+\qty{20}{\kilogram}+.

Para operar, tem o \texttt{per, square}, etc.

\verb+\qty{30}{\kilo\meter\per\square\second}+
Ã© mesmo que 
\verb+\qty{30}{\kilo\meter/\second^2}+
no modo padrÃ£o, mas o segundo nÃ£o consegue controlar a formataÃ§Ã£o por usar forma literal em ``/'' e ``\verb+^2+''.

A configuraÃ§Ã£o geral de formataÃ§Ã£o pode ser feito pela opÃ§Ã£o do pacote ou pelo comando \verb+\sisetup+\index{sisetup@\verb+\sisetup+}, mas tambÃ©m pode especificar localmente como no Exemplo~\ref{ex15:sisetup}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-09.tex, parte c},label=ex:11-09:c]
\begin{ltxlisting}[caption={ex15-sisetup.tex},label=ex15:sisetup]
\qty[mode=text]{30}{\kilo\meter\per\square\second}

\qty[per-mode=power]{30}{\kilo\meter\per\square\second}

\qty[per-mode=symbol]{30}{\kilo\meter\per\square\second}

\qty[per-mode=fraction]{30}{\kilo\meter\per\square\second}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

A nova versÃ£o, apesar de continuar com os comandos da versÃ£o 2, separa o comando para nÃºmeros complexos e com o produto, como pode ver no exemplo de \verb+\num+ (Exemplo~\ref{ex15:num}). Se o documento jÃ¡ estÃ¡ escrita usando os comando da versÃ£o 2 (sem esta separaÃ§Ã£o), poderÃ¡ carregar no modo de versÃ£o 2, com o comando \verb+\usepackage{siunitx}[=v2]+.

\section{Calculando o valor de uma funÃ§Ã£o}
Para efetuar cÃ¡lculo de funÃ§Ãµes matemÃ¡ticas no \LaTeX, como no caso de tabelar funÃ§Ãµes nos pontos dados, podemos usar o pacote \texttt{xfp}\index{xfp} ou \texttt{numerica}\index{numerica}. O pacote \texttt{xfp} evalua a expressÃ£o matemÃ¡tica normalmente, enquanto que \texttt{numÃ©rica} evalua a expressÃ£o escrita na forma \TeX, permitindo que mesma expressÃ£o pode ser usado tanto para evaluar, como para exibir. AlÃ©m de \texttt{numerica} ter mais recursos, o \texttt{numerica-tables}\index{numerica-tables} permite tabelar funÃ§Ãµes rapidamente.

Veja o Exemplo~\ref{ex15:xfp-e-numerica}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-08.tex},label=ex:11-08]
\begin{ltxlisting}[caption={ex15-xfp-e-numerica.tex},label=ex15:xfp-e-numerica]
%SupÃµe carregada seguintes pacotes: xfp, numerica e numerica-tables
ExpressÃ£o a ser evaluada: $\sin(\frac{\pi}{4})$

Valor pelo \texttt{xfp} Ã© $\fpeval{sin(pi/4)}$

Valor pelo \texttt{numerica} (com configuraÃ§Ã£o padrÃ£o) Ã© $\eval{\sin(\frac{\pi}{4})}$,

Tabelando funÃ§Ã£o com \texttt{numerica-tables}

\tabulate[rvar=x,rstep={\frac{\pi}{10}},rows={10+1}]
{\sin x}[x=0]

\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

% A nova versÃ£o (2024) de numerica-tables suporta transpor a tabela
%Forma transposta: Precisa testar, mas ele precisa que outros pacotes tabÃ©m sejam atualizadas.
%\tabulate[rvar=x,rstep={\frac{\pi}{10}},rows={10+1},transpose]{\sin x}[x=0]

\section{Controle das figuras e similares}

As vezes queremos que o elemento flutuante (figuras e tabelas) sejam inseridas exatamente no lugar onde foi colocado. 
Para isso, existe o pacote \texttt{float}\index{float} que fornece a opÃ§Ã£o extra ``H''\index{float!H} nas figuras e tabelas na qual impede de auto posicionar (manter no lugar). 
Para usar, Ã© sÃ³ carregar o pacote no \texttt{preamble} e usar o ``H'' como opÃ§Ã£o de posicionamento das figuras e tabelas que querem que fiquem no lugar.
Outro recurso do pacote \texttt{float} Ã© alterar algumas configuraÃ§Ãµes do elemento flutuante (como colocar moldura nas figuras), e criar um novo elemento flutuante.
Veja o Exemplo~\ref{ex15:float}

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex},label=ex:11-06]
\begin{ltxlisting}[caption={ex15-float.tex},label=ex15:float]
\begin{figure}[H] % No lugar
\centering
\begin{tikzpicture}
\draw (0,0) -- (1,0) -- (0.5, 0.5) -- cycle;
\end{tikzpicture}
\caption{Figura em onde foi inserido}
\end{figure}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para colocar subfiguras ou subtabelas, use o pacote \texttt{subcaption}\index{subcaption}.
Tendo \verb+\usepackage{subcaption}+ no \texttt{preamble}, podemos produzir subfiguras e subtabelas facilmente. 
Veja o Exemplo~\ref{ex15:subcaption}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex, parte b},label=ex:11-06:b]
\begin{ltxlisting}[caption={ex15-subcaption.tex},label=ex15:subcaption]
\begin{figure}[hbp!]
    \centering
    \begin{subfigure}[t]{0.45\linewidth}
        \centering
        Sub figura aqui.
        \caption{sub tÃ­tulo 1}
    \end{subfigure}%
    ~
    \begin{subfigure}[t]{0.45\linewidth}
        \centering
        Segunda sub figura aqui.
        \caption{sub tÃ­tulo 2}
    \end{subfigure}
    \caption{Uso de sub figura}
\end{figure}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Se a classe/pacote conflitar com \texttt{subcaption}, poderÃ¡ optar pelo pacote \texttt{subfig}\index{subfig}.

Para que o texto contorne as figuras ou tabelas, poderÃ¡ usar o pacote \texttt{wrapfig}\index{wrapfig} ou \texttt{floatflt}\index{floatflt}. 
O Exemplo~\ref{ex15:wrapfig} ilustra o uso de \texttt{wrapfig}.
 
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex, parte c},label=ex:11-06:c]
\begin{ltxlisting}[caption={ex15-wrapfig.tex},label=ex15:wrapfig]
\begin{wrapfigure}{l}{0.3\linewidth}
\centering
\begin{tikzpicture}
\draw (0,0) rectangle (3,1);
\end{tikzpicture}
\caption{Figura com texto contornando}
\end{wrapfigure}
A figura deve ser colocado dentro do ambiente wrapfigure. No exemplo, ``l'' significa left (esquerda) que posiciona a figura a esquerda (e texto a direita). Se colocar o ``r'' (right), a figura ficarÃ¡ a direita. O prÃ³ximo parÃ¢metro Ã© a largura reservada para figura que foi 30\% da largura da linha. 
Note que sÃ£o contadas junto as outras figuras.
Se pretende colocar tabela com texto em torno dele, use o ambiente \texttt{wraptable}, tambÃ©m do pacote \texttt{wrapfig}.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Quando tem figura ou tabela muito larga, precisarÃ¡ rotacionar a pÃ¡gina.
Isto pode ser feito pelo pacote \texttt{pdflscape}\index{pdflscape}.

Para que uma pÃ¡gina fique rotacionada, coloque dentro do ambiente \texttt{landscape}\index{landscape}.
Note que, para rotacionar tabelas longas que pode ocupar mais de uma pÃ¡gina, deverÃ¡ usar o pacote \texttt{rotating}\index{rotating}.
Veja o Exemplo~\ref{ex15:pdflscape}.

\begin{singlespacing}
%\begin{lstlisting}[caption={ex11-06.tex, parte d},label=ex:11-06:d]
\begin{lstlisting}[caption={ex15-pdflscape.tex},label=ex15:pdflscape]
\begin{landscape}
\center
\begin{figure}[H]
\center
\begin{tikzpicture}
\draw[fill=gray!20] (0,0) -- (\linewidth,0) -- (\linewidth,5) -- (0, 5) -- cycle;
\end{tikzpicture}
\caption{Figura larga rotacionada}
\end{figure}
\end{landscape}
\end{lstlisting}
\end{singlespacing}
%
%\noindent
%\fbox{\begin{minipage}{\linewidth}
\begin{ltxlistingout}
\center
\rotatebox{-90}{\begin{minipage}{0.5\linewidth}
\center
\begin{tikzpicture}
\draw[fill=gray!20] (0,0) -- (\linewidth,0) -- (\linewidth,5) -- (0, 5) -- cycle;
\end{tikzpicture}
{Figura: Figura larga rotacionada}
\end{minipage}}
\end{ltxlistingout}
%\end{minipage}}
 
Para inserir figuras externas como parte de texto como o logotipo, poderÃ¡ usar o pacote \texttt{inlinegraphicx}\index{inlinegraphicx} que disponibilizarÃ¡ o comando \verb+\inlinegraphics+ que tem a mesma sintaxe do \verb+\includegrahics+, mas que ajusta a altura e posiÃ§Ã£o Ã&nbsp; linha de texto. Se quer alterar a escala, poderÃ¡ usar a opÃ§Ã£o \texttt{scale} como em \verb+\includegrahics+ que faz ajuste relativa Ã&nbsp; altura da linha de texto.
   
% 
%float, OK
%wrapfig (ou floatflt), OK
%subfigure, OK.
%
%
%rotating (sideways,sidewaysfigure,sidewaystable) ou lscape/pdflscape? OK

\section{Criando ambientes tipo figuras e tabelas}

O pacote \texttt{float}\index{float} permite criar elemento flutuante do tipo figuras e tabelas.
O novo elemento flutuante Ã© crido pelo comando \verb+\newfloat+\index{newfloat@\verb+\newfloat+}.
O cÃ³digo
\begin{singlespacing}
%\begin{lstlisting}[caption={ex11-06.tex, parte d},label=ex:11-06:d]
\begin{lstlisting}
\newfloat{algorithm}{tbp}{loa}%[section]
\floatname{algorithm}{AlgorÃ­tmo}
\end{lstlisting}
\end{singlespacing}
cria o ambiente \texttt{algorithm} que auto posiciona e aceita \verb+\caption+ dentro dele para enumerar e colocar o tÃ­tulo. Veja o exemplo~\ref{ex15:newfloat}.

\begin{singlespacing}
%\begin{lstlisting}[caption={ex11-06.tex, parte d},label=ex:11-06:d]
\begin{lstlisting}[caption={ex15-newfloat.tex},label=ex15:newfloat]
\begin{algorithm}
\caption{Primeiro algorÃ­timo}
AlgorÃ­timo aqui.
\end{algorithm}
\end{lstlisting}
\end{singlespacing}
%
\begin{ltxlistingout}
\begin{center}AlgorÃ­tmo 1: Primeiro algorÃ­timo\end{center}
AlgorÃ­timo aqui.
\end{ltxlistingout}

A lista do novo elemento flutuante Ã© criado pelo comando \verb+\listof+. Para listar algorÃ­tmos criados acima, usa-se o comando \verb+\listof{algorithm}{Lista de algorÃ­tmos}+

Note que o elemento flutuante nÃ£o pode dividir em pÃ¡ginas, sendo recomendado para figuras ou elementos menores. No caso do exemplo, o algorÃ­timo pode ser maior, sendo recomendado dividir em pÃ¡ginas, como ocorre com a tabela longa. Para criar o ambiente do estilo \texttt{longtable} (tabela longa) na qual pode quebrar entre pÃ¡ginas, mas ficam enumeradas como os elementos flutuantes, usa-se o pacote \texttt{caption}\index{caption} que permite controlar tÃ­tulos dos elementos flutuantes e similares.
O cÃ³digo
%
\begin{singlespacing}
%\begin{lstlisting}[caption={ex11-06.tex, parte d},label=ex:11-06:d]
\begin{lstlisting}
% definindo o tipo algorÃ­timo
\DeclareCaptionType{algorithmtype}[AlgorÃ­timo][Lista de algorÃ­timos]
% ambiente algorÃ­tmo configura o caption para tipo algorÃ­timo
\newenvironment{algorithm}{\captionsetup{type=algorithmtype}}{}
%{\captionsetup{type=algorithmtype,justification=centering}}{}
% atalho para lista de algoritmos
\newcommand\listofalgorithms\listofalgorithmtypes
% contador subordinado a capÃ­tulo
\counterwithin{algorithmtype}{chapter}
\end{lstlisting}
\end{singlespacing}
%
Cria o ambiente \texttt{algorithm} similar a \texttt{longtable}.

\section{Melhorando as tabelas}

O pacote \texttt{booktabs}\index{booktabs} oferece comandos para traÃ§ar linhas horizontais com espaÃ§amento ajustado adequadamente. Use \verb+\toprule+\index{toprule@\verb+\toprule+} para linha acima da tabela,
\verb+\midrule{}+\index{midrule@\verb+\midrule+} e \verb+\cmidrule+\index{cmidrule@\verb+\cmidrule+} para linhas dentro da tabela e 
\verb+\bottomrule+\index{bottomrule@\verb+\bottomrule+} para linha abaixo da tabela. No caso de \texttt{ABNT}, encima e embaixo da tabela Ã© fechada, mas nÃ£o no lado esquerdo e direito. 

Veja a Tablea~\ref{ex15:booktabs}).

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex, parte c},label=ex:11-06:c]
\begin{ltxlisting}[caption={ex15-booktabs.tex},label=ex15:booktabs]
\begin{table}[hbp!]
\begin{center}
\caption{Tabela com \texttt{booktabs}}\label{tab:booktabs}
\begin{tabular}{ll} 
\toprule
   produto &amp; preÃ§o \\
\midrule
   cenouras  (500g)          &amp; R\$0,50  \\
   cogumelos (vidro de 500g) &amp; R\$5,00  \\
   batata    (1Kg)           &amp; R\$1,20  \\ \midrule % \hline
   total &amp; R\$6,70 \\
   \bottomrule
\end{tabular}
\end{center}
\end{table}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

%O comando \verb+\legend+ Ã© da classe \texttt{abntex2}, mas se quiser usar sem a classe \texttt{abntex2}, basta colocar o comando
%\begin{verbatim}
%\providecommand{\legend}[1]{\par \medskip #1 \smallskip}
%\end{verbatim}
%ou similar no preÃ¢mbulo do documento para definir o comando.
%
%Para tabelas longas simples, poderÃ¡ usar o pacote \texttt{longtable}, mas para tabelas longas mais sofisticadas como exigido pelo \texttt{ABNT}, costuma usar o pacote \texttt{xtab}\index{xtab} que implementa o ambiente \texttt{xtabular}\index{xtabular}
%
%A Tabela~\ref{ex15:xtab} Ã© tabela que ocupa vÃ¡rias pÃ¡ginas.
%Note que o termo   ``continua'' (caso ocupar duas ou mais pÃ¡ginas), ``continuaÃ§Ã£o'' (caso ocupar trÃªs pÃ¡ginas) e ``conclusÃ£o'' (caso ocupar duas ou mais pÃ¡ginas) no cabeÃ§alho da tabela, conforme ABNT.
%A Tabela~\ref{ex15:xtab} foi criado pelo ambiente \texttt{xtabular} do pacote \texttt{xtab} que requer duas compilaÃ§Ãµes seguidas para ajustar corretamente.
%Veja a Tablea~\ref{ex15:xtab}.
%
%%\begin{singlespacing}
%%\begin{LTXexample}[pos=b,caption={ex11-06.tex, parte c},label=ex:11-06:c]
%\begin{ltxlisting}[caption={ex15-xtab.tex},label=ex15:xtab]
%\begin{center}
%\topcaption{InflaÃ§Ã£o (IPCA) e juro de poupanÃ§a de 2022}\label{tab:inflacao}
%\tablefirsthead{ % cabeÃ§alho da primeira pÃ¡gina
%  % \PWSTlastpage Ã© criado pelo \newcount e nÃ£o pelo \newcounter (nÃ£o tem prefixo 'c@')
%  \ifnum\PWSTlastpage &gt; 1 % Se a tabela ocupar mais de uma pÃ¡gina
%    \multicolumn{3}{r}{(continua)}\\ 
%  \fi
%  \toprule
%    &amp; \multicolumn{2}{c}{Ãndice} \\  \cmidrule{2-3}
%  \textbf{MÃªs} &amp; \textbf{InflaÃ§Ã£o} &amp; \textbf{PoupanÃ§a}\\ \midrule}
%\tablehead{% cabeÃ§alho das pÃ¡ginas do meio  
%  \multicolumn{3}{r}{(continuaÃ§Ã£o)}\\ \toprule
%    &amp; \multicolumn{2}{c}{Ãndice} \\  \cmidrule{2-3}
%  \textbf{MÃªs} &amp; \textbf{InflaÃ§Ã£o} &amp; \textbf{PoupanÃ§a} \\ \midrule}
%\tablelasthead{ % cabeÃ§alho da Ãºltima pÃ¡gina
%  \multicolumn{3}{r}{(conclusÃ£o)}\\ \toprule
%    &amp; \multicolumn{2}{c}{Ãndice} \\  \cmidrule{2-3}
%  \textbf{MÃªs} &amp; \textbf{InflaÃ§Ã£o} &amp; \textbf{PoupanÃ§a} \\ \midrule}
%\begin{xtabular}{lrc}
%Janeiro   &amp;  0,54 &amp; 0,5608 \\ 
%Fevereiro &amp;  1,01 &amp; 0,5000 \\
%MarÃ§o     &amp;  1,62 &amp; 0,5976 \\
%Abril     &amp;  1,06 &amp; 0,5558 \\
%Maio      &amp;  0,47 &amp; 0,6671 \\
%Junho     &amp;  0,67 &amp; 0,6491 \\
%Julho     &amp; -0,68 &amp; 0,6639 \\
%Agosto    &amp; -0,36 &amp; 0,7421 \\
%Setembro  &amp; -0,29 &amp; 0,6814 \\
%Outubro   &amp;  0,59 &amp; 0,6501 \\
%Novembro  &amp;  0,41 &amp; 0,6515 \\
%Dezembro  &amp;  0,62 &amp; 0,7082 \\
%\midrule
%Acumulado do ano &amp; 5,79 &amp; 7,8997 \\
%\bottomrule
%\end{xtabular}
%
%\legend{Fonte: \url{https://blog.nubank.com.br/ipca-2022/}, 
%  \url{https://brasilindicadores.com.br/poupanca/}
%}
%\end{center}
%\end{ltxlisting}
%%\end{LTXexample}
%%\end{singlespacing}
%
% NOTA: para ABNT
% O \texttt{xtabular} nÃ£o tem opÃ§Ã£o padrÃ£o para repetir titulo da tabela entre pÃ¡ginas, o que Ã© exigido pelo IBGE. DeverÃ¡ usar o \texttt{longtblr} do pacote \texttt{tabularray}
%

Para colorir linhas e ou cÃ©lulas da tabela de forma simples, poderÃ¡ carregar o pacote \texttt{xcolor} com opÃ§Ã£o \texttt{table} colocando o cÃ³digo
\begin{singlespacing}
\begin{lstlisting}
\usepackage[table]{xcolor}
\end{lstlisting}
\end{singlespacing}

Se for usar pacote que carrega o \texttt{xcolor} automaticamente, coloque antes do pacote correspondente.
Se estiver usando a classe \texttt{beamer}, coloque a opÃ§Ã£o \texttt{xcolor=table} no \texttt{beamer} como em
\begin{singlespacing}
\begin{lstlisting}
\documentclass[xcolor=table]{beamer}
\end{lstlisting}
\end{singlespacing}

Com a opÃ§Ã£o \texttt{table} no \texttt{xcolor}, o pacote \texttt{colortbl}\index{colortbl} serÃ¡ carregado com ajustes necessÃ¡rios.
Note que pacotes tais como \texttt{tikz} e \texttt{pdfpages} carregam o \texttt{xcolor}. Logo, deve colocar \verb+\usepackage[table]{xcolor}+ antes de tais pacotes para evitar erros. Outra forma de evitar erros Ã© colocar
\verb+\PassOptionsToPackage{table}{xcolor}+
 logo em seguida do \verb+\documentclass{}+ para que, qualquer pacote que venha a carregar o \texttt{xcolor} passe opÃ§Ã£o \texttt{table} para ele. Neste caso, \verb+\usepackage{xcolor}+ pode ser colocado sem preocupaÃ§Ã£o.
 
Como exemplo,vamos colorir as linhas Ã­mpares de cinza clara para para facilitar o acompanhamento das linhas.
Veja a Tablea~\ref{ex15:xcolor:table}

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex, parte c},label=ex:11-06:c]
\begin{ltxlisting}[caption={ex15-xcolor-table.tex},label=ex15:xcolor:table]
\begin{table}[hbp!]
\begin{center}
\caption{Colorindo as linhas}\label{tab:xcolor}
\rowcolors{2}{white}{gray!15}
\begin{tabular}{ll} 
\toprule
   produto &amp; preÃ§o \\
\midrule
   cenouras  (500g)          &amp; R\$0,50  \\
   cogumelos (vidro de 500g) &amp; R\$5,00  \\
   batata    (1Kg)           &amp; R\$1,20  \\
   beterraba (1Kg)           &amp; R\$1,50  \\
   alface    (1 maÃ§o)        &amp; R\$0,50  \\
\midrule % \hline
   \rowcolor{blue!15}
   total &amp; R\$8,70 \\
\bottomrule
\end{tabular}
\end{center}
\end{table}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para configuraÃ§Ã£o de cores mais sofisticada, veja o manual do pacote \texttt{colortbl}\index{colortbl}.

Para implementaÃ§Ã£o mais moderna da tabela, poderÃ¡ usar o ambiente \texttt{tblr}\index{tblr} do pacote \texttt{tabularray}\index{tabularray} que permite incorporar recursos do \texttt{tabularx} como do \texttt{colortbl}, entre outros. Veja o Exemplo~\ref{ex15:table:tblr}. Note que \texttt{tblr} funciona tambÃ©m dentro da fÃ³rmula, isto Ã©, pode ser usado como \texttt{array}. Para usar pacotes adicionais como \texttt{booktabs}, \texttt{diagbox}, etc., usa-se o comando \verb+\UseTblrLibrary+ para que seja configurado devidamente.

Colocando no \texttt{preamble}

\begin{singlespacing}
\begin{lstlisting}
\usepackage{xcolor}
\usepackage{tabularray}
\UseTblrLibrary{booktabs}
\end{lstlisting}
\end{singlespacing}

poderÃ¡ usar o cÃ³digo como do Exemplo~\ref{ex15:table:tblr}.

\begin{ltxlisting}[caption={ex15-table-tblr.tex},label=ex15:table:tblr]
\begin{table}[hbp!]
\begin{center}
\caption{Tabela com \texttt{tabularray}}\label{tab:tabulaary}
\begin{tblr}{ %configuraÃ§Ãµes
colspec = {rX}, % alinhamentos/espaÃ§amentos das colunas: l-&gt;left, r-&gt; right, c-&gt;center, X-&gt;automatic
row{odd} = {gray!15}, % cor da linha impar
%row{even} = {white}, % cor da linha par
row{1} = {font=\bfseries\sffamily}, % primeira linha
row{2-Z} = {font=\sffamily}, % linha 2 atÃ© a Ãºltima linha
row{Z} = {fg=blue}, % Ãºltima linha
}
% conteÃºdo da tabela
  produto &amp; preÃ§o \\
\midrule
  cenouras  (500g)          &amp; R\$0,50 \\
  cogumelos (vidro de 500g) &amp; R\$5,00 \\
  batata    (1Kg)           &amp; R\$1,20 \\
  beterraba (1Kg)           &amp; R\$1,50 \\
  alface    (1 maÃ§o)        &amp; R\$0,50 \\
\bottomrule
  total &amp; R\$8,70 \\   
\end{tblr}
\end{center}
\end{table}
\end{ltxlisting}

O \texttt{tablarray} implementa tambÃ©m a funcionalidade da tabela longa correspondente que pode ser usado pelo ambiente \texttt{longtblr}, que Ã© mesmo que \texttt{tblr} com a primeira opÃ§Ã£o opcional como \texttt{long}, % tblr com a opÃ§Ã£o \texttt{long} nÃ£o ficarÃ¡ mesmo que longtblr 
mas nÃ£o consegue configurar perfeitamente para AssociaÃ§Ã£o Brasileira das Normas TÃ©cnicas (\texttt{ABNT})\index{ABNT} somente com comandos padrÃ£o, por nÃ£o conseguir saber se a tabela cabe ou nÃ£o em uma Ãºnica pÃ¡gina (2024) (Para ajustar como \texttt{ABNT}, use o pacote \texttt{tabularray-abnt} explicado na SeÃ§Ã£o~\ref{sec:abnt:tabela} do CapÃ­tulo~\ref{cap:abnt}, na pÃ¡gina~\pageref{sec:abnt:tabela}).
Como um exemplo de ajuste de tablas, segue uma configuraÃ§Ã£o similar a \texttt{ABNT} no caso de tabela ocupar mais de uma pÃ¡gina.

\begin{singlespacing}
\begin{lstlisting}
\usepackage{url} % para endereÃ§o web, se hyperref nÃ£o estÃ¡ carregado.
\usepackage{xcolor} % para colorir tabelas
\usepackage{tabularray} % tabularray
\UseTblrLibrary{booktabs} % adiciona booktabs
% configurando
\DefTblrTemplate{firsthead-text}{default}{\par~\hfill(continua)} % primeira pÃ¡gina
\DefTblrTemplate{lasthead-text}{default}{\par~\hfill(conclusÃ£o)} %Ãºltima pÃ¡gina
\DefTblrTemplate{conthead-text}{default}{\par~\hfill(continuaÃ§Ã£o)} % pÃ¡ginas do meio
% desativando os rodapÃ©s
\DefTblrTemplate{firstfoot,middlefoot}{default}{}
% redefinindo o tÃ­tulo da primeira pÃ¡gina
\DefTblrTemplate{caption}{default}{
  \UseTblrTemplate{caption-tag}{default}
  \UseTblrTemplate{caption-sep}{default}
  \UseTblrTemplate{caption-text}{default}
  \UseTblrTemplate{firsthead-text}{default} % acrescentar o firsthead-text
}
 % redefinindo o tÃ­tulo das pÃ¡ginas do meio
\DefTblrTemplate{capcont}{default}{
  \UseTblrTemplate{caption-tag}{default}
  \UseTblrTemplate{caption-sep}{default}
  \UseTblrTemplate{caption-text}{default}
  \UseTblrTemplate{conthead-text}{default}
}
% redefinindo o tÃ­tulo da Ãºltima pÃ¡gina
\DefTblrTemplate{lasthead}{default}{
  \UseTblrTemplate{caption-tag}{default}
  \UseTblrTemplate{caption-sep}{default}
  \UseTblrTemplate{caption-text}{default}
  \UseTblrTemplate{lasthead-text}{default} % acrescentar o lasthead-text
}
% Ãºltimo rodapÃ© para inserir fonte
\DefTblrTemplate{lastfoot-text}{default}{} % inicialmente vazio
\DefTblrTemplate{lastfoot}{default}{ % rodapÃ© da Ãºltima pÃ¡gina
  \UseTblrTemplate{lastfoot-text}{default} % colocar somente o lastfoot-text
}
% tamanho das fontes
\SetTblrStyle{firsthead-text,lasthead-text,conthead-text}{\footnotesize}
\SetTblrStyle{caption,lasthead,capcont}{\normalsize}
\SetTblrStyle{lastfoot}{\footnotesize}
\end{lstlisting}
\end{singlespacing}

no \texttt{preamble} para que a tabela do Exemplo~\ref{ex15:table:longtblr} fique similar ao \texttt{ABNT}. Note que \verb+\legend+ Ã© um comando de \texttt{memoir} usado pelo \texttt{ABNTeX2}. Se nÃ£o estiver usando o \texttt{ABNTeX2} ou \texttt{memoir}, deverÃ¡ substituir com outra, ou  providenciar algo como
\begin{lstlisting}
\providecommand{\legend}[1]{\par \medskip #1 \smallskip}
\end{lstlisting}
no \texttt{preamble}.

\begin{singlespacing}
\begin{lstlisting}[caption={ex15-table-longtblr.tex},label=ex15:table:longtblr]
\DefTblrTemplate{lastfoot-text}{default}{\legend{Fonte: \url{https://blog.nubank.com.br/ipca-2022/}\par\hspace{3em}\url{https://brasilindicadores.com.br/poupanca/}
}
}
\begin{longtblr}
[%
  caption = {InflaÃ§Ã£o (IPCA) e juro de poupanÃ§a de 2022}, % titulo
  label={tab:inflacao}, % rotulo para referÃªncias cruzadas
]
{
  %theme=default, % default Ã© tema padrÃ£o
  colspec = {XXX}, % colunas de largura automatica
  rowhead = 1, % primeira linha serÃ¡ repetida em todas pÃ¡ginas
  row{1} = {font=\bfseries}, % linha de tÃ­tulo
  row{even} = {gray!15}, % pÃ¡gina par em cinza
  row{Z} = {font=\bfseries}, % Ãºltima linha  
}
\toprule
MÃªs &amp; InflaÃ§Ã£o &amp; PoupanÃ§a \\
\midrule
Janeiro   &amp;  0,54 &amp; 0,5608 \\ 
Fevereiro &amp;  1,01 &amp; 0,5000 \\
MarÃ§o     &amp;  1,62 &amp; 0,5976 \\
Abril     &amp;  1,06 &amp; 0,5558 \\
Maio      &amp;  0,47 &amp; 0,6671 \\
Junho     &amp;  0,67 &amp; 0,6491 \\
Julho     &amp; -0,68 &amp; 0,6639 \\
Agosto    &amp; -0,36 &amp; 0,7421 \\
Setembro  &amp; -0,29 &amp; 0,6814 \\
Outubro   &amp;  0,59 &amp; 0,6501 \\
Novembro  &amp;  0,41 &amp; 0,6515 \\
Dezembro  &amp;  0,62 &amp; 0,7082 \\
\bottomrule
Acumulado do ano &amp; 5,79 &amp; 7,8997 \\
\end{longtblr}
\end{lstlisting}
\end{singlespacing}

% onde \verb+\legend+ Ã© o comando da classe \texttt{abntex2}.

Observe que, nos argumentos dos comandos de configuraÃ§Ã£o, o espaÃ§o serÃ£o eliminados, exceto quando estiver dentro do outro comando. Isto melhor a precisÃ£o dos cÃ¡lculos necessÃ¡rios. Assim, usa-se o espaÃ§o nÃ£o quebrÃ¡vel (``\verb+~+'').
O pacote \texttt{tabularray} tambÃ©m disponibiliza o ambiente \texttt{talltblr}\index{talltblr} que pode ser usado dentro do ambiente \texttt{table}, mas que aceitam os mesmos parÃ¢metros do \texttt{longtblr}, permitindo, por exemplo, colocar rodapÃ© da tabela, entre outros.

Com o uso de \texttt{siunitx}, poderÃ¡ lidar com tabelas que tem nÃºmeros flutuantes\index{tabelas!com nÃºmeros}, como no Exemplo~\ref{ex15:siunitx:table}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-06.tex, parte c},label=ex:11-06:c]
\begin{ltxlisting}[caption={ex15-siunitx-table.tex},label=ex15:siunitx:table]
% nÃ£o funciona?
%
\begin{table}[hbp!]
\begin{center}
\caption{Tabela com \texttt{siunitx}}\label{tab:siunitx}
\medskip
\begin{tblr}
{
  colspec = { X X[r, si={locale=DE}] },
  row{1} = {font=\bfseries}, % linha de tÃ­tulo
  row{even} = {gray!15}, % pÃ¡gina par em cinza
  row{Z} = {font=\bfseries,white}, % Ãºltima linha  
}
\toprule
   produto &amp; \text{preÃ§o} \\
\midrule
   cenouras  (\qty{500}{\gram})          &amp; R\$0.50 \\
   cogumelos (vidro de \qty{500}{\gram}) &amp; R\$5.00 \\
   batata    (\qty{1}{\kilogram})        &amp; R\$1.20 \\
\midrule
   total &amp; R\$6.70 \\
\bottomrule
\end{tblr}
\end{center}
\end{table}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

No caso do ambiente \texttt{tabular}, use a especificaÃ§Ã£o da coluna ``S''. O exemplo anterior usa o pacote \texttt{tabularray}, com o comando adicional \verb+\UseTblrLibrary{booktabs,siunitx}+ para configurar o uso de \texttt{booktabs} e \texttt{siunitx}.

Nas colunas que usam o \texttt{siunitx}, deverÃ¡ tomar cuidado quando tem o caractere ``e'' que Ã© uado para notaÃ§Ã£o cientÃ­fica dos nÃºmeros (na qual tenta interpretar como nÃºmero). Tais colunas no ambiente \texttt{tabular}, basta colocar entre chaves para prevenir que seja interpretado como nÃºmero, mas no ambiente \texttt{tblr} e \texttt{longtblr} do \texttt{tabularray}, deverÃ¡ ficar dentro do comando \verb+\text+, o que requer cuidados.

Note que, com o uso de localidade ``DE'' (AlemÃ£o) na coluna de \texttt{siunitx}, os decimais serÃ£o convertidos automaticamente para virgula em vez do ponto.
Se quer alinhar devidamente nos decimais, deverÃ¡ usar mais opÃ§Ãµes para ``si'', como no Exemplo~\ref{ex15:siunitx:long:table}, cuja saÃ­da foi omitida. Casos como estes que requer vÃ¡rios parÃ¢metros, poderÃ¡ configurar com \verb+\sisetup+\index{sisetup@\verb+\sisetup+} antes da tabela, lembrando que o efeito do \verb+\sisetup+ continuarÃ¡ atÃ© que seja reconfigurado novamente.

\begin{singlespacing}
\begin{lstlisting}[caption={ex15-siunitx-long-table.tex},label=ex15:siunitx:long:table]
\sisetup{
  locale=DE, % AlemÃ£o: virgula como decimal
  table-format=4.2, % 4 digitos, 2 digitos decimais
  table-number-alignment=center % alinhar no decimal
}  
\begin{longtblr}
[%
  caption = {Tabela longa}, % titulo
  label={tab:longa}, % rotulo para referÃªncias cruzadas
]
{ 
  colspec = {XX[r,si]}, % X Ã© largura automatica. Segundo X tem como parÃ¢metro opcional r (direita) e si (nÃºmero usando pacote siunitx)
  rowhead = 1, % primeira linha serÃ¡ repatida em todas pÃ¡ginas
  row{1} = {font=\bfseries}, % linha de tÃ­tulo
  row{even} = {gray!50}, % linhas par em cinza
  row{Z} = {font=\bfseries,white}, % Ãºltima linha  
}
\toprule
 texto &amp; \text{nÃºmero} \\ \midrule
 linha 1 &amp; 1.1 \\ % \midrule
 linha 2 &amp; 2.2 \\ % \midrule
 linha 3 &amp; 3.3 \\ % \midrule
 linha 4 &amp; 4.4 \\ % \midrule
 linha 5 &amp; 5.5 \\ % \midrule
 linha 6 &amp; 6.6 \\ % \midrule
 linha 7 &amp; 7.7 \\ % \midrule
 linha 8 &amp; 8.8 \\ % \midrule
 linha 9 &amp; 9.9 \\ % \midrule
 linha 10 &amp; 10.10 \\ % \midrule
 linha 11 &amp; 11.11 \\
 \bottomrule
 \end{longtblr}
\end{lstlisting}
\end{singlespacing}

\section{Moldura, enumeraÃ§Ã£o das linhas e marca d'Ã¡gua}
Para enfeitar o documento, como colocar moldura nos elementos, usamos os pacotes adicionais, exceto molduras simples fornecidos pelo \verb+\fbox+\index{fbox@\verb+\fbox+}.

O pacote \texttt{fancybox}\index{fancybox} oferece caixas com molduras extras tais como \verb+\shadowbox+\index{shadowbox@\verb+\shadowbox+} (com sombra), \verb+doublebox+\index{doublebox@\verb+\doublebox+} (moldura dupla) e \verb+\ovalbox+\index{ovalbox@\verb+\ovalbox+} (moldura com quinas arredondadas).

Note que \verb+\shadowbox+ nÃ£o permite controlar a cor da sombra. 
Se quer caixas mais sofisticadas, poderÃ¡ usar o pacote \texttt{tcolorbox}\index{tcolorbox}.
No caso de querer construir uma caixa personalizada, tambÃ©m podemos usar o pacote grÃ¡fico tal como o \texttt{tikz}.
Veja o Exemplo~\ref{ex15:fancybox}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-08.tex},label=ex:11-08]
\begin{ltxlisting}[caption={ex15-fancybox.tex},label=ex15:fancybox]
\shadowbox{Caixa com sombra}

\doublebox{Caixa com moldura dupla}

\ovalbox{Caixa com quina arredondada}

\Ovalbox{Outra caixa com quina arredondada}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Lembre-se que, se o conteÃºdo tiver parÃ¡grafo, deverÃ¡ usar em conjunto com o \texttt{minipage}.
TambÃ©m permite colocar conteÃºdo ou moldura na pÃ¡gina com comandos tais como \verb+\fancyput+\index{fancyput@\verb+\fancyput+}, \verb+\thisfancyput+\index{thisfancyput@\verb+\thisfancyput+}, \verb+\fancypage+\index{fancypage@\verb+\fancypage+} e \verb+\thisfancypage+\index{thisfancypage@\verb+\thisfancypage+}.

Por exemplo, o cÃ³digo
\begin{singlespacing}
\begin{lstlisting}
\thisfancypage{%
\setlength{\fboxsep}{8pt}%
\setlength{\shadowsize}{8pt}%
\shadowbox}{}
\end{lstlisting}
\end{singlespacing}
acrescenta moldura com sombra na pÃ¡gina atual.

Para colocar moldura nos conteÃºdos longos que podem ocupar mais de uma pÃ¡gina, podemos usar o pacote \texttt{framed}\index{framed}.
Para colocar cor de fundo, deverÃ¡ definir a cor do fundo \texttt{shadecolor}\index{shadowcolor}. 
Para isso, Ã© recomendado usar o pacote \texttt{xcolor} visto na SeÃ§Ã£o~\ref{sec:xcolor} do CapÃ­tulo~\ref{chap:xcolor:tikz} (nÃ£o Ã© o pacote \texttt{color}) que tem facilidade de manipulaÃ§Ã£o das cores.
Assim, para executar o cÃ³digo do Exemplo~\ref{ex15:framed}, deverÃ¡ carregar tanto o pacote \texttt{framed} como o \texttt{xcolor}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-08.tex, parte b},label=ex:11-08:b]
\begin{ltxlisting}[caption={ex15-framed.tex},label=ex15:framed]
\begin{framed}
O texto com moldura pode ser produzido facilmente com o pacote \texttt{framed}.
\end{framed}

\colorlet{shadecolor}{black!15} % cor do fundo usando xcolor
\begin{shaded*}
O texto com fundo pode ser produzido facilmente com o pacote \texttt{framed}.
\end{shaded*}

\begin{leftbar}
O ambiente \texttt{leftbar} coloca traÃ§o no lado esquerdo do texto.
\end{leftbar}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O comando \verb+\colorlet+\index{colorlet@\verb+\colorlet+} do pacote \texttt{xcolor} permite definir cor a partir das cores existentes.
\verb+black!15+ Ã© 15\% de preto. Veja a SeÃ§Ã£o~\ref{sec:xcolor} do CapÃ­tulo~\ref{chap:xcolor:tikz} para mais detalhes sobre recursos de \texttt{xcolor}.

Note que, diferente das caixas padrÃµes do \LaTeX{} ou do pacote \texttt{graphicx}, os ambientes do \texttt{framed} podem quebrar em linhas e em pÃ¡ginas.

Para indicar as correÃ§Ãµes a serem efetuadas, Ã© Ãºtil ter linhas enumeradas.
Para enumerar as linhas do documento, usa-se o pacote \texttt{lineno}\index{lineno}.

Para que as fÃ³rmulas tambÃ©m sejam enumeradas, use
\begin{singlespacing}
\begin{lstlisting}
\usepackage[mathlines]{lineno}
\end{lstlisting}
\end{singlespacing}
%
no \texttt{preamble}.
Os comandos \verb+\linenumbers+\index{linenumbers@\verb+\linenumbers+} e \verb+\nolinenumbers+\index{nolinenumbers@\verb+\nolinenumbers+} sÃ£o usados para ativar/desativar as enumeraÃ§Ãµes.
Se pretende enumerar todo documento, coloque \verb+\linenumbers+ no \texttt{preamble}.
Para enumerar a cada ``&lt;n&gt;'' linhas,use \verb+\modulolinenumbers[&lt;n&gt;]+\index{modulolinenumbers@\verb+\modulolinenumbers+}.
Veja o Exemplo~\ref{ex15:lineno}.

%\begin{singlespacing}
%\setlength{\linenumbersep}{0pt} % default is 10pt
%\begin{internallinenumbers}
%\begin{lstlisting}[caption={ex12-06.tex},label=ex:12-06]
\begin{lstlisting}[caption={ex15-lineno.tex},label=ex15:lineno]
\linenumbers % ativa a enumeracao das linhas
\modulolinenumbers[3] % enumerar de 3 em 3

\lipsum[1] % preencher

\nolinenumbers % desativa a enumeraÃ§Ã£o das linhas
\lipsum[1] % 1 paragrafos

% enumerando so um trecho.
\resetlinenumber % reset the line number
\modulolinenumbers[1] % enumerar todas
\begin{linenumbers}
   \lipsum[2] % 2 paragrafos
\end{linenumbers}
\end{lstlisting}
%\end{lstlisting}
%%\end{internallinenumbers}
%\end{singlespacing}
%
\begin{singlespacing}
\noindent
\fbox{\parbox{\dimexpr(\linewidth-0.8em)}{\hspace*{1em}
\begin{minipage}{\dimexpr(\linewidth-1.8em)}
%\setlength{\linenumbersep}{-5pt} % default is 10pt
\linenumbers % ativa a enumeracao das linhas
\modulolinenumbers[3] % enumerar de 3 em 3
\begin{internallinenumbers}
\lipsum[1] % preencher
\end{internallinenumbers}
\nolinenumbers % desativa a enumeraÃ§Ã£o das linhas
\lipsum[1] % 1 paragrafos

% enumerando so um trecho.
\resetlinenumber % resset the line number
\modulolinenumbers[1] % enumerar todas
\begin{internallinenumbers}
%\begin{linenumbers}
        \lipsum[2] % 3 paragrafos
%\end{linenumbers}
\end{internallinenumbers}
\end{minipage}}}
%\setlength{\linenumbersep}{10pt} % set to default
\end{singlespacing}
% O comando \dimexpr foi usado para efetuar calculo de dimensÃ£o dentro do parÃ¢metro de minipage. Sem ele, nÃ£o efetuarÃ¡ calculo de medidas.

No Exemplo~\ref{ex15:lineno} foi usado o comando \verb+\lipsum+\index{lipsum@\verb+\lipsum+} que gera textos aleatÃ³rios em grego para preencher as pÃ¡ginas para testes. 
Logo, precisa carregar o pacote \texttt{lipsum}\index{lipsum} no \texttt{preamble} para que o exemplo funcione.
Para caso que queira preencher com texto contendo fÃ³rmulas, existe o pacote \texttt{blindtext}\index{blindtext}.

Existem vÃ¡rios pacotes que permitem colocar conteÃºdos em todas as pÃ¡ginas, como no caso de marca d'Ã¡gua. 
Entre eles, vamos ver o caso do uso de \texttt{background}\index{background}, \texttt{draftwatermark}\index{draftwatermark} e
\texttt{eso-pic}\index{eso-pic}.
% \texttt{xwatermark}\index{xwatermark}.

O cÃ³digo
%
\begin{singlespacing}
\begin{lstlisting}
\documentclass{article}
\usepackage{background}
\usepackage{tikz} % necessÃ¡rio carregar para usar background
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{lipsum}
\backgroundsetup{color=red,opacity=0.2,contents={\sffamily\bfseries RASCUNHO}}
\begin{document}
\lipsum
\end{document}
\end{lstlisting}
\end{singlespacing}

Coloca a marca d'Ã&nbsp;gua ``RASCUNHO'' em todas pÃ¡ginas, usando o pacote \texttt{background}\index{background}.
Note que, se quer colocar a imagem externa, basta usar o \verb+\includegraphics+ em vez de texto.
Para desativar/modificar a marca d'Ã¡gua no meio do documento, basta chamar o \verb+\backgroundsetup+ novamente.

O mesmo efeito pode ser obtido pelo pacote \texttt{draftwatermark}\index{draftwatermark} como segue.

\begin{singlespacing}
\begin{lstlisting}
\documentclass{article}
\usepackage{draftwatermark}
\usepackage{tikz}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{lipsum}
\DraftwatermarkOptions{color=red,text={\tikz{\node[opacity=0.2]{\sffamily\bfseries RASCUNHO}}}} % versÃ£o 2.x (nova)
% \SetWatermarkText{\sffamily\bfseries\Huge RASCUNHO} % versÃ£o antiga
\begin{document}
\lipsum
\end{document}
\end{lstlisting}
\end{singlespacing}

A funcionalidade Ã© similar ao \texttt{background}, mas nÃ£o consegue controlar a opacidade da imagem do fundo. Uma forma de contornar isso Ã© usar o \verb+\tikz+ como no exemplo anterior.

% xwatermark nÃ£o estÃ¡ tendo manutenÃ§Ã£o, nÃ£o funcionado no sitema novo.
%No caso do \texttt{xwatermark}\index{xwatermark}, tem opÃ§Ã£o de colocar a marca d'Ã&nbsp;gua na frente, em vez do lado de trÃ¡s. O cÃ³digo
%%
%\begin{singlespacing}
%\begin{lstlisting}
%\documentclass{article}
%\usepackage{xwatermark}
%\usepackage{xcolor}
%\usepackage{graphicx}
%% versÃ£o ``*'' coloca na na frente da figura
%\newwatermark*[allpages,color=red!50,angle=45,scale=3,xpos=0,ypos=0]{RASCUNHO}
%\begin{document}
%\lipsum[1-2]
%\begin{figure}[!ht]
%\centering
%\includegraphics[width=0.3\linewidth]{minha-figura}
%\end{figure}
%\lipsum[1-2]
%\end{document}
%\end{lstlisting}
%\end{singlespacing}
%
%Coloca RASCUNO em todas as  pÃ¡ginas. Usando a versÃ£o ``*'', poderÃ¡ colocar na frente da figura ``minha-figura''.

Outro pacote Ã© o \texttt{eso-pic}\index{eso-pic}. Apesar de ser mais difÃ­cil de usar por basear no ambiente \texttt{picture}, era um pacote popular e pacotes/documentos mais antigos podem fazer uso dele.

Por exemplo, o cÃ³digo
%
\begin{singlespacing}
\begin{lstlisting}
\documentclass{article}
\usepackage{graphicx}
\usepackage{eso-pic}
\usepackage{xcolor}
\usepackage{lipsum}
% marca d'agua
% VersÃ£o sem * Ã© para toda pÃ¡gina. VersÃ£o * Ã© somente na pÃ¡gina corrente
\AddToShipoutPictureBG{%
  %\AtPageLowerLeft{% Este Ã© padrÃ£o
  \unitlength=\paperwidth
    \put(0.3,0.5){\rotatebox{45}{%
      \scalebox{3}{\Huge\sffamily\bfseries\color{black!25}Rascunho}}%
    }
  %}%\AtPageLowerLeft
}%\AddToShipoutPictureBG
\begin{document}
\lipsum[1-4]
\end{document}
\end{lstlisting}
\end{singlespacing}
%
apÃ³s carregar o pacote \texttt{eso-pic}, colocarÃ¡ a palavra ``Rascunho'' rotacionado por $45^\circ$ em todas as pÃ¡ginas como marca d'Ã¡gua.
O comando \verb+\AddToShipoutPictureBG+ criarÃ¡ um ambiente \texttt{picture}. Logo, podemos colocar os comandos aceitos no ambiente \texttt{picture} dentro dele.

Para limpar o fundo, usa-se o \verb+\ClearShipoutPictureBG+\index{ClearShipoutPictureBG@\verb+\ClearShipoutPictureBG+}.

Os comandos do \texttt{eso-pic} tem a versÃ£o ``BG'' para atrÃ¡s da pÃ¡gina como marca d'agua e versÃ£o ``FG'' para colocar na frente da pÃ¡gina. Por exemplo, \verb+\AddToShipoutPictureFG+\index{AddToShipoutPictureFG@\verb+\AddToShipoutPictureFG+} coloca na frente em vez de trÃ¡s da pÃ¡gina.

Caso pretende colocar marca d'Ã¡gua sem o pacote, poderÃ¡ usar o recurso de \verb+\AddToHook+ do \LaTeX{} %LaTeX 01/10/2020 2020
em vez de usar o pacote, como no exemplo a seguir.

\begin{singlespacing}
\begin{lstlisting}
\documentclass{article}
\usepackage{graphicx}
\usepackage{xcolor}
\usepackage{tikz}
\usepackage{lipsum}
% marca d'Ã¡gua personalidada.
% neste comando, poderÃ¡ receber parametro opcional para repassar para \node
\newcommand{\tikzwatermark}[1][draw=red, text=red]{
  \begin{tikzpicture}[overlay, remember picture]
    \node[rotate=45, scale=5, #1] at (current page) {\bfseries\sffamily RASCUNHO};
  \end{tikzpicture}
}
% comando para colocar marca d'Ã¡gua: poderÃ¡ desativar/alterar com o uso de \newcommand
\newcommand{\putwatermark}{
  \tikzwatermark[opacity=0.33, fill=yellow, draw=red, text=red]   
}
% shipout Ã© chamado quando gera pÃ¡ginas
% Adiciona no shipout
%\AddToHook{shipout/foreground}{ % na frente
\AddToHook{shipout/background}{ % atrÃ¡s
  \putwatermark
}
\begin{document}
\lipsum[1-4]
\end{document}
\end{lstlisting}
\end{singlespacing}

O \texttt{shipout}\index{shipout} Ã© chamado quando criar cada pÃ¡gina. Note que no exemplo, foi criado comando auxiliar \verb+\putwatermark+ para colocar marca d'Ã¡gua em vez de colocar marca d'Ã¡gua diretamente, o que permite redefinir dentro do documento para desativar/modificar o mesmo.

\section{AlgorÃ­tmo e cÃ³digo fonte}

Para algoritmos, poderÃ¡ usar o pacote \texttt{algorithmicx}\index{algorithmicx} que destaca entre pacotes com mesma finalidade, por poder configurar a forma como serÃ¡ exibido. Para usar, carrege o pacote \texttt{algpseudocode}\index{algpseudocode} que carregarÃ¡ o pacote \texttt{algoritmicx} e define estilo para pseudo cÃ³digo.
%
%Para que algoritmos sejam tratados como elemento flutuante, poderÃ¡ criar o ambiente usando o pacote \texttt{float}\index{float}, colocando o cÃ³digo similar a que segue, no preambulo.
%
%\begin{singlespacing}
%\begin{lstlisting}
%\usepackage{float}
%% criando algoritmo flutuante
%\newfloat{algorithm}{tbp}{loa}[section]
%\floatname{algorithm}{AlgorÃ­tmmo}
%\end{lstlisting}
%\end{singlespacing}
%%
%Assim, o ambiente criado \texttt{algorithmm} ficam auto posicionadas e enumeradas. Para listar os algorÃ­tmmos, use o comando \verb+\listof{algorithm}{Lista de algorÃ­timos}+.
%Nte que, colocar como elemento flutuante nÃ£o Ã© recomendÃ¡vel para cÃ³digo mais longo.
%
%Para cÃ³digo maais longo, use o pacote \texttt{caption}
%para colocar titulo e enumeraÃ§Ã£o com \textt{captionof}.
%
Veja o Exemplo~\ref{ex15:alg}
%\begin{singlespacing}
\begin{ltxlisting}[caption={ex15-alg.tex},label=ex15:alg]
  \begin{algorithmic}[1] % iniciar enumeraÃ§Ã£o das linhas
     \Procedure{DotProd}{$u,v$} \Comment{Produto interno de u e v}
       \State $p\gets 0$ \Comment{Inicializa como 0}
       \For{$i\gets 1,\ldots, n$}
         \State $p \gets p + u_i*v_i$
       \EndFor
       \State \textbf{return} $p$\Comment{retorna o valor}
     \EndProcedure
   \end{algorithmic}
\end{ltxlisting}
%\end{singlespacing}
%
%\begin{ltxlistingout}
%  \begin{center}AlgorÃ­tmo 1.1: produto interno\end{center}
%  \begin{algorithmic}[1] % iniciar enumeraÃ§Ã£o das linhas
%     \Procedure{DotProd}{$u,v$} \Comment{Produto interno de u e v}
%       \State $p\gets 0$ \Comment{Inicializa como 0}
%       \For{$i\gets 1,\ldots, n$}
%         \State $p \gets p + u_i*v_i$
%       \EndFor
%       \State \textbf{return} $p$\Comment{retorna o valor}
%     \EndProcedure
%   \end{algorithmic}
%\end{ltxlistingout}
%
Como o pacote usa a palavra-chave em inglÃªs, pode querer traduzir para portuguÃªs. Para isso, use o comando \verb+\algrenewcommand+\index{algrenewcommand@\verb+\algrenewcommand+} para redefinir palavra-chaves no preambulo do documento.

Por exemplo, o cÃ³digo
%
\begin{singlespacing}
\begin{lstlisting}
\usepackage{algpseudocode}
% traduzindo a palavras-chave
\algrenewcommand\algorithmicprocedure{\textbf{procedimento}}
\algrenewcommand\algorithmicfor{\textbf{para}}
\algrenewcommand\algorithmicdo{\textbf{faÃ§a}}
\algrenewcommand\algorithmicend{\textbf{fim}}
\end{lstlisting}
\end{singlespacing}
%
traduzirÃ¡ a palavra-chaves do algoritmo anterior para portuguÃªs brasileiro. Ajustando o ``return'' para ``retorne'', terÃ¡ a saÃ­da
\begin{singlespacing}
\algrenewcommand\algorithmicprocedure{\textbf{procedimento}}
\algrenewcommand\algorithmicfor{\textbf{para}}
\algrenewcommand\algorithmicdo{\textbf{faÃ§a}}
\algrenewcommand\algorithmicend{\textbf{fim}}
\begin{ltxlistingout}
  \begin{algorithmic}[1] % iniciar enumeraÃ§Ã£o das linhas
     \Procedure{DotProd}{$u,v$} \Comment{Produto interno de u e v}
       \State $p\gets 0$ \Comment{Inicializa como 0}
       \For{$i\gets 1,\ldots, n$}
         \State $p \gets p + u_i*v_i$
       \EndFor
       \State \textbf{retorne} $p$\Comment{retorna o valor}
     \EndProcedure
   \end{algorithmic}
\end{ltxlistingout}
\end{singlespacing} 

Para traÃ§ar linhas verticais para blocos indentados, poderÃ¡ usar o pacote \texttt{algpseudocodex}\index{algpseudocodex} que Ã© compatÃ­vel com o \texttt{algpseudocode}.

O Pacote \texttt{algorithmicx} vem com padrÃ£o, mais dois estilos que sÃ£o para linguagem Pascal e C, mas para colocar cÃ³digo fonte de um programa, costuma usar o pacote \texttt{listings}\index{listings} que implementa o ambiente \texttt{lstlisting}\index{lstlisting} na qual formata o cÃ³digo de acordo com a linguagem de programaÃ§Ã£o escolhida.

Ele jÃ¡ vem com configuraÃ§Ãµes para diversas linguagens de programaÃ§Ã£o,  tais como \texttt{Ada}, \texttt{Algol}, \texttt{Assember}, \texttt{awk}, \texttt{bash}, \texttt{Basic}, \texttt{C\#}, \texttt{C++}, \texttt{C}, \texttt{Cobol}, \texttt{Delphi}, \texttt{Fortran}, \texttt{Gnuplot}, \texttt{HTML}, \texttt{Java}, \texttt{Lisp}, \texttt{Logo}, \texttt{Lua}, \texttt{Make}, \texttt{Mathematica}, \texttt{Matlab}, \texttt{Metapost}, \texttt{Modula-2}, \texttt{Objective C}, \texttt{Octave}, \texttt{Pascal}, \texttt{Perl}, \texttt{PHP}, \texttt{Prolog}, \texttt{Python}, \texttt{GNU R}, \texttt{Ruby}, \texttt{SAS}, \texttt{Scilab}, \texttt{sh}, \texttt{SQL}, \texttt{TeX}, \texttt{XML}, entre vÃ¡rios outros.
Se a linguagem pretendida nÃ£o estiver na lista, poderÃ¡ definir uma nova linguagem de programaÃ§Ã£o.
 
Para o seu uso, costuma efetuar configuraÃ§Ãµes iniciais no \texttt{preamble} com o comando \verb+\lstset+\index{lstset@\verb+\lstset+} e no ambiente de \texttt{lstlisting}, efetuar mais alguns ajustes se necessÃ¡rio.
Veja o Exemplo~\ref{ex15:listings}

% Para listar o proprio lstlisting
\lstnewenvironment{lstlistinginside} {} {}

\begin{singlespacing}
\refstepcounter{lstlisting}\label{ex15:listings}
\addcontentsline{lol}{section}{\thelstlisting: ex15-listings.tex}
\begin{center}\lstlistingname~\thelstlisting: ex15-listings.tex\end{center}
% \vspace*{-1.5\baselineskip}
\vspace*{-0.5\baselineskip}
%\begin{lstlistinginside}[belowcaptionskip=1\baselineskip]
\begin{lstlistinginside}
\begin{lstlisting}[language=Pascal,caption={AlÃ´ pessoal}]
program teste;
{ Programa de teste }
begin
  writeln('Alo, pessoal!');
end.
\end{lstlisting}
\end{lstlistinginside}
\end{singlespacing}
%
\noindent
\begin{singlespacing}
\begin{framed}
\begin{center}Listing 1: AlÃ´ Pessoal\end{center}
\vspace{-1.6\baselineskip}
\noindent\hrulefill \\
\textbf{program} teste; \\ 
\emph{\{ Programa de teste \}} \\
\textbf{begin} \\
\hspace*{1em} \textbf{writeln}('Alo, pessoal!'); \\
\textbf{end}. \\
\vspace{-0.5\baselineskip}
\hrule %{\linewidth} \\
\end{framed}
\end{singlespacing}

%
%%\let\oricaption\caption
%\begin{singlespacing}
%\begin{center}
%\refstepcounter{lstlisting}
%\addcontentsline{lol}{section}{\thelstlisting: ex15-listings.tex}
%\lstlistingname~\thelstlisting: ex15-listings.tex\label{ex15:listings}
%\end{center}
%\vspace*{-1.2em}
%\noindent\hrulefill \\
%\vspace*{-0.2em}
%\colorbox{yellow!50}{teste}
%%\vspace*{-2.5em}
%\colorlet{shadecolor}{yellow!50}
%\begin{shaded}
%\begin{verbatim}
%\begin{lstlisting}[language=Pascal,caption={AlÃ´ pessoal}]
%program teste;
%{ Programa de teste }
%begin
%  writeln('Alo, pessoal!');
%end.
%\end{lstlisting}
%\end{verbatim}
%\end{shaded}
%\vspace{-1.2em}
%\noindent\hrulefill\end{singlespacing}
%
%\noindent
%
%\let\addcontentsline\emptyaddcontentsline
%\setcounter{orilstlisting}{\value{lstlisting}}
%\setcounter{lstlisting}{0}
%%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{chapter}{1}
%\let\currentlstlistingname\lstlistingname
%\let\lstlistingname\orilstlistingname
%% \fbox com lstlisting esta dando erro
%% usando framed
%\begin{framed}
%%\begin{minipage}{\linewidth-\parindent}%\hspace*{-\parindent}
%\begin{lstlisting}[language=Pascal,caption={AlÃ´ pessoal},style=lstexample]
%program teste;
%{ Programa de teste }
%begin
%  writeln('Alo, pessoal!');
%end.
%\end{lstlisting}
%%\end{minipage}%
%\end{framed}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{lstlisting}{\value{orilstlisting}}
%\let\lstlistingname\currentlstlistingname
%\let\addcontentsline\oriaddcontentsline

A formataÃ§Ã£o de saÃ­da depende da configuraÃ§Ã£o do \texttt{lstlisting}. 
A saÃ­da do Exemplo~\ref{ex15:listings} foi obtida pela configuraÃ§Ã£o
\begin{singlespacing}
\begin{lstlisting}
\lstset{
  numbers=none,
  breaklines=true,
  breakautoindent=true,
  columns=fullflexible, % para poder copiar cÃ³digo do PDF
  frame=lines, %none, single, line
}
\end{lstlisting}
\end{singlespacing}

Note o uso de \texttt{columns=fullflexible} para que o cÃ³digo fonte copiado do PDF nÃ£o fique bagunÃ§ado, o que ajuda o leitor que cÃ³pia o cÃ³digo do documento para editor de texto.

Para o arquivo externo, podemos usar o comando \verb+\lstinputlisting+\index{lstinputlisting@\verb+\lstinputlisting+} que carrega o cÃ³digo diretamente do arquivo fonte.
%\lstinputlisting{test-code}

Note que \texttt{listings} nÃ£o tem suporte nativo a \texttt{utf8}.
Portanto, quando usa os caracteres acentuadas, deverÃ¡ tomar cuidados.
Para o \verb+\lstinputlisting+ funcione no \texttt{utf8}, basta carregar o pacote \texttt{listingsutf8}\index{listingsutf8}, mas para o cÃ³digo colocado diretamente no ambiente \texttt{lstlisting}, deverÃ¡ criar tabela de caracteres unicode correspondente.
Para nÃ£o ter tal trabalho, poderÃ¡ executar no \XeLaTeX{} ou Lua\LaTeX{} em que tem total suporte a unicode.

Quando queremos colocar o trecho do cÃ³digo de \LaTeX{} juntamente com a sua saÃ­da, o pacote \texttt{showexpl}\index{showexpl} Ã© prÃ¡tico. 
Ele usa o pacote \texttt{listings} para listar o cÃ³digo fonte.
A configuraÃ§Ã£o inicial Ã© feito com \verb+\lstset{explpreset={...}}+ no \texttt{preamble}. Os parÃ¢metros em \texttt{explpreset} serÃ£o aplicados somente no ambiente \texttt{LTXexample}, enquanto que os parÃ¢metros fora dele sÃ£o aplicados tanto para \texttt{lstlisting} como \texttt{LTXexample}.
  
O ambiente \texttt{LTXexample}\index{LTXexample} aceita os parÃ¢metros do \texttt{lstlisting} e tambÃ©m o \texttt{pos} e \texttt{preset} que especificam a posiÃ§Ã£o onde colocar a saÃ­da, e a configuraÃ§Ã£o inicial antes de executar o cÃ³digo.
Veja o Exemplo~\ref{ex15:showexpl}.

\begin{singlespacing}
%\begin{lstlisting}[caption={ex11-10, parte b}, label=ex:11-10:b]
\begin{lstlisting}[caption={ex15-showexpl.tex}, label=ex15:showexpl]
\begin{LTXexample}[pos=b,caption={\LaTeX}]
% comentario
Teorema de PitÃ¡goras afirma que
\[ a^2 = b^2+c^2 \]
\end{ltxlisting}
\end{lstlisting}
\end{singlespacing}
%
%
%\let\mathbb\amsmathbb
%\let\addcontentsline\emptyaddcontentsline
\setcounter{orilstlisting}{\value{lstlisting}}
\setcounter{lstlisting}{0}
%%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{chapter}{1}
\let\currentlstlistingname\lstlistingname
\let\lstlistingname\orilstlistingname
% \fbox com lstlisting esta dando erro
% usando framed
\begin{ltxlistingout}
%\begin{minipage}{\linewidth-\parindent}%\hspace*{-\parindent}
\begin{LTXexample}[pos=r,caption={\LaTeX},style=lstexample,belowcaptionskip=-\z@]
% comentario
Teorema de PitÃ¡goras afirma que
\[ a^2 = b^2+c^2 \]
\end{LTXexample}
%%\end{minipage}%
\end{ltxlistingout}
%\setcounter{chapter}{\value{lstorichapter}}
\setcounter{lstlisting}{\value{orilstlisting}}
\let\lstlistingname\currentlstlistingname
%\let\addcontentsline\oriaddcontentsline
%\let\mathbb\orimathbb

O valor de ``\texttt{pos}'' que determina onde ficarÃ¡ a saÃ­da do resultado do cÃ³digo em relaÃ§Ã£o ao do cÃ³digo fonte, podem ser
``t'', ``b'', ``l'', ``r'' ,``o'' ou ``i'', que sÃ£o 
abreviaturas de ``top'' (encima), ``bottom'' (embaixo), ``left'' (esquerda), ``right'' (direita), ``outer'' (lado de fora) e ``inner'' (lado de dentro).

Na saÃ­da do Exemplo~\ref{ex15:showexpl}, pode notar a falta de espaÃ§o vertical apÃ³s o tÃ­tulo, o que faz tÃ­tulo esconder atrÃ¡s do cÃ³digo e da sua saÃ­da. 
Teoricamente, o parÃ¢metro opcional \texttt{belowcaptionskip} do ambiente \texttt{lstlisting} deveria ajustar tal espaÃ§amento, mas devido a forma como \texttt{showexpl} foi implementado, isto nÃ£o acontece por nÃ£o chamar o \verb+\lst@Init+ encarregado disso.
Para corrigir, a atualizaÃ§Ã£o de valor pode ser inserido dentro do
\verb+\SX@KillAboveCaptionskip+ que Ã© chamado antes de criar o titulo no \texttt{LTXexample}.
Para isso, coloque o cÃ³digo

\begin{singlespacing}
\begin{lstlisting}
\makeatletter
\renewcommand\SX@KillAboveCaptionskip{%
  \ifx\lst@caption\@empty\else
    \lst@IfSubstring t\lst@captionpos
      {\vskip-\abovecaptionskip}{}%
  \fi
  \ifx\lst@belowcaption\undefined \else %adicionado
    \belowcaptionskip=\lst@belowcaption\relax % adicionado
  \fi %adicionado
}
\makeatother
\end{lstlisting}
\end{singlespacing}
no \texttt{preamble} do documento.
Note que a configuraÃ§Ã£o inicial do ambiente \texttt{LTXexample} nÃ£o serÃ¡ alterado, mas agora podemos ajustar o espaÃ§amento entre o tÃ­tulo e o corpo com o parÃ¢metro \texttt{belowcaptionskip} como em \texttt{lstlisting}.

%Uma forma de contornar isso e usar um \texttt{strut} (caixa de largura nula usado para reservar altura) no nome do tÃ­tulo, reservando altura adicional. 
%O parÃ¢metro \texttt{belowcaptionskip} serÃ¡ armazenado em \verb+\lst@belowcaption+.
%EntÃ£o crie um comando tal como \verb+\lstcaptionstrut+
%pelo comando
%\begin{lstlisting}
%\newcommand{\lstcaptionstrut}{\rule[-\lst@belowcaption]{0pt}{0pt}}
%\end{lstlisting} 
%adicionado no preamble do documento.
%Depois, no final do parÃ¢metro \texttt{caption}, adicione este comando.

Note que o \verb+\usepackage+ e similar estÃ£o desabilitados dentro do ambiente \texttt{LTXexample} e se o cÃ³digo precisar, deverÃ¡ estar carregado no \texttt{preamble} do documento principal.
Agora outro exemplo, supondo que \texttt{amssymb} estÃ¡ carregado no documento principal (para usar \verb+\mathbb+).
Veja o Exemplo~\ref{ex15:showexpl:completo}.

\begin{singlespacing}
%\begin{lstlisting}[caption={ex11-10, parte c}, label=ex:11-10:c]
\begin{lstlisting}[caption={ex15-showexpl-completo}, label=ex15:showexpl:completo]
\begin{LTXexample}[pos=b,caption={\LaTeX{} completo},belowcaptionskip=\baselineskip]
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{amssymb,amsmath}
\newcommand{\sen}{\mathrm{sen}}
\begin{document}
% comentario
\[ \forall \theta \in \mathbb{R}, \cos^2\theta + \sen^2\theta = 1 \]
\end{document}
\end{LTXexample}
\end{lstlisting}
\end{singlespacing}
%
%
%\let\mathbb\amsmathbb
%\let\addcontentsline\emptyaddcontentsline
\setcounter{orilstlisting}{\value{lstlisting}}
\setcounter{lstlisting}{1}
%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{chapter}{1}
\let\currentlstlistingname\lstlistingname
\let\lstlistingname\orilstlistingname
% \fbox com lstlisting esta dando erro
% usando framed
\begin{ltxlistingout}
%\begin{minipage}{\linewidth-\parindent}%\hspace*{-\parindent}
\begin{LTXexample}[pos=b,caption={\LaTeX{} completo},belowcaptionskip=\baselineskip,style=lstexample]
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{amssymb,amsmath}
\newcommand{\sen}{\mathrm{sen}}
\begin{document}
% comentario
\[ \forall \theta \in \mathbb{R}, \cos^2\theta + \sen^2\theta = 1 \]
\end{document}
\end{LTXexample}
%\end{minipage}%
\end{ltxlistingout}
%\setcounter{chapter}{\value{lstorichapter}}
\setcounter{lstlisting}{\value{orilstlisting}}
\let\lstlistingname\currentlstlistingname
%\let\addcontentsline\oriaddcontentsline
%\let\mathbb\orimathbb


%
%fancybox, OK
%framed, OK
%lineno, OK
%eso-pic, OK
%
%listings, OK
%showexl, OK
\section{ÃŠnfase modo antigo e cancelamento}
AlÃ©m da Ãªnfase em itÃ¡lico, tambÃ©m poderÃ¡ usar o sublinhado como era feito na maquina de escrever.

O pacote \texttt{ulem}\index{ulem} implementa vÃ¡rias formas de ``sublinhar'' o texto.
Para que os comandos \verb+emph+ e \verb+\em+, assim como o ambiente \texttt{em} nÃ£o sejam trocados pelo comando de sublinhar texto, use a opÃ§Ã£o \texttt{normalem}.
Assim, coloque \verb+\usepackage[normalem]{ulem}+ no \texttt{preamble} para poder usar diversos efeitos de ``sublinhar'' o texto.

Veja o Exemplo~\ref{ex15:ulem}.

\begin{ltxlisting}[caption={ex15-ulem.tex},label=ex15:ulem]
Sublinhando: \uline{importante} \\
Sublinhando com linha dupla: \uuline{urgente} \\
Com onda: \uwave{barco} \\
Cancelando o texto: \sout{errado} \\
Removendo: \xout{removido} \\
Linha tracejada: \dashuline{tracejada} \\
Linha pontilhada: \dotuline{pontilhada}
\end{ltxlisting}

Para destacar texto, costuma usar o pacote \texttt{soul}\index{soul} como no exemplo~\ref{ex15:soul}, na qual a cor de destaque foi configurado com os comandos

\begin{singlespace}
\begin{lstlisting}
\usepackage{soul} % para destacar
\usepackage{xcolor} % para configurar cores
\setulcolor{green} % cor para sublinhar
\setstcolor{red} % cor para cancelar
\sethlcolor{yellow} % cor para destaque
\end{lstlisting}

\end{singlespace}

\begin{ltxlisting}[caption={ex15-soul.tex},label=ex15:soul]
EspaÃ§ado: \so{espaÃ§ado} \\
Small Caps: \caps{Small Caps} \\
Sublinhado: \ul{sublinhado} \\
Cancelando o texto: \st{errado} \\
Destacando: \hl{destacando} 
\end{ltxlisting}

Para cancelar as equaÃ§Ãµes, use o pacote \texttt{cancel}\index{cancel}.
Veja o Exemplo~\ref{ex15:cancel} para ver o uso.

\begin{ltxlisting}[caption={ex15-cancel.tex},label=ex15:cancel]
\renewcommand{\CancelColor}{\color{red}} %cor de cancelamento pode ser alterado
\[x+\cancel{2y} = z \]
\[x+\bcancel{2y} = z \]
\[x+\xcancel{2y} = z \]
\[x+\cancelto{0}{2y} = z \]
\end{ltxlisting}

\section{Mais sobre referÃªncias bibliogrÃ¡ficas}

Na citaÃ§Ã£o original do \LaTeX, usa-se o mesmo padrÃ£o tanto para caso de fazer parte do texto (citaÃ§Ã£o textual) ou nÃ£o fazer parte do texto (citaÃ§Ã£o dentro de parenteses). 
Para fazer esta distinÃ§Ã£o e controlar melhor a forma de citaÃ§Ã£o, foi desenvolvido o pacote chamado \texttt{natbib}\index{natbib}.

O pacote \texttt{natbib} possui comandos \verb+\citet+\index{natbib!\verb+\citet+}, usado para citaÃ§Ãµes textuais e \verb+citep+\index{natbib!\verb+\citep+} para citaÃ§Ãµes entre parenteses (ele jÃ¡ coloca parenteses automaticamente).

AlÃ©m disso, o \texttt{natbib} permite configurar a formataÃ§Ã£o de citaÃ§Ãµes.
Veja o Exemplo~\ref{ex15:natbib} com Exemplo~\ref{ex11:bibtex:bib}.

\begin{singlespacing}
%\begin{lstlisting}[pos=b,caption={ex12-08},label=ex:12-08]
\begin{lstlisting}[caption={ex15-natbib.tex},label=ex15:natbib]
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{natbib}
\begin{document}
Para que a citaÃ§Ã£o faÃ§a parte do texto (estilo textual), usa-se o comando \verb+\citet+ como em ``Por exemplo, \citet{IndianTUG:2000, Goossens:2004} explicam como usar o BibTeX''.

Para que ele nÃ£o faÃ§a parte do texto, usa-se o \verb+\citep+ Como em ``\ldots recursos avanÃ§ados de BibTeX \citep[Cap.~13]{Goossens:2004}''.
\bibliographystyle{apalike} % escolha um estilo
\bibliography{ex11-bibtex} % arquivo de referÃªncias
\end{document}
\end{lstlisting}
\end{singlespacing}

%\begin{framed}
%\begin{singlespacing}
\begin{ltxlistingout}
%\begin{minipage}{\linewidth-\parindent}%\hspace*{-\parindent}
Para que a citaÃ§Ã£o faÃ§a parte do texto (estilo textual), usa-se o comando \verb+\citet+ como em ``Por exemplo, Tutorial Team (2000); Goossens and Mittelbach (2004) explicam como usar o BibTeX''.

Para que ele nÃ£o faÃ§a parte do texto, usa-se o \verb+\citep+ Como em ``\ldots recursos avanÃ§ados de BibTeX (Goossens and Mittelbach, 2004, Cap. 13)''.
%\end{minipage}%
\section*{ReferÃªncias}
\noindent Goossens, M., Mittelbach, F. (2004).
{\em The {\LaTeX{}} Companion (second edition)}.\\
\hspace*{1em} Adilson--Wesley, Reading, MA.

\noindent Tutorial Team (2000).
{\em Online Tutorials on {\LaTeX{}}}.
Indian {\TeX{}} User Group. \\
\hspace*{1em} {\url{http://www.tug.org/tutorials/tugindia/}}.
\end{ltxlistingout}
%\end{singlespacing}
%\end{framed}

O \verb+\cite+ tradicional tambÃ©m estarÃ¡ disponÃ­vel, funcionando como \verb+\citet+ no caso do estilo \texttt{autor-ano} e como \verb+\citep+ no caso do estilo numÃ©rico.

Usando a opÃ§Ã£o do pacote ou comandos apropriados, podermos configurar o estilo de citaÃ§Ãµes.

Note que nos estilos antigos, os campos tais como ``\texttt{url}'' e ``\texttt{doi}''\index{bibtex!doi} nÃ£o serÃ£o usados (logo, nÃ£o aparecem nas referÃªncias).
Para que \texttt{URL} apareÃ§a na referÃªncia desses estilos antigos, colocavam no campo ``\texttt{note}''.

Para estilos mais modernos como do \texttt{natbib}, o \texttt{URL} deve ser colocado no campo ``\texttt{url}''\index{bibtex!url} e a data do Ãºltimo acesso em ``\texttt{urldate}''\index{bibtex!urldate}.
No estilo natigo em que \texttt{urldate} Ã© ignorado, coloque o Ãºltimo acesso em ``\texttt{note}''.
% pode ser usado para outra finalidade tal como colocar a data de Ãºltimo acesso.

Estilo padrÃ£o do \texttt{natbib} sÃ£o \texttt{plainnat}\index{natbib!plainnat}, \texttt{abbrvnat}\index{natbib!abbrvnat}, \texttt{unsrtnat}\index{natbib!unsrtnat}.
TambÃ©m suporta vÃ¡rios \texttt{bst} de outros pacotes
do estilo \texttt{autor-ano} tais como \texttt{apalike}\index{natbib!apalike}, \texttt{newapa}\index{natbib!newapa}, (\texttt{chicago}\index{natbib!chicago}, \texttt{named}\index{natbib!named}, etc do \texttt{chicago}), 
(\texttt{agsm}\index{natbib!agsm}, \texttt{dcu}\index{natbib!dcu}, \texttt{kluwer}\index{natbib!kluwer}, etc do \texttt{harvard}), 
(\texttt{astron}\index{natbib!astron}, \texttt{apa}\index{natbib!apa}, \texttt{humanbio}\index{natbib!humanbio}, etc do \texttt{astron}),
(\texttt{authordate&lt;n&gt;}\index{natbib!authordate&lt;n&gt;} e \texttt{aaai-named}\index{natbib!aaai-named} do \texttt{authordate&lt;n&gt;}).

Note que \texttt{bst} nÃ£o compatÃ­veis com \texttt{autor-ano}, como o estilo padrÃ£o do \BibTeX{} serÃ¡ considerado como numÃ©rico.

Para criar seu prÃ³prio arquivo de estilo \texttt{bst}, comece gerando um modelo com \texttt{makebst}\index{makebst} do pacote \texttt{custom-bib}\index{custom-bib}.

%%%%%%%%%% biblatex

O Bib\LaTeX{}\index{biblatex} suporta o arquivo \texttt{bib} em \texttt{utf8}, permitindo que tenha citaÃ§Ãµes dos livros em caracteres fora do \texttt{latin} e tambÃ©m suporta a localizaÃ§Ã£o da referÃªncia bibliogrÃ¡fica.

Outro ponto positivo para desenvolvedores Ã© ter maior facilidade de elaborar arquivo de estilos.

O Bib\LaTeX{} nÃ£o Ã© compatÃ­vel com maioria dos pacotes especÃ­ficos para \BibTeX.
TambÃ©m terÃ¡ problemas com o pacote \texttt{titlesec} quando usar as opÃ§Ãµes \texttt{refsection}, \texttt{refsegment} ou \texttt{citereset} no Bib\LaTeX.

Note que, caso nÃ£o tenha estilo de referÃªncia bibliogrÃ¡fica desejado, o truque de copiar o conteÃºdo do arquivo \texttt{bbl} (extensÃ£o \texttt{bbl}) e ajustar, nÃ£o funciona no Bib\LaTeX, pois ele nÃ£o usa o ambiente \texttt{thebibliography}. 
Isto vale mesmo que use \BibTeX{} como \texttt{backend}.
Como nem toda revista dispÃµe de estilos para Bib\LaTeX{} (mesmo tendo estilo para \BibTeX), fique atento nesta parte para decidir se vai usar o \BibTeX{} direto, ou usar o Bib\LaTeX.

Quando carrega o pacote \texttt{biblatex}, efetua algumas configuraÃ§Ãµes.

\begin{singlespacing}
\begin{lstlisting}
\usepackage[
  backend=biber,
  bibencoding=utf8,
%  natbib=true, % natbib compatible mode (citep, citet, etc)
  style=authoryear,
]{biblatex}
\end{lstlisting}
\end{singlespacing}

Carrega o \texttt{biblatex} configurado para usar \texttt{biber}\index{biber} como processador de referÃªncias bibliogrÃ¡ficas. 
Se usar o \texttt{bibtex} em vez do \texttt{biber}, perderÃ¡ os recursos estendidos tais como suporte a \texttt{utf8} e localizaÃ§Ã£o da referÃªncia bibliogrÃ¡fica.
No cÃ³digo anterior, tambÃ©m foi indicado que o arquivo \texttt{bib} estÃ¡ em \texttt{utf8}, podendo conter caracteres unicode (fora do \texttt{latin}, por exemplo).
A opÃ§Ã£o \texttt{natbib} estÃ¡ comentado, mas se ativar, terÃ¡ disponibilidade para usar comandos \verb+\citet+ e \verb+\citep+ similar a do \texttt{natbib}.
Finalmente, o estilo escolhido Ã© \texttt{authoryear}.

Para indicar os arquivos \texttt{bib}, usa-se o comando \verb+\addbibresource{&lt;arquivo bib&gt;}+\index{addbibresource@\verb+\addbibresource+} que costuma estar no \texttt{preamble}, onde \texttt{&lt;arquivo bib&gt;} Ã© nome do arquivo \texttt{bib} que deve incluir necessariamente a extensÃ£o (como o \verb+.bib+). 
Caso quer indicar vÃ¡rios arquivos \texttt{bib}, deverÃ¡ colocar um \verb+\addbibresource+ para cada arquivo \texttt{bib}.

ApÃ³s efetuar citaÃ§Ãµes normalmente no documento, coloca-se o comando
\verb+\printbibliography+\index{printbibliography@\verb+\printbibliography+}
no lugar onde quer que apareÃ§a a referÃªncia bibliogrÃ¡fica.
Veja o Exemplo~\ref{ex15:biblatex} com Exemplo~\ref{ex11:bibtex:bib}..

\begin{singlespacing}
%\begin{lstlisting}[pos=b,caption={ex12-08},label=ex:12-08]
\begin{lstlisting}[caption={ex15-biblatex.tex},label=ex15:biblatex]
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage[
  backend=biber,
  bibencoding=utf8,
%  natbib=true, % natbib compatible mode (citep, citet, etc)
  style=authoryear, % estilo da citaÃ§Ã£o no texto
% bibstyle=authortitle, % estilo da listagem pode ser diferente da citaÃ§Ã£o no texto
]{biblatex}
\addbibresource{ex11-bibtex.bib} % nÃ£o esquecer o .bib
\begin{document}
Para que a citaÃ§Ã£o faÃ§a parte do texto (estilo textual), usa-se o comando \verb+\textcite+ como em ``Por exemplo, \textcite{IndianTUG:2000, Goossens:2004} explicam como usar o BibTeX''.

Para que ele nÃ£o faÃ§a parte do texto, usa-se o \verb+\parencite+ Como em ``\ldots recursos avanÃ§ados de BibTeX \parencite[Cap.~13]{Goossens:2004}''.
\printbibliography
\end{document}
\end{lstlisting}
\end{singlespacing}

%\begin{framed}
%\begin{singlespacing}
\begin{ltxlistingout}
%\begin{minipage}{\linewidth-\parindent}%\hspace*{-\parindent}
Para que a citaÃ§Ã£o faÃ§a parte do texto (estilo textual), usa-se o comando \verb+\textcite+ como em ``Por exemplo, Tutorial Team (2000) e Goossens e Mittelbach (2004) explicam como usar o BibTeX''.

Para que ele nÃ£o faÃ§a parte do texto, usa-se o \verb+\parencite+ Como em ``\ldots recursos avanÃ§ados de BibTeX (Goossens and Mittelbach 2004, Cap. 13)''.
%\end{minipage}%
\section*{ReferÃªncias}
\noindent Goossens, Michel e Frank Mittelbach (2004).
{\em The {\LaTeX{}} Companion (second edition)}.\\
\hspace*{1em} Reading, MA: Adilson--Wesley, 

\noindent Tutorial Team (2000).
{\em Online Tutorials on {\LaTeX{}}}.
{\url{http://www.tug.org/tutorials/tugindia/}}.
\hspace*{1em} Indian {\TeX{}} User Group. \\
\end{ltxlistingout}
%\end{singlespacing}
%\end{framed}

Quando usa o Bib\LaTeX, a citaÃ§Ã£o textual (que faz parte do texto) serÃ¡ especificado pelo comando \verb+\textcite+\index{biblatex!textcite@\verb+\textcite+} que corresponde ao \verb+\citet+ do \texttt{natbib}.
O comando \verb+\parencite+\index{biblatex!parencite@\verb+\parencite+} produz citaÃ§Ã£o que nÃ£o faz parte do texto (corresponde ao \verb+\citep+ do \texttt{natbib}).
O comando \verb+\cite+ dependerÃ¡ do estilo escolhido.

Se quer que a referÃªncia bibliogrÃ¡fica conste no sumÃ¡rio, coloque
\begin{singlespacing}
\begin{lstlisting}
\phantomsection % se estiver usando o hyperref
\printbibliography[heading=bibintoc]
\end{lstlisting}
\end{singlespacing}
onde \verb+\phantomsection+\index{phantomsection@\verb+\phantomsection+} Ã© necessÃ¡rio somente quando usa o pacote \texttt{hyperref} para que o link do sumÃ¡rio para a referÃªncia bibliogrÃ¡fica aponte para a pÃ¡gina correta.

O estilo padrÃ£o do Bib\LaTeX{} sÃ£o \texttt{numeric}\index{biblatex!numeric}, \texttt{alphabetic}\index{biblatex!alphabetic}, \texttt{authoryear}\index{biblatex!authoryear}, \texttt{authortitle}\index{biblatex!authortitle}, \texttt{verbose}\index{biblatex!verbose}, \texttt{reading}\index{biblatex!reading} e \texttt{draft}\index{biblatex!draft}, mas existem muitos outros disponÃ­veis em \url{http://mirror.ctan.org/macros/latex/exptl/biblatex-contrib}.

No estilo de Bib\LaTeX, foi adicionado o campo \texttt{urldate} para indicar a data de consulta do documento eletrÃ´nico, alÃ©m do campo \texttt{url} para indicar a localizaÃ§Ã£o de documentos eletrÃ´nicos.

Para quem pretende criar o estilo novo, note que no Bib\LaTeX{} deve implementar tanto o estilo de referÃªncias (como serÃ¡ impresso na referÃªncias) com  o estilo de citaÃ§Ãµes (como aparece dentro do texto).

%natbib,
%biblatex

\section{Siglas e glossÃ¡rios}
A lista de sÃ­glas\index{lista de!siglas}, sÃ­mbolos\index{lista de!simbolos} e glossÃ¡rios\index{glossÃ¡rios} podem ser criados pelo pacote \texttt{acro}\index{acro} como no Exemplo~\ref{acro}, cuja saÃ­da serÃ¡ omitida.

\begin{singlespacing}
\begin{lstlisting}[caption={ex15-acro.tex},label=ex15:acro]
\documentclass[12pt]{article}

% NÃ£o precisa executar o comando externo, mas precisa compilar duas vezes.
% A lista serÃ¡ automaticamente ordenada.

\usepackage[brazilian]{babel}
%\usepackage{array,longtable} % para usar longtable na lista
\usepackage{tabularray} % para usar tabularray na lista
\usepackage{acro} % lista de abreviaturas e siglas
% configurando
\acsetup{
    %first-style = long-short, % modo "long (short)" (default)
    %list/display = used, % somente usados (default) pode ser all ou used
    % list/template=description, % lista de descriÃ§Ã£o (Ã© default?)
    pages/display = none % pÃ¡gina impressa: first (default?), all ou none
}

% abreviaturas e siglas
\DeclareAcronym{ibge}{
    short = {IBGE},
    long  = {Instituto Brasileiro de Geografia e EstatÃ­stica},
    tag = {abrev},
}
\DeclareAcronym{abnt}{
    short = {ABNT},
    long  = {AssociaÃ§Ã£o Brasileira de Normas TÃ©cnicas},
    tag = {abrev},
}
% SÃ­mbolos (explicaÃ§Ã£o dos sÃ­mbolos)
\DeclareAcronym{pi}{ 
    short = {$\pi$}, 
    long  = {RazÃ£o entre circunferÃªncia e diÃ¢metro},
    tag = {simb},
    first-style = short,
}
% glossÃ¡rios (explicaÃ§Ã£o do termo)
% Exemlificando o uso de plural nÃ£o canÃ´nica tambÃ©m
\DeclareAcronym{primo}{
    short = {primo},
    short-plural-form  = {primos}, % quando Ã© sÃ³ acrescentar 's' no final, nÃ£o Ã© necessÃ¡rio
    long  = {Ã© o nÃºmero inteiro cuja Ãºnico divisor Ã© $\pm 1$, ele ou oposto dele mesmo},
    long-plural-form  = {sÃ£o nÃºmeros inteiros cuja Ãºnico divisor Ã© $\pm 1$, ele ou oposto dele mesmo},
    % list  = {Como serÃ¡ exibido na lista}
    tag = {glos},
    first-style = short, % como serÃ¡ na primeira ocorrÃªncia
}
% se tiver a forma plural, poderÃ¡ usar o \Acp e \acp para acessar.
%%%%%%%%%%%%%%%%%%%%%
% inicio do documento
%%%%%%%%%%%%%%%%%%%%%
\begin{document}
% siglas
\printacronyms[name={Lista de abreviaturas e siglas}, include=abrev, heading=section*] % sÃ³ o abrev
\acsetup{pages/display = first} % com pÃ¡gina da primeira ocorrencia
% SÃ­mbolos
\printacronyms[name={Lista de sÃ­mbolos}, template=tabularray, include=simb] % sÃ³ o simb, formato tabelas
\tableofcontents
\section{Siglas e grossÃ¡rios}
% Usar \Ac para inicio do parÃ¡grafo (primeira letra em maiusuclo) e \ac para meio do texto (todo em minusculo)
\Ac{abnt} adota a tabela no estilo \ac{ibge}.

Definimos o \ac{pi} como sendo ...

% \Acp e \acp acessa a forma plural.
Seja $p$, $q$, nÃºmeros \acp{primo}. EntÃ£o ...

% \printacronyms[name={Abreviaturas, siglas, sÃ­mbolos e significados},display=all,  heading=section*] % todas

\acsetup{pages/display = none} % sem pagina das ocorrencias
\printacronyms[name={GlossÃ¡rios}, include=glos,heading=section] % sÃ³ o glos
\end{document}
\end{lstlisting}
\end{singlespacing}

A ordenaÃ§Ã£o no \texttt{acro} Ã© pela ordem alfabÃ©tica dos rÃ³tulos (nomes) dos acronomos que Ã© o primeiro argumento de \verb+\DeclareAcronym+. No exemplo anterior, a diferenciaÃ§Ã£o entre siglas, sÃ­mbolos e glossÃ¡rios foi feito pelo valor do \texttt{tag}, mas como permite \texttt{tag} genÃ©rico, pode cometer erros de digitaÃ§Ã£o. Assim as vezes, Ã© preferÃ­vel usar o pacote com maior rigidez como o \texttt{glossaries}\index{glossaries}. O pacote \texttt{glossaries} tambÃ©m permite processar a ordenaÃ§Ã£o pelo comando externo \texttt{makeglossaries} para ter maior controle. O Exemplo~\ref{ex15:glossaries} ilustra o uso (saÃ­da serÃ¡ omitida).

\begin{singlespacing}
\begin{lstlisting}[caption={ex15-glossaries.tex},label=ex15:glossaries]
\documentclass[a4paper,12pt]{article}

\usepackage[brazil]{babel}
\usepackage{hyperref}

%\usepackage{xtab} % tabela longa configurÃ¡vel

\usepackage{acro} % necessÃ¡rio para opÃ§Ã£o acronym

%% Para evitar conflito com xtab: https://golatex.de/viewtopic.php?t=13108
\makeatletter
  \@namedef{ver@supertabular.sty}{}
\makeatother

\usepackage[nonumberlist=true,style=index,acronym]{glossaries} % Caso usar o comando externo, sdrÃ¡ o makeindex
%\usepackage[xindy={language=portuguese},nonumberlist=true,style=index,acronym]{glossaries} % Caso usar comando externo, serÃ¡ o xindy (recomendado)
% Ativando o uso de glossÃ¡rios
%\makeglossaries % com comando externo (para compilar, execute o makeglossaries)
\makenoidxglossaries % com TeX (nÃ£o precisa executar o comando makeglossaries)

% comando para criar nova categoria
% \newglossary[&lt;log-ext&gt;]{&lt;name&gt;}{&lt;in-ext&gt;}{&lt;out-ext&gt;}{&lt;title&gt;}[&lt;counter&gt;] 
\newglossary[slg]{symbols}{syi}{syg}{Lista de SÃ­mbolos} % criando categoria symbols

%%%%%%%%%%%%%%%%%%%%%%%%
% Entradas de glossÃ¡rios
%%%%%%%%%%%%%%%%%%%%%%%%

% abreviaturas e siglas
\newglossaryentry{ibge}{
  name={IBGE},
  description={Instituto Brasileiro de Geografia e EstatÃ­stica},
  type=acronym,
}

\newglossaryentry{abnt}{
  name={ABNT},
  %see=IBGE,
  description={AssociaÃ§Ã£o Brasileira de Normas TÃ©cnicas},
  type=acronym
}

% SÃ­mbolos (explicaÃ§Ã£o dos sÃ­mbolos)
\newglossaryentry{pi}
{
  name={\ensuremath{\pi}},
  sort={pi},
  description={RazÃ£o entre circunferÃªncia e diÃ¢metro},
  type=symbols
}

% glossÃ¡rio (explicaÃ§Ã£o do termo)
\newglossaryentry{primo}{
  name={primo},
  plural={primos}, % acessados pelo Glspl e glspl
  description={Ã© o nÃºmero inteiro cuja Ãºnico divisor Ã© $\pm 1$, ele ou oposto dele mesmo},
}
              
%\glsaddall % adicionar todas entradas (padrÃ£o Ã© somente usados)

\begin{document}
% siglas: com TeX
\printnoidxglossary[type=acronym,title={Lista de abreviaturas e siglas},sort=use]
% siglas: com makeglossaries
\printglossary[type=acronym,title={Lista de abreviaturas e siglas},sort=use]
% SÃ­mbolos: com TeX
\printnoidxglossary[type=symbols,title={Lista de sÃ­mbolos},sort=use]
% simbolos: com makeglossaries
\printglossary[type=symbols,title={Lista de sÃ­mbolos},sort=use]
% sumÃ¡rio
\tableofcontents
\section{Siglas e glossÃ¡rios}
% Usar \Gls para inicio do parÃ¡grafo (primeira letra em maiusuclo) e \gls para meio do texto (todo em minusculo)
\Gls{abnt} adota a tabela no estilo \gls{ibge}.

Definimos o \gls{pi} como sendo ...

%Glspl e glspl ~sao formato em plutal.
Sejam $p$ e $q$, um nÃºmero \glspl{primo}. EntÃ£o ...

%\phantomsection
%\addcontentsline{toc}{section}{\glossaryname}
%\printnoidxglossaries % com TeX: todos glossÃ¡rios
\printnoidxglossary % com TeX: somente o principal
%
%\printglossaries % com makeglossaries: todos glossarios
%\printglossary % com makeglossaries: somente o principal
\end{document}
\end{lstlisting}
\end{singlespacing}

Caso desejar usar o comando externo, use o \verb+\makeglossaries+ e \verb+\printglossary+ no documento e chame o comando \texttt{makeglossaries &lt;nome do arquivo&gt;} onde \texttt{&lt;nome do arquivo&gt;} Ã© nome do arquivo sem a extensÃ£o \texttt{.tex}. Este comando efetua a chamada de \texttt{makeindex} ou \texttt{xindy} com parÃ¢metro adequado para efetuar ordenaÃ§Ã£o.

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{GrÃ¡fico e Diagramas}\label{chap:xcolor:tikz}
Os recursos do ambiente \texttt{picture} do \LaTeX{} Ã© bastante limitado, mesmo que use o pacote \texttt{pict2e}.
Assim, costumamos usar os pacotes fora do \texttt{base} e \texttt{required} como o \texttt{tikz}.
Neste capÃ­tulo, vamos estudar alguns pacotes relacionados aos grÃ¡ficos, que nÃ£o sÃ£o da \texttt{base} e \texttt{required}.

\section{Misturando cores}\label{sec:xcolor}
O pacote de cores mais recomendados Ã© o \texttt{xcolor}\index{xcolor} que estende a funcionalidade do pacote \texttt{color}.
Uma das extensÃµes mais importantes do \texttt{xcolor} Ã© a capacidade de especificar a quantidade de cores e permitir misturar cores.

Para misturar cores\index{misturar cores}, use o ``!'' seguido de percentual.
Por exemplo, \verb|\color{blue!30}|
 Ã© 30\% de azul. %: \colorbox{blue!30}{\hspace*{1cm}}

No caso de \verb|\color{red!30!yellow}|
 Ã© 30\% de vermelho e restante (70\%) de amarelo.
 % : \colorbox{red!30!yellow}{\hspace*{1cm}}

Em \verb|\color{blue!20!black!30!green}|
 Ã© 20\% de azul, 50\% de preto do restante (do 80\% que Ã© 40\%) e restante (40\%) de verde. %: \colorbox{blue!20!black!50!green}{\hspace*{1cm}}

Para definir nova cor a partir do existente, use o comando
\verb|\colorlet|\index{colorlet@\verb+\colorlet+}.

Por exemplo, % Ex.: \colorlet{mygreen}{green!80!yellow}
   \verb|\colorlet{mygreen}{green!80!yellow}| define \texttt{mygreen} como sendo a mistura de 80\% de verde e 10\% de amarelo. %, produzindo \colorbox{mygreen}{\hspace*{1cm}}
Veja o Exemplo~\ref{ex16:xcolor}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-07.tex},label=ex:11-07]
\begin{ltxlisting}[caption={ex16-xcolor.tex},label=ex16:xcolor]
\colorlet{mygreen}{green!80!yellow} % defindo cor a partir do existente

\colorbox{blue!30}{\hspace*{1cm}}

\colorbox{red!30!yellow}{\hspace*{1cm}}

\colorbox{blue!20!black!50!green}{\hspace*{1cm}}

\colorbox{mygreen}{\hspace*{1cm}}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

A seguir, cores bÃ¡sicos do pacote \texttt{xcolor}.


\begin{table}[htbp]
\caption{cores aceitos em todos \protect\texttt{drivers} no pacote xcolor}
 \ \\
 \begin{tabular}{|c|c|c|c|c|c|c|c|}
  \hline
   black &amp; \colorbox{black}{\hspace*{1cm}} 
 &amp; blue &amp; \colorbox{blue}{\hspace*{1cm}}
 &amp; brown &amp; \colorbox{brown}{\hspace*{1cm}}
 &amp; cyan &amp;  \colorbox{cyan}{\hspace*{1cm}} \\ \hline
   darkgray &amp;  \colorbox{darkgray}{\hspace*{1cm}}
 &amp; gray &amp;  \colorbox{gray}{\hspace*{1cm}}
 &amp; green &amp; \colorbox{green}{\hspace*{1cm}}
 &amp; lightgray &amp;  \colorbox{lightgray}{\hspace*{1cm}} \\ \hline
  lime &amp; \colorbox{lime}{\hspace*{1cm}}
 &amp; magenta &amp; \colorbox{magenta}{\hspace*{1cm}}
 &amp; olive &amp; \colorbox{olive}{\hspace*{1cm}}
 &amp; orange &amp;  \colorbox{orange}{\hspace*{1cm}}  \\ \hline
   pink &amp;  \colorbox{pink}{\hspace*{1cm}}
 &amp; purple &amp;  \colorbox{purple}{\hspace*{1cm}}
 &amp; red &amp; \colorbox{red}{\hspace*{1cm}}
 &amp; teal &amp; \colorbox{teal}{\hspace*{1cm}}  \\ \hline
   violet &amp; \colorbox{violet}{\hspace*{1cm}}
 &amp; white &amp;  \colorbox{white}{\hspace*{1cm}}
 &amp; yellow &amp; \colorbox{yellow}{\hspace*{1cm}}  \\ \hline
 \end{tabular}
\end{table}

Dependendo da especificaÃ§Ã£o do \texttt{driver}, terÃ£o muito mais cores, mas Ã© mais prÃ¡tico trabalhar com cores bÃ¡sicos e suas misturas do que lidar com grande quantidade de nomes para cores.

\section{Criando ilustraÃ§Ãµes grÃ¡ficas}

Para criar ilustraÃ§Ãµes grÃ¡ficas, um dos mais indicados Ã© o pacote \texttt{tikz}\index{tikz}\cite{book:tikz:tantau}.

O pacote \texttt{tikz} possui muitas extensÃµes que podem ser carregados pelo comando \verb+\usetikzlibrary+\index{usetikzlibrary@\verb+\usetikzlibrary+}.

Nos exemplos a seguir, serÃ¡ assumido que tem o cÃ³digo do Exemplo~\ref{ex16:tikz:preamble} no \texttt{preamble}.

\begin{singlespacing}
%\begin{lstlisting}[caption={ex12-02.tex}, label=ex:12-02]
\begin{lstlisting}[caption={ex16-tikz-preamble.tex}, label=ex16:tikz:preamble]
\usepackage{tikz} % pacote grÃ¡fico
\usetikzlibrary{babel} % para compatiblidade com o pacote babel, requerido por algumas bibliotecas como o cd.

\usetikzlibrary{calc} % calc eh para efetuar calculos matematicos ou expressoes em coordenadas

\usetikzlibrary{through} % circulo passando por ponto, por exemplo.
 
\usetikzlibrary{patterns} % preenchimentos

\usetikzlibrary{intersections} % interseccao entre caminhos

\usetikzlibrary{matrix} % matriz no tikz

\usetikzlibrary{cd} % diagrama comutativa
\end{lstlisting}
\end{singlespacing}

Os comandos grÃ¡ficos do \texttt{tikz} sempre termina com ponto e vÃ­rgula. 
Ao compilar o cÃ³digo sem ter terminado com ponto e virgula no trecho de \texttt{tikz}, pode travar o \LaTeX{}. 
No caso de estar usando o \LyX{} que nÃ£o salva
antes de compilar, Ã© importante que salve manualmente antes de compilar.
Note que o ``instant preview inset'' do \LyX{} nÃ£o trava.
Veja o Exemplo~\ref{ex16:tikz:basico} para comeÃ§ar.
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte b}, label=ex:12-02:b]
\begin{ltxlisting}[caption={ex16-tikz:basico.tex}, label=ex16:tikz:basico]
PoderÃ¡ desenhar no modo \texttt{inline} como em \tikz \draw[fill] circle (2pt);
ou \tikz{\draw (0,0) -- (1.5,0);}  e tambÃ©m como figura independente

\begin{tikzpicture}
\draw[rounded corners=8pt] (0,0) -- (0,2) -- (2,2) -- (2,0) -- cycle; 
\end{tikzpicture}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O comando \verb+\draw+\index{draw@\verb+\draw+} desenha o elemento. 
A forma como vai desenhar pode ser configurado com o parÃ¢metro opcional. 
``\verb+--+'' indica que vai ligar os pontos a esquerda com da direita com uma linha.
Cores podem ser passado no parÃ¢metro opcional do \verb+\draw+.
Veja o Exemplo~\ref{ex16:tikz:draw}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte c}, label=ex:12-02:c]
\begin{ltxlisting}[caption={ex16-tikz-draw.tex}, label=ex16:tikz:draw]
\begin{center}
\begin{tikzpicture}
\draw (-1,-0.5) -- (1,0.5); % segmentos
\draw (0,1) -- (1,1) -- (1,2) -- (0,2); % Linhas poligonais
\draw (2,0) -- (3,0) -- (3,1) -- (2,1) -- cycle; % Linhas poligonais fechadas
\draw[rounded corners=8pt] (-1,-1) -- (1,-1) -- (1,-2) -- (-1,-2); % Quinas arredondadas
\draw[red] (2,-1) |- (3,-2);% Conectando com linha vertical-horizontal
\draw[blue] (2,-1) -| (3,-2); % Conectando com linha horizontal-vertical
% ++(V) desloca o ponto anterior pelo (V), isto Ã©, novo ponto Ã© ponto nterior + (V). 
\draw (4,0) -- ++(1,1) -- ++(1,-1) -- cycle;
\end{tikzpicture}
\end{center} 
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Quando tem mais de um parÃ¢metro opcional, coloque separado pela vÃ­rgula.
Veja Exemplo~\ref{ex16:tikz:parametro}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte d}, label=ex:12-02:d]
\begin{ltxlisting}[caption={ex16-tikz-parametro.tex}, label=ex16:tikz:parametro]
\begin{center}
\begin{tikzpicture}
% Epessuras: very thin, thin, thick, very thick
\draw[thick] (0,0) -- (1,1);
% Estilo: dashed, dotted
\draw[dotted] (0,0) -- (1,-1);
% Setas -&gt;, &lt;-, &lt;-&gt;, etc
\draw[-&gt;] (0,0) -- (1,0);
% Combinadas
\draw[color=blue,thick,-&gt;] (0,0) -- (-1,0);
\end{tikzpicture}
\end{center}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Podemos definir e usar coordenadas, assim como efetuar alguns cÃ¡lculos com coordenadas.
Veja o Exemplo~\ref{ex16:tikz:coordenadas}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte e}, label=ex:12-02:e]
\begin{ltxlisting}[caption={ex16-tikz-coordenadas.tex}, label=ex16:tikz:coordenadas]
\begin{center}
\begin{tikzpicture}
  \coordinate (A) at (0,0);
  \coordinate (B) at (1,0);
  \coordinate (C) at (1,1);

  \draw (A) -- (B) -- (C) -- cycle; 

  % interpolacao linear das coordenadas
  % $(A)!t!(C)$ sera interpretado como sendo (1-t)*(A)+t*(C)
  \draw[dotted] (A) -- ($(B)!0.5!(C)$);

  % InterpolaÃ§Ã£o linear com rotaÃ§Ã£o
  % rotacionado por angulo de 15 em torno de (B)
  \coordinate (D) at ($(B)!1!15:(C)$);

  \draw[dashed] (A) -- (D); 

  % projeÃ§Ã£o ortogonal
  % $(A)!(B)!(C)$ sera pÃ© do perpendicular abaixado de (B) 
  % sobre a reta determinada pelos pontos (A) e (C)
  \coordinate (H) at ($(A)!(B)!(C)$);

  \draw (A) -- (B) -- (C) -- cycle; 

  \draw[blue] (B) -- (H);

  % Coordenada com rÃ³tulos (ja desenha o rotulo quando define)
  \coordinate[label=left:$X$] (X) at (3,0);
  \coordinate[label=right:$Y$] (Y) at (4,1);
  \draw (X) -- (Y); % ligando direto
  \draw[dotted] (X) |- (Y); % ligaondo com vertical/horizontal
  \draw[dashed] (X) -| (Y); % ligaondo com horizontal/vertical
  
  % Coordenada polar.
  % As coordenada polar Ã© dado por (angulo:raio).
  % O Ã¢ngulo Ã© em graus.
  \coordinate (u) at (45:1); % (angulo:raio)
  \coordinate (v) at (90:2);

  % combinaÃ§Ã£o linear das coordenadas
  % Note que devem ficar delimitados pelo $
  \draw[-&gt;] (A) -- ($1.5*(u)+0.5*(v)$); 
\end{tikzpicture}
\end{center} 
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

TambÃ©m podemos obter intersecÃ§Ãµes. 
Para pintar dentro, podemos usar o comando \verb+\fill+\index{fill@\verb+\fill+} (ou \verb+\draw+ com opÃ§Ã£o)
Veja o Exemplo~\ref{ex16:tikz:intersection}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte f}, label=ex:12-02:f]
\begin{ltxlisting}[caption={ex16-tikz-intersection.tex}, label=ex16:tikz:intersection]
\begin{center}
\begin{tikzpicture}
  % desenhando e definindo coordenadas
  \draw (0,0) coordinate (A) -- (2,3) coordinate (B)
        (0,2) coordinate (C) -- (3,1) coordinate (D);
  \fill[red] (intersection of A--B and C--D) circle (2pt);
  
 % Outra forma de obter intersecÃ§Ã£o.
 \draw (4,0) coordinate (E) -- (6,3) coordinate (F)
        (4,2) coordinate (G) -- (7,1) coordinate (H);
  \fill[blue] (intersection cs:
       first line={(E) -- (F)},
       second line={(G) -- (H)}) circle (2pt);
\end{tikzpicture}
\end{center} 
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

CÃ­rculos, elipses e arcos tambÃ©m podem ser desenhados.
Veja o Exemplo~\ref{ex16:tikz:circle}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte g}, label=ex:12-02:g]
\begin{ltxlisting}[caption={ex16-tikz-circle.tex}, label=ex16:tikz:circle]
\begin{center}
\begin{tikzpicture}
  \draw[red] (-1.5,0) circle (0.5);   % circlo

  \coordinate [label=left:$A$] (A) at (0,0); 
  \coordinate [label=right:$B$] (B) at (1.25,0.25); 
  \draw (A) -- (B);
   % Circulo passando por (B), com centro em (A)
  \node [draw,circle through=(B),label=above:$c$] at (A) {};

  \coordinate (X) at (3,0);
  \def\localRadius{2}
  \def\localAngle{45}

  % fazendo circulo na ponta inicial e rotulando como $X$
  \draw (X) circle (2pt) node[anchor=south west] {$X$};

  % faz arco e os circulos na ponta final e rotula como $Y$
  \draw (X) arc (0:\localAngle:\localRadius) circle (2pt) node[anchor=south] {$Y$};

% Elipse: Atento pelo uso de "and" quando indica os raios da elipse
  \draw (5,0) ellipse (0.5 and 1.0);
\end{tikzpicture}
\end{center}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

TambÃ©m podemos desenhar o grÃ¡fico das funÃ§Ãµes e curvas parametrizadas.
Veja o Exemplo~\ref{ex16:tikz:grafico}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte h}, label=ex:12-02:h]
\begin{ltxlisting}[caption={ex16-tikz-grafico.tex}, label=ex16:tikz:grafico]
\begin{center}
\begin{tikzpicture}[domain=-3.2:3.2]
%\draw[dotted] (-3.2,-1.2) grid (3.2,1.2);
\draw[-&gt;] (-3.5,0) -- (6.5,0) node[right] {$x$}; 
\draw[-&gt;] (0,-5.2) -- (0,2.2) node[above] {$y$};

% O angulo padrÃ£o serÃ¡ em graus. Para usar em radianos, acrescente " r" no parametro da funcao trigonometrica
\draw[smooth,color=blue,domain=-pi-0.1:pi+0.1] plot (\x,{sin(\x r)}) node[above] {$f(x) =\mathrm{sen}(x)$}; 

% Curvas em coordenada polar. O angulo padrao sera em graus. A funcao deg() converte radiano para grau (Ã© mesmo que colocar sufixo r)
\draw[smooth,color=red,domain=0:2*pi] plot ({deg(\x)}:\x) node[above] {$\rho(\theta) =\theta$}; 

% curvas parametricas.
% podera especificar o nome da variavel em vez de usar o padrao \x
\draw[smooth,color=green,domain=-1.8:1.8,variable=\t] plot ({cosh(\t)},{sinh(\t)}) node[above]{$\text{ramo de }x^2-y^2=1$};
\end{tikzpicture}
\end{center}
\end{ltxlisting} 
%\end{LTXexample}
%\end{singlespacing}

TambÃ©m podemos desenhar grÃ¡ficos da funÃ§Ã£o tabelada. 
No Exemplo~\ref{ex16:tikz:funcao:tabelada}, estÃ¡ usando a funÃ§Ã£o tabelada no arquivo de texto externo. 
Ele tambÃ©m faz o uso do laÃ§o \verb+\foreach+\index{foreach@\verb+\foreach+} para marcar valores sobre eixos.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte i}, label=ex:12-02:i]
\begin{ltxlisting}[caption={ex16-tikz-funcao-tabelada.tex}, label=ex16:tikz:funcao:tabelada]
\begin{center}
\begin{tikzpicture}
  % eixos
  \draw[-&gt;] (-2.5,0) -- (2.5,0) node[right] {$x$};
  \draw[-&gt;] (0,-0.5) -- (0,4.5) node[above] {$y$};

  % grid
  \draw[dotted] (-1,0) grid (1,1);
  \draw[dotted] (-2,0) -- (-2,4) -- (2,4) -- (2,0);
  
  % efetuando laco nos parametros para marcar escala
  \foreach \x in {-2,-1,1,2}   % sobre eixo x
    \node at (\x, 0) [below] {\x};
  \foreach \y in {1,4}   % sobre eixo y
    \node at (0,\y) [anchor=south west] {\y};

  % grafico tabelado no arquivo externo.
  % Note que tikz nÃ£o reconhece notaÃ§Ã£o cientÃ­fica
  % no arquivo de entrada.
  \draw[color=blue] plot[smooth] file {latex-via-exemplos-tabela.txt} node [right] {$y=x^2$};
\end{tikzpicture} 
\end{center}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

TambÃ©m podemos pintar, preencher com padrÃ£o e sombrear.
Veja Exemplo~\ref{ex16:tikz:pintar}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte j}, label=ex:12-02:j]
\begin{ltxlisting}[caption={ex16-tikz-pintar.tex}, label=ex16:tikz:pintar]
\begin{center}
\begin{tikzpicture}[scale=1.5] % podemos mudar a escala
% fill (pinta) e filldraw (pinta e desenha o contorno) podem ser usados para pintar. Outra forma Ã© passar o parÃ¡metro fill para draw.

\filldraw[fill=red!25,draw=blue] (5,0) rectangle (6,1);

% pattern preenche com padrao de preenchimento.
% Parametro draw eh para desenhar o contorno
\pattern[pattern=north east lines, draw=blue] (3,0) circle (1);

% usando a transparencia
% ++(coordenada) Ã© a coordenada anterior somado com este
\draw[fill=blue] (7,0) rectangle ++(1,1);
\draw[opacity=0.5,fill=red] (7,0) circle (0.7);

% sombra eh feito pelo shade e sombra com contorno com shadedraw (igual a shade com parametro draw)
% sombra pode ser degrade e aceita o sintaxe do xcolor (cor!percentual)
% Na funcao, \x^2 nao funciona. Deve ser (\x)^2.
\shade[domain=-1:1,top color=blue!25,bottom color=red!25,draw=red] plot (\x,{(\x)^2});

% fazendo tudo com draw
% Iterando num intervalo
\foreach \x in {0,...,9} \draw[red,pattern=north east lines,pattern color=red!25] (\x,-1.5) circle (0.3);
% Iternado sobre listas
\foreach \x in {0,1,3,4} \draw[fill=blue!25,draw=blue] (\x,-2.5) circle (0.3);
% contador com iteracao em letras
\foreach \x [count = \xi] in {a,...,c,A,B,...,D}
{
  \draw[shade, left color=blue!25, right color=red!25,draw=blue] (\xi,-3) -- (\xi+0.5,-3) -- (\xi,-4) -- cycle;
  \draw (\xi+0.25,-4) node{\x};
}
% iteracao na lista de pares
% ++(coordenada) Ã© a coordenada anterior somado com este
\foreach \x/\y [count = \i] in {0/0, 1/0, 2/0, 0/1, 1/1, 2/1}
{
  \draw[fill=yellow,draw=blue] (\x,{\y-6}) node[anchor=south west,draw,fill]{\i};
}
\end{tikzpicture}
\end{center}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para traÃ§ar grades, existe o comando \texttt{grid}\index{grid}. O Exemplo~\ref{ex16:tikz:grid} ilustra o seu uso para produzir papel milimetrado, cuja saÃ­da serÃ¡ omitida.
%
\begin{singlespacing}
\begin{lstlisting}[caption={ex16-tikz-grid.tex}, label=ex16:tikz:grid]
\begin{center}
\documentclass[a4paper]{article} 
% A4: 21cmx29.7cm
\usepackage[a4paper,lmargin=0.5cm,textheight=28.05cm,textwidth=19.05cm]{geometry}
\usepackage{tikz}
\pagestyle{empty}% sem enumeraÃ§Ã£o da pÃ¡gina
\begin{document}
\begin{tikzpicture}
\draw [black!20, very thin, step=0.1cm] (0,0) grid (19,28);
\draw [black!20, step=0.5cm] (0,0) grid (19,28);
\draw [black!20, step=1.0cm, thick] (0,0) grid (19,28);
\end{tikzpicture}
\end{document}
\end{center}
\end{lstlisting}
\end{singlespacing}
%
Na matriz do \texttt{tikz}, podemos desenhar sobre ele.
Veja Exemplo~\ref{ex16:tikz:matriz}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte k}, label=ex:12-02:k]
\begin{ltxlisting}[caption={ex16-tikz-matriz.tex}, label=ex16:tikz:matriz]
\begin{center}
\begin{tikzpicture} 
\matrix (A) [matrix of math nodes,left delimiter=[,right delimiter={]} ] 
{ 1 &amp; 2 &amp; -1 &amp; 5 \\
0 &amp; |[draw=red,circle]|3 &amp; 2  &amp; 1 \\
0 &amp; -2 &amp; \phantom{-}2  &amp; -4 \\
}; 
% separando a matriz da parte aumentada
\draw[thick,dashed,blue] (A-1-3.north east) -- (A-3-3.south east);
% limitando a parte escalonada
\draw[thick,dotted,blue] (A-2-1.north west) -- (A-2-1.north east) -- (A-3-1.south east);
% onde vai colocar a seta para pivÃ´
\coordinate (P) at ($(A-2-1)!-2!(A-2-2)$);
\coordinate (Q) at ($(A-2-1)!-1.3!(A-2-2)$);
% colocando a seta na linha de pivÃ´
\draw[-&gt;] (P) -- (Q);
\node at ($(P)!-1.2!(Q)$) {pivÃ´};
\end{tikzpicture}
\end{center}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Caso precisar de recursos mais avanÃ§ados de matriz, poderÃ¡ usar o pacote \texttt{nicematrix}\index{nicematrix}, baseado em \texttt{tikz}.


O diagrama comutativo Ã© uma espÃ©cie de tabela com comando \verb+\ar+\index{ar@\verb+\ar+} para desenhar setas. 
\verb+\ar+ Ã© seta e o primeiro parÃ¢metro opcional dele Ã© para que lado vai a seta (pode ser combinado). ``r'' (direita), ``l'' (esquerda), ``d'' (para baixo), ``u'' (para cima). 
TambÃ©m pode usar o ``\texttt{to=&lt;destino&gt;}'' para indicar a cÃ©lula diretamente. 
O rÃ³tulo, caso exista, deve ser delimitado entre aspas.

%No Exemplo~\ref{ex16:tikz:diagrama}, precisarÃ¡ tambÃ©m do pacote \texttt{amssymb} para o comando \verb+\circlearrowleft+\index{circlearrowleft@\verb+\circlearrowleft+}, mesmo com \texttt{unicode-math} no \XeLaTeX/Lua\LaTeX{} (Se estiver usando \XeLaTeX/Lua\LaTeX, carregue antes do \texttt{unicode-math}).
%No \texttt{unicode-math}, este sÃ­mbolo Ã© \verb+\acwgapcirclearrow+\index{acwgapcirclearrow@\verb+\acwgapcirclearrow+}, mas na versÃ£o atÃ© 2017, ele nÃ£o aparece. Isto porque, a fonte padrÃ£o ``Latin Modern Math'' ainda nÃ£o tem este sÃ­mbolo.


No Exemplo~\ref{ex16:tikz:diagrama}, foi usado o comando \verb+\circlearrowleft+\index{circlearrowleft@\verb+\circlearrowleft+} do pacote \texttt{amssymb}.
Se estiver usando o \texttt{unicode-math} no \XeLaTeX/Lua\LaTeX{}, poderÃ¡ definir como sendo \verb+\acwopencirclearrow+\index{acwopencirclearrow@\verb+\acwopencirclearrow+}.
Para isso, coloque o comando
\verb+\providecommand{\circlearrowleft}{\acwopencirclearrow}+
no \texttt{preamble} do documento.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte l}, label=ex:12-02:l]
\begin{ltxlisting}[caption={ex16-tikz-diagrama.tex}, label=ex16:tikz:diagrama]
\begin{center}
\begin{tikzcd}
A \ar[r, "\phi"] \ar[d, red] \ar[to=2-2, phantom, "\circlearrowleft" description] &amp; B \ar[d, "\psi" red] \\
C \ar[r, red, "\varphi" red, "\eta" {swap, blue}] &amp; D
\end{tikzcd}
% setas curvas
\begin{tikzcd}
A \ar[r, "\phi"] \ar[rr, "f", bend left, red] &amp; B \ar[r, "\psi", Rightarrow] &amp; C \ar[loop right]
\end{tikzcd}
% cruzando: necessÃ¡rio para diagrama 3D
\begin{tikzcd}
A \arrow[dr] &amp; B \arrow[dl, crossing over] \\
C &amp; D
\end{tikzcd}

\end{center} 
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O comando \verb+\ar+ (ou \verb+\arrow+) traÃ§a a seta de acordo com o seu parÃ¢metro. O primeiro argumento Ã© para onde vai (d = para baixo, r=para direita, l=para esquerda, u=par acima). TambÃ©m pode indicar origem e/ou destino pelo Ã­ndices ou rÃ³tulos, usando \verb+from+ e/ou ``\verb+to+'').

As bibliotecas para \texttt{tikz} Ã© extensa, cobrindo vÃ¡rios tipos de desenhos e diagramas.
Se precisar de algo desse tipo, consulte o material para ver se jÃ¡ tem a biblioteca pronta.

Para desenhar grÃ¡ficos de funÃ§Ãµes ou de dados em \texttt{2D} ou em \texttt{3D}, existe o pacote especializado \texttt{pgfplots}\index{pgfplots} que nÃ£o vamos discutir aqui.


%pgfplot? Nao veremos

\section{Mais um pouco sobre sobreposiÃ§Ã£o}

Para escrever/desenhar sobre a figura externa pronta, com frequÃªncia, existe o pacote \texttt{overpic}\index{overpic} que abre o ambiente \texttt{picture} e ajusta o \verb+\unitlength+ ao mesmo tempo. O padrÃ£o Ã© usar o valor de \verb+\unitlength+ como 1\% da maior escala da imagem.
O Exemplo~\ref{ex16:imagem:sobreposicao} produzirÃ¡ mesmo efeito do Exemplo~\ref{ex09:imagem:sobreposicao}.

% \setcounter{lstorichapter}{\value{chapter}}
% \setcounter{lstorisection}{\value{section}}
\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex09-04.tex},label=ex:09-04]
\begin{lstlisting}[caption={ex16-imagem-sobreposicao.tex},label=ex16:imagem:sobreposicao]
\begin{figure}[htbp!]
\center
% opÃ§Ã£o grid pode ser usado para produzir grade sobre a figura, facilitando encontrar a posiÃ§Ã£o correta sobre a imagem
%\begin{overpic}[width=0.45\linewidth,grid,tics=10]{latex-via-exemplos-fig}
\begin{overpic}[width=0.45\linewidth]{latex-via-exemplos-fig}
  \put(35,45){\LARGE $e^{\pi i}+1=0$}
\end{overpic}
\caption{Usando overpic\label{fig:overpic}}
\end{figure}
\end{lstlisting}
%\end{LTXexample}
\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}

Para sobrepor elementos mais complexos sobre a imagem, Ã© melhor usar o ambiente \texttt{tikzpicture} do pacote \texttt{tikz} (do que ambiente \texttt{picture}), como no Exemplo~\ref{ex16:imagem:sobreposicao:tikz}.

\begin{ltxlisting}[caption={ex16-imagem-sobreposicao-tikz.tex},label=ex16:imagem:sobreposicao:tikz]
\begin{figure}[htbp!]
\center
\def\picunit{0.45\textwidth} % unidade nesta figura
\begin{tikzpicture}[x=\picunit, y=\picunit]
  \node[anchor=south west,inner sep=0] (image) at (0,0)
   {\includegraphics[width=\picunit]{latex-via-exemplos-fig}};
  % grid (grade) serve para localizar a posiÃ§Ã£o correta sobre a imagem
  %\draw[step=0.1] (0,0) grid (1,1);
  \node[anchor=south west,inner sep=0] at (0.35,0.45) {\LARGE $e^{\pi i}+1=0$};
\end{tikzpicture}
\end{figure}
\end{ltxlisting}

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Produzindo \texttt{Poster} e \texttt{Slides}}

\section{\texttt{Poster}}

Para quem quer produzir o \texttt{poster} diretamente no \LaTeX, a maneira mais prÃ¡tica Ã© diagramar com um quarto (metade de largura e altura) do tamanho desejado, usando letra 12pt. 
ApÃ³s finalizar, amplie o poster para produzir no tamanho real. 
Com tal procedimento, os caracteres serÃ£o ampliados para equivalentes a 24pt. 
Use a fonte \texttt{Sans Serif} para poster.
Caso de precisar usar a fonte romana, aumente o tamanho de caracteres em torno de 20\%.

Por exemplo, para poster final de 100x120cm, dimensione para 50x60cm, para dimensÃ£o final de A0, dimensione para A2, etc.

Para criar ``layout'' de divisÃ£o em colunas e similares, use o ambiente \texttt{multicols} (do pacote \texttt{multicol}) e \texttt{minipage}. 
O enfeite das ``caixas de texto'' podem ser feitos usando caixas como o \verb+\fbox+.

No Exemplo~\ref{ex17:poster}, foi usado o pacote \texttt{lipsum} para preencher o espaÃ§o com texto para ver como fica a aparÃªncia do poster. 

% \LTXinputExample{latex-via-exemplos-poster}
\begin{singlespacing}
% \lstinputlisting[caption={ex11-12.tex},label=ex:11-12]{latex-via-exemplos-poster}
\lstinputlisting[caption={ex17-poster.tex},label=ex17:poster]{latex-via-exemplos-poster}
\end{singlespacing}
%
\begin{framed}
\center
\includegraphics[width=0.7\linewidth]{latex-via-exemplos-poster}
\end{framed}

Se quer usar \LaTeX{} para produzir material publicitÃ¡rio como posters, jormais, revistas e livros ilustrados com a qualidade profissional, o pacote \texttt{flowfram}\index{flowfram} Ã© o pacote adequado.
 AlÃ©m da sua qualidade final, a facilidade e a versatilidade costumam ser superiores aos pacotes similares.
 
 Para criar \texttt{layout} complexos que inclui caixas nÃ£o retangulares, poderÃ¡ usar o programa livre e multi plataforma \texttt{flowframtk}\index{flowframtk} disponÃ­vel no site
\url{http://www.dickimaw-books.com/latex/admin/html/flowfram.shtml}

Para quem estiver acostumado a usar o pacote \texttt{beamer} (pacote para produzir slides de apresentaÃ§Ã£o), o pacote \texttt{beamerposter}\index{beamerposter} Ã© interessante para produzir poster com cara de apresentaÃ§Ã£o em \texttt{beamer}.
 
Em vez de usar o \LaTeX, poderÃ¡ usar aplicativos grÃ¡ficos para criar poster ou similares.
Para posters cientÃ­ficos, ideal que o aplicativo tenha suporte ao \LaTeX{} como no caso do editor grÃ¡fico \texttt{inkscape}\index{inkscape} e editor para publicaÃ§Ãµes \texttt{scribus}\index{scribus}, ambos livres e multi plataforma.

Para aumentar o poster diagramado com fontes 12pt, como do Exemplo~\ref{ex17:poster}, podemos usar o aplicativo livre e multi plataforma \texttt{jPDFTweak}\index{jPDFTweak} que Ã© um aplicativo para pÃ³s produÃ§Ã£o de documentos PDF, disponÃ­vel em \url{http://jpdftweak.sourceforge.net/}.

Entre vÃ¡rias funÃ§Ãµes importantes deste aplicativo, vamos usar o redimensionamento para ampliar o poster.

No \texttt{jPDFTweak}:

\begin{enumerate}
\item indique o arquivo de entrada em ``input''.
\item indique o arquivo de saÃ­da em ``output''.
\item em [page size], cheque o ``[v] scale pages'' e selecione o tamanho da pÃ¡gina como ``Page size'' = ``escala dobro do original''.
\item clique no [run]
\end{enumerate}

\textbf{ObservaÃ§Ã£o:} Para dobrar a escala no papel \texttt{ISO}, 
escolha dois nÃºmeros para baixo. 
Por exemplo, se o original estiver em \texttt{A2 landscape}, escolha \texttt{A0 landscape}. 
Caso a medida do papel estiver em centÃ­metros, dobre o valor e em seguida, multiplique por $72/2.54$ para converter em \texttt{postscript point} que \texttt{jPDFTweak} usa na largura e na altura do papel. 
Por exemplo, se o original estiver com $\SI{45}{\cm}\times\SI{60}{\cm}$, 
vamos colocar $90\times 72/2.54=2551.18$ e $120\times 72/2.54=3401.57$
para largura e altura respectivamente.

\section{\texttt{Slides}}

Para criar apresentaÃ§Ãµes, costuma usar a classe \texttt{beamer}\index{beamer}.

Algumas opÃ§Ãµes da classe \texttt{beamer} sÃ£o tamanho da fonte (normalmente usa 12pt, embora suporta o tamanho maior),
\texttt{handout} (para impressÃ£o. Ignora o \texttt{overlay}), \texttt{notes} (incluir notas), \texttt{notesonly} (somente notas).

A classe \texttt{beamer} usa uma Ã¡rea reduzida com letra normal que serÃ¡ ampliado quando projetar na tela.
Assim, costuma usar a fonte de tamanho 12pt.

Nesta classe, cada tela de slide serÃ¡ delimitado pelo ambiente \texttt{frame}\index{frame}. 
Tem a versÃ£o comando do \texttt{frame}\index{frame@\verb+\frame+} tambÃ©m, para ser usado quando tem poucos comandos contidos nele, como no caso de tÃ­tulo e sumÃ¡rio.

O tema (modelo) de slides Ã© escolhido pelo comando
\verb+\usetheme+\index{usetheme@\verb+\usetheme+}.
Tema que vem como padrÃ£o sÃ£o:
\texttt{AnnArbor, Antibes, Bergen, Berkeley, Berlin, Copenhagen,
Darmstadt, Dresden, Frankfurt, Goettingen, Hannover,
Ilmenau, JuanLesPins, Luebeck, Madrid, Malmoe,
Marburg, Montpellier, PaloAlto, Pittsburgh, Rochester,
Singapore, Szeged, Warsaw, boxes, default
e CambridgeUS}.

Para cada tema, ainda podemos escolher o tema de cores, ou combinaÃ§Ã£o de cores a serem usados, escolhidos pelo comando \verb+\usecolortheme+\index{usecolortheme@\verb+\usecolortheme+}. 
Tema de cores padrÃ£o que vem sÃ£o: 
\texttt{default, albatross, beaver, beetle, crane, dolphin, dove, fly, lily, orchid, rose, seagull, seahorse, whale e wolverine}.

Para ver como ficarÃ¡ a combinaÃ§Ã£o do tema e tema de cores, poderÃ¡ consultar o 
\url{https://hartwork.org/beamer-theme-matrix/}.

Ã‰ pouco usado, mas ainda podemos alterar as combinaÃ§Ãµes das fontes com o comando \verb+\usefonttheme+\index{usefonttheme@\verb+\usefonttheme+}. 
Tema de fontes padrÃ£o sÃ£o: 
\texttt{default, serif, professionalfonts, structurebold,
 structureitalicserif, structuresmallcapsserif}.
Em geral, usa-se o comando \verb+\setbeamerfont+\index{setbeamerfont@\verb+\setbeamerfont+} para configurar fontes de seus elementos do que escolher um tema para fontes (combinaÃ§Ã£o de fontes).

A classe \texttt{beamer} carrega o pacote \texttt{hyperref} por padrÃ£o.
EntÃ£o podemos configurar alguns aspectos sobre informaÃ§Ãµes do \texttt{PDF} com o \verb+\hypersetup+, mas isto nÃ£o Ã© obrigatÃ³rio.

Para criar slide de tÃ­tulos ou quando estiver usando tema que usa tÃ­tulos, autores, etc, precisarÃ¡ informar o titulo, autor, instituiÃ§Ã£o e data, respectivamente pelos comandos \verb+\title+, \verb+\author+, \verb+\institute+ e \verb+\date+.
Quando tiver mais de um autor, separe com \verb+\and+. 
O comando \verb+\inst+ dentro do \verb+\author+ e \verb+\institute+ faz a ligaÃ§Ã£o de autor com o instituto correspondente.

Os elementos do slide pode ser alterado pelo comando \verb+\setbeamertemplate+\index{setbeamertemplate@\verb+\setbeamertemplate+}.
Para criar degrade no fundo do slide, costuma usar o recurso do pacote \texttt{tikz}.
Note que \texttt{xcolor} Ã© carregado pelo \texttt{beamer} por padrÃ£o.
O comando \verb+\setbeamertemplate+ tambÃ©m pode ser usado para desativar os botÃµes de navegaÃ§Ã£o.

Os comandos \verb+\maketitle+ e \verb+\tableofcontents+ funcionam normalmente. 
Note que o sumÃ¡rio Ã© construÃ­do a partir de \texttt{section} e nÃ£o pelo \texttt{frame}.
Assim, para ter o sumÃ¡rio, deverÃ¡ colocar \verb+\section+ entre os \texttt{frame}'s no local desejado.

Cada \texttt{slide} (tela) Ã© criado pelo ambiente \texttt{frame}\index{frame} ou comando \verb+\frame+\index{frame@\verb+\frame+}.
O ambiente \texttt{frame} aceita o comando \verb+\frametitle+\index{frametitle@\verb+\frametitle+} para colocar tÃ­tulos.

O comando \verb+\note+\index{note@\verb+\note+} serve para inserir notas adicionais que nÃ£o sÃ£o colocados no \texttt{slide}, mas podem ser gerados e impressos com a opÃ§Ã£o \texttt{notes} ou \texttt{notesonly} na opÃ§Ã£o da classe, para auxiliar na apresentaÃ§Ã£o.

%Note que existe a versÃ£o ambiente de \texttt{note}\index{note} para anotaÃ§Ãµes maiores, mas ele sÃ³ funciona fora do \texttt{frame} (a versÃ£o comando funciona tanto dentro como fora do \texttt{frame}).
% NÃ£o estÃ¡ funcionando na versÃ£o 2016. Testar na versÃ£o mais recente.

As notas adicionadas fora do \texttt{frame} serÃ¡ assumido que do \texttt{frame} anterior.

O Exemplo~\ref{ex17:slides} ilustra um slide e uma das telas do slide gerado pelo cÃ³digo listado. 
Nele, foi usado o pacote \texttt{lipsum} para preencher alguns slides.

\begin{singlespacing}
%\lstinputlisting[caption={ex12-01.tex},label=ex:12-01]{latex-via-exemplos-slides}
\lstinputlisting[caption={ex17-slides.tex},label=ex17:slides]{latex-via-exemplos-slides}
\end{singlespacing}
%
\begin{framed}
\center
\includegraphics[page=7, width=0.7\linewidth]{latex-via-exemplos-slides}
\end{framed}

Note que, nos itens de listas, aceitam o parÃ¢metro opcional de ``\texttt{overlay}''\index{overlay} delimitado por ``&lt;'' e ``&gt;''. 
Com o uso de \texttt{overlay}, o \texttt{slide} serÃ¡ apresentado por etapas. 
Em cada etapa do \texttt{overlay}, serÃ¡ mostrado uma parte do \texttt{slide}. 
O mais usado Ã© ir mostrando cada vez mais elemento na medida que etapa avanÃ§a (andar no \texttt{slide}).

A especificaÃ§Ã£o do \texttt{overlay} sÃ£o:
\begin{description}
\item[&lt;n&gt;] indica que serÃ¡ mostrado somente na etapa n.
\item[&lt;m-n&gt;] Ã© mostrado somente nas etapas m atÃ© n.
\item[&lt;n-&gt;] Ã© mostrado nas etapas n em diate.
\item[&lt;-n&gt;] Ã© mostrado atÃ© as etapas n.
\end{description}

Os comandos de formataÃ§Ã£o de textos do tipo \verb+\textsf{}+, \verb+\textbf{}+, \verb+\emph+, etc, tambÃ©m aceitam a opÃ§Ã£o de \texttt{overlay}.
TambÃ©m foi acrescido o comando \verb+\alert+ neste conjunto para deixar o texto em vermelho.

Para criar \texttt{overlay} nas partes desejadas que nÃ£o Ã© necessariamente itens da lista ou formataÃ§Ã£o de texto,
existe o comando \verb+\only+\index{only@\verb+\only+} que mostra o conteÃºdo somente no \texttt{overlay} indicado.

TambÃ©m tem o ambiente chamado de \texttt{block}\index{block} que produz ``bloco'' com ou sem tÃ­tulos e aceita ``overlay''.

No \texttt{frame}, alguns parÃ¢metros opcionais podem ser usados.
Alguns dos mais importantes sÃ£o
\begin{description}
\item[fragile] NecessÃ¡rio quando usa o ambiente \texttt{verbatim} ou similar.
\item[allowframebreaks] Ativa a quebra automÃ¡tica de  \texttt{frame}'s quando o conteÃºdo nÃ£o cabe no \texttt{frame} atual.
\item[plain] Limpa as configuraÃ§Ãµes (cabeÃ§alhos e rodapÃ©s) do \texttt{frame} para caber mais conteÃºdos. Ãštil para figuras e tabelas grandes.
\item[shrink] Reduz o tamanho do conteÃºdo para caber no \texttt{frame} atual, se necessÃ¡rio. Isto pode reduzir o tamanho da letra e por isso, deve ser usado com muita cautela. Use em conjunto com \texttt{plain} para ampliar a Ã¡rea de \texttt{slide}.
\end{description}

%Note que \BibTeX{} nÃ£o funciona no \texttt{beamer}.
%Assim, deverÃ¡ criar manualmente a referÃªncia bibliogrÃ¡fica com o ambiente \texttt{thebibliography}.

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Usando  \XeLaTeX{} e Lua\LaTeX{}}
Aqui serÃ¡ tratado sobre \XeLaTeX{} e Lua\LaTeX{}, considerado as prÃ³ximas geraÃ§Ãµes de \LaTeX.

\section{Lua\LaTeX{} e \XeLaTeX}

O Lua\LaTeX{}\index{LuaLaTeX@{Lua(La)\TeX}} foi designado para ser o sucessor do PDF\LaTeX{} e por isso, deve ser o \LaTeX{} padrÃ£o no futuro, mas pode ser um pouco mais lento do que o \XeLaTeX.
AtÃ© o momento (2018), o \XeLaTeX{}\index{XelaTeX@{Xe(La)\TeX}} Ã© considerado mais estÃ¡vel do que Lua\LaTeX.
Lua(La)\TeX{} permite estender a funcionalidade do (La)\TeX{} usando a linguagem script \texttt{Lua} (\texttt{Lua} foi desenvolvido no PUC-Rio, aqui no Brasil).

JÃ¡ existem pacotes especiais para Lua\LaTeX{} como o mÃ³dulo de diagramaÃ§Ã£o automÃ¡tica de grafos no \texttt{pgf/tikz}.
O suporte ao recurso de microtipografia (efetuar pequenos ajustes no tamanho das letras e espaÃ§amento para que texto acomode melhor) pelo pacote \texttt{microtype} tambÃ©m funciona melhor com Lua\LaTeX{} do que em \XeLaTeX.

A maioria dos documentos de \LaTeX{} devem funcionar sem modificaÃ§Ãµes no \XeLaTeX/Lua\LaTeX, mas para usar as fontes adicionais em Open Type, ou as fontes do sistema, devem usar a forma prÃ³pria de selecionar as fontes. 
%No caso em que a fonte selecionada contiver sÃ­mbolos matemÃ¡ticos suficientes, costuma usar o \texttt{unicode-math}\index{unicode-math} em vez dos \texttt{amssymb} e \texttt{amsmath}.
%Caso precisar de alguns sÃ­mbolos de \texttt{amssymb} ou comandos de \texttt{amsmath}, carregue antes do \texttt{unicode-math}.

%PDFLaTeX e XeLaTeX/LuaLaTeX usa esquema diferente para seleÃ§Ã£o de fontes e podem usar esquema diferente tambÃ©m para a seleÃ§Ã£o de idiomas.

A forma de ajustar a codificaÃ§Ã£o de documento fonte no \LaTeX, \XeLaTeX{} e Lua\LaTeX{} diferem, mas como \XeLaTeX{} e Lua\LaTeX{}  usam \texttt{uft8} como padrÃ£o, nÃ£o vamos preocupar com isso.
SÃ³ no \LaTeX{} que precisarÃ¡ especificar, usando o pacote \texttt{inputenc}.

Embora \texttt{babel} funcione no \XeLaTeX/Lua\LaTeX{} tambÃ©m, no Exemplo~\ref{ex18:lualatex} foi usado o \texttt{polyglossia}\index{polyglossia} feito especialmente para \XeLaTeX/Lua\LaTeX. 
%Ainda (2018) Ã© cedo para saber se \texttt{babel} ou \texttt{polyglossia} vai ficar como pacote recomendÃ¡vel para \XeLaTeX/Lua\LaTeX.

Embora maioria dos pacotes de fontes do \LaTeX{} funcione no \XeLaTeX/Lua\LaTeX, no Exemplo~\ref{ex18:lualatex}, foi usado o mÃ©todo prÃ³prio deles que permite selecionar fontes adicionais, inclusive as fontes do sistema.

Se a fonte usada contiver sÃ­mbolos matemÃ¡ticos, use \texttt{unicode-math} em vez do \texttt{amssymb}/\texttt{amsmath}.
Se precisar dos sÃ­mbolos ou comandos de \texttt{amssymb} e \texttt{amsmath}, carregue eles antes do \texttt{unicode-math}.

% O coamdo \DeclareMathOperator do amsmath nao esta no unicode-math.

Note que os pacotes e comandos do \LaTeX{} padrÃ£o, exceto o \texttt{inputenc} costumam funcionar no \XeLaTeX{} e Lua\LaTeX, mas nÃ£o o contrÃ¡rio.
Assim, para que o documento possa ser compilado tanto em PDF\LaTeX{} como em \XeLaTeX/Lua\LaTeX, poderÃ¡ usar o pacote \texttt{iftex}\index{iftex} para detectar a engenharia do \TeX{} em uso.


% O xunicode estÃ¡ obsoleto devido a funcionalidade incorpolado no fontsppec.
% No LuaLaTeX, ate pode dar erros caso usar este pacote.

%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
% \let\orilabel\label
\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex06-08.tex, parte b},label=ex:06-08:b,preset={\setcounter{chapter}{1},\setcounter{section}{0},\let\addcontentsline\emptyaddcontentsline}]
%\begin{lstlisting}[caption={ex12-04.tex},label=ex:12-04]
\begin{lstlisting}[caption={ex18-lualatex.tex},label=ex18:lualatex]
\documentclass[a4paper,12pt]{article}

\usepackage{iftex} % Para detectar engenharia de TeX

\ifPDFTeX % Se (PDF)LaTeX
  \usepackage[T1]{fontenc} % codificaÃ§Ã£o da fonte em 8-bits
  \usepackage[utf8]{inputenc} % acentuaÃ§Ã£o direta
  \usepackage[english,brazil]{babel} % em portugues brasileiro (ingles como secundario)
    
  \usepackage{lmodern} % latin Modern (Computer modern com extensao latin)
  
  % \usepackage{noto} % fonte Noto patrocinado pelo Goggle
  % \usepackage[italic]{mathastext} % A fonte Noto nao possui fontes matematicos ainda
  
  \usepackage{textcomp}
  \usepackage{amssymb,amsmath}
  
\else % Se XeLaTeX/LuaLaTeX
  \usepackage{polyglossia}
  \setdefaultlanguage{brazil}
  \setotherlanguage{english} % secundario
  
  % Estas fontes sÃ£o padrÃµes e nÃ£o precisavam especificar. Foram colocados somente para ilustrar
  % No caso de XeLaTeX, se a fontes correspondentes nÃ£o estiver isntalados no sistema operacional, pode nÃ£o funcionar. Comente. 
  \setmainfont{Latin Modern Roman}
  \setsansfont{Latin Modern Sans}
  \setmonofont{Latin Modern Mono}
  % Se precisar do amssymb,amsmath, deverÃ£o carregar antes do unicode-math
  % \usepackage{amssymb,amsmath}
  
  \usepackage{unicode-math} % amsmath, amssymb equiv.
  \ifLuaTeX % Somente LuaLaTeX
    \usepackage{lualatex-math} % alguns fix do amsmath/mathtools equiv. para LuaLaTeX.
  \fi
  \setmathfont{Latin Modern Math} % PadrÃ£o e nÃ£o precisava. Foi colocado somente para ilustraÃ§Ã£o
  
  % Fonte Noto Serif nÃ£o tem fontes matemÃ¡ticos ainda
  %\setmainfont[Ligatures=TeX]{NotoSerif}
  %\setsansfont{NotoSans}
  %\setmonofont{NotoMono}
  % Asana math (Palatino like)
  % \setmathfont{Asana-Math}
  % STIX (Times like font)
  %\setmainfont[Ligatures=TeX]{STIX}
  %\setmathfont{STIX Math}
  %% XITS (Times like font)
  %\setmainfont[Ligatures=TeX]{XITS}
  %\setmathfont{XITS Math}
\fi

% Mais alguns pacotes
\usepackage[margin=2.5cm]{geometry}
\usepackage{hyperref}
\hypersetup{
  bookmarks=true
}
\usepackage[stretch=10]{microtype} % microtipografia: funciona no PDFLaTeX e LuaLaTeX (parcialmente em XeLaTeX)

\begin{document}
O Lua\LaTeX{} foi designado para ser o sucessor do PDF\LaTeX{} e por isso, deve ser o \LaTeX{} padrÃ£o no futuro. Por outro lado, XeLaTeX e mais rÃ¡pido e estÃ¡vel (2018).

\ldots

Se $F'(x)=f(x)$ for contÃ­nua, 
\[
\int_a^bf(x)dx = F(b) - F(a)
\]
\end{document}
\end{lstlisting}
\end{singlespacing}
%\let\ref\oriref
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%% \addtocounter{chapter}{-1}
%\let\addcontentsline\oriaddcontentsline

%\begin{singlespacing}
%\begin{framed}
\begin{ltxlistingout}
O Lua\LaTeX{} foi designado para ser o sucessor do PDF\LaTeX{} e por isso, deve ser o \LaTeX{} padrÃ£o no futuro. Por outro lado, Xe\LaTeX{} e mais rÃ¡pido e estÃ¡vel (2018).

\ldots

Se $F'(x)=f(x)$ for contÃ­nua, 
\[
\int_a^bf(x)dx = F(b) - F(a)
%\vspace*{-1.5\baselineskip}
\]
\end{ltxlistingout}
%\end{framed}
%\end{singlespacing}

O usuÃ¡rio de \texttt{MS Windows} devem ficar atentos pelo fato de que a fonte ``Latin Modern Math'' usada no Exemplo~\ref{ex18:lualatex} nÃ£o vem instalado por padrÃ£o no Mik\TeX{} BÃ¡sico.
Como \XeLaTeX/Lua\LaTeX{} acessa as fontes diretamente sem usar os pacotes, costuma precisar a instalaÃ§Ã£o manual do pacote \texttt{lm-math} usando o gerenciador do Mik\TeX.

Existem algumas fontes \texttt{Open Type} com suporte a matemÃ¡tica que podem ser usados no \XeLaTeX/Lua\LaTeX.
O site 

\noindent
\url{https://www.overleaf.com/help/193-what-otf-slash-ttf-fonts-are-supported-via-fontspec} lista algumas delas (com suporte aos sÃ­mbolos matemÃ¡ticos).

\begin{itemize}
\item \texttt{Cambria Math} (Microsoft, somente Windows).
\item \texttt{Latin Modern Math} (BogusÅ‚aw Jackowski, Janusz M. Nowacki). PadrÃ£o do \XeLaTeX/Lua\LaTeX.
\item \texttt{TeX Gyre Pagella Math} (BogusÅ‚aw Jackowski, Janusz M. Nowacki).
\item \texttt{TeX Gyre Termes Math}.
\item \texttt{Asana Math} (Apostolos Syropolous), Estilo \texttt{Palatino}.
\item \texttt{Neo Euler} (Khaled Hosny).
\item \texttt{STIX} (STI Pub).
\item \texttt{XITS Math} (Khaled Hosny).
\end{itemize}
% Outros: TeX Gyre Bonum Math, TeX Gyre Schola Math, 

Note que a fonte \verb+\mathcal+ e \verb+\mathbb+ do \texttt{unicode-math} Ã© diferente do \texttt{amssymb}.
O \verb+\mathbb+ Ã© mais prÃ³ximo do \verb+\mathds+ do \texttt{dsfont} e \verb+\mathcal+ Ã© mais parecido com do pacote \texttt{eucal} do que de \texttt{amssymb}.

Quem quer usar a versÃ£o do \texttt{amssymb}, poderÃ¡ colocar
\begin{singlespacing}
\begin{lstlisting}
\let\mathcal\relax % remove the definition by unicode-math
\DeclareMathAlphabet{\mathcal}{OMS}{cmsy}{m}{n}
\let\mathbb\relax % remove the definition by unicode-math
\DeclareMathAlphabet{\mathbb}{U}{msb}{m}{n}
\end{lstlisting}
\end{singlespacing}
no \texttt{preamble}, apÃ³s carregar o \texttt{unicode-math}.

Note que, nem todos os sÃ­mbolos do \texttt{unicode-math} costumam estar presentes na fonte utilizada.
Quando a fonte utilizada nÃ£o apresentar os sÃ­mbolos correspondentes aos comandos de \texttt{unicode-math}, o sÃ­mbolo simplesmente nÃ£o aparece, sem emitir mensagens de erro, o que requer cuidados.
Neste caso, deverÃ¡ complementar com outras fontes, ou procurar sÃ­mbolos alternativos.
Por exemplo, carregar o pacote \texttt{amssymb} antes do \texttt{unicode-math} complementa com os sÃ­mbolos de \texttt{AMS}.

\begin{remark}
AlÃ©m das melhores suportes das fontes, existem vÃ¡rios pacotes especÃ­ficos para \XeLaTeX{} e Lua\LaTeX, como no caso de \texttt{luavlna}\index{luavlna} (para Lua\LaTeX) e \texttt{xevlna}\index{xevlna} (para \XeLaTeX) que impedem que as palavras de uma sÃ³ letra ou similar, fiquem no final das linhas, o que ajudam na finalizaÃ§Ã£o do livro, em conjunto com o \texttt{microtype}.
\end{remark}

\section[Fontes no \XeLaTeX/Lua\LaTeX]{Mais sobre bÃ¡sicos das fontes no \XeLaTeX/Lua\LaTeX}

No \XeLaTeX/Lua\LaTeX, poderÃ¡ redigir em qualquer idioma desde que esteja utilizando as fontes que suportam tais idiomas.
Assim, quando redige o documento multi lingue, basta definir qual fontes serÃ¡ usado em qual trecho.
Para facilitar a especificaÃ§Ã£o de fontes em cada trecho de textos, costuma definir famÃ­lia de fontes usando \verb+\newfontfamily+\index{newfontfamily@\verb+\newfontfamily+} do pacote \texttt{fontspec}\index{fontspec}. 
Ele define comandos para usar a fonte especificada com as configuraÃ§Ãµes tambÃ©m especificadas, que funcionam como outros comandos de seleÃ§Ã£o de famÃ­lias de fontes prÃ© definidos tais como \verb+\rmfamily+, \verb+\sffamily+, etc.

Por exemplo,
\begin{singlespacing}
\begin{lstlisting}
\newfontfamily{\notorm}{Noto Serif}
\newcommand{\textnotorm[1]{{\notorm #1}}
\newfontfamily{\notosf}{Noto Sans}
\newcommand{\textnotosf[1]{{\notosf #1}}
\end{lstlisting}
\end{singlespacing}
%
definem comandos \verb+\notorm+ e \verb+\notosf+ para usar fontes \texttt{Noto Serif} e \texttt{Noto Sans}.
O \verb+\newcommand+ foi usado para criar a versÃ£o \verb+\textxx+ que sÃ£o \verb+\textnotorm+ e \verb+\textnotosf+ respectivamente.
Note o uso de chave dupla para que a configuraÃ§Ã£o da fonte nÃ£o ``vaze'' para fora.

Para usar fontes nÃ£o definidos anteriormente, poderÃ¡ usar o comando \verb+\fontspec+\index{fontspec@\verb+\fontspec+} para selecionar a fonte especificada.

Apesar de poder configurar a especificaÃ§Ã£o da fonte com o parÃ¢metro opcional dos comandos de seleÃ§Ã£o das fontes e definiÃ§Ãµes de famÃ­lia de fontes,
isto tambÃ©m pode ser efetuado separadamente pelo comando \verb+\defaultfontfeatures+\index{defaultfontfeatures@\verb+\defaultfontfeatures+} para especificar recursos das fontes. 
O parÃ¢metro opcional serÃ¡ usado para indicar o nome da fonte que estÃ¡ especificando.
Por exemplo,
\begin{singlespacing}
\begin{lstlisting}
\defaultfontfeatures[Noto Serif]{Ligatures=TeX}
\end{lstlisting} 
\end{singlespacing}
Especifica que no \texttt{Noto Serif}, serÃ¡ usado a ligadura no modo \TeX.
AlÃ©m de indicar nome das fontes, poderÃ¡ indicar pelo comando de famÃ­lia das fontes como em
\begin{singlespacing}
\begin{lstlisting}
\defaultfontfeatures[\rmfamily,\sffamily]{Ligatures=TeX}
\end{lstlisting} 
\end{singlespacing}
especifica que na fonte \texttt{romana} e \texttt{sans serif}, serÃ¡ usado a ligadura padrÃ£o do \TeX. 

Para limpar a especificaÃ§Ã£o das fontes, basta usar como
\begin{singlespacing}
\begin{lstlisting}
\defaultfontfeatures[\rmfamily,\sffamily]{}
\end{lstlisting} 
\end{singlespacing}
%
O comando \verb+\defaultfontfeatures+\index{defaultfontfeatures*@\verb+\defaultfontfeatures*+} tem a versÃ£o ``+'' que acrescenta a especificaÃ§Ã£o em vez de substituir.
O comando \verb+\addfontfeature+\index{addfontfeature@\verb+\addfontfeature+} pode ser usado para ajustar localmente a especificaÃ§Ã£o. 
Coloque entre chaves para especificaÃ§Ã£o adicional seja aplicado somente no trecho.

Quando lida com vÃ¡rias fontes no \XeLaTeX/Lua\LaTeX, as vezes Ã© importante checar se a fonte existe.
\verb+\IfFontExistsTF+\index{IfFontExistsTF@\verb+\IfFontExistsTF+} do pacote \texttt{fontspec} checa se a fonte do primeiro parÃ¢metro existe. 
Caso existir, executarÃ¡ o segundo parÃ¢metro e caso nÃ£o existir, executa o terceiro parÃ¢metro.
O comando a seguir configura a fonte principal para \texttt{Noto Serif} caso ela existir.
\begin{singlespacing}
\begin{lstlisting}
\IfFontExistsTF{Noto Serif}{\setmainjfont{Noto Serif}}{%
  \PackageWarning{\jobname.tex}{Noto Serif not found. Using default fonts}
\end{lstlisting} 
\end{singlespacing}
% O comando \IfFontExistisTF nao esta disponivel no fontspec de 2016.

Ir testando vÃ¡rias fontes com este comando atÃ© achar uma disponÃ­vel na lista Ã© trabalhoso. 
Assim, para procurar fontes na lista, costuma usar o pacote \texttt{iffont}\index{iffont}. 
Ele implementa o comando \verb+\settofirstfound{\nomefonte}{&lt;fontes&gt;}+\index{settofirstfound@\verb+\settofirstfound+} onde \texttt{&lt;fontes&gt;} Ã© lista de nome das fontes, separado pela vÃ­rgula.
Ele associa ao comando \verb+\nomefonte+, o nome da primeira fonte encontrada na lista, o que pode ser usado para selecionar ou definir famÃ­lia de fontes.
Caso nenhuma fonte existir, retorna o valor de \verb+\@iffont@firstfont+ que estÃ¡ como a Ãºltima fonte encontrada anteriormente (se ainda nÃ£o existe a fonte encontrada, serÃ¡ a fonte \texttt{Fira Sans}). % marÃ§o de 2018
Em geral, coloca-se o nome de uma fonte existente no final da lista para evitar de cair no \verb+\@iffont@firstfont+  que nem sempre Ã© desejÃ¡vel.

% No xelatex/lualatex recente, funciona corretamente
%No entanto, \texttt{iffont} nÃ£o funciona devidamente no \XeLaTeX/Lua\LaTeX{} recente.
%% sÃ³ funciona no \XeLaTeX{} (testados nas versÃµes 2016 e marÃ§o de 2018). 
%Para que as funÃ§Ãµes do \texttt{iffont} funcione devidamente,
%%no Lua\LaTeX, 
%reescreva o comando \verb+\@iffont@checkfont+ usando o \verb+\IfFontExistisTF+ do pacote \texttt{fontspec} como em
%\begin{singlespacing}
%\begin{lstlisting}
%...
%\usepackage{iftex}
%...
%\usepackage{iffont}
%% patch
%% \usepackage{etoolbox} % iffont ja carregou
%\let\iffontexists\IfFontExistsTF
%\makeatletter
%  \renewcommand{\@iffont@checkfont}[1]{
%    \IfFontExistsTF{#1}{
%      \nottoggle{@iffont@fontfound}{%
%        \renewcommand{\@iffont@firstfont}{#1}
%        \toggletrue{@iffont@fontfound}
%      }{}
%    }{\stepcounter{@iffont@fontsnotfound} }
%  }
%\makeatother
%\end{lstlisting}
%\end{singlespacing}
%
%Com este ajuste, os comandos de \texttt{iffont} vÃ£o funcionar devidamente.%no Lua\LaTeX{} tambÃ©m.

Por exemplo, o cÃ³digo
\begin{singlespacing}
\begin{lstlisting}
\settofirstfound{\mainfont}{Noto Serif, Latin Modern Serif}
\setmainfont{\mainfont}
\end{lstlisting}
\end{singlespacing}
%
configura para usar o ``Noto Serif'' como fonte padrÃ£o caso existir. Caso ele nÃ£o for encontrado, usa-se a fonte ``Latin Modern Serif'' que deve estar presente na instalaÃ§Ã£o padrÃ£o do \TeX. No caso de \XeLaTeX, se a fonte ``Latin Modern Serif'' nÃ£o estiver instalado no sistema operacional, nÃ£o vai encontrar. Assim, poderÃ¡ colocar ``[lmroman12-regular]'' ou similar no lugar.

Se o que quer Ã© saber se a fonte existe, o \texttt{iffont} tambÃ©m implementa os comandos \verb+\iffontsexist+\index{iffontsexist@\verb+\iffontsexist+} e \verb+\iffontexists+\index{iffontexists@\verb+\iffontexists+} na qual executa o segundo parÃ¢metro quando fonte existe e terceiro parÃ¢metro quando a fonte nÃ£o existe.
A diferenÃ§a Ã© que no \verb+\iffontsexist+, o parÃ¢metro Ã© uma lista de nome das fontes separado pela vÃ­rgula (e executa o segundo parÃ¢metro se todas as fontes da lista existirem) e no \verb+\iffontexists+, o parÃ¢metro Ã© nome de uma Ãºnica fonte (igual a \verb+\IfFontExistsTF+ do \texttt{fontspec}).
Por exemplo,
\begin{singlespacing}
\begin{lstlisting}
\iffontexists{Noto Serif}{\setmainjfont{Noto Serif}}{%
  \PackageWarning{\jobname.tex}{Noto Serif not found. Using default font}
\end{lstlisting}
\end{singlespacing}
Configura para \texttt{Noto Serif} sÃ³ quando ele for acessÃ­vel. 

%Lembrando novamente que os comandos do pacote \texttt{iffont} nÃ£o funcionam devidamente no Lua\LaTeX{} (testados nas versÃµes 2016 e marÃ§o de 2018).
%Se estiver usando o Lua\LaTeX, use \verb+\IfFontExistsTF+ em vez das funÃ§Ãµes do pacote \texttt{iffont}.

As fontes \texttt{Open Type} que podem ser usados pelo \XeLaTeX{} e Lua\LaTeX{} podem estar no diretÃ³rio do documento, diretÃ³rio de \TeX{} ou instalado no sistema operacional.
No Lua\LaTeX, estas fontes podem ser acessadas pelo nome das fontes, mas no \XeLaTeX, somente as fontes instaladas no sistema operacional podem ser acessados pelo nome. Fontes encontradas em outras localidades tais como junto ao documento \TeX{} ou no diretÃ³rio de \TeX{} devem ser indicados pelo nome do arquivo, incluindo a sua extensÃ£o (ou alguma especificaÃ§Ã£o adequada). % serÃ¡ que a versÃ£o nova nÃ£o resolveu este problema? Sim 2024, aind acontinua
Assim, se os comandos do pacote \texttt{fontspec} ou de \texttt{iffont} nÃ£o conseguirem encontrar as fontes pelo nome no \XeLaTeX, tente usar o nome do arquivo da fonte.

No caso de querer usar as fontes da \texttt{MicroSoft} no \texttt{MS Windows}, % compilando com LuaLaTeX, 
coloque

\begin{singlespacing}
\begin{lstlisting}
    \setmainfont[Ligatures=TeX]{Cambria}
    \setsansfont{Calibri}
    \setmonofont{Consolas}
    \setmathfont{Cambria Math}
\end{lstlisting}
\end{singlespacing}

no \texttt{preamble}.%, lembrando que no caso de \XeLaTeX, fontes que nÃ£o estÃ¡ no sistema (como fontes que estÃ£o no diretÃ³rio de \TeX) requer passar o nome do arquivo das fontes em vez dos nomes das fontes.

Uma das dificuldades de usar fontes nÃ£o padrÃ£o Ã© saber as combinaÃ§Ãµes adequadas (entre romano, sem serifa, mono espaÃ§ado, etc), o que requer o conhecimento de tipografia e diagramaÃ§Ã£o. Para resolver este problema em \XeLaTeX{} e Lua\LaTeX{}, foi desenvolvido o pacote \texttt{fontsetup}\index{fontsetup}.
O padrÃ£o deste pacote Ã© usar a fonte \texttt{New Computer Modern} na espessura \texttt{Book} adequado para livros eletrÃ´nicos e similares, mas existem muitas opÃ§Ãµes deste pacote que configura para outras combinaÃ§Ãµes das fontes prÃ© estabelecidas. Por exemplo, a opÃ§Ã£o \texttt{stixtwo} carrega a fonte \texttt{STIX 2} que Ã© do tipo times. Veja o documento do pacote \texttt{fontsetup} para mais detalhes. 
Para usar fonte de espessura \texttt{Book} compatÃ­vel com Computer Modern no PDF\LaTeX{} em vez de \XeLaTeX/Lua\LaTeX, use a fonte {MLModern}.%\index{fonte MLModern}.

O Exemplo~\ref{ex18:fontsetup} Ã© um exemplo usando a fonte compatÃ­vel com ``Computer Modern'', mas com espessura \texttt{Book}. % apropriado para livros eletrÃ´nicos e similares. 
Para PDF\LaTeX, usa a fonte \texttt{MLModern}\index{fonte!MLModern} e para \XeLaTeX/Lua\LaTeX, usa-se a fonte \texttt{New Computer Modern}\index{fonte!New Computer Modern}.
A opÃ§Ã£o para tornar espessura compatÃ­vel com o \texttt{Computer Modern} tradicional (para impressÃ£o em papel) estÃ¡ comentada.

\begin{singlespacing}
\begin{lstlisting}[caption={ex18-fontsetup.tex},label=ex18:fontsetup]
\usepackage{iftex} % Para detectar o motor de TeX utilizado
% Fontes, de acordo com o motor do TeX
\ifPDFTeX % PDFLaTeX
  \usepackage[T1]{fontenc} % codificaÃ§Ã£o da fonte em 8-bits
  \usepackage{mlmodern} % fontes MLModern que Ã© mais escura que Computer Modern tradicional (espessura de letra de Book)
  %\usepackage{lmodern} % fontes Latin Modern: espessura tradicional do Computer Modern
  \usepackage[utf8]{inputenc} % acentuaÃ§Ã£o direta em UTF-8
\else % XeLaTeX/LuaLaTeX
  \usepackage{fontsetup} % New Computer Modern com espessura da letra de Book
  % \usepackage[olddefault]{fontsetup} % espessura tradicional do Computer Modern
\fi
\end{lstlisting}
\end{singlespacing}

Para \texttt{poster} e \texttt{slides}, Ã© recomendado que use a fonte \texttt{sans serif}. Para escolher o \texttt{New Computer Modern} no estilo \texttt{sans serif} pelo pacote \texttt{fontsetup}, use a opÃ§Ã£o \texttt{sansdefault}. Para PDF\LaTeX, carregue o pacote \texttt{sansmathfonts}.

\section{Usando em conjunto com  Bib\LaTeX}
O documento em vÃ¡rios idiomas pode precisar tambÃ©m de referÃªncias bibliogrÃ¡ficas em vÃ¡rios idiomas.
O Bib\LaTeX{} permite internacionalizar a referÃªncia bibliogrÃ¡fica (mesmo sem usar \XeLaTeX/Lua\LaTeX).

Para especificar o idioma da referÃªncia bibliogrÃ¡fica no arquivo \texttt{bib} para Bib\LaTeX, coloca-se o idioma no campo \texttt{langid}\index{biblatex!langid} de cada item.
O ``\verb+*_romanized+''\index{biblatex!romanized} Ã© a escrita em alfabeto romano caso o campo  esteja em carÃ¡cter que nÃ£o seja alfabeto romano. 
Ele serÃ¡ usado para a ordenaÃ§Ã£o e similar.
O campo ``\verb+*_translated_&lt;idioma&gt;+''\index{biblatex!translated} Ã© a traduÃ§Ã£o para o \verb+&lt;idioma&gt;+ se as referÃªncias forem formatados para \verb+&lt;idioma&gt;+.
Veja o Exemplo~\ref{ex18:biblatex:bib}.

\begin{singlespacing}
%{\jafamily
% \begin{lstlisting}[caption={ex12-05.bib},label=ex12-05:bib]
\begin{lstlisting}[caption={ex18-biblatex.bib},label=ex18:biblatex:bib,escapeinside={[*}{*]}]
@book{wikibooks:latex,
  LANGID = {english},
  author={wikibooks},
  title="{\LaTeX{}}",
  publisher="wikibooks",
  url = "\url{https://en.wikibooks.org/wiki/LaTeX}",
  date = {2018},
  urldate={2018-03-05}
}

@Book{Kawasaki,
  LANGID = {japanese},
  TITLE  = {[*\textja{ãƒãƒ©ã¨æŠ˜ã‚Šç´™ã¨æ•°å­¦ã¨}*]},
  TITLE_romanised = {bara to origami to sugaku to},
  TITLE_translated_english = {Roses, Origami \&amp; Math},
  AUTHOR           = {[*\textja{å·å´Žæ•å’Œ}*]},
  AUTHOR_romanised = {Kawasaki, Toshikazu},
  PUBLISHER                    = {[*\textja{æ£®åŒ—å‡ºç‰ˆæ&nbsp;ªå¼ä¼šç¤¾}*], Japan},
  PUBLISHER_translated_english = {Morikita Syuppan Co. Ltd, Japan},
  year={1998},
  ISBN = {4-627-01671-9}  
}
\end{lstlisting}
%} % \jafamily
\end{singlespacing}

O comando de configuraÃ§Ã£o para Bib\LaTeX{} Ã© algo como
\begin{singlespacing}
\begin{lstlisting}
\usepackage[
  backend=biber,
  language=auto,
%  autolang=other, % for &lt;otherlanguage&gt; environment from babel and polygrossia
%  autolang=langname, % only for polygrossia &lt;language&gt; env.
  % bibencoding=utf8,
  style=authoryear,
]{biblatex}
\addbibresource{ex18-biblatex.bib} % arquivo bib
\end{lstlisting}
\end{singlespacing}

A opÃ§Ã£o \verb+language=auto+ indica que Ã© para selecionar automaticamente o idioma (pelo campo \texttt{LANGID}).
Obviamente, onde quer que apareÃ§a a referÃªncia bibliogrÃ¡fica, coloca-se o 
\begin{singlespacing}
\begin{lstlisting}
\phantomsection % se estiver usando hyperref
\printbibliography[heading=bibintoc]
\end{lstlisting}
\end{singlespacing}

Note que, atÃ© agora, nÃ£o usamos nada que nÃ£o funcione no \LaTeX{} normal.
Mas como a referÃªncia bibliogrÃ¡fica contÃ©m caracteres em japonÃªs, precisarÃ¡ definir o uso de japonÃªs em algum trecho.
Isto serÃ¡ facilitado se estiver usando \XeLaTeX{} ou Lua\LaTeX{} em vez do PDF\LaTeX.
Assim, vamos supor que estÃ¡ usando o \XeLaTeX/Lua\LaTeX{} para prosseguir com a explicaÃ§Ã£o.
Para definir comandos para texto em japonÃªs, coloque o comando 
%\begin{singlespacing}
%\begin{lstlisting}
%\usepackage[Ligatures=TeX]{fontspec}
%\usepackage{iffont}
%% patch
%\let\iffontexists\IfFontExistsTF
%\makeatletter
%  \renewcommand{\@iffont@checkfont}[1]{
%    \IfFontExistsTF{#1}{
%      \nottoggle{@iffont@fontfound}{%
%        \renewcommand{\@iffont@firstfont}{#1}
%        \toggletrue{@iffont@fontfound}
%      }{}
%    }{\stepcounter{@iffont@fontsnotfound} }
%  }
%\makeatother
%
%\settofirstfound{\mainjfont}{Noto Serif CJK JP, MS Mincho, TakaoMincho, IPAexMincho, Hiragino Mincho Pro}
%\settofirstfound{\gothicjfont}{Noto Sans CJK JP, MS Gothic, TakaoGothic, IPAexGothic, Hiragino Maru Gothic Pro}
%% If Gothic not found, use Mincho instead.
%\IfFontExistsTF{\gothicjfont}{}{\let\gothicjfont\mainjfont}
%% If Mincho not found, error.
%\IfFontExistsTF{\mainjfont}{\newfontfamily{\jafamily}[BoldFont=\gothicjfont]{\mainjfont}}{%
%\PackageError{\jobname}{Japanese Mincho font not found}{Install apropriate ones}
%}%
%\newcommand{\textja}[1]{{\jafamily #1}}
%\end{lstlisting}
%\end{singlespacing}
%Lembre-se que, para o pacote \texttt{iffont} funcionar no Lua\LaTeX, precisarÃ¡ ajustar o comando \verb+\@iffont@checkfont+ apÃ³s carregar o \texttt{iffont}.

\begin{singlespacing}
\begin{lstlisting}
\usepackage[Ligatures=TeX]{fontspec}
\usepackage{iffont}

\def\jafontlist{Noto Serif CJK JP, MS Mincho, TakaoMincho, IPAexMincho, IPAMincho, Hiragino Mincho Pro,[lmroman12-regular]} % Ãºltimo da list anÃ£o Ã© japonÃªs
\def\jagothicfontlist{Noto Sans CJK JP, MS Gothic, TakaoGothic, IPAexGothic, IPAGothic, Hiragino Maru Gothic Pro}

\settofirstfound{\jafont}{\jafontlist}
\settofirstfound{\jagothic}{\jagothicfontlist}

% Se cair no Ãºltimo, fonte japonÃªs nÃ£o encontrado.
\ifdefstring{\jafont}{[lmroman12-regular]}{\PackageWarning{\jobname}{Fonte japonÃªs Mincho nÃ£o encontrada.}{Instale um dos seguintes: \jafontlist}\newcommand{\textja}[2][]{#1}}
{%
  \ifdefstrequal{\jagothic}{\jafont}{\PackageWarning{\jobname}{Fonte japonÃªs Gothic nÃ£o encontrada.}{Instale um dos seguintes: \jagothicfontlist}}{}
  \newfontfamily{\jafamily}[BoldFont=\jagothic]{\jafont}
  \newcommand{\textja}[2][]{{\jafamily #2}}
}{}
\end{lstlisting}
\end{singlespacing}

O comando \verb+\jafamily+ serÃ¡ definido quando encontrar alguma fonte da lista.
TambÃ©m serÃ¡ definido o comando \verb+\textja+ para trecho pequeno.
%Note que \verb+\settofirstfound+ do \texttt{iffont} nÃ£o funciona no Lua\LaTeX{} (testado na versÃ£o 2016 e marÃ§o de 2018).
%EntÃ£o, se quer usar o Lua\LaTeX, deverÃ¡ udar a sequencia de \verb+\IfFontExistsTF+ em vez de \verb+\settofirstfound+.

Agora, basta usar o comando para trocar de fontes padrÃ£o para a fonte japonÃªs onde aparece o texto em japonÃªs.
Veja o Exemplo~\ref{ex18:biblatex:tex}.
\begin{singlespacing}
%{\jafamily
%\begin{lstlisting}[caption={ex12-05.tex}, label=ex:12-05]
\begin{lstlisting}[caption={ex18-biblatex.tex}, label=ex18:biblatex:tex,escapeinside={[*}{*]}]
Figura contendo texto em japonÃªs.
\begin{figure}[hbtp!]
\center
\begin{tikzpicture}
  \draw (0,0) circle(2) (0,1) node{\textja{[*\textja{é›†åˆ}*]}};
  \draw (0,-0.5) circle(1) (0,-0.5) node{\textja{[*\textja{éƒ¨åˆ†é›†åˆ}*]}};
\end{tikzpicture}
\caption{Figura com texto em japonÃªs}
\end{figure}

Sobre uso bÃ¡sico do \texttt{biblatex}, veja o \cite{wikibooks:latex}.
Agora, citando o livro em japonÃªs \textja{\cite{Kawasaki}}.
\end{lstlisting}
%} % \jafamily
\end{singlespacing}
% 
%TerÃ¡ saÃ­da
%\begin{singlespacing}
%\begin{framed}
\begin{ltxlistingout}
Figura contendo texto em japonÃªs.
\begin{center}
\center
\begin{tikzpicture}
  \draw (0,0) circle(2) (0,1) node{\textja{é›†åˆ}};
  \draw (0,-0.5) circle(1) (0,-0.5) node{\textja{éƒ¨åˆ†é›†åˆ}};
\end{tikzpicture}

{Figuraq 1: Figura com texto em japonÃªs}
\end{center}

Sobre uso bÃ¡sico do \texttt{biblatex}, veja o \texttt{wikibooks} 2018.
Agora, citando o livro em japonÃªs \textja{å·å´Žæ•å’Œ} 1998.
\end{ltxlistingout}
%\end{framed}
%\end{singlespacing}

Como a referÃªncia bibliogrÃ¡fica contÃ©m texto em japonÃªs, colocamos o comando de seleÃ§Ã£o de fonte japonÃªs.
\begin{singlespacing}
\begin{lstlisting}
\phantomsection % se estiver usando hyperref
{\jafamily \printbibliography[heading=bibintoc]}
\end{lstlisting}
\end{singlespacing}

e a saÃ­da serÃ¡

%\let\addcontentsline\emptyaddcontentsline
%\begin{framed}
\begin{ltxlistingout}
{\jafamily
\begin{thebibliography}{99}
%\section*{ReferÃªncias BibliogrÃ¡ficas}
\bibitem{wikibooks:latex}\texttt{wikibooks (2018)}. \emph{\LaTeX}. wikibooks. URL: \url{https://en.wikibooks.org/wiki/LaTeX} (acesso em 15/03/2018).
\bibitem{kawasaki}å·å´Žæ•å’Œ (1998). ãƒãƒ©ã¨æŠ˜ã‚Šç´™ã¨æ•°å­¦ã¨. æ£®åŒ—å‡ºç‰ˆæ&nbsp;ªå¼ä¼šç¤¾, Japan. ISBN: 4-627-01671-9.
\end{thebibliography}
} % \jafamily
\end{ltxlistingout}
%\end{framed}
%\let\addcontentsline\oriaddcontentsline
Note que, no exemplo acima, a fonte de todo trecho da referÃªncia bibliogrÃ¡fica foi trocada.
Assim, se tiver letras acentuadas na referÃªncias bibliogrÃ¡ficas que nÃ£o existem nas fontes japonesas escolhidas, terÃ¡ problemas.
% ou que conflitam com letras japonesas, comeÃ§arÃ¡ aparecer coisas indesejÃ¡veis.
Para contornar o problema, ou acentuar no modo \TeX, ou especificar o uso de japonÃªs dentro do arquivo \texttt{bib} a cada trecho, em vez de aplicar no \verb+\printbibliography+.

No caso de escrever o documento em japonÃªs ou similar, deverÃ¡ carregar o pacote apropriado que configurarÃ¡ para ambiente do idioma correspondente, ajustando os parÃ¢metros para particularidade daquele paÃ­s.
AlÃ©m disso, com o uso do tal pacote, a troca de fontes para japonÃªs e vice versa serÃ¡ automÃ¡tica, sem a necessidade de estar especificando a famÃ­lia de fontes a ser usadas a cada trecho.

Como observaÃ§Ã£o final sobre \XeLaTeX/Lua\LaTeX,
os comandos protegidos dos pacotes de \XeLaTeX/Lua\LaTeX{} costumam usar ``\verb+_+'' e ``\verb+:+'', em vez de ``@'' (ou ests caracteres em conjunto com ``@'').
Isto foi introduzido no \LaTeX{} pelo equipe de desenvolvimento \LaTeX{} 3 e aparecem nos pacotes mais recentes.
Assim, para usar estes comandos e ambientes no \texttt{preamble}, deverÃ¡ colocar entre \verb+\ExplSyntaxOn+\index{ExplSyntaxOn@\verb+\ExplSyntaxOn+} e \verb+\ExplSyntaxOff+\index{ExplSyntaxOff@\verb+\ExplSyntaxOff+}.



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%




%pacote iffont
%
%Algumas observaÃ§Ãµes sobre unicode-math.
%
%Diferenca de amssymb/amsmath com unicode-math:
%mathbb, mathcal, \verb+\int\limits+

%\verb+\removenolimits+ e \verb+\addnolimits+
%nao permite usar versao com limits e nolimits ao mesmo tempo.

%\verb+\ExplSyntaxOn+
%e \verb+\ExplSyntaxOff+

%item \verb+\newfontfamily+ do fontspec

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Diagramando na Norma ABNT}\label{cap:abnt}
Neste capÃ­tulo, vamos estudar uma classe e arquivos de suporte da referÃªncia bibliogrÃ¡fica para diagramar de acordo com a exigÃªncia de AssociaÃ§Ã£o Brasileira das Normas TÃ©cnicas (ABNT\index{ABNT}).

A classe padrÃ£o para diagramar os documentos como trabalho de conclusÃ£o de cursos, monografias em geral, teses e dissertaÃ§Ãµes em \texttt{ABNT} Ã© a classe \texttt{abntex2}\index{abntex2} que foi implementado sobre a classe \texttt{memoir}, herdando diversas funcionalidades. Para saber estas funcionalidades adicionais, consulte o manual do \texttt{memoir}.

\section{Documentos em ABNT}
Para o documento em ABNT, usamos a classe \texttt{abntex2}\index{abntex2@ABNTeX2} (\cite{book:abnt2:araujo}) como em
\begin{lstlisting}
\documentclass[12pt,a4paper,openright,oneside,english,brazil]{abntex2}
\end{lstlisting} 
onde \verb+12pt+ foi usado para ajustar o tamanho das letras, \verb+a4paper+ para papel \texttt{A4} e \verb+oneside+ foi usado para criar impressÃ£o de somente um lado para versÃ£o eletrÃ´nica. Se quer gear a versÃ£o impressa, coloque \verb+twoside+ e \verb+openright+ para ficar como frente/verso seguindo a recomendaÃ§Ã£o do ABNT (recomendaÃ§Ã£o nÃ£o Ã© obrigatoriedade).
Por Ãºltimo, \verb+english+ e \verb+brazil+ foi colocado para ser repassado no pacote \texttt{babel}, pois \texttt{ABNT} requer que tenha resumo na lÃ­ngua estrangeira (por exemplo, em inglÃªs) alÃ©m do resumo em portuguÃªs.

A classe \texttt{abntex2} implementa diversos comandos para produzir elementos de acordo com a exigÃªncia ou recomendaÃ§Ãµes do ABNT. 
Alguns desses comandos possuem equivalÃªncia para comandos da classe \texttt{memoir} e estÃ£o mapeados para poder usar tanto os comandos do \texttt{memoir} como da prÃ³pria classe \texttt{abntex2} (por exemplo, \verb+\autor+ e \verb+\author+, \verb+\titulo+ e \verb+\title+, \verb+\data+ e \verb+\date+, etc), enquanto que existem comandos que equivalente do \texttt{memoir} produz estilo diferente do exigido ou recomendado pelo ABNT (por exemplo, \verb+\imprimecapa+ e \verb+\maketitle+, \verb+\apendices+ e \verb+\appendix+).
Assim, requer cuidados.

Uma observaÃ§Ã£o importante Ã© usar sempre o \texttt{uft8} na classe \texttt{ABNT}, o que Ã© necessÃ¡rio especificar com \verb+\usepackage[utf8]{inputenc}+ no caso de nÃ£o estar usando o \XeLaTeX/Lua\LaTeX.

A classe \texttt{abntex2} faz a chamada de \verb+\frontmatter+ (ou \verb+\pretextual+) no inÃ­cio do documento. 
Assim, nÃ£o Ã© necessÃ¡rio colocar este comando no comeÃ§o do documento.

O Exemplo~\ref{ex19:abntex2} ilustra o uso desta classe (com referáº½ncias emm Bib\LaTeX{}), com alguns comentÃ¡rios importantes.
A sua saÃ­da serÃ¡ omitida aqui.

\begin{singlespacing}
\lstinputlisting[caption={ex19-abntex2.tex},label=ex19:abntex2]{latex-via-exemplos-abntex2}
\end{singlespacing}

Note que a folha de aprovaÃ§Ã£o provisÃ³ria costuma estar presente no documento (Ã© serÃ¡ substituÃ­da pela folha definitiva quando for aprovado).
Para criar uma folha de aprovaÃ§Ã£o provisÃ³ria adequada, sugerido no manual do \texttt{abntex2} \cite{book:abnt2:araujo} Ã©
\begin{singlespacing}
\begin{lstlisting}
\begin{folhadeaprovacao}
% provisÃ³ria
\begin{center}
{\ABNTEXchapterfont\large\imprimirautor}
\vspace*{\fill}\vspace*{\fill}
\begin{center}
\ABNTEXchapterfont\bfseries\Large\imprimirtitulo
\end{center}
\vspace*{\fill}
\hspace{.45\textwidth}
\begin{minipage}{.5\textwidth}
\imprimirpreambulo
\end{minipage}%
\vspace*{\fill}
\end{center}
Trabalho aprovado. \imprimirlocal, 24 de novembro de 2012:
\assinatura{\textbf{\imprimirorientador} \\ Orientador}
\assinatura{\textbf{Professor} \\ Convidado 1}
\assinatura{\textbf{Professor} \\ Convidado 2}
\assinatura{\textbf{Professor} \\ Convidado 3}
\assinatura{\textbf{Professor} \\ Convidado 4}
\begin{center}
\vspace*{0.5cm}
{\large\imprimirlocal}
\par
{\large\imprimirdata}
\vspace*{1cm}
\end{center}
% quando tiver a folha de aprovaÃ§Ã£o devidamente assinada
% \includepdf{folhadeaprovacaofinal.pdf} 
\end{folhadeaprovacao}
\end{lstlisting}
\end{singlespacing}

ApÃ³s ter a folha de aprovaÃ§Ã£o devidamente assinadas, digitalize e converta no formato \texttt{PDF}.
Em seguida, inclua diretamente no documento como uma pÃ¡gina (e nÃ£o como um desenho) usando o comando \verb+\includepdf+\index{includepdf@\verb+\includepdf+} do pacote \texttt{pdfpages}\index{pdfpages}.

A classe \texttt{abntex2} aceita a opÃ§Ã£o \texttt{article} para diagramar artigos, mas na maioria dos casos, nÃ£o Ã© exigido que artigos sigam a norma ABNT, podendo ou nÃ£o, requerer suas referÃªncias em ABNT.
  
\section{Documento ABNT usando \texttt{ABNTexto}}
A classe \texttt{ABNTexto}\index{ABNTexto} (\cite{book:abntexto:abreu}) que estÃ¡ na fase de desenvolvimento Ã© uma alternativa leve para \texttt{ABNTeX2}, para diagramar em \texttt{ABNT}. Enquanto que \texttt{ABNTeX2} usa a classe \texttt{memoir} e diversos pacotes para maior flexibilidade, \texttt{ABNTexto} usa a classe \texttt{article} e muitos poucos pacotes, tornando muito leve.
Para usar a Ãºltima versÃ£o desta classe sem instalar, abaixe o arquivo \texttt{abntexto.cls} do \texttt{CTAN} (\url{https://ctan.org/}) e mantenha junto ao arquivo \texttt{.tex}.
%Sobre os comandos, veja a documentaÃ§Ã£o disponÃ­vel em \cite{book:abntexto:abreu}.

% No entanto, como ele ainda estÃ¡ na fase de desenvolvimento (2024), pode apresentar algumas inconveniÃªncias.

Um exemplo de \texttt{ABNTexto} com uso de Bib\LaTeX{} Ã© como no Exemplo~\ref{ex19:abntexto}, cuja a saÃ­da Ã© omitida.

\begin{singlespacing}
\lstinputlisting[caption={ex19-abntexto.tex},label=ex19:abntexto]{latex-via-exemplos-abntexto}
\end{singlespacing}

O \texttt{ABNTeX2} Ã© mais completo, mas por basear na classe \texttt{memoir} e carregar diversos pacotes, torna mais pesado.
Por outro lado, \texttt{abntexto} Ã© baseado na classe \texttt{article} e depende de poucos pacotes, o que torna leve, apesar de ter menos recursos. Outra observaÃ§Ã£o Ã© que \texttt{ABNTeX2} implementa comandos e ambientes em portuguÃªs, enquanto que \texttt{abntexto} implementa comandos e ambientes em inglÃªs.

\section{Usando o estilo ABNT no \BibTeX}

Quando as referÃªncias bibliogrÃ¡ficas devem seguir a norma ABNT, e pretende usar o Bib\TeX, use o pacote \texttt{abntex2cite}\index{abntex2cite} que pode ser usado separadamente da classe \texttt{abntex2}.
Ã‰ importante lembrar que este pacote requer que o pacote \texttt{hyperref} seja carregado antes dele. 
Caso contrÃ¡rio, pode produzir erros, mas nÃ£o costuma ser avisado de que \texttt{hyperref} precisa ser carregado antes.

A citaÃ§Ã£o entre parentes deve ser feito com o comando \verb+\cite+, enquanto que a citaÃ§Ã£o como parte de texto deve ser feito com o comando \verb+\citeonline+. As citaÃ§Ãµes de citaÃ§Ãµes (citaÃ§Ãµes indiretas) sÃ£o feitas pelos comandos \verb+\apud+ ou \verb+\apudonline+ para colocar entre parenteses ou fazer parte do texto, respectivamente.

Note que o pacote \texttt{abntex2cite} requer a codificaÃ§Ã£o do documento em \texttt{utf8}.

Veja o Exemplo~\ref{ex19:abntex2cite}.

\begin{singlespacing}
\begin{lstlisting}[caption={ex19-abntex2cite.tex},label={ex19:abntex2cite}]
\documentclass[12pt,a4paper,english,brazil]{article}
\usepackage{iftex} % Para detectar o motor de TeX utilizado
\ifPDFTeX% Fontes, de acordo com o motor do TeX
  \usepackage[T1]{fontenc} % codificaÃ§Ã£o da fonte em 8-bits
  \usepackage{mlmodern} % fontes MLModern
  %\usepackage{lmodern} % fontes Latin Modern
  \usepackage[utf8]{inputenc} % acentuaÃ§Ã£o direta em UTF-8
\else
  \usepackage{fontsetup}% New Computer Modern
  %\usepackage{fontspec} % pacote para configurar fontes
  %\defaultfontfeatures{Ligatures=TeX}
  % seleÃ§Ã£o de fontes, se desejar
  % ...
\fi
% pacotes matemÃ¡ticas de acordo com o motor TeX
\ifPDFTeX
  \usepackage{amsmath,amssymb} % para matematica
\else
   % para matematica
  \usepackage{unicode-math}
  \ifLuaTeX
    \usepackage{lualatex-math}
  \fi
\fi
\usepackage{babel} % idiomas da opÃ§Ã£o da classe serÃ¡ usado aqui
\usepackage{hyperref}% abntex2cite requer hyoerref carregado antes dele
% OpÃ§Ã£o "alf" Ã© para alfabetico. "num" para numÃ©rico.
\usepackage[alf]{abntex2cite} % Para citaÃ§Ã£o no formato ABNT
\pdfstringdefDisableCommands{% desabilitando comandos proibidos no bookmarks
  \let\MakeUppercase\relax%
  \def\\{ }%
}
\begin{document}
Este modelo foi baseado no documento de \texttt{abntex2} \cite{book:abnt2:araujo}.

Para citaÃ§Ãµes textuais, deverÃ¡ usar o comando \verb+\citeonline+ como descrito em \citeonline{book:abnt2cite:araujo}.
Para citaÃ§Ãµes de citaÃ§Ãµes, usar o comando \verb+\apud+ ou \verb+\apudonline+.

TambÃ©m poderÃ¡ usar o \texttt{biblatex}. Veja o \citeonline{book:biblatex-abnt:marques} para detalhes.

% Especificacao de formatacao (\bibliographystyle) nÃ£o serÃ¡ necessÃ¡rio, pois o pacote anbtex2cite jÃ¡ fez isso.
\bibliography{ex19-abntex2cite}
\end{document}
\end{lstlisting}
\end{singlespacing}

No arquivo \texttt{bib}, usar a acentuaÃ§Ã£o no modo \TeX{}.
Para os documentos da internet, complete os campos \texttt{url} (endereÃ§o eletrÃ´nico) e \texttt{urlaccessdate} (data de Ãºltima consulta).
Os campos \texttt{isbn} (identificador de livros) 
e \texttt{issn} (identificador de periÃ³dicos) tambÃ©m estÃ£o disponÃ­veis.

TambÃ©m observe que no ABNT, foram acrescentados categorias adicionais e por conta disso, o estilo \texttt{abnt} adicionou essas categorias que podem ser ignorados nos outros estilos de formataÃ§Ã£o. 
Veja \cite{book:abnt2cite:araujo} para detalhes.

O arquivo \texttt{ex19-abntex2cite.bib} Ã© como segue

\begin{singlespacing}
\begin{lstlisting}[language={BibTeX}]
@book{book:abnt2:araujo,
author={Lauro C\'esar Araujo},
title={A classe abntex2: Documentos t\'ecnicos e cient{\'\i}ficos brasileiros compat{\'\i}veis com as normas {ABNT}},
url={https://ctan.org/pkg/abnt2/},
urlaccessdate={2018-06-11},
year=2016
}
@book{book:abnt2cite:araujo,
author={Lauro C\'esar Araujo},
title={O pacote abntex2cite: Estilos bibliogr\'aficos compat{\'\i}veis com a {ABNT} {NBR} 6023},
url={https://ctan.org/pkg/abnt2/},
urlaccessdate={2018-06-11},
year=2016
}
@book{book:biblatex-abnt:marques,
author={Daniel Ballester Marques},
title={biblatex-abnt 3.3},
url={https://ctan.org/pkg/biblatex-abnt/},
urlaccessdate={2018-06-11},
year=2018
}
\end{lstlisting}
\end{singlespacing}

A saÃ­da do Exemplo~\ref{ex19:abntex2cite} e algo como segue.

%\newlength{\labelseporiginal}
%\setlength{\labelseporiginal}{\labelsep}
\begin{ltxlistingout}
Este modelo foi baseado no documento de \texttt{abntex2} (ARAÃšJO, 2018a).

Para citaÃ§Ãµes textuais, deverÃ¡ usar o comando \verb+\citeonline+ como descrito em AraÃºjo (2016b).
Para citaÃ§Ãµes de citaÃ§Ãµes, usar o comando \verb+\apud+ ou \verb+\apudonline+.

TambÃ©m poderÃ¡ usar o \texttt{biblatex}. Veja o Marques (2018) para detalhes.

\section*{ReferÃªncias}

\noindent
{ARAUJO, L.~C. \emph{A classe abntex2: Documentos t\'ecnicos e cient{\'\i}ficos
  brasileiros compat{\'\i}veis com as normas ABNT}. [s.n.], 2016.
  Dispon{\'\i}vel em: &lt;\url{https://ctan.org/pkg/abnt2/}&gt;. Acesso em:
  2018-06-11.}

\medskip
\noindent
{ARAUJO, L.~C. \emph{O pacote abntex2cite: Estilos bibliogr\'aficos
  compat{\'\i}veis com a ABNT NBR 6023}. [s.n.], 2016. Dispon{\'\i}vel em:
  &lt;\url{https://ctan.org/pkg/abnt2/}&gt;. Acesso em: 2018-06-11.}

\medskip
\noindent
{MARQUES, D.~B. \emph{biblatex-abnt 3.3}. [s.n.], 2018. Dispon{\'\i}vel em:
  &lt;\url{https://ctan.org/pkg/biblatex-abnt/}&gt;. Acesso em: 2018-06-11.}
\end{ltxlistingout}
%\setlength{\labelsep}{\labelseporiginal}

\section{Usando o estilo ABNT no Bib\LaTeX} 

TambÃ©m poderÃ¡ elaborar referÃªncias bibliogrÃ¡ficas no estilo ABNT usando o Bib\LaTeX{} que Ã© recomendado (\cite{book:biblatex-abnt:marques}).

Para isso, coloque a opÃ§Ã£o \texttt{style=abnt}\index{biblatex!abnt} na opÃ§Ã£o de chamada do pacote \texttt{biblatex}.

A data de Ãºltimo acesso ao material disponÃ­vel na internet serÃ¡ colocado no campo \texttt{urldate} do arquivo \texttt{.bib} no formato \texttt{ano-mes-dia} onde ano serÃ¡ com $4$ dÃ­gitos. 
Note que \texttt{urlaccessdate} usado pelo \BibTeX{} tambÃ©m pode ser usado no Bib\LaTeX, mas \texttt{urldate} funcionam em vÃ¡rios estilos e nÃ£o somente no estilo \texttt{abnt}.
Caso queira usar tanto o \BibTeX, assim como Bib\LaTeX, poderÃ¡ especificar ambos os campos (e usar a acentuaÃ§Ã£o no modo \TeX).

No estilo ABNT de \BibTeX{} do pacote \texttt{abntex2cite}, usa o \verb+\citeonline+ para citaÃ§Ãµes textuais, mas no estilo ABNT de Bib\LaTeX, usa o comando \verb+\textcite+\index{textcite@\verb+\textcite+} jÃ¡ existentes no Bib\LaTeX.
Se no documento estiver usando o comando \verb+\citeonline+, basta criar um atalho no \texttt{preamble} do documento com 
\verb+\let\citeonline\textcite+.
Por outro lado, se quiser usar o \verb+\textcite+ com \texttt{abntex2cite}, prevendo a futura transiÃ§Ã£o para BiB\LaTeX, 
basta colocar \verb+\let\textcite\citeonline+ no \texttt{preamble} do documento.

Novamente, use a codificaÃ§Ã£o em \texttt{utf8}. Note que o Bib\LaTeX{} aceita a acentuaÃ§Ã£o direta no arquivo de \BibTeX. 
O uso de \texttt{hyperref} Ã© opcional, mas recomendÃ¡vel.

Como referÃªncias bibliogrÃ¡ficas no estilo ABNT do Bib\LaTeX{} estÃ¡ projetado para poder ser usado fora da classe \texttt{abntex2}, a formataÃ§Ã£o do tÃ­tulo da referÃªncia bibliogrÃ¡fica nÃ£o costuma aparecer de acordo com o \texttt{ABNT} mesmo na classe \texttt{abntex2} devido a algumas questÃµes tÃ©cnicas.
Isto pode ser acertado sem problemas com alguns cÃ³digos no \texttt{preÃ¢mbulo} como segue (supondo que estÃ¡ usando ``brazilian'' na opÃ§Ã£o do pacote \texttt{babel}).

% Consertando o titulo que biblatex redefiniu
% Para biblatex: consertando para ReferÃªncias ficar em maiusculo no sumÃ¡rio
% combinaÃ§Ã£o de
% https://github.com/abntex/abntex2/issues/200
% e
% https://groups.google.com/forum/#!topic/abntex2/E9Bv9YhrjLk

\begin{singlespacing}
\begin{lstlisting}[language={TeX}]
% BibLaTeX com estilo abnt
\usepackage[style=abnt]{biblatex} 
\addbibresource{ex19-biblatex-abnt.bib}  % arquivo bib
% Consertando o titulo que biblatex redefiniu
\DefineBibliographyStrings{brazilian}{bibliography={ReferÃªncias}}
% Consertando para ReferÃªncias ficar em maiusculo no sumÃ¡rio
\defbibheading{bibliography}[\bibname]{%
    \chapter*{#1}
    \bibmark
    \ifnobibintoc\else
      \phantomsection
      \addcontentsline{toc}{chapter}{\uppercase{#1}}
    \fi
    \prebibhook
}
\end{lstlisting}
\end{singlespacing} 

O Exemplo~\ref{ex19:biblatex-abnt} ilustra como ficarÃ¡ o documento.

\begin{singlespacing}
\begin{lstlisting}[caption={ex19-biblatex-abnt.tex},label={ex19:biblatex-abnt}]
\documentclass[12pt,a4paper,english,brazil]{abntex2}
\usepackage{iftex}% Para detectar o motor de TeX utilizado
% Fontes, de acordo com o motor do TeX
\ifPDFTeX
  \usepackage[T1]{fontenc} % codificaÃ§Ã£o da fonte em 8-bits
  \usepackage{mlmodern} % fontes MLModern
  %\usepackage{lmodern} % fontes Latin Modern
  \usepackage[utf8]{inputenc} % acentuaÃ§Ã£o direta em UTF-8
\else
  \usepackage{fontsetup} % fontes New Computer Modern
  %\usepackage{fontspec} % pacote para configurar fontes
  %\defaultfontfeatures{Ligatures=TeX}
  % comandos de seleÃ§Ã£o das fontes, se desejar
  % ...
\fi
% pacotes matemÃ¡ticas de acordo com o motor TeX
\ifPDFTeX
  \usepackage{amsmath,amssymb} % para matematica
\else
  \usepackage{unicode-math}
  \ifLuaTeX
    \usepackage{lualatex-math}
  \fi
\fi
% babel ou poligrossia Ã© carregado automaticamente pelo abntex2
\usepackage{hyperref} % recomendÃ¡vel
\pdfstringdefDisableCommands{%desativar alguns comandos no bookmark
  \let\MakeUppercase\relax%
  \def\\{ }%
}
\usepackage[
  backend=biber, % aceita acentuaÃ§Ã£o direta no arquivo bib (recomendÃ¡vel).
  style=abnt, % Sistema alfabÃ©tico
  %style=abnt-numeric, % Sistema numÃ©rico
  %style=abnt-ibid, % Notas de referÃªncia
  % language=brazil, % padrÃ£o 
  % bibencoding=utf8, % padrÃ£o
]{biblatex}
% \citeonline como \textcite
\let\citeonline\textcite
\let\apudonline\textapud
\addbibresource{ex19-biblatex-abnt.bib}  % arquivo bib
% Consertando o titulo que biblatex redefiniu
\DefineBibliographyStrings{brazilian}{bibliography={ReferÃªncias}}
% Para biblatex: consertando para ReferÃªncias ficar em maiusculo no sumÃ¡rio
\defbibheading{bibliography}[\bibname]{%
    \chapter*{#1}
    \bibmark
    \ifnobibintoc\else
      \phantomsection
      \addcontentsline{toc}{chapter}{\uppercase{#1}}
    \fi
    \prebibhook
}
% Iniciando o docuemnto
\begin{document}
Este modelo foi baseado no documento de \texttt{abntex2} \cite{book:abnt2:araujo}.

Para citaÃ§Ãµes textuais, deverÃ¡ usar o comando \verb+\textcite+ como descrito em \textcite{book:biblatex-abnt:marques}.

% Para mais de uma citaÃ§Ã£o por vez, use a versÃ£o plural \verb+\cites+ e \verb+\textcites+ (nÃ£o Ã© necessÃ¡rio).

Para citaÃ§Ãµes de citaÃ§Ãµes, usar o comando \verb+\apud+ ou \verb+\textapud+.

Existem vÃ¡rios outros comandos neste estilo. Veja o 
\textcite{book:biblatex-abnt:marques} para mais detalhes.

TambÃ©m poderÃ¡ usar o BibTeX em vez do BibLaTeX. Veja o \textcite{book:abnt2cite:araujo} para detalhes.
%
\phantomsection
% para que link do hyperref funcione corretamente para referencias bibliograficas no sumario e no bookmark. Parece nÃ£o ser necessÃ¡rio na classe abntex2
\printbibliography%[heading=bibintoc]
% [heading=bibintoc] Ã© para acrescentar a referÃªncias no sumÃ¡rio (caso tenha). NÃ£o Ã© necessÃ¡rio para classe abntex2
\end{document}
\end{lstlisting}
\end{singlespacing}
  
O arquivo \texttt{ex19-biblatex-abnt.bib} fica como segue.

\begin{singlespacing}
\begin{lstlisting}[language={BibTeX}]
@book{book:abnt2:araujo,
author={Lauro CÃ©sar Araujo},
title={A classe abntex2: Documentos tÃ©cnicos e cientÃ­ficos brasileiros compatÃ­veis com as normas {ABNT}},
url={https://ctan.org/pkg/abnt2/},
urldate={2018-06-12},
year=2016
}
@book{book:abnt2cite:araujo,
author={Lauro CÃ©sar Araujo},
title={O pacote abntex2cite: Estilos bibliogrÃ¡ficos compatÃ­veis com a {ABNT} {NBR} 6023},
url={https://ctan.org/pkg/abnt2/},
urldate={2018-06-12},
year=2016
}
@book{book:biblatex-abnt:marques,
author={Daniel Ballester Marques},
title={biblatex-abnt 3.3},
url={https://ctan.org/pkg/biblatex-abnt/},
urldate={2018-06-12},
year=2018
}
\end{lstlisting}
\end{singlespacing}

A saÃ­da do Exemplo~\ref{ex19:biblatex-abnt} e algo como segue.

%\newlength{\labelseporiginal}
%\setlength{\labelseporiginal}{\labelsep}
\begin{ltxlistingout}
Este modelo foi baseado no documento de \texttt{abntex2} (ARAÃšJO, 2018a).

Para citaÃ§Ãµes textuais, deverÃ¡ usar o comando \verb+\textcite+ como descrito em Marques (2018).

% Para mais de uma citaÃ§Ã£o por vez, use a versÃ£o plural \verb+\cites+ e \verb+\textcites+ (nÃ£o Ã© necessÃ¡rio).

Para citaÃ§Ãµes de citaÃ§Ãµes, usar o comando \verb+\apud+ ou \verb+\textapud+.

Existem vÃ¡rios outros comandos neste estilo. Veja o 
Marques (2018) para mais detalhes.

TambÃ©m poderÃ¡ usar o BibTeX em vez do BibLaTeX. Veja o AraÃºjo (2016b) para detalhes.

%\setlength{\labelsep}{0pt}
\section*{ReferÃªncias}

\noindent
{ARAUJO, L.~C. \emph{A classe abntex2: Documentos tÃ©cnicos e cientÃ­ficos
  brasileiros compatÃ­veis com as normas ABNT}. [s.n.], 2016.
  DisponÃ­vel em: &lt;\url{https://ctan.org/pkg/abnt2/}&gt;. Acesso em:
  2018-06-12.}

\medskip
\noindent
{ARAUJO, L.~C. \emph{O pacote abntex2cite: Estilos bibliogrÃ¡ficos
  compatÃ­veis com a ABNT NBR 6023}. [s.n.], 2016. DisponÃ­vel em:
  &lt;\url{https://ctan.org/pkg/abnt2/}&gt;. Acesso em: 2018-06-12.}

\medskip
\noindent
{MARQUES, D.~B. \emph{biblatex-abnt 3.3}. [s.n.], 2018. DisponÃ­vel em:
  &lt;\url{https://ctan.org/pkg/biblatex-abnt/}&gt;. Acesso em: 2018-06-12.}
\end{ltxlistingout}
%\setlength{\labelsep}{\labelseporiginal}
  
  Para mais detalhes sobre comandos do estilo ABNT para Bib\LaTeX, veja \cite{book:biblatex-abnt:marques}.
  
\begin{remark}
O novo estilo bibliogrÃ¡fico de Bib\LaTeX{} para ABNT (conformidade com a nova regra ABNT) estÃ¡ no site \url{https://github.com/abntex/biblatex-abnt}, mas ainda nÃ£o estÃ¡ no \href{https://ctan.org/}{CTAN} (em 2024). Por este motivo, o estilo da referÃªncia bibliogrÃ¡fica distribuÃ­da junto com \TeX{} nÃ£o estÃ¡ atualizada.
Para usar a versÃ£o nova, deverÃ¡ abaixar e instalar manualmente seguindo a instruÃ§Ã£o.
Caso nÃ£o conseguir instalar, poderÃ¡ extrair todos os arquivos do pacote e colocar junto com o arquivo \texttt{tex}.
Para verificar se estÃ¡ com o novo estilo, veja se \texttt{URL} (endereÃ§o da internet) da referÃªncia bibliogrÃ¡fica ficarÃ¡ sem estar entre ``\verb+&lt;+'' e ``\verb+&gt;+'' (versÃ£o antiga ficarÃ¡ entre estes dois sÃ­mbolos).
\end{remark}
  
\section{Tabelas em ABNT}\label{sec:abnt:tabela}

Tanto o \texttt{ABNTeX2}, como o \texttt{ABNTexto}, implementa sua forma de criar tabelas curtas em \texttt{ABNT}, mas ainda nÃ£o tem a funcionalidade para tabelas longas (2024). 
As tabelas no \texttt{ABNT} devem obedecer as normas do Instituto Brasileiro de GeogrÃ¡fica e EstatÃ­stica (IBGE)\index{IBGE}. Para ter conformidade com o estilo de IBGE (que \texttt{ABNT} adota), poderÃ¡ usar o pacote \texttt{tabularray}, mas requer ajustes.
Um pacote que efetua tal ajuste Ã© o \texttt{tabularray-abnt}\index{tabularray-abnt} que implementa o estilo \texttt{abnt} para tabelas e \texttt{quadro} para quadros (tabela para apresentaÃ§Ã£o de conteÃºdo textual em vez de dados numÃ©rico). O pacote tambÃ©m implementa o ``wrapper'' \texttt{abnttblr} , \texttt{tallabnttblr} e \texttt{longabnttblr} que aplica o tema \texttt{abnt} sobre \texttt{tblr} , \texttt{talltblr} e \texttt{longtblr}, com a possibilidade de alterar a fonte usada pelo comando \verb+\SetAbntTblrFont+. Como este pacote Ã© muito recente (2025), o sistema TeX pode nÃ£o vir com ele. Assim, abaixe o arquivo \texttt{tabularray-abnt.sty} do ctan (\url{https://ctan.org/pkg/tabularray-abnt}) e instale manualmente ou deixe junto como o arquivo \texttt{.tex} para usar-lÃ³. Para usar, coloque a opÃ§Ã£o \verb+\theme=abnt+ ou \verb+theme=quadro+ no parÃ¢metro opcional de \texttt{talltblr} (ou \texttt{tblr} com opÃ§Ã£o \texttt{tall}) ou \texttt{longtblr} (ou \texttt{tblr} com opÃ§Ã£o \texttt{long}), ou use a versÃ£o \texttt{abnt} correspondente.


% Para isso, coloque o cÃ³digo a seguir, apÃ³s carregar o pacote \texttt{tabularray}.
%
%\begin{singlespacing}
%\begin{lstlisting}
%% texto adicional no cabeÃ§alho
%\DefTblrTemplate{firsthead-text}{default}{\par~\hfill(continua)} % primeira pÃ¡gina
%\DefTblrTemplate{lasthead-text}{default}{\par~\hfill(conclusÃ£o)} % Ãºltima pÃ¡gina
%\DefTblrTemplate{conthead-text}{default}{\par~\hfill(continuaÃ§Ã£o)} % pÃ¡ginas do meio (default Ã© em ingles, sem \par)
%% primeiro cabeÃ§alho
%\makeatletter
%  \DefTblrTemplate{caption}{default}{
%    \UseTblrTemplate{caption-tag}{default}
%    \UseTblrTemplate{caption-sep}{default}
%    \UseTblrTemplate{caption-text}{default}
%    % like \ifdefined, but with csname
%    \ifcsname tblr@abnt@spanpages@\roman{table}\endcsname % if span pages
%      \UseTblrTemplate{firsthead-text}{default} % acrescentar o firsthead-text
%    \fi
%  }
%\makeatother
%%%
%% redefinindo o tÃ­tulo do Ãºltimo cabeÃ§alho
%\DefTblrTemplate{lasthead}{default}{\normalsize
%  \UseTblrTemplate{caption-tag}{default}
%  \UseTblrTemplate{caption-sep}{default}
%  \UseTblrTemplate{caption-text}{default}
%  \UseTblrTemplate{lasthead-text}{default} % acrescenttar o lasthead-text
%}
%\DefTblrTemplate{capcont}{default}{ % redefinindo, para \par funcionar (senÃ£o, serÃ¡ ignorado)
%  \UseTblrTemplate{caption-tag}{default}
%  \UseTblrTemplate{caption-sep}{default}
%  \UseTblrTemplate{caption-text}{default}
%  \UseTblrTemplate{conthead-text}{default}
%}
%% desativando rodapÃ© inicial e do meio
%\DefTblrTemplate{firstfoot,middlefoot}{default}{}
%%
%% Ãºltimo rodapÃ© para inserir fonte e nota
%\DefTblrTemplate{lastfoot}{default}{ % rodapÃ© da Ãºltima pÃ¡gina
%  \UseTblrTemplate{lastfoot-text}{default} % colocar o lastfoot-text
%  \UseTblrTemplate{lastfoot-text-note}{default} % colocar o lastfoot-text-note
%}
%% texto do Ãºltimo rodapÃ©
%\DefTblrTemplate{lastfoot-text}{default}{} % inicialmente vazio
%\DefTblrTemplate{lastfoot-text-note}{default}{} % inicialmente vazio
%% tamanho das fontes
%\SetTblrStyle{firsthead-text,lasthead-text,conthead-text}{\footnotesize}
%\SetTblrStyle{caption,lasthead,capcont}{\normalsize}
%\SetTblrStyle{lastfoot}{\footnotesize}
%
%\makeatletter
%% comando para legenda
%
%% https://www.reddit.com/r/LaTeX/comments/116wtwp/how_get_the_next_line_with_indentation/
%% \hangindent=2em\hangafter=1
%% indentar a rpÃ³xima linha por \hangindent nÃ£o funciona no tblr?
%\newlength{\Tblr@Format@Source@text@width}%
%\newsavebox\Tblr@Format@Source@label@box%  
%\providecommand{\Tblr@Format@Source}[2][Fonte]{\par \medskip%
%  \setlength{\Tblr@Format@Source@text@width}{\textwidth}%
%  % if argument is empty, nothings for #1
%  \def\tempa{}\def\tempb{#1}%
%  \ifx\tempa\tempb 
%  \else%
%    \sbox{\Tblr@Format@Source@label@box}{#1: }%
%    \addtolength{\Tblr@Format@Source@text@width}{-\wd\Tblr@Format@Source@label@box}% subtract label width
%    \usebox\Tblr@Format@Source@label@box% write label
%  \fi%
%  \parbox[t]{\Tblr@Format@Source@text@width}{\linespread{1}\@currsize
%  #2% dentro de tabular par aalinhamento e com espaÃ§amento simples
%  }%
%  \smallskip
%} %
%% Fonte no Ãºltimo rodapÃ©
%\newcommand\SetTblrSource[2][Fonte]{%
%  % https://texfaq.org/FAQ-empty
%  \def\tempa{}%
%  \def\tempb{#1}%
%  \ifx\tempa\tempb% if argument is empty
%    \DefTblrTemplate{lastfoot-text}{default}{}%
%  \else
%    \DefTblrTemplate{lastfoot-text}{default}{\Tblr@Format@Source[#1]{#2}}%
%  \fi
%}
%% Nota no Ãºltimo rodapÃ©
%\newcommand\SetTblrNote[2][Nota]{%
%  % https://texfaq.org/FAQ-empty
%  \def\tempa{}%
%  \def\tempb{#1}%
%  \ifx\tempa\tempb% if argument is empty
%    \DefTblrTemplate{lastfoot-text-append}{default}{}%
%  \else
%    \par\DefTblrTemplate{lastfoot-text-note}{default}{\Tblr@Format@Source[#1]{#2}}%
%  \fi
%}
%       
%% To save span page status
%%\makeatletter
%  \newif\iftblr@abnt@mark@spanpages% if span pages, put corresponding command to aux file
%  \tblr@abnt@mark@spanpagesfalse % initially false
%  % tblr with long optional option  
%  \AddToHook{env/tblr/before}
%  {  
%    \tblr@abnt@mark@spanpagestrue
%  }
%  \AddToHook{env/tblr/after}
%  {  
%    \tblr@abnt@mark@spanpagesfalse
%    \DefTblrTemplate{lastfoot-text}{default}{}   
%    \DefTblrTemplate{lastfoot-text-note}{default}{}            
%  }
%  % longtblr
%  \AddToHook{env/longtblr/before}
%  {  
%    \tblr@abnt@mark@spanpagestrue
%  }
%  \AddToHook{env/longtblr/after}
%  {  
%    \tblr@abnt@mark@spanpagesfalse
%    \DefTblrTemplate{lastfoot-text}{default}{}          
%    \DefTblrTemplate{lastfoot-text-note}{default}{}  
%  }
%  % talltblr
%  \AddToHook{env/talltblr/before}
%  {  
%    \tblr@abnt@mark@spanpagestrue
%  }  
%  \AddToHook{env/talltblr/after}
%  {  
%    \tblr@abnt@mark@spanpagesfalse
%    \DefTblrTemplate{lastfoot-text}{default}{}   
%    \DefTblrTemplate{lastfoot-text-note}{default}{}            
%  }  
%  % if change pages, mark as span pages on aux file
%  \AddToHook{shipout/after}
%  {
%    \iftblr@abnt@mark@spanpages
%      % from https://tex.stackexchange.com/questions/115932/on-the-basics-of-writing-to-reading-from-auxiliary-files-aux-toc-etc
%      \immediate\write\@auxout{\gdef\string\tblr@abnt@spanpages@\roman{table}{true}}
%    \fi
%    %\tblr@abnt@mark@spanpagesfalse
%    % https://tex.stackexchange.com/questions/566884/setting-a-newif-to-false-ignored-on-first-check-in-custom-itemize-environment
%    % to the associated commands act globally
%    \global\let\iftblr@abnt@mark@spanpages\iffalse    
%  }
%\makeatother 
%\end{lstlisting}
%\end{singlespacing}
%
%O cÃ³digo ficou um pouco longo, mas isto configura tanto o \texttt{talltblr} como o \texttt{longtblr} (e \texttt{tblr} com opÃ§Ã£o \texttt{long} ou \texttt{tall}) e funciona tanto na tabela de uma pÃ¡gina como no caso de ocupar mais de uma pÃ¡gina.
%
%Para usar no \texttt{abntexto}, ainda precisa acrescentar o cÃ³digo.
%
%\begin{singlespacing}
%\begin{lstlisting}
%\ExplSyntaxOn
%  \DefTblrTemplate{caption-lot}{default}
%  {
%    \tl_if_empty:NTF \lTblrEntryTl
%      { \tl_set_eq:NN \l__tblr_caption_short_tl \lTblrCaptionTl }
%      { \tl_set_eq:NN \l__tblr_caption_short_tl \lTblrEntryTl }
%    %\addcontentsline { lot } { table }
%    %  { \protect\numberline { \thetable } { \l__tblr_caption_short_tl } }
%    %adicionando na lista pelo comando de abntexto
%    \addtoext{lot}{lofi}{\protect\lotlabelbox{\thetable} {\l__tblr_caption_short_tl}}%          
%  }   
%\ExplSyntaxOff
%\end{lstlisting}
%\end{singlespacing}

Agora, supondo que o \texttt{tabularray} (e \texttt{tabularray-abnt}) com ajuste ao uso de \texttt{booktabs} por \verb+\UseTblrLibrary{booktabs}+ e tambÃ©m foi carregado os pacotes \texttt{url} (ou \texttt{hyperref}) e \texttt{xcolor}. EntÃ£o poderÃ¡ diagramar as tabelas normalmente com o \texttt{tallabnttblr} e \texttt{longabnttblr}, passando a fonte e nota adicional com o parÃ¢metro \texttt{remark},
%no com auxilio do comando \verb+\SetTblrSource+ e \verb+\SetTblrNote+ para tabela flutuante que foi definido no \texttt{preamble}, 
como no Exemplo~\ref{ex19:abnt-table}, cuja a saÃ­da foi omitida.

%\begin{singlespacing}
%\begin{lstlisting}[caption={ex19-abnt-table.tex},label={ex19:abnt-table}]
%A Tabela Tabela~\ref{tab:abnt:flutuante} Ã© o que auto posiciona. Para tabela flutuante, poderÃ¡ usar \texttt{tabular} ou similar normalmente, mas neste exemplo, foi usado o \texttt{talltblr} que aceita mesmos parÃ¢metros de \texttt{longtblr} como o rodapÃ©, etc, mas que pode ser colocado dentro do ambiente \texttt{table}.
%
%\begin{table}[hbp!]
%\centering
%\SetTblrSource{ElaboraÃ§Ã£o do autor} % Usando comando definido no preamble premabulo
%\begin{talltblr}
%[
%  caption={Um tÃ­tulo},
%  label={tab:abnt:flutuante},
%]
%{
%  colspec = {XX}, % colunas de largura automatica
%  row{even} = {gray!15}, % linha par em cinza
%}
%\toprule %\hline
%   produto &amp; preÃ§o \\
%\midrule %\hline
%   cenouras  (500g)          &amp; R\$0,50  \\
%   cogumelos (vidro de 500g) &amp; R\$5,00  \\
%   batata    (1Kg)           &amp; R\$1,20  \\ \midrule % \hline
%   total &amp; R\$6,70 \\
%\bottomrule %\hline
%\end{talltblr}
%\end{table}
%
%A Tabela~\ref{tab:abnt:longa} foi criado pelo ambiente \texttt{longtblr} (que Ã© mesmo que \texttt{tblr} com opÃ§Ã£o ``long'' no primeiro parÃ¢metro do argumento), que requer duas compilaÃ§Ãµes seguidas para ajustar corretamente devido a configuraÃ§Ã£o no preambulo.
%
%\begin{center}
%% Configurando a legenda pelo comando definido no preambulo
%\SetTblrSource{\url{https://blog.nubank.com.br/ipca-2022/}\\
%\url{https://brasilindicadores.com.br/poupanca/}}
%\SetTblrNote{Pode colocar apenas uma nota que Ã© opcional}
%\begin{longtblr}
%[%
%  caption = {InflaÃ§Ã£o (IPCA) e juro de poupanÃ§a de 2022}, % titulo
%  label={tab:abnt:longa}, % rotulo para referÃªncias cruzadas
%]
%{
%  colspec = {XXX}, % colunas de largura automatica
%  rowhead = 1, % primeira linha serÃ¡ repatida em todas pÃ¡ginas
%  row{1} = {font=\bfseries}, % linha de tÃ­tulo
%  row{even} = {gray!50}, % linha par em cinza
%  row{Z} = {font=\bfseries,white}, % Ãºltima linha  
%}
%\toprule
%MÃªs &amp; InglaÃ§Ã£o &amp; PoupanÃ§a \\
%\midrule
%Janeiro   &amp;  0,54 &amp; 0,5608 \\ 
%Fevereiro &amp;  1,01 &amp; 0,5000 \\
%MarÃ§o     &amp;  1,62 &amp; 0,5976 \\
%Abril     &amp;  1,06 &amp; 0,5558 \\
%Maio      &amp;  0,47 &amp; 0,6671 \\
%Junho     &amp;  0,67 &amp; 0,6491 \\
%Julho     &amp; -0,68 &amp; 0,6639 \\
%Agosto    &amp; -0,36 &amp; 0,7421 \\
%Setembro  &amp; -0,29 &amp; 0,6814 \\
%Outubro   &amp;  0,59 &amp; 0,6501 \\
%Novembro  &amp;  0,41 &amp; 0,6515 \\
%Dezembro  &amp;  0,62 &amp; 0,7082 \\
%\bottomrule
%Acumulado do ano &amp; 5,79 &amp; 7,8997 \\
%\begin{tblr}
%\end{lstlisting}
%\end{singlespacing}

\begin{singlespacing}
\begin{lstlisting}[caption={ex19-abnt-table.tex},label={ex19:abnt-table}]
A Tabela Tabela~\ref{tab:abnt:flutuante} Ã© o que auto posiciona. Para tabela flutuante, poderÃ¡ usar \texttt{tabular} ou similar normalmente, mas neste exemplo, foi usado o \texttt{talltblr} que aceita mesmos parÃ¢metros de \texttt{longtblr} como o rodapÃ©, etc, mas que pode ser colocado dentro do ambiente \texttt{table}.

\begin{table}[hbp!]
\centering
\begin{talltblr}
[
  theme=abnt, % Formatar como ABNT
  caption={Um tÃ­tulo},
  label={tab:abnt:flutuante},
  reamrk{Fonte}={ElaboraÃ§Ã£o do autor}, % Usando comando definido no preamble premabulo
]
{
  colspec = {XX}, % colunas de largura automatica
  row{even} = {gray!15}, % linha par em cinza
}
\toprule %\hline
   produto &amp; preÃ§o \\
\midrule %\hline
   cenouras  (500g)          &amp; R\$0,50  \\
   cogumelos (vidro de 500g) &amp; R\$5,00  \\
   batata    (1Kg)           &amp; R\$1,20  \\ \midrule % \hline
   total &amp; R\$6,70 \\
\bottomrule %\hline
\end{talltblr}
\end{table}

A Tabela~\ref{tab:abnt:longa} foi criado pelo ambiente \texttt{longtblr} (que Ã© mesmo que \texttt{tblr} com opÃ§Ã£o ``long'' no primeiro parÃ¢metro do argumento), que requer duas compilaÃ§Ãµes seguidas para ajustar corretamente devido a configuraÃ§Ã£o no preambulo.

\begin{center}
\begin{longtblr}
[%
  theme=abnt, % Formatar como ABNT
  caption = {InflaÃ§Ã£o (IPCA) e juro de poupanÃ§a de 2022}, % titulo
  label={tab:abnt:longa}, % rotulo para referÃªncias cruzadas
  reamrk{Fonte}={\url{https://blog.nubank.com.br/ipca-2022/}\\
\url{https://brasilindicadores.com.br/poupanca/}},
  remark{Nota}={Pode colocar uma nota que Ã© opcional},
]
{
  colspec = {XXX}, % colunas de largura automatica
  rowhead = 1, % primeira linha serÃ¡ repetida em todas as pÃ¡ginas
  row{1} = {font=\bfseries}, % linha de tÃ­tulo
  row{even} = {gray!50}, % linha par em cinza
  row{Z} = {font=\bfseries,white}, % Ãºltima linha  
}
\toprule
MÃªs &amp; InglaÃ§Ã£o &amp; PoupanÃ§a \\
\midrule
Janeiro   &amp;  0,54 &amp; 0,5608 \\ 
Fevereiro &amp;  1,01 &amp; 0,5000 \\
MarÃ§o     &amp;  1,62 &amp; 0,5976 \\
Abril     &amp;  1,06 &amp; 0,5558 \\
Maio      &amp;  0,47 &amp; 0,6671 \\
Junho     &amp;  0,67 &amp; 0,6491 \\
Julho     &amp; -0,68 &amp; 0,6639 \\
Agosto    &amp; -0,36 &amp; 0,7421 \\
Setembro  &amp; -0,29 &amp; 0,6814 \\
Outubro   &amp;  0,59 &amp; 0,6501 \\
Novembro  &amp;  0,41 &amp; 0,6515 \\
Dezembro  &amp;  0,62 &amp; 0,7082 \\
\bottomrule
Acumulado do ano &amp; 5,79 &amp; 7,8997 \\
\begin{longtblr}
\end{lstlisting}
\end{singlespacing}

Se preferir, poderÃ¡ reduzir as fontes do corpo da tabela para \verb+\footnotesize+, o que jÃ¡ Ã© exigido em vÃ¡rias instituiÃ§Ãµes que usam a norma \texttt{ABNT}. Para tal, poderÃ¡ colocar a tabela entre \verb+\begin{footnotesize}+ e \verb+\end{footnotesize}+.
Para que isto seja feita automaticamente, use o comando \verb+\SetAbntTblrFont{\footnotesize}+ que altera as fonte no ambiente \texttt{abnttblr}, \texttt{tallabnttblr} e \texttt{longabnttblr}. Em seguida, troque \texttt{tblr}, \texttt{talltblr} e \texttt{longtblr} para correspondente \texttt{abnt}.

%Se preferir, poderÃ¡ criar um ambiente para que isto seja feito automaticamente.

%\begin{remark}
%O ambiente \texttt{xtabular} do pacote \texttt{xtab} apresenta o comando para saber se tabela cabe ou nÃ£o em uma Ãºnica pÃ¡gina (por exemplo, poderÃ¡ testar se ocupa mais de uma pÃ¡gina por \verb+\ifnum\PWSTlastpage &gt; 1+), mas nÃ£o hÃ¡ configuraÃ§Ã£o padrÃ£o para repetir o nome da tabela na pÃ¡gina seguinte (o que Ã© feito na tabelas de IBGE).
%\end{remark}

No \texttt{ABNT}, tabelas com descriÃ§Ãµes qualitativas (textos em vez de nÃºmeros) Ã© denominado de ``quadros''\index{quadro}. As classes \texttt{ABNTeX2} e \texttt{ABNTexto} nÃ£o implementa o ``quadro'' ainda (2024).
O pacote \texttt{tabularray-abnt} implementa o tema \texttt{quadro} para esta finalidade.

Note que na tabela (tabela de apresentaÃ§Ã£o de dados numÃ©ricos), nÃ£o deve ter fechamento lateral, devendo ser fechado na parte superior e inferior, mas nÃ£o deve haver linhas horizontais no corpo da tabela. TambÃ©m deve ter linha de titulo das colunas no comeÃ§o da tabela, separada de corpo da tabela pela linha horizontal. No caso de tabelas longas que ocupam mais de uma pÃ¡gina, estas linhas de tÃ­tulos devem ser repetidos em todas pÃ¡ginas.

No quadro (tabela de apresentaÃ§Ã£o de dados nÃ£o numÃ©ricos), deve ter fechamento e grades divisÃ³rio.

%Se pretende usar, precisarÃ¡ providenciar o ambiente de quadros, lista de quadros, etc.
%Para ambiente flutuante, poderÃ¡ efetuar com o pacote \texttt{float}\index{float}. Para o caso de quadro longa, poderÃ¡ implementar sobre a tabela longa, mas no caso de usar o \texttt{tabularray}, poderÃ¡ implementar como tema em vez do ambiente, acrescentando um pouco mais de cÃ³digos no \texttt{preamble} anterior.
%
%O cÃ³digo a seguir, assume que estÃ¡ usando a classe \texttt{abntex2} que Ã© baseado \texttt{memoir}, usando o seu recurso em vez do pacote \texttt{float}. O cÃ³digo deve ser acrescentado no cÃ³digo do \texttt{preamble} para tabelas apresentada anteriormente.
%
%\begin{singlespacing}
%\begin{lstlisting}
%% quadros (requer classe derivado de memoir como o abntex2)
%%----------------------------------------------------------
%% Nomes
%\newcommand{\quadroname}{Quadro}
%\newcommand{\listquadroname}{Lista de quadros}
%\addto\captionsbrazil{% portugues-brasil
%  \renewcommand{\quadroname}{Quadro}
%  \renewcommand{\listquadroname}{Lista de quadros}
%}
%\addto\captionsenglish{% ingles
%  \renewcommand{\quadroname}{Text table}
%  \renewcommand{\listquadroname}{List of text table}
%}
%
%% usando comandos do memoir
%%\newfloat[chapter]{quadro}{loq}{\quadroname}
%%\counterwithout{quadro}{chapter}
%\newfloat{quadro}{loq}{\quadroname}
%\newlistof{listadequadros}{loq}{\listquadroname}  
%%\newlistentry[chapter]{quadro}{loq}{0}
%\newlistentry{quadro}{loq}{0}
%
%\cftsetindents{quadro}{0em}{2.3em}
%\renewcommand{\cftquadroname}{\quadroname\space}
%\renewcommand*{\cftquadroaftersnum}{\hfill\textendash\hfill}	
%
%% gravando na lista separada de tabelas
%\ExplSyntaxOn
%\DefTblrTemplate{caption-lot}{quadro}%
%{%
%  \addtocounter{table}{-1}% nÃ£o contar como tabela
%  \stepcounter{quadro}% contar como quadro
%  \tl_if_empty:NTF \lTblrEntryTl
%    {\tl_set_eq:NN \l__tblr_caption_short_tl \lTblrCaptionTl}
%    {\tl_set_eq:NN \l__tblr_caption_short_tl \lTblrEntryTl}
%  %\addcontentsline{lot}{table}%
%  %  {\protect\numberline{\thetable}{\l__tblr_caption_short_tl}}
%  \addcontentsline{loq}{quadro}%
%    {\protect\numberline{\thequadro}{\l__tblr_caption_short_tl}}
%}
%\ExplSyntaxOff
%
%% AtenÃ§Ã£o! NÃ£o deve haver espaÃ§o extra entre chaves e nomes!
%\DefTblrTemplate{caption-tag}{quadro}{\quadroname\hspace{0.25em}\thequadro}
%
%% Definindo o tema
%% AtenÃ§Ã£o! NÃ£o deve haver espaÃ§o extra entre chaves e nomes no \SetTblrTemplate
%\NewTblrTheme{quadro}{%
%  \SetTblrTemplate{caption-tag}{quadro}%
%  \SetTblrTemplate{caption-lot}{quadro}%
%}
%\end{lstlisting}
%\end{singlespacing}
%  
%Com isso, poderÃ¡ usar a tabela e quadros, como no Exemplo~\ref{ex19:abnt-quadro}. A distinÃ§Ã£o entre tabela e quadro serÃ¡ feito pelo \verb+theme=quadro,+ na primeira opÃ§Ã£o do parÃ¢metro opcional de \texttt{longtblr} ou \texttt{talltblr}. 

O tema ``quadro'' configurarÃ¡ para quadro no modo \texttt{ABNT}, como no Exemplo~\ref{ex19:abnt-quadro}. A distinÃ§Ã£o entre tabela e quadro serÃ¡ feito pelo \verb+theme=quadro,+ na primeira opÃ§Ã£o do parÃ¢metro opcional de \texttt{longtblr} ou \texttt{talltblr} (ou da versÃ£o \texttt{abnt} correspondente). 

\begin{singlespacing}
\begin{lstlisting}[caption={ex19-abnt-quadro.tex},label={ex19:abnt-quadro}]
Sem a opÃ§Ã£o do tema ``quadro'', serÃ¡ produzido a tabela. Note que na tabela nÃ£o pode fechar os laterais (Exemplo~\ref{tab:talltblr:simples}).

\begin{table}[hbp!]
\begin{tallabnttblr}
[
  caption={Tabela curta simples},
  label={tab:talltblr:simples},
  remark{Fonte}={ElaboraÃ§Ã£o do autor},
]
{
  colspec = {XX},
}
\toprule
nome &amp; valor \\
a &amp; 1 \\ \midrule
c &amp; 2 \\ \bottomrule
\end{tallabnttblr}
\end{table}

O quadro Ã© produzido pelo tema \texttt{quadro} como no Exemplo~\ref{quadro:longo}. Note que, quadro deve fechar todos os lados e fazer divisÃ³rio.

\begin{longtblr}
[
  theme=quadro, % um quadro
  caption={Um quadro longo simples},
  label={quadro:longo},
  remark{Fonte}={ElaboraÃ§Ã£o do autor},
  remark{Nota}={Usando o tema quadro para produzir quadro},
]
{
  colspec = {XX},
  vlines,hlines, % fazer grade
}
linha 1 &amp; texto 1 \\
linha 2 &amp; texto 2 \\
linha 3 &amp; texto 3 \\
linha 4 &amp; texto 4 \\
linha 5 &amp; texto 5 \\
%\pagebreak % quebrando pÃ¡gina para teste
linha 6 &amp; texto 6 \\
linha 7 &amp; texto 7 \\
linha 8 &amp; texto 8 \\
linha 9 &amp; texto 9 \\
linha 10 &amp; texto 10 \\
\end{longtblr}

Quadro flutuante serÃ¡ produzido pelo ambiente \texttt{quadro}, como no Quadro~\ref{quadro:flutuante}.

\begin{quadro}[hbp!]
\begin{talltblr}
[
  theme=quadro, % um quadro
  caption={Quadro flutuante simples},
  label={quadro:flutuante},
  remark{Fonte}={ElaboraÃ§Ã£o do autor},
]
{
  colspec = {XX},
  vlines,hlines, % grades
}
Nome 1 &amp; Sobrenome 1 \\
Nome 2 &amp; Sobrenome 2 \\
\end{talltblr}
\end{quadro}
\end{lstlisting}
\end{singlespacing}
  
A diferenÃ§a entre \texttt{tblr}/\texttt{talltblr}/\texttt{longtblr} com 
\texttt{abnttblr}/\texttt{tallabnttblr}/\texttt{longabnttblr} e que nas versÃµes \texttt{abnt} pode configurar a fonte da tabela com \verb+\SetAbntTblrFont+, alÃ©m de jÃ¡ aplicar o tema \texttt{abnt} por padrÃ£o.
 
 No \texttt{ABNTeX2}, a tebela ou quadro curto produzido pelo \verb+\IBGEtab+\index{IBGEtab@\verb+\IBGEtab+} com o ambiente \texttt{table} ou \texttt{quadro} estarÃ¡ em sincronismo com os produzidos pelo tema \texttt{abnt} ou \texttt{quadro} nos ambientes de \texttt{tabularray} ou \texttt{tabualrray-abnt}. 
 
 No caso da classe \texttt{ABNTexto}, o ambiente \texttt{quadro} nÃ£o Ã© providenciado. EntÃ£o use o ambiente \texttt{table} para o caso de querer usar o quadro curto flutuante. Em vez do ambiente quadro, terÃ¡ a entrada de legenda \texttt{quadro} que estarÃ¡ em sincronismo com o tema \texttt{quadro} do \texttt{tblr} e similar.
  
%A lista de quadros para configuraÃ§Ã£o anterior, serÃ¡ produzida com o comando \verb+\listadequadros+. Para nÃ£o constar no sumÃ¡rio, use a versÃ£o ``*''.

A lista de quadros poderÃ¡ ser produzido pelo comando \verb+\listadequadros+. No caso de \texttt{ABNTeX2} ou derivados da classe \texttt{memoir}, use a versÃ£o ``*'' para nÃ£o constar no sumÃ¡rio.
No caso de \texttt{abntexto}, terÃ¡ o comando \verb+makeloq+ para lista de quadros, que funcionarÃ¡ de mesma forma que \verb+\makelot+.

%Para a classe \texttt{abntexto}, a definiÃ§Ã£o de novo ambiente estilo tabelas Ã© feito pelo \verb+\definelegendplace+. Para este caso, tambÃ©m nÃ£o vamos usar o pacote \texttt{float} para compatibilizar com ambientes jÃ¡ existentes. Acrescente o cÃ³digo seguinte no \texttt{preamble} jÃ¡ com configuraÃ§Ã£o de tabelas anteriores, observando que o tema criado Ã© \texttt{texttab} em vez de \texttt{quadro} para uniformidade do idioma.
%
%\begin{singlespacing}
%\begin{lstlisting}
%% quadro (texttab -- text table)
%\newcommand{\texttabname}{Quadro}
%\newcommand{\listtexttabname}{Lista de quadros}
%\addto\captionsbrazil{% portugues-brasil
%  \renewcommand{\texttabname}{Quadro}
%  \renewcommand{\listtexttabname}{Lista de quadros}
%}
%\addto\captionsenglish{% ingles
%  \renewcommand{\texttabname}{Text table}
%  \renewcommand{\listtexttabname}{List of text table}
%}
%
%% ABNTexto
%\ExplSyntaxOn
%  \definelegendplace{texttab}{Quadro}{quad.\,}{lott} % nova entrada de legenda 
%
%  \DefTblrTemplate {caption-lot}{texttab}
%  {
%    \addtocounter{table}{-1}% nÃ£o contar como table
%    % contador criado pelo \definelegendplace{texttab} nÃ£o Ã© \c@textab, mas counttexttab que requer incrementar pelo comando de TeX.
%    \global\advance\counttexttab by 1% contar como texttab
%    \tl_if_empty:NTF \lTblrEntryTl
%      {\tl_set_eq:NN \l__tblr_caption_short_tl \lTblrCaptionTl}
%      {\tl_set_eq:NN \l__tblr_caption_short_tl \lTblrEntryTl}
%    %adicionando no sumÃ¡rio pelo comando de abntexto
%    \addtoext{lott}{lotti}{\protect\lottlabelbox{\the\counttexttab} {\l__tblr_caption_short_tl}}%
%  }
%\ExplSyntaxOff
%
%% AtenÃ§Ã£o! NÃ£o deve haver espaÃ§o entre chaves e parametros
%\DefTblrTemplate{caption-tag}{texttab}{\texttabname\hspace{0.25em}\the\counttexttab}
%
%% AtenÃ§Ã£o! NÃ£o deve haver espaÃ§o entre chaves e parametros, no \SetTblrTemplate
%\NewTblrTheme{texttab}{
%  \SetTblrTemplate{caption-lot}{texttab}
%  \SetTblrTemplate{caption-tag}{texttab}
%}
%\end{lstlisting}
%\end{singlespacing}
%
%Para produzir quadros, basta usar o tema \texttt{texttab} que foi criada, como no Exemplo~\ref{ex19:abnt-quadro-abntexto}.
%
%\begin{singlespacing}
%\begin{lstlisting}[caption={ex19-abnt-quadro-abntexto.tex},label={ex19:abnt-quadro-abntexto}]
%Sem a opÃ§Ã£o do tema, serÃ¡ produzido a tabela. Note que na tabela nÃ£o pode fechar os laterais (Exemplo~\ref{tab:talltblr:simples}).
%
%\SetTblrSource{ElaboraÃ§Ã£o do autor}
%\begin{table}[hbp!]
%\begin{talltblr}
%[
%  caption={Tabela curta simples},
%  label={tab:talltblr:simples},
%]
%{
%  colspec = {XX},
%}
%\toprule
%nome &amp; valor \\
%a &amp; 1 \\ \midrule
%c &amp; 2 \\ \bottomrule
%\end{talltblr}
%\end{table}
%
%O quadro Ã© produzido pelo tema \texttt{texttab} como no Exemplo~\ref{quadro:longo}. Note que, quadro deve fechar todos os lados e fazer divisÃ³rio.
%
%\SetTblrSource{ElaboraÃ§Ã£o do autor}
%\SetTblrNote{Usando o tema quadro para produzir quadro}
%\begin{longtblr}
%[
%  theme=texttab,
%  caption={Um quadro longo simples},
%  label={quadro:longo},
%]
%{
%  colspec = {XX},
%  vlines,hlines, % fazer grade
%}
%linha 1 &amp; texto 1 \\
%linha 2 &amp; texto 2 \\
%linha 3 &amp; texto 3 \\
%linha 4 &amp; texto 4 \\
%linha 5 &amp; texto 5 \\
%\pagebreak % quebrando pÃ¡gina para teste
%linha 6 &amp; texto 6 \\
%linha 7 &amp; texto 7 \\
%linha 8 &amp; texto 8 \\
%linha 9 &amp; texto 9 \\
%linha 10 &amp; texto 10 \\
%\end{longtblr}
%
%Quadro flutuante poderÃ¡ ser produzido pelo ambiente \texttt{table} com \texttt{talltblr} dentro, como no Quadro~\ref{quadro:flutuante}.
%
%\begin{table}[hbp!]
%\SetTblrSource{ElaboraÃ§Ã£o do autor}
%\begin{talltblr}
%[
%  theme=texttab,
%  caption={Quadro flutuante simples},
%  label={quadro:flutuante},
%]
%{
%  colspec = {XX},
%  vlines,hlines, % grades
%}
%Nome 1 &amp; Sobrenome 1 \\
%Nome 2 &amp; Sobrenome 2 \\
%\end{talltblr}
%\end{table}
%
%Contagem estÃ¡ sincronizado com o \verb+\legend+ como no Quadro~\ref{quadro:curto}.
%
%\legend{texttab}{Teste do quadro curto nÃ£o flutuante}
%\src{ElaboraÃ§Ã£o do autor}
%\label{quadro:curto}
%\place{Quadro curto nÃ£o flutuante aqui.}
%
%\end{lstlisting}
%\end{singlespacing}
%
%Para criar lista de quadros, use o comando
%\begin{singlespacing}
%\begin{lstlisting}
%\notoc\nonum\chapter{Lista de quadros}
%\makelott+
%\end{lstlisting}
%\end{singlespacing}

No caso de \texttt{ABNTexto}, se tiver pouco espaÃ§o entre ``FIGURA ??'' com o nome das figuras na lista de figuras, ou similares, poderÃ¡ aumentar com os comandos

\begin{singlespacing}
\begin{lstlisting}
\renewcommand{\loflabelwidth}{7.5em} % da lista de figuras
\renewcommand{\lotlabelwidth}{7.5em} % da lista de tabelas
\renewcommand{\loqlabelwidth}{8em} % da lista de quadros
\end{lstlisting}
\end{singlespacing}

%Para criar o quadro no documento genÃ©rico, use o pacote \texttt{float} como segue, o que deve ser colocado junto com definiÃ§Ã£o de tabelas \texttt{ABNT}.
%
%\begin{singlespacing}
%\begin{lstlisting}
%% quadros
%\newcommand{\quadroname}{Quadro}
%\newcommand{\listofquadrosname}{Lista de quadros}
%
%\newcommand{\listadeqadros}{\listof{quadro}{\listofquadrosname}}
%
%\newfloat{quadro}{tbp}{loq}%[chapter]
%%\counterwithout{quadro}{chapter} desvincular no capÃ­tulo
%
%%% We need to use \hspace and \enskip, but not ~ or \space,
%%% since we want a correct hangindent caption paragraph.
%
%%AtenÃ§Ã£o! NÃ£o pode haver espaÃ§o entre chaves e parametros
%\DefTblrTemplate {caption-tag} {quadro} {\quadroname\hspace{0.25em}\thequadro}
%
%%AtenÃ§Ã£o! NÃ£o pode haver espaÃ§o entre chaves e parametros
%\NewTblrTheme{quadro}{
%  \SetTblrTemplate{caption-tag}{quadro}
%  \SetTblrTemplate{caption-lot}{quadro}
%}
%
%\ExplSyntaxOn
%\DefTblrTemplate { caption-lot } { quadro }
%{
%  \addtocounter{table}{-1}
%  \stepcounter{quadro}
%  \tl_if_empty:NTF \lTblrEntryTl
%    { \tl_set_eq:NN \l__tblr_caption_short_tl \lTblrCaptionTl }
%    { \tl_set_eq:NN \l__tblr_caption_short_tl \lTblrEntryTl }
%  \addcontentsline { loq } { table }
%    { \protect\numberline { \thequadro } { \l__tblr_caption_short_tl } }
%}
%\ExplSyntaxOff
%\end{lstlisting}
%\end{singlespacing}


%%%%%%%%%%%%%% APÃŠNDICE %%%%%%%%%%

\clearpage\thispagestyle{empty}\cleardoublepage
\appendix
\chapter{SÃ­mbolos BÃ¡sicos de \LaTeX\protect\index{simbolos basicos@{sÃ­mbolos bÃ¡sicos}}}
Aqui, veremos os sÃ­mbolos bÃ¡sicos de \LaTeX{} que nÃ£o requer o uso de pacotes adicionais. 

Em geral, os editores atuais para \LaTeX{} costumam apresentar painel de inserÃ§Ã£o de sÃ­mbolos, o que torna desnecessÃ¡rio ter lista de sÃ­mbolos em mÃ£o.
Atualmente, muitos sistemas disponÃ­veis na internet tais como alguns \texttt{blog}'s, \texttt{wiki}'s e sistema de ensino/aprendizagem \texttt{moodle} costumam ativar a fÃ³rmula \LaTeX{} atravÃ©s de \texttt{mimetex}, \texttt{mathjax}, \texttt{KaTeX}, ou similar.
Alguns destes permitem somente os comandos e sÃ­mbolos bÃ¡sicos sem os pacotes para deixar mais leve, enquanto que outros ativam os pacotes do \texttt{AMS} por padrÃ£o para incrementar a sua funcionalidade.

Aqui serÃ¡ apresentado somente os sÃ­mbolos bÃ¡sicos que poderÃ£o ser usados em qualquer sistema na qual o suporte da fÃ³rmula \LaTeX{} esteja ativa. Para usar o sistema na qual os pacotes do \texttt{AMS} estÃ¡ ativa, Ã© aconselhÃ¡vel procurar os sÃ­mbolos e construÃ§Ãµes adicionais no outro material.

Existem pacotes especÃ­ficos para cada Ã¡rea, adicionando sÃ­mbolos e funcionalidades adicionais. Assim, Ã© importante estudar pacotes relacionados Ã&nbsp; Ã¡rea desejada.
Por exemplo, na Ã¡rea de matemÃ¡tica, costuma usar os pacotes do AMS (\texttt{amsmath}, \texttt{amssymb}, \texttt{amsthm}).

Para procurar sÃ­mbolos incomuns, existe uma lista completa de sÃ­mbolos do \LaTeX{} \cite{book:pakin:2017} disponÃ­vel gratuitamente.

\section{Caracteres especiais e acentuaÃ§Ã£o no modo \TeX\protect\index{acentuacao@{acentuaÃ§Ã£o}!modo TeX}}
Alguns caracteres sÃ£o reservados no \LaTeX{} e requer o uso de comandos para inserir no documento. AlÃ©m dos caracteres reservados, alguns caracteres extras (nÃ£o \texttt{ASCII}) tambÃ©m podem ser produzidos.
Dependendo do caso, ainda precisa da acentuaÃ§Ã£o pelo comando (acentuaÃ§Ã£o no modo \TeX) como no caso de usa o \BibTeX{} na qual nÃ£o consegue lidar com os caracteres acentuados.

O Exemplo~\ref{ex-a:especiais-acentuacao}%
\index{caracter especial!\textbackslash chaveaberta@\curlyopensymbforindex}%
\index{caracter especial!\textbackslash chavefechada@\curlyclosesymbforindex}%
%\index{\{}\index{\}}
\index{modo texto!simbolo@{sÃ­mbolo}!\textbackslash chaveaberta@\curlyopensymbforindex}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\textbackslash chaveaberta@\curlyopensymbforindex}%
\index{modo texto!simbolo@{sÃ­mbolo}!\textbackslash chavefechada@\curlyclosesymbforindex}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\textbackslash chavefechada@\curlyclosesymbforindex}%
%\index{\{}\index{\}}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\$+, \$}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\$+, $\$$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\%+, \%}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\%+, $\%$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+_+, \_{}}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+_+, $\_{}$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\&amp;+, \&amp;}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\&amp;+, $\&amp;$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\#+, \#}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\#+, $\#$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\copyright+, \copyright}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\copyright+, $\copyright$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\dag+, \dag}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\dag+, $\dag$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\ddag+, \ddag}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\ddag+, $\ddag$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\dots+, \dots}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\dots+, $\dots$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\P+, \P}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\P+, $\P$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\pounds+, \pounds}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\pounds+, $\pounds$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\S+, \S}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\S+, $\S$}%
%
\index{modo texto!caracter especial!\verb+\aa+, \aa}\index{modo texto!caracter especial!\verb+\AA+, \AA}%
\index{modo texto!caracter especial!\verb+\ae+, \ae}\index{modo texto!caracter especial!\verb+\AE+, \AE}%
\index{modo texto!caracter especial!\verb+\ij+, \ij}\index{modo texto!caracter especial!\verb+\IJ+, \IJ}%
\index{modo texto!caracter especial!\verb+\l+, \l}\index{modo texto!caracter especial!\verb+\L+, \L}%
\index{modo texto!caracter especial!\verb+\o+, \o}\index{modo texto!caracter especial!\verb+\O+, \O}%
\index{modo texto!caracter especial!\verb+\oe+, \oe}\index{modo texto!caracter especial!\verb+\OE+, \OE}%
\index{modo texto!caracter especial!\verb+\ss+, \ss}\index{modo texto!caracter especial!\verb+\SS+, \SS}%
%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}}%
\index{modo texto!letra circulada, \verb+\textcircled{a}+, \textcircled{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!i sem pingo,\verb+\i+,\i}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!j sem pingo,\verb+\j+,\j}%
\index{modo texto!apostrofos@{apÃ³strofos}}%
\index{modo texto!aspas}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\\verb+\"{a}+, +, \"{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\'{a}+, \'{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\.{a}+, \.{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\={a}+, \={a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\^{a}+, \^{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\`{a}+, \`{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\~{a}+, \~{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\b{a}+, \b{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\c{c}+, \c{c}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\d{a}+, \d{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\H{a}+, \H{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\r{a}+, \r{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\t{a}+, \t{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\u{a}+, \u{a}}%
\index{modo texto!acentuacao@{acentuaÃ§Ã£o}!\verb+\v{a}+, \v{a}}%
 lista estes comandos que devem funcionar para qualquer configuraÃ§Ã£o.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-especiais-acentuacao.tex},label=ex-a:especiais-acentuacao]
Caracteres especiais (modo texto e matemÃ¡tico)

\{  \}  \$  \%  \_  \&amp;  \#

\copyright \dag \ddag \dots \P \pounds \S
 
% \ tambÃ©m Ã© caractere especial, mas usa o comando diferente para o modo texto (\textbackslash) e modo matemÃ¡tico (\backslash).

Caracteres nÃ£o \texttt{ASCII} (modo texto)

\aa  \AA  \ae \AE

\ij \IJ

\l \L  \o \O

\oe  \OE  \ss  \SS

AcentuaÃ§Ã£o no modo texto

\"{A}\"{a}
\'{A}\'{a}
\.{A}\.{a}
\={A}\={a}
\^{A}\^{a}
\`{A}\`{a}

\~{A}\~{a}
\b{A}\b{a}
\c{C}\c{c}
\d{A}\d{a}
\H{A}\H{a}
\r{A}\r{a}
\t{A}\t{a}
\u{A}\u{a}
\v{A}\v{a}

Circulando a letra

\textcircled{A}\textcircled{a}

i e j sem pingo

\i  \j

ApÃ³strofos e aspas

` (ou ^^ ) e '

`` (ou ^^ ^^ ) e ''

Pontos para abreviaturas, colocar espaÃ§o forÃ§ado \verb*+\ + depois dele
para distinguir do ponto final como em ``i.\ Ã©.\ ''.

O ponto sem espaÃ§o depois dele Ã© inserido com \verb+\@.+ como em ``p\@.v\@.i\@.''.

\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Note que, para abrir apÃ³strofo\index{modo texto!apostrofo@{apÃ³strofo}} (ou aspas\index{modo texto!aspas}), usa-se um (ou dois) acentos agudos e para fechar, usa-se um (ou dois) apÃ³strofos. Na falta de acento crase no teclado, poderÃ¡ substituir cada um dos acentos crase por dois acentos circunflexos seguidos de um espaÃ§o.

Os comandos \verb+\i+ e \verb+\j+ produz i e j sem pingo para ser acentuados. Por exemplo, ``sa\'{\i}da''. 
No LaTeX atual, devem produzir corretamente mesmo sem usar \verb+\i+ como em ``sa\'{i}da''.

\section{SÃ­mbolos no modo texto\protect\index{simbolos@{sÃ­mbolos}!modo texto}}
Alguns comandos dos sÃ­mbolos funcionam tanto no modo matemÃ¡tico, como no modo texto, mas maioria dos comandos funcionam somente no modo texto ou no modo matemÃ¡tico.

O Exemplo~\ref{ex-a:simbolos-texto}%
\index{modo texto!simbolo@{sÃ­mbolo}!\textbackslash chaveaberta@\curlyopensymbforindex}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\textbackslash chaveaberta@{$\curlyopensymbforindex$}}%
\index{modo texto!simbolo@{sÃ­mbolo}!\textbackslash chavefechada@\curlyclosesymbforindex}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\textbackslash chavefechada@{$\curlyclosesymbforindex$}}%
%\index{\{}\index{\}}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\$+, \$}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\$+, $\$$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\%+, \%}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\%+, $\%$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+_+, \_{}}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+_+, $\_{}$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\&amp;+, \&amp;}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\&amp;+, $\&amp;$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\#+, \#}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\#+, $\#$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\copyright+, \copyright}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\copyright+, $\copyright$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\dag+, \dag}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\dag+, $\dag$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\ddag+, \ddag}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\ddag+, $\ddag$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\dots+, \dots}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\dots+, $\dots$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\P+, \P}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\P+, $\P$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\pounds+, \pounds}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\pounds+, $\pounds$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\S+, \S}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\S+, $\S$}%
%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textasciicircum+, \textasciicircum}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textasciitilde+, \textasciitilde}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textasteriskcentered+, \textasteriskcentered}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textbackslash+, \textbackslash}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textbar+, \textbar}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textbardbl+, \textbardbl}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textbullet+, \textbullet}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textemdash+, \textemdash}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textendash+, \textendash}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textexclamdown+, \textexclamdown}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textquestiondown+, \textquestiondown}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textordfeminine+, \textordfeminine}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textordmasculine+, \textordmasculine}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textperiodcentered+, \textperiodcentered}%
%\index{\textquotedblleft}\index{\verb+\textquotedbright+, \textquotedblright}%
%\index{\textquoteleft}\index{\verb+\textquoteright+, \textquoteright}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textregistered+, \textregistered}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\texttrademark+, \texttrademark}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\textvisiblespace+, \textvisiblespace}%
 lista comandos que funcionam no modo texto (incluindo os que funcionam tanto no modo texto como no modo matemÃ¡tico).

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-simbolos-texto.tex},label=ex-a:simbolos-texto]
Comandos que funcionam tanto no modo texto como no modo matemÃ¡tico.

\{  \}  \$  \%  \_  \&amp;  \#

\copyright  \dag  \ddag  \dots

\P  \pounds  \S

Comando que funcionam somente no modo texto.

%\textasciicircum % mesmo que \^{}
%\textasciitilde % mesmo que \~{}
\textasteriskcentered
\textbackslash
\textbar
\textbardbl
%\textbraceleft % use \{
%\textbraceright % use \}
\textbullet
%\textcopyright % use \copyright
%\textdagger % use \dag
%\textdaggerdbl % use \ddag
%\textdollar % use \$
%\textellipsis % use \dots

---
--
%\textemdash{} % mesmo que ---
%\textendash % mesmo que --

!`?`
%\textexclamdown % mesmo que !`
%\textquestiondown % mesmo que ?`

%\textgreater % use &gt;
%\textless % use &lt;

\textordfeminine
\textordmasculine
%\textparagraph % use \P
\textperiodcentered

%\textquotedblleft %use ``
%\textquotedblright % use ''
%\textquoteleft % use `
%\textquoteright % use '

\textregistered
%\textsection % use \S
%\textsterling % use \pounds
\texttrademark
%\textunderscore % use \_
\textvisiblespace
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Pontos de exclamaÃ§Ã£o e interrogaÃ§Ã£o invertidos sÃ£o obtidos, colocando acento crase apÃ³s eles. Na falta do acento crase no teclado, existem os comandos \verb+\textexclamdown+ e \verb+\textquestiondown+ para produzir eles.

Existem muitos outros sÃ­mbolos que podem ser acessados no modo texto com o uso do pacote \texttt{textcomp}\index{textcomp} que faz parte da base do sistema \TeX.

\section{SÃ­mbolos matemÃ¡ticos\protect\index{simbolos@{sÃ­mbolos}!matematicos@{matemÃ¡ticos}}}

Mo modo matemÃ¡tico, algumas construÃ§Ãµes bÃ¡sicas\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}} estÃ£o disponÃ­veis, como ilustrado no Exemplo~\ref{ex-a:math-construcao}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!\verb+^+}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!expoente}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!\verb+_+}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!indice@{Ã­ndice}}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!'@{$'$}}%
\index{derivada}\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!frac@{\verb+\frac+}}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!fracao@{fraÃ§Ã£o}}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!sqrt@{\verb+\sqrt+}}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!raiz}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!stackrel@{\verb+\stackrel+}}%
\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!atop@{\verb+\atop+}}%
.
Para construÃ§Ãµes mais complexas, deve considerar o uso do pacote \texttt{amsmath} de \texttt{AMS} que faz parte da base do sistema \TeX.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-construcao.tex},label=ex-a:math-construcao]
Algumas construÃ§Ãµes bÃ¡sicas
$
x^{n} % expoente
x_{i+1} % Ã­ndice
x_i^{n+1} % Ã­ndice e expoente
f' % derivada de f
\frac{m}{n} % fraÃ§Ã£o
\sqrt{2} % raiz quadrada
\sqrt[n]{x} % raiz n-Ã©sima
\stackrel{f}{\to} % colocando nome encima
{X \atop Y} % empilhando
{\displaystyle\mathop{X}_i^j} % Ã­ndice encima/embaixo
$
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O comando \verb+\mathop+\index{modo matematico@{modo matemÃ¡tico}!construcao basica@{construÃ§Ã£o bÃ¡sica}!mathop@{\verb+\mathop+}}
 permite colocar elementos embaixo/encima em vez de Ã­ndice/expoente no modo \texttt{display}. 
Para usar temporariamente o modo \texttt{display} dentro do modo \texttt{inline}, basta usar o comando \verb+\displaystyle+\index{displaystyle@{\verb+\displaystyle+}}. 

Existem caracteres que podem ser usados diretamente na qual o \LaTeX{} substitui diretamente com o sÃ­mbolo adequado. Estes sÃ­mbolos, juntamente com os sÃ­mbolos que funcionam tambÃ©m no modo texto (apresentado tambÃ©m no Exemplo~\ref{ex-a:simbolos-texto}) estÃ£o no Exemplo~\ref{ex-a:math-basic}%
\index{modo texto!simbolo@{sÃ­mbolo}!\textbackslash chaveaberta@\curlyopensymbforindex}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\textbackslash chaveaberta@{$\curlyopensymbforindex$}}%
\index{modo texto!simbolo@{sÃ­mbolo}!\textbackslash chavefechada@\curlyclosesymbforindex}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\textbackslash chavefechada@{$\curlyclosesymbforindex$}}%
%\index{\{}\index{\}}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\$+, \$}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\$+, $\$$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\%+, \%}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\%+, $\%$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+_+, \_{}}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+_+, $\_{}$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\&amp;+, \&amp;}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\&amp;+, $\&amp;$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\#+, \#}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\#+, $\#$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\copyright+, \copyright}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\copyright+, $\copyright$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\dag+, \dag}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\dag+, $\dag$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\ddag+, \ddag}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\ddag+, $\ddag$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\dots+, \dots}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\dots+, $\dots$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\P+, \P}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\P+, $\P$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\pounds+, \pounds}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\pounds+, $\pounds$}%
\index{modo texto!simbolo@{sÃ­mbolo}!\verb+\S+, \S}\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\verb+\S+, $\S$}%
%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!$+$}%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!$-$}%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!$/$}%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!$&lt;$}%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!$&gt;$}%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!$=$}%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!$,$}%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!$.$}%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!$;$}%
\index{modo matematico@{modo matemÃ¡tico}!basico@{bÃ¡sico}!\exclsymbforindex}%
.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-simbolos-basicos.tex},label=ex-a:math-basic]
Comandos que funcionam tanto no modo texto como no modo matemÃ¡tico.

$\{  \}  \$  \%  \_  \&amp;  \#$
~
$\copyright  \dag  \ddag  \dots$
~
$\P  \pounds  \S$

SÃ­mbolos que podem ser usados diretamente

$+  -  :  /  &lt;  &gt;  =  ,  .  ;  !$
$:$ Ã© para relaÃ§Ã£o (para pontuaÃ§Ã£o, use $\colon$)
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

As letras gregas\index{letras gregas} maiÃºsculas estÃ£o disponÃ­veis somente uma parte dela, como pode ser observado no Exemplo~~\ref{ex-a:math-greek}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\alpha+, $\alpha$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\beta+, $\beta$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\gamma+, $\gamma$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\delta+, $\delta$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\epsilon+, $\epsilon$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\varepsilon+, $\varepsilon$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\zeta+, $\zeta$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\eta+, $\eta$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\theta+, $\theta$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\vartheta+, $\vartheta$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\iota+, $\iota$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\kappa+, $\kappa$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\lambda+, $\lambda$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\mu+, $\mu$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\nu+, $\nu$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\xi+, $\xi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!$o$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\pi+, $\pi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\varphi+, $\varpi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\rho+, $\rho$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\varrho+, $\varrho$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\sigma+, $\sigma$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\varsigma+, $\varsigma$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\tau+, $\tau$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\upsilon+, $\upsilon$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\phi+, $\phi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\varphi+, $\varphi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\chi+, $\chi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\psi+, $\psi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega!\verb+\omega+, $\omega$}%
%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Gamma+, $\Gamma$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Delta+, $\Delta$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Theta+, $\Theta$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Lambda+, $\Lambda$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Xi+, $\Xi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Pi+, $\Pi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Sigma+, $\Sigma$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Upsilon+, $\Upsilon$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Phi+, $\Phi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Psi+, $\Psi$}%
\index{modo matematico@{modo matemÃ¡tico}!grega maiuscula@{grega maiÃºscula}!\verb+\Omega+, $\Omega$}%
%
 que lista estes comandos.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-grega.tex},label=ex-a:math-greek]
Letra grega minÃºscula
$\alpha  \beta  \gamma  \delta  \epsilon  \varepsilon$
~
$\zeta  \eta  \theta  \vartheta  \iota  \kappa  \lambda$
~
$\mu  \nu  \xi  o  \pi  \varpi  \rho  \varrho  \sigma \varsigma$
~
$\tau  \upsilon  \phi  \varphi  \chi  \psi  \omega$

Note que \texttt{omikron} nÃ£o tem comando correspondente por ser mesmo sÃ­mbolo que o ``o'' minÃºsculo.

Letra grega maiÃºscula (muitos deles sÃ£o mesmos da letra romana maiÃºscula, nÃ£o tendo comandos correspondentes)

$\Gamma  \Delta  \Theta  \Lambda  \Xi  \Pi$
~
$\Sigma  \Upsilon  \Phi  \Psi  \Omega$
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Agora, veja os operadores binÃ¡rios\index{operador binÃ¡rio} e relaÃ§Ãµes binÃ¡ria\index{relaÃ§Ã£o binÃ¡ria} no Exemplo~\ref{ex-a:math-binary}.%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\amalg+, $\amalg$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\ast+, $\ast$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\bigcirc+, $\bigcirc$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\bigtriangledown+, $\bigtriangledown$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\bigtriangleup+, $\bigtriangleup$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\bullet+, $\bullet$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\cap+, $\cap$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\cdot+, $\cdot$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\circ+, $\circ$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\cup+, $\cup$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\dagger+, $\dagger$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\diamond+, $\diamond$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\div+, $\div$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\mp+, $\mp$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\odot+, $\odot$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\ominus+, $\ominus$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\oplus+, $\oplus$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\oslash+, $\oslash$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\otimes+, $\otimes$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\pm+, $\pm$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\setminus+, $\setminus$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\sqcap+, $\sqcap$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\sqcup+, $\sqcup$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\times+, $\times$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\triangleleft+, $\triangleleft$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\triangleright+, $\triangleright$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\uplus+, $\uplus$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\vee+, $\vee$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\wedge+, $\wedge$}%
\index{modo matematico@{modo matemÃ¡tico}!binario@{binÃ¡rio}!\verb+\wr+, $\wr$}%
%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\bigcap+, $\bigcap$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\bigotimes+, $\bigotimes$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\bigwedge+, $\bigwedge$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\bigcup+, $\bigcup$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\bigsqcup+, $\bigsqcup$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\coprod+, $\coprod$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\bigodot+, $\bigodot$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\biguplus+, $\biguplus$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\int+, $\int$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\bigoplus+, $\bigoplus$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\bigvee+, $\bigvee$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\oint+, $\oint$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\sum+, $\sum$}%
\index{modo matematico@{modo matemÃ¡tico}!binario ajustavel@{binÃ¡rio ajustÃ¡vel}!\verb+\prod+, $\prod$}%
%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\approx+, $\approx$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\asymp+, $\asymp$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\bowtie+, $\bowtie$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\cong+, $\cong$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\doteq+, $\doteq$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\equiv+, $\equiv$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\frown+, $\frown$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\mid+, $\mid$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\models+, $\models$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\parallel+, $\parallel$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\perp+, $\perp$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\prec+, $\prec$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\preceq+, $\preceq$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\propto+, $\propto$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\sim+, $\sim$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\simeq+, $\simeq$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\smile+, $\smile$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\succ+, $\succ$}%
\index{modo matematico@{modo matemÃ¡tico}!relacao@{relaÃ§Ã£o}!\verb+\succeq+, $\succeq$}%
%
 que requer comandos.
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-simbolo-binario.tex},label=ex-a:math-binary]
Operadores binÃ¡rios

$\amalg  \ast  \bigcirc  \bigtriangledown  \bigtriangleup$
~
$\bullet  \cap  \cdot  \circ  \cup  \dagger  \ddagger  \diamond$
~
$\div  \mp  \odot  \ominus  \oplus  \oslash  \otimes  \pm$
~
$\setminus  \sqcap  \sqcup  \star  \times  \triangleleft  \triangleright$
~
$\uplus  \vee  \wedge  \wr$

Nota: Para indicar o grau, costuma usar o \verb+\circ+ como em $90^\circ$.

Operadores de tamanhos variÃ¡veis.

$\bigcap  \bigotimes  \bigwedge  \bigcup  \bigsqcup  \coprod$
~
$\bigodot  \biguplus  \int  \bigoplus  \bigvee  \oint$
~
$\sum  \prod$
Exemplo: $\sum_{i=1}^n\frac{1}{i}$ e  
$\prod_{i=1}^n i = i!$

RelaÃ§Ã£o binÃ¡ria

$\approx  \asymp  \bowtie  \cong  \dashv  \doteq$
~
$\equiv  \frown  \mid  \models  \parallel  \perp$
~
$\prec  \preceq  \propto  \sim  \simeq  \smile  \succ  \succeq$
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

A diferenÃ§a entre \verb+\mid+ e \verb+|+ Ã© que o primeiro Ã© um operador binÃ¡rio (como em $a\mid b$ que Ã© $a$ divide $b$), enquanto que o segundo nÃ£o Ã© (como em $|a|$ que Ã© valor absoluto de $a$)

Setas\index{seta} estÃ£o ilustradas no Exemplo~\ref{ex-a:math-arrow}.%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\Downarrow+, $\Downarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\downarrow+, $\downarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\hookleftarrow+, $\hookleftarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\hookrightarrow+, $\hookrightarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\leftarrow+, $\leftarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\Leftarrow+, $\Leftarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\Leftrightarrow+, $\Leftrightarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\leftrightarrow+, $\leftrightarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\longleftarrow+, $\longleftarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\Longleftarrow+, $\Longleftarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\longleftrightarrow+, $\longleftrightarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\Longleftrightarrow+, $\Longleftrightarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\longmapsto+, $\longmapsto$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\Longrightarrow+, $\Longrightarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\longrightarrow+, $\longrightarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\mapsto+, $\mapsto$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\nearrow+, $\nearrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\nwarrow+, $\nwarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\Rightarrow+, $\Rightarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\rightarrow+, $\rightarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\searrow+, $\searrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\swarrow+, $\swarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\uparrow+, $\uparrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\Uparrow+, $\Uparrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\updownarrow+, $\updownarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\Updownarrow+, $\Updownarrow$}%
%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\leftharpoondown+, $\leftharpoondown$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\leftharpoonup+, $\leftharpoonup$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\rightharpoondown+, $\rightharpoondown$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\rightharpoonup+, $\rightharpoonup$}%
\index{modo matematico@{modo matemÃ¡tico}!seta!\verb+\rightleftharpoons+, $\rightleftharpoons$}%
%
\index{modo matematico@{modo matemÃ¡tico}!se, e somente se!\verb+\iff+, $\iff$}%
\index{modo matematico@{modo matemÃ¡tico}!implica!\verb+\implies+, $\implies$}%
%
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-setas.tex},label=ex-a:math-arrow]
Setas

$\Downarrow  \downarrow  \hookleftarrow  \hookrightarrow$
~
$\leftarrow  \Leftarrow  \Leftrightarrow  \leftrightarrow$
~
$\longleftarrow  \Longleftarrow  \longleftrightarrow  \Longleftrightarrow$
~
$\longmapsto  \Longrightarrow  \longrightarrow  \mapsto$
~
$\nearrow  \nwarrow  \Rightarrow  \rightarrow  \searrow  \swarrow$
~
$\uparrow  \Uparrow  \updownarrow  \Updownarrow$

A seta dupla \verb+\Longleftrightarrow+ costuma ser usado para ``se, e somente se'', mas com pequeno ajuste no espaÃ§amento. Para simplicidade, existe o comando \verb+\iff+ que produz $\iff$.
No pacote \texttt{amsmath}, define tambÃ©m o \verb+\implies+ para ``implica'' que tem mesmo sÃ­mbolo que \verb+\Longrightarrow+, mas com espaÃ§amento jÃ¡ ajustado devidamente. 

ArpÃµes

$\leftharpoondown  \leftharpoonup  \rightharpoondown  \rightharpoonup$
~
$\rightleftharpoons$
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Para produzir o sÃ­mbolo de ``nÃ£o implica'', use o \verb+\centernot+ do pacote \texttt{centernot}\index{modo matematico@{modo matemÃ¡tico}!centernot@{\verb+\centernot+}}%
 (que nÃ£o Ã© da \texttt{base} nem do \texttt{required}) em vez do \verb+\not+\index{modo matematico@{modo matemÃ¡tico}!not@{\verb+\not+}}, como em $\centernot\implies$.

\section{Nome das funÃ§Ãµes e delimitadores no modo matemÃ¡tico}\label{apendice:funcao:e:delimitador}

Os nomes das funÃ§Ãµes\index{funÃ§Ã£o matemÃ¡tica!nome da} devem estar em \verb+\mathrm+ e tem vÃ¡rios comandos jÃ¡ definidos.
No caso de precisar definir um novo (como nome em portuguÃªs), use
algo como \verb+\newcommand{\sen}{\mathrm{sen}}+ no preÃ¢mbulo.
Se estiver usando o pacote AMS, poderÃ¡ substituir por \verb+\DeclaremathOperator{\sen}{sen}+ no preÃ¢mbulo.
No caso de definir nomes do estilo limite na qual o Ã­ndice fica embaixo no modo display, use em conjunto com \verb+\mathop+, como em \verb+\newcommand{\argmin}{\mathop{\mathrm{arg\,min}}}+.
Note o uso de \verb+\,+ para inserir espaÃ§o entre duas palavras. Com o pacote do AMS, poderÃ¡ escrever como \verb+\DeclaremathOperator*{\argmin}{arg\,min}+ (usando a versÃ£o ``*'' do \verb+\DeclaremathOperator+).

Veja o Exemplo~\ref{ex-a:math-func-names} para nome das funÃ§Ãµes prÃ©-definidos.%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\arccos+, $\arccos$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\arcsin+, $\arcsin$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\arctan+, $\arctan$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\arg+, $\arg$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\bmod+, $\bmod$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\cos+, $\cos$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\cosh+, $\cosh$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\cot+, $\cot$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\coth+, $\coth$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+csc+, $\csc$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\deg+, $\deg$}%
%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\det+, $\det$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\dim+, $\dim$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\exp+, $\exp$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\gcd+, $\gcd$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\hom+, $\hom$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\inf+, $\inf$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\ker+, $\ker$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\lg+, $\lg$}%
%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\lim+, $\lim$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\liminf+, $\liminf$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\limsup+, $\limsup$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\ln+, $\ln$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\log+, $\log$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\max+, $\max$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\min+, $\min$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\Pr+, $\Pr$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\sec+, $\sec$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\sin+, $\sin$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\sinh+, $\sinh$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\sup+, $\sup$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\tan+, $\tan$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\tanh+, $\tanh$}%
\index{modo matematico@{modo matemÃ¡tico}!funcao@{funÃ§Ã£o}!\verb+\pmod+, $\pmod{n}$}%

\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{lstlisting}[caption={ex-a-nome-funcao.tex},label=ex-a:math-func-names]
$\arccos  \arcsin  \arctan  \arg  \bmod  \cos  \cosh  \cot  \coth  \csc  \deg$
~
$\det  \dim  \exp  \gcd  \hom  \inf  \ker  \lg$
~
$\lim  \liminf  \limsup  \ln  \log  \max  \min  \Pr  \sec  \sin  \sinh  \sup  \tan  \tanh$

Para indicar a congruÃªncia mÃ³dulo $n$, podemo suar o comando \verb+\pmod+ como em $a \equiv b \pmod{n}$.
\end{lstlisting}
%\end{LTXexample}
\end{singlespacing}
% Uso separarado Ã© porque \bmod sem estar entre chaves dentro deste ambiente puxa o prÃ³ximo e sobrepÃµe.
\begin{ltxlistingout}
$\arccos  \arcsin  \arctan  \arg  {\bmod}  \cos  \cosh  \cot  \coth  \csc  \deg$
~
$\det  \dim  \exp  \gcd  \hom  \inf  \ker  \lg$
~
$\lim  \liminf  \limsup  \ln  \log  \max  \min  \Pr  \sec  \sin  \sinh  \sup  \tan  \tanh$

Para indicar a congruÃªncia mÃ³dulo $n$, podemo suar o comando \verb+\pmod+ como em $a \equiv b \pmod{n}$.
\end{ltxlistingout}

Para delimitadores\index{delimitador}, veja o Exemplo~\ref{ex-a:math-delimiters}.
Em geral, o tamanho dos delimitadores serÃ£o ajustados automaticamente quando usar em conjunto com \verb+\left+\index{modo matematico@{modo matemÃ¡tico}!delimitador!left@\verb+\left.+} e \verb+\right+\index{modo matematico@{modo matemÃ¡tico}!delimitador!right@\verb+\right.+}.

O comando \verb+\left+ indica que o delimitador Ã© do lado esquerdo e \verb+\right+ indica que o delimitador Ã© do lado direito. Exemplo: $\left(\frac {x^2}{2}\right|_0^2=\frac{2^2}{2} - \frac{0^2}{2}=2$.
Quando usa o delimitador em apenas um dos lados, use "." para indicar que nÃ£o hÃ¡ delimitador no lado especificado, como em $\left\{x+y=1 \atop x-y=0\right.$.

Para colocar delimitador ajustÃ¡vel no meio, poderÃ¡ usar \verb+\middle+ na variante do e-\TeX como no caso do \TeX{} atual. 
Por exemplo, $\left\langle\phi\middle|\psi\right\rangle$ insere delimitador ajustÃ¡vel \verb+|+ no meio.%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\downarrow+,$\downarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\langle+,$\langle$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\lceil+,$\lceil$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\lfloor+,$\lfloor$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!$($}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\Downarrow+,$\Downarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\rangle+,$\rangle$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\rceil+,$\rceil$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\rfloor+,$\rfloor$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!$)$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\backslash+,$\backslash$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!$[$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!$\vert$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\uparrow+,$\uparrow$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\updownarrow+,$\updownarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!chaveaberta@{\textbackslash\curlyopensymbforindex,$\curlyopensymbforindex$}}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!$]$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!$\backslash\Vert$,$\Vert$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\Uparrow+,$\Uparrow$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\Updownarrow+,$\Updownarrow$}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!chavefechada@{\textbackslash\curlyclosesymbforindex,$\curlyclosesymbforindex$}}%
%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!lmoustache@{\verb+\lmoustache+,$\left\lmoustache\phantom{x}\right.$}}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!rmoustache@{\verb+\rmoustache+,$\left.\phantom{x}\right\rmoustache$}}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!lgroup@{\verb+\lgroup+,$\left\lgroup\right.$}}%
\index{modo matematico@{modo matemÃ¡tico}!delimitador!rgroup@{\verb+\rgroup+,$\left.\phantom{x}\right\rgroup$}}%

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-delimitadores.tex},label=ex-a:math-delimiters]
Delimitador que pode ser usado independente ou como delimitador auto ajustÃ¡vel (com \verb+\left+ e \verb+\right+).

$\downarrow  \langle  \lceil  \lfloor  (  /$
~
$\Downarrow  \rangle  \rceil  \rfloor  )  \backslash$
~
$[  |  \uparrow  \updownarrow  \{  ]  \|  \Uparrow  \Updownarrow  \}$
 
SÃ­mbolos de tamanhos variÃ¡veis grandes que sÃ³ podem ser usados em conjunto com \verb+\left+ e \verb+\right+.

$\left\lmoustache\right.  \left.\right\rmoustache$% nÃ£o tem no Latin Moden Math
$\left\lgroup\right.  \left.\right\rgroup$

\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Os comandos \verb+\vert+ e \verb+\Vert+ sÃ£o mesmos que \verb+|+ e \verb+\|+, mas podem ser usados onde \verb+|+ causa problemas como na entrada de Ã­ndices remissivos.


Quando tiver quebra de linha no meio da equaÃ§Ã£o (que pode ser efetuado pelos ambientes do pacote \texttt{amsmath}), os delimitadores auto ajustÃ¡veis falham. Outro caso Ã© ter um delimitador dentro do outro de mesmo tamanho. Neste caso, poderÃ¡ ajustar o tamanho manualmente pelos comandos tipo ``big'' em vez de ``left/right''. O especificador do delimitador grande na ordem crescente sÃ£o: \verb+\big+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\big+}, \verb+\Big+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\Big+}, \verb+\bigg+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\bigg+} e \verb+\Bigg+\index{modo matematico@{modo matemÃ¡tico}!delimitador!\verb+\Bigg+}.
Veja o Exemplo~\ref{ex-a:math-big-delimiters}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-big-delimitadores.tex},label=ex-a:math-big-delimiters]
Exemplo de ajuste manual do tamanho doas delimitadores.

\[
  \Bigg(x+\bigg(y+\Big(z+\big(w+v\big)\Big)\bigg)\Bigg)
\]
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

%SÃ­mbolos de tamanhos variÃ¡veis grandes (requer\verb+\left+ e \verb+\right+) que nÃ£o Ã© suportado pelo \texttt{unicode-math} (logo, no \XeLaTeX{} e Lua\LaTeX).
%$
%\left\arrowvert\right.
%\left\Arrowvert\right.
%\left\bracevert\right.
%$

\section{Outros sÃ­mbolos\protect\index{sÃ­mbolos!diversos}}

SÃ­mbolos que costuma ser usados como caracteres estÃ£o listados no Exemplo~\ref{ex-a:math-letter-like}.%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\bot+, $\bot$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\ell+, $\ell$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\exists+, $\exists$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\forall+, $\forall$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\Im+, $\Im$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\imath+, $\imath$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\in+, $\in$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\jmath+, $\jmath$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\ni+, $\ni$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\partial+, $\partial$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\Re+, $\Re$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\top+, $\top$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\wp+, $\wp$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!not@\verb+\not+}%

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-tipo-letra.tex},label=ex-a:math-letter-like]
$\bot  \ell  \exists  \forall  \hbar  \Im  \imath  \in  \jmath$
~
$\ni  \partial  \Re  \top  \wp$

Para produzir sÃ­mbolo de negaÃ§Ã£o, poderÃ¡ usar \verb+\not+ antes do sÃ­mbolo, como em $\not\in$ ou $\not\exists$.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O Exemplo~\ref{ex-a:math-misc} ilustra mais alguns sÃ­mbolos adicionais.%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\aleph+, $\aleph$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\emptyset+, $\emptyset$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\angle+, $\angle$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\backslash+, $\backslash$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\infty+, $\infty$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\nabla+, $\nabla$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+neg\+, $\neg$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\prime+, $\prime$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\surd+, $\surd$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\triangle+, $\triangle$}%
%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\flat+, $\flat$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\natural+, $\natural$}%
\index{modo matematico@{modo matemÃ¡tico}!diverso!\verb+\sharp+, $\sharp$}%

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-simbolos-diversos.tex},label=ex-a:math-misc]
SÃ­mbolos diversos

$\aleph  \emptyset  \angle  \backslash  \infty  \nabla  \neg  \prime  \surd  \triangle$

SÃ­mbolos musicais

$\flat  \natural  \sharp$
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Alguns autores preferem usar o \verb+\varnothing+\index{\varnothing} do \texttt{amssymb} em vez do \verb+\emptset+ para representar o conjunto vazio.

\section{AcentuaÃ§Ã£o no modo matemÃ¡tico\protect\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}}}
Nas fÃ³rmulas, costuma usar vÃ¡rios tipos de acentuaÃ§Ãµes para produzir sÃ­mbolos novos que Ã© relacionado com outros jÃ¡ existentes (nÃ£o acentuado). Veja o Exemplo~\ref{ex-a:math-punct}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\acute{a}+, $\acute{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\bar{a}+, $\bar{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\breve{a}+, $\breve{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\check{a}+, $\check{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\ddot{a}+, $\ddot{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\dot{a}+, $\dot{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\grave{a}+, $\grave{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\hat{a}+, $\hat{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\mathring{a}+, $\mathring{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\tilde{a}+, $\tilde{a}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\vec{a}+, $\vec{a}$}%
%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\imath+, $\imath$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\jmath+, $\jmath$}%
%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\widetilde{abc}+, $\widetilde{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\widehat{abc}+, $\widehat{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overleftarrow{abc}+, $\overleftarrow{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overline{abc}+, $\overline{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\underline{abc}+, $\underline{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overbrace{abc}^{n}+, $\overbrace{abc}^{n}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\overrightarrow{abc}+, $\overrightarrow{abc}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\underbrace{abc}_{n}+, $\underbrace{abc}_{n}$}%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\sqrt{abc}+, $\sqrt{abc}$}%
%
\index{modo matematico@{modo matemÃ¡tico}!acentuacao@{acentuaÃ§Ã£o}!\verb+\sqrt[n]{abc}+, $\sqrt[n]{abc}$}%
%
\index{modo matematico@{modo matemÃ¡tico}!pontuacao@{pontuaÃ§Ã£o}!\verb+\cdotp+, $\cdotp$}%
\index{modo matematico@{modo matemÃ¡tico}!pontuacao@{pontuaÃ§Ã£o}!\verb+\cdots+, $\cdots$}%
\index{modo matematico@{modo matemÃ¡tico}!pontuacao@{pontuaÃ§Ã£o}!\verb+\colon+, $\colon$}%
\index{modo matematico@{modo matemÃ¡tico}!pontuacao@{pontuaÃ§Ã£o}!\verb+\ldotp+, $\ldotp$}%
\index{modo matematico@{modo matemÃ¡tico}!pontuacao@{pontuaÃ§Ã£o}!\verb+\ddots+, $\ddots$}%
\index{modo matematico@{modo matemÃ¡tico}!pontuacao@{pontuaÃ§Ã£o}!\verb+\ldots+, $\ldots$}%
\index{modo matematico@{modo matemÃ¡tico}!pontuacao@{pontuaÃ§Ã£o}!\verb+\vdots+, $\vdots$}%
%
para acentuaÃ§Ã£o no modo matemÃ¡tico.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-acentuacao.tex},label=ex-a:math-punct]
AcentuaÃ§Ã£o no modo matemÃ¡tico

$\acute{a}  \bar{a}  \breve{a}  \check{a}  \ddot{a}  \dot{a}$
~
$\grave{a}  \hat{a}  \mathring{a}  \tilde{a}  \vec{a}$

Para i e j sem pontos, existem os comandos \verb+\imath+ e \verb+\jmath+ que podem ser usado como em $\hat{\imath}$ e $\hat{\jmath}$.

Acentos matemÃ¡ticos extensÃ­veis.

$\widetilde{abc}  \widehat{abc}  \overleftarrow{abc}$
~
$\overline{abc}  \underline{abc}  \overbrace{abc}^{n}$
~
$\underbrace{abc}_{n}  \overrightarrow{abc}  \sqrt{abc} \sqrt[n]{abc}$

PontuaÃ§Ã£o no modo matemÃ¡tico
$\cdotp  \cdots  \colon  \ldotp  \ddots  \ldots  \vdots$

Note que vÃ¡rios sÃ­mbolos de pontuaÃ§Ã£o sÃ£o usados como relaÃ§Ãµes no modo matemÃ¡tico.
Assim, quando precisar usar como pontuaÃ§Ã£o, existem comandos para tal (a diferenÃ§a entre relaÃ§Ã£o e pontuaÃ§Ã£o estÃ¡ no espaÃ§amento. Por exemplo, $a:b$ Ã© uma relaÃ§Ã£o de proporÃ§Ã£o, enquanto que $a\colon b$ Ã© uma pontuaÃ§Ã£o.
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Note que, diferente do \verb+\bar+, o comando \verb+\overline+ adjacentes ficam grudados, como em $\overline{A}\overline{B}$. 
Para evitar isso, siga a instruÃ§Ã£o do \cite{book:pakin:2017} para definir um comando apropriado denominado de \verb+\closure+ que nÃ£o grudam. 
Para isso, basta colocar o seguinte cÃ³digo no \texttt{preÃ¢mbulo}.

\begin{singlespacing}
\begin{lstlisting}
\newcommand{\closure}[2][3]{%
{}\mkern#1mu\overline{\mkern-#1mu#2}}
\end{lstlisting}
\end{singlespacing}

Alguns alfabetos matemÃ¡ticos\index{alfabeto!matemÃ¡tico} disponÃ­veis por padrÃ£o estÃ£o listado no Exemplo~\ref{ex-a:math-alphabet}.%
\index{modo matematico@{modo matemÃ¡tico}!alfabeto!\verb+\mathrm{ABCdef123}+, $\mathrm{ABCdef123}$}%
\index{modo matematico@{modo matemÃ¡tico}!alfabeto!\verb+\mathit{ABCdef123}+, $\mathit{ABCdef123}$}%
\index{modo matematico@{modo matemÃ¡tico}!alfabeto!\verb+\mathbf{ABCdef123}+, $\mathbf{ABCdef123}$}%
\index{modo matematico@{modo matemÃ¡tico}!alfabeto!\verb+\mathnormal{ABCdef123}+, $\mathnormal{ABCdef123}$}%
\index{modo matematico@{modo matemÃ¡tico}!alfabeto!\verb+\mathcal{ABC}+, $\mathcal{ABC}$}%
%
\index{modo matematico@{modo matemÃ¡tico}!caracter de extensao@{caracter de extensÃ£o}!\verb+\relbar+, $\relbar$}%
\index{modo matematico@{modo matemÃ¡tico}!caracter de extensao@{caracter de extensÃ£o}!\verb+\Relbar+, $\Relbar$}%

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex02-01.tex},label=ex:02-01]
\begin{ltxlisting}[caption={ex-a-alfabeto.tex},label=ex-a:math-alphabet]
Alfabetos matemÃ¡ticos

$\mathrm{ABCdef123}  \mathit{ABCdef123}  \mathbf{ABCdef123}$
~
$\mathnormal{ABCdef123}  \mathcal{ABC}$
% \mathcal Ã© somente para romana maiÃºscula

Caractere de extensÃ£o.
DiferenÃ§a com $-=$ (relaÃ§Ã£o) Ã© somente o espaÃ§amento.
Quais sÃ£o os caso de uso?

$\relbar\Relbar$
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
O alfabeto \verb+\mathbb+ requer o pacote do \texttt{AMS}. 
No sistema de \texttt{blog} e \texttt{moodle} ou similar sem a suporte ao pacote adicional, use o \verb+\mathbf+ em vez de \verb+\mathbb+.

\chapter{Desenvolvendo Pacotes}
Aqui veremos como escrever seu prÃ³prio pacote, tambÃ©m chamado de arquivos de estilos.

Lembrando que, o arquivo de estilos, classes e similares nÃ£o precisam ser instalados para ser usado.
O \LaTeX{} dÃ¡ preferÃªncia aos arquivos locais (o que estÃ¡ junto com arquivo \texttt{.tex}). Assim, se quer testar um estilo ou classe mais nova que estÃ¡ instalado, basta manter o arquivo novo junto ao arquivo \texttt{.tex}, o que costuma fazer para desenvolver arquivos de estilos e/ou de classes.

\section{Criando pacotes}
Pacote Ã© conjunto de configuraÃ§Ãµes de documentos e definiÃ§Ãµes de comandos ou similares para ser aplicado no documento desejado. 
Pacote tambÃ©m Ã© chamado de arquivo de estilos e tem a extensÃ£o \texttt{sty}\index{arquivos!sty}.

Um pacote comeÃ§a com o cabeÃ§alho.
O comando \verb+\NeedsTeXFormat{LaTeX2e}+\index{NeedsTeXFormat@\verb+\NeedsTeXFormat+} colocado no comeÃ§o do pacote indica que ele precisa do \LaTeXe.
Em seguida, costuma colocar o comando
%\verb+\ProvidesFile{&lt;nome do pacote&gt;}[&lt;mensagem&gt;]+\index{ProvidesFile@\verb+\ProvidesFile+}.
\verb+\ProvidesPackage{&lt;nome do pacote&gt;}[&lt;mensagem&gt;]+\index{ProvidesPackage@\verb+\ProvidesPackage+}.
onde \texttt{&lt;nome do arquivo&gt;} Ã© nome do arquivo, incluindo a extensÃ£o e o argumento opcional \texttt{&lt;mensagem&gt;} Ã© a mensagem a ser emitido quando carrega o pacote.
As informaÃ§Ãµes adicionais tais como versÃµes, mensagens de advertÃªncia ou erros, etc pode ser emitido pelo comando \verb+\typeout{&lt;mensagem&gt;}+\index{typeout@\verb+\typeout+} a qualquer momento.

Quando o pacote Ã© uma classe de documento baseado num documento jÃ¡ existente, poderÃ¡ carregar a classe de documento pelo comando \verb+\LoadClass+ e efetuar ajustes necessÃ¡rios.

Note que nÃ£o precisa colocar \verb+\makeatletter+\index{makeatletter@\verb+\makeatletter+} e \verb+\makeatother+\index{makeatother@\verb+\makeatother+} (nem deve) no arquivo de estilo para acessar comandos que usam ``@'', pois jÃ¡ estÃ¡ com o uso de ``@'' ativado por padrÃ£o.
No caso de \XeLaTeX/Lua\LaTeX{} que usam pacotes mais modernos, usa ``\verb+_+'' no nome dos comandos. 
Para usar estes comandos no \texttt{pramble}, use entre \verb+\ExplSyntaxOn+\index{ExplSyntaxOn@\verb+\ExplSyntaxOn+} e \verb+\ExplSyntaxOff+\index{ExplSyntaxOff@\verb+\ExplSyntaxOff+}. 
TambÃ©m nÃ£o Ã© necessÃ¡rio no arquivo de estilos.

Ã‰ recomendado que use a acentuaÃ§Ã£o no modo \TeX, pois nÃ£o saberemos a codificaÃ§Ã£o que o usuÃ¡rio final vai escolher no seu documento.

Dentro do arquivo de estilos, o comando para carregar os pacotes Ã© \verb+\RequirePackage+\index{RequirePackage@\verb+\RequirePackage+} em vez de \verb+\usepackage+.
Para testar se o pacote existe, cheque se tem o arquivo correspondente com o \verb+\IfFileExists+\index{IfFileExists@\verb+\IfFileExists+}. 
NÃ£o esqueÃ§a da extensÃ£o do arquivo no nome. 
Se arquivo do primeiro parÃ¢metro existir, executarÃ¡ o segundo parÃ¢metro.
Caso nÃ£o existir, executarÃ¡ o terceiro parÃ¢metro.

TambÃ©m Ã© bom checar se nÃ£o estÃ¡ executando no modo de compatibilidade (modo antigo). 
Para isso, usa-se o comando \verb+\if@compatibility+\index{ifcompatibility@{\verb+\if+\arrobasymbforindex\verb+compatibility+}} que Ã© da forma
\begin{singlespacing}
\begin{lstlisting}
\if@compatibility 
&lt;comando 1&gt;
\else
&lt;comando 2&gt;
\fi
\end{lstlisting}
\end{singlespacing}
A mensagem de erro Ã© emitido por

\verb+\PackageError{&lt;nome do pacote&gt;}{&lt;mensagem curta&gt;}{&lt;mensagem longa&gt;}+\index{PackageError@\verb+\PackageError+}.

Se for sÃ³ a advertÃªncia, usa-se o comando
\verb+\PackageWarning{&lt;nome do pacote&gt;}{&lt;mensagem&gt;}+\index{PackageWarning@\verb+\PackageWarning+}.

Para saber se foi carregado a classe de documento compatÃ­vel, usa-se o comando \verb+\@ifclassloaded{}+\index{ifclassloaded@{\textbackslash\arrobasymbforindex\verb+ifclassloaded+}}
 que tem a forma \verb+\@ifclassloaded{&lt;classe&gt;}{&lt;cmd1&gt;}{&lt;cmd2&gt;}+.
Quando \texttt{&lt;class&gt;} for usado, executa o \texttt{&lt;cmd1&gt;} e caso nÃ£o for a \texttt{&lt;classe&gt;}, executa o \texttt{&lt;cmd2&gt;}.
Com isso, podemos elaborar o cabeÃ§alho do arquivo de estilo. 
O Exemplo~\ref{ex:b:estilo:sty} Ã© uma listagem do exemplo de arquivos de estilos.
\begin{singlespacing}
%\begin{lstlisting}[caption={ex12-07.sty}, label=ex:12-07:sty]
\begin{lstlisting}[caption={ex-b-estilo.sty}, label=ex:b:estilo:sty]
% ex-b-estylo.sty

\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{ex-b-estilo}[2021/07/14 v0.6 ex-b-estilo style (require book, amsbook, or report as document class)]

\typeout{ex-b-estilo style 0.6 &lt;July/2021&gt;.}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Para evitar a tentativa de usar no modo de
% compatibilidade com LaTeX antigo (documentstyle)
%---------------------------------------
\if@compatibility % modo de compatibilidade com LaTeX antigo?
  \PackageError{ex-b-estilo}{Not support older compatible mode (documentstyle)}
     {Use documentclass instead of documentstyle}
  \endinput
\else
  % OK
\fi

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% requer book, amsbook, ou report como classe de
% documento (enumeracao do teorema eh vinculado
% ao chapter)
%---------------------------------------
\@ifclassloaded{book}% Using book?
  {}% YES (OK)
  {\@ifclassloaded{amsbook}% No, but are using AMS book?
    {}% YES (OK)
    {\@ifclassloaded{report}% No, but are using report?
      {}% YES (OK)
      { % No! Then can'not apply this package
        \PackageError{ex-b-estilo}{Require book, amsbook, or report as document class}
           {Use the required document class}
        %\endinput
      }
    }
   }

%%%%%%%%
% opcoes
%-------------------------------
% Aqui, opcoes ativa o if para efetuar configuracoes posteriormente

% \RequirePackage{ifthen} % da base/required

\newif\if@ex@b@estilo@usedsfont

% se usedsfont for usado como opcao
\DeclareOption{usedsfont}{\@ex@b@estilo@usedsfonttrue}{\@ex@b@estilo@usedsfontfalse}
  
%% Fallback (opcoes nao declaradas)
\DeclareOption*{
  \PackageWarning{ex-b-estilo}{Unknown option '\CurrentOption'}
}

% Apos declarar todas opcoes, colocar este comando
\ProcessOptions\relax



%%%%%%%%%%%%%%%%%%%%%%
% Pacotes necessarios

% Da base/required
\RequirePackage{amsthm, amssymb,amsmath}

% \RequirePackage[brazil]{babel}

% pacotes nao obrigatorios do LaTeX
% \RequirePackage{geometry} % carregar sempre

%\IfFileExists{dsfont.sty}% carregar, se existir
%{\RequirePackage{dsfont}}{}%

% testando se tem o pacote instalado e providenciando o
% comando, caso pacote nao exista.
\IfFileExists{hyperref.sty}%
{\RequirePackage{hyperref}}%
{\PackageWarning{ex-b-estilo}{hyperref.sty not found. Using draft mode.}%
 \providecommand\url[1]{\texttt{##1}}%
}
  
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% definicao dos macros para ambiente de teoremas
% teoremas, lemas, proposi\c{c}\~oes, etc

\theoremstyle{plain}

\newtheorem{theorem}{Teorema}[chapter]
\newtheorem{axiom}[theorem]{Axioma}
\newtheorem{corollary}[theorem]{Corol\'ario}
\newtheorem{lemma}[theorem]{lema}
\newtheorem{proposition}[theorem]{Proposi\c{c}\~ao}
\newtheorem{conjecture}[theorem]{Conjectura}

% defini\c c\~ao de defini\c c\~oes, exemplos, etc.
\theoremstyle{definition}
\newtheorem{definition}[theorem]{Defini\c{c}\~ao}

\theoremstyle{remark}
\newtheorem{remark}[theorem]{Obserca\c{c}\~ao}

\newtheorem{note}[theorem]{Nota}
\newtheorem{example}[theorem]{Exemplo}
%
\newtheorem{question}[theorem]{Pergunta}

% alterando as penalidades (para corte de linhas em...)
\hyphenpenalty=5000 % hifeniza\c{c}\~{a}o
\exhyphenpenalty=500 % palavras com hifem
\binoppenalty=3000 % operador binario (+, - , etc)
\relpenalty=2000 % operador relacional ( = \cong \ne, ...)
\clubpenalty=1000 % ???
\brokenpenalty=1000 % ???

\sloppy % prefere underfull do que overfull

% conjunto numerico (evitando o real, complexo, etc,

\newcommand{\Rset}{\mathbb{R}}
\newcommand{\Cset}{\mathbb{C}}
\newcommand{\Zset}{\mathbb{Z}}
\newcommand{\Iset}{\mathbb{I}}
\newcommand{\Qset}{\mathbb{Q}}
\newcommand{\Nset}{\mathbb{N}}

% Funcoes em portugues (nome da funcao deve ser em romano)
\DeclareMathOperator{\sen}{sen}
\DeclareMathOperator{\arcsen}{arcsen}
\DeclareMathOperator{\senh}{senh}
\DeclareMathOperator{\arcsenh}{arcsenh}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Reconfigurando de acordo com a opcao

% Usar dsfont
\if@ex@b@estilo@usedsfont% se usedsfont for usado como opcao
  \IfFileExists{dsfont.sty}%
  {%
    \RequirePackage{dsfont}
    \renewcommand{\Rset}{\mathds{R}}
    \renewcommand{\Cset}{\mathds{C}}
    \renewcommand{\Zset}{\mathds{Z}}
    \renewcommand{\Iset}{\mathds{I}}
    \renewcommand{\Qset}{\mathds{Q}}
    \renewcommand{\Nset}{\mathds{N}}  
  }{%
  \PackageError{ex-b-estilo}{dsfont.sty not found.}%
    {Install dsfont package.}%
  }
\fi% \if@ex@b@estilo@usedsfont

% fim: ex-b-estilo.sty
\end{lstlisting}
\end{singlespacing}

Quando o arquivo de estilo usa opÃ§Ãµes, coloca o que vai fazer quando uma determinada opÃ§Ã£o for especificada, com o comando
\verb+\DeclareOption{&lt;opÃ§Ã£o&gt;}{&lt;comando&gt;}+\index{DeclareOption@\verb+\DeclareOption+}.
Lembre-se que nÃ£o Ã© permitido carregar o pacote dentro da declaraÃ§Ã£o de opÃ§Ãµes, mas poderemos testar se o pacote existe.
Para evitar tais desconfortos e deixar o cÃ³digo mais fÃ¡cil de ser analisados, costuma colocar a declaraÃ§Ãµes de opÃ§Ãµes no comeÃ§o e nele, colocar ativaÃ§Ã£o do ``if'' previamente criado. O corpo da opÃ§Ã£o ficarÃ¡ mais adiante.
Para criar ``if'' novo, % usa-se o pacote \texttt{ifthen}\index{ifthen} e
utiliza o \verb+\newif+\index{newif@\verb+\newif+} seguido de \verb+\if&lt;nome&gt;+  onde \verb+&lt;nome&gt;+ Ã© um nome desejado. O ``flag'' associado pode ser ativado ou desativado com o comando \verb+\&lt;nome&gt;true+ e \verb+\&lt;nome&gt;false+ respectivamente.
O cÃ³digo
\begin{verbatim}
\if&lt;nome&gt;
comando 1
\else
comando 2
\fi
\end{verbatim}

ExecutarÃ¡ \texttt{comando 1} se ``flag'' associado a \verb+&lt;nome&gt;+ estiver ligado e \texttt{comando 2} caso contrÃ¡rio. Quando nÃ£o tiver o \texttt{comando 2}, \verb+\else+ pode ser omitido como em
\begin{verbatim}
\if&lt;nome&gt;
comando 1
\fi
\end{verbatim}
Note que existe um pacote \texttt{ifthen}\index{ifthen} (da base) para manipular condiÃ§Ãµes de forma mais confortÃ¡vel do que criar ``if''.

TambÃ©m podemos passar opÃ§Ãµes para classe que serÃ¡ carregado posteriormente, pelo comando \verb+\PassOptionsToClass+\index{PassOptionsToClass@\verb+\PassOptionsToClass+} ou para o pacote a ser carregado posteriormente, com o comando \verb+\PassOptionsToPackage+\index{PassOptionsToPackage@\verb+\PassOptionsToPackage+}.

No caso de querer que alguma opÃ§Ã£o seja aplicada como padrÃ£o, poderÃ¡ usar o comando \verb+\ExecuteOptions+.

Quando tem a declaraÃ§Ã£o de opÃ§Ãµes, deve colocar \verb+\ProcessOptions+\index{ProcessOptions@\verb+\ProcessOptions+} apÃ³s terminar todos \verb+\DeclareOption+ e \verb+\ExecuteOptions+ para que opÃ§Ãµes fiquem prontos para o uso.
% Em geral, costuma colocar o \verb+\ProcessOptions+ no final do arquivo.

O Exemplo~\ref{ex:b:estilo:tex} Ã© um exemplo do uso do pacote do Exemplo~\ref{ex:b:estilo:sty}.

\begin{singlespacing}
%\begin{lstlisting}[caption={ex12-07.tex}, label=ex:12-07]
\begin{lstlisting}[caption={ex-b-estilo.tex}, label=ex:b:estilo:tex]
\documentclass[a4paper,12pt]{book}
\usepackage[T1]{fontenc} % codificaÃ§Ã£o da fonte em 8-bits
\usepackage[utf8]{inputenc} % acentuaÃ§Ã£o direta
\usepackage[brazil]{babel} % em portugues brasileiro

\usepackage{ex-b-estilo} % arquivo de estilo definido pelo usuÃ¡rio.

% \usepackage[usedsfont]{ex-b-estilo} % com opcao (se usar este, conjuntos numÃ©ricos ficam como dsfont, se dsfont estiver instalado)
\begin{document}
\chapter{Teste}

\begin{definition}\label{def:triangulo:retangulo}
Um triÃ¢ngulo Ã© dito retÃ¢ngulo se tiver um Ã¢ngulo reto.
\end{definition}

\begin{theorem}[PitÃ¡goras]\label{thm:pitagoras}
Dado um triÃ¢ngulo retÃ¢ngulo $ABC$ com Ã¢ngulo reto em $A$, temos que 
\begin{equation}\label{eq:pitagoras}
a^2=b^2+c^2
\end{equation}
\end{theorem}

\begin{proof}
DemonstraÃ§Ã£o aqui.
\end{proof}

Usando a definiÃ§Ã£o do $\sen$ e $cos$ juntamente com o Teorema~\ref{thm:pitagoras}, temos que

\begin{proposition}
\[
\forall t \in \Rset, \sen^2 t + \cos^2 t = 1
\]
\end{proposition}
\end{document}
\end{lstlisting}
\end{singlespacing}

%\let\mathbb\amsmathbb
%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%\setcounter{chapter}{0}
%\let\addcontentsline\emptyaddcontentsline
%\let\orithispagestyle\thispagestyle
%\makeatletter
%\let\thispagestyle\@gobble
%\makeatother
%\begin{singlespacing}
%\begin{framed}
\let\oriappendixname\appendixname
\let\orithechapter\thechapter
\renewcommand{\appendixname}{\chaptername}
\renewcommand{\thechapter}{\arabic{chapter}}
\begin{ltxlistingout}
\chapter{Teste}

\begin{definition}%\label{def:triangulo:retangulo}
Um triÃ¢ngulo Ã© dito retÃ¢ngulo se tiver um Ã¢ngulo reto.
\end{definition}

\begin{theorem}[PitÃ¡goras]%\label{thm:pitagoras}
Dado um triÃ¢ngulo retÃ¢ngulo $ABC$ com Ã¢ngulo reto em $A$, temos que 
\begin{equation}%\label{eq:pitagoras}
a^2=b^2+c^2
\end{equation}
\end{theorem}

\begin{proof}
DemonstraÃ§Ã£o aqui.
\end{proof}

Usando a definiÃ§Ã£o do $\mathrm{sen}$ e $\cos$ juntamente com o Teorema~1.2%\ref{thm:pitagoras}
, temos que

\begin{proposition}
\[
\forall t \in \mathbb{R}, \mathrm{sen}^2 t + \cos^2 t = 1
\]
\end{proposition}
\end{ltxlistingout}
\let\appendixname\oriappendixname
\let\thechapter\orithechapter
%\end{framed}
%\end{singlespacing}
%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
%\let\mathbb\orimathbb
%% \addtocounter{chapter}{-1}
%\let\thispagestyle\orithispagestyle
%\let\addcontentsline\oriaddcontentsline

\section{Criando classes}
Em geral, a classe Ã© criado de mesma forma que um arquivo de estilo.
Em muitos casos, a classe criada consiste na reconfiguraÃ§Ã£o da classe existente. Quando o ajuste pode ser efetuado sobre diversas classes base, Ã© conselhÃ¡vel criar um arquivo de estilo. Quando o ajuste Ã© aplicado numa classe especÃ­fica, Ã© aconselhÃ¡vel criar uma classe sobre tal classe base.

Os comandos
\verb+\ProvidesPackage{&lt;nome do pacote&gt;}[&lt;mensagem&gt;]+ serÃ¡ substituÃ­do por
\verb+\ProvidesClass{&lt;nome da classe&gt;}[&lt;mensagem&gt;]+\index{ProvidesClass@\verb+\ProvidesClass+}.

A classe base Ã© lido pelo comando \verb+\LoadClass{}+ apÃ³s declaraÃ§Ã£o das opÃ§Ãµes, passando as opÃ§Ãµes nÃ£o processadas para classe base. Isto pode ser feito com o cÃ³digo do tipo
\begin{verbatim}
% Demais opÃ§Ãµes
\DeclareOption*{%
  \PassOptionsToClass{\CurrentOption}{book}% repassar para book
}
\ProcessOptions\relax
% carrega a classe base
\LoadClass{book}
\end{verbatim}

O \verb+\PassOptionsToClass+\index{PassOptionsToClass@\verb+\PassOptionsToClass+} Ã© comando para agendar os parÃ¢metros para a classe a ser lido posteriormente. Note que existe o comando \verb+\PassOptionsToPackage+\index{PassOptionsToPackage@\verb+\PassOptionsToPackage+} para pacotes, com mesma finalidade.

O Exemplo~\ref{ex:b:classe:cls} Ã© uma listagem do exemplo de arquivos de classe.
\begin{singlespacing}
%\begin{lstlisting}[caption={ex12-07.cls}, label=ex:12-07:cls]
\begin{lstlisting}[caption={ex-b-classe.cls}, label=ex:b:classe:cls]
\NeedsTeXFormat{LaTeX2e}
\NeedsTeXFormat{LaTeX2e}

\ProvidesClass{ex-b-classe}[2021/07/14 v0.6 ex-b-classe class file (implemented over book class)]

\typeout{ex-b-classe 0.5 &lt;July/2021&gt;.}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Para evitar a tentativa de usar no modo de
% compatibilidade com LaTeX antigo (documentstyle)
%---------------------------------------
\if@compatibility % modo de compatibilidade com LaTeX antigo?
  \ClassError{ex-b-classe}{Not support older compatible mode (documentstyle)}
     {Use documentclass instead of documentstyle}
  \endinput
\else
  % OK
\fi

%%%%%%%%
% opÃ§Ãµes
%-------------------------------
% Aqui, algumas opÃ§oes ativa o if para efetuar configuraÃ§Ãµes posteriormente

\RequirePackage{ifthen} % da base/required
\RequirePackage[english,brazilian]{babel} % da base/required (ultima Ã© idioma principal)

\newboolean{ex@b@classe@usedsfont}

% se usedsfont for usado como opcao
\DeclareOption{usedsfont}{\setboolean{ex@b@classe@usedsfont}{true}}{\setboolean{ex@b@classe@usedsfont}{false}}

\DeclareOption{english}{ % idioma principal como english
\main@language{english}
% \selectlanguage{english}
}

\DeclareOption{brazilian}{ % idioma principal como brazilian
\main@language{brazilian}
% \selectlanguage{brazilian}
}

\DeclareOption{brazil}{ % idioma principal como brazilian
\main@language{brazilian}
% \selectlanguage{brazilian}
}

%% Fallback (opcoes nao declaradas)
\DeclareOption*{
  \PassOptionsToClass{\CurrentOption}{book}%
}
% ApÃ³s declarar todas opÃ§Ãµes, colocar este comando
\ProcessOptions\relax

% lendo a classe base
\LoadClass{book}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Pacotes necessÃ¡rios (alÃ©m de ifthen)

% Da base/required
\RequirePackage{amsthm, amssymb,amsmath}

% \RequirePackage[brazil]{babel}

% pacotes nao obrigatorios do LaTeX
% \RequirePackage{geometry} % carregar sempre

%\IfFileExists{dsfont.sty}% carregar, se existir
%{\RequirePackage{dsfont}}{}%

% testando se tem o pacote instalado e providenciando o
% comando, caso pacote nao exista.
\IfFileExists{hyperref.sty}%
{\RequirePackage{hyperref}}%
{\ClassWarning{ex-b-estilo}{hyperref.sty not found. Using draft mode.}%
 \providecommand\url[1]{\texttt{##1}}%
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Ambiente tipo teorema com Multi idiomas
% (ingles, portugues brasileiro)
% \addto do pacote babel adiciona comandos no final do macro existente.

\addto\extrasenglish{
  \engnames
}

\addto\extrasbrazilian{
  \brnames
}

\addto\extrasbrazil{
  \brnames
}
 
\newcommand\engnames{ % english names
  \def\axiomname{Axiom}
  \def\theoremname{Theorem}
  \def\corollaryname{Corollary}
  \def\lemmaname{Lemma}
  \def\propositionname{Proposition}
  \def\conjecturename{Conjecture}

  \def\definitionname{Definition}
  \def\notename{Note}
  \def\examplename{Example}
  \def\questionname{Question}
  \def\remarkname{Remark}
  \def\proofname{Proof}

  %  %%%% data abreviada: mes/dia/ano
  %  \def\todayabrev{%
  %    \ifnum \month &lt; 10 0\fi%
  %    \number\month/
  %    \ifnum \day &lt; 10 0\fi%
  %    \number\day/
  %    \number\year}

  \def\seename{see}
} % engnames


\newcommand\brnames{ % Brazilian names
  \def\axiomname{Axioma}
  \def\theoremname{Teorema}
  \def\corollaryname{Corol\'{a}rio}
  \def\lemmaname{Lema}
  \def\propositionname{Proposi\c{c}\~{a}o}
  \def\conjecturename{Conjectura}
  %
  \def\definitionname{Defini\c{c}\~{a}o}
  \def\notename{Nota}
  \def\examplename{Exemplo}
  \def\questionname{Exerc\'{\i}cio}
  \def\remarkname{Observa\c{c}\~{a}o}
  \def\proofname{Demonstra\c{c}\~{a}o}

  %%% data abreviada: dia/mes/ano
  %  \def\todayabrev{\ifnum \day &lt; 10 0\fi%
  %    \number\day/\ifnum \month &lt; 10 0\fi%
  %    \number\month/\number\year}

  \def\seename{veja}

  %  \typeout{brnames chamado}
} % brnames

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% definicao dos macros para ambiente de teoremas
% teoremas, lemas, proposicoes, etc

\theoremstyle{plain}

\newtheorem{theorem}{\theoremname}[chapter]
\newtheorem{axiom}[theorem]{\axiomname}
\newtheorem{corollary}[theorem]{\corollaryname}
\newtheorem{lemma}[theorem]{\lemmaname}
\newtheorem{proposition}[theorem]{\propositionname}
\newtheorem{conjecture}[theorem]{\conjecturename}

% definicao de definicoes, exemplos, etc.
\theoremstyle{definition}
\newtheorem{definition}[theorem]{\definitionname}

\theoremstyle{remark}
\newtheorem{remark}[theorem]{\remarkname}

\newtheorem{note}[theorem]{\notename}
\newtheorem{example}[theorem]{\examplename}
%
\newtheorem{question}[theorem]{\questionname}

% alterando as penalidades (para corte de linhas em...)
\hyphenpenalty=5000 % hifeniza\c{c}\~{a}o
\exhyphenpenalty=500 % palavras com hifem
\binoppenalty=3000 % operador binario (+, - , etc)
\relpenalty=2000 % operador relacional ( = \cong \ne, ...)
\clubpenalty=1000 % ???
\brokenpenalty=1000 % ???

% redefiniÃ§Ã£o de sloppy
\def\sloppy{\tolerance=9999 \hfuzz=.5pt \vfuzz=.5pt}
\sloppy % prefere underfull do que overfull

% conjunto numerico
%------------------

\newcommand{\Rset}{\mathbb{R}}
\newcommand{\Cset}{\mathbb{C}}
\newcommand{\Zset}{\mathbb{Z}}
\newcommand{\Iset}{\mathbb{I}}
\newcommand{\Qset}{\mathbb{Q}}
\newcommand{\Nset}{\mathbb{N}}

% Funcoes em portugues (nome da funcao deve ser em romano)
\DeclareMathOperator{\sen}{sen}
\DeclareMathOperator{\arcsen}{arcsen}
\DeclareMathOperator{\senh}{senh}
\DeclareMathOperator{\arcsenh}{arcsenh}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Reconfigurando de acordo com a opÃ§Ã£o

% Usar dsfont
\ifthenelse{\boolean{ex@b@classe@usedsfont}}{% se usedsfont for usado como opcao
  \IfFileExists{dsfont.sty}%
  {%
    \RequirePackage{dsfont}
    \renewcommand{\Rset}{\mathds{R}}
    \renewcommand{\Cset}{\mathds{C}}
    \renewcommand{\Zset}{\mathds{Z}}
    \renewcommand{\Iset}{\mathds{I}}
    \renewcommand{\Qset}{\mathds{Q}}
    \renewcommand{\Nset}{\mathds{N}}  
  }{%
  \ClassError{ex-b-classe}{dsfont.sty not found.}%
    {Install dsfont package.}%
  }
}{%else
}% \ifthenelse{\boolean{ex@b@classe@usedsfont}}

% fim: ex-b-classe.cls
\end{lstlisting}
\end{singlespacing}
Note que alguns comandos de mensagem foi trocado da versÃ£o \verb+Package+ para a versÃ£o \verb+Class+ a fim de emitir mensagem correta.

O Exemplo~\ref{ex:b:classe:tex} Ã© um exemplo do uso do pacote do Exemplo~\ref{ex:b:classe:cls}.

\begin{singlespacing}
\begin{lstlisting}[caption={ex-b-classe.tex}, label=ex:b:classe:tex]
% Usando a classe definida pelo usuÃ¡rio
\documentclass[a4paper,12pt]{ex-b-classe}
%\documentclass[a4paper,12pt,english]{ex-b-classe} %idioma inglÃªs
% \documentclass[a4paper,12pt,usedsfont]{ex-b-classe} % com dsfont
\usepackage[T1]{fontenc} % codificaÃ§Ã£o da fonte em 8-bits
\usepackage[utf8]{inputenc} % acentuaÃ§Ã£o direta

\begin{document}
\chapter{Teste}

\begin{definition}\label{def:triangulo:retangulo}
Um triÃ¢ngulo Ã© dito retÃ¢ngulo se tiver um Ã¢ngulo reto.
\end{definition}

\begin{theorem}[PitÃ¡goras]\label{thm:pitagoras}
Dado um triÃ¢ngulo retÃ¢ngulo $ABC$ com Ã¢ngulo reto em $A$, temos que 
\begin{equation}\label{eq:pitagoras}
a^2=b^2+c^2
\end{equation}
\end{theorem}

\begin{proof}
DemonstraÃ§Ã£o aqui.
\end{proof}

Usando a definiÃ§Ã£o do $\sen$ e $cos$ juntamente com o Teorema~\ref{thm:pitagoras}, temos que

\begin{proposition}
\[
\forall t \in \Rset, \sen^2 t + \cos^2 t = 1
\]
\end{proposition}
\end{document}
\end{lstlisting}
\end{singlespacing}

A saÃ­da foi omitida por ser mesmo do Exemplo~\ref{ex:b:estilo:tex}.

\section{Preenchendo o documento para teste}
Para testar estilo de formataÃ§Ã£o, as vezes queremos preencher rapidamente o espaÃ§o.

Para isso existe o pacote \texttt{lipsum}\index{lipsum} que permite gerar parÃ¡grafos de texto em grego sem sentido.

O comando \verb+\lipsum+\index{lipsum@\verb+\lipsum+} gera em torno de uma pÃ¡gina de texto.
O comando \verb+\lipsum[&lt;n&gt;]+ gera $n$-Ã©simo parÃ¡grafo de texto.
O comando \verb+\lipsum[&lt;a&gt;-&lt;b&gt;]+ gera o $a$-Ã©simo atÃ© $b$-Ã©simo parÃ¡grafo de texto.
Veja o Exemplo~\ref{ex:b:lipsum}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-11.tex},label=ex:11-11]
\begin{ltxlisting}[caption={ex-b-lipsum.tex},label=ex:b:lipsum]
% \lipsum % em torno de uma pÃ¡gina
\lipsum[5] % quinto parÃ¡grafo
% \lipsum[2-3] % de parÃ¡grao 2 atÃ© parÃ¡grafo 3
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

Note que \texttt{lipsum} gera somente parÃ¡grafos de textos.
Para testar fÃ³rmulas e listas tambÃ©m, poderÃ¡ usar o pacote \texttt{blindtext}\index{blindtext} que tem o comando de mesmo nome que gera um texto.

O comando \verb+\blindtext[&lt;n&gt;]+\index{blindtext@\verb+\blindtext+} gera o texto $n$ vezes.
O comando \verb+\Blindtext+\index{Blindtext@\verb+\Blindtext+} gera um parÃ¡grafo.
O parÃ¢metro opcional pode ser usado para repetir $n$ vezes.

Tem o comando \verb+\blindmathtrue+\index{blindmathtrue@\verb+\blindmathtrue+} que ativa as fÃ³rmulas no texto gerado, mas ele sÃ³ funciona em inglÃªs (idioma selecionado pelo babel). 
Assim, se nÃ£o estiver em inglÃªs, use o comando \verb+\blindmathpaper+\index{blindmathpaper@\verb+\blindmathpaper+} que gera parÃ¡grafos de textos e fÃ³rmulas.
Veja o Exemplo~\ref{ex:b:blindtext}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex11-11.tex, parte b},label=ex:11-11:b]
\begin{ltxlisting}[caption={ex-b-blindtext.tex},label=ex:b:blindtext]
% \blindmathtrue % funciona somente em ingles
% \blindtext % texto
% \Blindtext % Gera vÃ¡rios parÃ¡grafos
\Blindtext[1] % um parÃ¡grafo de textos
%\blinditemize % lista de itens
%\blindenumerate % lista de enumeraÃ§Ã£o
%\blinddescription % lista de descriÃ§Ã£o
%\blindmathpaper % texto e fÃ³rmulas.
%\blinddocument % documento com seÃ§Ã£o, subseÃ§Ã£o, listas, etc. NÃ£o inclui fÃ³rmulas
% \Blinddocument % documento longo, com texto com seÃ§Ã£o, subseÃ§Ã£o, listas, etc. Este inclui fÃ³rmulas
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Usando o Editor \LyX}
Neste apÃªndice, serÃ¡ explicado o bÃ¡sico sobre o editor \LyX\index{LyX@\LyX}.
\LyX{} Ã© um editor do tipo \texttt{WYSIWYG} (o que vocÃª vÃª Ã© o que vocÃª obtÃ©m) e poderÃ¡ editar o documento de forma similar ao aplicativo de escritÃ³rio, mas processando o documento final com o \LaTeX.


\section{VisualizaÃ§Ã£o do documento final}

Para compilar/ver o documento, poderÃ¡ usar o formatos comumente suportados
pelo \LaTeX{}.
O botÃ£o de ``visualizar'' (botÃ£o de olho, que fica
no lado esquerdo) Ã© usado para visualizar o documento em PDF.

Se estiver usando o pacote que precisa ser compilado para \texttt{dvi} como o pacote grÃ¡fico \texttt{pstrick} e o \texttt{psfrag}, poderÃ¡ escolher outro formato de visualizaÃ§Ã£o em ``visualizar outros formatos'' (botÃ£o que fica mais a direita, com olho e um pequeno triangulo).

O uso do pacote \texttt{hyperref} Ã© recomendado para que o \LaTeX{} crie links automÃ¡ticos, assim como o \texttt{bookmarks} (indicadores). 
Os usuÃ¡rios de Windows, deve considerar em evitar o uso do Adobe Reader na fase de elaboraÃ§Ã£o, por ser pesado e apresentar dificuldade de interagir com os editores de \LaTeX. 
Uma boa opÃ§Ã£o Ã© o freeware \texttt{SumatraPDF}\index{SumatraPDF}.

Lembre-se que o \LyX{} permite exportar/importar arquivos fonte em
\LaTeX, alÃ©m de vÃ¡rios outros formatos na qual existem conversores
gratuitos do/para \LaTeX. 

\textbf{Dicas:} Para facilitar a navegaÃ§Ã£o do documento em elaboraÃ§Ã£o,
Ã© bom ativar o ``Exibir-&gt;Painel de estrutura de tÃ³picos''. 
Se usar o cÃ³digo \LaTeX{} inserido no documento com frequÃªncia, como o do
pacote \texttt{tikz}, seria bom ativar a prÃ©-visualizaÃ§Ã£o na ``Ferramentas-&gt;PreferÃªncias'' e em ``AparÃªncias \&amp; Comportamento'', Ã­tem ``ExibiÃ§Ã£o'', na ``PrÃ©-visualizaÃ§Ã£o InstantÃ¢nea'', escolher ``sem matemÃ¡tica'', e colocar prÃ©-visualizaÃ§Ã£o no bloco que contÃ©m a caixa de \LaTeX{} que julgar conveniente, com ``Inserir-&gt;PrÃ©-visualizaÃ§Ã£o''.
Se quer que toda fÃ³rmula matemÃ¡tica tenha prÃ©-visualizaÃ§Ã£o automÃ¡tica, poderÃ¡ escolher ``ligado'' em vez de ``sem matemÃ¡tica''.
No entanto, as equaÃ§Ãµes no modo ``Instant Preview'' ficarÃ¡ com a mesma cor do texto, tornando mais difÃ­cil de identificar rapidamente, o que nÃ£o Ã© recomendÃ¡vel.
Para ver como ficaria o cÃ³digo \LaTeX{} em ediÃ§Ã£o, poderÃ¡ ativar o ``View-&gt;View source''. 
Se o texto todo ficar sublinhado em vermelho, ou nÃ£o sublinha a palavra errada, pode ser que o corretor ortogrÃ¡fico nÃ£o estÃ¡ selecionado corretamente. 
VÃ¡ em ``Ferramentas-&gt;PreferÃªncias'' e em ``ConfiguraÃ§Ãµes de Idiomas'', item ``Verificador OrtogrÃ¡fico'', escolha um verificador em ``verificador ortogrÃ¡fico''. 
TambÃ©m certifique de que botÃ£o de ``verificar ortografia continuamente'' (BotÃ£o ABC sublinhado em vermelho) estÃ¡ ativa.

Depois de tudo pronto, ``file-&gt;export'' permite criar arquivo final
no formato desejado.

Note que a maioria dos editores de \LaTeX{} salva o documento antes de
compilar, mas o \LyX{} nÃ£o faz isso. 
Ã‰ necessÃ¡rio salvar manualmente sempre que convÃ©m.

\section{ABC do \LyX}

%O \LyX{} tem as ferramentas visuais e ediÃ§Ã£o visual do documento,
%mas precisarÃ¡ conhecer a estrutura e o funcionamento do \LaTeX{}
%para usar corretamente. TambÃ©m Ã© aconselhÃ¡vel que tenha um pouco de
%conhecimento sobre como escrever fÃ³rmulas matemÃ¡ticas no LaTeX. Para
%tanto, consulte o manual de LaTeX na medida do necessÃ¡rio.

O tutorial e guias do usuÃ¡rio do \LyX{} pode ser acessado pelo ``Help-&gt;Tutorial'' e ``Help-&gt;User's Guide'' respectivamente.

TambÃ©m Ã© importante notar que copiar/colar padrÃ£o funciona somente entre trechos de documentos do \LyX. 
Caso de colar trecho de cÃ³digo do outro aplicativo como navegador de internet ou editor de texto para o campo de comando \LaTeX{} (botÃ£o \TeX{} ou &lt;ctrl&gt;L), use o colar especial (editar-&gt;colar especial-&gt;texto simples) ou ctrl+shift+v, para nÃ£o perder a quebra de linhas.

No lado esquerdo da barra de ferramentas, poderÃ¡ escolher o tipo de texto (parÃ¡grafo). 
Alguns dos mais importantes sÃ£o:

\begin{description}
\item[Standard] texto normal.

\item[Itemize] lista nÃ£o enumerada.

\item[Enumerate] lista enumerada.

\item[Chapter] TÃ­tulo do capÃ­tulo

\item[Section] TÃ­tulo da seÃ§Ã£o.

\item[Subsection] TÃ­tulo da subseÃ§Ã£o.

\item[Lyx-code] O texto como foi escrito, inclusive quebra de linhas
(para colocar algoritmo, cÃ³digo fonte do programa, etc).
\end{description}

Uma das formas de colocar comentÃ¡rio no documento Ã© atravÃ©s da nota inserido por ``insert-&gt;note'' que Ã© adequado para notas mais longas por poder ``fechar'' a ``caixa de notas''.

As ``caixas'' como de notas, \TeX{}, Figure, etc tem um botÃ£o junto a ``caixa'' e clicando nele, poderÃ¡ abrir ou fechar, para facilitar a editoraÃ§Ã£o. % Experimente na ``caixa'' de nota acima (no \LyX{}).
O fato de caixa estar fechada ou aberta nÃ£o influencia no processamento do documento final.

Como notas nÃ£o serÃ£o impressas, tambÃ©m serve para desativar temporariamente o trecho do documento, selecionando e clicando em ``insert-&gt;note''.
Para desfazer a caixa de notas ou similares, use o ``disolve-&gt;inset'' acessÃ­vel pelo botÃ£o direito sobre caixa de notas ou similares.

%Observemos que a versÃ£o com {*} como ``chapter{*} ``, ``section{*}``, etc nÃ£o serÃ£o enumeradas e nÃ£o vÃ£o para o sumÃ¡rio.

%Quando insere uma imagem externa, ele Ã© colocado como referÃªncias
%(link). Isto quer dizer que a figura fica fora do documento (nÃ£o dentro
%do arquivo como nos aplicativos Office). Isto quer dizer que as imagens
%nÃ£o devem ser apagadas e quando copiar o documento \LyX{}, deverÃ¡
%copiar imagens juntas. No documento final em PDF, estas imagens serÃ£o
%convertidas e inseridas dentro do documento PDF.

Apesar de \LyX{} efetuar conversÃ£o automÃ¡tica de imagens, quando pretende exportar o cÃ³digo para \LaTeX, Ã© bom deixar convertido para pdf/jpg/png (para PDF\LaTeX{} usado atualmente) ou eps (para \LaTeX{} antigo) a fim de evitar problema de compatibilidade de imagem com o cÃ³digo fonte em (PDF)\LaTeX{}.

\textbf{Acertando a configuraÃ§Ã£o do documento}

No ``Documento'', escolha a classe de documento, margens e tamanho
das fontes.

Quando compila um documento, o \LyX{} costuma colocar uma opÃ§Ã£o de
usar o pacote \texttt{amsmath}, mas no caso de inserir o comando de \TeX{}
diretamente, pode nÃ£o ser detectado a necessidade de \texttt{amsmath}.

Para resolver este caso, entre em ``Document-&gt;settings'' e no ``math Package'', tire o check do ``use amsmath package automatically'' e cheque em ``use ams package''.
O problema similar pode acontecer quanto inclui figuras, usar cores, etc dentro da caixa de \LaTeX, sem estar usando fora dela. 
Neste caso, carregue os pacotes necessÃ¡rios, colocando o comando \LaTeX{} \verb+\usepackage+ no \texttt{preamble} (Document-&gt;Settings, [LaTeX Preamble]).

ConfiguraÃ§Ã£o do documento como estilo, margens, etc podem ser alterado
pelo ``Document-&gt;Settings'' em qualquer momento.

Quando colar trecho de um documento para outro, pode ficar com a especificaÃ§Ã£o da linguagem diferente e comeÃ§ar a ser sublinhado. 
Neste caso, selecione este trecho e no ``text style'' (botÃ£o com letras ``ab''), escolha o ``reset'' na opÃ§Ã£o de [linguagem].

\textbf{Inserindo o comando de \LaTeX}

Para colocar pacotes adicionais, definiÃ§Ãµes, configuraÃ§Ãµes adicionas,
etc que ainda nÃ£o estÃ¡ disponÃ­vel no \LyX{} (ou que nÃ£o tem paciÃªncia
de descobrir como fazer), deverÃ¡ ser colocado no campo de ``preamble''
em ``Document-&gt;settings, [LaTeX Preamble]'', usando o comando
de \LaTeX. 
No preamble, deverÃ¡ usar acentuaÃ§Ã£o no modo \TeX{} para evitar problemas de portabilidade.

Quando precisar colocar um comando extra de \LaTeX{} no documento, clique no botÃ£o ``\TeX'' ou pressione &lt;ctrl&gt;L na qual insere uma caixa de comando \LaTeX, podendo colocar qualquer comando vÃ¡lido de \LaTeX. 
Para evitar problemas, coloque um espaÃ§o (ou par de chaves) no final do campo de comandos de \LaTeX, caso finalizar com o comando \LaTeX.

O comando \LaTeX{} pode ficar divididos. 
Por exemplo, uma caixa pode conter \verb+\begin{ambiente}+ e outra caixa pode conter \verb+\end{ambiente}+, para colocar trecho do cÃ³digo no ambiente desejado.

Note que o campo de fÃ³rmulas tambÃ©m aceitam diretamente os comandos
de \LaTeX{}.

\textbf{Para letras acentuadas fora do corpo do documento}

O campo exibido na janela separada como no caso do preamble (Document-&gt;Settings, [LaTeX preamble]), entrada de Ã­ndice remissivo (insert-&gt;index entry), etc usam a exibiÃ§Ã£o nativa do sistema.
Assim poderÃ¡ apresentar problemas na exibiÃ§Ã£o ou compilaÃ§Ã£o quando muda de sistema operacional.
Para evitar problemas de portabilidade, use a acentuaÃ§Ã£o pelo comandos
\TeX{} nestes casos.
Caixa de cÃ³digo \LaTeX{} (inserido com botÃ£o \TeX{}) nÃ£o apresenta este tipo de problemas.


\section{Formatando textos}

Para alterar o tipo de fontes do texto, selecione o trecho e clique
no botÃ£o ``\emph{abc}''.
Nele tem a opÃ§Ã£o de escolher a famÃ­lia, forma e peso.


%\textbf{Family:} roman (serifado) Ã© usado para o corpo do documento;
%sans serif (sem serifa) pode ser usado para tÃ­tulos; typewriter (maquina
%de escrever) Ã© usado para trecho que deve ser lido no pÃ© da letra
%(cÃ³digo fonte do programa, nome de arquivos, etc).
%
%\textbf{Series:} medium (normal) e bold (negrito). Tecla de atalho
%para negrito Ã© &lt;control&gt;b.
%
%\textbf{Shape:} upright (reto) usado para corpo do documento; italic
%(itÃ¡lico) usado para destacar palavra a ser definido ou corpo do enunciado
%do teorema, etc; slanted (inclinado, mas nÃ£o Ã© itÃ¡lico) que deve ser
%evitado o seu uso quando estÃ¡ usando o itÃ¡lico; small caps (caixa
%alta) Ãºtil para tÃ­tulos.
%
%\textbf{size:} Ele esta na ordem crescente, onde normal Ã© o tamanho
%normal do documento.
%
%\textbf{misc:} emph (enfatizar) usado para enfatizar palavra dentro
%do texto, alterando entre fontes itÃ¡lico e reto (botÃ£o de ``E''
%na barra de ferramenta - tecla de atalho Ã© &lt;ctrl&gt;e); underbar (sublinhada);
%noun Ã© maiÃºsculo.

O \texttt{emph} fica na opÃ§Ã£o \texttt{misc} e \texttt{language} permite escolher idioma neste trecho.
Note que &lt;cntrol&gt;b Ã© atalho para negrito e &lt;cntrl&gt;e Ã© atalho para enfatizar.

% 
%
%\textbf{language:} linguagem em que o texto estÃ¡ escrito. A hifenizaÃ§Ã£o,
%corretor ortogrÃ¡fico, etc Ã© efetuado com a linguagem especificada. 

A opÃ§Ã£o ``reset'' de cada item restaura o item correspondente como padrÃ£o do
documento.

O botÃ£o ``A com seta redonda'' aplicarÃ¡ a Ãºltima configuraÃ§Ã£o. 
Para saber o que cada botÃ£o faz, posicione o mouse sobre o botÃ£o e deixe
parado para aparecer o texto informativo.

Para criar um novo parÃ¡grafo ou linhas:

&lt;ENTER&gt; cria novo parÃ¡grafo

&lt;control&gt;+&lt;ENTER&gt; quebra de linha (sem parÃ¡grafo)

&lt;control&gt;+&lt;space&gt; espaÃ§o forÃ§ado (\verb+~+ de \LaTeX).

Note que, para inserir linhas vazias, deve alterar (quebras de linhas
ou parÃ¡grafo) com o espaÃ§o forÃ§ado.

%\texttt{~}
%
%\texttt{~}
%
%\texttt{~}
%
%\texttt{~}
%
%Notas de rodapÃ©\footnote{Notas de rodapÃ© jÃ¡ ficarÃ¡ com espaÃ§o simples como exigido, por estar
%redefinido no arquivo de estilo. TambÃ©m foi eleminado indentaÃ§Ã£o para
%caber mais, apesar de nÃ£o ser a exigÃªncia} pode ser inserido pelo ``insert-&gt;footnote''. 

\section{MatemÃ¡tica\label{sec:matematica}}

FÃ³rmulas matemÃ¡ticas dentro do texto denominado de \texttt{inlinestyle}
(textstyle) pode ser inserido, clicando no Ã­cone de somatÃ³rio $\sum$ na barra de ferramentas, ou com menu ``insert-&gt;math-&gt;inline formula'' ou
com a tecla &lt;control&gt;M. Note que &lt;ctrl&gt;M dentro da fÃ³rmula matemÃ¡tica torna localmente como modo texto (aplicarÃ¡ \verb+\text{}+ do \texttt{amsmath}).

Para inserir sÃ­mbolos e fÃ³rmulas, podemos usar o painel matemÃ¡tico
ativado quado o cursor estÃ¡ dentro da caixa de fÃ³rmulas.
Para criar fÃ³rmulas de maneira rÃ¡pida, Ã© recomendado memorizar alguns comandos bÃ¡sicos de \LaTeX{} que podem ser digitados (em vez de clicar no
mouse). 

%Alguns deles sÃ£o
%
%\texttt{x\textasciicircum{}2&lt;seta para direia&gt;\_i} $x_{i}^{2}$
%
%\texttt{\textbackslash{}int\_a&lt;seta para direita&gt;\textasciicircum{}b}
%$\int_{a}^{b}$
%
%\texttt{\textbackslash{}frac a&lt;seta para baixo&gt;b} $\frac{a}{b}$
%
%\texttt{\textbackslash{}alpha} $\alpha$
%
%\texttt{\textbackslash{}beta} $\beta$
%
%\texttt{\textbackslash{}pi} $\pi$
%
%\texttt{\textbackslash{}sum\_i=1&lt;seta para direita&gt;\textasciicircum{}n}
%$\sum_{i=1}^{n}$
%
%\texttt{\textbackslash{}infty} $\infty$
%
%\texttt{\textbackslash{}partial} $\partial$
%
%\texttt{\textbackslash{}ge} $\ge$
%
%\texttt{\textbackslash{}le} $\le$
%
%\texttt{\textbackslash{}ne} $\ne$
%
%\texttt{\textbackslash{}cos x} $\cos x$
%
%\texttt{\textbackslash{}sin x} $\sin x$
%
%\texttt{\textbackslash{}ln x} $\ln x$
%
%\texttt{\textbackslash{}sup x} $\sup x$
%
%\texttt{\textbackslash{}lim x} $\lim x$
%
%\textbackslash{}sqrt x $\sqrt{x}$
%
%\textbackslash{}root n &lt;seta para direita&gt; x $\sqrt[n]{x}$. 
%

Note que o \LyX{} tem dificuldade em lidar com o parÃ¢metro opcional
no modo matemÃ¡tico, dificultando o uso da forma \verb+\sqrt[n]{x}+.
Para contornar, foi definido o comando \verb+\root+ no \LyX{} que nÃ£o Ã© definido por padrÃ£o no \LaTeX{}.

Para descobrir nomes de comandos \LaTeX{} que estÃ£o no ``Painel MatemÃ¡tico'', posicione o mouse sobre os sÃ­mbolos no ``Math Panel'' (mostrado quando o cursor estÃ¡ na fÃ³rmula) que exibirÃ¡ o nome do comando.

Uma fÃ³rmula numa linha independente denominado de ``displaystyle''
pode ser criado com &lt;Control&gt;+&lt;Shift&gt;+M ou pelo menu ``insert-&gt;math-&gt;Display formula''.

Para sair rapidamente de uma fÃ³rmula, pressione o ``ESC'' que posicionarÃ¡ o cursor logo apÃ³s a fÃ³rmula em ediÃ§Ã£o.

%A posiÃ§Ã£o dos limites no ``inlinestyle'' nÃ£o ficam embaixo/encima
%para economizar altura da fÃ³rmula, como em $\sum_{n=1}^{\infty}\frac{1}{n}=\infty$.
%Se quer que estas e outras exibiÃ§Ãµes no ``inlinestyle'' fiquem igual
%ao do ``displaystyle'', poderÃ¡ usar o comando do \LaTeX{} \textbackslash{}displaystyle.
%Digite \textbackslash{}displaystyle seguido de espaÃ§o. Na ``caixinha''
%criada, a fÃ³rmula digitado ficarÃ¡ no modo ``displaystyle'' como
%em ${\displaystyle \sum_{n=1}^{\infty}\frac{1}{n}=\infty}$ mesmo
%no meio do texto.

Para converter tipo de fÃ³rmulas jÃ¡ digitadas, clique o botÃ£o direito
sobre a fÃ³rmula e escolha o novo tipo de fÃ³rmula. 
TambÃ©m pode posicionar o cursor na fÃ³rmula e use o ``edit-&gt;math-&gt;change formula type''.

A funÃ§Ã£o por partes pode ser criado com ``cases'', inserido com
botÃ£o direito do mouse sobre a fÃ³rmula, ou pelo menu ``insert-&gt;math-&gt;cases''.

Nas fÃ³rmulas multi linhas, &lt;control&gt;+ENTER abre uma nova linha.

%$|x|=\begin{cases}
%x &amp; ,x\ge0\\
%-x &amp; ,x&lt;0
%\end{cases}$

%Para inserir texto no meio da fÃ³rmula, use o comando \textbackslash{}text
%
%\begin{eqnarray*}
%f(x) &amp; = &amp; \begin{cases}
%x^{2}, &amp; \text{ se }x&gt;0\\
%-x^{2}, &amp; \text{ se }x\le0
%\end{cases}
%\end{eqnarray*}
%
%PoderÃ¡ inserir parentes ou similares usando o comando \textbackslash{}left
%e \textbackslash{}right em vez do painel.
%
%Por exemplo, ''\textbackslash{}left. x\textasciicircum{}2 \textbackslash{}right
%{]}`` produz $\left.x^{2}\right]$. As vezes, isto torna mais rÃ¡pido
%do que usar o painel de inserÃ§Ã£o de delimitadores.

As fÃ³rmulas que ocupam uma linha independente tais como ``Display fÃ³rmula'' (fÃ³rmula no modo ``displaystyle''), ``AMS align environment'',
etc podem ser enumerados automaticamente.

Para ativar/desativar enumeraÃ§Ã£o na equaÃ§Ã£o com linha independente, clique no botÃ£o direito do mouse sobre a fÃ³rmula, ou use o menu ``edit-&gt;math-&gt;toggle numbering''.

Para referenciar equaÃ§Ãµes ou elementos enumerados,
% como
%
%\begin{equation}
%a^{2}=b^{2}+c^{2}\label{eq:pitagoras}
%\end{equation}
use o botÃ£o de etiqueta para inserir rÃ³tulo e referÃªncia cruzada (que
fica no lado) para inserir referÃªncias.% \ref{eq:pitagoras}.

\section{ObservaÃ§Ã£o adicional}
Em geral, o estilo ABNTeX2 nÃ£o costuma vir instalado no LyX.

Para instalar, siga as instruÃ§Ãµes do site oficial
\url{https://github.com/abntex/abntex2/wiki/LyX}.

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Para Organizadores do Evento}

Aqui, veremos alguns pacotes Ãºteis para organizadores de eventos. 
Um deles Ã© o pacote para mala direta no \LaTeX, Ãºtil para emitir certificados e outro Ã© para criar caderno de trabalhos apresentados.

\section{Certificado com mala direta no \LaTeX}
Certificados de congressos cientÃ­ficos pode conter fÃ³rmulas nos tÃ­tulos, o que complica a mala direta nos aplicativos de escritÃ³rios.
Assim, costumamos efetuar a mala direta no \LaTeX.

A mala direta pode ser efetuada pelo \texttt{datatool}\index{datatool} que lÃª os dados de um arquivo \texttt{CSV}. 
ApÃ³s carregar o \texttt{datatool}, comece configurando o separador de colunas e delimitador de campos.
\begin{singlespacing}
\begin{lstlisting}
\DTLsetseparator{,} % Separador de campos
\DTLsetdelimiter{"} % delimitador de celulas
\end{lstlisting}
\end{singlespacing}

Para acessar o arquivo \texttt{CSV}, usa-se o comando
\verb+\DTLloaddb{lista}{ex-c-lista-nomes.csv}+\index{DTLloaddb@\verb+\DTLloaddb+} para associar o arquivo \texttt{ex-c-lista-nomes.csv} no atalho \texttt{lista}. 
Assim, ao referenciar \texttt{lista}, estarÃ¡ referenciando o arquivo \texttt{ex-c-lista-nomes.csv}

A primeira linha do arquivo \texttt{ex-c-lista-nomes.csv} Ã© assumido que Ã© tÃ­tulo, isto Ã©, contÃ©m nome das colunas.
Caso nÃ£o tenha linha de tÃ­tulo, poderÃ¡ providenciar como em

\verb+\DTLloaddb[noheader,keys={Nome,Trabalho}]{lista}{lista.csv}+. 

Neste caso, estÃ¡ indicando que nÃ£o hÃ¡ linha de tÃ­tulo no arquivo e estÃ¡ colocando nomes \texttt{Nome} e \texttt{Trabalho} na primeira e segunda coluna do arquivo de dados.

Agora podemos efetuar um laÃ§o de repetiÃ§Ã£o que Ã© algo como
\begin{singlespacing}
\begin{lstlisting}
\DTLforeach{lista}{%
\personname=Nome,\worktitle=Trabalho}{%
...
} % \DTLforeach
\end{lstlisting}
\end{singlespacing}

O primeiro parÃ¢metro do comando \verb+\DTLforeach+\index{DTLforeach@\verb+\DTLforeach+} Ã© o atalho para arquivo \texttt{CSV} que foi criado pelo comando \verb+\DTLloaddb+.
O segundo parÃ¢metro Ã© a lista de associaÃ§Ã£o de comandos com valor do campo.
\verb+\personname=Nome+ e \verb+\worktitle=Trabalho+ associa o campo (dado da coluna) \texttt{Nome} para o comando \verb+\personname+ e o campo \texttt{Trabalho} para o comando \verb+\worktitle+.
O terceiro parÃ¢metro sÃ£o comandos a serem executados.
O arquivo de entrada e como do Exemplo~\ref{ex:d:certificado:csv}

\begin{singlespacing}
\begin{lstlisting}[caption={ex-d-lista-nomes.csv},label=ex:d:certificado:csv]
"Nome","Trabalho","Observacao"
"Nome 1","Trabalho 1",
"Nome 2","Trabalho 2",
"Nome 3","Trabalho 3",
...
\end{lstlisting}
%\begin{center}
%\lstlistingname~\refstepcounter{lstlisting}\thelstlisting: lista-nomes.csv\label{ex:c:certificado:csv}
%\end{center}
%\begin{framed}
%\begin{verbatim}
%"Nome","Trabalho","Observacao"
%"Nome 1","Trabalho 1",
%"Nome 2","Trabalho 2",
%...
%\end{verbatim}
%\end{framed}
\end{singlespacing}

Agora, o certificado pode ter enfeites como molduras, logotipos, etc.

Ele serÃ¡ diagramado para papel \texttt{A5}, para ser impresso no papel \texttt{A4}, ampliando-o. Fonte tambÃ©m serÃ¡ alterado para \texttt{bookman} que Ã© uma serifa grossa, ideal para letras maiores como este.
Veja o Exemplo~\ref{ex:d:certificado}.

\begin{singlespacing}
\lstinputlisting[caption={ex-d-certificado.tex},label=ex:d:certificado]{latex-via-exemplos-certificado}
\end{singlespacing}
%
Um dos certificados gerados Ã© como segue.
\begin{framed}
\center
\includegraphics[page=1, width=0.7\linewidth]{latex-via-exemplos-certificado}
\end{framed}

% Note que, o que deixou o cÃ³digo complexo foi o sombreamento.

\section{Gerando crachÃ¡ pela mala direta}
CrachÃ¡ pode ser gerado pelo aplicativo de escritÃ³rios, mas aproveitando a mala direta visto na seÃ§Ã£o de certificados, poderÃ¡ gerar crachÃ¡s usando o pacote \texttt{ticket}\index{ticket} que gera cartÃ£o de visitas e similares. Este pacote dispÃµe de dois comandos: \verb+\ticketdefault{}+\index{ticketdefault@\verb+\ticketdefault{}+} que determina o que serÃ¡ colocado em todas crachÃ¡s (por exemplo, nome do evento, logotipo, etc) e o comando \verb+\ticket+\index{ticket@\verb+\ticket+} que determina como crachÃ¡ serÃ¡ gerada. Como cada crachÃ¡ Ã© gerado pelo ambiente picture, coloca os conteÃºdos pelo comando \verb+\put+ na posiÃ§Ã£o desejada.
Veja o Exemplo~\ref{ex:d:cracha}.

\begin{singlespacing}
\lstinputlisting[caption={ex-d-cracha.tex},label=ex:d:cracha]{latex-via-exemplos-cracha}
\end{singlespacing}
%
Parte de crÃ¡chÃ¡s gerados Ã© como segue.
\begin{framed}
\center
% Para recortar, use opÃ§Ã£o trim={left bottom right top},clip
\includegraphics[page=1, width=0.7\linewidth, trim={{0.15\linewidth} {\linewidth} {0.15\linewidth} {0.05\linewidth}}, clip]{latex-via-exemplos-cracha}
\end{framed}

\section{Caderno de resumos}
Quando recebe vÃ¡rios artigos e quer ``encadernar'', poderÃ¡ usar a classe \texttt{combine}\index{combine} em vez de gerar PDF de cada um e grudar.
A classe \texttt{combine} agrupa os artigos automaticamente em um Ãºnico documento, gerando um ``caderno'' de artigos.

Para usar o \texttt{combine}, todos documentos que serÃ£o incluÃ­dos nele devem estar usando a mesma classe que podem ser \texttt{memoir}, \texttt{book}, \texttt{report}, \texttt{letter} ou \texttt{article}. 
As classes nÃ£o suportadas oficialmente como o \texttt{amsart} pode precisar de ajustes manuais para funcionar perfeitamente.

%Para \texttt{combine}, o papel estÃ¡ fixado. 
%Assim, deverÃ¡ usar o pacote \texttt{geometry} para efetuar ajustes de papel, se necessÃ¡rio.

A classe \texttt{combine} requer mais recursos que o documento normal.
Assim, para aumentar a memÃ³ria reservada para isso, coloque
\begin{singlespacing}
\begin{lstlisting}
\usepackage{etex} % to use etex extensions 
\reserveinserts{28} % using etex extensions
\end{lstlisting} 
\end{singlespacing}
no preÃ¢mbulo, caso ocorrer o erro do tipo ``No room for ...''.
Se ainda ocorrer erro, aumente o valor de $28$ para $50$, por exemplo.

Note que \verb+\maketitle+ ou \texttt{titlepage} Ã© necessÃ¡rio. 
Se nÃ£o existir, causa erros.

Para gerar sumÃ¡rio de artigos incluÃ­dos, carregue o pacote \texttt{combinet}\index{combinet}.
Para usar recursos do \texttt{natbib}, carregue o pacote \texttt{combnat}\index{combinat} no lugar de \texttt{natbib}.
 
O modo padrÃ£o Ã© ignorar os pacotes carregados pelos artigos. 
Assim, todos pacotes necessÃ¡rios devem estar carregados no arquivo mestre (arquivo do \texttt{combine} que vai incluir artigos).
Ã‰ importante observar que na distribuiÃ§Ã£o do \TeX{} recente (2023), precisa efetuar correÃ§Ã£o segundo
%\begin{singlespacing}
%\begin{lstlisting}
%\makeatletter
%  \let\document\c@ladocument\begingroup
%\makeatother
%\end{lstlisting} 
%\end{singlespacing}
%no preÃ¢mbulo conforme indicado em 
\url{https://tex.stackexchange.com/questions/591145/extra-endgroup-error-when-using-the-combine-document-class}. Note que, colocar
\begin{singlespacing}
\begin{lstlisting}
\makeatletter
  \let\document\c@ladocument\begingroup
\makeatother
\end{lstlisting} 
\end{singlespacing}
no preÃ¢mbulo do documento nÃ£o funciona devidamente, pois quando tenta carregar o pacote que depende do PDF como o \texttt{hyperref} ou pacotes grÃ¡ficos no modo pdf, gera erros.
Assim, localize e copie o arquivo \texttt{combine.cls} para onde esta o teu documento tex e efetue a alteraÃ§Ã£o conforme indicado, ou seja, localize a definiÃ§Ã£o de \verb+\c@ladocument+ e comente o primeiro \verb+\endgroup+ que estÃ¡ logo no comeÃ§o do comando, na linha 232 a distribuiÃ§Ã£o do \TeX{} atual (2023). Com isso, o inÃ­cio da definiÃ§Ã£o deste comando ficarÃ¡ como
\begin{singlespacing}
\begin{lstlisting}
\newcommand{\c@ladocument}{%
  %\endgroup
  \let\mainjobname\jobname            %% added
  \def\c@lmainauxfile{\jobname.aux}   %% added 
\end{lstlisting} 
\end{singlespacing}
Onde \verb+\endgroup+ do comeÃ§o do comando ficou comentada.

Vamos supor que artigos a serem incluÃ­dos tem a forma como no Exemplo~\ref{ex:d:conferencia}.

\begin{singlespacing}
\begin{lstlisting}[caption={ex-d-conferencia1.tex},label=ex:d:conferencia]
documentclass[10pt,a4paper]{article}
% Este arquivo sera processado automaticamente por um programa.
% Por favor nao altere nada no preamble (ate \begin{document} ).
\usepackage[utf8]{inputenc}
\usepackage[english,brazil]{babel}
\usepackage{amsmath}
\usepackage{amssymb} % Ele carrega amsfonts tambem
\usepackage{enumerate}
% Por favor nao inclua outros "packages".
\begin{document}
\title{TÃ­tulo da ConferÃªncia 1}
\author{Autor da conferÃªncia 1}
\maketitle

Texto da conferÃªncia 1
% Incluir bibliografia e opcional. Se decidir inclui-la use o formato abaixo

%\begin{thebibliography}{99}
%\bibitem{key1} Lamport, L. \emph{LaTeX: A Document Preparation System}, Addison-Wesley, \textbf{1986}.
%\end{thebibliography}
\end{document}
\end{lstlisting}
\end{singlespacing}

EntÃ£o o caderno, pode ser criado como no Exemplo~\ref{ex:d:caderno}.

\begin{singlespacing}
\begin{lstlisting}[caption={ex-d-caderno.tex},label=ex:d:caderno]
\documentclass[12pt,a5paper,book]{combine}
% combine supports: memoir, book, report, and article

% If the error ``No room for ..'' occur, increase the reserved insets
\usepackage{etex} % to use etex extensions 
\reserveinserts{28} % using etex extensions

% To create table of cotents automatically
\usepackage{combinet}

% Todos pacotes usados nos artigos a ser importados
\usepackage[utf8]{inputenc}

\usepackage{amsmath}
\usepackage{amssymb} % it's include amsfonts too
\usepackage{enumerate}
\usepackage[english,brazil]{babel}

% packages usados somente no corpo de anais do congresso 
\usepackage{graphicx}

\usepackage{geometry}
\geometry{lmargin=2.5cm,rmargin=2cm,tmargin=2cm,bmargin=2cm}

\sloppy % prefer underfull
% \fussy % prefer overfull

% No combine, chamada de \maketitle Ã© obrigatorio.
% Assim, quando faz a capa manualmente, deverÃ¡ desabilitar isto
\makeatletter\c@lmtitlempty\makeatother

\begin{document}
% capa
\begin{titlepage}
\begin{center}
  \thispagestyle{empty}
  \begin{flushleft}
    \noindent
    \unitlength=0.04\textwidth
    \begin{picture}(0,0)(2,33)
      % \includegraphics[width=1.16\textwidth]{fundo}
    \end{picture}
  \end{flushleft}
  {\Large T\'ITULO DO CONGRESSO} \\
  HOMENAGEM, ETC.
 
  \vfill
  {\huge Resumos de apresentaÃ§Ãµes \\
  (Abstract of talks and posters)}
  \vfill
  DATA
  \vfill
  LOCAL
  \vfill
\end{center}
\end{titlepage}

% contra capa
\clearpage
\thispagestyle{empty}
\noindent
{\bfseries ComitÃª CientÃ­fico (Scientific Comittee)} \\
Membro 1 (InstituiÃ§Ã£o 1) \\
Membro 2 (InstituiÃ§Ã£o 2)

\

\noindent
{\bfseries ComissÃ£o Organizadora (Organizing Comittee)} \\
Membro 1 (InstituiÃ§Ã£o 1) \\
Membro 2 (InstituiÃ§Ã£o 2)

\

 \begin{flushright}
   \begin{minipage}{0.9\textwidth}
   RealizaÃ§Ã£o (Hosted by): \\
   INSTITUIÃ‡Ã•OES
   \end{minipage}
 \end{flushright}

\clearpage
\newpage

% Table of contents
% \pagestyle{combine}
\pagestyle{plain}

\tableofcontents
\clearpage
~ % um espaÃ§o para gerar pÃ¡gina nÃ£o vazia
\newpage % pulando uma pÃ¡gina

% Importa artigos de conferÃªncias
% Usar o comando \import em vez de \input ou \include
\begin{papers}
\import{conferencia1}
\import{conferencia2}
...
\end{papers}

\end{document}
\end{lstlisting}
\end{singlespacing}

Note que foi diagramado no papel \texttt{A5} para poder efetuar \texttt{booklet}\index{booklet} (colocar duas pÃ¡ginas em uma, reordenar para grampear no meio) no papel \texttt{A4}. 
O processo de \texttt{booklet} costuma ser feito no aplicativo como o \texttt{jPDFTWeak} (\url{http://jpdftweak.sourceforge.net/}).

%caderno de resumos 

\section{Folhetos}
PoderÃ¡ gerar os folhetos do tamanho A4 dobrado em trÃªs, usando a claasse \texttt{leaflet}\index{leaflet} que pode ser usado como se fosse a classe \texttt{article}. O folheto Ã© obtido, imprimindo frente/verso virando ao longo da borda maior e dobrando em trÃªs.

No Exemplo~\ref{ex17:folder}, foi usado o pacote \texttt{lipsum} para preencher o espaÃ§o com texto para ver como fica a aparÃªncia do folheto. Note que foi ativado a paginaÃ§Ã£o para ver o fluxo.

% \LTXinputExample{latex-via-exemplos-poster}
\begin{singlespacing}
% \lstinputlisting[caption={ex11-12.tex},label=ex:11-12]{latex-via-exemplos-poster}
\lstinputlisting[caption={ex17-folder.tex},label=ex17:folder]{latex-via-exemplos-folder}
\end{singlespacing}
%
\begin{framed}
\center
\includegraphics[page=1,width=0.7\linewidth]{latex-via-exemplos-folder}
\end{framed}
\begin{framed}
\center
\includegraphics[page=2,width=0.7\linewidth]{latex-via-exemplos-folder}
\end{framed}


\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Para Professores}

SerÃ¡ tratado algumas questÃµes Ãºteis aos professores.

\section{Lista de exercÃ­cios e provas}

Nas provas ou listas de exercÃ­cios, os itens podem ser curtas.
Neste caso, Ã© aconselhÃ¡vel que coloque mais de um item por linha, mas mantendo o alinhamento.

Existem vÃ¡rios pacotes para elaboraÃ§Ã£o de lista de exercÃ­cios e provas.
Aqui serÃ¡ apresentado uma delas.
%O pacote \texttt{exsheets}\index{exsheets} implementa o ambiente \texttt{question}\index{question} para produzir questionÃ¡rio enumerado 
O pacote \texttt{xsim}\index{xsim} Ã© sucessor de \texttt{exsheets}\index{exsheets}.
Este pacote implementa o ambiente \texttt{exercise}\index{exercise} para produzir exercÃ­cios enumerados (e o ambiente \texttt{solution} para escrever soluÃ§Ãµes)
e o pacote \texttt{tasks}\index{tasks} permite colocar vÃ¡rios itens enumeradas e alinhadas em uma Ãºnica linha (como Ã© feito pela combinaÃ§Ã£o dos pacotes \texttt{enumitem} e \texttt{tabto}).

%Veja o Exemplo~\ref{ex:e:exsheets}.
%
%\begin{singlespacing}
%%\begin{LTXexample}[pos=b,caption={ex12-10.tex},label=ex:12-10]
%\begin{lstlisting}[caption={ex-e-exsheets.tex},label=ex:e:exsheets]
%\documentclass[12pt,a4paper]{article}
%\usepackage[T1]{fontenc}
%\usepackage[utf8]{inputenc}
%\usepackage[brazil]{babel}
%\usepackage{tasks} % cria lista curta
%\usepackage{exsheets} % cria questoes
%\SetupExSheets[question]{type=exam} % configurando
%
%\begin{document}
%% O ambiente question produz questÃµes.
%
%\begin{question}
%  Qual item nÃ£o Ã© metal?
%   % itens da questÃ£o serÃ¡ produzido pelo ambiente tasks
%  \begin{tasks}(4) % 4 itens por linha
%    \task ferro
%    \task carbono
%    \task cobre 
%    \task mercÃºrio
%  \end{tasks}
%\end{question}
%
%% Alterando a enumeraÃ§Ã£o de tasks
%\settasks{
%  counter-format=(tsk[r]), % entre parenteses, em romano minusculo
%  label-width=4ex % largura reservada para rÃ³tulo
%}
%
%\begin{question}
%  O que Ã© mamÃ­fero?
%  \begin{tasks}(2) % 2 itens por linha
%    \task Animais que botam ovos.
%    \task Animais que amamentam.
%    \task Animais que voam.
%    \task Animais com 4 patas.
%  \end{tasks}
%\end{question}
%\end{document}
%\end{lstlisting}
%%\end{LTXexample}
%\end{singlespacing}
%%
%\begin{ltxlistingout}
%\begin{question}
%  Qual item nÃ£o Ã© metal?
%
%%  \begin{tasks}(4) % 4 itens por linha coloca ultimo item na linha seguinte
%% Isto acontece somente dentro do minipage e com o uso do geometry   
%  \bigskip  
%~~ a) ferro \hfill
%b) carbono \hfill
%c) cobre \hfill
%d) mercÃºrio \hfill ~
%\end{question}
%
%% Alterando a enumeraÃ§Ã£o de tasks
%\settasks{
%  counter-format=(tsk[r]), % entre parenteses, em romano minusculo
%  label-width=4ex % largura reservada para rÃ³tulo
%}
%
%\begin{question}
%  O que Ã© mamÃ­fero?
%  \begin{tasks}(2) % 2 itens por linha
%    \task Animais que botam ovos.
%    \task Animais que amamentam.
%    \task Animais que voam.
%    \task Animais com 4 patas.
%  \end{tasks}
%\end{question}
%\end{ltxlistingout}

Veja o Exemplo~\ref{ex:e:xsim}.

\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-10.tex},label=ex:12-10]
\begin{lstlisting}[caption={ex-e-exsheets.tex},label=ex:e:xsim]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{tasks} % cria lista curta
\usepackage{xsim} % cria exercicios (e respostas)
% traduzindo
\DeclareExerciseTranslation{brazil}{exercise}{ExercÃ­cio}
\DeclareExerciseTranslation{brazil}{exercises}{ExercÃ­cios}
% necessÃ¡rio se for colocar soluÃ§Ãµes tambÃ©m
\DeclareExerciseTranslation{brazil}{solution}{SoluÃ§Ã£o}
\DeclareExerciseTranslation{brazil}{solutions}{SoluÃ§Ãµes}

\begin{document}
% O ambiente exercise produz questÃµes.

\begin{exercise}
  Qual item nÃ£o Ã© metal?
   % itens da questÃ£o serÃ¡ produzido pelo ambiente tasks
  \begin{tasks}(4) % 4 itens por linha
    \task ferro
    \task carbono
    \task cobre 
    \task mercÃºrio
  \end{tasks}
\end{exercise}

% Alterando a enumeraÃ§Ã£o de tasks
\settasks{
  label=(\alph*), % entre parenteses, em romano minusculo
  label-width=4ex % largura reservada para rÃ³tulo
}

\begin{exercise}
  O que Ã© mamÃ­fero?
  \begin{tasks}(2) % 2 itens por linha
    \task Animais que botam ovos.
    \task Animais que amamentam.
    \task Animais que voam.
    \task Animais com 4 patas.
  \end{tasks}
\end{exercise}
\end{document}

\end{document}
\end{lstlisting}
%\end{LTXexample}
\end{singlespacing}
%
\begin{ltxlistingout}
\subsection*{ExercÃ­cio 1}
  Qual item nÃ£o Ã© metal?

%  \begin{tasks}(4) % 4 itens por linha coloca ultimo item na linha seguinte
% Isto acontece somente dentro do minipage e com o uso do geometry   
  \bigskip  
~~ a) ferro \hfill
b) carbono \hfill
c) cobre \hfill
d) mercÃºrio \hfill ~

% Alterando a enumeraÃ§Ã£o de tasks
\settasks{
  label=(\alph*), % entre parenteses, em romano minusculo
  label-width=4ex % largura reservada para rÃ³tulo
}

\subsection*{ExercÃ­cio 2}
  O que Ã© mamÃ­fero?
  \begin{tasks}(2) % 2 itens por linha
    \task Animais que botam ovos.
    \task Animais que amamentam.
    \task Animais que voam.
    \task Animais com 4 patas.
  \end{tasks}
\end{ltxlistingout}

\section{Com e sem respostas}
As vezes, queremos gerar versÃµes com resposta e outro sem, ou que resposta fique no final do documento, mas que seja diagramado junto as questÃµes.
Neste caso, podemos usar o pacote \texttt{answers}\index{answers} (existem vÃ¡rios pacotes para tal propÃ³sito).
Note que o pacote \texttt{xsim} pode fazer mesma tarefa, mas o pacote \texttt{answers} pode ser combinados com ambientes diversos, como com o ambiente gerado pelo \verb+\newtheorem+.
Veja o Exemplo~\ref{ex:e:answers}.

%%\setcounter{lstorichapter}{\value{chapter}}
%\setcounter{lstorisection}{\value{section}}
%%\setcounter{chapter}{0}
%\setcounter{section}{0}
\let\orithesection\thesection
\renewcommand{\thesection}{\arabic{section}}
%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-11.tex},label=ex:12-11,preset=\let\addcontentsline\emptyaddcontentsline]
\begin{ltxlisting}[caption={ex-e-answers.tex},label=ex:e:answers]
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}

\usepackage{answers} % resposta no arquivo separado
%\usepackage[nosolutionfiles]{answers} % resposta no lugar

\usepackage{amsthm}

% "sol" Ã© ambiente a ser usado. "Solution" nÃ£o deve ser modificada. A resposta sera gravada no arquivo referenciado internamente por "ans"
\Newassociation{sol}{Solution}{ans}
% \renewcommand{\solutionextension}{ans}

\newtheorem{ex}{ExercicÃ­o}[section] % ambiente de exercicios

\begin{document}
% inicia a gravacao da resposta no arquivo "ans" cuja nome externo e \jobname-ans (\jobname e nome do arquivo atual)
\Opensolutionfile{ans}[\jobname-ans]

\section{Problemas}

\begin{ex}
Primeiro exercÃ­cio.
\begin{sol}
SoluÃ§Ã£o do primeiro exercÃ­cio.
\end{sol}
\end{ex}

\begin{ex}
Segundo exercÃ­cio.
\begin{sol}
SoluÃ§Ã£o do segundo exercÃ­cio.
\end{sol}
\end{ex}
\Closesolutionfile{ans} % finaliza a gravaÃ§Ã£o das respostas

\section{SoluÃ§Ãµes}
\Readsolutionfile{ans} % colocar solucoes do "ans" aqui.
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}
%%\setcounter{chapter}{\value{lstorichapter}}
%\setcounter{section}{\value{lstorisection}}
\let\thesection\orithesection
%\let\addcontentsline\oriaddcontentsline

%shortlst nÃ£o, por causa da licenca.

%\usepackage{tasks}.
%\usepackage{exsheets} usar o sucessor xsim
%\usepackage{answers} % put answer in the separated file
%%\usepackage[nosolutionfiles]{answers} % put answer in the place

\clearpage\thispagestyle{empty}\cleardoublepage
\chapter{Para Projetos}

Aqui serÃ¡ tratado de pacotes Ãºteis ao desenvolvimento de documentos grandes como no caso de livros.

\section{Pacote \texttt{standalone}}
Quando cria muitas ilustraÃ§Ãµes e diagramas, as vezes deixamos estas ilustraÃ§Ãµes como arquivo separado para compilar e ajustar mais rapidamente.
Por exemplo, cada ilustraÃ§Ã£o em \texttt{tikz} pode estar em um Ãºnico arquivo para que o documento principal inclua eles.
Neste caso, nÃ£o podemos usar \verb+\input+, nem \verb+\include+ pois a ilustraÃ§Ã£o tem a sua prÃ³pria classe de documento.
Neste caso, podemos usar a classe \texttt{standalone}\index{standalone}.
Cada ilustraÃ§Ã£o de \texttt{tikz} usarÃ¡ a classe \texttt{standalone} em vez do \texttt{article} ou similar.
Assim, podemos compilar e ajustar a ilustraÃ§Ã£o quando bem entender.
No documento principal, use o pacote \texttt{standalone}\index{standalone} e demais pacotes que arquivos inclusos podem precisar.
Para incluir a ilustraÃ§Ã£o feito pela classe \texttt{standalone}, basta usar \verb+\input+\index{input@\verb+\input+} ou similar.

A figura diagramado com a classe \texttt{standalone} Ã© como do Exemplo~\ref{ex:f:standalone:fig}.

%\begin{singlespacing}
%\begin{LTXexample}[pos=b,caption={ex12-12-fig.tex},label=ex:12-12:fig]
\begin{ltxlisting}[caption={ex-f-standalone-fig.tex},label=ex:f:standalone:fig]
\documentclass[12pt,a4paper]{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}
\draw[pattern=north east lines] (-1,-1) rectangle(1,1) (0,0) circle(1);
\end{tikzpicture}
\end{document}
\end{ltxlisting}
%\end{LTXexample}
%\end{singlespacing}

O documento que usa a figura, usa o pacote \texttt{standalone} e usa o \verb+\input+ para incluir o arquivo de figura, como no Exemplo~\ref{ex:f:standalone}.

\begin{singlespacing}
\begin{lstlisting}[caption={ex-f-standalone.tex},label=ex:f:standalone]
\documentclass[12pt,a4paper]{article}

\usepackage{standalone} % para incluir arquivos diagramado com standalone

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}

\usepackage{amsmath}
\usepackage{amssymb}

% pacotes usados pelo arquivo a ser incluido
\usepackage{tikz}
\usetikzlibrary{patterns}

\begin{document}
Para incluir o arquivo diagramado com classe \texttt{standalone}, basta usar o \verb+\input+.

\begin{figure}[hbp!]
\center
\input{ex-f-standalone-fig}
\caption{InclusÃ£o de figuras}
\end{figure}

\end{document}
\end{lstlisting}
\end{singlespacing}
%
%\begin{framed}
\begin{ltxlistingout}
Para incluir o arquivo diagramado com classe \texttt{standalone}, basta usar o \verb+\input+.
\begin{center}
\begin{tikzpicture}
\draw[pattern=north east lines] (-1,-1) rectangle(1,1);
\draw[fill=white] (0,0) circle(1);
\end{tikzpicture}

{Figura 1: InclusÃ£o de figuras}
\end{center}
\end{ltxlistingout}
%\end{framed}

\section{Dividindo o documento em vÃ¡rios arquivos}
Para dividir o documento em vÃ¡rios arquivos, poderÃ¡ usar o \verb+\include+, mas ele nÃ£o Ã© eficiente, pois os pedaÃ§os de documentos nÃ£o podem ser compilados separadamente.
O pacote \texttt{subfiles}\index{subfiles} resolve este problema.
O uso de \texttt{subfiles} Ã© similar ao do \texttt{standalone}, mas em vez de ignorar o \texttt{preamble} dos arquivos inclusos, os arquivos a serem incluÃ­dos usam o \texttt{preamble} do documento principal. 
Assim, como o \texttt{standalone}, o documento principal deve conter todos os pacotes e definiÃ§Ãµes que suas partes vÃ£o precisar, mas nÃ£o hÃ¡ necessidade de colocar tais pacotes e definiÃ§Ãµes no arquivo de partes.
A estrutura do documento principal com \texttt{subfiles} Ã© algo como do Exemplo~\ref{ex:f:subfiles:principal}.
\begin{singlespacing}
\begin{lstlisting}[caption={ex-f-subfiles-principal.tex},label=ex:f:subfiles:principal]
\documentclass[12pt,a4paper,oneside]{book}
\usepackage{subfiles} % para incluir partes do documento

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{amssymb,amsmath}
\usepackage{tikz}
\usetikzlibrary{patterns}
...
\begin{document}
...
\subfiles{ex-f-subfiles-prefacio}
\subfiles{ex-f-subfiles-capitulo1}
\subfiles{ex-f-subfiles-capitulo2}
\subfiles{ex-f-subfiles-capitulo3}
...
\end{document}
\end{lstlisting}
\end{singlespacing}
Exceto pelo uso do pacote \texttt{subfiles} e o comando \verb+\subfiles+\index{subfiles@\verb+\subfiles+} em vez do \verb+\include+, tem nada de especial.
Cada pedaÃ§o do documento tem a forma como do Exemplo~\ref{ex:f:subfiles:capitulo1}.
\begin{singlespacing}
\begin{lstlisting}[caption={ex-f-subfiles-capitulo1.tex},label=ex:f:subfiles:capitulo1]
\documentclass[ex-f-subfiles-principal]{subfiles}
\begin{document}
...
\end{document}
\end{lstlisting}
\end{singlespacing}

Note que a classe de documento Ã© \texttt{subfiles}\index{subfiles} e sua opÃ§Ã£o Ã© o nome do arquivo principal.
Como o \texttt{preamble} serÃ¡ obtido do documento principal, nÃ£o hÃ¡ \texttt{preambles} e jÃ¡ comeÃ§a a escrever o documento no ambiente \texttt{document} normalmente.

Com isso, podemos compilar partes do documento, assim como todo o documento.

%standalone e subfiles

\section{`'Todo'' (tarefas)}
Para inserir ``todo'' (tarefas a fazer) no documento La\TeX, existe alguns pacotes. Aqui, veremos somente o \texttt{todonotes}\index{todonotes}. O comando bÃ¡sico deste pacote Ã© o \verb+\todo{}+\index{todo@\verb+\todo+} que insere anotaÃ§Ã£o de tarefas na Ã¡rea lateral do documento, correspondente a posiÃ§Ã£o desejada. O comando \verb+\todo+ aceita opÃ§Ãµes adicionais. Por exemplo, \verb+\todo[inline]{}+ adiciona nota de tarefa dentro do documento, em destaque, em vez da Ã¡rea lateral. Para criar lista de tarefas, usa-se o comando \verb+\listoftodos+.
Veja o Exemplo~\ref{ex:f:todonotes}.

\begin{singlespacing}
\lstinputlisting[caption={ex-f-todonotes.tex},label=ex:f:todonotes]{latex-via-exemplos-todonotes}
\end{singlespacing}
%
Documento com as notas de tarefas Ã© como segue.
\begin{framed}
\center
% Para recortar, use opÃ§Ã£o trim={left bottom right top},clip
\includegraphics[page=1, width=0.7\linewidth, trim={{0.2\linewidth} {\linewidth} {0.1\linewidth} {0.20\linewidth}}, clip]{latex-via-exemplos-todonotes}
\end{framed}


% \clearpage
\clearpage\thispagestyle{empty}\cleardoublepage
%\phantomsection
%\addcontentsline{toc}{chapter}{Alguns ComentÃ¡rios Finais}
\chapter{Alguns Aplicativos Auxiliares para UsuÃ¡rio de \LaTeX}
Para melhor aproveitamento do \LaTeX, costumam usar diversos aplicativos auxiliares para melhorar o seu uso. Aqui, listaremos alguns desses aplicativos populares gratuitos.

\section{Editor para \LaTeX\index{editor para \LaTeX}}

\subsection*{TeXMaker/TeXStudio\index{editor para \LaTeX!TeXMaker/TeXStudio}}

site: \url{https://www.xm1math.net/texmaker/}

site: \url{https://www.texstudio.org/}

O \texttt{TeXMaker} Ã© um editor de cÃ³digo fonte do \LaTeX{} multiplataforma leve e eficiente. 
Ele apresenta painel de inserÃ§Ã£o de sÃ­mbolos matemÃ¡ticos e visualizador de PDF integrado. Apesar de nÃ£o vir com menu para chamar \texttt{biber} usado no Bib\LaTeX, pode ajustar a chamada de \BibTeX{} ou acrescentar no menu personalizado (menu ``usuÃ¡rio'').

O \texttt{TeXStudio}, por sua vez, Ã© um ``fork'' do \texttt{TeXMaker}, incorporando mais recursos. Isto torna um pouco mais pesado, mas apresenta a capacidade de compilar um trecho do cÃ³digo no tempo real, mostrando na janela de ediÃ§Ã£o.
Para isso, basta selecionar um trecho, e no menu aberto pelo botÃ£o direito, escolher ``Preview selection/parentheses''.


\subsection*{LyX\index{editor para \LaTeX!\LyX}}

site: \url{https://www.lyx.org/}

site: \url{https://sourceforge.net/projects/lyxwininstaller/}

O \LyX{} Ã© um editor com aparÃªncia similar a aplicativos Office (MS Office/Libre Office), mas que compila o documento em \LaTeX. Ele tambÃ©m importa/exporta documentos \LaTeX.

O instalador de \LyX{} para \texttt{MS Windows} pode encarregar de instalar o \texttt{MikTeX} bÃ¡sico, caso tenha conexÃ£o com a internet, mas tambÃ©m pode deixar o \texttt{MikTeX} prÃ©-instalado. Ele tambÃ©m instala automaticamente os pacotes adicionais.

No menu de ajuda, encontrarÃ¡ o tutorial e guia de usuÃ¡rio.
O \LyX{} foi desenvolvido para usuÃ¡rios de \LaTeX. Como o usuÃ¡rio de \LaTeX{} ganha desempenho significativo em relaÃ§Ã£o ao usuÃ¡rio comum, Ã© altamente recomendado que estude o \LaTeX.
Pra ativar o verificador ortogrÃ¡fico no tempo real, entre em ``tools-&gt;preferences'', e em
``[language settings]-&gt;[spell checker]'', selecione ``enchant'' ou similar para ``spell check engine'' e cheque o ``[ ]spell check continuouslly''.

\begin{remark}
O \texttt{Windows} costuma nÃ£o vir com visualizador de \texttt{PDF} instalados. Apesar de editores para \LaTeX{} costuma vir com visualizador de \texttt{PDF} integrados, Ã© bom ter um visualizador dedicado. Uma das opÃ§Ãµes Ã© instalar o \texttt{Sumatr PDF} (\url{https://www.sumatrapdfreader.org/}) que Ã© muito leve. Ele nÃ£o tem recursos de preenchimento de formulÃ¡rios ou acrescentar notas como o \texttt{Adobe Reader} (\url{https://get.adobe.com/br/reader/}), mas atende a maioria das necessidades.
\end{remark}

\section{Editor grÃ¡fico\index{editor grÃ¡fico}}
Editores grÃ¡ficos ajudam a elaboraÃ§Ã£o de ilustraÃ§Ãµes e similares.

\subsection*{InkScape\index{editor grÃ¡fico!InkScape}}

site: \url{http://www.inkscape.org/}

\texttt{InkScape} Ã© um editor grÃ¡fico vetorial para criar ilustraÃ§Ãµes no estilo do \texttt{Corel Draw} (comercial) ou \texttt{Adobe Illustrator} (comercial). 
Ele Ã© bem mais leve e fÃ¡cil de ser usado do que os seus concorrentes.
Pode ser usado para criar uma ilustraÃ§Ã£o nova, ou retocar o arquivo \texttt{pdf} jÃ¡ existente.

A versÃ£o atual permite instalar plugin para inserir fÃ³rmulas \LaTeX{} diretamente na figura. 
Note que nem todo efeito pode ser salva no \texttt{eps} e tambÃ©m no \texttt{pdf}.
Por isso, Ã© necessÃ¡rio checar o \texttt{eps} ou \texttt{pdf} quando criando.

O manual pode ser acessado pelo menu de ajuda, sem precisar ficar procurando na internet.

Quando salva como \texttt{PDF}, selecione ``usar tamanho do objeto exportado'' na opÃ§Ã£o ``tamanho da saÃ­da de pÃ¡gina''.
TambÃ©m ajuste o ``resoluÃ§Ã£o para renderizaÃ§Ã£o (dpi)'' para mÃ­nimo de 300 em ''[v] Efeitos de filtro de renderizaÃ§Ã£o''.
Se quer deixar o tamanho do papel jÃ¡ ajustado para tamanho da figura, selecione toda figura (&lt;ctrl&gt;A) e entre em "file-&gt;document propries".
No "custom size", clique em [fit page to selection].

Para inserir fÃ³rmulas diretamente na figura, instale o \texttt{textext} (\url{https://textext.github.io/textext/}).
%Veja o site \url{http://pav.iki.fi/software/textext/index.html} para detalhes.
%No caso de MS Windows, o instalador deste plugin abaixarÃ¡ seus dependentes, mas se quer instalar offline (sem a conexÃ£o da rede), "necessary library files from pyGTK" mencionado pelo site, deve estar na mesma pasta do instalador de textext.
%Para que \texttt{textext} funcione no MS Windows, Ã© necessÃ¡rio que \texttt{ghost script} e \texttt{pstoedit} estejam funcionando corretamente, alÃ©m do \texttt{MikTeX} (ou outro TeX com pdflatex).
%A fÃ³rmula Ã© inserido ou editada pelo "effects-&gt;tex text".
%NÃ£o confundir com "effects-&gt;render-&gt;latex formula" na qual nÃ£o permite reediÃ§Ã£o (apenas insere).
%No caso de inserir fÃ³rmulas, hÃ¡ diferenÃ§a em inserir direto na figura ou pelo pacote \texttt{psfrag} na figura \texttt{eps}. 
%A fÃ³rmula inserida diretamente na figura terÃ¡ tamanho diferente do texto, conforme ajusta o tamanho da figura.
%No caso de usar o \texttt{psfrag}, a fÃ³rmula Ã© inserida durante a compilaÃ§Ã£o do documento, sempre mantendo tamanho de letras coerente com o texto, independente do ajuste de tamanho da figura. Para usar \texttt{psfrag}, nÃ£o esqueÃ§a de tirar o check do "convert texts to path" na hora de salvar como \texttt{eps}.

Na versÃ£o atual, existe a opÃ§Ã£o de separar o texto para ser processado diretamente no \LaTeX. 
Para isso, basta escolher ``Omitir texto no \texttt{PDF} e criar um arquivo \LaTeX'' na opÃ§Ã£o de ``OrietnaÃ§Ã£o do teto''.
Assim, ele criarÃ¡ um arquivo tex para cada pdf. No documento do \LaTeX, insere o arquivo tex com o comando \verb+\input+. Com esta opÃ§Ã£o, o comando \LaTeX{} pode ser usado diretamente na figura que serÃ¡ processado quando gera o documento no \LaTeX.

\subsection*{Dia\index{editor grÃ¡fico!Dia}}

site: \url{http://projects.gnome.org/dia/}

Editor de diagramas, similar ao comercial \texttt{Microsoft Visio}.
Diagramas costumam usar peÃ§as prontas, assim como curvas que se quebram no meio, o que Ã© recomendÃ¡vel usar um editor prÃ³prio. O \texttt{Dia} Ã© feito especialmente para editar diagramas, mas nÃ£o hÃ¡ atualizaÃ§Ã£o recente.

Se for o caso de criar ilustraÃ§Ãµes, use o \texttt{InkScape}.

\subsection*{GIMP\index{editor grÃ¡fico!GIMP}}

site: \url{http://www.gimp.org/}

Ã‰ o editor de imagem como o \texttt{Adobe Photoshop} (comercial) ou \texttt{Corel Photo Paint} (comercial). O "GIMP Help" Ã© uma espÃ©cie de manual que precisa ser abaixado/instalado a parte devido ao seu tamanho.
Ainda nÃ£o hÃ¡ versÃ£o traduzida para portuguÃªs deste manual.

Se for apenas fazer pequeno retoque e converter formato da imagem (para \texttt{jpg} e \texttt{png}, por exemplo), poderÃ¡ usar o aplicativo mais leve.

\subsection*{LaTeX Draw\index{editor grÃ¡fico!LaTeX Draw}}

site: \url{http://latexdraw.sourceforge.net/}

Editor escrito em java, especializado para pacote \texttt{pstricks} do \LaTeX.
Ele permite abrir muitas figuras com \texttt{pstrick}, editado manualmente ou gerado pelo outro programa. 
Como vÃ¡rios programas tais como \texttt{gnuplot}, \texttt{geogebra}, \texttt{inkscape}, etc podem salvar no formato \LaTeX{} com \texttt{pstrick}, poderÃ¡ usar este editor para retoques.
Note que o ajuste de tamanho da figura deve ser feito no editor e nÃ£o no documento, para ter espessura da linha inalterada, mas se entender um pouco do \texttt{pstrick}, 
poderÃ¡ editar o cÃ³digo da figura exportada para deixar escalÃ¡vel dentro do documento (sem alterar a espessura).
Como \texttt{pstrick} Ã© um pacote desenvolvido para \texttt{dvi/ps}, precisarÃ¡ usar o pacote adicional \texttt{pstool} (nÃ£o Ã© pstools), \texttt{pst-pdf} ou similar, quanto pretende compilar diretamente para \texttt{PDF} atravÃ©s do PDF\LaTeX, \XeLaTeX{} ou Lua\LaTeX.
Uma maneira clÃ¡ssica de gerar \texttt{PDF} sem tais pacotes Ã© usar o LaTeX=&gt;dvips=&gt;ps2pdf.

\subsection*{FlowFramTk\index{editor grÃ¡fico!FlowFramTk}}

site: \url{http://www.dickimaw-books.com/apps/flowframtk/}

O \texttt{FlowFramTk}, anteriormente conhecido como \texttt{jpgf Draw} Ã© escrito em java e exporta figura no formato \LaTeX{} usando o pacote \texttt{pgf} (usado pelo pacote beamer).
O pacote \texttt{pgf} tem uma grande vantagem de poder ser compilado tanto para \texttt{dvi} como para \texttt{pdf} (por isso que o beamer normalmente compilado pelo pdflatex pode ser compilado com latex quando nÃ£o usa o recurso especÃ­fico do PDF). \texttt{FlowFramTk} armazena a figura no formato prÃ³prio e permite exportar como \texttt{pgf}, mas parece que nÃ£o tem recurso de importaÃ§Ã£o.
Como nÃ£o sei ajustar a escala da figura criado pelo pacote \texttt{pgf}, nÃ£o sei se permite alterar a escala dentro do documento sem comprometer a espessura das linhas.

Um dos recursos adicionais interessantes do \texttt{FlowFramTk} Ã© a capacidade de gerar modelo de poster e material publicitÃ¡rio usando o pacote consolidado \texttt{flowfram}. O pacote \texttt{flowfram} permite criar caixas de texto com rÃ³tulo e diagramar dentro dele de forma simples (parece ser um dos mais simples desta categoria).
No entanto, criar layout complexo Ã© um pouco trabalhoso.
O \texttt{FlowFramTk} permite desenhar o layout para usar com \texttt{flowfram}, o que simplifica o trabalho.

\subsection*{TikZit\index{editor grÃ¡fico!TikZit}}

site: \url{https://tikzit.github.io/}

Editor grÃ¡fico que exporta para o formato \texttt{tikz} (parte do pacote \texttt{pgf}).
Ele permite criar facilmente os diagramas em \texttt{tikz} atravÃ©s da interface grÃ¡fica.


\section{GrÃ¡fico cientÃ­fico\index{grÃ¡fico cientÃ­fico}}

\subsection*{Asymptote\index{grÃ¡fico cientÃ­fico!Asymptote}}

site: % \url{https://sourceforge.net/projects/asymptote/}
\url{https://asymptote.sourceforge.io/}


O \texttt{Asymptote} Ã© uma linguagem/interpretador grÃ¡fico 2D/3D inspitado em \texttt{MetaPost} que permite produzir grÃ¡ficos em \texttt{Post Script}, \texttt{PDF} e \texttt{SVG}.

\subsection*{Geogebra\index{grÃ¡fico cientÃ­fico!Geogebra}}

site: \url{http://www.geogebra.org/}

Ele Ã© um aplicativo de geometria dinÃ¢mica, mas permite incorporar grÃ¡ficos de funÃ§Ãµes. AlÃ©m de exportar para ser colocado na pÃ¡gina web, permite exportar para \texttt{eps/pdf/pstrick/tikz}. 
%Como o texto da figura em \texttt{eps} ficarÃ¡ desenhado, nÃ£o Ã© possÃ­vel usar o \texttt{psfrag}.
Para retocar texto/fÃ³rmulas, exporte no formato \LaTeX{} como \texttt{pstrick} ou \texttt{tikz}. 

\subsection*{gnuplot\index{grÃ¡fico cientÃ­fico!gnuplot}}

site: \url{http://www.gnuplot.info/}

Este aplicativo permite gerar grÃ¡fico de boa qualidade a partir do dado armazenado no arquivo texto, mas pode gerar grÃ¡fico a partir das expressÃµes tambÃ©m. 
PoderÃ¡ escolher diversos formatos de exportaÃ§Ã£o, dependendo do objetivo.
Como ele Ã© um interpretador, precisarÃ¡ aprender alguns comandos bÃ¡sicos para gerar grÃ¡fico de boa qualidade.

\subsection*{Maxima\index{grÃ¡fico cientÃ­fico!Maxima}}

site: \url{http://maxima.sourceforge.net/}

Ãlgebra computacional como \texttt{Maple} (comercial) e \texttt{Mathematica} (comercial), implementando a linguagem \texttt{MacSyma}.
Costuma ser usado com a interface grÃ¡fica \texttt{WxMaxima} (\url{http://wxmaxima-developers.github.io/wxmaxima/}) que permite efetuar diversas tarefas sem saber a linguagem, inclusive gerar grÃ¡ficos 2D e 3D das funÃ§Ãµes.
%Ele ainda nÃ£o suporta traÃ§ar as curvas de nÃ­veis ou superfÃ­cies de nÃ­vel.
No caso de \texttt{MS Windows}, o instalador do \texttt{Maxima} instala por padrÃ£o.
%Para o tutorial em portuguÃªs, veja a seÃ§Ã£o de maxima.

\subsection*{GNU R\index{grÃ¡fico cientÃ­fico!GNU R}}

site: \url{http://www.r-project.org/}

\texttt{GNU R} Ã© um aplicativo popular especial para estatÃ­stica e implementa a linguagem \texttt{R}, bem parecido com a linguagem \texttt{S}.
Ele produz Ã³timos grÃ¡ficos, mas requer conhecimento de um pouco da linguagem \texttt{R}.
Uma das interfaces grÃ¡ficas recomendados Ã© o \texttt{R Studio}, mas para quem quer usar com o menu como no \texttt{MiniTab} (comercial), poderÃ¡ instalar o \texttt{Deducer} (nÃ£o testado).

site do R Studio: \url{http://www.rstudio.org/}

site do Deducer: \url{http://www.deducer.org/}

\subsection*{GNU Octave e outros clones do MatLab\index{grÃ¡fico cientÃ­fico!GNU Octave}}

gnu octave: \url{https://octave.org/}

scilab: \url{http://www.scilab.org/}

% freemat: \url{http://freemat.sourceforge.net/}

Para quem entende um pouco da linguagem \texttt{MatLab}, o \texttt{GNU Octave} e \texttt{SciLab} podem ser usados para gerar grÃ¡ficos matemÃ¡ticos no formato vetorial.
O \texttt{GNU Octave} Ã© mais popular.
% O emergente \texttt{FreeMat} Ã© simples de instalar e usar, mas ainda perde dos concorrentes em termos de recursos e nÃ£o Ã© atualizado por longo perÃ­odo de tempo.

\subsection*{SciDAVis e outras imitaÃ§Ãµes do Microcal Origin\index{grÃ¡fico cientÃ­fico!SciDavis}}

SciDAVis: \url{https://github.com/SciDAVis/scidavis} % \url{http://scidavis.sourceforge.net/}

RLPlot: \url{http://rlplot.sourceforge.net/}

O \texttt{SciDAVis} Ã© programa multiplataforma para anÃ¡lise de dados e criaÃ§Ã£o de grÃ¡ficos como o popular \texttt{Microcal Origin} (comercial).
O grÃ¡fico Ã© de boa qualidade e permite exportar em diversos formatos, incluindo o formato vetorial \texttt{eps}.
O \texttt{RLPlot} Ã© mais simples, mas tem recurso de adicionar texto e linhas poligonais no grÃ¡fico gerado.

%Existe tambÃ©m o QtiPlot (gratuito para linux) que Ã© uma espÃ©cie de clone do Microcal Origin que permite atÃ© importar o arquivo do Microcal Origin 7.5, mas a versÃ£o para MS Windows Ã© comercial (ou a versÃ£o demo limitada).
%O FitYK (gratuito para linux) Ã© desenvolvimento especialmente para ajuste de curvas, mas versÃ£o para MS Windows Ã© comercial.
%

O aplicativo gratuito e multiplataforma \texttt{FitYK} (\url{http://fityk.nieto.pl/}) Ã© desenvolvimento especialmente para ajuste de curvas que Ã© interessante, apesar de nÃ£o ser clone de \texttt{Microcal Origin}.


\subsection*{LibreCAD\index{grÃ¡fico cientÃ­fico!LibreCAD}}

site: \url{http://librecad.org/}

LibreCAD Ã© un CAD 2D de cÃ³digo aberto e Ã© multiplataforma.

\subsection*{Outros}
Nem sempre os aplicativos matemÃ¡ticos tem a habilidade de exportar grÃ¡ficos vetoriais, como no caso de \texttt{MathMod} (sucessor do \texttt{k3dsurf}).
Isto ocorre devido a dificuldade ou impossibilidade de criar grÃ¡fico vetorial de alguns tipos especÃ­ficos de imagens matematicos obtidos. 
Neste caso, exporte a figura com resoluÃ§Ã£o de 600DPI quando tem os traÃ§os bem definidos (desenho tÃ©cnico) ou 300DPI no caso de traÃ§os estar menos definidos (como imagem no estilo de fotos), o que Ã© recomendado para impressÃ£o.
Se for ampliar dentro do documento, a escala da ampliaÃ§Ã£o deve ser considerada, exportando para ter o mÃ­nimo de DPI apÃ³s ampliaÃ§Ã£o.

\begin{itemize}
\item \texttt{MathMod}\index{grÃ¡fico cientÃ­fico!MathMod} (sucessor do \texttt{k3DSurf} para linux/win): Plotador de superfÃ­cies tanto a paramÃ©trica como implÃ­cita, usando interface grÃ¡fica amigÃ¡vel. 

Site: \url{http://sourceforge.net/projects/mathmod/}

\item \texttt{Fractint}\index{grÃ¡fico cientÃ­fico!FractInt} (multi plataforma): Um dos mais poderosos softers para plotar fractais. Por ser baseado em \texttt{DOS}, a interface grÃ¡fica nÃ£o Ã© amigÃ¡vel na versÃ£o estÃ¡vel. A versÃ£o de teste contÃ©m a implementaÃ§Ã£o para \texttt{Windows}.

Site: \url{http://www.fractint.org/}

\item \texttt{Graphvis}\index{grÃ¡fico cientÃ­fico!Graphvis} (multiplataforma). Especial para produzir grafos, usando a linguagen \texttt{dot}.

Site: \url{https://www.graphviz.org/}
    
\end{itemize}
    
\section{Alguns convertores\index{convertor}}    
    
\subsection*{Image Magick\index{convertor!Image Magick}}

site: \url{http://www.imagemagick.org/}

Se instalou o \LyX, jÃ¡ deve ter instalado.
Este convertor Ã© para usuÃ¡rio mais avanÃ§ado, Ãºtil para conversÃ£o em lotes.
Ele converte praticamente de qualquer formato.
O comando Ã© \texttt{convert}, mas usuÃ¡rio de \texttt{MS Windows} deve tomar cuidado 
pois a ferramenta do \texttt{MS Windows} para converter sistema de arquivo \texttt{FAT} para \texttt{NTFS} tambÃ©m se chama \texttt{convert}.
Assim, deverÃ¡ assegurar de que estÃ¡ chamando \texttt{convert} do \texttt{Image Magick}, como especificar o caminho.

No \texttt{Linux}, a opÃ§Ã£o de conversÃ£o para \texttt{EPS,PDF} pode vir desativados por padrÃ£o, o que requer ativaÃ§Ã£o manual.

Exemplo:

\texttt{convert img.jpg img.pdf}

converterÃ¡ no formato \texttt{pdf} e

\texttt{convert img.jpg eps2:img.eps}

CriarÃ¡ \texttt{eps} compactado.

% (se nÃ£o colocar o \texttt{eps2}, gerarÃ¡ \texttt{eps} grande por usar \texttt{PS} de nÃ­vel 1.

\subsection*{sam2p\index{convertor!sam2p}}

site: \url{https://github.com/pts/sam2p/releases}

Converte imagem bitmap para \texttt{eps} ou \texttt{pdf}.
Atualmente o \texttt{InkScape} pode ser usado para converter para \texttt{EPS/PDF},
mas pode ser Ãºtil para usuÃ¡rios avanÃ§ados.

\texttt{sam2p figura.jpg figura.pdf}

converterÃ¡ para \texttt{pdf}.

%Usando a opÃ§Ã£o correta no comando, poderÃ¡ gerar arquivos pequenos.
%Note que ele Ã© Ãºnico convertor conhecido atÃ© o momento que permite
%criar eps com compressÃ£o usando o postscript de nivel 1.
%Descompacte os arquivos abaixados e copie para local desejado.
%No caso de MS Windows, Ã© recomendÃ¡vel que coloque a pasta de sam2p no caminho 
%(variavel PATH do sistema) para facilitar a execussÃ£o. 
%Outra opÃ§Ã£o Ã© colocar na pasta do MikTeX (c:\textbackslash arquivos de programas\textbackslash miktex 2.7\textbackslash miktex\textbackslash bin) que jÃ¡ deve estar no PATH.
%%A versÃ£o com GUI nÃ£o era usÃ¡vel em 2008, mas pode checar o site dele de vez em quando para verificar se saiu a versÃ£o usÃ¡vel.
%
%Exemplo
%
%sam2p -c:pdf figura.jpg figura.pdf
%
%converte para pdf e
%
%sam2p -c:jpeg figura.jpg figura.eps
%
%converte jpeg para eps, mantendo compressÃ£o jpeg.

%\subsection*{jpeg2ps}
%
%site: \url{http://gnuwin32.sourceforge.net/packages/jpeg2ps.htm}
%
%Convertor clÃ¡ssico de jpeg para eps de nÃ­vel 2 ou 3 (com compressÃ£o).
%Eu aconselho usar o Imagemagick ou sam2p.

\subsection*{TeX4ht\index{convertor!TeX4ht}, LaTeXML\index{convertor!LaTeXML} e lwarp\index{convertor!lwarp}}

site: \url{https://ctan.org/pkg/tex4ht}, \url{https://math.nist.gov/~BMiller/LaTeXML/}, \url{https://ctan.org/pkg/lwarp}.

\texttt{TeX4ht} Ã© um convertor de \TeX/\LaTeX para \texttt{HTML/XHTML}, similar a \texttt{Hevea}, \texttt{TTH}, e \texttt{LaTeX2HTML}, que roda em diversas plataformas.
Note que todos $4$ programas clÃ¡ssicos sÃ£o de multiplataformas e cada um tem vantagens e desvantagens. 
\texttt{Hevea} e \texttt{TTH}, nÃ£o apresenta suporte decente Ã&nbsp;s fÃ³rmulas matemÃ¡ticas. 
O \texttt{Tex4ht} Ã© implementado como pacote para \TeX{} e o \texttt{LaTeX2HTML} Ã© convetor escrito em \texttt{perl}. Ambos conseguem converter eficientemente os documentos com equaÃ§Ãµes, permitindo usar a imagem (\texttt{GIF}, \texttt{PNG} ou \texttt{JPEG}) ou \texttt{MathML} para representar equaÃ§Ãµes.
AlÃ©m disso, \texttt{TeX4ht} e \texttt{LaTeX2HTML} sÃ£o de cÃ³digo aberto. 
Por estas e outras razÃµes, eles sÃ£o os mais usados.
O \texttt{HTML} gerado por \texttt{Tex4ht} Ã© mais parecido com o documento original e nÃ£o consegue dividir documentos em pedaÃ§os (o que Ã© interessante para \texttt{HTML} grande, para acelerar o acesso na internet).
O \texttt{LaTeX2HTML} produz documentos de acordo com a filosofia do \texttt{HTML} e consequentemente, nÃ£o produz documento ``fiel'' ao original. 
Ele particiona documentos grandes em pedaÃ§os menores e cria recurso de navegaÃ§Ã£o, mas isto pode ser desativado, se desejar.
O \texttt{HTML} gerado por \texttt{LaTeX2HTML} acomoda bem em maioria dos navegadores, o que tornou a escolha preferida dos desenvolvedores da \texttt{Web}, enquanto que \texttt{TeX4ht} tornou a preferÃªncia para converter documentos \LaTeX{} em outros formatos.
Note que o \texttt{Tex4ht} jÃ¡ vem com muitas distribuiÃ§Ãµes \LaTeX, incluindo o \texttt{MikTeX} para \texttt{MS Windows}.
AlÃ©m disso, ele permite converter para formato do \texttt{Libre Office}, sendo que \texttt{TeXMaker} e \LyX{} usam ele para gerar arquivo de \texttt{Libre Office}.
%No caso de Windows, o comando htlatex.bat converte usando imagem na equaÃ§Ã£o e htmlatex.bat usa MathML para fÃ³rmula. O oolatex.bat converte para formato de Libre Office.

Um problema do \texttt{TeX4ht} Ã© usar o formato intermediÃ¡rio em \texttt{DVI}, o que dificulta o uso de imagens em \texttt{pdf/jpg/png} por precisar ser convertidos em \texttt{eps}.
A soluÃ§Ã£o para isso Ã© usar conversores modernos tais como \texttt{LaTeXML} e \texttt{lwarp} que apresentam filosofia similar ao \texttt{TeX4ht}, de produzir documentos parecidos com a saÃ­da do \LaTeX.
O \texttt{LaTeXML} Ã© implementado em \texttt{perl} e usa o \texttt{PDF} e \texttt{XML} como o arquivo intermediÃ¡rio, eliminando o problema do \texttt{TeX4ht}. Ele gera tanto o \texttt{HTML} quanto o \texttt{epub} com boa qualidade, permitindo usar \texttt{MathML} para equaÃ§Ãµes. A conversÃ£o Ã© feito pelo comando \texttt{latexmlc}.

O \texttt{lwarp} Ã© conjunto de pacotes de \LaTeX{} que converte \LaTeX{} para \texttt{HTML5}.
As equaÃ§Ãµes e figuras ficarÃ£o no formato \texttt{SVG} por padrÃ£o, mas pode usar \texttt{MathJaX} para equaÃ§Ãµes. Ele nÃ£o suporta \texttt{MathML} para equaÃ§Ãµes ainda (2024). O \texttt{script} auxiliar \texttt{lwarpmk} Ã© usado na conversÃ£o automÃ¡tica das equaÃ§Ãµes e imagens para \texttt{SVG}.

Note que muitos editores de escritÃ³rio como \texttt{MS Office} e \texttt{LIbre Office} permite importar arquivos \texttt{HTML}.

%\textbf{ObservaÃ§Ã£o:} AcentuaÃ§Ã£o dentro do ambiente tabular (\a{'}, \a{~}, etc) nÃ£o serÃ¡ reconhecido no \texttt{TeX4ht}. Neste caso, use a acentuaÃ§Ã£o direta.

%\begin{enumerate}[{ObservaÃ§Ã£o}~1]
%\item Ã‰ possÃ­vel usar a imagem no formato JPEG ou PNG em vez de GIF. Por exemplo, o comando
%
%\verb+htlatex foo "html,png"+
%
%gera o codigo HTML a partir do arquivo foo.tex, com imagem PNG. 
%O segundo parÃ¢metro que Ã© colocado entre aspas, Ã© passado como opÃ§Ã£o do pacote \texttt{tex4ht.sty} que Ã© lido automaticamente. 
%Outros arquivos de lotes trabalham de forma anÃ¡loga. 
%Para saber sobre opÃ§Ãµes no tex4ht.sty, veja o manual .
%
%\item Durante a conversÃ£o, mesmo especificando o modo de MathML, algumas fÃ³rumulas podem ser convertidos na imagem, pois nem toda fÃ³rmula do LaTeX apresenta correspondÃªnte no MathML.

%\item A interface grÃ¡fica encontra-se em \url{http://www.mayer.dial.pipex.com/tex.htm}. 
%Ele pedia o  htrun.exe para todar o TeX4ht do MikTex, que nÃ£o existia, mas nÃ£o sei se isso jÃ¡ foi resolvido.

%\item AcentuaÃ§Ã£o dentro do ambiente tabular (\a{'}, \a{~}, etc) nÃ£o serÃ¡ reconhecido. Neste caso, use a acentuaÃ§Ã£o direta.
%\end{enumerate}

%\subsection*{RTF2LaTeX2e}
%
%Site: h\url{ttp://sourceforge.net/projects/rtf2latex2e/}
%
%%(cÃ³pia no CTAN: https://www.ctan.org/pkg/rtf2latex2e).
%RTF2LaTeX2e Ã© um aplicativo gratuito multiplataforma que converte RTF (Rich Text Format) exportÃ¡vel por MS Word para LaTeX2e e suporta equaÃ§Ãµes do MS Equations. 
%Este Ã© um dos melhores convertores livres para documento de MS Word para LaTeX quando tem equaÃ§Ãµes. Para exportar do Libre Office, basta instalar o plugin writer2latex caso ainda nÃ£o tenha.
%Abaixe o arquivo e descompacte numa pasta apropriada tal como
%
%\verb+c:\arquivos de programas\rtf2latex2e+
%
%Para converter documento do MS Word, salve no formato RTF usando "arguivo-&gt;salvar como". 
%Suponhe que o arquivo foi salvo como "test.rtf" na pasta ``\verb+c:\temp+''
%Agora, abra o prompt de comando (DOS prompt) e mude para pasta onde se encontra o arquivo RTF.
%
%\verb+c:\desktop&gt;cd\temp+
%
%Execute o comando.
%
%\verb+C:\temp&gt;"arquivos de programas\rtf2latex2e\rtf2latex2e.exe" test.rtf+
%
%e o arquivo test.tex serÃ¡ criado.
%Note que maioria das imagens incluidas serÃ£o manuseadas corretamente, mas algumas figuras especiais tal commo do Microsoft Draw pode ser ignorados.
%A configuraÃ§Ã£o padrÃ£o Ã© ignorar as cores, mas isto pode ser modificado, editando o arquivo ''r2l-pref'' em ``c:\textbackslash arquivos de programas\textbackslash rtf2latex\textbackslash pref''. O ``ignoreColor=true'' e o ``ignorecolor=false'' desativa/ativa o uso de cor de texto durante a conversÃ£o.
%
%\subsection*{LaTeX2RTF}
%
%site: \url{http://sourceforge.net/projects/latex2rtf/}
%
%%(cÃ³pia do CTAN: https://www.ctan.org/pkg/latex2rtf)
%
%LaTeX2RTF Ã© um aplicatibvo gratuÃ­to multiplataforma que converte LaTeX para RTF (Rich Text Format) importÃ¡vel pelo MS Word e suporta equaÃ§Ãµes usando ``EQ field'' (nÃ£o o Equation Object) que Ã© reconhecido pelo MS Equations. 
%Para Libre Office, use o ooolatex incluso em TeX4ht que faz parte do MikTeX ou W32TeX. 
%Lembre-se que, apesar de muitos elementos tais como equaÃ§Ãµes, tabelas, figuras etc serem convertidos para RTF, nem tudo do LaTeX apresenta equivalÃªncia no MS Word. 
%Para instalar, abaixe o arquivo e descompacte para a pasta desejada. 
%Vamos supor que ele foi colocado no
%
%\verb+c:\arquivos de programas\l2r+
%
%Note que o nome do executÃ¡vel Ã© latex2tr.exe, mas e conveniente executar pelo arquivo de lote.
%Edite o l2r.bat e mude a linha
%
%\verb+C:\l2r\latex2rt -P C:\l2r\cfg %1 %2 %3 %4 %5 %6 %7 %8 %9+
%
%para
%
%\verb+"C:\arquivos de programas\l2r\latex2rt.exe"  -P "C:\arquivos de programas\l2r\cfg" %1 %2 %3 %4 %5 %6 %7 %8 %9+
%
%Agora edite o l2rsem.bat e mude a linha
%
%\verb+C:\l2r\latex2rt -S -P C:\l2r\cfg %1 %2 %3 %4 %5 %6 %7 %8 %9+
%
%para
%
%\verb+"C:\arquivos de programas\l2r\latex2rt.exe"  -S -P "C:\arquivos de programas\l2r\cfg" %1 %2 %3 %4 %5 %6 %7 %8 %9+
%
%O arquivo l2r.bat servirÃ¡ para converter no RTF estilo americano (campo de dados separado pela vÃ­rgula) e l2rsem.bat (que tem -S a mais no parÃ¡metro) servirÃ¡ para converter no RTF estilo alemÃ£o (campo separado pelo ponto e virgula). No caso de portugues, deverÃ¡ usar o l2rsem.bat para que nÃ£o ocorra problemas com equaÃ§Ãµes.
%Para que conversÃ£o de imagens funcione bem, ou que equaÃ§Ãµes sejam incluidas como BMP, deverÃ¡ instalar o GhostView/GhostScript e ImageMagick e ajustar seus o caminhos em l2rprep.bat.
%
%Para usar, basta compilar o arquivo TeX usando LaTeX, BibTeX, etc normalmente para que arquivos auxiliares sejam criados e referencias cruzadas resolvidos. ApÃ³s isto, execute o arquivo de lote desejado (seguido de nome do arquivo tex sem extensÃ£o) para efetuar conversÃ£o.o
%Abra o prompt de comando de se caso precisar converter figuras ou gerar eauaÃ§Ãµes em BMP, execute o l2rprep.bat primeiro.
%
%\subsection*{WP2LaTeX}
%
%Site: \url{http://sourceforge.net/projects/wp2latex/}
%
%Word Perfect para LaTeX que suporta tabelas e equaÃ§Ãµes.

\subsection*{Writer2LaTeX\index{convertor!Writer2LaTeX}}

site: \url{http://writer2latex.sourceforge.net/}

Convertor do editor de texto do \texttt{Open Office/Libre Office} para \texttt{LaTeX/XHTML+MathML}.
Ele pode ser usado como \texttt{plugin} ou pelo comando de linha.
Dependendo da instalaÃ§Ã£o do \texttt{Libre Office}, jÃ¡ vem instalado.

\subsection*{Excel2LaTeX\index{convertor!Excel2LaTeX}}

site: \url{https://www.ctan.org/pkg/excel2latex}

\texttt{Excel2LaTeX} Ã© um macro para \texttt{MS Excel}, para converter planilha do \texttt{MS Excel} para tabela do \LaTeX. Maioria das formataÃ§Ãµes tais como espacificaÃ§Ã£o das fontes (negrito, itÃ¡lico, etc), bordas, celula mescrada, etc sÃ£o mantidas. Para instalar, copie o arquivo \texttt{excel2latex.xla} para pasta do \texttt{MS Office} e dÃª um double click sobre ele. O \texttt{MS Excel} abre o arquivo e perguntarÃ¡ se vai executar o "macro". Responda "sim" e a instalaÃ§Ã£o estarÃ¡ completa.
No \texttt{MS Excel}, selecione a regiÃ£o desejada da tabela e clique em ``convert table to LaTeX'' (ou ``ferramentas-&gt;convert table to LaTeX''). 
O resultado pode ser copiado para ``clipboard'' ou salvo no arquivo. 
%Para versÃ£o em japonÃªs, veja o http://plaza19.mbn.or.jp/~Butcher_Bird/Mac/Excel.html.

\subsection*{Calc2LaTeX\index{convertor!Calc2LaTeX}}

site: \url{http://calc2latex.sourceforge.net/}

Macro para \texttt{Open Calc} (do \texttt{Open Office}) para gerar tabelas de \LaTeX{} a partir da planilha.
NÃ£o hÃ¡ atualizaÃ§Ã£o recente.

\subsection*{Pandoc\index{convertor!Pandoc}}

site: \url{https://pandoc.org/}

O \texttt{Pandoc} Ã© um convertor de formato de documentos que suportam diversos formatos. Entre eles, tem a conversÃ£o de arquivos \texttt{MarkDown} para \LaTeX. Se nÃ£o quer usar aplicativos do comando de linha, poderÃ¡ usar do \texttt{GhostWriter} (\url{https://ghostwriter.kde.org/}) que Ã© um editor de \texttt{MarkDown}, capaz de visualizar o resultado automaticamente em paralelo, assim como efetuar conversÃ£o pelo menu.
O \texttt{MarkDown} Ã© um formato de arquivo texto que pode ser lido diretamente, mas que tambÃ©m pode ser convertidos em \texttt{HTML} ou similar de forma rÃ¡pida e simples. Este formato Ã© popular no arquivo ``readme'' usado para descriÃ§Ã£o do programa ou similar, blogs, etc, alÃ©m de elaboraÃ§Ã£o de documentos simples (o \texttt{Pandoc} suporta fÃ³rmulas matemÃ¡ticas no modo \TeX).

\section{Outras ferramentas\index{ferramentas}}

\subsection*{jabref\index{ferramentas!jabref}}

site: \url{http://jabref.sourceforge.net/}

Se usar o \BibTeX, Ã© recomendÃ¡vel que use este editor para editar arquivo ".bib".
Muitos usuÃ¡rios de \LaTeX{} deixam de usar o \BibTeX{} devido ao chatice de editar o arquivo do \BibTeX{} que usa o sintaxe diferente do \LaTeX, mas com o \texttt{jabref}, as coisas mudam.

Ele tambÃ©m suporta o Bib\LaTeX{} (para isso, deverÃ¡ usar o modo Bib\LaTeX).
TambÃ©m Ã© aconselhÃ¡vel usar a codificaÃ§Ã£o \texttt{utf-8} quando usa o modo Bib\LaTeX{} para evitar problemas com caracteres acentuados.


\subsection*{jpdftweak\index{ferramentas!jpdftweak}}

site: \url{http://jpdftweak.sourceforge.net/}

Esta ferramenta Ã© importante para ajustes finais do documento \texttt{PDF}. Permite dividir ou juntar PDF, trocar ordem das pÃ¡ginas, alterar o tamanho de papel, ajustar o tamanho  e posiÃ§Ã£o do corpo do texto, colocar vÃ¡rias pÃ¡ginas em uma, etc. O domÃ­nio do \texttt{jpdftweak} Ã© Ãºtil para quem precisa manipular \texttt{PDF} pronta, como preparar para ediÃ§Ã£o.
Para elaborar poster, poderÃ¡ diagramar no papel de tamanho 1/4 (1/2 de escala em cada dimensÃ£o) com letra 12pt e ao finalizar, poderÃ¡ usar o \texttt{jpdfTweak} para ampliar no tamanho normal. Com o fator de ampliaÃ§Ã£o 2x, a letra ficarÃ¡ com 24pt, apropriado para posters. Com isso, poderÃ¡ criar posters sem precisar de pacote ou truque especial.
Para quem quer um aplicativo de comando de linha para processamento em lotes, o \texttt{Multvalent} (\url{https://multivalent.sourceforge.net/}) pode ser interessante, mas ele nÃ£o estÃ¡ sendo atualizado por muito tempo. Assim, poderÃ¡ optar pelo \texttt{PSPDFUtils} (\url{https://github.com/rrthomas/psutils}) e/ou \texttt{pdfjam} (\url{https://github.com/pdfjam/pdfjam}). Para adicionar/remover senhas ou similares, o \texttt{PDFTk} (\url{https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/} -- GUI e linha de comando) e \texttt{qpdf} (\url{https://github.com/qpdf/qpdf} -- comando de linha) podem ser usados.
%Note que \texttt{Multivalent} (\url{https://multivalent.sourceforge.net/}) Ãºtil para processamento de \texttt{PDF} pelo comando de linha nÃ£o Ã© mantido por longo perÃ­odo de tempo.
%Ã© um visualizador para HTML, DVI, PDF, etc e o processamento de PDF serÃ¡ feito pelo comando de linha em vez de GUI, o que fez perder o espaÃ§o para \texttt{jPDFTweak} que apareceu mais tarde.
Para recorte rÃ¡pido do arquivo \texttt{PDF}, use o \texttt{pdfarranger/PDFSAM} comentado a seguir.

\subsection*{pdfarranger (linux, windows e mac OS)\index{ferramentas!pdfarranger}}

site: \url{https://github.com/jeromerobert/pdfarranger}

Ã‰ um ``fork'' do \texttt{pdfshuffler} (\url{ttp://sourceforge.net/projects/pdfshuffler/}) que era somente para \texttt{linux}. Usado para manuseio dos arquivos em \texttt{PDF}. Usando interface amigÃ¡vel, poderÃ¡ concatenar arquivos, eliminar pÃ¡ginas, reordenar pÃ¡ginas, rotacionar, etc. NÃ£o Ã© potente como o \texttt{jPDFTWeak}, mas para manuseio simples, ele Ã© prÃ¡tico. Caso nÃ£o tiver disponÃ­vel na sua plataforma, existe o aplicativo implementado em \texttt{java} \texttt{PDFSAM} (\url{http://www.pdfsam.org/}).

\subsection*{xournal++ e jaurnal\index{ferramentas!xournal++/jaurnal}}
sites:

xournal++: \url{https://github.com/xournalpp/xournalpp}

jaurnal: \url{http://www.dklevine.com/general/software/tc1000/jarnal.htm}

O \texttt{xournal++} Ã© uma reimplementaÃ§Ã£o do \texttt|{xournal} (\url{http://xournal.sourceforge.net/}) que Ã© um caderno eletrÃ´nico, mas pode abrir um arquivo \texttt{PDF}, escrever sobre ele e exportar como um novo arquivo \texttt{PDF}. Este recurso Ã© interessante para corrigir trabalhos. Se tiver uma mesa digitalizadora, poderÃ¡ efetuar correÃ§Ã£o tÃ£o rÃ¡pida como corrigir sobre texto impresso. Ele tambÃ©m Ã© usado como losa digital para aulas \texttt{online} (Para losa digital, o \texttt{Open Board} disponÃ­vel em \url{https://openboard.ch/index.en.html} tambÃ©m Ã© interessante).

O \texttt{jaurnal} Ã© similar ao \texttt{xournal}, mas Ã© implementado em \texttt{java}. A \texttt{xournal++} Ã© mais recomendado.

% Open Board
% https://openboard.ch/index.en.html
% tem funcionalidade similar como losa eletronica, mas parece para escrever sobre PDF.

\subsection*{Scribus\index{ferramentas!scribus}}

site: \url{http://www.scribus.net/}

O \texttt{Scribus} Ã© um aplicativo para elaborar revistas, jornais, posters, etc como o \texttt{Microsoft Publisher} (comercial). 
O \texttt{Scribus} permite inserir ``caixa de \LaTeX'', o que facilita o desenvolvimento de material cientÃ­fico. Apesar do usuÃ¡rio de \LaTeX{} costumam querer diagramar o poster de apresentaÃ§Ã£o no \LaTeX, se precisar produzir poster, folhetos, etc com frequÃªncia, Ã© aconselhÃ¡vel aprender a usar o \texttt{Scribus}.

\subsection*{Alguns serviÃ§os web\index{ferramentas!serviÃ§os Web}}

\url{http://detexify.kirelabs.org/classify.html} reconhecimento de sÃ­mbolos \LaTeX{} a partir do traÃ§o manual. Para versÃ£o offline para ser instalado no computador, veja \url{https://github.com/zoeyfyi/TeX-Match}.

\url{https://huggingface.co/spaces/breezedeus/Pix2Text-Demo}
% \url{https://p2t.breezedeus.com/} 
Converte imagem em texto com fÃ³rmula \LaTeX. Ã‰ serviÃ§o online baseado no aplicativo de comando de linha \texttt{pix2tex} disponÃ­vel em \url{https://github.com/breezedeus/pix2text} que Ã© de cÃ³digo aberto.% que permite converter texto com fÃ³rmula de \LaTeX.
% Para idiomas que nÃ£o sejam inglÃªs ou chines, use o site \url{https://huggingface.co/spaces/breezedeus/Pix2Text-Demo} (Ã© mais lento). 
% Para caso de fÃ³rmulas escrito a mÃ£o, veja o aplicativo \url{https://github.com/vertexi/ImMathWriter}. 
 Note que existem diversos serviÃ§os online deste tipo, mas muitos nÃ£o sÃ£o baseados nos aplicativos de cÃ³digo aberto, ou nem gratuitos. Um desse serviÃ§os gratuito Ãºtil Ã© \url{https://webdemo.myscript.com/views/math/index.html} que reconhece a fÃ³rmula escrito a mÃ£o e cria cÃ³digo \LaTeX{} e MathML.

\url{http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi} ServiÃ§o de conversÃ£o do formato de imagens.

\url{https://pt.overleaf.com/}
ServiÃ§o de web com ambiente \LaTeX. Para uso pessoal Ã© gratuito. Outro serviÃ§o similar Ã© \url{https://papeeria.com/} e \url{https://www.authorea.com/}. Em geral, o plano gratuito limita o tempo e/ou nÃºmero de compilaÃ§Ã£o, ou similar. Portanto, o ideal Ã© ter o \TeX{} instalado no seu prÃ³prio computador.

% overleaf like: LaTeX and markdown (use dropbox and like)
% https://papeeria.com/

\url{https://www.hipdf.com/}, \url{https://www.sejda.com/pdf-editor}, \url{https://www.pdfescape.com/}
Alguns dos diversos serviÃ§os gratuitos para editar PDF online.

Note que o central de repositÃ³rio do (La)\TeX{} Ã© o CTAN. Portanto, se estiver procurando algo, pode dar olhada primeiro no CTAN (\url{https://www.ctan.org/}). 

%\url{https://www.tablesgenerator.com}
%Gerador de \texttt{layout} das tabelas em \LaTeX.
% Parcialment gratuito? o que quer dizer "Seus 10 primieros clientes gratuitos"?

% \clearpage
\clearpage\thispagestyle{empty}\cleardoublepage
\phantomsection
\addcontentsline{toc}{chapter}{Alguns ComentÃ¡rios Finais}
\chapter*{Alguns ComentÃ¡rios Finais}

Neste texto estÃ¡ direcionado ao usuÃ¡rio de \LaTeX, mas nÃ£o para os desenvolvedores.
Assim, nÃ£o foi incluÃ­do detalhes sobre caixas e similares.
Para quem pretende criar comandos e ambientes complexos ou desenvolver pacotes, o conhecimento sobre caixas Ã© importante. 
Para este assunto, recomendo a leitura de outro material tais como \cite{book:oeticker:2018} e \cite{book:wikibook:latex}.

Neste texto, foram apresentados alguns dos pacotes e classes mais utilizados, mas vÃ¡rios pacotes e classes populares foram omitidos.

Por exemplo, quem trabalha com fÃ³rmulas complexas, Ã© recomendÃ¡vel que considere o uso do pacote \texttt{mathtools}\index{mathtools} que resolve algumas deficiÃªncias do pacote \texttt{amsmath}.
Para criar ficha catalogrÃ¡fica, Ã© interessante colocar o nÃºmero total de pÃ¡ginas usando o pacote \texttt{lastpage}\index{lastpage}.
Para inserir uma ou mais pÃ¡ginas diretamente no documento em vez de inserir como figuras, usa-se o pacote \texttt{pdfpages}\index{pdfpages}.
Quem trabalha com tabelas, pode precisar do pacote \texttt{multirow}\index{multirow} para mesclar linhas, \texttt{diagbox}\index{diagbox} para dividir cÃ©lulas em diagonal, etc que nÃ£o foram citados neste documento.
%  tais como \texttt{booktab}\index{booktab}, \texttt{tabulararray}\index{tabulararray}, etc
%Para elaborar livros: koma script, memoir, tufte-latex, bookest, willowtreebook, octavo, ElegantBook (templates), ycbook, nostarch, simplivre (multilingue), beaulivre (multilingue, colorido)
Ainda existem pacotes especÃ­ficos para xadrez (xskak), diagrama quÃ­mica (chemfig), mÃºsica (abc, musixtex), etc, alÃ©m dos pacotes destinados para cada tipo de ajustes de documentos.

%A lista dos pacotes interessantes sÃ£o longas.

Dentre as classes omitidas aqui, as classes da famÃ­lia \texttt{koma script}\index{koma script} e a classe \texttt{memoir}\index{memoir} sÃ£o um dos mais importantes.
Estas classes implementam vÃ¡rias funcionalidades adicionais em relaÃ§Ã£o as classes bÃ¡sicas.

Como existem pacotes especÃ­ficos para cada assunto, Ã© impossÃ­vel conhecer todos eles. 
Mas, pelo menos podemos tentar conhecer os pacotes e classes populares existentes para Ã¡rea de atuaÃ§Ã£o de cada um de nÃ³s.

%A quantidade de pacotes no \LaTeX{} Ã© muito extensa.
%Assim, se precisar efetuar alguns ajustes refinados ou precisar de comandos ou ambientes complexos, vale a pena pesquisar se tem pacotes especÃ­ficos para o que estÃ¡ pretendendo.

%AlÃ©m dos pacotes, tambÃ©m existem vÃ¡rias classes de documentos adicionais.

% \clearpage
\clearpage\thispagestyle{empty}\cleardoublepage
\backmatter
% ReferÃªncias BibliogrÃ¡ficas
%\nocite{*} 
\phantomsection
\bibliography{latex-via-exemplos}
% \bibliographystyle{amsalpha}
\bibliographystyle{alphaurl}

\clearpage\thispagestyle{empty}\cleardoublepage
\phantomsection
\begin{singlespacing}
\printindex
\end{singlespacing}


\end{document}
</pre></body></html>