%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Contents: Typesetting Part of LaTeX2e Introduction
% $Id: typeset.tex 9927 2011-05-20 15:19:46Z ambs $
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{Escrever Texto}

\begin{intro}
  Depois de ler o capítulo anterior, deve saber as partes básicas que
  constituem um documento \LaTeXe. Este capítulo preencherá o resto da
  estrutura que precisa de conhecer para produzir material autêntico.
\end{intro}

\section{A Estrutura de um Texto}
\secby{Hanspeter Schmid}{hanspi@schmid-werren.ch}

Ao escrever um texto, o principal ponto (alguma literatura
DAAC\footnote{Different At All Cost (diferente a todo o custo), uma
tradução da UVA Suíça-Alemã (Um's Verrecken Anders).} moderna
excluída), é apresentar ideias, informação ou conhecimento ao
leitor. Este irá compreender melhor o texto se estas ideias estiverem
bem estruturadas, e irá ver e sentir melhor esta estrutura se a forma
tipográfica reflectir a estrutura lógica e semântica do conteúdo.

O \LaTeX{} é diferente de todos os outros sistemas de escrita apenas
por ter de indicar a estrutura lógica e semântica do texto. Utilizando
esta estrutura, deriva a forma tipográfica do texto de acordo com as
``regras'' dadas na classe do documento e nos vários ficheiros de
estilo.

A unidade mais importante de texto em \LaTeX{} (e em tipografia) é o
\wi{parágrafo}. Chamamos-lhe ``unidade de texto'' porque um parágrafo
é a forma tipográfica que deve reflectir um pensamento coerente, ou
uma ideia. Nas secções seguintes aprenderá como forçar quebras de
linha, por exemplo com \texttt{\bs\bs}, e quebras de parágrafo
deixando uma linha em branco no código. Se começa a descrever um novo
pensamento, deve iniciar um novo parágrafo; se não, apenas mudanças de
linha devem ser utilizadas. Em dúvida se deve ou não realizar quebras
de parágrafos, pense no seu texto como um armário de ideias e
pensamentos. Se tem uma quebra de parágrafo, mas o pensamento anterior
continua, a quebra deve ser removida. Se alguma linha de pensamento
completamente nova ocorre no mesmo parágrafo, então a linha deve ser
quebrada.

A maior parte das pessoas esquece completamente a importância de
quebras de parágrafos bem colocadas. Muitas pessoas nem sequer saber o
significado duma quebra de parágrafo, e, especialmente em \LaTeX,
introduzem parágrafos sem saber. Este erro é especialmente fácil de
fazer se forem utilizadas equações no texto. Veja os exemplos
seguintes, e descubra porque algumas linhas em branco (quebras de
parágrafos) são utilizados antes e depois da equação, e outras vezes
não. (Se ainda não compreender todos os comandos o suficiente não se
preocupe, continue a ler este e os capítulos seguintes, e depois volte
a ler esta secção.)

\begin{code}
\begin{verbatim}
% Example 1
\ldots quando Einstein introduziu a sua fórmula
\begin{equation} 
  e = m \cdot c^2 \; , 
\end{equation} 
que é ao mesmo tempo a mais conhecida e a menos
compreendida fórmula física.


% Example 2
\ldots de onde segue a lei actual de Kirchhoff:
\begin{equation} 
  \sum_{k=1}^{n} I_k = 0 \; .
\end{equation} 

A lei de voltagem de Kirchhoff pode ser deduzida\ldots


% Example 3
\ldots que tem várias vantagens.

\begin{equation} 
  I_D = I_F - I_R
\end{equation} 
é o centro de um modelo diferente de transistor.\ldots
\end{verbatim}
\end{code} 

A unidade mais pequena de texto seguinte é a frase. Em textos
ingleses\footnote{NT: e também em portugueses}, existe um maior espaço
depois de um ponto que acaba uma frase do que um que acaba uma
abreviatura. O \LaTeX{} tenta adivinhar qual dos casos deve utilizar.
Se o \LaTeX{} errar, deve dizer-lhe o que quer. Como fazer isto é
explicado mais tarde neste capítulo.

A estruturação do texto estende-se até às partes de uma frase. Quase
todas as línguas têm regras de pontuação muito complicadas, mas na sua
maioria (incluindo alemão e inglês\footnote{NT: e português}), irá
obter quase todas as vírgulas correctas se se lembrar do que ela
representa: uma pequena paragem no fluxo da língua. Se não tem a
certeza onde colocar a vírgula, leia a frase em voz alta, e faça uma
pequena respiração em cada vírgula. Se fica mal em algum sítio, apague
a vírgula; se precisa de respirar (ou fazer uma pequena pausa) em
algum outro ponto, insira uma vírgula.

Finalmente, os parágrafos de um texto devem também estar estruturados
logicamente a um nível superior, encaixando-os em capítulos, secções,
subsecções, e assim sucessivamente. No entanto, o efeito tipográfico
de escrever, por exemplo, \verb|\section{A| \texttt{Estrutura e
Linguagem do Texto}\verb|}| é tão óbvio que é evidente quando estas
estruturas de alto nível devem ser utilizadas.

\section{Quebras de Linha e Quebras de Página}
 
\subsection{Parágrafos Justificados}

É habitual que os livros sejam escritos de forma a que cada linha
tenha o mesmo comprimento.  O \LaTeX{} insere as \wi{quebras de linha}
e espaços necessários entre palavras optimizando os conteúdos de um
parágrafo, como um todo. Se necessário, ele também hifeniza as
palavras que não cabem confortavelmente numa linha. Como os parágrafos
são impressos depende da classe do documento. Normalmente a primeira
linha do parágrafo é indentada, e não existe espaço adicional entre
dois parágrafos. Veja a secção~\ref{parsp} para mais informação.

Em casos especiais pode ser necessário ordenar ao \LaTeX{} para quebrar
a linha:
\begin{lscommand}
\ci{\bs} ou \ci{newline} 
\end{lscommand}
\noindent iniciam uma nova linha sem iniciar um novo parágrafo.

\begin{lscommand}
\ci{\bs*}
\end{lscommand}
\noindent proíbe, adicionalmente, uma quebra de página após a quebra de 
linha forçada.

\begin{lscommand}
\ci{newpage}
\end{lscommand}
\noindent inicia uma nova página.

\begin{lscommand}
\ci{linebreak}\verb|[|\emph{n}\verb|]|,
\ci{nolinebreak}\verb|[|\emph{n}\verb|]|, 
\ci{pagebreak}\verb|[|\emph{n}\verb|]|,
\ci{nopagebreak}\verb|[|\emph{n}\verb|]|
\end{lscommand}
\noindent sugerem sítios onde uma quebra pode (ou não pode)
ocorrer. Permitem ao autor influenciar influencie as suas acções com
um argumento opcional \emph{n} que pode variar desde zero até quatro.
Ao colocar \emph{n} com um valor inferior a 4 permite que o \LaTeX{}
ignore o seu comando se o resultado ficar muito feio. Não confunda
estes comandos ``break'' com os comandos ``new''.  Mesmo ao indicar um
comando ``break'', o \LaTeX{} tenta ainda preencher as bordas do texto
e o comprimento total da página, como descrito na secção seguinte. Se
realmente quer começar uma ``nova linha'', então utilize o comando
correspondente.  Adivinhe qual!

O \LaTeX{} tenta sempre produzir as melhores quebras de linha
possíveis. Se não encontra uma forma de quebrar a linha dum modo que
esteja de acordo com a sua qualidade, deixa uma linha sair um pouco da
margem direita do parágrafo.  No entanto, o \LaTeX{} queixa-se
(``\wi{overfull hbox}'') ao processar o documento. Isto acontece mais
frequentemente quando o \LaTeX{} não encontra um sítio correcto para
hifenizar a palavra.\footnote{Apesar do \LaTeX{} avisá-lo quando isto
  acontece (\texttt{Overfull \bs{}hbox}) e mostrar a linha
  problemática, estas linhas nem sempre são fáceis de encontrar. Se
  utilizar a opção \texttt{draft} no comando \ci{documentclass}, estas
  linhas serão marcadas com uma linha preta na margem direita.}
Existe a possibilidade de instruir o \LaTeX{} a baixar a sua qualidade
um pouco dando-lhe o comando \ci{sloppy}, que previne estas linhas
demasiado compridas aumentando o espaço entre palavras---mesmo que o
resultado final não seja óptimo. Neste caso, um aviso (``\wi{underfull
  hbox}'') é dado. Na maior parte destes casos o resultado não é o
melhor.  O comando \ci{fussy} traz o \LaTeX{} de volta ao seu
comportamento habitual.

\subsection{Hifenização} \label{hyph}

O \LaTeX{} hifeniza as palavras sempre que precisa. Se o algoritmo de
hifenização não encontrar o ponto correcto, pode remediar a situação
utilizando o seguinte comando, para indicar ao \TeX{} a excepção.

O comando
\begin{lscommand}
\ci{hyphenation}\verb|{|\emph{lista de palavras}\verb|}|
\end{lscommand}
\noindent causa as palavras listadas no argumento sejam hifenizadas
apenas nos pontos marcados por ``\verb|-|''. O argumento do comando
deve conter apenas palavras constituídas de letras normais ou sinais
considerados como letras normais pelo \LaTeX{}. As sugestões de
hifenização são guardados para a língua activa quando o comando de
hifenização ocorre. Isto significa que se colocar um comando de
hifenização no preâmbulo do seu documento, influenciará a
hifenização da língua inglesa. Se colocar o comando após o
\verb|\begin{document}| e está a usar algum pacote para suporte de
outras línguas como seja o pacote \pai{babel}, então as
sugestões de hifenização estarão activas na língua activada pelo
\pai{babel}.

O seguinte exemplo permitirá que ``hifenização'' seja hifenizado tão
bem como ``Hifenização'', e previne de todo que ``FORTRAN'',
``Fortran'' e ``fortran'' sejam hifenizados. No argumento deste 
comando não são permitidos símbolos ou caracteres especiais.

Exemplo:
\begin{code}
\verb|\hyphenation{FORTRAN Hi-fe-ni-za-ção}|
\end{code}

O comando \ci{-} insere um hífen descritivo numa palavra. Estes passam
também a ser os únicos pontos de hifenização permitidos na
palavra. Este comando é especialmente útil para palavras que contém
caracteres especiais (por exemplo, caracteres acentuados), porque o
\LaTeX{} não hifeniza automaticamente palavras que contenham
esses caracteres.

\begin{example}
Penso que isto é: su\-per\-cal\-%
i\-frag\-i\-lis\-tic\-ex\-pi\-%
al\-i\-do\-cious
\end{example}

Várias palavras podem ser mantidas juntas numa linha, utilizando o comando
\begin{lscommand}
\ci{mbox}\verb|{|\emph{texto}\verb|}|
\end{lscommand}
\noindent que obriga o \LaTeX{} a manter o seu argumento junto em
todas as circunstâncias.

\begin{example}
O meu número de telefone mudará
brevemente para \mbox{291 2319}.

O parâmetro
\mbox{\emph{filename}} deverá
conter o nome do ficheiro.
\end{example}

O comando \ci{fbox} é idêntico ao \ci{mbox}, mas adiciona um rectângulo
desenhado à volta do conteúdo.

\section{Texto já Feito}

Em alguns dos exemplos nas páginas anteriores deverá ter
visto alguns comandos \LaTeX{} muito simples para escrever
texto especial:

\vspace{2ex}

\noindent
\begin{tabular}{@{}lll@{}}
Comando&Exemplo&Descrição\\
\hline
\ci{today} & \today   &  Data actual na língua actual\\
\ci{TeX} & \TeX       &  O nome do seu tipógrafo preferido\\
\ci{LaTeX} & \LaTeX   &  O Nome do Jogo\\
\ci{LaTeXe} & \LaTeXe &  A incarnação actual do \LaTeX\\
\end{tabular}

\section{Símbolos e Caracteres Especiais}
 
\subsection{Aspas}

\emph{Não} deve utilizar o carácter \verb|"| para desenhar \wi{aspas}
\index{""@\texttt{""}} como o faria numa máquina de escrever. Existem
duas marcas especiais para abrir e fechar aspas em tipografia. Em
\LaTeX{}, use dois~\textasciigrave~(acento grave) para abrir aspas e
dois~\textquotesingle~(apóstrofe) para fechar aspas. Para aspas simples use
apenas um de cada.

\begin{example}
``Pressione a tecla `x'.''
\end{example}
Sim, eu sei que a renderização não é a ideal, mas na verdade é um
acento grave (\textasciigrave) para abrir aspas, e um apóstrofe
(\textquotesingle) para fechar. Ignore o que o tipo de letra escolhido
possa sugerir.
 
\subsection{Traços e Hífenes}

O \LaTeX{} conhece quatro tipos diferentes de \wi{traço}s. Pode aceder três
deles colocando um, dois ou três \texttt{-} consecutivos. O quarto sinal
não é um traço---é o sinal matemático menos: \index{-}\index{--}\index{---}
\index{-@$-$}\index{matemática!menos}

\begin{example}
fim-de-semana, segunda-feira\\
páginas 13--67\\
sim---ou não? \\
$0$, $1$ e $-1$
\end{example}

Os nomes destes traços são:
`-' \wi{hífen}, `--' \wi{en-dash}, `---' \wi{em-dash} e
`$-$' \wi{sinal de menos}.

\subsection{Til ($\sim$)}
\index{endereço web}\index{til}
Um carácter visto frequentemente em endereços de Internet é o til. Para gerar
este símbolo em \LaTeX{} pode usar \verb|\~| mas o resultado: \~{} não é
propriamente o que queria. Tente desta forma:

\begin{example}
http://www.rich.edu/\~{}bush \\
http://www.clever.edu/$\sim$demo
\end{example}  

\subsection{Barra (/)}
\index{barra inclinada}
De modo a escrever uma barra entre duas palavras, pode usar simplesmente
\texttt{ler/escrever}, mas isto faz com que o \LaTeX{} considere toda a sequência
como uma única palavra, desactivando a hifenização. Para resolver este problema,
use \ci{slash}. Por exemplo, escreva `\verb|read\slash write|' que irá permitir
a hifenização. No entanto, continue a preferir o carácter `\texttt{/}' normal para
rácios de unidades, por exemplo, \texttt{5 MB/s}.
 
\subsection{Símbolo de Graus \texorpdfstring{($\circ$)}{}}
O seguinte exemplo mostra como imprimir um símbolo de \wi{graus} em
\LaTeX{}:

\begin{example}
Temperatura:
$-30\,^{\circ}\mathrm{C}$,
Daqui a pouco estou a congelar.
\end{example}

O pacote \pai{textcomp} torna o símbolo de graus também disponível como
\ci{textcelsius} ou em combinação com o C, usando \ci{textcelsius}.

\begin{example}
30 \textcelsius{} são
86 \textdegree{}F.
\end{example}


\subsection{Símbolo de Euro \texorpdfstring{(\officialeuro{})}{}}

Ultimamente, ao escrever sobre dinheiro vai precisar do símbolo do Euro.
Muitos dos tipos de letra actuais contêm o símbolo do Euro. Depois de carregar
o pacote \pai{textcomp} no preâmbulo do seu documento
\begin{lscommand}
\ci{usepackage}\verb|{textcomp}|
\end{lscommand}
pode usar o comando
\begin{lscommand}
\ci{texteuro}
\end{lscommand}
para o desenhar.

Se o seu tipo de letra não providenciar o seu próprio símbolo do Euro
ou se não gosta do símbolo do Euro nos tipos de letra que possuí,
ainda tem duas hipóteses:

Em primeiro lugar, o pacote \pai{eurosym} que contém o símbolo oficial
do Euro:
\begin{lscommand}
\ci{usepackage}\verb|[|\emph{official}\verb|]{eurosym}|
\end{lscommand}
Se preferir um símbolo mais parecido com o seu tipo de letra, use a
opção \texttt{gen} no lugar da opção \texttt{official}.

% Se tiver instaladas as Adobe Eurofonts no seu sistema (estão disponíveis
% gratuitamente em \url{ftp://ftp.adobe.com/pub/adobe/type/win/all}) poderá
% usar o pacote \pai{europs} e o comando \ci{EUR} (para um símbolo de Euro
% de acordo com o tipo de letra actual) ou o pacote \pai{eurosans} e o 
% comando \ci{euro} (para o ``Euro oficial'').

% O pacote \pai{marvosym} também inclui muitos símbolos diferentes,
% incluindo o Euro, sob o nome \ci{EURtm}. A desvantagem é que não providencia
% uma variante em negrito nem inclinada do símbolo do Euro.

\begin{table}[!htbp]
\caption{Um saco cheio de símbolos de Euro} \label{eurosymb}
\begin{lined}{10cm}
\begin{tabular}{llccc}
LM+textcomp  &\verb+\texteuro+ & \huge\texteuro &\huge\sffamily\texteuro
                                                 &\huge\ttfamily\texteuro\\
eurosym      &\verb+\euro+ & \huge\officialeuro &\huge\sffamily\officialeuro
                                                 &\huge\ttfamily\officialeuro\\
$[$gen$]$eurosym &\verb+\euro+ & \huge\geneuro  &\huge\sffamily\geneuro
                                                 &\huge\ttfamily\geneuro\\
%europs       &\verb+\EUR + & \huge\EURtm        &\huge\EURhv
%                                                &\huge\EURcr\\
%eurosans     &\verb+\euro+ & \huge\EUROSANS  &\huge\sffamily\EUROSANS
%                                             & \huge\ttfamily\EUROSANS \\
%marvosym     &\verb+\EURtm+  & \huge\mvchr101  &\huge\mvchr101
%                                                &\huge\mvchr101
\end{tabular}
\medskip
\end{lined}
\end{table}


\subsection{Reticências (\texorpdfstring{\ldots}{...})}

Numa máquina de escrever, uma \wi{vírgula} ou um \wi{ponto} ocupam o
mesmo espaço de qualquer outra letra. Ao imprimir livros, estes
caracteres ocupam apenas um pequeno espaço e são colocados muito
próximos à letra precedente.  Desta forma, introduzindo
\wi{reticências} como sendo simplesmente três pontos irá produzir o
resultado errado. Em vez disso, existe existe um comando especial para
estes pontos. É chamado

\begin{lscommand}
\ci{ldots}
\end{lscommand}
\index{...@\ldots}

\begin{example}
Não desta forma ... mas assim:\\
Nova Iorque, Tóquio,
Budapeste, \ldots
\end{example}
 
\subsection{Ligaduras}

Algumas combinações de letras são escritas, não colocando as
diferentes letras uma após a outra, mas usando símbolos especiais.

\begin{code}
{\large ff fi fl ffi\ldots}\quad
em vez de \quad {\large f{}f f{}i f{}l f{}f{}i \ldots}
\end{code}  
Estas chamadas `\wi{ligaduras}' podem ser proibidas inserindo uma \ci{mbox}\verb|{}|
entre as duas letras em questão. Isto pode ser necessário com palavras construídas
de duas palavras.

\begin{example}
\Large Not shelfful\\
but shelf\mbox{}ful
\end{example}
 
\subsection{Caracteres Especiais e Acentos}
 
O \LaTeX{} suporta o uso de \wi{acento}s e \wi{caracteres especiais}
de muitas línguas. A tabela~\ref{accents} mostra todos os tipos de
acentos sendo aplicados à letra o. Naturalmente que outras letras
também funcionam.

Para colocar um acento no topo de um i ou de um j, o ponto deve ser
removido. Isto é conseguido escrevendo \verb|\i| e \verb|\j|.

\begin{example}
H\^otel, na\"\i ve, \'el\`eve,\\ 
sm\o rrebr\o d, !`Se\~norita!,\\
Sch\"onbrunner Schlo\ss{} 
Stra\ss e
\end{example}

\begin{table}[!hbp]
\caption{Caracteres especiais e Acentos.} \label{accents}
\begin{lined}{10cm}
\begin{tabular}{*4{cl}}
\A{\`o}   & \A{\'o}   & \A{\^o}   & \A{\~o} \\
\A{\=o}   & \A{\.o}   & \A{\"o}   & \B{\c}{c}\\[6pt]

\B{\u}{o} & \B{\v}{o} & \B{\H}{o} & \B{\c}{o}\\
\B{\d}{o} & \B{\b}{o} & \B{\t}{oo}\\[6pt]

\A{\oe}   & \A{\OE}   & \A{\ae}   & \A{\AE} \\
\A{\aa}   & \A{\AA} \\[6pt]
\A{\o}    & \A{\O}    & \A{\l}    & \A{\L} \\
\A{\i}    & \A{\j}    & !`        & \verb|!`| & ?` & \verb|?`| 
\end{tabular}
\index{\i e \j sem pontos}\index{letras escandinavas}
\index{ae@\ae}\index{umlaut}\index{grave}\index{agudo}
\index{oe@\oe}\index{aa@\aa}

\bigskip
\end{lined}
\end{table}

\section{Suporte de Línguas Internacionais}
\index{internacionalização} Se precisa de escrever documentos noutras \wi{língua}s
que não o inglês, então existem três áreas onde o \LaTeX{} pode ser configurado
apropriadamente:

\begin{enumerate}
\item Todos os textos gerados automaticamente\footnote{Tabela de Conteúdos,
    Lista de Figuras, \ldots} podem ser adaptados para a outra língua. Para
    a maior parte das línguas, estas mudanças podem ser conseguidas
    utilizando o pacote \pai{babel} por Johannes Braams.

\item O \LaTeX{} precisa de saber as regras de hifenização para a nova
  língua. Conseguir as regras de hifenização no \LaTeX{} é um pouco
  mais complicado. Obriga a reconstruir o ficheiro de formato activando padrões
  de hifenização diferentes. O seu \guide{} deve apresentar mais informação
  na realização desta tarefa.
  
\item Regras tipográficas específicas de algumas línguas. Em Francês,
  por exemplo, existe um espaço obrigatório antes de cada carácter de
  dois pontos (:).

\end{enumerate}

Se o seu sistema já está configurado de forma apropriada, pode activar o
pacote \pai{babel} adicionando o comando
\begin{lscommand}
\ci{usepackage}\verb|[|\emph{língua}\verb|]{babel}| 
\end{lscommand}
\noindent depois do comando \verb|\documentclass|. A lista das \emph{língua}s
que o seu sistema suporta serão mostradas sempre que o seu compilador
inicia. O Babel irá activar
automaticamente as regras apropriadas de hifenização para a língua que
escolher. Se o seu formato \LaTeX{} não suporta hifenização na língua
que escolheu, o babel continuará a funcionar mas irá desactivar a
hifenização, o que terá um efeito bastante negativo na aparência visual
do documento.

Se inicializar o babel com várias línguas
\begin{lscommand}
\ci{usepackage}\verb|[|\emph{línguaA}\verb|,|\emph{línguaB}\verb|]{babel}|
\end{lscommand}
\noindent a última língua que definiu ficará activa, mas pode usar o comando
\begin{lscommand}
\ci{selectlanguage}\verb|{|\emph{línguaA}\verb|}|
\end{lscommand}
para alterar a língua actual.

%Input Encoding
\newcommand{\ieih}[1]{%
\index{encodings!input!#1@\texttt{#1}}%
\index{input encodings!#1@\texttt{#1}}%
\index{#1@\texttt{#1}}}
\newcommand{\iei}[1]{%
\ieih{#1}\texttt{#1}}
%Font Encoding
\newcommand{\feih}[1]{%
\index{encodings!font!#1@\texttt{#1}}%
\index{font encodings!#1@\texttt{#1}}%
\index{#1@\texttt{#1}}}
\newcommand{\fei}[1]{%
\feih{#1}\texttt{#1}}

Quase todos os sistemas modernos permitem introduzir alguns caracteres
especiais directamente pelo teclado. Para conseguir manusear uma variedade
de símbolos usados nos diferentes grupos de línguas e/ou nas diferentes 
plataformas, o \LaTeX{} usa o pacote \pai{inputenc}:
\begin{lscommand}
\ci{usepackage}\verb|[|\emph{codificação}\verb|]{inputenc}| 
\end{lscommand}

Ao utilizar este pacote, deverá ter em atenção que outras pessoas
podem não conseguir ler o código do seu documento no seu computador,
porque utilizam uma codificação diferente. Por exemplo, o umlaut
alemão \"a em OS/2 é codificado como 132, mas em alguns sistemas Unix
utilizando ISO-LATIN~1 é codificado como 228, enquanto que em Cirílico
(cp1251 para Windows) esta letra não existe de todo. Desta forma deve
utilizar esta funcionalidade com cuidado. As seguintes codificações
podem ser úteis, dependendo do tipo de sistema com que está a
trabalhar:\footnote{Para aprender mais sobre as codificações
  suportadas para línguas baseadas em Latin e Cirílico, leia a
  documentação para o \texttt{inputenc.dtx} e \texttt{cyinpenc.dtx},
  respectivamente. A secção~\ref{sec:Packages} ensina a produzir a
  documentação destes pacotes.}

\begin{center}
\begin{tabular}{l | r | r }
Sistema & \multicolumn{2}{c}{codificações}\\
operativo & Latim      & Cirílico\\
\hline
Mac     &  \iei{applemac} & \iei{macukr}  \\
Unix    &  \iei{latin1}   & \iei{koi8-ru}  \\ 
Windows &  \iei{ansinew}  & \iei{cp1251}    \\
DOS, OS/2  &  \iei{cp850} & \iei{cp866nav}
\end{tabular}                
\end{center}                 

O uso de
\begin{lscommand}
\ci{usepackage}\verb|[|\iei{utf8}\verb|]{inputenc}| 
\end{lscommand}
\noindent irá permitir que crie documentos \LaTeX{} em
\iei{utf8}, uma codificação multi-byte na qual cada caracter pode
ser codificado no mínimo como um byte e, no máximo, quatro bytes.

Desde a pasagem do século que a maior parte dos sistemas operativos
são baseados em Unicode (Windows XP, Mac OS~X). Daí que seja
recomandado o uso de \iei{utf8} para qualquer novo projecto. A
codificação \iei{utf8} usada pelo pacote \pai{inputenc} apenas define
os caracteres que são realmente suportados pelos tipos de letra
usados. Se precisar de mais caracteres (não latinos), considere usar o
\hologo{XeLaTeX} (veja a secção~\ref{sec:xetex}, um motor \TeX{}
baseado em Unicode).

A codificação de tipos de letra é uma matéria diferente. Esta, define
em que posições cada letra é guardada dentro da \TeX-font. Várias
codificações podem ser mapeadas numa codificação, o que reduz o número
de conjuntos de tipos de letras necessários. Estas codificações são
manuseadas usando o pacote \pai{fontenc}:\label{fontenc}
\begin{lscommand}
\ci{usepackage}\verb|[|\emph{codificação}\verb|]{fontenc}| \index{font encodings}
\end{lscommand}
\noindent onde \emph{codificação} é um tipo de codificação de caracteres.
É possível carregar várias codificações simultâneamente.

A codificação habitual do \LaTeX{} é \label{OT1} a \fei{OT1}, a
codificação dos tipos de letra originais do \TeX: Computer Modern.
Contém apenas 128 caracteres do conjunto de caracteres ASCII de 7
bits. Quando os caracteres acentuados são necessários, o \TeX{}
cria-os combinando um caracter normal com o acento.  Embora o
resultado pareça perfeito, este método pára a hifenização automática
para palavras que contenham caracteres acentuados. Além disso, algumas
letras latinas não podem ser criadas combinando um caracter normal com
um acento, já para não falar das letras de alfabetos não latinos como
sejam o Grego ou Cirílico.

Para resolver estes problemas, vários tipos de letra do tipo CM de 8
bits foram criados. Tipos de letra \emph{Extended Cork} (EC) na codificação 
\fei{T1} contém letras e caracteres de pontuação para a maioria das línguas
Europeias baseadas em Latim. O conjunto de tipos de letra LH contém as letras
necessárias para escrever documentos em línguas cirílicas. Devido ao grande
número de glifos cirílicos, estes foram divididos em quatro codificações ---
\fei{T2A}, \fei{T2B}, \fei{T2C}, e~\fei{X2}.\footnote{A lista de línguas suportadas 
por cada uma destas codificações pode ser encontrada no \cite{cyrguide}.}
O conjunto CB contém letras na codificação \fei{LGR} para a composição de
texto Grego.

Ao usar estes tipos de letra pode melhorar/activar a hifenização de
textos não Ingleses. Outra vantagem é que estes tipos de letra
providenciam as familias CM em todos os seus formatos, e tamanhos
opticalmente aumentados.

\subsection{Suporte para Alemão}

Aqui vão algumas dicas para aqueles que estejam a criar documentos \LaTeX{}
em \wi{Alemão}:\index{Deutsch}\index{German}
pode carregar o suporte para língua alemã com o comando

\begin{lscommand}
\verb|\usepackage[german]{babel}|
\end{lscommand}

Isto fará com que o \LaTeX{} passe a fazer hifenização para a língua
Alemã, se tiver o seu sistema \LaTeX{} bem configurado. Também irá
alterar todo o texto automático para alemão. Por exemplo, ``Chapter''
irá passar a ``Kapitel.''  Um conjunto de novos comandos irão passar a
estar disponíveis, que lhe irão permitir introduzir texto alemão de
forma mais rápida, mesmo que não use o pacote inputenc. Repare na
tabela \ref{german} para alguma inspiração.  Com o inputenc, tudo isto
se torna desnecessário, mas o seu texto também irá ficar preso num
mundo de codificação particular.

\begin{table}[!htbp]
\caption{Caracteres especiais alemães.} \label{german}
\begin{lined}{8cm}
\selectlanguage{german}
\begin{tabular}{*2{ll}}
\verb|"a| & "a \hspace*{1ex} & \verb|"s| & "s \\[1ex]
\verb|"`| & "` & \verb|"'| & "' \\[1ex]
\verb|"<| or \ci{flqq} & "<  & \verb|">| or \ci{frqq} & "> \\[1ex]
\ci{flq} & \flq & \ci{frq} & \frq \\[1ex]
\ci{dq} & " \\
\end{tabular}
\selectlanguage{portuges}
\bigskip
\end{lined}
\end{table}

Em livros alemães irá encontrar aspas de estilo francês (\flqq
guil\-le\-mets\frqq).  Os tipógrafos alemães usam-as de forma diferente.
Uma frase entre aspas num livro alemão deverá ser \frqq assim\flqq.
Na parte da Suíça que fala alemão, os tipógrafos usam \flqq
guillemets\frqq~da mesma forma que os Franceses.

Um grande problema surge do uso de comandos como \verb+\flq+: se usar
um tipo de letra OT1 (que é o tipo de letra por omissão) as guillemets
irão parecer o símbolo matemático ``$\ll$'', que irá revoltar um
estômago de tipógrafo.  Os tipos de letra codificados em T1, por outro
lado, não contêm os símbolos necessários.  Assim, se está a usar este
tipo de aspas, tenha a certeza de que está com a codificação T1.
(\verb|\usepackage[T1]{fontenc}|)

\subsection{Suporte para Português}
\secby{Alberto Simões}{albie@alfarrabio.di.uminho.pt}

\subsubsection{Texto Automático}

Como acontece com outras línguas, o pacote \pai{babel} suporta a
língua portuguêsa. Isto significa que ao colocar no preâmbulo do
documento a linha
\begin{verbatim}
\usepackage[portuges]{babel}
\end{verbatim}
todo o texto gerado é automaticamente traduzido para Português. Por
exemplo, ``chapter'' irá passar a ``capítulo'', ``table of contents''
a ``conteúdo''. Da mesma forma, o comando \verb!\date! passará a
apresentar a data actual em Português.

\subsubsection{Hifenização}

Nas distribuições do \LaTeX{} em Linux utilizadas até agora, nunca
encontrei uma com a hifenização automática para português activada
quando se usa o pacote \pai{babel}.  No entanto, a sua activação é
extremamente simples se tem acesso à aplicação \texttt{texconfig}.
Tente executá-la (como administrador do sistema) e, caso não a
encontre, verifique se não estará escondida algures, como em
\texttt{/usr/share/texmf/bin/texconfig}.

Depois de executar a aplicação, e após alguns segundos de
processamento, aparecerá uma janela com várias opções. Escolha a opção
de hifenização (\texttt{HYPHEN} - hyphenation). Na nova janela,
escolha a opção \texttt{latex}, que abrirá o editor \texttt{vi} com um
ficheiro de configuração.

Agora deve procurar a palavra \texttt{portuges} neste ficheiro. Se não
está habituado a usar este editor, tecle \texttt{/} seguido de
\texttt{portuges}. O cursor aparecerá sobre uma linha da forma:

\begin{verbatim}
%portuges        pt8hyph.tex
\end{verbatim}

Repare no símbolo de comentário (símbolo de percentagem). Se exis\-te,
significa que a hifenização portuguesa está desligada. Se seguiu as
instrucções dadas, tecle \texttt{x}. Caso contrário, não precisa de
alterar nada. Esta linha deve passar a:

\begin{verbatim}
portuges        pt8hyph.tex
\end{verbatim}

Para terminar, escreva \texttt{:wq}. O sistema começará
a processar este ficheiro. Espere até que volte a aparecer a janela
inicial e escolha a opção para sair (\texttt{Exit}).

\subsection{Suporte para Francês}

\secby{Daniel Flipo}{daniel.flipo@univ-lille1.fr}

Alguns conselhos para aqueles que desejem criar documentos em
\wi{Francês} usando o \LaTeX{}. Pode carregar o suporte para o
Francês usando o comando:

\begin{lscommand}
\verb|\usepackage[francais]{babel}|
\end{lscommand}

Esta opção inicia a hifenização Francesa, se tiver o seu LaTeX configurado
de forma correcta. Também altera todo o texto automático para francês:
\verb+\chapter+ escreve ``Chapitre'', \verb+\today+ escreve a data actual em
francês, e assim sucessivamente. Um grande conjunto de novos comandos passam
a existir, que lhe permitem escrever ficheiros em Francês de forma mais simples.
Dê uma olhadela à tabela \ref{cmd-french} para inspiração.
 
\begin{table}[!htbp]
\caption{Comandos especiais para Francês.} \label{cmd-french}
\begin{lined}{9cm}
\selectlanguage{french}
\begin{tabular}{ll}
\verb+\og guillemets \fg{}+         \quad &\og guillemets \fg \\[1ex]
\verb+M\up{me}, D\up{r}+            \quad &M\up{me}, D\up{r}  \\[1ex]
\verb+1\ier{}, 1\iere{}, 1\ieres{}+ \quad &1\ier{}, 1\iere{}, 1\ieres{}\\[1ex]
\verb+2\ieme{} 4\iemes{}+           \quad &2\ieme{} 4\iemes{}\\[1ex]
\verb+\No 1, \no 2+                 \quad &\No 1, \no 2   \\[1ex]
\verb+20~\degres C, 45\degres+      \quad &20~\degres C, 45\degres \\[1ex]
\verb+\bsc{M. Durand}+              \quad &\bsc{M.~Durand} \\[1ex]
\verb+\nombre{1234,56789}+          \quad &\nombre{1234,56789}
\end{tabular}
\selectlanguage{portuges}
\bigskip
\end{lined}
\end{table}

Também irá reparar que o formato das listas muda quando usa a língua francesa.
Para ficar a conhecer tudo o que a opção \texttt{francais} do pacote \textsf{babel}
faz e como pode alterar o seu funcionamento, execute o \LaTeX{} no ficheiro
\texttt{frenchb.dtx} e leia o ficheiro produzido: \texttt{frenchb.dvi}.

Versões recentes do pacote \pai{frenchb} usam o \pai{numprint} para
implementar o comando \ci{nombre}.

\subsection[Suporte para Coreano]{Suporte para Coreano\footnotemark}\label{support_korean}%
\footnotetext{%
Considerando o número de questões que os utilizadores de \LaTeX{} Coreanos têm
de ter em conta, esta secção foi escrita por Karnes KIM da equipa de tradução
do lshort para Coreano. Foi traduzida para Inglês por SHIN Jungshik e encolhida
por Tobi Oetiker.}

Para usar o \LaTeX{} para escrever \wi{Coreano}, precisamos de resolver três problemas:

\begin{enumerate}
\item Temos de ser capazes de editar ficheiros \LaTeX{} em coreano.
  Estes ficheiros devem ser em formato de texto puro, mas porque o
  Coreano usa os seus próprios caracteres fora do reportório do
  US-ASCII, eles irão parecer bastante estranhos num editor ASCII
  comum. As duas codificações mais usadas para textos em Coreano são
  EUC-KR e a sua extensão compatível usada no MS-Windows Coreano,
  CP949/Windows-949/UHC. Nestas codificações, cada caracter US-ASCII
  representa o seu caracter ASCII normal semelhante a outras
  codificações compatíveis como a ISO-8859-\textit{x},
  EUC-JP, Big5 ou Shift\_JIS. Por outro lado, sílabas Hangul, Hanjas
  (caracteres Chineses usados na Coreia), Hangul Jamos, Hiraganas,
  Katakanas, Grego e caracteres Cirílicos e outros símbolos e letras
  desenhadas pelo KS~X~1001 são representados por dois octetos
  consecutivos. O primeiro tem o seu conjunto MSB. Até ao meio dos
  1990's, demorou uma quantidade de tempo e trabalho considerável para
  criar um ambiente Coreano num sistema operativo não Coreano. Pode
  dar uma olhadela ao agora muito antigo \url{http://jshin.net/faq}
  para ter uma ideia de como se usava Coreano num sistema operativo
  não Coreano no meio dos 1990's. Nestes dias, os três principais
  sistemas operativos (Mac OS, Unix, Windows) vêem equipados com
  suporte multilingue bastante decente, e internacionalização de forma
  que editar um texto em Coreano já não é tanto um problema, mesmo em
  sistemas operativos não coreanos.
  
\item O \TeX{} e o \LaTeX{} foram originalmente escritos para línguas
  com menos de 256 caracteres no seu alfabeto. Para os fazer funcionar
  para línguas com consideravelmente mais caracteres como o Coreano
  \footnote{O Hangul Coreano é uma língua alfabética com 14 consoantes
    básicas e 10 vogais básicas (Jamos). De forma diferente das
    línguas latinas ou cirílicas, cada caracter individual tem de ser
    colocado em caixas rectangulares com um tamanho similar ao dos
    caracteres Chineses. Cada caixa representa uma sílaba. Um número
    ilimitado de sílabas pode ser formado deste conjunto finito de
    vogais e consoantes. Os standards modernos da ortografia Coreana
    (na Coreia do Sul e na Coreia do Norte), colocam algumas
    restrições na formação destas caixas. Assim, apenas um conjunto
    finito de silabas ortograficamente correctas existem. A
    codificação de caracteres coreanos define um código individual
    para cada uma destas sílabas (KS~X~1001:1998 e KS~X~1002:1992). O
    Hangul passa a ser tratado como nos sistemas de escrita do Chinês
    ou do Japonês, com centenas de caracteres ideográficos. O
    ISO~10646/Unicode oferece ambas as formas de representar Hangul
    usado para o Coreano \emph{moderno} codificando Conjoining Hangul
    Jamos (alfabetos:
    \url{http://www.unicode.org/charts/PDF/U1100.pdf}) em adição à
    total codificação das sílibas ortograficamente permitidas em
    Coreano \emph{moderno}
    (\url{http://www.unicode.org/charts/PDF/UAC00.pdf}). Um dos
    maiores desafios na tipografia Coreana com \LaTeX{} e sistemas
    similares é o suporte para Coreano mais antigo---e possívelmente
    Coreano do futuro---onde as sílabas só podem ser representadas
    juntando Jamos em Unicode. Espera-se que futuros motores do \TeX{}
    como $\Omega$ e $\Lambda$ irão, eventualmente, providenciar
    soluções para isto.} ou Chinês, um mecanismo de sub-tipos de letra foi
  desenvolvido. Divide uma letra CJK com centenas ou dezenas de
  centenas de glifos num conjunto de sub-tipos com 256 glifos cada.
  Para o Coreano, existem três pacotes bastante usados;  \wi{H\LaTeX} por
  UN~Koaunghi, \wi{h\LaTeX{}p} por CHA~Jaechoon e o pacote \wi{CJK}
  por Werner~Lemberg.\footnote{% 
    Podem ser obtidos em \CTANref|language/korean/HLaTeX/|\\
    \CTANref|language/korean/CJK/| e
    \texttt{http://knot.kaist.ac.kr/htex/}} H\LaTeX{} e h\LaTeX{}p são
  específicos para o Coreano e disponibilizam o Coreano sobre o
  suporte de tipos de letras. Ambos conseguem processar texto Coreano
  codificado em EUC-KR. H\LaTeX{} pode até processar ficheiros
  codificados em CP949/Windows-949/UHC e UTF-8 quando usado com
  $\Lambda$ ou $\Omega$.
  
  O pacote CJK não é específico para Coreano. Consegue processar
  ficheiros em UTF-8 assim como em várias codificações CJK incluindo
  EUC-KR e CP949/Windows-949/UHC. Pode ser usado para escrever
  documentos com conteúdo multi-lingue (especialmente Chinês, Japonês
  e Coreano). O Pacote CJK não tem localização em Coreano como a
  oferecida pelo H\LaTeX{} e não disponibiliza tantos tipos de letra
  Coreana como o H\LaTeX.
  
\item O último objectivo de usar programas como o \TeX{} e o \LaTeX{}
  é para obter documentos ``esteticamente'' satisfatórios. Sem dúvida
  que o elemento mais importante é o tipo de letra bem desenhado. A
  distribuição H\LaTeX{} inclui tipos de letra UHC \PSi{}
  de 10 famílias diferentes e tipos Munhwabu\footnote{Ministério da
    Cultura Coreano.} de 5 famílias diferentes. O pacote CJK funciona
  com um conjunto de tipos de versões anteriores ao H\LaTeX{} e também
  consegue usar tipos de letra Bitstream cyberbit TrueType.
\end{enumerate}

Para usar o pacote H\LaTeX{} para escrever o seu texto em Coreano, 
inclua a seguinte declaração no preâmbulo do documento:
\begin{lscommand}
\verb+\usepackage{hangul}+
\end{lscommand}

Este comando liga a localização para Coreano. Os cabeçalhos de
capítulos, secções, secções, índices de conteúdos ou figuras, todos
eles irão ser traduzidos para Coreano, e a formatação do documento irá
seguir as convenções Coreanas. O pacote também contempla uma
``selecção de partículas'' automática. Em Coreano, existem pares de
partículas pós-fixas gramaticamente equivalentes mas diferentes em
forma. Qual é correcto depende se a sílaba precedente acaba em vogal
ou consoante. (É um pouco mais complexo que isto, mas deve estar a ter
uma boa ideia.) Coreanos nativos não têm problemas a escolher a
partícula correcta, mas o \TeX{} não pode determinar que particula
usar para referências ou outro texto automático que irá mudar ao
editar o documento. Esta selecção de partículas manual gera algum
esforço em colocar as partículas cada vez que adiciona ou remove
referências ou simplesmente baralha alguma das partes do seu
documento.  H\LaTeX{} alivia os seus utilizadores deste processo
aborrecido e delicado.

No caso de não precisar das características de localização do Coreano,
e quer apenas escrever em Coreano, pode usar a seguinte linha no
preâmbulo do seu documento,
\begin{lscommand}
\verb+\usepackage{hfont}+
\end{lscommand}

Para maior detalhe sobre o uso de Coreano com H\LaTeX, consultar o
\emph{H\LaTeX{} Guide}.  Veja também a página do grupo Coreano de
utilizadores de \TeX{} (KTUG) em \url{http://www.ktug.or.kr/}.  Também
existe uma tradução Coreana deste manual.

\subsection{Suporte para Grego}
\secby{Nikolaos Pothitos}{pothitos@di.uoa.gr}

Veja a tabela~\ref{preamble-greek} para o preâmbulo que precisa para escrever
na língua grega\index{Grego}. Este preâmbulo activa a hifenização e altera
todo o texto automático para Grego.\footnote{Se seleccionar a opção
\texttt{utf8x} para o pacote \texttt{inputenc} pode digitar directamente caracteres 
Unicode gregos e politónicos gregos.}

\begin{table}[btp]
\caption{Preâmbulo para documentos em Grego.} \label{preamble-greek}
\begin{lined}{7cm}
\begin{verbatim}
\usepackage[english,greek]{babel}
\usepackage[iso-8859-7]{inputenc}
\end{verbatim}
\bigskip
\end{lined}
\end{table}

Um conjunto de novos comandos ficam disponíveis, que lhe permite escrever
em Grego de forma facilitada. Para alternar temporariamente entre Grego e Português, e vice-versa,
pode usar os comandos \verb|\textlatin{|\emph{texto em caracteres latinos}\verb|}| 
e \verb|\textgreek{|\emph{texto grego}\verb|}|. Ambos recebem um argumento que é
colocado no documento final com a codificação correcta. Para zonas de maior dimensão
pode usar o comando \verb|\selectlanguage{...}| descrito numa secção anterior.
Veja a tabela~\ref{sym-greek} para alguma pontuação Grega. Para o símbolo do Euro
use \verb|\euro|.

\begin{table}[!htbp]
\caption{Caracteres Especiais Gregos.} \label{sym-greek}
\begin{lined}{4cm}
\selectlanguage{french}
\begin{tabular}{*2{ll}}
\verb|;| \hspace*{1ex}  &  $\cdot$ \hspace*{1ex}  &  \verb|?| \hspace*{1ex}&  ;   \\[1ex]
\verb|((|               &  \og                    &  \verb|))|&  \fg \\[1ex]
\verb|``|               &  `                      &  \verb|''| &  '   \\
\end{tabular}
\selectlanguage{portuges}
\bigskip
\end{lined}
\end{table}



\subsection{Suporte para Cirílico}
\secby{Maksym Polyakov}{polyama@myrealbox.com}

A versão~3.7h do \pai{babel} incluí suporte para as codificações~\fei{T2*}
e para escrever texto Bulgaro, Russo e Ucraniano usando letras cirílicas.

O suporte para o cirílico é baseado nos mecanismos habituais do \LaTeX{}
através dos pacotes \pai{fontenc} e \pai{inputenc}. Mas, se for usar
cirílico em modo matemático, irá precisar de carregar o pacote \pai{mathtext}
antes do \pai{fontenc}:\footnote{Se usar os pacotes \AmS-\LaTeX{},
carregue-os antes do \pai{fontenc} e do \pai{babel}.}
\begin{lscommand}
\verb+\usepackage{mathtext}+\\
\verb+\usepackage[+\fei{T1}\verb+,+\fei{T2A}\verb+]{fontenc}+\\
\verb+\usepackage[+\iei{koi8-ru}\verb+]{inputenc}+\\
\verb+\usepackage[english,bulgarian,russian,ukranian]{babel}+
\end{lscommand}

Geralmente, o \pai{babel} irá escolher automaticamente a codificação
por omissão para as três línguas, ou seja, \fei{T2A}.  No entanto, os
documentos não estáo restringidos a uma única codificação.  Para um
documento multi-lingue que use línguas cirílicas e línguas latinas faz
sentido incluir a codificação latina explicitamente. O \pai{babel} irá
tratar de mudar para a codificação necessária sempre que uma língua
diferente é seleccionada dentro do documento.

Além de activar as hifenizações, traduzir automaticamente o texto
gerado, e activar algumas regras tipográficas específcias da língua
(como o \ci{frenchspacing}), o \pai{babel} providencia alguns
comandos para permitir escrever de acordo com os standards das línguas
Bulgara, Russa ou Ucraniana.

Para estas três línguas, a pontuação específica é providenciada: um
hifen em cirílico para o texto (é ligeiramente diferente do latino, e
separado por pequenos espaços), hifen para discurso directo, aspas, e
comandos para facilitar a hifenização. Veja a tabela~\ref{Cyrillic}.


% Table borrowed from Ukrainian.dtx
\begin{table}[htb]
  \begin{center}
  \index{""-@\texttt{""}\texttt{-}} 
  \index{""---@\texttt{""}\texttt{-}\texttt{-}\texttt{-}} 
  \index{""=@\texttt{""}\texttt{=}} 
  \index{""`@\texttt{""}\texttt{`}} 
  \index{""'@\texttt{""}\texttt{'}} 
  \index{"">@\texttt{""}\texttt{>}} 
  \index{""<@\texttt{""}\texttt{<}} 
  \caption[Bulgaro, Russo, e Ucraniano]{As definições extra feitas pelas opções
           Bulgaro, Russa, e Ucraniana do \pai{babel}}\label{Cyrillic}
  \begin{tabular}{@{}p{.1\hsize}@{}p{.9\hsize}@{}}
   \hline
   \verb="|= & desliga as ligaduras nesta posição.               \\
   \verb|"-| & um hifen explicito, permitindo hifenização no resto da palavra\\
   \verb|"---| & Cyrillic emdash em texto plano.                      \\
   \verb|"--~| & Cyrillic emdash em nomes compostos.       \\
   \verb|"--*| & Cyrillic emdash para representar discurso directo.         \\
   \verb|""| & como \verb|"-|, mas não produz o símbolo do hifen
               (para palvras compostas com hifen e.g.\verb|x-""y|
               ou outros símbolos como ``activar/desactivar'').     \\
   \verb|"~| & para uma marca de palavra composta sem ponto de quebra.        \\
   \verb|"=| & para uma marca de palavra composta com um ponto de quebra
          permitindo hifenização de palavras compostas.                   \\
   \verb|",| & pequeno espaço para inciais com um ponto de quebra.                                \\
   \verb|"`| & para as aspas duplas Alemãs (esquerdas)
               (parece-se com ,\kern-0.08em,).                     \\
   \verb|"'| & para as aspas duplas Alemãs (direitias) (parece-se com ``).       \\%''
   \verb|"<| & para as aspas esquerdas Francesas (parece-se com $<\!\!<$).  \\
   \verb|">| & para as aspas direitas Francesas (parece-se com $>\!\!>$). \\
   \hline
  \end{tabular}
  \end{center}
\end{table}

As opções para Russo e Ucraniano do \pai{babel} definem o comando
\ci{Asbuk} e \ci{asbuk}, que funcionam como \ci{Alph} e
\ci{alph}\footnote{Os comandos para transformar contadores em letras,
  como \emph{a, b, c, \ldots}}, mas produzem uma letra maiúscula e
pequenas letras dos alfabetos Russo e Ucranianos (a que for a língua
activa no documento). A opção para Bulgaro do \pai{babel} providenciar
o comando \ci{enumBul} e \ci{enumLat} (\ci{enumEng}), que fazem o
\ci{Alph} e \ci{alph} produzir letras dos alfabetos Bulgaro ou
Latinos. O comportamento por omissão do \ci{Alph} e \ci{alph} para a
língua Bulgara é produzir letras do alfabeto Bulgaro.

%Finally, math alphabets are redefined and  as well as the commands for math
%operators according to Cyrillic typesetting traditions. 

\subsection{Suporte para Mongol} 

Para usar o \LaTeX{} para escrever em Mongol tem de escolher entre dois pacotes:
Multilingual Babel ou Mon\TeX{}, por Oliver Corff.

Mon\TeX{} inclui suporte para cirílico e mongol. Para aceder aos comandos do Mon\TeX{},
adicione:
\begin{lscommand}
\ci{usepackage}\verb|[|\emph{língua},\emph{codificação}\verb|]{mls}|
\end{lscommand}
\noindent no preâmbulo. Escolha a \emph{língua} \pai{xalx} para
gerar títulos e datas em mongol moderno. Para escrever um documento completo
em mongol tradicional, tem de escolher a \emph{língua} \pai{bicig}. Esta última
opção activa o método de escrita baseado em  ``transliteração simplificada.''

Active e desactive o modo de transliteração com
\verb|\SetDocumentEncodingLMC|
\noindent e
\verb|\SetDocumentEncodingNeutral|.

Mais informação sobre o Mon\TeX{} está disponível em
\CTAN|language/mongolian/montex/doc|.

O cirílico mongol é suportado pelo \pai{babel}. Active o suporte
para a língua mongol usando os comandos:
\begin{lscommand}
\verb|\usepackage[T2A]{fontenc}|\\
\verb|\usepackage[mn]{inputenc}|\\
\verb|\usepackage[mongolian]{babel}|
\end{lscommand}
\noindent onde \iei{mn} é a codificação \iei{cp1251}. Para uma abordagem mais moderna, 
use \iei{utf8}.

\subsection{A opção Unicode}
\secby{Axel Kielhorn}{A.Kielhorn@web.de}

O Unicode é o caminho a seguir se precisa de incluir várias línguas num único documento,
especialmente se essas línguas não usam caracteres latinos. Existem dois motores
que são capazes de processar caracteres em Unicode:
\begin{description}
\item[\hologo{XeTeX}], desenvolvido para Mac OS~X, mas actualmente disponível
	para todas as arquitecturas. Foi incluído pela primeira vez no
        \TeX{}Live 2007.
\item[\hologo{LuaTeX}], é o sucessor do pdf\TeX. Foi incluído pela primeira
        vez no \TeX{}Live 2008.
\end{description}

De seguida descreve-se o \hologo{XeLaTeX}, tal como distribuído com o \TeX{}Live 2010.

\subsubsection{Início Rápido}

Para converter um documento \LaTeX{} para \hologo{XeLaTeX}, deve seguir estes passos:
\begin{enumerate}
\item Grave o ficheiro em UTF-8;
\item Remova estes pacotes do preâmbulo do documento:
  \begin{lscommand}
    \verb|\usepackage{inputenc}|\\
    \verb|\usepackage{fontenc}|\\
    \verb|\usepackage{textcomp}|
  \end{lscommand}
\item Altere
\begin{lscommand}
\verb|\usepackage[|\emph{línguaA}\verb|]{babel}|
\end{lscommand}
para
\begin{lscommand}
\verb|\usepackage{polyglossia}|\\
\verb|\setdefaultlanguage[babelshorthands]{|\emph{línguaA}\verb|}|
\end{lscommand}
\item Adicione ao preâmbulo,
  \begin{lscommand}
    \verb|\usepackage[Ligatures=TeX]{fontspec}|
  \end{lscommand}
\end{enumerate}

O pacote \pai{polyglossia}\cite{polyglossia} é um substituto para o
\pai{babel}.  Trata dos padrões de hifenização, e gera texto na língua
de destino de forma automática.  A opção \verb|babelshorthands| activa
atalhos compatíveis com o do \pai{babel} para alemão e catalão.

O pacote \pai{fontspec}\cite{fontspec} é responsável por carregar os tipos
de letra para o \hologo{XeLaTeX} e \hologo{LuaTeX}. O tipo usado por omissão
é o Latin Modern Roman.  É sabido que alguns comandos \TeX{} são ligaduras
definidas nos tipos de letra Computer Modern. Se as quiser usar com um
tipo de letra não-\hologo{TeX}, tem de as falsificar. A opção 
\texttt{Ligatures=TeX} define as seguintes ligaduras:

\begin{center}
\begin{tabular}{rr@{\qquad\qquad}rr}
\verb|--|	& -- &  \verb|---|	& ---\\
\verb|''|	& '' &  \verb|``|	& ``\\
\verb|!`|	& !` &  \verb|?`|	& ?`\\
\verb|,,|	& ,, &  \verb|<<|	& << \\
\verb|>>|	& >>
\end{tabular}  
\end{center}

% +\subsubsection{It's all $\Gamma\rho\epsilon\epsilon\kappa$ to me}
\subsubsection{É tudo \textgreek{Ellenik'a} para mim} % this requires greek babel.

Até agora, não tiramos nenhuma vantagem do facto de estarmos a utilizar um
 motor \TeX{} Unicode. Isto muda quando deixamos os caracteres latinos, e mudamos
para uma língua mais interessante, como o grego ou o russo. Com um sistema baseado em Unicode,
pode, simplesmente\footnote{Para pequenos valores de simples.} introduzir os
caracteres no seu editor, e o \TeX{} irá compreendê-los.

Escrever em várias línguas é simples, basta especificar as línguas no preâmbulo:
\begin{lscommand}
\verb|\setdefaultlanguage{english}|\\
\verb|\setotherlanguage[babelshorthands]{german}|
\end{lscommand}
Para escrever um parágrafo em alemão, pode usar o ambiente \texttt{german}:
\begin{lscommand}
English text.\\
\verb|\begin{german}|\\
Deutscher Text.\\
\verb|\end{german}|\\
More English text.
\end{lscommand}

Se só precisa de uma palavra numa língua estrangeira, pode usar o
comando \verb|\text|\emph{língua}:
\begin{lscommand}
\verb|English text. \textgerman{Gesundheit} is actually a German word.|
\end{lscommand}

Isto poder parecer desnecessário uma vez que a única vantagem é a hifenização
correcta, mas quando a segunda língua é um pouco mais exótica, valerá o esforço.

Por vezes, o tipo de letra usado no documento principal não contém os glifos que 
são necessários na segunda língua\footnote{O tipo Latin Modern não inclui letra
cirílicas}. A solução é definir um tipo de letra que será usado para essa língua.
Sempre que uma nova língua é activada, \pai{polyglossia} irá primeiro verificar
se existe um tipo de letra definido para essa língua.

\begin{lscommand}
\verb|\newfontfamily\russianfont[Script=Cyrillic,(...)]{(font)}|
\end{lscommand}
E agora, pode escrever
\begin{lscommand}
\verb|\textrussian{Pravda} é um jornal Russo.|
\end{lscommand}
Uma vez que este documento está escrito numa codificação baseada em Latin1, não
posso mostrar as letras cirílicas propriamente ditas.
\index{Russo}\index{Cirílico}

O pacote \pai{xgreek}\index{Grego}\cite{xgreek} oferece suporte para
escrever em grego antigo ou moderno (monotónico ou politónico).

\subsubsection{Da direita para a esquerda (RTL)}

Algumas línguas são escritas da esquerda para a direita, e outras são
escritas da direita para a esquerda (RTL). O \pai{polyglossia} precisa
do pacote \pai{bidi}\cite{bidi}\footnote{O \texttt{bidi} não suporta
  \hologo{LuaTeX}.} para suportar línguas RTL. O pacote deve ser o
último pacote a ser incluído, mesmo depois do pacote \pai{hyperref}
que, habitualmente, é o último pacote (e uma vez que o pacote
\pai{polyglossia} inclui o pacote \pai{bidi}, significa que o
\pai{polyglossia} deve ser o último pacote a ser incluído).

O pacote \pai{xpersian}\index{Persa}\cite{xpersian} oferece suporte
para a língua persa. Disponibiliza comandos \LaTeX{} que permitem a
introdução de comandos como \verb|\section| em persa, o que torna esta
ferramenta bastante atractiva para falantes nativos. O \pai{xepersian}
é o único pacote que suporta kashida\index{kashida} com
\hologo{XeLaTeX}. Um pacote para Sírio que usa um algoritmo semelhante
está a ser desenvolvido.

O tipo de letra IranNastaliq, disponibilizado pelo SCICT\footnote{Concílio Supremo
de Informação e Tecnologia da Comunicação} está disponível no seu sítio web:
\url{http://www.scict.ir/Portal/Home/Default.aspx}. 

O pacote \pai{arabxetex}\cite{arabxetex} suporta várias línguas com caracteres árabes:
 árabe\index{Árabe}, persa\index{Persa}, urdu\index{Urdu}, sindi\index{Sindi}, pashto\index{Pashto},
 otomano (turco)\index{Otomano}\index{Turco}, curdo\index{Curdo},
 kashmiri\index{Kashmiri}, malaio (jawi)\index{Malaio}\index{Jawi}, uigur\index{Uigur}.

Oferece mapeamentos de tipo de letra que permite ao \hologo{XeLaTeX} processar
texto usando a transcrição ASCII Arab\TeX.

Os tipos que suportam várias línguas árabes são oferecidos pelo
IRMUG\footnote{Grupo de Utilizadores Mac Iranianos} em
\url{http://wiki.irmug.org/index.php/X_Series_2}.

Não existem pacotes disponíveis para hebreu\index{Hebrew} porque não é necessário.
O suporte para hebreu presente no \pai{polyglossia} deve ser suficiente. Mas,
se precisar de um tipo de letra Unicode para hebrew, tente o SBL Hebrew. É livre
para uso não comercial, e está disponível em
+\url{http://www.sbl-site.org/educational/biblicalfonts.aspx}. Outro tipo de letra
disponível sob a licença Open Font é Ezra SIL, disponível em
\url{http://www.sil.org/computing/catalog/show_software.asp?id=76}.

Lembre-se de seleccionar o tipo correcto:
\begin{lscommand}
\verb|\newfontfamily\hebrewfont[Script=Hebrew]{SBL Hebrew}| \\
\verb|\newfontfamily\hebrewfont[Script=Hebrew]{Ezra SIL}|
\end{lscommand}

\subsubsection{Chinês, Japonês e Coreano (CJK)}
\index{Chinês}\index{Japonês}\index{Coreano}

O pacote \pai{xeCJK}\cite{xecjk} trata da selecção de tipo de letra e
pontuação destas línguas.


\section{O Espaço entre Palavras}

Para obter no resultado uma margem direita alinhada, o \LaTeX{} insere
várias quantidades de espaço entre palavras. Insere um pouco mais de
espaço no fim das frases, visto que faz o texto ficar mais legível. O
\LaTeX{} assume que as frases acabam com pontos finais, de
interrogação ou de exclamação. Se o ponto final seguir uma letra
maiúscula, esta não é tomada como um fim de frase, visto que pontos
após letras maiúsculas ocorrem, normalmente, em abreviaturas.

Alguma excepção a estas regras deve ser especificada pelo autor do
documento.  Um \textit{backslash} antes de um espaço gera um espaço
que não será alargado. Um til~`\verb|~|' gera um espaço que não pode
ser alargado e que, adicionalmente, proíbe uma mudança de linha na
respectiva posição.  O comando \verb|\@| antes de um ponto especifica
que esse ponto termina uma frase, mesmo que se lhe siga uma letra
maiúscula.  \cih{"@} \index{~@ \verb.~.} \index{til@til ( \verb.~.)}
\index{., espaço após}

\begin{example}
O Sr~Smith estava contente.\\
conforme a fig.~5\\
Eu gosto de BASIC\@. E tu?
\end{example}

O espaço adicional após pontos pode ser desactivado com o comando
\begin{lscommand}
\ci{frenchspacing}
\end{lscommand}
\noindent que diz ao \LaTeX{} para \emph{não} inserir mais espaço
depois de ponto do que em relação a qualquer outro caracter. Isto é
muito comum em línguas não inglesas, excepto em bibliografias. Se usar
\ci{frenchspacing}, o comando \verb|\@| não é necessário.
    
\section{Títulos, Capítulos e Secções}

Para ajudar o leitor a encontrar a linha de leitura ao longo do 
documento, deve dividi-lo em capítulos, secções e subsecções. O \LaTeX{}
permite que se faça isto com comandos especiais que tomam o título como
seu argumento. Agora, é consigo que os use na ordem correcta.

Os comandos de divisão do texto que estão disponíveis para a classe
\texttt{article} são: \nopagebreak
\begin{lscommand}
\ci{section}\verb|{...}|\\
\ci{subsection}\verb|{...}|\\
\ci{subsubsection}\verb|{...}|\\
\ci{paragraph}\verb|{...}|\\
\ci{subparagraph}\verb|{...}|
\end{lscommand}

Quando precisa de dividir o seu documento em partes sem influenciar a numeração
de secções ou capítulos pode usar
\begin{lscommand}
\ci{part}\verb|{...}|
\end{lscommand}

Se estiver a trabalhar com as classes \texttt{report} ou \texttt{book},
um comando adicional para seccionar ao nível de topo, torna-se disponível
\begin{lscommand}
\ci{chapter}\verb|{...}|
\end{lscommand}

Como a classe \texttt{article} não sabe nada acerca de capítulos, torna-se
muito fácil adicionar artigos como capítulos num livro.
O espaçamento entre secções, a numeração e o tamanho de letra dos títulos
serão colocados automaticamente pelo \LaTeX.

\pagebreak[3]
Dois destes comandos são ligeiramente especiais:
\begin{itemize}
\item O comando \ci{part} não influencia a numeração de sequência dos capítulos;
\item O comando \ci{appendix} não leva nenhum argumento. Apenas muda a numeração
  de capítulos para letras.\footnote{Para o estilo \texttt{article}, muda a 
   numeração de secções.}
\end{itemize}

O \LaTeX{} cria uma tabela de conteúdos pegando nos títulos de secção
e no número de página do último ciclo de compilação do documento. O
comando
\begin{lscommand} 
\ci{tableofcontents}
\end{lscommand} 
\noindent expande-se para uma tabela de conteúdos no sítio onde for
invocado. Um novo documento deve ser compilado (``\LaTeX ado'') duas
vezes para obter uma \wi{tabela de conteúdos} correcta. Algumas vezes, 
pode ser necessário compilar o documento uma terceira vez. O \LaTeX{}
avisará quando isto for necessário.

Todos os comandos listados acima também existem em versões
``estreladas''. Uma versão ``estrelada'' do comando é construída
adicionando uma estrela \verb|*| após o nome do comando. Estas versões
geram títulos que não aparecerão na tabela de conteúdos e que não
serão numerados. O comando \verb|\section{Ajuda}|, por exemplo, pode
passar a \verb|\section*{Ajuda}|.

Normalmente, o título da secção aparecerá na tabela de conteúdos exactamente
como introduziu no texto. Algumas vezes isto não é possível por o título
ser demasiado grande e a tabela de conteúdos não ficar legível. Então,
a entrada que aparecerá na tabela de conteúdos pode ser especificada
como um argumento opcional antes do verdadeiro título.

\begin{code}
\verb|\chapter[Título pequeno para a tabela de conteúdos]{Um |\\
\verb|  título grande e especialmente aborrecido, que aparece|\\
\verb|  na página propriamente dita.}|
\end{code} 

O \wi{título} do documento como um todo é gerado invocando o comando
\begin{lscommand}
\ci{maketitle}
\end{lscommand}
\noindent Os conteúdos do título têm de ser definidos pelos comandos
\begin{lscommand}
\ci{title}\verb|{...}|, \ci{author}\verb|{...}| 
e opcionalmente \ci{date}\verb|{...}| 
\end{lscommand}
\noindent antes de chamar o \verb|\maketitle|. No argumento de \ci{author}, pode
escrever vários nomes separados pelo comando \ci{and}.

Um exemplo de alguns dos comandos mencionados acima pode ser encontrado
na figura~\ref{document} da página~\pageref{document}.

Para além destes comandos, o \LaTeXe{} introduziu quatro comandos
adicionais para serem utilizados na classe \verb|book|. São úteis para
dividir a publicação.  Estes, alteram os cabeçalhos de capítulo e
numeração de página para funcionar da forma esperada para a publicação
de um livro:
\begin{description}
\item[\ci{frontmatter}] deve ser o primeiro comando após 
  o início do corpo do documento (\verb|\begin{document}|). Irá mudar a numeração de página para numerais
    romanos e as secções não serão numeradas, tal como se usasse a versão
    ``estrelada'' nos comandos de secção (exemplo \verb|\chapter*{Prefácio}|)
    mas as secções continuarão a aparecer no índice de conteúdos.

\item[\ci{mainmatter}] aparece exactamente antes do primeiro capítulo
do livro. Muda a numeração para numerais árabes e coloca o contador de
página a zero.

\item[\ci{appendix}] marca o início de material adicional no seu livro.
  Depois deste comando os capítulos serão numerados com letras.

\item[\ci{backmatter}] deve ser inserido antes dos últimos itens
  do seu livro como sejam a bibliografia e o índice. Nas classes
  de documento padrão não tem qualquer efeito visual.
\end{description}


\section{Referências Cruzadas}

Em livros, relatórios e artigos, existem frequentemente
\wi{referências cruzadas} para figuras, tabelas e segmentos especiais de texto.
O \LaTeX{} providencia os seguintes comandos para realizar referências cruzadas:
\begin{lscommand}
\ci{label}\verb|{|\emph{marca}\verb|}|, \ci{ref}\verb|{|\emph{marca}\verb|}| 
e  \ci{pageref}\verb|{|\emph{marca}\verb|}|
\end{lscommand}
\noindent onde \emph{marca} é um identificador escolhido pelo utilizador. O 
\LaTeX{} substitui \verb|\ref| pelo número da secção, subsecção, figura, tabela
ou teorema após o respectivo comando \verb|\label| que foi invocado. O \verb|\pageref|
imprime o número da página onde o comando \verb|\label| ocorreu.\footnote{Note que
estes comandos não sabem a que é que se referem. O \ci{label} apenas grava
o último número gerado.} Tal como os títulos de secções, os números utilizados
são os da compilação anterior.

\begin{example}
Uma referência para esta subsecção
\label{sec:esta} aparece como:
``ver secção~\ref{sec:esta} na
página~\pageref{sec:esta}.''
\end{example}
 
\section{Notas de Rodapé}
Com o comando
\begin{lscommand}
\ci{footnote}\verb|{|\emph{texto na nota de rodapé}\verb|}|
\end{lscommand}
\noindent é impressa uma nota de rodapé no fundo da página actual. Estas
notas devem ser postas\footnote{``postas'' pode ser uma forma do verbo pôr ou
apenas bocados de peixe.} após a palavra à qual a frase se refere. Notas de
rodapé que se referem a frases ou partes delas, devem ser colocadas após a
vírgula ou ponto. \footnote{Note que as notas de rodapé são distracções
para o leitor que o desviam do corpo principal do seu documento. Afinal,
toda a gente lê as notas de rodapé, somos uma espécie curiosa. Portanto,
porque não integrar tudo o que quer dizer no corpo do documento?\footnotemark}
\footnotetext{Uma carta não vai necessariamente para onde está endereçada :-).}


\begin{example}
As notas de rodapé\footnote{Isto é
  uma nova de rodapé.} são muito
  usadas por utilizadores \LaTeX.
\end{example}
 
\section{Palavras Realçadas}

Se um texto é escrito utilizando uma máquina de escrever, as palavras
importantes são \texttt{salientadas \underline{sublinhando-as}.}
\begin{lscommand}
\ci{underline}\verb|{|\emph{texto}\verb|}|
\end{lscommand}
Em livros impressos, no entanto, as palavras são realçadas escrevendo-as em
\emph{itálico}. O \LaTeX{} tem o comando
\begin{lscommand}
\ci{emph}\verb|{|\emph{texto}\verb|}|
\end{lscommand}
\noindent que salienta o texto. O que o comando faz, na verdade, depende
do seu contexto:

\begin{example}
\emph{Se utilizar este
  comando dentro de um bocado
  de texto realçado, então o
  \LaTeX{} usa o tipo de letra
  \emph{normal} para salientar.}
\end{example}

\section{Ambientes} \label{env}

% To typeset special purpose text, \LaTeX{} defines many different
% \wi{environment}s for all sorts of formatting:
\begin{lscommand}
\ci{begin}\verb|{|\emph{ambiente}\verb|}|\quad
   \emph{texto}\quad
\ci{end}\verb|{|\emph{ambiente}\verb|}|
\end{lscommand}
\noindent Onde \emph{ambiente} é o nome do ambiente. Os ambientes
podem ser chamados várias vezes uns dentro dos outros desde que a
ordem de chamada seja mantida.
\begin{code}
\verb|\begin{aaa}...\begin{bbb}...\end{bbb}...\end{aaa}|
\end{code}

\noindent Nas secções seguintes, todos os ambientes importantes serão explicados.

\subsection{Indicar, Enumerar, e Descrever}

O ambiente \ei{itemize} é útil para listas simples, o \ei{enumerate}
para listas enumeradas e o \ei{description} para descrições.

\cih{item}

\begin{example}
\flushleft
\begin{enumerate}
\item Pode misturar ambientes
de listas conforme o seu gosto:
\begin{itemize}
\item Mas pode começar a parecer
muito patético.
\item[-] Com um hífen,
\end{itemize}
\item Portanto, lembre-se:\ldots
\begin{description}
\item[Estúpido] um texto não se
transformará em algo inteligente
ao ser listado.
\item[Interessante] mas pode ser
apresentado lindamente numa lista.
\end{description}
\end{enumerate}
\end{example}
 
\subsection{Esquerda, Direita e Centro}

Dois ambientes, \ei{flushleft} e \ei{flushright} geram parágrafos que
estão alinhados à esquerda ou à direita.  O ambiente \ei{center} gera
texto centrado. Se não colocar \ci{\bs} para indicar as quebras de
linha, o \LaTeX{} irá determinar automaticamente onde elas devem
ocorrer.

\begin{example}
\begin{flushleft}
Este texto está\\ alinhado à 
esquerda. O \LaTeX{} não está
a tentar fazer cada linha do
mesmo tamanho.
\end{flushleft}
\end{example}

\begin{example}
\begin{flushright}
Este é um texto alinhado\\
à direita. O \LaTeX{} não está a 
tentar fazer cada linha do mesmo
comprimento.
\end{flushright}
\end{example}

\begin{example}
\begin{center}
No centro\\da terra
\end{center}
\end{example}

\subsection{Citações e Versos}

O ambiente \ei{quote} é útil para citações, frases importantes e
exemplos.

\begin{example}
Uma regra tipográfica para
o comprimento de uma linha é:
\begin{quote}
Em média, nenhuma linha deverá
exceder 66~caracteres.

É por isto que as páginas \LaTeX{}
têm margens tão grandes.
\end{quote}
Por isso é que a impressão em 
várias colunas é utilizada em
jornais.
\end{example}

Existem dois ambientes muito semelhantes: o \ei{quotation} e o
\ei{verse}. O primeiro é útil para citações longas que são
constituídas por vários parágrafos, porque os irá indentar. O ambiente
\texttt{verse} é útil para poemas onde as mudanças de linha são
importantes. As linhas são separadas enviando um \ci{\bs} no fim de
uma linha e uma linha em branco após cada verso.

\begin{example}
Só conheço um poema em inglês.
É sobre Humpty Dumpty.
\begin{flushleft}
\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{flushleft}
\end{example}

\subsection{Resumo}

Em publicações científicas é habitual iniciar com um resumo que dá ao
leitor uma visão rápida do que o espera. O \LaTeX{} dispõe do ambiente
\ei{abstract} para esta finalidade. Normalmente este ambiente é usado
em documentos escritos com a classe ``article'' de documentos.

\newenvironment{abstract}%
        {\begin{center}\begin{small}\begin{minipage}{0.8\textwidth}}%
        {\end{minipage}\end{small}\end{center}}
\begin{example}
\begin{abstract}
O resumo do resumo.
\end{abstract}
\end{example}

\subsection{Tal \& Qual}

Os textos escritos entre \verb|\begin{|\ei{verbatim}\verb|}| e
\verb|\end{verbatim}| serão passados directamente para o ficheiro de
resultado, como se o tivesse escrito numa máquina de escrever, com
todas as quebras de linha e espaços, sem que qualquer comando \LaTeX{}
seja executado.

Dentro de um parágrafo, um comportamento idêntico pode ser conseguido com
\begin{lscommand}
\ci{verb}\verb|+|\emph{texto}\verb|+|
\end{lscommand}
\noindent O sinal \verb|+| é apenas um exemplo de um delimitador. Pode utilizar
qualquer carácter excepto letras, \verb|*|, ou um espaço. A maior parte dos
exemplos \LaTeX{} são escritos com este comando.

\begin{example}
O comando \verb|\ldots| \ldots

\begin{verbatim}
10 PRINT "HELLO WORLD ";
20 GOTO 10
\end{verbatim}
\end{example}

\begin{example}
\begin{verbatim*}
A versão estrelada do
ambiente     verbatim  
assinala os    espaços
que aparecem  no texto
\end{verbatim*}
\end{example}

O comando \ci{verb} também pode ser estrelado:

\begin{example}
\verb*|desta   forma :-) |
\end{example}

O ambiente \texttt{verbatim} e o comando \verb|\verb| não devem ser utilizados
dentro de parâmetros de outros comandos.

\subsection{Tabelas}

O ambiente \ei{tabular} pode ser utilizado para imprimir lindas
\wi{tabela}s com linhas verticais e horizontais opcionais. O \LaTeX{}
determina a largura das colunas automaticamente.

\newcommand{\mfr}[1]{\framebox{\rule{0pt}{0.7em}\texttt{#1}}}

O argumento \emph{espec tabela} do comando
\begin{lscommand}
\verb|\begin{tabular}[|\emph{pos}\verb|]{|\emph{espec tabela}\verb|}|
\end{lscommand} 
\noindent  define o formato da tabela. Use um \mfr{l} para uma coluna de
texto alinhado à esquerda, \mfr{r} para texto alinhado à direita, e \mfr{c} para
texto centrado; \mfr{p\{\emph{largura}\}} para uma coluna a conter texto com quebras
de linha, e \mfr{|} para uma linha vertical.

Se o texto numa coluna é demasiado largo para a página, o \LaTeX{} não
o irá mudar de texto automaticamente. Usando \mfr{p\{\emph{largura}\}}
pode definir um tipo de coluna que irá funcionar como um parágrafo normal.

O argumento \emph{pos} especifica a posição vertical da tabela relativamente à
linha base do texto envolvente. Use as letras
\mfr{t}, \mfr{b} e \mfr{c} para especificar o alinhamento da tabela
no topo, fundo ou ao centro.

Dentro de um ambiente \texttt{tabular}, o \texttt{\&} salta para a
próxima coluna, \ci{\bs} inicia uma nova linha e \ci{hline} insere uma
linha horizontal.  Adicione linhas parciais usando
\ci{cline}\texttt{\{}$j$\texttt{-}$i$\texttt{\}}, onde $j$ e $i$ são
os números das colunas de onde e para onde a linha se deve estender.

\index{"|@ \verb."|.}

\begin{example}
\begin{tabular}{|r|l|}
\hline
7C0 & hexadecimal \\
3700 & octal \\ \cline{2-2}
11111000000 & binário \\
\hline \hline
1984 & decimal \\
\hline
\end{tabular}
\end{example}

\begin{example}
\begin{tabular}{|p{4.7cm}|}
\hline
Bem-vindo ao parágrafo do Boxy.
Esperamos sinceramente que
se divirta com o espectáculo.\\
\hline 
\end{tabular}
\end{example}

O separador de coluna pode ser especificado com o construtor
\mfr{@\{...\}}.  Este comando mata o espaço entre colunas e substitui-o
com o que quer que esteja entre as chavetas. Um uso comum para este
comando é explicado de seguida no problema de alinhamento de casas
decimais. Outra aplicação possível é a supressão de espaços numa
tabela com \mfr{@\{\}}.

\begin{example}
\begin{tabular}{@{} l @{}}
\hline 
sem espaço inicial\\
\hline
\end{tabular}
\end{example}

\begin{example}
\begin{tabular}{l}
\hline
espaço à esquerda e à direita\\
\hline
\end{tabular}
\end{example}

%
% This part by Mike Ressler
%

\index{alinhamento decimal} 
Uma vez que não existe uma forma definida pelo \LaTeX{} para alinhar
colunas numericamente pelo ponto decimal,\footnote{Se tiver o 
pacote de pacotes `tools' instalado no sistema, dê uma olhadela
ao pacote \pai{dcolumn}.} pode fazer ``batota'' utilizando duas colunas:
uma alinhada à direita com a parte inteira e uma alinhada à esquerda com
a parte decimal. O comando \verb|@{.}| substitui o espaço normal entre
colunas com um ``.'', apenas, dando a aparência visual de uma única tabela
alinhada pelo ponto decimal. Não se esqueça de substituir o ponto decimal
nos números com o separador de coluna (\verb|&|)! Um título para o par
de colunas pode ser colocado acima da nossa ``coluna'' numérica usando
o comando \ci{multicolumn}.

\begin{example}
\begin{tabular}{c r @{.} l}
Expressão Pi       &
\multicolumn{2}{c}{Valor} \\
\hline
$\pi$               & 3&1416  \\
$\pi^{\pi}$         & 36&46   \\
$(\pi^{\pi})^{\pi}$ & 80662&7 \\
\end{tabular}
\end{example}

\begin{example}
\begin{tabular}{|c|c|}
\hline
\multicolumn{2}{|c|}%
     {\textbf{Ene}}\\
\hline
Mene & Muh! \\
\hline
\end{tabular}
\end{example}

Texto escrito no ambiente tabular fica sempre junto numa única página.
Se quer escrever tabelas longas, possivelmente deverá dar uma olhadela
ao pacote \pai{longtable}.

Por vezes as tabelas em \LaTeX{} parecem um bocado apertadas. Se lhe quiser
dar mais espaço, altere os valores das variáveis 
\ci{arraystretch} e \ci{tabcolsep}.

\begin{example}
\begin{tabular}{|l|}
\hline
Estas linhas\\\hline
estão apertadas\\\hline
\end{tabular}

{\renewcommand{\arraystretch}{1.5}
\renewcommand{\tabcolsep}{0.2cm}
\begin{tabular}{|l|}
\hline
modelo de tabela\\\hline
menos constrangido\\\hline
\end{tabular}}
\end{example}

Se quiser apenas aumentar a altura de uma linha da sua tabela, adicione uma barra vertical
invisível{Nos meios profissionais de tipografia, a estes objectos é chamado \wi{strut}.}.
Use o valor zero como largura da régua \ci{rule} para implementar este truque.

\begin{example}
\begin{tabular}{|c|}
\hline
\rule{1pt}{4ex}Pitprop \ldots\\
\hline
\rule{0pt}{4ex}Strut\\
\hline
\end{tabular}
\end{example}

O \texttt{pt} e \texttt{em} no exemplo acima são unidades \TeX. Leia mais sobre
unidades na tabela~\ref{units} na página~\pageref{units}.

\section{Corpos Flutuantes}

Hoje, a maior parte das publicações contém um grande número de figuras
e tabelas.  Estes elementos precisam de um tratamento especial, porque
não podem ser partidos entre páginas. Uma maneira seria começar uma nova
página sempre que uma figura ou uma tabela é demasiado grande para
caber na página actual. Esta abordagem pode deixar páginas
parcialmente vazias, o que fica muito mal.

A solução para este problema é fazer as figuras ou tabelas que não
cabem na página actual ``flutuar'' para uma página posterior, enquanto
se preenche a página actual com o texto seguinte. O \LaTeX{} oferece
dois ambientes para \wi{corpos flutuantes}; um para tabelas e um para
figuras. Para ter todas as vantagens destes dois ambientes, é
importante perceber de uma forma aproximada como o \LaTeX{} maneja
estas flutuações internamente.  Doutro modo, estes elementos podem vir
a ser uma grande fonte de frustração porque o \LaTeX{} nunca os
colocará onde os deseja.

\bigskip

Primeiro, vamos dar uma vista de olhos aos comandos que o \LaTeX{}
a\-pre\-sen\-ta para corpos flutuantes:

Qualquer material incluso num ambiente \ei{figure} ou \ei{table} será
tratado como uma matéria flutuante. Ambos os ambientes suportam parâmetros
adicionais
\begin{lscommand}
\verb|\begin{figure}[|\emph{especificação de colocação}\verb|]|
\verb|\begin{table}[|\ldots\verb|]|
\end{lscommand}
\noindent chamados de \emph{especificação de colocação}. Estes parâmetros
são usados para dizer ao \LaTeX{}  a localização para a qual o corpo
flutuante se pode mover. A \emph{especificação de colocação} é construída
por um conjunto de caracteres de \emph{permissões de colocação de corpos flutuantes}.
Veja a tabela~\ref{tab:permiss}.

\begin{table}[!bp]
\caption{Permissões de Colocação de Corpos Flutuantes.}\label{tab:permiss}
\noindent \begin{minipage}{\textwidth}
\medskip
\begin{center}
\begin{tabular}{@{}cp{8cm}@{}}
Espec.&Permissão para colocar em\ldots\\
\hline
\rule{0pt}{1.05em}\texttt{h} & \emph{here} --- \emph{aqui} neste exacto local
  onde ocorreu no meio do texto. É útil para pequenos objectos.\\[0.3ex]

\texttt{t} & no \emph{topo} da página\\[0.3ex]
\texttt{b} & no \emph{fundo} (\emph{bottom}) da página\\[0.3ex]
\texttt{p} & numa \emph{página} especial apenas com corpos flutuantes..\\[0.3ex]
\texttt{!} & sem considerar a maior parte dos parâmetros internos\footnote{Como o número
    máximo destes objectos permitidos por página.} que podem fazer com que o corpo
  flutuante não seja colocado.
\end{tabular}
\end{center}
\end{minipage}
\end{table}

Por exemplo, uma tabela pode ser iniciada com a seguinte linha{}
\begin{code}
\verb|\begin{table}[!hbp]|
\end{code}
\noindent A \wi{especificação de colocação} \verb|[!hbp]| indica ao \LaTeX{} para
colocar a tabela exactamente aqui (\texttt{h}) ou no fundo (\texttt{b}) de alguma
página ou em alguma página especial para corpos flutuantes (\texttt{p}), e tudo isto 
mesmo que não fique muito bonito (\texttt{!}). Se nenhuma especificação for dada,
é assumida a \verb|[tbp]|.

O \LaTeX{} irá colocar cada corpo flutuante de acordo com a
especificação de colocação dada pelo autor. Se um destes não pode ser
colocado na página actual, será enviado para a fila de espera
correspondente\footnote{Estas filas são FIFO---`first in first out', o
primeiro a entrar é o primeiro a sair} (para figuras ou tabelas).
Quando uma nova página é iniciada, o \LaTeX{} verifica primeiro se é
possível preencher uma página especial de `flutuações' com os objectos
da lista de espera. Se isto não é possível, o primeiro objecto de cada
uma das filas de espera é tratado como se tivesse ocorrido naquele
momento no texto: o \LaTeX{} tenta de novo colocar de acordo com a
respectiva especificação de colocação (excepto o `h,' que não volta a
ser válido). Qualquer objecto que ocorra no texto será enviado para a
fila de espera. O \LaTeX{} mantém estritamente a ordem original em que
aparecem cada um dos tipos de objectos flutuantes. Esta é a razão pela
qual uma figura que não pode ser colocada empurra todas as outras
figuras para o fim do documento. Portanto:

\begin{quote}
Se o \LaTeX{} não está a colocar os objectos flutuantes como es\-pe\-ra\-va
é normal que seja apenas um deles numa das filas de espera que esteja a
empatar o serviço!
\end{quote}                 

Enquanto que é possível dar ao \LaTeX{} especificadores de colocação
únicos, isto causa problemas. Se o objecto não cabe na localização
pretendida, fica preso, a bloquear os objectos seguintes. Em
particular, nunca deve utilizar apenas a opção \texttt{[h]}---esta é
tão má que em versões recentes do \LaTeX{} é automaticamente
substituída por \texttt{[ht]}.

\bigskip
\noindent Depois de ter explicado a parte difícil, aqui estão mais
algumas coisas a mencionar sobre os ambientes \ei{table} e \ei{figure}.
Com o comando
\begin{lscommand}
\ci{caption}\verb|{|\emph{legenda}\verb|}|
\end{lscommand}

\noindent pode definir uma legenda para o objecto. Um número será
automaticamente criado juntamente com o texto ``Figure'' ou ``Table''
e adicionado no início da legenda.

Os dois comandos

\begin{lscommand}
\ci{listoffigures} e \ci{listoftables} 
\end{lscommand}

\noindent funcionam de forma análoga ao comando \verb|\tableofcontents|,
imprimindo uma lista de figuras ou tabelas, respectivamente. Nestas listas,
a legenda completa será repetida. Se tem tendência a usar grandes legendas,
deve definir uma versão mais curta para as listas. Isto pode ser feito
introduzindo a versão mais pequena entre parêntesis rectos depois
do comando \verb|\caption|.
\begin{code}
\verb|\caption[Pequeno]{Looooooooooooooooooongoooooooooooo}| 
\end{code}

Com \ci{label} e \ci{ref}, pode criar uma referência para o corpo 
flutuante no meio do texto. Tenha em atenção que o comando \ci{label} deve
ser invocado \emph{depois} do comando \ci{caption} (ou dentro dele), para que
o \LaTeX{} possa referenciar o número dessa legenda.

O seguinte exemplo desenha um quadrado e insere-o no documento.
Pode usar isto se desejar reservar espaço para imagens que vai
colar no documento pronto.

\begin{code}
\begin{verbatim}
Figura~\ref{branco} é um exemplo de Arte-Pop.
\begin{figure}[!htbp]
\makebox[\textwidth]{\framebox[5cm]{\rule{0pt}{5cm}}}
\caption{Cinco por Cinco em Centímetros.\label{branco}} 
\end{figure}
\end{verbatim}
\end{code}

\noindent No exemplo anterior, o
\LaTeX{} irá tentar \emph{mesmo}~(\texttt{!}) colocar a figura justamente
\emph{aqui}~(\mfr{h}).\footnote{assumindo que a fila de espera de figuras está
vazia.} Se isto não é possível, então tenta colocar a figura no 
\emph{fundo}~(\mfr{b}) da página. Se falhar a colocação da figura
na página actual, determina se é possível criar uma página de corpos
flutuantes que contenha esta figura e possivelmente algumas tabelas da
fila de espera respectiva. Se não existir material suficiente para esta
página especial, o \LaTeX{} inicia uma nova página, e uma vez mais trata-a como
se tivesse ocorrido nesse momento no texto.

Em algumas circunstâncias, pode ser necessário usar o comando

\begin{lscommand}
\ci{clearpage} ou mesmo o \ci{cleardoublepage} 
\end{lscommand}

\noindent que ordenam o \LaTeX{} a colocar imediatamente no documento
todos os obje\-ctos restantes das filas de espera e depois iniciar uma
nova página.  O \ci{cleardoublepage} obriga a começar a página do lado
direito.

Irá aprender a incluir desenhos \PSi{} no seu documento
\LaTeX{} mais tarde nesta introdução.

\section{Protegendo Comandos Frágeis}

O texto dado como argumento de comandos como \ci{caption} ou \ci{section}
pode aparecer mais do que uma vez no documento (exemplo, na tabela de conteúdos
assim como no corpo do documento). Alguns comandos falham quando usados no argumento
de outros comandos do tipo \ci{section}. A compilação do seu documento irá falhar.
Estes são chamados \wi{comandos frágeis}.
Por exemplo, os comandos \ci{footnote} ou \ci{phantom} são frágeis. O que estes
comandos precisam para funcionar é de protecção (não precisamos todos?). Pode
protegê-los usando o comando \ci{protect} antes deles, e passarão a funcionar
correctamente, mesmo em argumento que se movem.

O \ci{protect} apenas se refere ao comando que se lhe segue, nem
sequer ao seu argumento. Em muitos casos, um \ci{protect} supérfluo
não magoará ninguém.

\begin{code}
\verb|\section{Estou a considerar|\\
\verb|            \protect\footnote{proteger a minha nota}}|
\end{code}

%%% Local Variables: 
%%% mode: latex
%%% TeX-master: "lshort"
%%% En

