VidaGeek.net

Linux, Open-source, Programação e Produtividade

Guia Latex - Parte V: Criando referências

Após passar pelas outras partes desse tutorial, chegamos ao ponto em que gostaríamos de criar links externos ou internos para nossa aplicação e referências bibliográficas.

Começamos essa parte pelos links externos, seguimos com links internos e a criação de índice remissivo e terminamos pelas referências bibliográficas, muito comuns e, de fato, estritamente necessárias em trabalhos acadêmicos.

Links externos

Para utilizar links externos da mesma forma que usamo-nas em HTML, podemos usar o pacote de referências do LaTeX e a tag simples href - bastante similar a HTML, certo?

\usepackage{hyperref}
% …

\href{url}{texto}

Alternativamente, quando queremos manter o próprio link na página e apenas fazê-lo ser “clicável”, podemos ainda lançar mão da tag url, que fica no pacote de mesmo nome:

\usepackage{url}
% …

\url{http://vidageek.net}

Links internos

Dentro de documentos do tipo article, book ou report (os três tipos de documento padrão apresentados nessa série), não é preciso declarar pacote algum para usar links internos.

Marcamos uma referência que será chamada mais tarde colocando uma marcação nela, uma etiqueta:

\label{nomeDaEtiqueta}

E, no lugar onde precisamos referenciá-las, podemos fazê-lo de duas formas: indicando a página que contém a label ou sua seção.

%…

\ref{nomeDaEtiqueta}
% referencia para a section da label nomeDaEtiqueta

\pageref{nomeDaEtiqueta}
% referencia para a página em que a label aparece

Repare que, para que essas referências funcionem, é preciso rodar pdflatex Duas vezes. Isso porque na primeira vez, o parser do pdflatex passa apenas registrando as Labels e onde colocar as referências, mas na segunda é que é capaz de saber o número da seção e da página, quando aplicável.

Índice Remissivo

Para criar o índice remissivo, basta colocarmos marcadores do tipo glossary pelo nosso texto e instalar um programinha que se chama “makeindex”. No linux, ele vem junto com o pacote tetex-extra e, no Mac e suponho que no Windows também, vem junto com o TexLive - se você segue nosso tutorial de início, já deve tê-lo instalado.

Assim, vamos direto ao ponto de como usá-lo:

\glossary{ancora no índice remissivo}
% Marcação da linha para o índice remissivo

Após terminar seu texto, você vai precisar rodar em sequência:

pdflatex arquivo.tex
makeindex arquivo.idx
pdflatex arquivo.tex

Novamente explicando o porquê: na primeira vez que usamos o pdflatex, ele agrupa as palavras do glossário (índice remissivo) no arquivo *.idx com as devidas referências. Então, usamos o makeindex para transformar esse *.idx em um adendo LaTeX pro arquivo original e, na segunda passagem do pdflatex, ele finalmente junta as duas informações.

Então, agora, você já sabe colocar links internos, externos e até mesmo gerar seu índice remissívo/glossário de acordo com as necessidades do seu texto. Espero que essa sessão do Guia Latex tenha ajudado e a próxima que virá tratará da parte matemática do LaTeX, parte bastante elegante e apreciada pelos usuários acadêmicos de Latex.

Posts Relacionados:

  • Guia Latex - Parte IV: Estética (imagens e coloração)
  • Guia Latex - Parte I: O que é e por que usar
  • Gentoo no Summer of Code
  • Guia Linux - Parte IV: Aplicativos
  • Guia Latex - Parte II: O Básico
  • Séries
  • Gerenciadores de dispositivos no Linux
  • Acompanhe-nos por RSS, por Email ou via Twitter.
    Veja como ter um desconto no Dreamhost: um excelente servidor web.

  • 5 Comments
  • Filed under: Dicas, Latex, Tutoriais
  • Continuando o Guia Latex, vamos aprender a colorir e colocar imagens em documentos LaTeX.

    Coloração

    Começaremos pela coloração, já que essa é uma parte muito mais simples e já acrescenta um grande diferencial ao texto.

    Para podermos usar o pacote com as cores, precisamos importá-lo. Usaremos para texto, o seguinte pacote:

    \usepackage[pdftex]{color,graphicx}

    E para as tabelas…
    \usepackage{colortbl}
    \usepackage[table]{xcolor}

    Excelente. Com esses pacotes à disposição, já podemos usar o comando para colorir o texto:

    \textcolor{cor}{texto a ser colorido}, onde a variável cor é uma cor escrita em inglês.

    red blue
    cyan yellow
    orange gray
    teal green

    Colocando imagens

    Muitos tutoriais de LaTeX passam a sensação de que toda imagem tem que estar dentro de um ambiente “figure”. Vamos deixar bem claro, logo de cara, que esse é apenas um environment que favorece colocar imagens, em uso geral - podemos colocar legendas facilmente nele.

    Para usarmos imagens, precisamos dos pacotes que lidam com elas:
    \usepackage{graphicx}

    E, no mais, de apenas um simples comando:

    \includegraphics[opções]{imagem.png}

    As opções são quatro e podem ser usadas conjuntamente, separadas por vírgulas (e não espaços):

    • width: corresponde à largura;
    • height: a altura da sua imagem;
    • scale: proporção do tamanho real da imagem.
    • angle: ângulo de rotação da imagem (sentido anti-horário);

    O formato da imagem pode ser jpg, png, pdf e algumas outras menos comuns. Outros pacotes, como o graphics, têm suporte a outros formatos.

    Ambiente figure

    Como mencionei mais cedo, o modo mais comum de vermos imagens apresentadas em LaTeX é num ambiente figure. Por que isso acontece?

    Esse ambiente procura o melhor lugar para se encaixar numa página, flutuando texto para cima ou para baixo conforme melhor disposição, seguindo, claro, uma heurística própria que infelizmente eu desconheço. Figure também possui uma tag própria de legenda, chamada caption.

    \begin{figure}
    \includegraphics[width=0.5\textwidth]{imagem.jpg}
    \caption{Minha imagem em latex}
    \end{figure}

    Com isso, você já é capaz de tratar figuras em LaTeX e colorir seu texto. Se restou alguma dúvida sobre esse assunto, incentivo perguntas - muito foi deixado de lado nesse breve tutorial. Divirtam-se!

    Posts Relacionados:

  • Guia Linux - Parte IV: Aplicativos
  • Gentoo no Summer of Code
  • Guia Latex - Parte III: Estruturando e marcando o texto
  • Guia Latex - Parte V: Criando referências
  • Guia Latex - Parte II: O Básico
  • Retrospectiva 2008
  • Séries
  • Acompanhe-nos por RSS, por Email ou via Twitter.
    Veja como ter um desconto no Dreamhost: um excelente servidor web.

  • 2 Comments
  • Filed under: Dicas, Latex, Tutoriais
  • Após um período de recesso, o Guia Latex segue. Dessa vez, veremos marcação de texto básica e as maneiras mais comuns e simples de se estruturar uma página, com seções e subseções, listas e, por fim, tabelas.

    Marcação de texto

    Em LaTeX, é possível fazer todas as marcações de texto com as quais vocês está acostumado.

    Negrito: \textbf{termo em negrito}
    Itálico: \textit{termo em itálico}ou similar: \emph{termo enfatizado}
    Monospace: \texttt{termo em monospace} (letra de máquina de escrever)
    Serifado: \textsf{termo em letras serifadas}
    Maiúsculas \textsc{termo em SmallCaps} (letras maiúsculas, diferenciadas pelo tamanho)

    Também podemos alterar o tamanho da fonte. Algumas das possibilidades de tamanho são:

    Muito pequena: \tiny
    Pequena: \small
    Normal: \normalsize
    Grande: \Large
    Muito Grande: \LARGE
    A maior: \Huge

    Estruturando o texto

    O LaTeX é uma excelente ferramenta para criar textos bem estruturados e confortáveis de se ler. Para facilitar esse processo, dispomos de alguns comandos:

    Seção: \section{Nome da seção}
    Subseção: \subsection{Nome da subseção}
    Subsubseção: \subsubsection{Nome da subseção da subseção}

    Listas

    Ainda, é bastante útil saber fazer listas. As listas abrem um ambiente próprio que contém e sabe entender o comando \item. Este, por sua vez, recebe o texto de um ítem da lista.

    Para fazer uma lista com os pontos de marcação padrão (as bolinhas) use:

    \begin{itemize}
    \item{Um ítem}
    \item{Outro ítem}

    \item{Último ítem}
    \end{itemize}

    Já para criar uma lista numerada, usamos o ambiente enumerate:

    \begin{enumerate}
    \item{Primeiro ítem}
    \item{Segundo ítem}

    \item{N-ésimo ítem}
    \end{enumerate}

    Tabelas

    Tabelas são velhas conhecidas e tidas como problemáticas por usuários mais antigos de Tex e LaTeX. A razão da má fama é proveniente do ambiente table, que é um corpo flutuante. Isso significa que, se não houver espaço para uma tabela do tipo table na página, ela não hesita em passar o texto seguinte para preencher o espaço em branco e se posicionar alguns parágrafos abaixo.

    Se isso não lhe parece terrível, é porque você nunca teve esse problema. Seu texto fica extremamente confuso quando uma tabela de referência vai parar 3 parágrafos abaixo, onde ela julgou que cabe.

    Para não ter esse tipo de inconveniente, foi criado, para LaTeX, um ambiente novo não-flutuante chamado tabular. A seguir, um exemplo de como fazer uma tabela nesse ambiente:

    \begin{tabular}[opções de alinhamento]{| alinhamento da primeira coluna | alinhamento da segunda coluna |}
    \hline
    conteúdo da 1a. linha, 1a. coluna & conteúdo da 1a. linha, 2a. coluna \\
    \hline
    conteúdo da 2a. linha, 2a. coluna & conteúdo da 2a. linha, 2a. coluna \\
    \hline

    conteúdo da Na. linha, 1a. coluna & conteúdo da Na. linha, 2a. coluna \\
    \hline
    \end{tabular}

    As opções de alinhamento são quatro:

    l (L minúsculo) Alinhamento à esquerda
    c Alinhamento centralizado
    r Alinhamento à direita
    p{2.7cm} Justificado com tamanho de célula indicado entre {}

    As barras verticais indicam as linhas verticais da tabela. Mas atenção: elas são necessárias no começo e no fim da definição das colunas. Se você não colocá-las ali, sua tabela não vai ter as bordas laterais exteriores.

    Similarmente, as linhas que recebem somente \hline servem para fazer as linhas horizontais da tabela. Assim, é importante colocá-las a cada vez que você desce para a próxima linha e, se quiser as bordas inferior e superior externas, antes da primeira linha e depois da última.

    Pronto! Agora você já tem todas as ferramentas que precisa para escrever 90% dos textos com os quais você vai se deparar. Experimente tranformar seu último texto escolar ou relatório do trabalho em LaTeX e veja a qualidade da saída em .pdf.

    Na próxima parte desse tutorial, veremos como colocar imagens em latex, importando ou construindo-as programativamente, direto em LaTeX.

    Posts Relacionados:

  • Guia Latex - Parte IV: Estética (imagens e coloração)
  • Retrospectiva 2008
  • Guia Latex - Parte II: O Básico
  • Séries
  • Guia Latex - Parte V: Criando referências
  • Guia Linux - Parte IV: Aplicativos
  • Guia Latex - Parte I: O que é e por que usar
  • Acompanhe-nos por RSS, por Email ou via Twitter.
    Veja como ter um desconto no Dreamhost: um excelente servidor web.

  • 3 Comments
  • Filed under: Dicas, Latex, Tutoriais
  • YACP - Condições Booleanas

    Continuando o tutorial, vamos começar agora o feijão-com-arroz da programação. Programação nada mais é do que controlar o fluxo de forma inteligente, para obter os resultados esperados. No próximo post vamos ver os dois controles mais simples, If e Else. Mas antes você precisa saber o que é

    Condição Booleana e Operadores Booleanos

    Uma condição booleana é uma expressão (lembram de expressões numéricas?) que resultam em um valor verdadeiro ou falso. Em C, como não existe um tipo booleano, a seguinte representação é usada:

    1. Se um número é diferente de 0, ele é considerado um valor verdadeiro;
    2. Se é igual a zero, é falso.

    Isso significa que 3 + 2 é verdadeiro em C, mas 4 - 4 não.

    Mas não é apenas dessa forma que fazemos operações booleanas. Existem outros operadores que servem para concatenar (ou modificar) condições booleanas. São os operadores booleanos.

    Os operadores mais comuns são:

    1. Operador “E” (&&): Apenas diz que a expressão é verdadeira se as duas condições ao lado dele forem verdadeiras;
    2. Operador “Ou” inclusivo (||): Diz que uma expressão é verdadeira se uma das duas condições for verdadeira;
    3. Operador “Não” (!): Diz que uma condição é verdadeira se a condição à qual ele é aplicado for falsa e vice-versa.

    Chega de teoria. Basicamente o que acontece é o seguinte:

    
    2+3 && 5 é verdadeiro
    2+3 && 0 é falso
    2+3 && 4 é verdadeiro
    2+3 || 0 é verdadeiro
    2+3 || 1 é verdadeiro
    2-2 || 1-1 é falso
    !0 é verdadeiro
    !1234567 é falso
    (0 && 0) || 1 é verdadeiro
    

    Notem que se você ler o que está escrito (sabendo que 0 é falso e os outros números são verdadeiros) fica bem intuitivo:

    
    verdadeiro E verdadeiro é verdadeiro
    verdadeiro E falso é falso
    (falso E falso) ou verdadeiro é verdadeiro
    NÃO falso é verdadeiro
    

    Certo… tirando o último exemplo não é tão intuitivo assim mas você se acostuma.

    Se você fizer todas as comparações possíveis usando duas condições e um operador você chega as seguintes tabelas:

    Operador E (&&)
    && verdadeiro falso
    verdadeiro verdadeiro falso
    falso falso falso
    Operador Ou (||)
    || verdadeiro falso
    verdadeiro verdadeiro verdadeiro
    falso verdadeiro falso
    Operador Não (!)
    ! verdadeiro falso
    falso verdadeiro

    Existe um outro operador, chamado Ou Exclusivo. As expressões formadas por ele são verdadeiras se uma única condição (das duas em volta dele) for verdadeira. Se as duas forem verdadeiras ou falsas a expressão é falsa. Ele não costuma ser muito utilizado (só usei ele pra criptografia e mesmo assim era um operador um pouquinho diferente.

    Posts Relacionados:

  • Dia C - Tuning
  • TRUE & TRUE == FALSE ?
  • YACP - Variáveis e Tipos Primitivos
  • YACP - Aprendendo a usar suas ferramentas
  • YACP (Yet Another C Primer)
  • YACP - Definindo seus próprios tipos
  • Acompanhe-nos por RSS, por Email ou via Twitter.
    Veja como ter um desconto no Dreamhost: um excelente servidor web.