[prev in list] [next in list] [prev in thread] [next in thread] 

List:       tex-br
Subject:    Re: [TeX-BR] classe e estilos.
From:       Miguel Frasson <frasson () math ! leidenuniv ! nl>
Date:       2001-08-21 15:11:43
Message-ID: Pine.LNX.4.33.0108211552490.19312-100000 () enquist ! math ! leidenuniv ! nl
[Download RAW message or body]

On Sun, 19 Aug 2001, Ronaldo Reis Jr. wrote:

> Pessoal,
> so uma dúvida, existe diferença real, tirando a parte inicial, entre uma
> classe e um estilo?
> Valeu
> Ronaldo

Ola, Ronaldo.

Tem diferenca na logica (estrutral) da coisa.

Uma classe eh o codigo basico de um documento latex que da a este um
minimo de estrutura. Eh um nucleo, que define os ambientes e comandos
basicos. Assim, um documento simples, mas com alguns elementos minimos de
tipografia, poderia ser escrito usando-se apenas
\documentclass{classe}

Um pacote eh intencionado como uma extensao de funcionalidade, se possivel
mais ou menos independente da classe usada.

Na construcao de uma classe, voce pode
 - escrever novamente todos os ambientes ou ler uma classe (com o comando
   \LoadClass ou \LoadClassWithParameters) e fazer alteracoes necessarias.
 - ler pacotes e usa-los na classe.
 - criar estruturas novas.

Num pacote, voce pode
 - ler outros pacotes.
 - criar estruturas novas.

Note que construir uma classe do zero (quero dizer, sem ler uma classe,
comecar do zero mesmo...)  eh uma tarefa muito dificil se quiser qualidade
e poucos bugs. Uma boa eh ler (com \LoadClass) uma classe como report e ai
fazer as alteracoes necessarias. Isso tambem garante compatibilidade com
varios pacotes, feitos na maioria para as classes standard.

Tentar mudar (muito) o codigo de uma classe como report, por exemplo,
tambem pode nao ser muito facil, pois na epoca nao existiam alguns
conceitos de programacao uteis, como se tem hoje. Note que na definicao de
comandos como \chapter, no meio do codigo estao misturados comandos de
impressao e comandos de semantica (da estrutura logica), tudo na raiz do
comando.  Note, por exemplo, um \pagestyle{plain} (explicito!) enchendo o
saco do programador... Isso eh um pecado hoje, para programas longos, pois
causa confusao que causa. Para se mudar a impressao (suponha so o estilo
de pagina, sem falar no cabecalho do capitulo), pode-se redefinir o
comando. Pode ter certeza que tem gente que prefere redefine ir o
pagestyle plain. E pode ter certeza tambem que certos pacotes esperam do
plain sua definicao original. Para redefinir, eh preciso saber tudo sobre
o comando que esta sendo redefinido (inclusive o que esta secreto aos
olhos). Nao tem jeito senao tentar pegar um LaTeX companion e ler que nem
um gibi.

Agora se voce me perguntar:

-- Mas essa classe feita lendo-se outra e alterando-se nao eh a mesma
coisa que fazer um pacote contendo todas as alteracoes?

Eu respondo assim:

-- Eh, teoricamente... mas se uma hipotese que voce faz eh "desde que se
esteja usando a classe report", entao nao seria muito mais limpo fazer uma
classe que le o report?

Eh que nem fazer um programa complexo hoje sem usar objetos, so comandos
basicos.. eh plenamente possivel, mas fica uma caca...

Se voce quer escrever um codigo que uniformizara as dissertacoes da sua
instituicao, um pacote com as alteracoes nao parece soas bem
logicamente... faz uma classe que fica muito melhor.

Tentar alterar uma classe (de universidade estrangeira) pode nao ser uma
boa ideia, mas pode te dar algumas ideias (como me deu quando comecei a
escrever uma classe que estou trabalhando, a do abnTeX). Pode tambem te
ensinar o que nao fazer, vendo os erros que outras classes tem.

Tem muitas ferramentas legais para se fazer uma classe legal. De uma
olhada num link da pagina do LaTeX3 project team (se eh que voce ja nao
foi la :-)

http://www.latex-project.org/guides/clsguide/clsguide.html

Boa sorte na confeccao da classe da Esalq.

Miguel.

-- 
=======================================
Miguel Vinicius Santini Frasson
=======================================
PhD student at Leiden University
e-mail: frasson@math.leidenuniv.nl
        mvsfrasson@bol.com.br
http://mvsfrasson.vila.bol.com.br


--
TeX-BR     Homepage: http://biquinho.furg.br/tex-br/

           Para sair da lista mande um mail com unsubscribe
           no corpo para tex-br-request@listas.furg.br

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic