





























Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Curso de LaTex.
Tipologia: Notas de aula
1 / 37
Esta página não é visível na pré-visualização
Não perca as partes importantes!






























TEX (Pronuncia-se “tek”) ´e um sistema de diagrama¸c˜ao de textos criado no final da d´ecada de 1970 por Donald Knuth. De acordo com o pr´oprio autor, “(TEX is) a typesetting system intended for the creation of beautiful books and specially for books that contain a lot of mathematics.” TEX oferece um grande controle sobre a estrutura do documento a ser editado e, justamente por isso, traz uma complexidade na edi¸c˜ao indesej´avel a maioria dos usu´arios comuns. LATEX ´e um conjunto de macros escritas para o TEX que permite a di- agrama¸c˜ao de textos na mais alta qualidade tipogr´afica, usando um layout profissional pr´e-definido. Foi elaborado em meados da d´ecada de 1980 por Laslie Lamport, e desde ent˜ao tornou-se muito popular na diagrama¸c˜ao de livros, artigos, journals e documentos cient´ıficos e matem´aticos em geral. Este manual, que ´e uma adapta¸c˜ao de The Not So Short Introduction to LATEX 2ε [1], ´e destinadoaqueles que desejam iniciar sua jornada pelo mundo do LATEX, procurando uma solu¸c˜ao de melhor qualidade visual, ou uma alter- nativa pr´atica e elegante aos editores WYSIWYG^1 ou mais especificamente ao MS-Worst. Por ser direcionado a iniciantes, este manual centralizar´a seus esfor¸cos nos conceitos b´asicos e em exemplos, n˜ao cobrindo t´opicos avan¸cados. Aqueles que desejarem aprofundar seus conhecimentos devem procurar os livros e manuais citados na bibliografia (a maioria deles est´a dispon´ıvel gratuitamente em formato eletrˆonico na web).
Cap´ıtulo 1 oferece uma compara¸c˜ao entre o sistema LATEX e os sistemas WYSIWYG, al´em de mostrar a estrutura b´asica de um documento LATEX 2ε^2 , explicando o processo de “compila¸c˜ao” deste tipo de docu- mento.
Cap´ıtulo 2 apresenta o restante dos conceitos necess´arios para editar um texto no mundo real.
Cap´ıtulo 3 mostra algumas caracter´ısticas especiais, como inclus˜ao de ima- gens e gera¸c˜ao de bibliografia, al´em de mostrar algumas dicas de como alterar o visual padr˜ao dos documentos LATEX
Cap´ıtulo 4 apresenta aspectos sobre o modo matem´atico do LATEX
Apˆendice A trata da instala¸c˜ao e configura¸c˜ao de um sistema LATEX em um PC rodando Windows. (^1) What You See Is What You Get, O que vocˆe vˆe na tela ´e o que ser´a impresso. (^2) LATEX 2ε ´e o nome da ´ultima atualiza¸c˜ao do sistema LATEX, atualmente mantido pelo grupo LATEX3.
Em um sistema WYSIWYG, como o MS-Worst ou o Corel Word Perfect, o autor define o layout do documento atrav´es de comandos interativos enquanto digita o texto na tela. O resultado final da formata¸c˜ao ´e visualizado durante todo o processo. O que ´e visto na tela ´e o que ser´a impresso. Os comandos para modificar o layout s˜ao bastante intuitivos de compreens˜ao f´acil. Por que algu´em iria querer algo diferente? Normalmente os documentos editados com WYSIWYG s˜ao verdadeiras obras de arte. V´arios tamanhos e faces de fontes diferentes, tamanhos de p´agina n˜ao-ortodoxos (“Se eu aumentar um pouco o tamanho da p´agina e diminuir o tamanho da fonte, esta se¸c˜ao vai caber em uma p´agina...”), e n˜ao raramente cores, muitas cores. Obviamente isto n˜ao ´e uma regra absoluta, mas neste tipo de editor, parece ser muito mais f´acil fazer a coisa errada. Mesmo aqueles poucos que tem um senso est´etico apurado s˜ao castigados pela (falta de) filosofia destes editores. Em LATEX, o autor n˜ao se preocupa com a formata¸c˜ao durante a digita¸c˜ao do texto. O importante ´e a estrutura l´ogica, e esta ´e talvez a grande for¸ca deste sistema, j´a que for¸ca o autor a criar documentos bem estruturados. Uma vez definidos os cap´ıtulos, se¸c˜oes, subse¸c˜oes, cita¸c˜oes, f´ormulas, bibli- ografia, etc., entra em cena o formatador, que escolhe, a partir de algumas diretivas, o melhor layout para o documento. O resultado final ´e um docu- mento com aparˆencia profissional e logicamente consistente. Para efeito de compara¸c˜ao, seguem algumas vantagens de LATEX sobre WYSIWYG (e o oposto) [1]. Vantagens:
Todo o texto em uma linha inserido ap´os um % ´e ignorado pelo LATEX (incluindo a quebra de linha). Isto pode ser usado para inserir coment´arios em um texto que n˜ao aparecer˜ao na vers˜ao para impress˜ao.
1.3 Estrutura dos Arquivos de Entrada
Todo arquivo de entrada do LATEX inicia com um preˆambulo, que ´e cons- titu´ıdo por uma s´erie de comandos que especificam a formata¸c˜ao do do- cumento. Os preˆambulos do LATEX 2ε s˜ao iniciados por um comando que especifica o tipo de documento que ser´a criado:
\documentclass{...}
Al´em de diretivas para formata¸c˜ao, o preˆambulo tamb´em pode conter comandos para inclus˜ao de pacotes, que modificam a estrutura global do documento ou adicionam novos comandos:
\usepackage{...}
O fim do preˆambulo e in´ıcio do documento propriamente dito ´e marcado pelo comando:
\begin{document}
O corpo do documento ´e constitu´ıdo pelo texto e comandos LATEX para inclus˜ao de f´ormulas matem´aticas, cita¸c˜oes, tabelas, c´odigo de programa¸c˜ao, figuras, etc. O final do documento ´e marcado pelo comando:
\end{document}
Um arquivo de entrada m´ınimo de entrada pode ser:
\documentclass{article} % pre^ambulo \begin{document} I wanna see monkeys. % corpo do documento \end{document}
Agora um mais complicado:
\documentclass[a4paper,11pt]{article} % tipo de documento \author{Bart Simpson} % define o autor \title{Why I want to go to Brazil} % define o t´ıtulo \begin{document} \maketitle % produz o t´ıtulo \tableofcontents % insere o sum´ario \section{Wild Life} % inicia uma se¸c~ao I wanna see monkeys. \section{Carnival} % outra se¸c~ao I wanna see dancing monkeys. \end{document}
1.4 Compila¸c˜ao
Chegou a hora de compilar seu primeiro documento LATEX. Existem front-ends gr´aficos, como o WinEdt, com os quais ´e poss´ıvel compilar seu documento atrav´es de bot˜oes e itens de menu, mas o sistema LATEX em si ´e simplesmente um programa de linha de comando que produz um arquivo de visualiza¸c˜ao/impress˜ao a partir de um arquivo .tex de texto plano. Mas “Homens de verdade n˜ao clicam”[1, p. 9] , ent˜ao vamos executar o processo de compila¸c˜ao via linha de comando. A descri¸c˜ao deste processo assume que h´a uma distribui¸c˜ao do LATEX instalada e devidamente configurada em seu computador.
latex teste.tex
yap teste.dvi % para visualizar
dvips teste.dvi % para converter para .ps
1.5 Layout
A primeira informa¸c˜ao inclu´ıda em um preˆambulo de documento LATEX ´e o tipo ou classe de documento a ser criado, que ´e especificado pelo comando \documentclass[parametro,parametro]{classe}. As classes (especifica- das entre chaves) do documento s˜ao fornecidas juntamente com a distribui¸c˜ao LATEX. As mais comuns s˜ao:
article para artigos em journals cient´ıficos, relat´orios curtos,...
report para relat´orios longos contendo v´arios cap´ıtulos, teses de doutorado,
...
book para livros.
slides para transparˆencias.
Areas espec´^ ´ ıficas de editora¸c˜ao, como inclus˜ao de gr´aficos, texto colorido, hyperlinks ou c´odigo fonte n˜ao tem suporte nativo no LATEX. Para incluir estas especialidades, ´e necess´ario o uso de pacotes, que s˜ao expans˜oes do LATEX b´asico. Pacotes s˜ao ativados com o comando:
\usepackage[opcoes]{pacote}
Muitos pacotes s˜ao fornecidos com a distribui¸c˜ao b´asica, e outros s˜ao disponibilizados separadamente. Instru¸c˜oes a respeito da instala¸c˜ao de novos pacotes em seu sistema podem ser obtidas em [2]. Alguns dos pacotes mais comuns s˜ao:
inputenc Permite a especifica¸c˜ao da codifica¸c˜ao de entrada, como ASCII, ANSI-Windows, ISO Latin-1, Apple Macintosh, Next, ou uma definida pelo usu´ario. Este pacote ´e especialmente ´util para documentos em portuguˆes, j´a que permite o processamento de caracteres acentuados.
fontenc Especifica a codifica¸c˜ao de fonte a ser usada.
ifthen Permite comandos da forma if-then-else.
babel Modifica os strings pr´e-definidos^2 e as regras de hifeniza¸c˜ao de acordo com a localidade de entrada.
1.6 Arquivos
O LATEX trabalha com uma grande quantidade de arquivos com extens˜oes diversas, que podem facilmente assustar um iniciante. Algumas das extens˜oes mais encontradas est˜ao listadas a seguir.
.tex Arquivo fonte TEX ou LATEX, que pode ser compilado com o comando latex.
.ltx Alternativa `a extens˜ao anterior .tex, somente para LATEX.
.sty Pacote de macros, pode ser usado com o comando usepackage.
.cls Arquivos de classe, definem a aparˆencia final do documento. Podem ser usados com o comando documentclass Os seguintes arquivos s˜ao gerados no processamento de um arquivo fonte.
.dvi Device Independent File ou Arquivo Independente de Dispositivo. Prin- cipal formato de distribui¸c˜ao de documentos LATEX.
.log Log do que ocorreu na ´ultima compila¸c˜ao
.toc Guarda os t´ıtulos de se¸c˜oes. E usado na pr´´ oxima compila¸c˜ao para gerar o sum´ario. (^2) Sum´ario, Lista de Figuras, Data,...
.lof Semelhante ao .toc, armazena t´ıtulos de tabelas.
.lot O mesmo, para figuras.
.aux Usado para transportar informa¸c˜oes como referˆencias cruzadas de uma compila¸c˜ao para outra.
.idx Arquivo de ´ındice.
.ind Arquivo de ´ındice processado, pronto para inclus˜ao na pr´oxima com- pila¸c˜ao.
1.7 Divis˜ao de Projetos
Ao trabalhar com projetos grandes, pode ser ´util dividir o documento em v´arias partes. H´a dois comandos em LATEX para juntar as partes: \include{file} insere uma quebra de p´agina e o arquivo de com nome file.tex no documento. \input{file} simplesmente insere o arquivo file.tex no documento.
O til ´e muito usado em endere¸cos da internet. Pode-se usar ~, mas o resultado (˜) pode n˜ao ser o esperado:
http://www.rico.edu/~{}bush http://www.rico.edu/˜bush
http://www.inteligente.edu/$\sim$democrata http://www.inteligente.edu/∼democrata
Em uma m´aquina de escrever, pontos e v´ırgulas ocupam o mesmo espa¸co que letras, o que n˜ao acontece em editora¸c˜ao, onde estes caracteres ocupam muito pouco espa¸co. Sendo assim, n˜ao ´e poss´ıvel inserir reticˆencias simples- mente digitando trˆes pontos. H´a um comando especial para isto (\ldots).
N~ao assim... mas assim: N˜ao assim... mas assim: Jo~ao, Maria, Jos´e, \ldots Jo˜ao, Maria, Jos´e,...
2.3 Edi¸c˜ao em Portuguˆes
Para a edi¸c˜ao em l´ınguas diferentes do inglˆes, o LATEX precisa ser confi- gurado em duas ´areas:
Caso o sistema j´a esteja devidamente configurado, ´e poss´ıvel acionar o pacote Babel incluindo a seguinte linha no preˆambulo. \usepackage[lingua]{babel}^2
O TEX original suportava somente os 128 caracteres do c´odigo ASCII ori- ginal e a acentua¸c˜ao era conseguida atrav´es da sobreposi¸c˜ao de caracteres. Por exemplo, \’o produzia ´o. Este tipo de constru¸c˜ao ainda ´e v´alido, mas a partir do lan¸camento do LATEX 2ε, v´arias codifica¸c˜oes de caracteres s˜ao supor- tadas atrav´es do pacote inputenc, tornando poss´ıvel a inser¸c˜ao de caracteres acentuados diretamente no texto. Este pacote pode ser usado incluindo no preˆambulo a linha:
(^1) Nomes de Se¸c˜oes, Sum´ario, Bibliografia, etc. (^2) No caso do Portuguˆes Brasileiro, lingua deve ser substitu´ıda por brazil
\usepackage[codificacao]{inputenc} Ao usar o pacote inputenc deve-se levar em conta que ´e poss´ıvel que outras pessoas n˜ao consigam ler seus arquivos de entrada, por usarem uma codifica¸c˜ao diferente. Por exemplo, ¨a ´e codificado como 132 em um PC, mas em alguns sistemas UNIX usando ISO-LATIN 1 ´e codificado como 228. A tabela a seguir apresenta algumas codifica¸c˜oes que podem ser utilizadas no parˆametro codificacao do inputenc.
Sistema Operacional codifica¸c˜ao Mac applemac Unix latin Windows ansinew OS/2 cp
Outro problema da acentua¸c˜ao ´e que internamente, caracteres acentua- dos ainda ser˜ao produzidos atrav´es de combina¸c˜oes entre caracteres, j´a que a codifica¸c˜ao de fonte default do LATEX somente suporta o c´odigo ASCII de 7 bits. A conseq¨uˆencia disso ´e que palavras acentuadas n˜ao podem ser hife- nizadas, o que pode causar problemas est´eticos no documento. Isto pode ser contornado com o uso de outra codifica¸c˜ao de fonte, com o pacote fontenc. A codifica¸c˜ao EC tem aparˆencia idˆentica `a Computer Modern (a codi- fica¸c˜ao original do TEX), mas tem suporte nativo para a maioria das l´ınguas latinas, possibilitando a hifeniza¸c˜ao de palavras acentuadas. Esta pode ser usada usando o pacote fontenc com o parˆametro T1: \usepackage[T1]{fontenc}
2.4 T´ıtulos, Cap´ıtulos e Se¸c˜oes
Para facilitar a compreens˜ao do leitor, um texto deve ser dividido em cap´ıtulos, se¸c˜oes e subse¸c˜oes. O LATEX suporta esta divis˜ao atrav´es de co- mandos que tomam como parˆametro o t´ıtulo da se¸c˜ao. As seguintes divis˜oes est˜ao dispon´ıveis na classe article: \section{...} \subsection{...} \subsubsection{...} \paragraph{...} \subparagraph{...} Dois comandos adicionais s˜ao suportados pelas classe book e report: \part{...} \chapter{...} O espa¸camento entre se¸c˜oes, a numera¸c˜ao e o tamanho da fonte ser˜ao ajustados automaticamente, de acordo com a classe do documento. Existe ainda o comando \appendix, que n˜ao tem argumentos, e muda a numera¸c˜ao dos cap´ıtulos (ou se¸c˜oes, na classe article) para letras. O LATEX cria o sum´ario tomando o nome das se¸c˜oes e o n´umero das p´aginas gerados na ´ultima compila¸c˜ao. O comando \tableofcontents insere o sum´ario gerado no documento. Para gerar um sum´ario correto, ´e necess´ario compilar o documento 2 ou 3 vezes.
2.8 Ambientes
Ambientes s˜ao utilizados atrav´es de um par
\begin{ambiente} % conteudo \end{ambiente}
Os principais ambientes s˜ao explicados nas subse¸c˜oes seguintes.
O ambiente itemize pode ser utilizado para listas, enumerate para listas numeradas e description para descri¸c˜oes:
\begin{enumerate} \item Voc^e pode misturar os ambientes de lista como desejar \begin{itemize} \item Mas pode come¸car a ficar meio bobo. \item[-] Com um h´ıfen. \end{itemize} \item Portanto lembre-se \begin{description} \item[Coisas idiotas] n~ao v~ao ficar interessantes s´o por estarem em uma lista. \item[Coisas Inteligentes] podem ser muito bem apresentadas em uma lista \end{description} \end{enumerate}
Coisas idiotas n˜ao v˜ao ficar interessantes s´o por estarem em uma lista. Coisas inteligentes podem ser muito bem apresentadas em uma lista.
Os ambientes flushleft e flushright alinham o texto a esquerda ea direita, respectivamente. O center centraliza o texto. Nestes ambientes, o LATEX n˜ao tenta fazer todas as linhas do mesmo tamanho:
\begin{flushleft} Este texto est´a\ alinhado `a esquerda. O \LaTeX{} n~ao est´a tentando fazer as linhas do mesmo tamanho. \end{flushleft}
Este texto est´a alinhado `a esquerda. O LATEX n˜ao est´a tentando fazer as linhas do mesmo tamanho.
\begin{flushright} Este texto est´a\ alinhado `a direita. O \LaTeX{} n~ao est´a tentando fazer as linhas do mesmo tamanho. \end{flushright}
Este texto est´a alinhado `a direita. O LATEX n˜ao est´a tentando fazer as linhas do mesmo tamanho.
\begin{center} No centro \ da Terra. \end{center}
No centro da Terra.
O ambiente quote ´e ´util para cita¸c˜oes, frases importantes ou exemplos:
Uma regra para o comprimento de linha em tipografia ´e \begin{quote} Na m´edia, nenhuma linha deve ter mais de 66 caracteres \end{quote} ´E por isso que as p´aginas do \LaTeX{} tem margens t~ao grandes e
por que eles usam v´arias colunas em jornais.
Uma regra para o comprimento de linha em tipografia ´e
Na m´edia, nenhuma linha deve ter mais de 66 caracteres
E por isso que as p´´ aginas do LATEX tem margens t˜ao grandes e por que eles usam v´arias colunas em jornais. Para poemas, onde a quebra de linhas ´e importante, existe o ambiente verse:
\begin{verse} Rosas s~ao verdes, \ Violetas s~ao azuis. \ Feliz Dia das Bruxas, \ Querida Professora. \ \end{verse}
Rosas s˜ao verdes, Violetas s˜ao azuis. Feliz Dia das Bruxas, Querida Professora.
O separador de colunas pode ser alterado atrav´es de um @{}, onde o valor entre chaves ser´a o novo separador.
\begin{tabular}{@{} l @{}} \hline sem espa¸co entre colunas\ \hline \end{tabular}
sem espa¸co entre colunas Atrav´es do comando \multicolumn{n}{alinhamento}{conteudo} pode- se escrever atrav´es de duas ou mais colunas:
\begin{tabular}{|c|c|c|} \hline Ano & \multicolumn{2}{|c|}{´Indice Acad^emico} \ \cline{2-3} & I.A. & I.A.A \ \hline 2001 & 10.0 & 9.99 \ \hline 2002 & 9.99 & 9.98 \ \hline \end{tabular}
Ano ´Indice Acadˆemico I.A. I.A.A 2001 10.0 9. 2002 9.99 9. O ambiente tabular n˜ao permite tabelas em v´arias p´aginas, o que pode ser obtido com os ambientes supertabular e longtabular. Para exemplos de uso destes ambientes, al´em de outros exemplos de tabelas, consulte [3].
2.9 Corpos Flutuantes
Corpos flutuantes s˜ao figuras ou tabelas, posicionadas de maneira a oti- mizar a ocupa¸c˜ao das p´aginas. Estes elementos n˜ao podem conter quebras de p´agina, e s˜ao inseridos pelo LATEX em uma fila de coloca¸c˜ao. De acordo com alguns parˆametros especificados pelo usu´ario (veja Tab. 2.1), os corpos flutuantes s˜ao posicionados no documento. Para evitar que os corpos flutu- antes tornem-se uma grande fonte de frustra¸c˜ao (o LATEX nunca os posiciona onde vocˆe deseja), ´e importante entender um pouco do mecanismo interno de posicionamento de floats. Os corpos flutuantes s˜ao ambientes, e podem ser iniciados, por exemplo, da seguinte forma:
\begin{table}[!htb]
ou
\begin{figure}[hp]
O primeiro exemplo inicia uma tabela, que ser´a posicionada onde ocorreu no texto (h) mesmo que isto prejudique a est´etica do documento (!). Se n˜ao for poss´ıvel posicionar a tabela neste ponto, ela ser´a colocada no topo (t) ou na parte inferior (b) de uma p´agina. O segundo exemplo inicia uma figura que ser´a posicionada neste ponto (h) ou em uma p´agina especial somente com tabelas e figuras. Se nenhum parˆametro de posicionamento ´e fornecido, ´e utilizado o padr˜ao tbp. O LATEX posiciona todo float que encontra de acordo com o parˆametro de posicionamento fornecido. Se um corpo flutuante n˜ao puder ser colocado na p´agina atual, ele ´e inserido em uma fila de figuras ou de tabelas. Quando uma nova p´agina ´e iniciada, o primeiro float ´e tratado como se tivesse ocorrido neste ponto do texto: o LATEX tenta outra vez posicion´a-lo de acordo com seu parˆametro (exceto ‘h’, que n˜ao ´e mais poss´ıvel). Qualquer novo float que ocorra ´e colocado em sua respectiva fila. A ordem de ocorrˆencia dos corpos flutuantes ´e mantida estritamente, por isso uma figura que n˜ao pode ser posicionada “atrasa” a coloca¸c˜ao de todas as figuras seguintes.Portanto:
Se o LATEX n˜ao est´a posicionando os floats como vocˆe deseja, ´e prov´avel que exista um float trancando uma das filas.
Mesmo sendo poss´ıvel dar ao LATEX uma ´unica possibilidade de posicio- namento, isso causa problemas. Se o float n˜ao pode ser posicionado no lugar especificado, ele fica preso, bloqueando todos os corpos flutuantes seguintes. Em particular, nunca deve-se usar a op¸c˜ao [h], que nas ´ultimas vers˜oes do LATEX ´e substitu´ıda automaticamente por [ht]. Sob algumas circunstˆancias, pode-se usar o comando \clearpage, que ordena que todas as figuras e ta- belas nas filas sejam posicionadas, e inicia uma nova p´agina. Dentro dos ambientes table e figure, a fun¸c˜ao \caption{texto} espe- cifica o r´otulo do float. Para incluir listas de corpos flutuantes no documento, usa-se as fun¸c˜oes \listoftables e \listoffigures. Como no sum´ario, ´e preciso compilar o documento trˆes vezes para que estas listas sejam inseridas corretamente.
Tabela 2.1: Parˆametros de Posicionamento. Parˆametro Permiss˜ao para posicionar o corpo flutuante... h no lugar onde ocorreu no texto. Funciona normalmente para tabelas pequenas t no topo de uma p´agina b na parte inferior de uma p´agina p em uma p´agina especial contendo somente corpos flutuantes ! sem considerar a maioria dos parˆametrosa^ que poderiam impedir este corpo de ser posicionado. aComo o n´umero m´aximo de corpos flutuantes por p´agina.