From 4f25a718f4b34b91e810d9001f77174f1221a1e4 Mon Sep 17 00:00:00 2001
From: Gabor Kovesdan
Date: Wed, 5 Sep 2012 05:16:32 +0000
Subject: - Add new Brazilian Portuguese translation of fdp-primer
PR: docs/170470
Submitted by: Edson Brandi
Obtained from: The FreeBSD Brazilian Portuguese Documentation Project
(http://doc.fug.com.br)
---
pt_BR.ISO8859-1/books/fdp-primer/Makefile | 54 +
pt_BR.ISO8859-1/books/fdp-primer/book.sgml | 300 ++
pt_BR.ISO8859-1/books/fdp-primer/chapters.ent | 25 +
.../books/fdp-primer/doc-build/chapter.sgml | 585 ++++
.../books/fdp-primer/examples/appendix.sgml | 407 +++
.../books/fdp-primer/overview/chapter.sgml | 344 +++
.../books/fdp-primer/psgml-mode/chapter.sgml | 195 ++
.../books/fdp-primer/see-also/chapter.sgml | 139 +
.../books/fdp-primer/sgml-markup/chapter.sgml | 3040 ++++++++++++++++++++
.../books/fdp-primer/sgml-primer/chapter.sgml | 1885 ++++++++++++
.../books/fdp-primer/structure/chapter.sgml | 354 +++
.../books/fdp-primer/stylesheets/chapter.sgml | 102 +
.../books/fdp-primer/the-website/chapter.sgml | 266 ++
.../books/fdp-primer/tools/chapter.sgml | 330 +++
.../books/fdp-primer/translations/chapter.sgml | 557 ++++
.../books/fdp-primer/writing-style/chapter.sgml | 540 ++++
16 files changed, 9123 insertions(+)
create mode 100755 pt_BR.ISO8859-1/books/fdp-primer/Makefile
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/book.sgml
create mode 100755 pt_BR.ISO8859-1/books/fdp-primer/chapters.ent
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/doc-build/chapter.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/examples/appendix.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/overview/chapter.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/psgml-mode/chapter.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/see-also/chapter.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/sgml-markup/chapter.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/sgml-primer/chapter.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/structure/chapter.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/stylesheets/chapter.sgml
create mode 100755 pt_BR.ISO8859-1/books/fdp-primer/the-website/chapter.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/tools/chapter.sgml
create mode 100644 pt_BR.ISO8859-1/books/fdp-primer/translations/chapter.sgml
create mode 100755 pt_BR.ISO8859-1/books/fdp-primer/writing-style/chapter.sgml
(limited to 'pt_BR.ISO8859-1/books/fdp-primer')
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/Makefile b/pt_BR.ISO8859-1/books/fdp-primer/Makefile
new file mode 100755
index 0000000000..1732ad0096
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/Makefile
@@ -0,0 +1,54 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD Brazilian Portuguese Documentation Project
+#
+# $FreeBSD$
+#
+# Original revision: r38826
+#
+
+MAINTAINER=doc@FreeBSD.org
+
+DOC?= book
+
+FORMATS?= html-split html
+
+INSTALL_COMPRESSED?= gz
+INSTALL_ONLY_COMPRESSED?=
+
+#
+# SRCS lists the individual SGML files that make up the document. Changes
+# to any of these files will force a rebuild
+#
+
+# SGML content
+SRCS= book.sgml
+SRCS+= overview/chapter.sgml
+SRCS+= psgml-mode/chapter.sgml
+SRCS+= see-also/chapter.sgml
+SRCS+= sgml-markup/chapter.sgml
+SRCS+= sgml-primer/chapter.sgml
+SRCS+= stylesheets/chapter.sgml
+SRCS+= structure/chapter.sgml
+SRCS+= doc-build/chapter.sgml
+SRCS+= the-website/chapter.sgml
+SRCS+= tools/chapter.sgml
+SRCS+= translations/chapter.sgml
+SRCS+= writing-style/chapter.sgml
+
+SRCS+= examples/appendix.sgml
+
+# Images from the cross-document image library
+IMAGES_LIB= callouts/1.png
+IMAGES_LIB+= callouts/2.png
+IMAGES_LIB+= callouts/3.png
+IMAGES_LIB+= callouts/4.png
+IMAGES_LIB+= callouts/5.png
+
+# Entities
+SRCS+= chapters.ent
+
+URL_RELPREFIX?= ../../../..
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/book.sgml b/pt_BR.ISO8859-1/books/fdp-primer/book.sgml
new file mode 100644
index 0000000000..fafed65f5f
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/book.sgml
@@ -0,0 +1,300 @@
+
+
+
+%books.ent;
+ %chapters;
+
+
+]>
+
+
+
+ &a.ptbr.p.fdpp; para novos colaboradores
+ Projeto de documentação do
+ FreeBSD
+
+ 1998
+ 1999
+ 2000
+ 2001
+ 2002
+ 2003
+ 2004
+ 2005
+ 2006
+ 2007
+ 2008
+ 2009
+ DocEng
+
+
+ $FreeBSD$
+
+ $FreeBSD$
+
+ &bookinfo.legalnotice;
+
+
+ Obrigado por tornar-se parte do Projeto de
+ Documentação do FreeBSD. A sua
+ contribuição é extremamente
+ valiosa.
+
+ Este &a.ptbr.p.fdpp; cobre tudo o que você precisa
+ saber para começar a contribuir com o Projeto de
+ Documentação do FreeBSD, desde as ferramentas e
+ softwares que você estará utilizando (tanto
+ os obrigatórios quanto os recomendados) à
+ filosofia por trás do projeto de
+ documentação.
+
+ Este documento é um trabalho em andamento, e
+ não está completo. As sessões que
+ sabemos estarem incompletas estão indicadas com um
+ * no seu nome.
+
+
+
+
+ Prefácio
+
+
+ Prompt do interpretador de
+ comandos (shell)
+
+ A tabela seguinte mostra o
+ prompt padrão do sistema
+ e o prompt do super
+ usuário. Os exemplos irão utilizar estes
+ prompts para indicar com qual
+ usuário o exemplo foi executado.
+
+
+
+
+
+ Usuário
+ Prompt
+
+
+
+
+
+ Usuário normal
+ &prompt.user;
+
+
+
+ root
+ &prompt.root;
+
+
+
+
+
+
+
+ Convenções Tipográficas
+
+ A tabela seguinte descreve as convenções
+ tipográficas utilizadas neste livro.
+
+
+
+
+
+ Propósito
+ Exemplos
+
+
+
+
+
+ Nome de um comando.
+ Utilize ls -a para listar
+ todos os arquivos.
+
+
+
+ Nome de um arquivo.
+ Edite o seu arquivo .login
+ .
+
+
+
+ Saída
+ (output)
+ de um programa na tela do computador.
+ Você tem email.
+
+
+
+ O que você digita, quando contrastado com a
+ saída (output) do
+ programa na tela do computador.
+ &prompt.user; su
+Password:
+
+
+
+ Referência a uma página de
+ manual.
+ Utilize o &man.su.1; para assumir outro nome de
+ usuário.
+
+
+
+ Nome de usuário e de grupos de
+ usuários
+ Apenas o root pode fazer
+ isso.
+
+
+
+ Ênfase
+ Você deve fazer
+ isso.
+
+
+
+ Variáveis da linha de comando; Substitua
+ com o nome real ou com a variável.
+ Para deletar um arquivo, digite rm
+ nome_do_arquivo
+
+
+
+
+ Variáveis de ambiente
+ O $HOME é o seu
+ diretório home.
+
+
+
+
+
+
+
+ Notas, dicas, informações importantes,
+ avisos e exemplos
+
+ Ao longo do texto aparecerão notas, avisos e
+ exemplos.
+
+
+ Notas são representadas desta forma, e
+ contêm informações para as quais
+ você deveria ficar atento, pois podem afetar o que
+ você faz.
+
+
+
+ Dicas são representadas desta forma, e
+ contêm informações que você pode
+ achar úteis, ou que mostram uma maneira mais
+ fácil de fazer alguma coisa.
+
+
+
+ Informações importantes são
+ representadas desta forma. Normalmente elas destacam passos
+ extras que você pode precisar realizar.
+
+
+
+ Avisos são representados deste modo, e
+ contêm informações de alerta para
+ você sobre possíveis danos se você
+ não seguir as instruções. Estes danos
+ podem ser físicos: para o seu equipamento ou para
+ você; ou, podem ser não-físicos: tal
+ como a deleção inadvertida de arquivos
+ importantes.
+
+
+
+ Uma amostra de exemplo
+
+ Os exemplos são representados deste modo, e
+ normalmente contêm exemplos que você deve
+ analisar, ou então, mostram como deveriam ser os
+ resultados de uma determinada ação.
+
+
+
+
+ Agradecimentos
+
+ Meu muito obrigado a Sue Blake, Patrick Durusau, Jon
+ Hamilton, Peter Flynn, e Christopher Maden, por terem gasto
+ parte do seu tempo lendo os primeiros rascunhos deste
+ documento e por terem oferecido muitos comentários e
+ críticas construtivas para este trabalho.
+
+
+
+ &chap.overview;
+ &chap.tools;
+ &chap.sgml-primer;
+ &chap.sgml-markup;
+ &chap.stylesheets;
+ &chap.structure;
+ &chap.doc-build;
+ &chap.the-website;
+ &chap.translations;
+ &chap.writing-style;
+ &chap.psgml-mode;
+ &chap.see-also;
+
+ &app.examples;
+
+
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/chapters.ent b/pt_BR.ISO8859-1/books/fdp-primer/chapters.ent
new file mode 100755
index 0000000000..fd6fd5cec4
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/chapters.ent
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/doc-build/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/doc-build/chapter.sgml
new file mode 100644
index 0000000000..55ad7ceeee
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/doc-build/chapter.sgml
@@ -0,0 +1,585 @@
+
+
+
+ O processo de construção da
+ documentação
+
+ A principal finalidade desse capítulo é explicar
+ claramente como o processo de criação da
+ documentação é organizado, e
+ como fazer modificações a este
+ processo.
+
+ Depois de finalizar a leitura deste capítulo
+ você deverá:
+
+
+
+ Saber o que você precisa para compilar a
+ documentação mantida pelo FDP, em
+ adição ao que foi mencionado no
+ capítulo Ferramentas SGML.
+
+
+
+
+ Ser capaz de ler e entender as instruções do
+ make que estão presentes
+ em cada documento Makefile, assim como
+ ter uma visão geral do
+ doc.project.mk.
+
+
+
+ Ser capaz de customizar o processo de
+ compilação usando variáveis e alvos do
+ make.
+
+
+
+
+ Ferramentas para construção da
+ documentação do FreeBSD
+
+ Aqui estão suas ferramentas. Use-as de todas as
+ formas que puder.
+
+
+
+ A primeira ferramenta que você precisará
+ é o make, mais
+ especificamente o Berkeley Make.
+
+
+
+
+ A construção de pacotes no FreeBSD
+ é executada pelo
+ pkg_create. Se você
+ não está utilizando o FreeBSD, você
+ terá que viver sem o uso de pacotes, ou então
+ terá que compilar o código fonte você
+ mesmo.
+
+
+
+ O gzip é
+ necessário para criar versões compactadas do
+ documento. O compressor bzip2 e
+ os arquivos zip também
+ são suportados. O tar
+ é suportado, e a construção de
+ pacotes necessita dele.
+
+
+
+ O install é o
+ método padrão para instalar a
+ documentação. Entretanto, existem
+ alternativas.
+
+
+
+
+ É improvável que você tenha qualquer
+ problema em localizar esses dois últimos, eles estão
+ sendo mencionados apenas para que a listagem fique completa.
+
+
+
+
+
+ Entendendo Makefiles na árvore da
+ documentação
+
+ Há três tipos principais de
+ Makefiles na árvore do projeto de
+ documentção do FreeBSD.
+
+
+
+ Os
+ Makefiles de subdiretório
+ simplesmente passam comandos para os diretórios
+ abaixo dele.
+
+
+
+ Os
+ Makefiles de
+ documentação descrevem o(s)
+ documento(s) que deve(m) ser produzido(s) a partir deste
+ diretório.
+
+
+
+ Os
+ Make includes são
+ os responsáveis pela produção do
+ documento, e geralmente possuem o nome no formato
+ doc.xxx.mk.
+
+
+
+
+
+ Makefiles de Subdiretórios
+
+ Estes Makefiles geralmente tem a
+ forma:
+
+ SUBDIR =articles
+SUBDIR+=books
+
+COMPAT_SYMLINK = en
+
+DOC_PREFIX?= ${.CURDIR}/..
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
+
+ Resumidamente, as primeiras quatro
+ linhas não vazias definem as variáveis do
+ make, SUBDIR,
+ COMPAT_SYMLINK, e
+ DOC_PREFIX.
+
+ A primeira declaração da variável
+ SUBDIR, tanto quanto a
+ declaração da variável
+ COMPAT_SYMLINK,
+ mostra como atribuir um valor a uma variável,
+ sobrescrevendo qualquer valor anterior que a mesma
+ contenha.
+
+ A segunda declaração da variável
+ SUBDIR mostra como um valor é
+ adicionado ao valor atual de uma variável. A
+ variável SUBDIR agora é
+ composta por articles books.
+
+ A declaração do
+ DOC_PREFIX mostra como um valor é
+ atribuído para uma variável, mas somente se
+ ela ainda não estiver definida. Isto é
+ útil se o DOC_PREFIX não
+ for onde este Makefile pensa que
+ é - o usuário pode cancelar e fornecer
+ o valor correto.
+
+ Agora o que tudo isso significa? O
+ SUBDIR lista quais subdiretórios
+ abaixo do atual devem ser incluídos no processo de
+ compilação durante a geração
+ do documento.
+
+ O COMPAT_SYMLINK é
+ específico para compatibilizar os links
+ simbólicos que ligam os idiomas a sua
+ codificação oficial (por exemplo o
+ doc/en deve apontar para
+ en_US.ISO-8859-1).
+
+ O DOC_PREFIX é o caminho para a
+ raíz da árvore do projeto de
+ documentação do FreeBSD. O qual nem sempre
+ é facil de encontrar, e que também pode ser
+ facilmente sobrescrito, para permitir flexibilidade. O
+ .CURDIR é uma variável
+ interna do make que contém
+ o caminho para o diretório atual.
+
+ A linha final inclui o arquivo principal do projeto de
+ documentação do FreeBSD, o
+ doc.project.mk, ele é o
+ responsável por converter estas variáveis em
+ instruções de compilação para
+ uso do make.
+
+
+
+ Makefiles de Documentação
+
+ Estes Makefiles ajustam várias
+ variáveis do make as quais
+ descrevem como construir a documentação
+ contida em um determinado diretório.
+
+ Aqui está um exemplo:
+
+ MAINTAINER=nik@FreeBSD.org
+
+DOC?= book
+
+FORMATS?= html-split html
+
+INSTALL_COMPRESSED?= gz
+INSTALL_ONLY_COMPRESSED?=
+
+# SGML content
+SRCS= book.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "$(DOC_PREFIX)/share/mk/docproj.docbook.mk"
+
+ A variável MAINTAINER é
+ uma muito importante. Esta variável fornece a
+ habilidade de reivindicar a propriedade sobre um documento no
+ projeto de documentação do FreeBSD, é
+ por meio dela que você recebe a responsabilidade de
+ mantê-lo.
+
+ DOC é o nome (sem a
+ extensão .sgml) do principal
+ documento criado por este diretório. A variável
+ SRCS lista todos os arquivos individuais
+ que compõem o documento. Ela também deve
+ incluir os arquivos importantes, nos quais qualquer
+ mudança deve resultar em uma
+ reconstrução.
+
+ O FORMATS indica os formatos
+ nos quais o documento deve ser gerado por padrão.
+ O INSTALL_COMPRESSED contém a lista
+ padrão das técnicas de compressão que
+ devem ser usadas no documento depois que ele é gerado.
+ A variável INSTALL_ONLY_COMPRESS,
+ nula por padrão, deve ser definida para um valor
+ não nulo apenas se você desejar gerar
+ exclusivamente a versão compactada do documento.
+
+
+ Nós abordamos a atribuição das
+ variáveis opcionais na seção anterior.
+
+
+
+ Você também já deve estar
+ familiarizado com a atribuição da
+ variável DOC_PREFIX e com as
+ instruções de include.
+
+
+
+
+ Includes do Make do projeto de documentação
+ do FreeBSD
+
+ Isto é melhor explicado pela inspeção
+ no código. Aqui estão os arquivos include do
+ sistema:
+
+
+
+ O doc.project.mk é o
+ principal arquivo include do projeto, que inclui todos os
+ arquivos includes necessários.
+
+
+
+ O doc.subdir.mk controla a
+ navegação na árvore de
+ documentação durante
+ o processo de construção e
+ instalação.
+
+
+
+ O doc.install.mk fornece as
+ variáveis que afetam a propriedade e a
+ instalação de documentos.
+
+
+
+ O doc.docbook.mk é
+ incluído se o DOCFORMAT
+ for docbook e se a variável
+ DOC estiver definida.
+
+
+
+
+ doc.project.mk
+
+ Por inspeção:
+
+ DOCFORMAT?= docbook
+MAINTAINER?= doc@FreeBSD.org
+
+PREFIX?= /usr/local
+PRI_LANG?= en_US.ISO8859-1
+
+.if defined(DOC)
+.if ${DOCFORMAT} == "docbook"
+.include "doc.docbook.mk"
+.endif
+.endif
+
+.include "doc.subdir.mk"
+.include "doc.install.mk"
+
+
+
+ Variáveis
+
+ As variáveis DOCFORMAT e
+ MAINTAINER serão atribuídas
+ com valores padrão, se o valor das mesmas não
+ tiver sido definido no arquivo Makefile do documento.
+
+ O PREFIX define o caminho no
+ qual os aplicativos de
+ construção da documentação
+ estão instalados. Para uma instalação
+ normal através de pacotes e/ou ports, este caminho
+ será sempre /usr/local.
+
+ A variável PRI_LANG deve ser
+ configurada para refletir o idioma e a
+ codificação nativa dos usuários aos
+ quais os documentos se destinam. O Inglês Americano
+ (US English) é o padrão.
+
+
+ A variável PRI_LANG de
+ maneira alguma afeta quais documentos serão,
+ ou que poderão, ser compilados. Sua
+ função principal é criar links para
+ os documentos referenciados com maior frequência no
+ diretório raiz de instalação da
+ documentação do FreeBSD.
+
+
+
+
+ Condicionais
+
+ A linha .if defined(DOC) é
+ um exemplo da condicional do make
+ , como em outros programas, define o comportamento se
+ alguma condição é verdadeira ou se
+ é falsa. defined é uma
+ função que retorna se uma dada
+ variável está definida ou não.
+
+ A seguir, .if ${DOCFORMAT} == "docbook"
+ , testa se a variável DOCFORMAT
+ é "docbook", e neste
+ caso, inclue o doc.docbook.mk.
+
+ Os dois .endifs fecham as duas
+ condicionais anteriores, marcando o fim da sua
+ aplicação.
+
+
+
+
+ doc.subdir.mk
+
+ Este arquivo é muito longo para ser explicado por
+ inspeção, você deve ser capaz de
+ interpretá-lo com o conhecimento adquirido nos
+ capítulos anteriores, e com a pequena ajuda dada
+ aqui.
+
+
+ Variáveis
+
+
+
+ SUBDIR é a lista de
+ subdiretórios nos quais o processo de
+ construção deve ser executado.
+
+
+
+ ROOT_SYMLINKS são os nomes
+ dos diretórios que devem ser linkados para a
+ raíz de instalação do documento
+ a partir da sua localização atual, se o
+ idioma atual for o idioma primário (especificado
+ por PRI_LANG).
+
+
+
+ O COMPAT_SYMLINK já foi
+ descrito na seção Makefiles de subdiretório
+ .
+
+
+
+
+
+ Targets e Macros
+
+ As dependências são descritas por
+ target:
+ dependência1 dependência2 ...
+ , nas quais, para construir o
+ target, você necessita
+ primeiramente construir as dependências
+ informadas.
+
+ Depois desta descrição,
+ instruções de como construir o target podem
+ ser passadas, no caso do processo de conversão
+ entre o target e estas dependências não
+ tiver sido previamente definido, ou se esta
+ conversão em particular não for a mesma
+ que a definida pelo método padrão de
+ conversão.
+
+ A dependência especial .USE
+ define o equivalente a uma macro.
+
+_SUBDIRUSE: .USE
+.for entry in ${SUBDIR}
+ @${ECHO} "===> ${DIRPRFX}${entry}"
+ @(cd ${.CURDIR}/${entry} && \
+ ${MAKE} ${.TARGET:S/realpackage/package/:S/realinstall/install/} DIRPRFX=${DIRPRFX}${entry}/ )
+.endfor
+
+ No código acima, _SUBDIRUSE
+ é agora uma macro, a qual irá
+ executar determinados comandos quando for listada como
+ dependência.
+
+ O que define esta macro a parte de outros targets?
+ Basicamente, ela é executada após
+ as instruções passadas no
+ processo de construção por ser uma
+ dependência para o mesmo, e ela não
+ configura o .TARGET, que é a
+ variável que contém o nome do target atual
+ que está sendo construído.
+
+clean: _SUBDIRUSE
+ rm -f ${CLEANFILES}
+
+ No código acima, o clean
+ irá usar a macro _SUBDIRUSE
+ depois de ter executado a instrução
+ rm -f ${CLEANFILES}. De fato, isto causa
+ uma limpeza (clean) na
+ árvore de diretórios, deletando os arquivos
+ construídos enquanto vai
+ descendo pelos subdiretórios,
+ e não quando vai na direção
+ oposta.
+
+
+ Targets fornecidos
+
+
+
+ install e
+ package, ambos descem pela
+ árvore de diretórios executando a sua
+ versão real dentro dos subdiretórios.
+ (realinstall e
+ realpackage
+ respectivamente).
+
+
+
+ O clean remove os
+ arquivos criados pelo processo de
+ compilação (e também desce na
+ árvore de diretórios).
+ O cleandir faz a mesma
+ coisa, e também remove o diretório
+ de objetos se este existir.
+
+
+
+
+
+
+ Mais Condicionais
+
+
+
+ exists é outra
+ função condicional que retorna verdadeiro
+ se o arquivo informado existir.
+
+
+
+ empty retorna verdadeiro se a
+ variável informada estiver vazia.
+
+
+
+ target retorna verdadeiro se o
+ target informado ainda não existir.
+
+
+
+
+
+ Construção de Looping no
+ make (.for)
+
+ O .for fornece uma maneira de
+ repetir instruções definidas para cada
+ elemento separado por espaço em uma variável.
+ Ele faz isso atribuíndo uma variável para
+ conter o elemento atual da lista que está sendo
+ examinada.
+
+_SUBDIRUSE: .USE
+.for entry in ${SUBDIR}
+ @${ECHO} "===> ${DIRPRFX}${entry}"
+ @(cd ${.CURDIR}/${entry} && \
+ ${MAKE} ${.TARGET:S/realpackage/package/:S/realinstall/install/} DIRPRFX=${DIRPRFX}${entry}/ )
+.endfor
+
+ No código acima, se SUBDIR
+ estiver vazia, nenhuma ação será
+ executada; se ela possuir um ou mais elementos, as
+ instruções entre o .for e
+ o .endfor serão repetidas para
+ cada elemento, com o entry
+ sendo substituído com o valor do elemento
+ atual.
+
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/examples/appendix.sgml b/pt_BR.ISO8859-1/books/fdp-primer/examples/appendix.sgml
new file mode 100644
index 0000000000..6edd481b9b
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/examples/appendix.sgml
@@ -0,0 +1,407 @@
+
+
+
+ Exemplos
+
+ Este apêndice contém arquivos SGML de exemplo
+ e linhas de comando que você pode utilizar para
+ convertê-los de um formato para outro. Se você
+ instalou com sucesso as ferramentas do Projeto de
+ Documentação, então você será
+ capaz de utilizar estes exemplos imediatamente.
+
+ Estes exemplos não são exaustivos — eles
+ não contêm todos os elementos que você pode
+ utilizar, particularmente para a capa do seu documento. Para
+ maiores exemplos de marcação DocBook você
+ deve examinar o código SGML deste e de outros documentos,
+ disponíveis no repositório doc
+ do svn, ou disponíveis online
+ no endereço
+ .
+
+
+ Para evitar confusão, estes exemplos utilizam a
+ especificação DocBook 4.1 DTD sem nenhuma
+ extensão particular adicionada pelo FreeBSD. Eles
+ também utilizam as folhas de estilo padrões
+ distribuídas pelo Norm Walsh, sem nenhuma
+ customização feita nas mesmas pelo Projeto de
+ Documentação do FreeBSD. Isto os torna mais
+ úteis como exemplos genéricos de
+ marcação DocBook.
+
+
+
+ DockBook book
+
+
+ DocBook book
+
+
+
+
+
+ Um exemplo de Livro
+
+
+ Seu nome
+ Seu sobrenome
+
+ seuemail@example.com
+
+
+
+
+ 2000
+ Texto de Copyright
+
+
+
+ Se seu livro possui um sumário ele deve ser colocado aqui.
+
+
+
+
+ Prefácio
+
+ Seu livro pode ter um prefácio, se este for o caso, ele deve
+ ser colocado aqui.
+
+
+
+ Meu primeiro capítulo
+
+ Este é o primeiro capítulo do meu livro.
+
+
+ Minha primeira seção
+
+ Esta é a primeira seção do meu livro.
+
+
+]]>
+
+
+
+
+ DocBook article
+
+
+ DocBook article
+
+
+
+
+
+ Um exemplo de Artigo
+
+
+ Seu nome
+ Seu sobrenome
+
+ seuemail@example.com
+
+
+
+
+ 2000
+ Texto de Copyright
+
+
+
+ Se o seu artigo possuir um sumário ele deve ser colocado aqui.
+
+
+
+
+ Minha primeira seção
+
+ Esta é a primeira seção do meu artigo.
+
+
+ Minha primeira subseção
+
+ Esta é a primeira subseção do meu artigo.
+
+
+]]>
+
+
+
+
+ Produzindo saídas formatadas
+
+ Esta seção assume que você já
+ instalou os softwares listados no port textproc/docproj, seja via meta-port
+ ou manualmente. Além disso, ela também assume
+ que os seus softwares estão instalados em
+ subdiretórios sob o /usr/local/,
+ e que os diretórios nos quais os binários foram
+ instalados, estão mapeados no seu PATH.
+ Ajuste os paths conforme a necessidade do seu sistema.
+
+
+ Usando o Jade
+
+
+ Convertendo de DocBook para HTML (em um único
+ grande arquivo)
+
+ &prompt.user; jade -V nochunks \
+ -c /usr/local/share/sgml/docbook/dsssl/modular/catalog \
+ -c /usr/local/share/sgml/docbook/catalog \
+ -c /usr/local/share/sgml/jade/catalog \
+ -d /usr/local/share/sgml/docbook/dsssl/modular/html/docbook.dsl \
+ -t sgml file.sgml > file.html
+
+
+
+ Especifique o parâmetro nochunks
+ para as folhas de estilo, forçando
+ que todos os outputs sejam escritos para a saída
+ padrão (STDOUT) (utilizando as
+ folhas de estilo do Norm Walsh).
+
+
+
+ Especifique os catálogos que o
+ Jade terá que
+ processar. Três catálogos são
+ requeridos. O primeiro é o catálogo
+ que contém as informações sobre
+ as folhas de estilo DSSSL. O segundo contém
+ informações sobre o DTD DockBook. E
+ o terceiro contém informações
+ específicas para o
+ Jade.
+
+
+
+ Especifique o caminho completo das folhas de estilo
+ DSSSL as quais o Jade
+ irá utilizar quando estiver processando o
+ documento.
+
+
+
+ Instrua o Jade para
+ realizar uma transformação
+ de uma DTD para outra. Neste caso, a
+ entrada será transformada de um DTD DocBook
+ para um DTD HTML.
+
+
+ Especifique o arquivo que o
+ Jade deve processar, e
+ redirecione a saída para o arquivo
+ .html desejado.
+
+
+
+
+
+ Convertendo de DocBook para HTML (vários
+ arquivos pequenos)
+
+ &prompt.user; jade \
+ -c /usr/local/share/sgml/docbook/dsssl/modular/catalog \
+ -c /usr/local/share/sgml/docbook/catalog \
+ -c /usr/local/share/sgml/jade/catalog \
+ -d /usr/local/share/sgml/docbook/dsssl/modular/html/docbook.dsl \
+ -t sgml file.sgml
+
+
+
+ Especifique os catálogos os quais o
+ Jade terá que
+ processar. Três catálogos são
+ requeridos. O primeiro é o catálogo
+ o qual contém as informações
+ sobre as folhas de estilo DSSSL. O segundo
+ contém informações sobre o DTD
+ DocBook. O terceiro contém
+ informações específicas para
+ o Jade.
+
+
+
+ Especifique o caminho completo da folha de estilo
+ DSSSL a qual o Jade
+ irá utilizar quando estiver processando o
+ documento.
+
+
+
+ Instrua o Jade para
+ realizar a transformação
+ de uma DTD para outra. Neste caso, a
+ entrada será transformada de um DTD DocBook
+ para um DTD HTML.
+
+
+
+ Especifique o arquivo que o
+ Jade deve processar. A
+ folha de estilo determina como os arquivos HTML
+ individuais serão nomeados, inclusive o nome
+ do arquivo raiz (é o arquivo
+ que contém o inicio do documento).
+
+
+
+ Este exemplo pode continuar gerando apenas um
+ único arquivo HTML, dependerá da estrutura
+ do documento que você estiver processando e das
+ regras da folha de estilo selecionada, para divisão
+ do output.
+
+
+
+
+ Convertendo de DocBook para Postscript
+
+ O arquivo fonte SGML precisa ser convertido para um
+ arquivo &tex;.
+
+ &prompt.user; jade -V tex-backend \
+ -c /usr/local/share/sgml/docbook/dsssl/modular/catalog \
+ -c /usr/local/share/sgml/docbook/catalog \
+ -c /usr/local/share/sgml/jade/catalog \
+ -d /usr/local/share/sgml/docbook/dsssl/modular/print/docbook.dsl \
+ -t tex file.sgml
+
+
+
+ Customize as folhas de estilo para utilizar as
+ várias opções existentes,
+ específicas para a produção
+ de saídas &tex;.
+
+
+
+ Especifique os catálogos os quais o
+ Jade terá que
+ processar. Três catálogos são
+ requeridos. O primeiro é o catálogo o
+ qual contém as informações sobre
+ as folhas de estilo DSSSL. O segundo contém
+ informações sobre o DTD DocBook. O
+ terceiro contém informações
+ específicas para o Jade.
+
+
+
+ Especifique o caminho completo da folha de estilo
+ DSSSL a qual o Jade
+ irá utilizar quando estiver processando o
+ documento.
+
+
+
+ Instrua o Jade para
+ converter o output para &tex;.
+
+
+
+ O arquivo .tex gerado, deve ser
+ agora processado pelo tex, especificando
+ o pacote de macros &jadetex.
+
+ &prompt.user; tex "&jadetex" file.tex
+
+ Você tem que executar o tex
+ pelo menos três vezes. A
+ primeira execução irá processar o
+ documento, e determinar as áreas do documento que
+ são referenciadas a partir de outras partes do
+ documento, para uso na indexação, etc.
+
+ Não fique alarmado se você visualizar
+ mensagens de alertas tais como LaTeX Warning:
+ Reference `136' on page 5 undefined on input
+ line 728. neste momento.
+
+ A segunda execução reprocessa o documento
+ agora que certas peças de informação
+ são conhecidas (tais como o número de
+ páginas do documento). Isto permite indexar as
+ entradas e estabelecer as outras referências
+ cruzadas.
+
+ A terceira execução irá realizar
+ a limpeza final necessária no arquivo
+
+ O output deste estágio será um
+ arquivo.dvi.
+
+
+ Finalmente, execute o dvips para
+ converter o arquivo .dvi para o
+ formato Postscript.
+
+ &prompt.user; dvips -o file.ps file.dvi
+
+
+
+ Convertendo de DocBook para PDF
+
+ A primeira parte deste processo é idêntica ao
+ realizado quando se converte de DocBook para Postscript,
+ utilizando a mesma linha de comando para o
+ jade
+ ().
+
+ Quando o arquivo .tex já
+ tiver sido gerado, você deve executar o
+ pdfTeX utilizando o pacote de
+ macros &pdfjadetex.
+
+ &prompt.user; pdftex "&pdfjadetex" file.tex
+
+ De novo, execute este comando três vezes.
+
+ Ele irá gerar um arquivo
+ .pdf, o qual não necessita
+ de nenhum processamento adicional.
+
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/overview/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/overview/chapter.sgml
new file mode 100644
index 0000000000..b6370d426b
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/overview/chapter.sgml
@@ -0,0 +1,344 @@
+
+
+
+ Visão Geral
+
+ Seja bem vindo ao Projeto de Documentação do
+ FreeBSD. Documentação de boa qualidade é
+ muito importante para o sucesso do FreeBSD, e o Projeto de
+ Documentação do FreeBSD (FDP) é a origem
+ de muitos destes documentos. Suas contribuições
+ são muito importantes.
+
+ A finalidade principal deste documento é explicar
+ claramente como o FDP é organizado,
+ como escrever e como submeter documentos para o FDP
+ , e como utilizar de forma efetiva as
+ ferramentas que estão disponíveis para você
+ enquanto estiver escrevendo.
+
+ SociedadeTodos
+ são bem vindos para se juntar ao FDP. Não
+ existe nenhum requisito mínimo para a sua
+ associação, nenhuma quota de documentos que
+ você precise produzir por mês. Tudo o que você
+ precisa fazer é se inscrever na &a.doc;.
+
+ Depois que você tiver terminado de ler este documento,
+ você deve:
+
+
+
+ Saber quais documentos são mantidos pelo FDP.
+
+
+
+
+ Ser capaz de ler e entender o código fonte SGML
+ de um documento mantido pelo FDP.
+
+
+
+ Ser capaz de efetuar alterações num
+ documento.
+
+
+
+ Ser capaz de enviar suas alterações de
+ volta para revisão e eventual inclusão na
+ documentação do FreeBSD.
+
+
+
+
+ Conjunto de Documentação do FreeBSD
+
+ O FDP é responsável por quatro categorias de
+ documentos do FreeBSD.
+
+
+
+ Páginas de Manual
+
+
+ As páginas de manual do sistema na
+ língua inglesa não são escritas pelo
+ FDP, porque elas são parte da base do sistema.
+ Entretanto, o FDP pode (e tem) reescrever partes das
+ páginas de manual existentes para torná-las
+ mais claras, ou para corrigir imprecisões.
+
+ Os times de tradução são
+ responsáveis por traduzir as páginas de
+ manual do sistema para diferentes idiomas. Estas
+ traduções são mantidas pelo FDP.
+
+
+
+
+
+ FAQ
+
+
+ O objetivo do FAQ é consolidar (no formato de
+ perguntas e respostas curtas) as perguntas que foram
+ feitas, ou que podem ser feitas, nas várias
+ listas de discussão e newsgroups dedicados ao
+ FreeBSD. O formato não permite respostas longas
+ e detalhadas.
+
+
+
+
+ Handbook
+
+
+ O Handbook almeja ser um compreensivo recurso de
+ referência online para os usuários do
+ FreeBSD.
+
+
+
+
+ Web Site
+
+
+ Esta é a principal presença do FreeBSD
+ na World Wide Web, visível em
+
+ http://www.FreeBSD.org/
+ e em muitos sites espelhos ao redor do mundo. O web
+ site é o primeiro contato de muitas pessoas com o
+ FreeBSD.
+
+
+
+
+ A documentação do web site, do Handbook do
+ &os; e do FAQ estão disponíveis no
+ repositório Subversion doc/, que
+ está localizado em
+ svn://svn.FreeBSD.org/doc/.
+
+ As páginas de manual estão disponíveis
+ no repositório Subversion src/, que
+ está disponível em
+ svn://svn.FreeBSD.org/base/.
+
+ Isto significa que os logs das alterações
+ realizadas nestes arquivos é visível para qualquer
+ um, e qualquer pessoa pode utilizar o
+ svn para ver as
+ alterações.
+
+ Em adição, muitas pessoas escreveram
+ tutoriais ou outros web sites relacionados ao FreeBSD.
+ Alguns destes trabalhos também estão armazenados
+ no repositório Subversion (com a permissão
+ do autor). Em outros casos o autor decidiu manter o seu
+ documento separado do repositório principal do FreeBSD.
+ O FDP se esforça tanto quanto possível para
+ fornecer os links para estes documentos.
+
+
+
+
+ Antes de você iniciar
+
+ Este documento assume que você já sabe:
+
+
+
+ Como manter uma cópia local atualizada da
+ documentação do &os;, através da
+ manutenção de uma cópia local do
+ repositório Subversion do FreeBSD utilizando o
+ svn.
+
+
+
+ Como obter e instalar um novo software utilizando o
+ sistema de ports ou o &man.pkg.add.1; do FreeBSD.
+
+
+
+
+
+ Início Rápido
+
+ Se você deseja ir começando, e se sente
+ seguro de que pode ir pegando as coisas à medida que
+ avança, siga estas instruções.
+
+
+
+ Instale o meta-port
+ textproc/docproj.
+
+ &prompt.root; cd /usr/ports/textproc/docproj
+&prompt.root; make JADETEX=no install
+
+
+
+ Obtenha uma cópia local da árvore de
+ documentação do FreeBSD (doc)
+ utilizando o svn.
+
+ Se a velocidade da sua conexão ou se o espaço de
+ armazenamento do seu disco local forem motivo de
+ preocupação, o mínimo que você
+ vai precisar será uma cópia de trabalho dos
+ diretórios head/share, e
+ head/idioma/share
+ . Por exemplo:
+
+ &prompt.user; mkdir -p head/share
+&prompt.user; mkdir -p head/en_US.ISO8859-1/share
+&prompt.user; svn checkout svn://svn.FreeBSD.org/doc/head/share head/share
+&prompt.user; svn checkout svn://svn.FreeBSD.org/doc/head/en_US.ISO8859-1/share head/en_US.ISO8859-1/share
+
+ Se você tiver abundância de espaço
+ em disco, você pode retirar uma cópia de
+ trabalho completa (de todos os subdiretórios da
+ árvore doc).
+
+ &prompt.user; svn checkout svn://svn.FreeBSD.org/doc/head head
+
+
+
+
+ Se você está preparando uma
+ alteração de um artigo ou livro existente,
+ retire uma versão de trabalho do arquivo do
+ repositório. Se você está planejando
+ contribuir com um novo livro ou artigo, então
+ utilize um dos existentes como guia.
+
+ Por exemplo, se você deseja contribuir com um
+ novo artigo sobre como configurar uma VPN entre o FreeBSD
+ e o Windows 2000, você pode fazer o seguinte:
+
+
+
+ Retire uma cópia de trabalho do
+ diretório articles.
+
+ &prompt.user; svn checkout svn://svn.FreeBSD.org/doc/head/en_US.ISO8859-1/articles
+
+
+
+
+ Copie um artigo existente para utilizar como
+ template. Neste caso, você decidiu que o seu
+ novo artigo iria para um diretório chamado
+ vpn-w2k.
+
+ &prompt.user; cd head/en_US.ISO8859-1/articles
+&prompt.user; svn export committers-guide vpn-w2k
+
+
+
+
+ Se você deseja editar um documento existente,
+ como por exemplo o FAQ, o qual está em
+ head/en_US.ISO8859-1/books/faq, você deve
+ retirar a cópia de trabalho do repositório
+ da seguinte forma:
+
+ &prompt.user; svn checkout svn://svn.FreeBSD.org/doc/head/en_US.ISO8859-1/books/faq
+
+
+
+
+ Edite os arquivos .sgml
+ utilizando o editor da sua preferência.
+
+
+
+ Teste a marcação SGML utilizando o alvo
+ lint com o comando make. Isto
+ irá listar rapidamente qualquer erro existente no
+ documento sem realizar qualquer tipo de
+ transformação no seu arquivo, o que
+ consumiria tempo.
+
+ &prompt.user; make lint
+
+ Quando você estiver pronto para efetivamente
+ compilar o documento, você pode especificar um
+ único formato ou uma lista de formatos de destino,
+ na variável FORMATS. Atualmente
+ os formatos suportados são, html,
+ html-split, txt,
+ ps, pdf, e
+ rtf. A lista mais atualizada dos
+ formatos suportados está listada no início do
+ arquivo head/share/mk/doc.docbook.mk.
+ Certifique-se de utilizar aspas
+ (") em volta da lista de formatos quando
+ você estiver compilando mais de um formato num
+ único comando.
+
+ Por exemplo, para converter o documento apenas para
+ html, você deve utilizar:
+
+ &prompt.user; make FORMATS=html
+
+ Mas quando você deseja converter o documento
+ tanto para o formato html quanto para
+ o formato txt, você pode utilizar
+ duas execuções separadas do &man.make.1;,
+ como a seguir:
+
+ &prompt.user; make FORMATS=html
+&prompt.user; make FORMATS=txt
+
+ ou, você pode fazer isso em um único
+ comando:
+
+ &prompt.user; make FORMATS="html txt"
+
+
+
+ Envie suas alterações utilizando o
+ &man.send-pr.1;.
+
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/psgml-mode/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/psgml-mode/chapter.sgml
new file mode 100644
index 0000000000..7d4566414d
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/psgml-mode/chapter.sgml
@@ -0,0 +1,195 @@
+
+
+
+ Usando sgml-mode com o
+ Emacs
+
+ As versões recentes do Emacs
+ ou XEmacs (disponível na
+ coleção dos ports) contêm
+ um pacote muito útil chamado PSGML (ele pode ser instalado
+ pelo editors/psgml). Ele
+ é automaticamente invocado quando um arquivo com a
+ extensão .sgml é carregado, ou
+ executando M-x sgml-mode, ele é a
+ modalidade principal para tratar dos elementos e dos atributos de
+ um arquivo SGML.
+
+ Compreender alguns dos comandos fornecidos por esta modalidade
+ pode tornar o trabalho com os documentos em SGML, tais como o
+ Handbook, muito mais fácil.
+
+
+
+ C-c C-e
+
+
+ Executa o sgml-insert-element.
+ Você será questionado sobre o nome do elemento
+ que deseja inserir no ponto atual. Você pode usar a
+ tecla TAB para completar o elemento.
+ Os elementos que são inválidos no ponto
+ atual não serão permitidos.
+
+ As tags de abertura e de fechamento para o elemento
+ serão inseridas. Se o elemento contiver outro,
+ obrigatórios, os elementos destes também
+ serão inseridos.
+
+
+
+
+ C-c =
+
+
+ Executa o sgml-change-element-name.
+ Coloque o cursor dentro de um elemento e execute este
+ comando. Você será questionado sobre o nome do
+ elemento para o qual você deseja mudar. As tags de
+ abertura e de fechamento do elemento atual serão
+ alterados para o novo elemento.
+
+
+
+
+ C-c C-r
+
+
+ Executa o sgml-tag-region.
+ Selecione algum texto (posicione o cursor no começo
+ do texto, de C-espaço, agora
+ posicione o cursor no final do texto,
+ de C-espaço) e
+ execute então este comando. Você
+ será questionado sobre o nome do elemento que deseja
+ inserir. Este elemento será inserido então
+ imediatamente antes e depois da região
+ marcada.
+
+
+
+
+ C-c -
+
+
+ Executa o sgml-untag-element.
+ Coloque o cursor dentro da tag de abertura ou de fechamento
+ do elemento que você quer remover, e execute este
+ comando. As tags de abertura ou de fechamento do elemento
+ serão removidas.
+
+
+
+
+ C-c C-q
+
+
+ Executa o sgml-fill-element.
+ Irá reformatar recursivamente o elemento atual. A
+ reformatação afetará
+ o conteúdo em que os espaços em
+ branco são significativos, como dentro de elementos
+ programlisting, assim utilize este
+ comando com cuidado.
+
+
+
+
+ C-c C-a
+
+
+ Executa o sgml-edit-attributes.
+ Abre um segundo buffer que contém
+ uma lista de todos os atributos e valores atuais para o
+ elemento mais próximo. Use a tecla
+ TAB para navegar entre os atributos,
+ utilize C-k para remover um
+ valor existente e para substituí-lo com um novo,
+ utilize C-c C-c para fechar este
+ buffer e para retornar ao documento
+ principal.
+
+
+
+
+ C-c C-v
+
+
+ Executa o sgml-validate.
+ Você será questionado se deseja salvar
+ o documento atual (se necessário) e então
+ executa uma validação do SGML.
+ A saída da validação é
+ capturada em um novo buffer, e
+ você poderá então navegar de
+ um foco de problema para outro, corrigindo os erros
+ de marcação durante este processo.
+
+
+
+
+ C-c /
+
+ Executa sgml-insert-end-tag.
+ Insere a tag de fechamento para o elemento atual que
+ está aberto.
+
+
+
+
+ Sem dúvida há outras funções
+ úteis desta modalidade, mas estas são as que
+ você irá utilizar com mais frequência.
+
+ Você também pode usar as seguintes entradas no
+ .emacs para ajustar o espaçamento
+ apropriado, a identação, e a largura de coluna para
+ trabalhar com o projeto de documentação.
+
+ (defun local-sgml-mode-hook
+ (setq fill-column 70
+ indent-tabs-mode nil
+ next-line-add-newlines nil
+ standard-indent 4
+ sgml-indent-data t)
+ (auto-fill-mode t)
+ (setq sgml-catalog-files '("/usr/local/share/sgml/catalog")))
+ (add-hook 'psgml-mode-hook
+ '(lambda () (local-psgml-mode-hook)))
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/see-also/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/see-also/chapter.sgml
new file mode 100644
index 0000000000..78ebc0dbc9
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/see-also/chapter.sgml
@@ -0,0 +1,139 @@
+
+
+
+ Veja também
+
+ Este documento não é deliberadamente uma
+ discussão exaustiva sobre SGML, DTDs, ou do projeto de
+ documentação do FreeBSD. Para obter maiores
+ informações, sugerimos que você visite os
+ seguintes sítios web.
+
+
+ Projeto de documentação do FreeBSD
+
+
+
+ Páginas web do
+ Projeto de documentação do
+ FreeBSD
+
+
+
+ Manual do
+ FreeBSD
+
+
+
+
+
+ SGML
+
+
+
+ Página web
+ sobre SGML/XML, referências detalhadas sobre
+ SGML
+
+
+
+
+ Uma breve introdução ao SGML
+
+
+
+
+
+ HTML
+
+
+
+ Consórcio
+ World Wide Web
+
+
+
+ As
+ especificações do HTML 4.0
+
+
+
+
+
+ DocBook
+
+
+
+ O
+ comitê técnico do DocBook,
+ responsáveis pelo DTD DocBook.
+
+
+
+ DocBook: O guia
+ definitivo, documentação online para
+ o DTD DocBook.
+
+
+
+
+ Repositório
+ aberto de DocBook contém folhas de estilo
+ DSSSL e outros recursos para pessoas que utilizam
+ DocBook.
+
+
+
+
+
+ Projeto de documentação do Linux
+
+
+
+ Pagínas web
+ do projeto de documentação do Linux
+
+
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/sgml-markup/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/sgml-markup/chapter.sgml
new file mode 100644
index 0000000000..6e72ad7aea
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/sgml-markup/chapter.sgml
@@ -0,0 +1,3040 @@
+
+
+
+ Marcação SGML
+
+ Esse capítulo descreve as duas linguagens de
+ marcação que você vai encontrar quando for
+ contribuir para o projeto de documentação do
+ FreeBSD. Cada seção descreve a linguagem de
+ marcação, e detalha a marcação que
+ você provavelmente vai querer usar ou que já
+ está utilizando.
+
+ Estas linguagens de marcação contém um
+ grande número de elementos, e as vezes pode ser
+ confuso escolher qual elemento usar em uma situação
+ específica. Esta seção apresenta os elementos
+ que provavelmente você vai precisar e fornece exemplos de
+ como utilizá-los.
+
+ Esta não é uma lista
+ detalhada de elementos, uma vez que ela apenas ratifica a
+ documentação de cada linguagem. O objetivo desta
+ seção é listar os elementos mais
+ úteis para você. Se você tiver alguma
+ dúvida sobre qual a melhor forma de marcar um pedaço
+ específico do seu documento, por favor, envie a sua
+ dúvida para a &a.doc;.
+
+
+ Inline Versus Block
+
+ No restante deste documento, quando descrevermos um elemento
+ como inline significará que o elemento
+ pode ocorrer dentro de um bloco de elementos, que ele não
+ acarretará em uma quebra de linha. Um elemento
+ block, por comparação, irá
+ causar uma quebra de linha (e outros processamentos) quando for
+ encontrado.
+
+
+
+ HTML
+
+ O HTML, Linguagem de Marcação de Hypertexto,
+ é a linguagem de marcação escolhida para a
+ World Wide Web. Maiores informações
+ podem ser encontradas em
+ .
+
+ O HTML é utilizado para a marcação das
+ páginas do web site do FreeBSD. Ele não deveria ser
+ utilizado (geralmente) para marcar outros tipos de documentos
+ já que o DocBook oferece uma maior
+ variedade de elementos. Consequentemente, você só
+ irá encontrar páginas em HTML se estiver escrevendo
+ para o web site.
+
+ O HTML já passou por algumas versões, 1, 2, 3.0,
+ 3.2 e a última, 4.0 (disponível nas duas variantes,
+ strict e loose).
+
+ Os HTML DTD's estão disponíveis na
+ coleção de ports na pasta
+ textproc/html. Eles
+ são automaticamente instalados como parte do
+ port
+ textproc/docproj
+
+
+ Identificador Público Formal (IPF)
+
+ Existem vários IPF's para o HTML, os quais dependem
+ da versão (também conhecida como nível)
+ do HTML que você quer declarar compatível com seu
+ documento.
+
+ A maioria dos documentos HTML no web site do
+ FreeBSD estão de acordo com a versão
+ loose do HTML 4.0.
+
+ PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
+
+
+
+ Elementos de Seção
+
+ Um documento HTML é normalmente dividido em duas
+ partes. A primeira é chamada de
+ head, a qual contém
+ meta-informações sobre o documento, tais como o
+ seu título, o nome do autor, o documento pai e assim por
+ diante. A segunda parte, o body é
+ contém o conteúdo que vai ser exibido para o
+ usuário.
+
+ Estas seções são indicadas pelos
+ elementos head e body,
+ respectivamente. Esses elementos estão contidos dentro
+ de um elemento html de alto-nível.
+
+
+ Estrutura Normal de um Documento HTML
+
+ <html>
+ <head>
+ <title>Título do Documento</title>
+ </head>
+
+ <body>
+
+ …
+
+ </body>
+</html>
+
+
+
+
+ Bloco de Elementos
+
+
+ Cabeçalho
+
+ O HTML permite a denotação de
+ cabeçalho em seu documento, de até seis
+ níveis diferentes.
+
+ O maior e mais proeminente cabeçalho é o
+ h1, depois vem o h2,
+ assim por diante até h6.
+
+
+ O conteúdo dos elementos é o texto do
+ cabeçalho.
+
+
+ h1, h2, e
+ outras Tags de Header.
+
+ Uso:
+
+ Primeira seção
+
+
+
+
Este é o cabeçalho da primeira seção
+
+
+
+
Este é o cabeçalho da primeira subseção
+
+
+
+
Este é o heading para a segunda seção
+
+]]>
+
+
+ Geralmente, uma página HTML deveria ter um
+ cabeçalho de primeiro nível
+ (h1). Este poderia conter muitos
+ cabeçalhos de segundo nível
+ (h2), os quais por sua vez podem conter
+ muitos cabeçalhos de terceiro nível. Cada
+ elemento hn
+ deve ter o mesmo elemento, sendo que os elementos mais acima
+ na hierarquia estarão subtraídos de um. Deve-se evitar
+ buracos na numeração.
+
+
+ Má organização de elementos
+ hn
+
+ Uso:
+
+ Primeira seção
+
+
+
+
Subseção
+
+]]>
+
+
+
+
+ Parágrafos
+
+ O HTML suporta elementos formados de um único
+ parágrafo p.
+
+
+ p
+
+ Uso:
+
+ Isto é um parágrafo. Pode conter qualquer outro elemento
]]>
+
+
+
+
+ Bloco de Citação
+
+ Um bloco de citação é uma
+ citação estendida de outro documento que
+ não deveria aparecer no parágrafo
+ atual.
+
+
+ blockquote
+
+ Uso:
+
+ Um pequeno trecho da constituição dos Estados Unidos:
+
+
+Nós, povo dos Estados Unidos, com o objetivo de fazer uma
+união mais perfeita, estabelecer justiça, garantir
+tranquilidade doméstica, promover uma defesa comum, promover
+bem estar geral, assegurar as benções da liberdade para
+nós mesmos e nossa posteridade, organizamos e estabelecemos
+essa constituição para os estados Unidos da América.
+
]]>
+
+
+
+
+ Listas
+
+ Você pode apresentar ao usuário três
+ tipos de listas, ordenadas, desordenadas e de
+ definição.
+
+
+ Tipicamente, cada entrada em uma lista ordenada,
+ é numerada enquanto nas listas desordenadas
+ serão processadas por um bullet point. Listas de
+ definição são compostas de duas
+ partes para cada entrada a primeira é o termo a ser
+ definido, e a segunda, é a definição
+ em si.
+
+ As Listas ordenadas, desordenadas e de
+ definição, são indicadas pelos
+ elementos ol, ul e
+ dl, respectivamente.
+
+ Listas ordenadas e desordenadas contém itens de
+ lista, indicados pelo elemento li. Um
+ item de lista pode conter texto, podendo inclusive conter
+ um ou mais elementos p.
+
+ Listas de definição contém o termo
+ a ser definido (dt) e a
+ descrição do termo (dd).
+ A definição de um termo só pode conter
+ elementos inline. A
+ descrição do termo pode conter elementos do
+ tipo block.
+
+
+ ul e ol
+
+ Uso:
+
+ Uma lista não ordenada. Os itens serão provavelmente
+precedidos por uma esfera sólida.
+
+
+
Primeiro item
+
+
Segundo item
+
+
Terceiro item
+
+
+
Uma lista ordenada, com itens de lista com vários
+parágrafos. Cada item (nota: não cada parágrafo)
+será numerado.
+
+
+
Este é o primeiro item. Tem apenas um parágrafo.
+
+
Este é o primeiro parágrafo do segundo item.
+
+
Este é o segundo parágrafo do segundo item.
+
+
Este é o primeiro e único parágrafo do terceiro item.
+]]>
+
+
+
+ Listas de Definição com
+ dl
+
+ Uso:
+
+
+
Termo 1
+
+
Parágrafo 1 da definição 1.
+
+
Parágrafo 2 da definição 1.
+
+
Termo 2
+
+
Parágrafo 1 da definição 2.
+
+
Termo 3
+
+
Parágrafo 1 da definição 3.
+]]>
+
+
+
+
+ Texto Pré-Formatado
+
+ Você pode indicar que o texto deve ser
+ apresentado exatamente como esta no arquivo. Tipicamente,
+ isto significa que o texto será mostrado em fonte fixa,
+ múltiplos espaços não serão fundidos em
+ um e que as quebras de linha no texto serão
+ significativas.
+
+ Para fazer isto, envolva o conteúdo com o
+ elemento pre:
+
+
+ pre
+
+ Você pode usar pre para
+ marcar uma mensagem de email;
+
+
+ From: nik@FreeBSD.org
+ To: freebsd-doc@FreeBSD.org
+ Subject: New documentation available
+
+ There is a new copy of my primer for contributors to the FreeBSD
+ Documentation Project available at
+
+ <URL:http://people.FreeBSD.org/~nik/primer/index.html>
+
+ Comments appreciated.
+
+ N
+]]>
+
+ Tenha em mente que o < e o
+ & continuam sendo reconhecidos como
+ caracteres especiais em um texto pré-formatado.
+ É por isto que nos exemplos tivemos que utilizar
+ < ao invés de
+ <. Para manter a consistência,
+ o > também foi utilizado
+ no lugar do >. Fique atento para
+ caracteres especiais que podem aparecer em textos copiados
+ de origens não formatadas, como por exemplo, de uma
+ mensagem de email ou do código fonte de um
+ programa.
+
+
+
+
+
+ Tabelas
+
+
+ A maioria dos navegadores de modo texto (tal como o
+ Lynx) não apresentam tabelas de maneira muito
+ eficiente. Se você quiser que o seu conteúdo
+ seja apresentado em forma de tabelas, você deve
+ considerar outra marcação para evitar
+ problemas.
+
+
+ Marque a informação tabular com o elemento
+ table. Uma tabela consiste de uma ou
+ mais linhas (tr), cada uma contendo uma
+ ou mais células de dados (td).
+ As células podem conter outros elementos de bloco,
+ como parágrafos ou listas. Também pode
+ conter outra tabela (este aninhamento pode ser repetido
+ indefinidamente). Se a célula contém apenas
+ um parágrafo, então não é
+ necessário incluir o elemento p.
+
+
+ Uso Simples de table
+
+ Uso:
+
+ Esta é uma simples tabela 2x2.
+
+
+
+
Célula esquerda superior
+
+
Célula direita superior
+
+
+
+
Célula esquerda inferior
+
+
Célula direita inferior
+
+
]]>
+
+ Uma célula pode se estender por muitas linhas
+ e colunas. Para indicar isto, coloque o atributo
+ rowspan e/ou colspan,
+ com valores que indiquem o número de linhas ou
+ colunas a serem ocupados.
+
+
+ Utiliizando rowspan
+
+ Uso:
+
+ Uma célula comprida e estreita na esquerda e duas
+células pequenas à direita.
+
+
+
+
Comprida e estreita
+
+
+
+
Célula superior
+
+
Célula inferior
+
+
]]>
+
+
+
+ Usando colspan
+
+ Uso:
+
+ Uma célula longa em cima, duas células abaixo.
+
+
+
+
Célula superior
+
+
+
+
Célula inferior esquerda
+
+
Célula inferior direita
+
+
]]>
+
+
+
+ Usando rowspan e
+ colspan juntos
+
+ Uso:
+
+ Numa tabela 3x3, o bloco superior esquerdo é um conjunto
+2x2 fundidos em um. As outras células são normais.
+
+
+
+
Célula esquerda superior grande
+
+
Célula direita superior
+
+
+
+
+
Célula do meio a direita
+
+
+
+
Célula inferior esquerda
+
+
Célula inferior central
+
+
Célula inferior direita
+
+
]]>
+
+
+
+
+
+ Elementos In-line
+
+
+ Enfatizando a Informação
+
+ Você tem dois níveis de ênfase
+ disponíveis em HTML, em e
+ strong. O em é
+ para uma ênfase simples e o strong
+ indica uma ênfase mais forte.
+
+ Em geral, em é apresentada em
+ itálico e strong é
+ apresentada em negrito. Mas nem sempre é assim, e
+ você não deve contar com isso.
+
+
+ em e strong
+
+
+ Uso:
+
+ Este foi enfatizado
+enquanto este foi fortemente enfatizado.]]>
+
+
+
+
+
+ Negrito e Itálico
+
+ Uma vez que o HTML inclui marcação de
+ apresentação, você também pode
+ indicar que um conteúdo deve ser apresentado em
+ negrito ou itálico. Os elementos são
+ b e i
+ respectivamente.
+
+
+ b e i
+
+ Este esta em negrito,
+enquanto este está em itálico.]]>
+
+
+
+
+
+ Indicando Texto de Fonte Fixa
+
+ Se você tiver conteúdo que deve ser
+ apresentado em fonte fixa (typewriter), use
+ tt (de teletipo).
+
+
+ tt
+
+ Uso:
+
+ Este documento foi originalmente por
+Nik Clayton, que pode ser encontrado por email em
+nik@FreeBSD.org.]]>
+
+
+
+
+ Tamanho do Conteúdo
+
+ Você pode indicar que o conteúdo deve ser
+ apresentado em uma fonte maior ou menor. Existem
+ três maneiras de fazer isto:
+
+
+
+ Use big e
+ small
+ em torno do texto que você deseja mudar o
+ tamanho. Estas tags podem ser aninhadas, assim
+ <big><big>Este é muito
+ maior</big></big> é
+ possível.
+
+
+
+ Use font com o atributo
+ size ajustado para
+ +1 ou -1
+ respectivamente. Isto tem o mesmo efeito que
+ big ou small.
+ Entretanto esta forma está ultrapassada.
+
+
+
+ Use font com o atributo
+ size com um número entre
+ 1 e 7.
+ O tamanho da fonte padrão é
+ 3. Esta forma está
+ ultrapassada.
+
+
+
+
+ big, small, e
+ font
+
+ Todos os fragmentos fazem a mesma coisa.
+
+ Este texto é ligeiramente menor.
+Mas este texto é ligeiramente maior.
+
+
Este texto é ligeiramente menor.
+Mas este texto é ligeiramente maior.
+
+
Este texto é ligeiramente menor.
+Mas este texto é ligeiramente maior.
]]>
+
+
+
+
+
+ Links
+
+
+ Os links também são elementos in-line.
+
+
+
+ Ligando-se a Outros Documentos
+
+ Para incluir um link para outro documento na WWW
+ você deve saber o URL do documento ao qual deseja se
+ ligar.
+
+ O link é indicado com a, e o
+ atributo href contém o URL do
+ documento de destino. O conteúdo do elemento se torna o
+ link, e geralmente é indicado para o usuário
+ de alguma maneira (sublinhado, mudança de cor, o
+ formato do cursor do mouse muda quando está sobre
+ ele, etc.
+
+
+ Usando <a href="...">
+
+
+ Uso:
+
+ Maiores informações estão disponíveis no
+web site do FreeBSD.]]>
+
+
+ Este link irá levar o usuário ao topo do
+ documento escolhido.
+
+
+
+ Ligando-se a Outras Partes de um Documento
+
+ Para fazer um link a um ponto dentro de outro
+ documento (ou dentro do mesmo documento), é
+ necessário que o autor do documento inclua
+ âncoras ao qual você possa se ligar.
+
+ Âncoras são indicadas com
+ a e o atributo name
+ ao invés de href.
+
+
+ Usando <a name="...">
+
+
+ Uso:
+
+ Este parágrafo pode ser referenciado
+em outros links com o nomepara1.]]>
+
+
+ Para fazer um link a uma determinada parte de um
+ documento, faça um link normal para aquele documento,
+ mas inclua o nome da âncora após o
+ símbolo #.
+
+
+ Link para uma determinada parte de outro
+ documento
+
+ Suponha que o exemplo para1 esteja
+ em um documento chamado foo.html.
+
+
+ Mais informação no primeiro
+parágrafo de foo.html.]]>
+
+
+
+ Se você for incluir um link para uma âncora
+ dentro do mesmo documento você pode omitir o URL do
+ documento, e usar apenas o nome da âncora (precedido
+ por #).
+
+
+ Links para determinada parte do mesmo
+ documento
+
+ Suponha que o exemplo para1 esteja neste documento
+
+ Mais informação no primeiro
+parágrafo deste documento.]]>
+
+
+
+
+
+
+ DocBook
+
+ O DocBook foi originalmente desenvolvido por HaL Computer
+ Systems e O'Reilly & Associates como um DTD para escrever
+ documentação técnica
+ Uma pequena história sobre este assunto
+ pode ser encontrada em
+
+ http://www.oasis-open.org/docbook/intro.shtml#d0e41.
+ . E desde 1998 tem sido mantido pelo
+
+ DocBook Technical Committee. Desta forma, ao
+ contrário do LinuxDoc e do HTML, o DocBook é
+ fortemente orientado a marcação que descreve
+ o que é alguma coisa, ao
+ invés de descrever como ela deve
+ ser apresentada.
+
+
+ Formal Versus Informal
+
+ Alguns elementos podem existir em duas formas,
+ formal e informal.
+ Tipicamente, a versão formal dos elementos
+ consistirá de um título seguido da
+ versão informal do elemento. A versão informal
+ não terá um título.
+
+
+ O DocBook DTD está disponível na
+ coleção de ports como
+ textproc/docbook.
+ Ele é automaticamente instalado como parte do port
+ textproc/docproj.
+
+
+ Extensões FreeBSD
+
+ O Projeto de Documentação do FreeBSD
+ ampliou o DocBook DTD adicionando alguns elementos novos.
+ Estes elementos têm como objetivo tornar algumas
+ marcações mais precisas.
+
+ Os elementos específicos introduzidos pelo FreeBSD
+ estarão claramente destacados quando forem listados
+ abaixo.
+
+ No restante deste documento, o termo
+ DocBook deve ser interpretado como sendo a
+ versão do DocBook DTD ampliado pelo projeto de
+ documentação do FreeBSD.
+
+
+ Não existe nada nestas extenssões
+ que seja específico ao FreeBSD, apenas percebemos
+ que elas seriam melhorias para este projeto em particular.
+ Se alguém dos demais projetos *nix (NetBSD, OpenBSD,
+ Linux, ...) tiver interesse em colaborar para a
+ criação de um conjunto de extensões
+ DocBook padrão, por favor entre em
+ contato com &a.doceng;.
+
+
+ As extensões &os; não estão
+ (atualmente) na coleção de ports. Elas
+ estão armazenadas na árvore Subversion do &os;,
+ como
+ head/share/sgml/freebsd.dtd.
+
+
+
+ Identificador Formal Público (IFP)
+
+ De acordo com as diretrizes DocBook para a escrita de
+ IPF's para adaptação do DocBook, o IPF para
+ o DocBook estendido do FreeBSD é:
+
+ PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN"
+
+
+
+ Estrutura dos Documentos
+
+ DocBook permite que você estruture sua
+ documentação de várias maneiras. No
+ projeto de documentação do FreeBSD nós
+ estamos utilizando dois tipos primários de documentos
+ DocBook: o livro e o artigo.
+
+ Um livro é organizado em
+ chapters (capítulos). Isso é um
+ requerimento obrigatório. Podem existir
+ parts (partes) entre o livro e os
+ capítulos para fornecer mais uma camada de
+ organização. O Handbook, por exemplo,
+ é organizado desta maneira.
+
+ Um capítulo pode (ou não) conter uma ou mais
+ sessões. Estas são indicadas pelo elemento
+ sect1. Se uma sessão
+ contém outra sessão, então use o
+ elemento sect2, e assim por diante
+ até sect5.
+
+ Capítulos e sessões contém o
+ restante do conteúdo.
+
+ Um artigo é mais simples do que um livro, e
+ não usa capítulos. Ao invés disso, o
+ conteúdo de um artigo é organizado em uma ou
+ mais sessões, usando os mesmos elementos
+ sect1 (e sect2 e assim por
+ diante) que são usados nos livros.
+
+ Obviamente, você deve considerar a natureza da
+ documentação que você esta escrevendo
+ para poder decidir se é melhor uma
+ marcação formatada como um livro ou um artigo.
+ Artigos suportam bem informações
+ que não precisam ser divididas em capítulos,
+ isto é, relativamente pequena, com mais ou menos 20
+ a 25 páginas de conteúdo. Livros suportam
+ melhor informações que se dividem em
+ capítulos com apêndices e conteúdos similares.
+
+
+ Os tutoriais sobre
+ FreeBSD estão marcados na forma de artigos,
+ enquanto por exemplo este documento,
+ o FAQ do FreeBSD,
+ e o Handbook do
+ FreeBSD estão marcados na forma como livros.
+
+
+ Iniciando um Livro
+
+ O conteúdo de um livro deve estar contido
+ dentro do elemento book. Assim como
+ outros elementos de marcação estrutural, esse
+ elemento pode conter elementos que incluam
+ informações adicionais sobre o livro. Isto
+ é tanto meta-informação, utilizada para
+ fins de referência, ou conteúdo adicional
+ usado para produzir uma página de
+ título.
+
+ Estas informações adicionais devem estar
+ contidas dentro do elemento bookinfo.
+
+
+ Modelo padrão book com
+ bookinfo
+
+
+ <book>
+ <bookinfo>
+ <title>Seu título aqui</title>
+
+ <author>
+ <firstname>Seu primeiro nome aqui</firstname>
+ <surname>Seu sobrenome</surname>
+ <affiliation>
+ <address><email>Seu endereço de correio eletrônico aqui</email></address>
+ </affiliation>
+ </author>
+
+ <copyright>
+ <year>1998</year>
+ <holder role="mailto:seu endereço de email">Seu nome</holder>
+ </copyright>
+
+ <releaseinfo>$FreeBSD$</releaseinfo>
+
+ <abstract>
+ <para>Inclua um resumo do conteúdo do seu livro aqui.</para>
+ </abstract>
+ </bookinfo>
+
+ …
+
+</book>
+
+
+
+
+ Começando um Artigo
+
+ O conteúdo do artigo deve estar contido dentro
+ do elemento article. Assim como
+ outros elementos de marcação estrutural,
+ esse elemento pode conter elementos que incluam
+ informações adicionais sobre o artigo.
+ Isto é tanto meta-informação,
+ utilizada para fins de referência, ou conteúdo
+ adicional usado para produzir uma página de
+ título.
+
+ Estas informações adicionais devem estar
+ contidas dentro do elemento
+ articleinfo.
+
+
+ Modelo padrão article com
+ articleinfo
+
+
+ <article>
+ <articleinfo>
+ <title>Seu título aqui</title>
+
+ <author>
+ <firstname>Seu primeiro nome</firstname>
+ <surname>Seu sobrenome</surname>
+ <affiliation>
+ <address><email>Seu endereço de email</email></address>
+ </affiliation>
+ </author>
+
+ <copyright>
+ <year>1998</year>
+ <holder role="mailto:seu endereço de email">Seu nome</holder>
+ </copyright>
+
+ <releaseinfo>$FreeBSD$</releaseinfo>
+
+ <abstract>
+ <para>Inclua um resumo do conteúdo do artigo aqui.</para>
+ </abstract>
+ </articleinfo>
+
+ …
+
+</article>
+
+
+
+ Indicando Capítulos
+
+ Utilize chapter para marcar seus
+ capítulos. Cada capítulo tem
+ obrigatoriamente um title.
+ Artigos não contêm capítulos, estes
+ são reservados para os livros.
+
+
+ Um capítulo simples
+
+
+ Título do capítulo
+
+ ...
+]]>
+
+
+ Um capítulo não pode ser vazio; ele
+ precisa conter elementos além do
+ title. Se você precisar incluir
+ um capítulo vazio então você
+ precisará incluir um parágrafo vazio.
+
+
+ Capítulos Vazios
+
+
+ Isto é um capítulo vazio
+
+
+]]>
+
+
+
+
+ Sessões Abaixo dos Capítulos
+
+ Em um livro, os capítulos podem (mas não
+ é obrigatoriamente necessário) ser
+ quebrados em seções, subseções,
+ e assim por diante. Em um artigo, as seções
+ são os principais elementos estruturais, e cada artigo
+ deve conter pelo menos uma seção. Utilize o
+ elemento sectn. O
+ n indica o número da
+ seção o qual identifica o nível da
+ seção.
+
+ A primeira
+ sectn é
+ sect1. Você pode ter uma ou mais
+ desta em um só capítulo. Elas podem conter
+ um ou mais elementos sect2, e assim por
+ diante, até sect5.
+
+
+ Seções em Capítulos
+
+
+ Um exemplo de capítulo
+
+ Algum texto dentro do capítulo
+
+
+ Primeira seção (1.1)
+
+ …
+
+
+
+ Segunda seção (1.2)
+
+
+ Primeira subseção (1.2.1)
+
+
+ Primeira sub-subseção (1.2.1.1)
+
+ …
+
+
+
+
+ Segunda subseção (1.2.2)
+
+ …
+
+
+]]>
+
+
+
+ Este exemplo inclui os números das
+ seções nos títulos de
+ seções. Você não deve fazer
+ isso nos seus documentos. A inserção dos
+ números de seção é realizada
+ pelas folhas de estilo (falaremos delas mais a frente), e
+ você não precisa gerenciá-los
+ manualmente.
+
+
+
+
+ Subdividindo Utilizando o Elemento
+ Part
+
+ Você pode introduzir outra camada de
+ organização entre book e
+ chapter utilizando uma ou mais
+ parts. Isto não pode ser
+ feito em um article.
+
+
+ Introdução
+
+
+ Visão Geral
+
+ ...
+
+
+
+ O que é FreeBSD?
+
+ ...
+
+
+
+ História
+
+ ...
+
+]]>
+
+
+
+
+ Elementos de Blocos
+
+
+ Parágrafos
+
+ O DocBook suporta três tipos de parágrafos:
+ formalpara, para, e
+ simpara.
+
+ Na maioria das vezes você só vai precisar
+ usar para. O
+ formalpara inclui um elemento
+ title, e o simpara
+ desabilita alguns elementos dentro de
+ para. Fique com o
+ para.
+
+
+ para
+
+ Uso:
+
+ Isso é um parágrafo. E pode conter quase
+ qualquer outro elemento. ]]>
+
+ Aparência:
+
+ Isso é um parágrafo. E pode conter
+ quase qualquer outro elemento.
+
+
+
+
+ Bloco de Citações
+
+ Um bloco de citação é uma longa
+ citação de outro documento que não
+ deveria aparecer no parágrafo atual. Você
+ não irá usá-lo com muita
+ frequência.
+
+ Um bloco de citação pode conter
+ opcionalmente um título e uma atribuição
+ (ou eles podem ser deixados sem título e sem
+ atributos)
+
+
+ blockquote
+
+ Uso:
+
+ Um pequeno pedaço da Constituição dos Estados Unidos:
+
+
+ Preâmbulo da constituição dos Estados Unidos.
+
+ Copiado de um site qualquer
+
+ Nós, povo dos Estados Unidos, com o objetivo de
+ fazer uma união mais perfeita, estabelecer justiça,
+ garantir tranquilidade doméstica, promover uma defesa comum, promover
+ bem estar geral, assegurar as benções da
+ liberdade para nós mesmos e nossa posteridade, organizamos e
+ estabelecemos essa constituição para os estados Unidos
+ da América.
+
]]>
+
+ Aparência:
+
+ Um pequeno pedaço da
+ Constituição dos Estados Unidos
+
+
+ Preâmbulo da constituição dos Estados Unidos.
+
+ Copiado de um site qualquer
+
+ Nós, povo dos Estados Unidos, com o objetivo de
+ fazer uma união mais perfeita, estabelecer justiça,
+ garantir tranquilidade doméstica, promover uma defesa comum, promover
+ bem estar geral, assegurar as benções da
+ liberdade para nós mesmos e nossa posteridade, organizamos e
+ estabelecemos essa constituição para os estados Unidos
+ da América.
+
+
+
+
+
+ Dicas, notas, avisos, informações
+ importantes e sidebars.
+
+ Talvez você precise incluir
+ informações extras separadas do corpo
+ principal do texto. Tipicamente isto é
+ meta informação que o
+ usuário deve tomar conhecimento.
+
+ Dependendo da natureza da informação,
+ devemos utilizar o elemento tip,
+ note, warning,
+ caution, ou important.
+ Alternativamente, se a informação é
+ relacionada ao corpo principal do texto e não se
+ encaixa em nenhum dos objetos acima, utilize
+ sidebar.
+
+ As circunstâncias na qual se deve escolher um elemento ao invés
+ do outro não é clara. A documentação do DocBook sugere que:
+
+
+
+
+ A note é uma
+ informação que deve ser lida por todos
+ os leitores.
+
+
+
+ A important é uma
+ variação do note.
+
+
+
+
+ A caution é usada para
+ informar sobre uma possível perda de dados ou
+ possível dano causado pelo software.
+
+
+
+ O warning é usado para
+ informações sobre possíveis danos
+ ao hardware, sobre risco de vida ou de ferimento a um
+ membro.
+
+
+
+
+ warning
+
+ Uso:
+
+
+Instalar o FreeBSD talvez faça com que você queira
+desinstalar o Windows do seu Hard disk.
+]]>
+
+
+ Aparência:
+
+
+ Instalar o FreeBSD talvez faça com que
+ você queira desinstalar o Windows do seu Hard
+ disk.
+
+
+
+
+ Listas e Procedimentos
+
+ Você frequentemente vai precisar listar
+ fragmentos de informação para o
+ usuário, ou apresentar para eles um passo a passo
+ o qual eles devem seguir para alcançar um objetivo
+ específico.
+
+ Para fazer isso, utilize
+ itemizedlist,
+ orderedlist, ou
+ procedureHá
+ outros tipos de elementos de lista no DocBook, mas
+ não vamos nos preocupar com eles no momento.
+ .
+
+
+ Os elementos itemizedlist e
+ orderedlist são similares aos
+ seus equivalentes em HTML, ul e
+ ol. Cada um consiste de um ou mais
+ elementos listitem, e cada
+ listitem contém um ou mais
+ elementos de bloco. O elemento listitem
+ é analogo à li do HTML.
+ Entretanto, ao contrário do que ocorre no HTML, aqui
+ elas são obrigatórias.
+
+ O elemento procedure é
+ ligeiramente diferente. Ele consiste de
+ steps, que por sua vez consistem de
+ mais steps ou
+ substeps. Cada step
+ contém elementos de bloco.
+
+
+ itemizedlist,
+ orderedlist, e
+ procedure
+
+ Uso:
+
+
+
+ Esse é o primeiro item enumerado.
+
+
+
+ Esse é o segundo item enumerado.
+
+
+
+
+
+ Esse é o primeiro item ordenado.
+
+
+
+ Esse é o segundo item ordenado.
+
+
+
+
+
+ Faça isto.
+
+
+
+ Depois faça isto.
+
+
+
+ E agora faça isto.
+
+]]>
+
+ Aparência:
+
+
+
+ Esse é o primeiro item enumerado.
+
+
+
+ Esse é o segundo item enumerado.
+
+
+
+
+
+ Esse é o primeiro item ordenado.
+
+
+
+ Esse é o segundo item ordenado.
+
+
+
+
+
+
+
+
+ Faça isto.
+
+
+
+ Depois faça isto.
+
+
+
+ E agora faça isto.
+
+
+
+
+
+ Mostrando Amostras de Arquivos
+
+ Se você quiser mostrar um trecho de um
+ arquivo (ou talvez um arquivo inteiro) ao usuário,
+ use o elemento programlisting
+
+ Espaços e quebras de linha
+ são importantes dentro do
+ programlisting. Em particular, isso
+ significa que a tag de abertura deve aparecer na mesma
+ linha que a primeira linha do programa, e a tag de
+ fechamento deve estar na última linha do programa,
+ do contrário linhas em branco espúrias podem ser
+ incluídas.
+
+
+ programlisting
+
+ Uso:
+
+ Quando você tiver terminado, seu programa deve estar assim:
+
+#include <stdio.h>
+
+int
+main(void)
+{
+ printf("hello, world\n");
+}]]>
+
+ Note como os colchetes na linha
+ #include precisaram ser referenciados
+ através de suas entidades ao invés de
+ incluídas literalmente.
+
+ Aparência:
+
+ Quando você tiver terminado, seu programa
+ deve estar assim;
+
+ #include <stdio.h>
+
+int
+main(void)
+{
+ printf("hello, world\n");
+}
+
+
+
+
+ Chamadas
+
+ Uma chamada é um mecanismo para fazer
+ referência a um pedaço de texto ou uma
+ posição específica de um exemplo
+ anterior sem ligar a ele no texto.
+
+ Para fazer isso, marque as áreas de interesse
+ no seu exemplo (programlisting,
+ literallayout, ou o que for) com o
+ elemento co. Cada elemento deve ter
+ um id único atribuído a ele.
+ Insira um calloutlist no final do
+ exemplo acima fazendo referência de volta a ele,
+ exibindo comentários adicionais.
+
+
+ co e
+ calloutlist
+
+ Quando você tivert terminado, seu prograva deve estar assim;
+
+#include <stdio.h>
+
+int
+main(void)
+{
+ printf("hello, world\n");
+}
+
+
+
+ Inclui o arquivo padrão de IO.
+
+
+
+ Especifica que main() retorna um inteiro.
+
+
+
+ A chamada printf() que escreve hello,
+ world na saída padrão.
+
+]]>
+
+ Aparência:
+
+ Quando você tiver terminado, seu programa
+ deve estar assim;
+
+ #include <stdio.h>
+
+int
+main(void)
+{
+ printf("hello, world\n");
+}
+
+
+
+ Inclui o arquivo padrão de IO.
+
+
+
+ Especifica que main() retorna um
+ inteiro.
+
+
+
+ A chamada printf() escreve
+ hello, world na saída padrão
+
+
+
+
+
+
+
+ Tabelas
+
+ Ao contrário do HTML, você não
+ precisa usar tabelas para acertar o layout, as folhas de
+ estilo cuidam disto para você. Utilize tabelas
+ apenas para marcação de dados tabulares.
+
+ De maneira geral (veja a documentação
+ do DocBook para mais detalhes) uma tabela (que pode ser
+ formal ou informal) consiste de um elemento
+ table. O qual contém ao menos um
+ elemento tgroup, que especifica (como
+ um atributo) o número de colunas neste grupo da
+ tabela. Dentro do grupo tabela você pode ter um elemento
+ thead, que contém os elementos
+ para o cabeçalho da tabela (cabeçalho da
+ coluna), e um tbody que contém
+ o corpo da tabela.
+
+ Tanto o tgroup quanto o
+ thead contém elementos
+ row, que por sua vez contém
+ elementos entry. Cada elemento
+ entry especifica uma célula da
+ tabela.
+
+
+ informaltable
+
+ Uso:
+
+
+
+
+
+ Este é o cabeçalho da coluna 1
+ Este é o cabeçalho da coluna 2
+
+
+
+
+
+ Linha 1, coluna 1
+ Linha 1, coluna 2
+
+
+
+ Linha 2, coluna 1
+ Linha 2, coluna 2
+
+
+
+]]>
+
+ Aparência:
+
+
+
+
+
+ Este é o cabeçalho da coluna
+ 1
+ Este é o cabeçalho da coluna
+ 2
+
+
+
+
+
+ Linha 1, coluna 1
+ Linha 1, coluna 2
+
+
+
+ Linha 2, coluna 1
+ Linha 2, coluna 2
+
+
+
+
+
+
+ Sempre utilize o atributo pgwide
+ com o valor 1 junto ao elemento
+ informaltable. Um bug no Internet
+ Explorer pode fazer com que a tabela renderize de forma
+ incorreta se ele for omitido.
+
+ Se você não quiser borda na tabela
+ adicione o atributo frame ao elemento
+ informaltable com o valor
+ none (i.e., <informaltable
+ frame="none">).
+
+
+
+ Tabelas com frame="none"
+
+ Aparência:
+
+
+
+
+
+ Este é o cabeçalho da coluna
+ 1
+ Este é o cabeçalho da coluna
+ 2
+
+
+
+
+
+ Linha 1, coluna 1
+ Linha 1, coluna 2
+
+
+
+ Linha 2, coluna 1
+ Linha 2, coluna 2
+
+
+
+
+
+
+
+
+ Exemplos para o Usuário Seguir
+
+ Muitas vezes você irá precisar mostrar
+ exemplos para que o usuário siga. Normalmente,
+ isso irá consistir de diálogos com o
+ computador, nos quais o usuário digita um comando,
+ e obtém uma resposta de volta, ele digita outro
+ comando e recebe outra reposta, e assim por diante.
+
+ Vários elementos e entidades podem ser utilizados
+ nestes casos.
+
+
+
+ screen
+
+
+ Tudo que o usuário visualizar neste exemplo
+ estará na tela do computador, assim o
+ próximo elemento é
+ screen.
+
+ Dentro da marcação do
+ screen, espaços em branco
+ são significativos.
+
+
+
+
+ prompt,
+ &prompt.root; e
+ &prompt.user;
+
+
+
+ Algumas das coisas que o usuário
+ irá visualizar na tela
+ são prompts do computador (seja do
+ sistema operacional, da linha de comando shell ou
+ de uma aplicação). Estes prompts devem
+ ser marcados usando prompt.
+
+ Por serem especiais, os prompts de shell do
+ usuário normal e do usuário root
+ estão disponíveis como uma entidade.
+ Sempre que quiser indicar que o usuário
+ está em um prompt do shell, use
+ &prompt.root; para o
+ usuário root e
+ &prompt.user; para o
+ usuário normal, conforme for necessário.
+ Estas entidades não precisam estar dentro de
+ um prompt.
+
+
+ &prompt.root; e
+ &prompt.user; são
+ extensões do FreeBSD ao DocBook, e
+ não são parte do DTD original.
+
+
+
+
+
+ userinput
+
+
+ Quanto estiver mostrando um texto que o
+ usuário deva digitar, envolva-o com as tags
+ userinput. Ele provavelmente
+ será mostrado diferente para o
+ usuário.
+
+
+
+
+
+
+ screen, prompt, e
+ userinput
+
+ Uso:
+
+ &prompt.user; ls -1
+foo1
+foo2
+foo3
+&prompt.user; ls -1 | grep foo2
+foo2
+&prompt.user; su
+Password:
+&prompt.root; cat foo2
+This is the file called 'foo2']]>
+
+ Aparência:
+
+ &prompt.user; ls -1
+foo1
+foo2
+foo3
+&prompt.user; ls -1 | grep foo2
+foo2
+&prompt.user; su
+Password:
+&prompt.root; cat foo2
+This is the file called 'foo2'
+
+
+
+ Ainda que estejamos mostrando o conteúdo do
+ arquivo foo2, ele
+ não está marcado como
+ programlisting. Deixe o
+ programlisting para mostrar fragmentos
+ de arquivos fora do contexto de ação do
+ usuário.
+
+
+
+
+
+ Elementos In-line
+
+
+ Enfatizando a Informação
+
+ Quando você quiser enfatizar uma palavra ou frase
+ em particular, use emphasis. Ela pode
+ ser apresentada em itálico, ou negrito, ou pode ser
+ falada diferentemente com um sistema texto-para-fala.
+
+ Não há uma maneira de mudar a
+ apresentação da ênfase no seu documento,
+ não existe um equivalente ao b e
+ ao i do HTML. Se a
+ informação que você está
+ apresentando é importante então considere
+ usar important ao invés de
+ emphasis.
+
+
+ emphasis
+
+ Uso:
+
+ O FreeBSD é sem dúvida o melhor sistema operacional tipo Unix
+para a arquitetura Intel.]]>
+
+ Aparência:
+ O FreeBSD é sem dúvida
+ o melhor sistema operacional tipo
+ Unix para a arquitetura Intel.
+
+
+
+
+ Citações
+
+ Para citar um texto de outro documento ou fonte, ou para
+ denotar uma frase que está sendo usada figuradamente, use
+ quote. Dentro da tag
+ quote, você pode usar a maioria
+ das marcações disponíveis para um texto
+ normal.
+
+
+ Citações
+
+ Uso:
+
+ Entretanto, certifique-se que a busca não vá além do limite entre
+ a administração local e pública como diz o RFC 1535.]]>
+
+ Aparência:
+
+ Entretanto, certifique-se que a busca não
+ vá além do limite entre a
+ administração local e pública
+ como diz o RFC 1535.
+
+
+
+
+ Teclas, Mouse e Combinações
+
+ Para se referir a uma tecla específica do
+ teclado, use keycap. Para se referir
+ a um botão do mouse, use
+ mousebutton. E para se referir a
+ combinação de digitar uma tecla e um clique do
+ mouse, envolva-os com keycombo.
+
+ O keycombo tem um atributo chamado
+ action, que pode ser
+ click, double-click,
+ other, press,
+ seq, ou simul. Os
+ dois últimos dizem se teclas ou botões devem
+ ser pressionados em sequência ou simultaneamente.
+
+
+ As folhas de estilo colocam automaticamente o
+ símbolo de ligação, tal como
+ +, entre os nomes das teclas, quando
+ elas estiverem envolvidas com
+ keycombo.
+
+
+ Teclas, Mouse e Combinações
+
+ Uso:
+
+ Para mudar para o segundo terminal virtual, digite
+ Alt
+ F1.
+
+Sair do vi sem salvar o seu trabalho, digite
+ Esc:
+ q!.
+
+Meu gerenciador de janela é configurado de forma que
+ Alt
+ botão direito
+ do mouse é usado para mover as janelas.
+]]>
+
+ Aparência:
+
+ Para mudar para o segundo terminal virtual, digite
+ Alt
+ F1.
+
+
+ Sair do vi sem salvar o seu
+ trabalho, digite
+ Esc:
+ q!.
+
+ Meu gerenciador de janela é configurado de
+ forma que Alt
+ botão direito
+ do mouse é usado para mover as
+ janelas.
+
+
+
+
+ Aplicações, Comandos,
+ Opções e Citações
+
+ Frequentemente você irá fazer
+ referência tanto a aplicações quanto
+ a comandos quando estiver escrevendo a
+ documentação. A distinção entre
+ eles é simples: uma
+ aplicação é o nome de um pacote de
+ programas (ou possivelmente apenas um) que executa
+ uma tarefa em particular. Um comando é o nome de
+ um programa que o usuário pode executar.
+
+ Além disso, você eventualmente
+ precisará listar uma ou mais opções
+ que um comando pode aceitar.
+
+ Finalmente, você irá querer listar um
+ comando com o número da sua seção no
+ manual, na forma comando(número) que
+ é tão comum nos manuais de Unix.
+
+ Você deve marcar o nome de uma
+ aplicação com application.
+
+
+ Quando você quiser listar um comando com o
+ número da sua seção no manual (o que
+ deve acontecer na maioria das vezes) o elemento do DocBook
+ que deve ser utilizado é o
+ citerefentry. Ele irá ter mais
+ dois elementos, refentrytitle e
+ manvolnum. O conteúdo de
+ refentrytitle é o nome do comando,
+ e o conteúdo de manvolnum é
+ a seção da página do manual.
+
+ Pode ser trabalhoso escrever desta forma, para
+ facilitar este processo foram criadas uma série de
+ entidades
+ gerais. Cada entidade está na
+ forma &man.manual-page.manual-section;.
+
+ O arquivo que contém estas entidades
+ é o doc/share/sgml/man-refs.ent,
+ o qual pode ser referenciado utilizando o seguinte FPI:
+
+ PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"
+
+ Portanto, a introdução à sua
+ documentação provavelmente será assim:
+
+
+ <!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
+
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN">
+%man;
+
+…
+
+]>
+
+
+ Use o elemento command quando quiser
+ incluir um comando in-line para ser
+ apresentado como algo que deveria ser digitado pelo
+ usuário.
+
+ Use o elemento option para marcar as
+ opções que serão passadas para um
+ comando.
+
+ Quando diversas referências a um mesmo comando
+ estiverem próximas é melhor usar a
+ notação &man.command.section;
+ para marcar a primeira referência ao mesmo e depois
+ utilizar command para marcar as
+ referências subsequentes. Isto fará a
+ saída gerada, especialmente em HTML, ficar
+ visualmente melhor.
+
+ Isto pode ser confuso, e muitas vezes a escolha nem
+ sempre é clara. Acredito que o exemplo abaixo
+ ajudará a tornar as coisas mais claras.
+
+
+ Aplicações, Comandos,
+ Opções
+
+ Uso:
+
+ O Sendmail é a aplicação
+ de email mais utilizada em Unix.
+
+O Sendmail inclui os programas
+
+ Sendmail
+ 8
+ , &man.mailq.1;, e &man.newaliases.1;.
+
+
+Um dos parâmetros de linha de comando para o
+ Sendmail
+ 8
+ , , ira mostrar o atual estado da
+ mensagem na fila de email.
+ Verifique isto na linha de comando usando sendmail -bp.]]>
+
+ Aparência:
+
+ O Sendmail é a
+ aplicação de email mais utilizada em
+ Unix.
+
+ O Sendmail inclui os programas
+
+ sendmail
+ 8
+ , &man.mailq.1;, and &man.newaliases.1;.
+
+ Um dos parâmetros de linha de comando para o
+ sendmail8,
+ , irá mostrar o atual estado
+ da mensagem na fila de email. Verifique isto na linha de
+ comando usando sendmail -bp.
+
+
+
+ Veja como a notação
+ &man.command.section;
+ é mais fácil de acompanhar.
+
+
+
+
+ Arquivos, Diretórios, Extensões
+
+ Sempre que quiser se referir ao nome de um arquivo,
+ diretório ou uma extensão de arquivo, use
+ o elemento filename.
+
+
+ filename
+
+ Uso:
+
+ O fonte SGML do Handbook em Inglês pode ser encotrado em
+ /usr/doc/en_US.ISO8859-1/books/handbook/.
+ O primeiro arquivo neste diretório é chamado book.sgml.
+ Você também deve ver o Makefile
+ e alguns arquivos com a extensão .ent.]]>
+
+ Aparência:
+
+ O fonte SGML do Handbook em Inglês pode ser
+ encotrado em /usr/doc/en/handbook/.
+ O primeiro arquivo neste diretório é
+ chamado handbook.sgml. Você
+ também deve ver o Makefile
+ e alguns arquivos com a extensão
+ .ent.
+
+
+
+
+
+ O Nome dos Ports
+
+
+ Extensões FreeBSD
+
+ Estes elementos são parte das extensões
+ do FreeBSD ao DocBook, e não existem no DTD
+ DocBook original.
+
+
+ Você pode precisar incluir o nome de um programa
+ da Coleção de Ports do FreeBSD na
+ documentação. Use a tag
+ filename com o atributo
+ role ajustado para package
+ para identificá-lo. Uma vez que a
+ coleção de ports pode ser instalada em diversos
+ lugares, inclua apenas a categoria e o nome do port,
+ não inclua o /usr/ports.
+
+
+ Tag filename com o atributo
+ package
+
+ Use:
+
+ Instale o port net/ethereal
+para ver o tráfego na rede.]]>
+
+ Aparência:
+
+ Instale o port
+ net/ethereal
+ para ver o tráfego na rede.
+
+
+
+
+ Dispositivos
+
+
+ Extensões FreeBSD
+
+ Estes elementos são parte das extensões
+ do FreeBSD ao DocBook, e não existem no DTD
+ DocBook original.
+
+
+ Você tem 2 opções para se referir a
+ um dispositivo. Você pode se referir ao dispositivo
+ da forma como ele aparece no /dev,
+ ou você pode usar o nome do dispositivo como ele aparece
+ no kernel. No segundo caso, use o elemento
+ devicename.
+
+ Em alguns casos você não terá escolha.
+ Alguns dispositivos, como as placas de rede, não
+ tem entrada no /dev, ou as entradas
+ são muito diferentes das esperadas.
+
+
+ devicename
+
+ Uso:
+
+ sio é usado para comunicação
+ serial no FreeBSD. sio se manifesta
+ através de entradas em /dev, incluindo
+ /dev/ttyd0 e /dev/cuaa0.
+
+
+Por outro lado, dispositivos de rede, tais como ed0
+ não aparecem /dev.
+
+
+No MS-DOS, o primeiro disco flexível é chamado de a:.
+ No FreeBSD é /dev/fd0.
+ ]]>
+
+ Aparência:
+ sio é usado para
+ comunicação serial no FreeBSD.
+ sio se manifesta através
+ de entradas em /dev, incluindo
+ /dev/ttyd0 e
+ /dev/cuaa0.
+
+ Por outro lado, dispositivos de rede, tais como
+ ed0 não aparecem
+ /dev.
+
+ No MS-DOS, o primeiro disco flexível é
+ chamado de a:. No FreeBSD é
+ /dev/fd0.
+
+
+
+
+
+ Hosts, Domínios, Endereços IP e etc.
+
+
+ Extensões FreeBSD
+
+ Estes elementos são parte das extensões
+ do FreeBSD ao DocBook, e não existem no DTD
+ DocBook original.
+
+
+ Você pode marcar a informação sobre
+ a identificação de computadores em rede
+ (hosts) de diversas maneiras. Todas elas usam
+ hostid como elemento, com o atributo
+ role dizendo o tipo da
+ informação marcada.
+
+
+
+ Sem o atributo role, ou
+ role="hostname"
+
+
+ Sem o atributo role (i.e.,
+ hostid.../hostid)
+ a informação marcada é
+ simplesmente o nome do computador, tal como
+ freefall ou
+ wcarchive. Você pode
+ especificar explicitamente com
+ role="hostname".
+
+
+
+
+ role="domainname"
+
+
+ O texto é um nome de domínio, tal
+ como FreeBSD.org ou
+ ngo.org.uk. Não há o
+ componente do nome do computador (hostname).
+
+
+
+
+
+ role="fqdn"
+
+
+ O texto é um nome completo, com o nome do
+ computador e do domínio. O termo
+ fqdn significa Fully
+ Qualified Domain Name - Nome de
+ Domínio Completamente Qualificado.
+
+
+
+
+ role="ipaddr"
+
+
+ O texto é um endereço IP,
+ provavelmente expresso como dotted
+ quad.
+
+
+
+
+ role="ip6addr"
+
+
+ O texto é um endereço IPv6.
+
+
+
+
+ role="netmask"
+
+
+ O texto é uma máscara de rede, que
+ pode ser expressa como dotted quad,
+ uma string hexadecimal ou como /
+ seguido de um número.
+
+
+
+
+ role="mac"
+
+
+ O texto é um endereço MAC Ethernet,
+ expresso como números hexadecimais de 2 digitos
+ separados por dois pontos (:).
+
+
+
+
+
+ Hostid e Roles
+
+ Use:
+
+ A máquina local sempre pode ser referida pelo nome
+localhost, que terá o endereço IP
+127.0.0.1.
+
+
+O domínio FreeBSD.org
+contém vários hosts diferentes, incluindo
+freefall.FreeBSD.org e
+pointyhat.FreeBSD.org.
+
+Quando estiver adicionando um apelido para uma interface (usando
+ifconfig) sempre use a
+máscara de rede 255.255.255.255 (que
+também pode ser expressa como 0xffffffff).
+
+
+O endereço MAC identifica unicamente cada placa de rede
+existente. Um endereço MAC típico se parece com 08:00:20:87:ef:d0).
+]]>
+
+ Aparência:
+
+ A máquina local sempre pode ser referida pelo
+ nome localhost, que terá o
+ endereço IP
+ 127.0.0.1.
+
+ O domínio
+ FreeBSD.org
+ contém vários hosts diferentes, incluindo
+ freefall.FreeBSD.org e
+ bento.FreeBSD.org.
+
+ Quando estiver adicionando um apelido para uma
+ interface (usando ifconfig)
+ sempre use a máscara de
+ rede 255.255.255.255 (que
+ também pode ser expressa como
+ 0xffffffff).
+
+ O endereço MAC identifica unicamente cada
+ placa de rede existente. Um endereço MAC
+ típico se parece com
+ 08:00:20:87:ef:d0.
+
+
+
+
+ Usernames
+
+
+ Extensões FreeBSD
+
+ Estes elementos são parte das extensões
+ do FreeBSD ao DocBook, e não existem no DTD
+ DocBook original.
+
+
+ Quando precisar se referir a um nome de usuário
+ específico, tal como root ou
+ bin, use o elemento
+ username.
+
+
+ Username
+
+ Uso:
+
+ Para executar a maioria das funções administrativas você precisará
+ ser root.]]>
+
+ Aparência:
+
+ Para executar a maioria das funções
+ administrativas você precisará ser
+ root.
+
+
+
+
+ Descrevendo Makefiles
+
+
+ Extensões FreeBSD
+
+ Estes elementos são parte das extensões
+ do FreeBSD ao DocBook, e não existem no DTD
+ DocBook original.
+
+
+ Existem dois elementos para descrever partes de
+ Makefiles,
+ maketarget e makevar.
+
+
+ O maketarget identifica uma alvo de
+ construção exportado por um
+ Makefile que pode ser passado como um
+ parâmetro ao make. O
+ makevar identifica uma variável
+ que pode ser ajustada (no ambiente, na linha de comando do
+ make, ou dentro do
+ Makefile) para influenciar o
+ processo.
+
+
+ Maketarget e
+ Makevar
+
+ Uso:
+
+ Dois alvos comuns em um Makefile são
+all e clean.
+
+Tipicamente, usar all irá refazer a
+aplicação, usar clean irá remover os
+arquivos temporários (.o por exemplo) criados
+pelo processo de construção.
+
+clean pode ser controlado por
+muitas variáveis, incluindo CLOBBER e
+RECURSE.
+]]>
+
+ Aparência:
+
+ Dois alvos comuns em um Makefile
+ são all e
+ clean.
+
+ Tipicamente, usar all
+ irá refazer a aplicação, usar
+ clean irá remover os
+ arquivos temporários (.o
+ por exemplo) criados pelo processo de
+ construção.
+
+ O clean pode ser controlado
+ por muitas variáveis, incluindo
+ CLOBBER e
+ RECURSE.
+
+
+
+
+ Texto Literal
+
+ Com frequência você irá precisar
+ incluir texto literal na
+ documentação. Este texto que é
+ originado de outro arquivo, ou que deve ser copiado de
+ forma fiel da documentação para outro
+ arquivo.
+
+ Às vezes, o programlisting
+ será suficiente. Mas o
+ programlisting nem sempre é
+ apropriado, particularmente quando você quer incluir
+ uma parte de um arquivo in-line com todos
+ os parágrafos.
+
+ Nestas ocasiões, use literal.
+
+
+
+ Literal
+
+ Uso:
+
+ A linha maxusers 10 no arquivo de
+configuração do kernel determina o tamanho de muitas tabelas
+do sistema, e diz aproximadamente quantos logins simultâneos
+o sistema irá suportar.
+]]>
+
+ Aparência:
+ A linha maxusers 10 no arquivo de
+ configuração do kernel determina o tamanho
+ de muitas tabelas do sistema, e diz aproximadamente
+ quantos logins simultâneos o sistema irá
+ suportar.
+
+
+
+
+
+ Mostrando Itens que o Usuário
+ Deve Preencher
+
+ Muitas vezes você irá querer mostrar ao
+ usuário o que fazer, ou precisará se referir a
+ um arquivo, a uma linha de comando ou coisa parecida, na
+ qual ele não poderá simplesmente copiar o
+ exemplo que você forneceu, mas na qual ele
+ terá deve dar alguma informação por
+ ele mesmo.
+
+ O elemento replaceable foi criado para
+ estas ocasiões. Use ele dentro de outros elementos para
+ indicar partes do conteúdo do elemento que o
+ usuário deve substituir.
+
+
+ replaceable
+
+ Uso:
+
+ &prompt.user; man command]]>
+
+ Aparência:
+
+
+ &prompt.user; man comando
+
+
+ O replaceable pode ser usado em
+ muitos elementos diferentes, incluindo
+ literal. Este exemplo também
+ mostra que replaceable só deve
+ envolver o conteúdo que o usuário
+ deve fornecer. O outro
+ conteúdo não deve ser alterado.
+
+ Uso:
+
+ A linha maxusers n
+no arquivo de configuração do kernel determina o tamanho de muitas
+tabelas do sistema, e diz aproximadamente quantos logins simultâneos
+o sistema irá suportar.
+
+
+Para uma estação de trabalho, 32 é um
+bom valor para n.
+]]>
+
+ Aparência:
+ A linha maxusers
+ n
+ no arquivo de configuração do kernel
+ determina o tamanho de muitas tabelas do sistema, e diz
+ aproximadamente quantos logins simultâneos o sistema
+ irá suportar.
+
+ Para uma estação de trabalho,
+ 32 é um bom valor para
+ n.
+
+
+
+
+ Citando erros do sistema
+
+ Você pode querer mostrar erros gerados pelo
+ FreeBSD. Marque-os com errorname.
+ Isto indicará o erro exato que aparece.
+
+ errorname
+
+ Uso:
+
+ Panic: cannot mount root ]]>
+
+
+
+ Aparência:
+
+
+ Panic: cannot mount root
+
+
+
+
+
+
+ Imagens
+
+
+ O suporte a imagem na documentação ainda
+ é extremamente experimental. O mecanismo aqui
+ descrito provavelmente não irá mudar, mas
+ isto não é garantido.
+
+ Você precisará instalar o port
+ graphics/ImageMagick
+ que é usado para converter entre os diferentes
+ formatos de imagens. Ele é grande e a sua maior
+ parte não é necessária. Entretanto,
+ enquanto nós ainda estamos trabalhando nos
+ Makefiles e em outros itens da
+ infraestrutura, ele torna as coisas mais
+ fáceis. Este port não
+ está no meta port
+ textproc/docproj,
+ você deve instalá-lo manualmente.
+
+ O melhor exemplo do que acontece na prática
+ é o documento
+ doc/en_US.ISO8859-1/articles/vm-design/
+ . Se você se sentir inseguro na
+ descrição que segue, dê uma olhada nos
+ arquivos deste diretório e veja como tudo se
+ encaixa. Experimente criar versões com diferentes
+ formatos de saída do documento para ver como a
+ marcação de imagem aparece no documento final.
+
+
+
+
+ Formatos de Imagens
+
+ Atualmente suportamos dois formatos de imagens. O
+ formato que você deve usar depende da natureza da
+ sua imagem.
+
+ Para imagens vetoriais, tais como diagramas de rede,
+ linhas temporais e similares, use Encapsulated Postscript,
+ e certifique-se que suas imagens tenham a extensão
+ .eps.
+
+ Para bitmaps, tais como a captura de uma tela, use o
+ formato Portable Network Graphic, e certifique-se que suas
+ imagens tenham a extensão
+ .png.
+
+ Estes são os únicos
+ formatos de imagem que podem ser gravados no
+ repositório Subversion.
+
+ Use o formato correto para a imagem correta. Espera-se
+ que a sua documentação tenha tanto imagens
+ EPS quanto PNG. Os Makefiles
+ asseguram que o formato correto seja escolhido dependendo
+ do formato de saída da sua
+ documentação. Não faça
+ commit da mesma imagem nos dois formatos diferentes para o
+ repositório.
+
+
+ É esperado que o projeto de
+ documentação passe a utilizar no futuro o
+ formato Scalable Vector Graphic (SVG) para imagens
+ vetoriais. Entretanto, o atual estado das ferramentas
+ de edição torna isto impraticável.
+
+
+
+
+
+ Marcação
+
+ A marcação para uma imagem é
+ relativamente simples. Primeiro, marque um
+ mediaobject. O
+ mediaobject pode conter outros objetos
+ mais específicos. Estamos interessandos em dois,
+ o imageobject e o
+ textobject.
+
+ Você deve incluir um
+ imageobject, e dois elementos
+ textobject. O
+ imageobject irá apontar para o
+ nome do arquivo da imagem que será usada
+ (sem a extensão). Os elementos
+ textobject contém a
+ informação que será apresentada ao
+ usuário junto, ou não, com a imagem.
+
+ Há duas circunstâncias em que isso pode
+ ocorrer.
+
+
+
+ Quando o leitor estiver vendo a
+ documentação em HTML. Neste caso, cada
+ imagem precisará ter um texto alternativo
+ associado para mostrar ao usuário, tipicamente
+ enquanto a imagem estiver sendo carregada, ou se ele
+ parar o ponteiro do mouse sobre a imagem.
+
+
+
+ Quando o leitor estiver vendo a
+ documentação em modo texto. Neste caso,
+ cada imagem deve ter uma ASCII art equivalente para
+ mostrar ao usuário.
+
+
+
+ Um exemplo provavelmente irá tornar as coisas
+ mais fáceis de se entender. Suponha que você
+ tenha uma imagem, chamada fig1, que
+ você queira incluir no documento. Esta imagem
+ é um retângulo com um A dentro dele. A
+ marcação para isso será:
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="fig1">
+ </imageobject>
+
+ <textobject>
+ <literallayout class="monospaced">+---------------+
+| A |
++---------------+</literallayout>
+ </textobject>
+
+ <textobject>
+ <phrase>Uma figura</phrase>
+ </textobject>
+</mediaobject>
+
+
+
+ Inclua um elemento imagedata
+ dentro do elemento imageobject.
+ O atributo fileref deve conter o
+ nome da imagem a ser incluída, sem a extensão.
+ As folhas de estilo irão decidir qual a
+ extensão deve ser adicionada ao nome do arquivo
+ automaticamente.
+
+
+
+ O primeiro textobject deve conter
+ um elemento literallayout, onde o
+ atributo class é ajustado para
+ monospaced. Esta é a
+ oportunidade para você demonstrar suas habilidades
+ com ASCII art. O conteúdo será usado se o
+ documento for convertido para texto puro.
+
+ Veja como as primeras e últimas linhas do
+ conteúdo do elemento literallayout
+ fica próximo a tag do elemento.
+ Isso assegura que não sejam incluídos
+ espaços extras.
+
+
+
+ O segundo textobject deve conter
+ um único elemento phrase. O
+ conteúdo deste elemento se tornará o atributo
+ alt para as imagens quando o
+ documento for convertido para HTML.
+
+
+
+
+
+ Entradas no Makefile
+
+ Suas imagens devem estar listadas na variável
+ IMAGES do Makefile.
+ Esta variável deve conter o nome de todos
+ fontes das suas imagens. Por exemplo,
+ se você criou três figuras,
+ fig1.eps,
+ fig2.png,
+ fig3.png, então o seu
+ Makefile deve ter linhas como estas.
+
+
+ …
+IMAGES= fig1.eps fig2.png fig3.png
+…
+
+ ou
+
+ …
+IMAGES= fig1.eps
+IMAGES+= fig2.png
+IMAGES+= fig3.png
+…
+
+ De novo, o Makefile irá
+ fazer uma lista completa das imagens necessárias
+ para criar o seu documento fonte, você precisa
+ listar apenas as imagens que
+ você fornece.
+
+
+
+ Imagens e Capítulos em Subdiretórios
+
+ Você precisa ser cuidadoso quando separar a sua
+ documentação em arquivos menores (veja
+ ) em
+ diretórios diferentes.
+
+ Suponha que você tenha um livro com três
+ capítulos, e os capítulos estão
+ armazenados cada um no seu próprio diretório,
+ chamados chapter1/chapter.sgml,
+ chapter2/chapter.sgml, e
+ chapter3/chapter.sgml. Se cada
+ capítulo tiver imagens associadas a eles, é
+ sugerido que você as coloque dentro do respectivo
+ subdiretório de cada capítulo
+ (chapter1/,
+ chapter2/,
+ chapter3/).
+
+ Entretanto, se você fizer isso você deve
+ incluir o nome dos diretórios na variável
+ IMAGES no Makefile,
+ e deve incluir o nome do
+ diretório no elemento imagedata
+ do seu documento.
+
+ Por exemplo, se você tiver
+ chapter1/fig1.png, então
+ chapter1/chapter.sgml deve
+ conter:
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="chapter1/fig1">
+ </imageobject>
+
+ …
+
+</mediaobject>
+
+
+
+ O nome do diretório deve ser incluído no
+ atributo fileref
+
+
+
+ O Makefile deve conter:
+
+ …
+IMAGES= chapter1/fig1.png
+…
+
+ Desta forma tudo deve funcionar.
+
+
+
+
+ Links
+
+
+ Links também são elementos in-line.
+
+
+
+ Ligando-se a outras partes no mesmo documento
+
+ Links dentro do mesmo documento exigem que você
+ especifique de onde você esta se ligando (i.e.,
+ o texto no qual o usuário irá clicar, ou
+ indicando de outra maneira a origem do link) e para onde
+ você está se ligando (o destino do
+ link).
+
+ Cada elemento dentro do DocBook tem um atributo chamado
+ id. Você pode por um texto neste
+ atributo para identificar unicamente o elemento associado
+ a ele.
+
+ Este valor será usado quando você
+ especificar a origem do link.
+
+ Normalmente, você irá se ligar apenas a
+ capítulos ou seções, assim você
+ irá colocar o atributo id nestes
+ elementos.
+
+
+ O atributo id em capítulos
+ ou seções
+
+
+ Introdução
+
+ Esta é a introdução. Contém uma
+ subseção que também será identificada.
+
+
+ Subseção 1
+
+ Esta é a subseção.
+
+]]>
+
+
+ Obviamente, você deve usar nomes mais descritivos.
+ Estes nomes devem ser únicos dentro do documento
+ (i.e., não apenas no arquivo, mas sim no documento
+ no qual o arquivo está incluído). Repare como o
+ id é construído adicionando-se
+ texto ao id do capítulo. Isto
+ ajuda a garantir que eles sejam únicos.
+
+ Se você quiser permitir ao usuário saltar
+ para uma parte específica do documento
+ (possivelmente para o meio do parágrafo ou um
+ exemplo), use o elemento anchor. Este
+ elemento não tem conteúdo, mas aceita o atributo
+ id.
+
+
+ anchor
+
+
+Este parágrafo tem um alvo dentro dele.
+O qual não irá aparecer no documento
+]]>
+
+
+ Quando você quiser dar ao usuário um link
+ que possa ser ativado (provavelmente clicando-se) para ir
+ para outra seção do documento que tenha um
+ atributo id, você pode usar
+ xref ou link.
+
+ Ambos os elementos têm um atributo
+ linkend. O valor deste atributo deve
+ ser o mesmo usado no atributo id
+ (não importa se ele ainda não ocorreu no
+ documento; isto funciona tanto para um link à frente
+ quanto para trás).
+
+ Se você utilizar o xref
+ então você não terá controle
+ sobre o texto do link. Ele será gerado para
+ você.
+
+
+ Usando xref
+
+ Assuma que este fragmento apareça em algum
+ lugar de um documento que inclua o id
+ do exemplo.
+
+ Maiores informações podem ser encontradas
+ em
+
+Informações mais específicas podem ser
+ encontradas na .
+]]>
+
+ O texto do link será gerado automaticamente, e
+ irá se parecer com (As palavras em
+ itálico indicam o texto que
+ será o link):
+
+
+ Maiores informações podem ser encontradas
+ no Capítulo Um.
+
+ Informações mais específicas
+ podem ser encontradas na seção
+ chamada Subseção 1.
+
+
+
+ Observe como o texto do link é deduzido a
+ partir do título da seção ou do
+ número do capítulo.
+
+
+ Isto significa que você não
+ pode usar xref para se
+ ligar a um atributo id em um elemento
+ anchor. O anchor
+ não tem conteúdo, desta forma o
+ xref não pode gerar o texto
+ para o link.
+
+
+ Se você quiser controlar o texto do link
+ você deverá utilizar link.
+ Este elemento envolve o conteúdo, e o conteúdo
+ será usado para o link.
+
+
+ Usando link
+
+ Assuma que este fragmento aparece em algum lugar em
+ um documento que inclui o id do
+ exemplo.
+
+ Maiores informações podem ser encontradas
+no primeiro capítulo.
+
+
+Informações mais específicas podem ser encontradas
+nesta seção
+
+]]>
+
+ Isto irá gerar o seguinte (Palavras em
+ itálico indicam o texto que
+ será o link):
+
+
+ Maiores informações podem ser
+ encontradas no primeiro capítulo
+ .
+
+ Informações mais específicas
+ podem ser encontradas nesta
+ seção
+
+
+
+
+ Este último é um mau exemplo.
+ Nunca use palavras como esta ou
+ aqui como origem do link. O leitor
+ terá que procurar no contexto próximo para
+ ver para onde o link o está levando.
+
+
+
+ Você pode usar o elemento
+ link para incluir um link para um
+ id em um elemento
+ anchor, uma vez que o conteúdo
+ de link define o texto que será
+ usado para o link.
+
+
+
+
+ Ligando-se a documentos na WWW
+
+ Ligar-se a um documento externo é muito mais
+ simples, desde que você saiba o URL do documento ao
+ qual deseja se ligar. Basta utilizar o elemento
+ ulink. O atributo url
+ é o URL da página para o qual
+ o link aponta, e o conteúdo do elemento é
+ o texto que será mostrado para o usuário
+ ativar.
+
+
+ ulink
+
+ Uso:
+
+ É claro que você pode parar de ler este documento e ir para a
+Página principal do FreeBSD
+
+]]>
+
+ Aparência:
+
+ É claro que você pode parar de ler este
+ documento e ir para a
+ Página principal
+ do FreeBSD
+
+
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/sgml-primer/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/sgml-primer/chapter.sgml
new file mode 100644
index 0000000000..e89deeaba8
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/sgml-primer/chapter.sgml
@@ -0,0 +1,1885 @@
+
+
+
+ SGML Primer
+
+ A maioria dos documentos do FDP é escrita utilizando
+ SGML. Este capítulo irá explicar exatamente o que
+ isso significa, como ler e compreender os fontes dos documentos
+ e os truques de SGML que você irá se defrontar na
+ documentação.
+
+ Partes desta seção foram inspiradas no documento
+
+ Começando a utilizar o DocBook de autoria do
+ Mark Galassi.
+
+
+ Visão Geral
+
+ Antigamente, era simples de se lidar com um texto
+ eletrônico. Naquela época, você tinha que
+ saber em qual conjunto de caracteres o seu documento havia sido
+ escrito (ASCII, EBCDIC ou um dos inúmeros outros), e mais
+ nada. O texto era texto, e o que você via era
+ realmente o que você tinha. Nenhuma frescura, nenhuma
+ formatação, nenhuma inteligência.
+
+ Inevitavelmente, isto não era o suficiente.
+ Uma vez que você tem o texto em uma máquina num
+ formato utilizável, você espera que o equipamento
+ seja capaz de usá-lo e manipulá-lo de forma
+ inteligente. Você pode desejar indicar que uma
+ determinada frase deve ser enfatizada, ou adicionada a um
+ glossário, ou ser interligada a outra parte do
+ documento. Você pode querer que os nomes dos arquivos
+ sejam exibidos com uma fonte de estilo typewriter
+ quando forem exibidos na tela, mas como itálico
+ quando impresso, ou qualquer outra opção
+ dentre a infinidade de opções disponíveis para
+ apresentação.
+
+ Esperava-se que a inteligência artificial (AI)
+ torna-se isso fácil. O seu computador leria o
+ documento e identificaria automaticamente as frases chave,
+ nomes de arquivos, os campos que o leitor teria que preencher,
+ e muito mais. Infelizmente, a vida real não evoluiu
+ como esperado, e os nossos computadores necessitam de algum
+ auxílio antes que eles possam processar significativamente
+ nosso texto.
+
+ Mais precisamente, eles precisam de ajuda para identificar
+ o que é o que. Vejamos o texto abaixo:
+
+
+ Para remover o /tmp/foo utilize
+ &man.rm.1;.
+
+ &prompt.user; rm /tmp/foo
+
+
+ Nele podemos facilmente visualizar quais partes
+ são nomes de arquivos, quais são comandos que
+ devem ser digitados, quais partes são
+ referências às páginas de manual, etc.
+ Mas o computador processando o documento não pode.
+ Para isto nós precisamos utilizar uma
+ marcação (markup).
+
+ A marcação é comumente
+ utilizada para descrever a adição de
+ valor ou o aumento de custo. O termo
+ (term) faz exame de ambos os meios quando aplicados ao texto.
+ A marcação é um texto adicional incluído
+ no documento, e de alguma forma destacado do seu conteúdo,
+ de modo que os programas que forem processá-lo possam ler
+ as marcações e utilizá-las ao tomar
+ decisões sobre o documento. Os editores podem ocultar
+ a marcação do usuário, de forma que o
+ usuário não se distraia com ele.
+
+ As informações extras armazenadas na
+ marcação adicionam valor ao
+ documento. Tipicamente a adição da
+ marcação ao documento precisa ser realizada por
+ uma pessoa — apesar de tudo, se os computadores pudessem
+ reconhecer suficientemente bem o texto para adicionar as
+ marcações, então não haveria
+ necessidade de adicioná-las em primeiro lugar. Isto
+ aumenta o custo (isto é, o
+ esforço requerido) para criar o documento.
+
+ O exemplo acima foi na verdade escrito neste documento
+ como se segue:
+
+ Para remover /tmp/foo utilize &man.rm.1;.
+
+&prompt.user; rm /tmp/foo]]>
+
+ Como você pode ver, a marcação
+ está claramente separada do conteúdo.
+
+ Obviamente, se você estiver iniciando no uso de
+ marcações, você precisa definir o que a
+ sua marcação significa, e como ela será
+ interpretada. Você vai precisar de uma linguagem de
+ marcação a qual você possa seguir quando
+ estiver marcando os seus documentos.
+
+ Naturalmente, uma linguagem de marcação pode
+ não ser o bastante. Os requisitos de uma linguagem de
+ marcação destinada formatação de
+ documentos técnicos são diferentes dos requisitos
+ de uma linguagem de marcação destinada a
+ formatação de receitas culinárias. Esta,
+ por sua vez, seria muito diferente de uma linguagem de
+ marcação usada para formatar poemas. O que
+ você realmente precisa é de uma linguagem
+ primária, a qual você possa utilizar para
+ escrever estas e outras linguagens de marcação.
+ Uma meta linguagem de
+ marcação.
+
+ É exatamente isso que a Standard
+ Generalized Markup Language (SGML) é.
+ Muitas linguagens de marcação foram escritas em
+ SGML, incluindo as duas mais utilizadas pelo FDP, o HTML e o
+ DocBook.
+
+ Cada definição de linguagem é mais
+ corretamente chamada de Definição de Tipo de
+ Documento (DTD). O DTD especifica o nome dos elementos que
+ podem ser utilizados, em qual ordem eles aparecem (e se alguma
+ marcação pode ser utilizada dentro de outra
+ marcação) e as informações
+ relacionadas. Um DTD é algumas vezes referenciado como
+ uma aplicação do SGML.
+
+ Um DTD é uma
+ especificação completa de
+ todos os elementos que podem ser utilizados, da ordem em que
+ podem aparecer, quais elementos são obrigatórios,
+ quais são opcionais, e assim por diante. Isto torna
+ possível escrever um interpretador (parser) SGML, que
+ leia ambos os DTD e um documento que reividique se adequar ao
+ DTD. O interpretador pode então confirmar se todos os
+ elementos obrigatórios do DTD estão (ou
+ não) presentes no documento na ordem correta, e se
+ existem erros na marcação. Isto é
+ normalmente referenciado como validação
+ do documento.
+
+
+ Este processamento simplesmente confirma se a escolha
+ dos elementos, a sua ordenação, etc,
+ estão de acordo com o especificado no DTD. Ele
+ não verifica se você utilizou a
+ marcação adequada para o
+ conteúdo. Se você tentasse marcar todos os
+ nomes de arquivo em seu documento como nomes de
+ funções, o interpretador não iria
+ apontar isto como um erro (assumindo, naturalmente, que a sua
+ DTD define elementos para nomes de arquivos e para
+ funções, e que eles podem ser utilizados nos
+ mesmos lugares).
+
+
+ É provável que a maioria das suas
+ contribuições ao projeto de
+ documentação irão se constituir de
+ conteúdos marcados tanto em HTML quanto em DocBook,
+ em vez de alterações nos DTDs.
+ Por esta razão este livro não irá abordar
+ a criação de um DTD.
+
+
+
+ Elementos, tags, e atributos
+
+ Todos os DTDs escritos em SGML compartilham certas
+ características. Isto é uma dura surpresa,
+ como a filosofia por de trás do SGML nos
+ mostrará ser completamente inevitável. Uma das
+ manifestações mais óbvias desta filosofia
+ está no conteúdo e nos
+ elementos.
+
+ A sua documentação (independente se é
+ uma única página web ou um livro longo) é
+ composta de conteúdo. Este conteúdo é
+ então dividido (e de novo subdividido) em elementos. O
+ propósito da adição de
+ marcações é atribuir nome e identidade
+ para os limites destes elementos de forma a possibilitar o
+ processamento adicional.
+
+ Por exemplo, considere um livro típico. No
+ nível mais alto, o livro por si só é um
+ elemento. Este elemento livro (book) obviamente
+ contém capítulos, os quais também podem
+ ser considerados elementos em sua própria forma. Cada
+ capítulo irá conter mais elementos, tais como
+ parágrafos, citações, notas de
+ rodapé, etc. Cada parágrafo pode conter
+ elementos adicionais, identificando o conteúdo que era
+ de discurso direto, ou o nome de um personagem da
+ história.
+
+ Você pode preferir pensar nisto como uma
+ quebra do conteúdo. No nível
+ mais alto você tem um pedaço, o Livro. Olhando
+ um pouco mais abaixo, você tem mais pedaços, os
+ capítulos individuais. Estes estão divididos
+ em pedaços ainda menores, os parágrafos, notas
+ de rodapé, nomes de personagens, etc.
+
+ Observe que você pode fazer esta
+ diferenciação entre os diferentes elementos do
+ conteúdo sem recorrer a nenhum termo SGML. Na
+ realidade é surpreendentemente fácil de usar.
+ Você pode fazer isso utilizando uma caneta de
+ marcação e uma cópia impressa do livro,
+ utilizando diferentes cores para indicar os diferentes
+ pedaços do conteúdo.
+
+ Naturalmente, nós não possuímos uma caneta
+ eletrônica de marcação, assim nós
+ necessitamos de alguma outra maneira de indicar a que elemento
+ cada peça de conteúdo pertence. Nas linguagens
+ escritas em SGML (HTML, DocBook, etc) isto é feito
+ através do uso de tags.
+
+ Uma tag é utilizada para identificar onde um elemento
+ particular começa e onde ele termina. A tag
+ não é uma parte própria do elemento
+ . Porque cada DTD foi normalmente escrito para
+ marcar um tipo específico de informação,
+ cada um deles reconhecerá diferentes elementos, e
+ terá nomes diferentes para cada tag.
+
+ Para um elemento chamado element-name
+ a tag de início normalmente irá
+ se parecer com
+ element-name. E
+ a tag correspondente de fechamento para este elemento seria
+ /element-name.
+
+
+
+ Utilizando um elemento (tags de inicio e fim)
+
+ O HTML possui um elemento para indicar que o
+ conteúdo envolvido por este elemento é um
+ parágrafo, chamado p. Este
+ elemento possui ambas as tags de início e de fim.
+
+
+ Este é um parágrafo. Ele inicia com a tag de inicio do
+ elemento 'p', e irá terminar com a tag de fim para o
+ elemento 'p'.
+
+
Este é um outro parágrafo. Mas este é muito menor.
]]>
+
+
+ Nem todos os elementos requerem uma tag de
+ finalização. Alguns elementos não
+ possuem conteúdo. Por exemplo, em HTML você pode
+ indicar que deseja que uma linha horizontal apareça no
+ documento. Obviamente, esta linha não possui
+ conteúdo, assim apenas a tag de inicio é
+ requerida para este elemento.
+
+
+ Utilizando um elemento (Apenas tag de início)
+
+
+ O HTML possui um elemento para indicar uma linha
+ horizontal, chamado hr. Este elemento
+ não contém nenhum conteúdo, assim ele
+ possui apenas uma tag de inicio.
+
+ Este é um parágrafo.
+
+
+
+
Este é outro parágrafo. Uma linha horizontal o separa do
+ parágrafo anterior.
]]>
+
+
+ Se isto não é óbvio agora, os
+ elementos podem conter outros elementos. No exemplo anterior
+ do livro, o elemento livro continha todos os elementos
+ capítulos, os quais por sua vez continham todos os
+ elementos parágrafos, etc.
+
+
+ Elementos contendo elementos; em
+
+
+ Este é um parágrafo simples no qual
+ algumas das palavras foram enfatizadas.]]>
+
+
+ O DTD irá especificar as regras detalhando quais
+ elementos podem conter outros elementos, e o que exatamente
+ eles podem conter.
+
+
+ As pessoas sempre confundem os termos tags e elementos,
+ e utilizam os termos como se eles fossem
+ intercambiáveis. Eles não são.
+
+ Um elemento é uma parte conceitual do seu
+ documento. Um elemento possui um inicio e fim determinados.
+ As tags marcam onde os elementos começam e terminam.
+
+
+ Quando este documento (ou qualquer pessoa que
+ conheça SGML) se refere a tag
+ p estamos nos referindo
+ literalmente ao texto de três caracteres
+ <, p e
+ >. Mas a frase o elemento
+ p se refere ao elemento inteiro.
+
+
+ Esta distinção
+ é muito sutil. Mas mantenha ela
+ em mente
+
+
+ Os elementos podem ter atributos. Um atributo possui um
+ nome e um valor, e é utilizado para adicionar
+ informações extras ao elemento. Esta pode ser
+ a informação a qual indica como o conteúdo
+ deve ser renderizado, ou pode ser algo que identifique a
+ ocorrência única do elemento, ou pode ser qualquer
+ outra coisa.
+
+ O atributo de um elemento é sempre escrito
+ dentro da tag de início para
+ aquele elemento, e assume a forma
+ nome-do-atributo="valor-do-atributo".
+
+ Nas versões suficientemente recentes do HTML, o
+ elemento p possui um atributo chamado
+ align, o qual sugere o alinhamento
+ (Justificação) de um parágrafo para o programa
+ que estiver exibindo o HTML.
+
+ O atributo align pode assumir um de
+ quatro valores possíveis, left
+ (esquerda), center (centralizado),
+ right (direita) e justify
+ (justificado). Se o atributo não for especificado
+ será assumido o valor padrão
+ left.
+
+
+ Utilizando um elemento com um atributo
+
+ A inclusão de um atributo de alinhamento neste
+ parágrafo foi supérfluo, uma vez que o alinhamento
+ padrão é left (esquerda).
+
+
Isto pode aparecer no centro.
]]>
+
+
+ Alguns atributos irão assumir apenas valores
+ específicos, como o left ou
+ justify. Outros irão permitir que
+ você entre com qualquer coisa que deseje. Se você
+ precisar incluir aspas (") no valor de um
+ atributo, você deve envolver o valor do atributo com
+ aspas simples (').
+
+
+ Aspas simples envolta de atributos
+
+ Eu estou a direita!]]>
+
+
+ Algumas vezes você não precisa utilizar aspas
+ em volta de todos os valores dos atributos. Entretanto, a
+ regra para fazer isso é muito sutil, e é muito
+ mais simples sempre utilizar as aspas em
+ volta dos valores dos seus atributos.
+
+ A informação nos atributos, elementos e tags
+ são armazenados nos catálogos SGML. Várias
+ ferramentas do projeto de documentação utilizam
+ estes arquivos de catalogo para validarem o seu trabalho. As
+ ferramentas no textproc/docproj
+ incluem uma variedade de arquivos de catalogo
+ SGML. O projeto de documentação do FreeBSD
+ inclui seu próprio conjunto de arquivos de catálogos.
+ Suas ferramentas precisam reconhecer ambos os tipos de
+ arquivos de catalogo.
+
+
+ Para você fazer…
+
+ Para poder praticar com os exemplos deste documento
+ você precisará instalar alguns aplicativos no
+ seu sistema, além de assegurar que as variáveis
+ de ambiente estejam corretamente configuradas.
+
+
+
+ Faça o download e instale o
+ textproc/docproj
+ a partir do sistema de ports do FreeBSD. Ele é um
+ meta-port o qual deve efetuar o
+ download e a instalação de todos os
+ aplicativos e arquivos de suporte que são
+ utilizados pelo projeto de documentação.
+
+
+
+
+ Adicione linhas ao seu arquivo de
+ inicialização do shell para configurar a
+ variável de ambiente
+ SGML_CATALOG_FILES. (Se você
+ não estiver trabalhando com a versão no
+ idioma inglês da documentação,
+ você pode precisar substituir o caminho com o
+ diretório correto para o seu idioma.)
+
+
+ .profile, para os
+ usuários dos shells &man.sh.1; e &man.bash.1;
+
+
+ SGML_ROOT=/usr/local/share/sgml
+SGML_CATALOG_FILES=${SGML_ROOT}/jade/catalog
+SGML_CATALOG_FILES=${SGML_ROOT}/docbook/4.1/catalog:$SGML_CATALOG_FILES
+SGML_CATALOG_FILES=${SGML_ROOT}/html/catalog:$SGML_CATALOG_FILES
+SGML_CATALOG_FILES=${SGML_ROOT}/iso8879/catalog:$SGML_CATALOG_FILES
+SGML_CATALOG_FILES=/usr/doc/share/sgml/catalog:$SGML_CATALOG_FILES
+SGML_CATALOG_FILES=/usr/doc/en_US.ISO8859-1/share/sgml/catalog:$SGML_CATALOG_FILES
+export SGML_CATALOG_FILES
+
+
+
+ .cshrc, para os
+ usuários dos shell &man.csh.1; e &man.tcsh.1;
+
+
+ setenv SGML_ROOT /usr/local/share/sgml
+setenv SGML_CATALOG_FILES ${SGML_ROOT}/jade/catalog
+setenv SGML_CATALOG_FILES ${SGML_ROOT}/docbook/4.1/catalog:$SGML_CATALOG_FILES
+setenv SGML_CATALOG_FILES=${SGML_ROOT}/html/catalog:$SGML_CATALOG_FILES
+setenv SGML_CATALOG_FILES=${SGML_ROOT}/iso8879/catalog:$SGML_CATALOG_FILES
+setenv SGML_CATALOG_FILES /usr/doc/share/sgml/catalog:$SGML_CATALOG_FILES
+setenv SGML_CATALOG_FILES /usr/doc/en_US.ISO8859-1/share/sgml/catalog:$SGML_CATALOG_FILES
+
+
+ Para carregar estas variáveis, execute um
+ logout do sistema, logando novamente em seguida, ou
+ execute os comandos acima na sua linha de comando para
+ configurar os valores das variáveis.
+
+
+
+
+
+ Crie o arquivo example.sgml, e
+ entre com o seguinte texto:
+
+
+
+
+
+ Um exemplo de arquivo HTML
+
+
+
+
Este é um parágrafo contendo algum texto.
+
+
Este parágrafo contém mais algum texto.
+
+
Este parágrafo pode estar alinhado a direita.
+
+]]>
+
+
+
+ Tente validar este arquivo utilizando um interpretador
+ SGML.
+
+ Um dos componentes do
+ textproc/docproj
+ é o onsgmls, um interpretador de
+ validação. Normalmente, o
+ onsgmls lê um documento marcado
+ de acordo com um DTD SGML e retorna uma cópia do
+ conjunto de informações sobre a estrutura
+ dos elementos (ESIS, mas isso não é
+ importante agora).
+
+ Entretanto, quando o onsgmls
+ é executado com o parâmetro
+ , ele irá suprimir o output
+ normal, e imprimir apenas as mensagens de erro. Isto o
+ torna um meio útil de verificar se o seu documento
+ é válido ou não.
+
+ Utilize o onsgmls para verificar
+ se o seu documento é válido:
+
+ &prompt.user; onsgmls -s example.sgml
+
+ Como você irá ver, o
+ onsgmls irá executar sem
+ retornar nenhuma mensagem. Isto significa que o seu
+ documento foi validado com sucesso.
+
+
+
+ Veja o que acontece quando um elemento
+ obrigatório é omitido. Tente remover as
+ tags title e /title
+ , e execute novamente a validação.
+
+ &prompt.user; onsgmls -s example.sgml
+onsgmls:example.sgml:5:4:E: character data is not allowed here
+onsgmls:example.sgml:6:8:E: end tag for "HEAD" which is not finished
+
+ As mensagens de erro emitidas pelo
+ onsgmls são organizadas em
+ grupos separados por dois pontos, ou colunas.
+
+
+
+
+
+ Coluna
+ Propósito
+
+
+
+
+
+ 1
+ O nome do programa que está gerando
+ o erro. Ela será sempre
+ onsgmls.
+
+
+
+ 2
+ O nome do arquivo que contém o erro.
+
+
+
+
+ 3
+ Número da linha na qual o erro
+ aparece.
+
+
+
+ 4
+ Número da coluna na qual o erro
+ aparece.
+
+
+
+ 5
+ Um código de uma letra indicando a
+ natureza da mensagem. I indica
+ uma mensagem informativa, W
+ é para um aviso, e E
+ é para um erro
+ Ele não está sempre na
+ quinta coluna. O
+ onsgmls -sv exibe
+ onsgmls:I: "OpenSP" version "1.5.2"
+ (depende da versão
+ instalada). Como você pode ver,
+ esta é uma mensagem informativa.
+ , e X é
+ para uma referência cruzada. Como
+ você pode ver, estas mensagens são
+ erros.
+
+
+
+ 6
+ O texto da mensagem.
+
+
+
+
+
+ A simples omissão das tags
+ title gerou 2 erros diferentes.
+
+ O primeiro erro indica que o conteúdo (neste caso,
+ caracteres, ou melhor, a tag de inicio de um elemento)
+ ocorreu onde o interpretador SGML estava esperando outra
+ coisa. Neste caso, o interpretador estava esperando
+ encontrar uma das tags de início para os elementos
+ que são válidos dentro do
+ head (como a title
+ ).
+
+ O segundo erro é porque o elemento
+ headdeve conter
+ o elemento title. Por causa disso o
+ onsgmls considera que o elemento
+ não foi corretamente finalizado. Entretanto, a
+ tag de finalização indica que o elemento
+ foi fechado antes que estivesse terminado.
+
+
+
+ Coloque de volta o elemento
+ title.
+
+
+
+
+
+
+ A declaração DOCTYPE
+
+ O inicio de cada documento que você escrever deve
+ especificar o nome do DTD o qual se aplica ao seu documento. Isto
+ deve ser feito para que os interpretadores SGML possam determinar
+ o DTD e assegurar que o documento esta em conformidade com o
+ mesmo.
+
+ Esta informação é geralmente
+ expressada em uma linha, na declaração
+ DOCTYPE.
+
+ Uma declaração típica para um
+ documento escrito para conformar-se com a versão 4.0
+ do DTD HTML se parece com esta:
+
+ ]]>
+
+ Esta linha contém diferentes componentes.
+
+
+
+ <!
+
+
+ É o indicador que indica
+ que se trata de uma declaração SGML. Esta
+ linha está declarando o tipo do documento.
+
+
+
+
+ DOCTYPE
+
+
+ Mostra que esta é uma declaração
+ SGML para o tipo de documento.
+
+
+
+
+ html
+
+
+ O nome do primeiro
+ elemento o
+ qual irá aparecer no documento
+
+
+
+
+ PUBLIC "-//W3C//DTD HTML 4.0//EN"
+
+
+
+ Lista o Identificador Público Formal (FPI)
+ Identificar Público
+ Formal para o DTD ao qual este
+ documento conforma-se. O seu interpretador SGML
+ irá utiliza-lo para encontrar o DTD correto quando
+ estiver processando o documento.
+
+ O PUBLIC não faz parte do
+ FPI, ele indica para o processador SGML como localizar
+ o DTD referenciado na FPI. Outras formas de informar ao
+ interpretador SGML como localizar o DTD serão
+ abordadas mais tarde
+ .
+
+
+
+
+ >
+
+
+ Retorno ao documento.
+
+
+
+
+
+ Identificadores públicos formais (FPIs)
+ Identificadores
+ Públicos Formais
+
+
+
+ Você não precisa conhecê-los, mas
+ eles são um background útil, e podem
+ ajudá-lo a depurar problemas quando o seu
+ processador SGML não puder localizar o DTD que
+ você esta utilizando.
+
+
+ Os FPIs devem seguir uma sintaxe específica.
+ Esta sintaxe é a seguinte:
+
+ "Proprietário//Palavra-ChaveDescrição//Idioma"
+
+
+
+ Proprietário
+
+
+ Isto indica o proprietário da FPI.
+
+ Se este conjunto de caracteres começar
+ com ISO significará que o FPI
+ é de propriedade do ISO. Por exemplo, a FPI
+ "ISO 8879:1986//ENTITIES Greek Symbols//EN"
+ lista o ISO 8879:1986
+ como sendo o proprietário do conjunto de
+ entidades dos símbolos Gregos. O ISO 8879:1986
+ é o numero da ISO para o padrão SGML.
+
+
+ De outra forma, este conjunto de caracteres
+ irá se parecer com -//
+ Proprietário ou
+ +//Proprietário
+ (Observe que a única
+ diferença é a introdução do
+ + ou do -).
+
+ Se o conjunto de caracteres começar com
+ - significa que o
+ proprietário da informação
+ não é registrado, se começar com
+ um + significa que ele é
+ registrado.
+
+ O ISO 9070:1991 define como os nomes registrados
+ são gerados; ele pode ser derivado do numero de
+ uma publicação ISO, de um código
+ ISBN, ou um código de organização
+ atribuído de acordo com o ISO 6523. Além disso,
+ uma autoridade de registro pode ser criada a fim de
+ atribuir nomes registrados. O conselho ISO delegou
+ isto ao American National Standards
+ Institute (ANSI).
+
+ Como o Projeto FreeBSD não foi registrado o
+ conjunto de caracteres de proprietário é
+ -//FreeBSD. E como você pode
+ ver, o W3C também não é um
+ proprietário registrado.
+
+
+
+
+ Palavra-Chave
+
+
+ Existem diversas palavras-chave as quais indicam o
+ tipo de informação no arquivo. Algumas
+ das palavras chaves mais comuns são
+ DTD, ELEMENT,
+ ENTITIES, e TEXT.
+ A palavra chave DTD é
+ utilizada apenas para os arquivos DTD, a
+ ELEMENT é normalmente
+ utilizada para fragmentos DTD os quais contenham
+ apenas entidades e declarações de
+ elementos. A palavra TEXT é
+ utilizada para o conteúdo SGML (texto e tags).
+
+
+
+
+
+ Descricão
+
+
+ Qualquer descrição que você
+ deseje fornecer para o conteúdo deste arquivo.
+ O que pode incluir um número de versão ou
+ qualquer texto curto o qual seja significativo para
+ você e único para o sistema SGML.
+
+
+
+
+ Idioma
+
+
+ Este é um código ISO de duas letras o
+ qual identifica o idioma nativo do arquivo. O
+ código EN é utilizado
+ para o idioma inglês.
+
+
+
+
+
+ Arquivos de catálogo
+
+
+ Se você utilizar a sintaxe acima e processar este
+ documento utilizando um processador SGML, o processador
+ irá precisar de uma forma de associar a FPI ao nome
+ do arquivo no seu computador o qual contém o DTD.
+
+
+ Para isto devemos utilizar um arquivo de
+ catálogo. Um arquivo de catálogo (tipicamente
+ chamado de catalog) contém
+ linhas as quais mapeiam FPIs para nomes de arquivos. Por
+ exemplo, se o arquivo de catálogo contiver a linha:
+
+
+ PUBLIC "-//W3C//DTD HTML 4.0//EN" "4.0/strict.dtd"
+
+ O processador SGML saberia que deveria procurar pelo
+ DTD strict.dtd no subdiretório
+ 4.0 de qualquer diretório que
+ possuísse um arquivo catalog contendo
+ esta linha.
+
+ Veja o conteúdo do
+ /usr/local/share/sgml/html/catalog.
+ Este é o arquivo de catálogo para o DTD HTML
+ o qual será instalado como parte do port
+ textproc/docproj.
+
+
+
+ SGML_CATALOG_FILES
+
+ A fim de encontrar um arquivo de
+ catálogo, o seu processador SGML
+ precisará saber onde procurar. Muitos deles possuem
+ recursos de parâmetros de linha de comando para
+ especificar o caminho para um ou mais catálogos.
+
+
+ Adicionalmente, você pode definir a
+ variável de ambiente
+ SGML_CATALOG_FILES para apontar para os
+ arquivos. Esta variável deve consistir de uma
+ lista, separada por dois pontos (":"), de arquivos de
+ catálogo (incluindo seus caminhos completos).
+
+ Tipicamente, você precisará incluir os
+ seguintes arquivos:
+
+
+
+ /usr/local/share/sgml/docbook/4.1/catalog
+
+
+
+ /usr/local/share/sgml/html/catalog
+
+
+
+ /usr/local/share/sgml/iso8879/catalog
+
+
+
+ /usr/local/share/sgml/jade/catalog
+
+
+
+ Você já
+ deve ter feito isto.
+
+
+
+
+ Alternativas aos FPIs
+
+ Ao invés de utilizar um FPI para indicar o DTD ao
+ qual o documento conforma-se (e consequentemente, quais
+ arquivos no sistema contém o DTD), você pode
+ especificar explicitamente o nome do arquivo.
+
+ A sintaxe para isto é ligeiramente diferente:
+
+
+ ]]>
+
+ A palavra chave SYSTEM indica que o
+ processador SGML deve encontrar o DTD em um local
+ específico do sistema. Isto tipicamente (mas
+ não sempre) significa que o DTD será fornecido
+ como um nome de arquivo.
+
+ O uso de FPIs é preferido por razões de
+ portabilidade. Você pode não desejar ter que
+ enviar uma cópia do DTD junto com seu documento, e
+ se você utilizasse um identificador
+ SYSTEM todos necessitariam manter os seus
+ DTDs no mesmo lugar que você.
+
+
+
+
+ Voltando para o SGML
+
+ Como mencionado anteriormente, o SGML é utilizado
+ somente quando escrevemos um DTD. Isto não é
+ estritamente verdade. Existem certas sintaxes SGML as quais
+ você poderá desejar utilizar com os seus
+ documentos. Por exemplo, você pode incluir
+ comentários no seu documento, e eles serão
+ ignorados pelo interpretador. Os comentários são
+ adicionados utilizando sintaxe SGML. Outros usos para a sintaxe
+ SGML no seu documento serão mostrados mais tarde.
+
+ Obviamente, você precisa indicar de alguma forma ao
+ processador SGML que o conteúdo seguinte não se
+ trata de elementos do documento, mas sim de SGML sobre o qual
+ o interpretador deve atuar.
+
+ Estas sessões são marcadas no seu documento
+ com <! ... >. Tudo entre estes
+ delimitadores é sintaxe SGML tal como você pode
+ encontrar dentro de um DTD.
+
+ Como você pode perceber, a
+
+ declaração DOCTYPE é um exemplo
+ de sintaxe SGML a qual você precisa incluir no seu
+ documento.
+
+
+
+ Comentários
+
+ Comentários são uma construção
+ SGML, e são normalmente válidos apenas dentro de
+ um DTD. Entretanto, como mostrou a
+ , é possível
+ utilizar sintaxe SGML com os seus documentos.
+
+ O delimitador para um comentário SGML é o
+ conjunto de caracteres --.
+ A primeira ocorrência deste conjunto de caracteres abre
+ um comentário e a segunda fecha.
+
+
+ Comentário SGML genérico
+
+ <!-- Teste de comentário -->
+
+
+
+
+
+
+
+]]>
+
+
+
+ Utilize 2 traços
+
+ Existe um problema com a produção de
+ versões Postscript e PDF deste documento. O exemplo
+ acima provavelmente mostra apenas um símbolo de
+ hífen, - depois do
+ <! e antes do >.
+
+
+ Você deve utilizar dois
+ - e não um.
+ As versões Postscript e PDF traduzem os dois
+ - do original para um mais longo, e mais
+ profissional em-dash, e quebra este
+ exemplo no processo.
+
+ As versões HTML, texto plano, e RTF deste
+ documento não são afetadas.
+
+ ]]>
+
+ Se você já utilizou HTML antes, você pode ter
+ sido exposto a regras diferentes para comentários. Em
+ particular, você pode pensar que o conjunto de caracteres
+ <!-- abre um comentário e que ele
+ apenas é fechado por um -->.
+
+ Este não é o caso.
+ Muitos dos navegadores web possuem interpretadores HTML
+ quebrados, e irão aceitar isso como válido.
+ Entretanto, os interpretadores SGML utilizados pelo projeto
+ de documentação são muito mais
+ rígidos, e irão rejeitar os documentos que
+ contiverem este erro.
+
+
+ Comentários SGML errados
+
+ ]]>
+
+ O interpretador SGML irá tratar isto como ele
+ é realmente;
+
+ <!Isto está fora do comentário>
+
+ Isto não é um SGML válido, e pode
+ dar mensagens de erro confusas.
+
+ ]]>
+
+ E como o exemplo sugere, não escreva
+ comentários como esse.
+
+ ]]>
+
+ Esta é uma abordagem (ligeiramente) melhor, mas
+ ele ainda é potencialmente confuso para as pessoas
+ novas no uso do SGML.
+
+
+
+
+ Para você fazer…
+
+
+
+ Adicione alguns comentários ao arquivo
+ example.sgml e verifique se ele
+ continua válido usando o onsgmls.
+
+
+
+
+ Adicione alguns comentários inválidos ao
+ example.sgml e veja as mensagens de
+ erro que o onsgmls emite quando
+ encontra um comentário inválido.
+
+
+
+
+
+
+ Entidades
+
+ Entidades são um mecanismo para atribuir nomes para
+ pedaços de conteúdo. Quando o interpretador
+ SGML processar o seu documento, qualquer entidade que ele
+ encontrar será substituída pelo conteúdo da
+ entidade.
+
+ Esta é uma boa forma de ter pedaços de
+ conteúdo reutilizáveis e facilmente
+ alteráveis em seus documentos SGML. Esta é
+ também a única forma de incluir um arquivo
+ marcado dentro de outro utilizando SGML.
+
+ Existem dois tipos de entidades que podem ser utilizadas
+ em duas situações diferentes;
+ Entidades gerais e
+ Entidades de parâmetros.
+
+
+ Entidades gerais
+
+ Você não pode utilizar uma entidade geral
+ em um contexto SGML (embora você as defina em um).
+ Elas podem ser utilizadas apenas no seu documento. Compare
+ isto com as
+ entidades de parâmetros.
+
+ Cada entidade geral possui um nome. Quando você
+ quer referenciar uma entidade geral (e consequentemente
+ incluir o texto que ela representa no seu documento),
+ você escreve
+ &nome-da-entidade;.
+ Por exemplo, suponha que você possui uma
+ entidade chamada current.version, a qual
+ expande para a versão atual do seu produto.
+ Você pode escrever:
+
+ A versão atual do nosso produto é ¤t.version;.]]>
+
+ Quando o número de versão mudar,
+ você pode simplesmente alterar a definição
+ do valor da entidade geral e reprocessar o seu documento.
+
+
+ Você também pode utilizar entidades gerais
+ para incorporar caracteres que você não poderia
+ incorporar de outra forma em um documento SGML. Por exemplo,
+ os caracteres < e
+ & não podem aparecer normalmente
+ em um documento SGML. Quando o interpretador SGML vê
+ o símbolo < ele assume que
+ aquilo é uma tag (uma tag de abertura ou de fechamento)
+ que está a ponto de aparecer, e quando ele vê o
+ símbolo & ele assume que o
+ próximo texto será o nome de uma entidade.
+
+
+ Felizmente, você pode utilizar as duas entidades
+ gerais < e
+ & sempre que você precisar
+ incluí-los.
+
+ Uma entidade geral só pode ser definida dentro de
+ um contexto SGML. Tipicamente, isto é feito
+ imediatamente depois da declaração DOCTYPE.
+
+
+
+ Definindo uma entidade geral
+
+
+
+]>]]>
+
+ Observe como a declaração DOCTYPE foi
+ estendida adicionando-se um colchete no final da primeira
+ linha. As duas entidades estão definidas nas
+ próximas duas linhas, antes que o colchete seja
+ fechado, e então a declaração DOTYPE
+ é fechada.
+
+ O colchete é necessário para indicar
+ que nós estamos extendendo o DTD indicado pela
+ declaração DOCTYPE.
+
+
+
+
+ Entidades de parâmetro
+
+ Assim como as
+ entidades gerais
+ , as entidades de parâmetro são utilizadas para
+ atribuir um nome a pedaços reutilizáveis de
+ texto. Entretanto, enquanto as entidades gerais só
+ podem ser utilizadas com o seu documento, as entidades de
+ parâmetro podem ser utilizadas apenas dentro de um
+ contexto SGML.
+
+
+ As entidades de parâmetro são definidas de uma
+ forma similar as entidades gerais. Entretanto, ao
+ invés de utilizar
+ &nome-da-entidade;
+ como referência, utiliza
+ %nome-da-entidade;
+ Entidades de
+ Parâmetro utilizam o símbolo de
+ Porcentagem..
+ A definição também inclui o
+ % entre a palavra chave
+ ENTITY e o nome da entidade.
+
+
+ Definindo entidades de parâmetros
+
+
+
+
+
+
+]>]]>
+
+
+ Isto pode não parecer particularmente
+ útil. Mas ele será.
+
+
+
+
+ Para você fazer…
+
+
+
+ Adicione uma entidade geral ao
+ example.sgml.
+
+
+]>
+
+
+
+ Um exemplo de arquivo HTML
+
+
+
+
+
+
Este é um parágrafo contendo algum texto.
+
+
Este parágrafo contém mais algum texto.
+
+
Este parágrafo pode estar alinhado a direita.
+
+
A versão atual deste documento é: &version;
+
+]]>
+
+
+
+ Valide o documento utilizando o onsgmls
+
+
+
+
+ Carregue o arquivo example.sgml
+ no seu navegador web (Você pode precisar
+ copiá-lo para example.html
+ antes que o seu navegador possa reconhecê-lo como
+ um documento HTML).
+
+ A menos que o seu navegador seja muito
+ avançado, você não irá ver a
+ entidade referenciada por &version;
+ substituída pelo número de versão.
+ A maioria dos navegadores web possuem interpretadores
+ muito simplistas os quais não manuseiam
+ corretamente SGML Isto é uma
+ vergonha. Imagine todos os problemas e hacks
+ (tais como os Server Side Includes) que
+ poderiam ser evitados se eles o fizessem.
+ .
+
+
+
+ A solução é
+ normalizar seu documento utilizando
+ um normalizador SGML. Um normalizador lê um SGML
+ válido e retorna um SGML igualmente válido
+ o qual foi transformado de alguma forma. Uma das formas
+ em que o normalizador transforma o SGML é
+ expandindo todas as entidades referenciadas no documento,
+ substituindo as entidades pelo texto que elas
+ representam.
+
+ Você pode utilizar o osgmlnorm
+ para fazer isto:
+
+ &prompt.user; osgmlnorm example.sgml > example.html
+
+ Você deve encontrar uma cópia
+ normalizada (isto é, entidades referenciadas
+ expandidas) do seu documento no arquivo
+ example.html, pronta para ser
+ carregada no seu navegador web.
+
+
+
+ Se você examinar o retorno do
+ osgmlnorm você ira ver que ele
+ não inclui a declaração DOCTYPE no
+ inicio. Para incluí-la você precisa
+ utilizar a opção :
+
+ &prompt.user; osgmlnorm -d example.sgml > example.html
+
+
+
+
+
+
+ Utilizando entidades para incluir arquivos
+
+ As entidades (ambas gerais e de parâmetros)
+ são particularmente úteis quando utilizadas
+ para incluir um arquivo dentro de outro.
+
+
+ Utilizando entidades gerais para incluir arquivos
+
+ Suponha que você possui algum conteúdo para um
+ livro SGML organizado em arquivos, um arquivo por capítulo,
+ chamados chapter1.sgml,
+ chapter2.sgml, e assim por diante, com
+ um arquivo book.sgml que irá
+ conter estes capítulos.
+
+ A fim de utilizar o conteúdo destes arquivos como
+ os valores para as suas entidades, você as declara com
+ a palavra chave SYSTEM. Isto direciona o
+ interpretador SGML para utilizar o conteúdo dos
+ arquivos nomeados como o valor da entidade.
+
+
+ Utilizando entidades gerais para incluir
+ arquivos
+
+
+
+
+
+]>
+
+
+
+
+ &chapter.1;
+ &chapter.2;
+ &chapter.3;
+]]>
+
+
+
+ Quando utilizar uma entidade geral para incluir outros
+ arquivos em um documento, os arquivos que estiverem sendo
+ inclusos (chapter1.sgml,
+ chapter2.sgml, etc)
+ não devem iniciar com uma
+ declaração DOCTYPE. Isto é um erro
+ de sintaxe.
+
+
+
+
+ Utilizando entidades de parâmetro para incluir
+ arquivos
+
+ Recorde-se que uma entidade de parâmetro só pode
+ ser utilizada dentro de um contexto SGML. Por que
+ então você desejaria incluir um arquivo dentro
+ de um contexto do SGML?
+
+ Você pode utilizar isto para assegurar-se de que
+ você pode reutilizar as suas entidades gerais.
+
+ Suponha que você possui muitos capítulos em seu
+ documento, e você reutiliza estes capítulos em dois
+ livros diferentes, cada livro organizando os capítulos de
+ uma forma diferente.
+
+ Você pode listar as entidades no topo de cada
+ livro, mas isto rapidamente torna-se incomodo de gerenciar.
+
+
+ Em vez de disso, coloque as definições das
+ suas entidades gerais em um arquivo, e utilize uma entidade
+ de parâmetro para incluir este arquivo dentro do seu
+ documento.
+
+
+ Utilizando entidades de parâmetro para incluir
+ arquivos.
+
+ Primeiro, coloque as suas definições de
+ entidades em um arquivo separado, chamado
+ chapters.ent. Este arquivo
+ contém o seguinte:
+
+
+
+]]>
+
+ Agora crie uma entidade de parâmetro para referenciar
+ o conteúdo do arquivo. E então utilize a
+ entidade de parâmetro para carregar o arquivo no seu
+ documento, o que tornará todas as entidades gerais
+ disponíveis para uso. Feito isso, utilize as
+ entidades gerais como antes;
+
+
+
+
+
+%chapters;
+]>
+
+
+ &chapter.1;
+ &chapter.2;
+ &chapter.3;
+]]>
+
+
+
+
+ Para você fazer…
+
+
+ Utilizando entidades gerais para incluir arquivos
+
+
+
+
+ Crie três arquivos,
+ para1.sgml,
+ para2.sgml, e
+ para3.sgml.
+
+ Coloque um conteúdo similar ao seguinte em
+ cada arquivo:
+
+ Este é o primeiro parágrafo.]]>
+
+
+
+ Edite o arquivo example.sgml
+ para que ele se pareça com este:
+
+
+
+
+
+]>
+
+
+
+ Um exemplo de arquivo HTML
+
+
+
+
A versão atual deste documento é: &version;
+
+ ¶1;
+ ¶2;
+ ¶3;
+
+]]>
+
+
+
+ Produza o arquivo
+ example.html através da
+ normalização do arquivo
+ example.sgml.
+
+ &prompt.user; osgmlnorm -d example.sgml > example.html
+
+
+
+ Carregue o arquivo
+ example.html no seu navegador web,
+ e confirme que os arquivos
+ paran.sgml
+ foram incluídos no example.html.
+
+
+
+
+
+
+ Utilizando uma entidade de parâmetro para incluir
+ arquivos.
+
+
+ Você deve ter executado os passos anteriores
+ primeiro.
+
+
+
+
+ Edite o arquivo
+ example.sgml para que ele se
+ pareça com este:
+
+ %entities;
+]>
+
+
+
+ Um exemplo de arquivo HTML
+
+
+
+
A versão atual deste documento é: &version;
+
+ ¶1;
+ ¶2;
+ ¶3;
+
+]]>
+
+
+
+ Crie um novo arquivo chamado
+ entities.sgml, com este
+ conteúdo:
+
+
+
+
+]]>
+
+
+
+ Produza o arquivo example.html
+ através da normalização do arquivo
+ example.sgml.
+
+ &prompt.user; osgmlnorm -d example.sgml > example.html
+
+
+
+ Carregue o arquivo
+ example.html no seu navegador web
+ e confirme que os arquivos
+ paran.sgml
+ foram incluídos no arquivo
+ example.html.
+
+
+
+
+
+
+
+ Sessões marcadas
+
+ O SGML fornece um mecanismo para indicar que uma parte
+ particular do documento deve ser processada de uma forma
+ especial. Estas partes são denominadas
+ sessões marcadas.
+
+
+ Estrutura de uma sessão marcada
+
+ <![ Palavra-chave [
+ Conteúdo da sessão marcada
+]]>
+
+
+ Como você esperaria, sendo uma
+ construção SGML, uma sessão
+ marcada inicia com um <!.
+
+ O primeiro colchete começa a limitar a sessão
+ marcada.
+
+ A Palavra-chave descreve como
+ esta sessão marcada deve ser processada pelo
+ interpretador.
+
+ O segundo colchete indica que o conteúdo da
+ sessão marcada inicia aqui.
+
+ A sessão marcada é finalizada pelo fechamento
+ dos dois colchetes e então retornando ao contexto do
+ documento a partir do contexto SGML com o
+ >.
+
+
+ Palavras-Chave de sessões marcadas
+
+
+ CDATA,
+ RCDATA
+
+ Estas palavras chave denotam o modelo do
+ conteúdo das sessões marcadas, e
+ permitem que você o altere a partir do padrão.
+
+
+ Quando um interpretador SGML esta processando um
+ documento ele tenta seguir o que chamamos de modelo
+ de conteúdo
+
+ Resumidamente, o modelo de conteúdo descreve
+ que tipo de conteúdo o interpretador esta esperando
+ encontrar, e o que fará com ele quando o encontrar.
+
+
+ Os dois modelos de conteúdo que você
+ provavelmente irá achar mais úteis
+ são o CDATA e o
+ RCDATA.
+
+ O CDATA é para
+ Dados de Caracter. Se o interpretador
+ está neste modelo de conteúdo então ele
+ está esperando encontrar caracteres, e apenas
+ caracteres. Neste modelo os símbolos
+ < e o &
+ perdem o seu status especial, e serão tratados como
+ caracteres ordinários.
+
+ O RCDATA é para
+ Referências de entidade e dados de caracter
+ . Se o interpretador está neste
+ modelo de conteúdo ele está esperando
+ encontrar caracteres e entidades.
+ O símbolo < perde
+ o seu status especial, mas o &
+ continuará sendo tratado como o inicio de uma
+ entidade geral.
+
+ Isto é particularmente útil se você
+ está incluindo algum texto literal o qual
+ contém muitos caracteres < e
+ &. Ao invés de atravessar o
+ texto todo tendo que verificar se todos os
+ < estão convertidos para um
+ < e todos os
+ & estão convertidos para um
+ & pode ser mais simples marcar
+ a sessão como contendo apenas
+ CDATA. Quando o interpretador SGML
+ encontrá-los ele irá ignorar os símbolos
+ < e &
+ embutidos no conteúdo.
+
+
+ Quando você utiliza CDATA ou
+ RCDATA nos exemplos de texto marcado em
+ SGML, tenha em mente que o conteúdo do
+ CDATA não é validado.
+ Você tem que verificar o SGML incluso no texto
+ utilizando algum outro meio. Você pode, por
+ exemplo, escrever o exemplo em outro documento,
+ validar o código de exemplo, e então
+ colá-lo para o seu conteúdo
+ CDATA.
+
+
+
+
+
+ Utilizando uma sessão marcada como
+ CDATA
+
+ <para>Aqui está um exemplo de como você incluiria algum texto que contenha muitos
+ símbolos <literal><</literal> e <literal>&</literal>.
+ O texto de exemplo é um fragmento de HTML.
+ O texto circunvizinho (<para> e <programlisting>) é do
+ DocBook.</para>
+
+<programlisting>
+ <![ CDATA [ Esta é uma amostra que apresenta alguns elementos de HTML.
+ Uma vez que os símbolos de < e > são utilizados muitas vezes, é
+ mais fácil dizer que o exemplo todo é uma sessão marcada do
+ tipo CDATA, do que utilizar nomes de entidades para representar
+ estes símbolos ao longo de todo o texto.
+
+
+
Este é um item de lista
+
Este é um segundo item de lista
+
Este é um terceiro item de lista
+
+
+
Este é o final do exemplo.
]]>
+ ]]>
+</programlisting>
+
+ Se você examinar o fonte deste documento
+ você irá ver que esta técnica foi
+ utilizada por toda parte.
+
+
+
+
+ INCLUDE and
+ IGNORE
+
+ Se a palavra chave for INCLUDE
+ então o conteúdo da sessão marcada
+ será processado. Se a palavra chave for
+ IGNORE então a sessão
+ marcada será ignorada e não será
+ processada. Ela não irá aparecer no
+ output.
+
+
+ Utilizando INCLUDE e
+ IGNORE nas sessões marcadas
+
+ <![ INCLUDE [
+ Este texto será processado e incluído.
+]]>
+
+<![ IGNORE [
+ Este texto não será processado nem incluído.
+]]>
+
+
+ Por si só, isto não é muito
+ útil. Se você desejar remover o texto do seu
+ documento você pode cortá-lo fora, ou
+ comentá-lo.
+
+ Torna-se mais útil quando você utilizar
+ entidades de
+ parâmetro para controlá-lo. Lembre-se que
+ entidades de parâmetro só podem ser utilizadas em um
+ contexto SGML, e que a palavra chave de uma sessão
+ marcada é um contexto
+ SGML.
+
+ Por exemplo, suponha que você produza uma
+ cópia impressa e uma versão eletrônica
+ de alguma documentação. Você pode
+ desejar incluir na versão eletrônica algum
+ conteúdo extra, o qual não deve aparecer na
+ versão impressa.
+
+ Crie uma entidade de parâmetro, e configure seu valor
+ para INCLUDE. Escreva seu documento,
+ usando uma sessão marcada para delimitar o
+ conteúdo
+ que deve aparecer apenas na versão eletrônica.
+ Nesta sessão marcada utilize a entidade de parâmetro
+ no lugar da palavra chave.
+
+ Quando você desejar produzir uma cópia
+ impressa do documento, altere o valor da entidade de
+ parâmetro para IGNORE e reprocesse o
+ documento.
+
+
+ Utilizando uma entidade de parâmetro para
+ controlar uma sessão marcada
+
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN" [
+<!ENTITY % electronic.copy "INCLUDE">
+]]>
+
+...
+
+<![ %electronic.copy [
+ Este conteúdo deve aparecer apenas na versão eletrônica do
+ documento.
+]]>
+
+ Quando for produzir uma versão impressa do
+ documento, altere a definição da entidade
+ para;
+
+ <!ENTITY % electronic.copy "IGNORE">
+
+ Ao reprocessar o documento, a sessão marcada
+ que utilizar a entidade %electronic.copy
+ como a sua palavra chave será
+ ignorada.
+
+
+
+
+
+ Para você fazer…
+
+
+
+ Crie um novo arquivo chamado
+ section.sgml, o qual deve conter o
+ seguinte conteúdo:
+
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN" [
+<!ENTITY % text.output "INCLUDE">
+]>
+
+<html>
+ <head>
+ <title>Um exemplo utilizando uma sessão marcada.</title>
+ </head>
+
+ <body>
+ <p>Este parágrafo <![ CDATA [contêm muitos caracteres <
+ (< < < < <) de forma que é mais simples utilizar
+ uma sessão marcada do tipo CDATA.]]></p>
+
+ <![ IGNORE [
+ <p>Este parágrafo definitivamente não será incluído
+ no output.</p>
+ ]]>
+
+ <![ [
+ <p>Este parágrafo pode ou não aparecer no output.</p>
+
+ <p>A sua ocorrência é controlada pela entidade de parâmetro
+ .</p>
+ ]]>
+ </body>
+</html>
+
+
+
+ Normalize este arquivo utilizando o
+ osgmlnorm e examine o resultado.
+ Observe quais parágrafos apareceram, quais desapareceram
+ e o que aconteceu com o conteúdo da
+ sessão marcada como CDATA.
+
+
+
+ Altere a definição da entidade
+ text.output de INCLUDE
+ para IGNORE. Re-normalize
+ o arquivo, e observe o resultado para ver o que foi
+ alterado.
+
+
+
+
+
+
+ Conclusão
+
+ Esta é a conclusão da introdução
+ ao SGML. Devido a restrições de espaço e
+ complexidade, diversos assuntos não foram abordados em
+ profundidade (ou sequer foram abordados). Entretanto, as
+ sessões prévias cobriram o suficiente do SGML
+ para que você possa seguir a organização
+ da documentação do FDP.
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/structure/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/structure/chapter.sgml
new file mode 100644
index 0000000000..84ac000700
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/structure/chapter.sgml
@@ -0,0 +1,354 @@
+
+
+
+
+ Estruturando Documentos Sob doc/
+
+ A árvore doc/ é organizada
+ de uma forma particular, e os documentos que compõe o
+ &a.ptbr.p.fdpp; devem ser por isso organizados de forma
+ particular. O objetivo é tornar simples a
+ adição de nova documentação à
+ árvore, e:
+
+
+
+ Facilitar a automatização da
+ conversão de documentos para outros
+ formatos.
+
+
+
+ Promover consistência entre diferentes formas de
+ organizar a documentação, facilitar a troca
+ entre diferentes documentos.
+
+
+
+ Facilitar a decisão de onde na árvore uma
+ nova documentação deveria ser colocada.
+
+
+
+ Além disso, a árvore de
+ documentação tem de acomodar
+ documentação que pode estar em muitas diferentes
+ línguas e muitas diferentes codificações.
+ É importante que a estrutura da árvore de
+ documentação não force nenhum padrão
+ particular ou preferência cultural.
+
+
+ O Nível Superior, doc/
+
+ Existem dois tipos de diretórios sob
+ doc/, cada um com nomes de
+ diretórios e significados muito específicos.
+
+
+
+
+ Diretório
+
+ Significado
+
+
+
+ share/
+
+ Contém arquivos que não são
+ específicos as várias traduções
+ e codificações da documentação.
+ Contém subdiretórios para promover uma melhor
+ categorização da
+ informação. Por exemplo, os arquivos que
+ compõem a infraestrutura de &man.make.1; encontram-se
+ em share/mk, enquanto os arquivos
+ adicionais para suporte SGML (como as extensões do
+ FreeBSD ao DocBook DTD) encontram-se em
+ share/sgml.
+
+
+
+
+ idioma.codificação/
+
+ Existe um diretório para cada
+ tradução e codificação da
+ documentação, por exemplo
+ en_US.ISO8859-1/ e
+ zh_TW.Big5/. Os nomes são
+ longos, mas ao especificar completamente a língua e
+ codificação prevenimos qualquer futura dor de
+ cabeça caso um time de tradução queira
+ prover a documentação na mesma língua
+ mas em mais de uma codificação. Isto
+ também nos isola completamente de quaisquer
+ problemas que possam ser causados por uma mudança
+ para Unicode.
+
+
+
+
+
+
+ Os Diretórios de idioma.codificação
+
+ Estes diretórios contêm os documentos
+ propriamente ditos. A documentação é
+ dividida em até três categorias adicionais neste
+ nível, indicadas pelos diferentes nomes de
+ diretórios.
+
+
+
+ Diretório
+
+ Conteúdo
+
+
+ articles
+
+ Documentação codificada como DocBook
+ article (ou equivalente).
+ Razoavelmente pequena, e separada em
+ seções. Normalmente disponível apenas
+ como um arquivo HTML.
+
+
+
+ books
+
+ Documentação codificada como DocBook
+ book (ou equivalente).
+ Com o tamanho de um livro, e separada em
+ capítulos. Normalmente disponível tanto como
+ um grande arquivo HTML (para pessoas com conexões
+ rápidas, ou que queiram imprimí-la facilmente
+ a partir de um navegador Internet) quanto como uma
+ coleção de pequenos arquivos
+ interligados.
+
+
+
+ man
+
+ Para traduções das páginas de manual
+ do sistema. Este diretório conterá um ou mais
+ diretórios
+ mann,
+ correspondendo as seções que foram
+ traduzidas.
+
+
+
+ Nem todo diretório
+ idioma.codificação
+ conterá todos estes diretórios. Isto depende de
+ quantos documentos já foram traduzidos pelo time de
+ tradução.
+
+
+
+ Informação Específica do
+ Documento
+
+ Esta sessão contém observações
+ específicas sobre documentos particulares controlados pelo
+ FDP.
+
+
+ O Handbook
+
+ books/handbook/
+
+ O Handbook é escrito de forma a obedecer a
+ versão estendida do DTD DocBook utilizado pelo
+ projeto FreeBSD.
+
+ O Handbook é organizado como um
+ book Docbook. Ele está dividido
+ em partes, e cada uma delas pode conter
+ diversos chapters (Capítulos). Os
+ chapters estão subdivididos
+ em seções (sect1) e
+ subseções (sect2,
+ sect3) e assim por diante.
+
+
+ Organização Fisíca
+
+ Existem diversos arquivos e diretórios dentro do
+ diretório handbook.
+
+
+ A organização do Handbook pode mudar
+ ao longo do tempo, e este documento pode ficar defasado
+ no detalhamento destas alterações
+ organizacionais. Se você tiver alguma pergunta sobre
+ como o Handbook é organizado, por favor entre em
+ contato com a &a.doc;.
+
+
+
+ Makefile
+
+ O Makefile define algumas
+ variáveis as quais afetam a forma como o fonte
+ SGML é convertido para outros formatos, e lista
+ os vários arquivos fonte que compõem o
+ Handbook. Ele também inclui um arquivo
+ padrão chamado doc.project.mk,
+ o qual contém o restante do código
+ responsável por realizar a conversão dos
+ documentos de um formato para outro.
+
+
+
+ book.sgml
+
+ Este é o documento de mais alto nível
+ do Handbook. Ele contém as
+
+ declarações DOCTYPE do Handbook,
+ assim como os elementos que descrevem a estrutura do
+ Handbook.
+
+ O book.sgml utiliza entidades de
+ parâmetro para carregar os arquivos com
+ extensão .ent. Estes
+ arquivos (descritos abaixo) definem as
+
+ entidades gerais as quais são utilizadas
+ ao longo de todo o Handbook.
+
+
+
+ directory/chapter.sgml
+
+ Cada capítulo do Handbook é armazenado
+ em um arquivo chamado chapter.sgml
+ localizado em um diretório separado dos outros
+ capítulos. Cada diretório é nomeado
+ depois do valor do atributo id no
+ elemento chapter.
+
+ Por exemplo, se um dos arquivos de capítulos
+ contiver:
+
+
+...
+]]>
+
+ Então ele será chamado de
+ chapter.sgml e será
+ armazenadao no diretório kernelconfig
+ . Em geral, todo o conteúdo do
+ capítulo será mantido neste arquivo.
+
+ Quando a versão HTML do Handbook for
+ produzida, será gerado um arquivo
+ kernelconfig.html. Isto ocorre
+ devido ao valor do atributo id e
+ não está relacionado ao nome do
+ diretório.
+
+ Nas versões anteriores do Handbook os
+ arquivos eram armazenados no mesmo diretório
+ que o book.sgml, e depois nomeados
+ a partir do valor do atributo id
+ presente no elemento chapter do
+ arquivo. Agora, é possível incluir imagens
+ em cada capítulo. As imagens de cada
+ capítulo do Handbook são
+ armazenadas dentro de
+ share/images/books/handbook.
+ Observe que as versões localizadas destas imagens
+ devem ser colocadas no mesmo diretório com o
+ código fonte SGML de cada capítulo.
+ Colisões de
+ namespace são
+ inevitáveis, e é muito mais simples
+ trabalhar com vários diretórios que
+ contenham poucos arquivos em cada um, do que trabalhar
+ com um diretório que contenha muitos
+ arquivos.
+
+ Um exame rápido vai mostrar que existem muitos
+ diretórios com um único arquivo
+ chapter.sgml, incluindo
+ basics/chapter.sgml,
+ introduction/chapter.sgml, e
+ printing/chapter.sgml.
+
+
+ Os capítulos e/ou diretórios
+ não devem ser nomeados de forma que
+ reflitam sua ordem no Handbook. Esta
+ ordenação pode mudar com uma
+ reorganização do conteúdo
+ do Handbook; este tipo de reorganização
+ não deve (geralmente) incluir a necessidade de
+ renomear os arquivos (a menos que um capítulo
+ inteiro esteja sendo promovido ou rebaixado na
+ hierarquia).
+
+
+ Cada arquivo chapter.sgml
+ não será um documento SGML completo. Em
+ particular, eles não terão as suas
+ próprias linhas DOCTYPE no início do
+ arquivo.
+
+ Isto é uma infelicidade pois torna
+ impossível tratá-los como arquivos SGML
+ genéricos e simplesmente convertê-los para
+ HTML, RTF, PS, e outros formatos da mesma forma que o
+ Handbook principal é gerado. Isto irá
+ forçá-lo a reconstruir o Handbook inteiro
+ sempre que você desejar ver o efeito de uma
+ alteração realizada em apenas um
+ capítulo.
+
+
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/stylesheets/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/stylesheets/chapter.sgml
new file mode 100644
index 0000000000..3cb3e9a9a5
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/stylesheets/chapter.sgml
@@ -0,0 +1,102 @@
+
+
+
+ * Folhas de Estilo
+
+ O SGML não diz nada sobre como um documento deve ser
+ exibido ao usuário, ou formatado para impressão.
+ Para fazer isto, várias linguagens foram
+ desenvolvidas para descrever folhas de estilo, incluindo DynaText,
+ Panorama, SPICE, JSSS, FOSI, CSS, e DSSSL.
+
+ Para o DocBook, nós estamos usando
+ folhas de estilo escritas em DSSSL. Para o HTML nós
+ estamos usando o CSS.
+
+
+ * DSSSL
+
+ O projeto de documentação usa uma
+ versão ligeiramente customizada das folhas de estilo
+ modulares do DocBook de Norm Walsh.
+
+ Elas podem ser encontradas no textproc/dsssl-docbook-modular.
+
+
+ As folhas de estilo modificadas não estão no
+ sistema de ports. Elas são parte do
+ repositório de fontes do projeto de
+ documentação, e podem ser encontradas em
+ doc/share/sgml/freebsd.dsl. Elas
+ estão bem comentadas, e como a conclusão desta
+ seção está pendente, recomendamos que
+ você examine este arquivo para ver como algumas das
+ opções disponíveis nas folhas de estilo
+ padrão foram configuradas para customizar a
+ saída para o projeto de documentação do
+ FreeBSD. Este arquivo também contém exemplos
+ que mostram como estender os elementos que a folha de estilo
+ compreende, que é como os elementos específicos
+ para o FreeBSD foram formatados.
+
+
+
+ CSS
+
+ Folha de estilo em cascata (CSS) é um
+ mecanismo para anexar a informação de estilo
+ (fontes, peso, tamanho, cor, e assim por diante) aos elementos
+ de um documento HTML sem abusar do HTML para
+ fazê-lo.
+
+
+ Documentos DocBook
+
+ As folhas de estilo DSSSL do FreeBSD incluem uma
+ referência para a folha de estilo,
+ docbook.css, a qual espera-se aparecer
+ no mesmo diretório dos arquivos HTML. Este arquivo
+ CSS geral do projeto é copiado de
+ doc/share/misc/docbook.css quando os
+ documentos são convertidos para HTML, e é
+ instalado automaticamente.
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/the-website/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/the-website/chapter.sgml
new file mode 100755
index 0000000000..ab9828002a
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/the-website/chapter.sgml
@@ -0,0 +1,266 @@
+
+
+
+ O Website
+
+
+ Preparação
+
+ Utilize um disco que tenha espaço livre suficiente.
+ Você irá precisar de 200 MB a 500 MB,
+ dependendo do método que escolher. Este espaço
+ irá abrigar as ferramentas SGML, um subconjunto da
+ árvore svn, os arquivos
+ temporários de trabalho e as páginas web
+ instaladas.
+
+
+ Certifique-se que seus ports de
+ documentação estão atualizados! Quando
+ na dúvida, remova os ports antigos usando o comando
+ &man.pkg.delete.1; antes de instalar o port. Por exemplo,
+ nós atualmente dependemos do jade-1.2, e se você
+ tem instalado o jade-1.1, por favor execute:
+
+ &prompt.root; pkg_delete jade-1.1
+
+
+
+ Usando o svn
+
+ O svn é necessário para
+ se obter (check out) os
+ arquivos do doc/ a partir do
+ repositório Subversion. O svn pode
+ ser instalado com o &man.pkg.add.1; ou a partir da
+ coleção de Ports do &os;, executando:
+
+ &prompt.root; cd /usr/ports/devel/subversion
+&prompt.root; makeinstall clean
+
+ Para obter os arquivos com o código fonte completo do
+ web site do &os;, execute:
+
+ &prompt.root; svn checkout svn://svn.FreeBSD.org/doc/head/ /usr/build
+
+
+ Se o comando svn não estiver sendo
+ executado pelo usuário root,
+ certifique-se de que o diretório /usr/build possui as
+ permissões adequadas ao usuário utilizado. Se
+ não for possível alterar as permissões,
+ utilize um diretório diferente para armazenar os
+ arquivos do web site.
+
+
+ Quando o svn terminar, a versão
+ atual do website do &os; estará disponível em
+ /usr/build. Se vocé
+ utilizou um diretório alvo diferente, substitua o
+ /usr/build
+ apropriadamente ao longo do restante deste documento.
+
+ É isso! Agora você pode proceder com a
+ geração do
+ web site.
+
+
+
+
+ Construa as páginas web do início
+
+ Depois de ter completado os passos necessários
+ para obter os arquivos com o código fonte do website,
+ você estará pronto para iniciar a
+ compilação do web site. No nosso
+ exemplo, o diretório de compilação
+ é /usr/build
+ e todos os arquivos necessários
+ já estão disponíveis no mesmo.
+
+
+
+ Vá para o diretório de
+ compilação:
+
+&prompt.root; cd/usr/build
+
+
+
+ A compilação do web site
+ deve ser iniciada de dentro do diretório en_US.ISO8859-1/htdocs
+ executando o comando &man.make.1; all
+ , para criar as páginas web:
+
+&prompt.root; cd en_US.ISO8859-1/htdocs
+&prompt.root; makeall
+
+
+
+
+
+ Instalando as web pages em seu Web Server
+
+
+
+ Se você tiver saído do
+ diretório en_US.ISO8859-1/htdocs, volte
+ para dele.
+
+&prompt.root; cd/usr/build/en_US.ISO8859-1/htdocs
+
+
+
+ Execute o comando &man.make.1; install
+ , definindo a variável DESTDIR
+ para o nome do diretório no qual deseja
+ instalar os arquivos. Eles serão instalados no
+ $DESTDIR/data o qual
+ deve estar configurado para ser o diretório raiz do
+ seu servidor web.
+
+&prompt.root; envDESTDIR=/usr/local/wwwmakeinstall
+
+
+
+ Se você já instalou previamente
+ as páginas web dentro deste mesmo diretório o
+ processo de instalação não irá
+ remover nenhuma página web antiga ou desatualizada.
+ Por exemplo, se você compilar e instalar uma nova
+ cópia do web site todos os dias, o comando
+ abaixo irá procurar e remover todos os arquivos que
+ não tenham sido alterados nos últimos
+ três dias.
+
+&prompt.root; find/usr/local/www 3 | xargsrm
+
+
+
+
+
+ Variáveis de ambiente
+
+
+
+ ENGLISH_ONLY
+
+
+ Se esta variável estiver definida e não
+ for vazia, apenas a documentação em Inglês
+ será compilada e instalada. Todas as
+ traduções serão ignoradas.
+ Por exemplo:
+
+&prompt.root; makeENGLISH_ONLY=YESallinstall
+
+ Se você quiser desabilitar a variável
+ ENGLISH_ONLY e compilar todas as
+ páginas, incluindo traduções, basta
+ definir a variável ENGLISH_ONLY
+ para um valor vazio:
+
+&prompt.root; makeENGLISH_ONLY=""allinstallclean
+
+
+
+
+
+ WEB_ONLY
+
+
+ Se esta variável estiver definida e não
+ for vazia, apenas as páginas HTML do diretório
+ en_US.ISO8859-1/htdocs
+ serão compiladas e instaladas. Todos os demais
+ documentos do diretório en_US.ISO8859-1 (Handbook, FAQ,
+ Tutorais, etc) serão ignorados. Por exemplo:
+
+ &prompt.root; makeWEB_ONLY=YESallinstall
+
+
+
+
+
+ WEB_LANG
+
+
+ Se esta variável estiver definida, apenas as
+ páginas web no idioma especificado por ela
+ serão compiladas e instaladas dentro do
+ diretório
+ /usr/build.
+ Todos os demais idiomas serão ignorados. Por
+ exemplo:
+
+&prompt.root; make WEB_LANG="el_GR.ISO8859-7 es_ES.ISO8859-1 hu_HU.ISO8859-2 nl_NL.ISO8859-1" all install
+
+
+
+
+ NOPORTSCVS
+
+
+ Se esta variável estiver definida, o processo de
+ compilação não fará o check
+ out dos arquivos do ports do repositório cvs.
+ Ao invés disso, ele irá copiar os arquivos
+ a partir do /usr/ports
+ (ou do local definido na variável
+ PORTSBASE).
+
+
+
+
+ WEB_ONLY, WEB_LANG,
+ ENGLISH_ONLY e NOPORTSCVS
+ são variáveis do make.
+ Você pode definir estas variáveis no
+ /etc/make.conf,
+ no Makefile.inc, ou ainda como
+ variáveis de ambiente na linha de comando ou nos
+ arquivos de inicialização do seu
+ shell.
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/tools/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/tools/chapter.sgml
new file mode 100644
index 0000000000..3b43646fe5
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/tools/chapter.sgml
@@ -0,0 +1,330 @@
+
+
+
+ Ferramentas
+
+ O FDP utiliza diferentes ferramentas como auxílio no
+ gerenciamento da documentação do FreeBSD, e na
+ conversão para diferentes formatos, e assim por diante.
+ Você irá precisar utilizar estas ferramentas
+ se for trabalhar com a documentação do &os;.
+
+ Todas estas ferramentas estão disponíveis como
+ Ports e Packages do FreeBSD,
+ simplificando enormemente o seu trabalho para
+ instalá-las.
+
+ Você precisará instalar estas ferramentas antes
+ de trabalhar com qualquer exemplo dos próximos
+ capítulos. O uso real destas ferramentas será
+ abordado nos próximos capítulos.
+
+
+ Se possível use o
+ textproc/docproj
+
+ Você pode economizar bastante tempo se instalar o
+ porttextproc/docproj. Este é um
+ meta-port que por si só não
+ contém nenhum programa. Ao invés disto, ele
+ depende que já estejam instalados corretamente
+ vários outros ports. O processo de
+ instalação irá
+ baixar e instalar automaticamente todos os pacotes
+ listados como necessários neste capítulo.
+
+ Um dos pacotes que você pode precisar é o
+ conjunto de macros JadeTeX. No
+ entanto, esse conjunto de macros requer que o &tex; esteja
+ instalado. O &tex; é um pacote grande, e ele somente
+ será necessário se você quiser gerar
+ documentos nos formatos Postscript ou PDF.
+
+ Para economizar seu tempo e espaço em disco
+ você deve especificar se quer, ou não, a
+ instalação do JadeTeX
+ (e por consequência do &tex;) quando o
+ port for instalado. Conforme
+ necessário, faça:
+
+ &prompt.root; make JADETEX=yes install
+
+ ou
+
+ &prompt.root; make JADETEX=no install
+
+ Alternativamente você pode instalar o
+ textproc/docproj-jadetex ou o
+ textproc/docproj-nojadetex.
+ Estes ports secundários irão
+ definir a variável JADETEX para
+ você, consequentemente eles irão instalar o mesmo
+ conjunto de aplicativos na sua máquina. Observe que
+ você poderá produzir apenas documentos em HTML e
+ ASCII se você não instalar o
+ JadeTeX. Para produzir documentos
+ em PostScript e PDF você irá precisar do &tex;.
+
+
+
+
+ Ferramentas Obrigatórias
+
+
+ Software
+
+ Estes programas são necessários para
+ você trabalhar com a documentação do
+ FreeBSD, e permitirão a conversão
+ da mesma para os formatos HTML, texto puro e RTF. Eles
+ estão todos incluídos em
+ textproc/docproj.
+
+
+
+ Jade
+ (textproc/jade)
+
+
+ Uma implementação DSSSL. Utilizado
+ para a conversão de documentos escritos com
+ linguagem de marcas para outros formatos, incluindo
+ HTML e &tex;.
+
+
+
+
+ Tidy
+ (www/tidy)
+
+
+ Um HTML pretty printer
+ , utilizado para reformatar alguns dos
+ HTMLs gerados automaticamente ficando mais
+ fácil de entendê-los.
+
+
+
+
+ Links
+ (www/links)
+
+
+ Um navegador WWW em modo texto que também
+ converte arquivos HTML para texto puro.
+
+
+
+
+ peps
+ (graphics/peps)
+
+
+ Parte da documentação inclui imagens,
+ algumas delas estão armazenadas como arquivos EPS.
+ Estas imagens precisam ser convertidas para o formato
+ PNG antes de serem exibidas em um navegador
+ web.
+
+
+
+
+
+
+ Entidades e DTDs
+
+ Estes são os conjuntos de DTDs e de entidades
+ usados pelo FDP. Eles precisam estar instalados para que
+ você possa trabalhar com qualquer parte da
+ documentação.
+
+
+
+ HTML DTD
+ (textproc/html)
+
+
+ HTML é a linguagem de marcas escolhida para a
+ World Wide Web, e é usada no
+ web site do FreeBSD.
+
+
+
+
+ DocBook DTD
+ (textproc/docbook)
+
+
+
+ DocBook é uma linguagem de marcas projetada
+ para documentação técnica. Toda a
+ documentação do FreeBSD está
+ escrita em DocBook.
+
+
+
+
+ ISO 8879 entities
+ (textproc/iso8879)
+
+
+
+ 19 dos conjuntos de entidade de caracter ISO
+ 8879:1986 utilizados por muitos DTDs. Inclui
+ símbolos matemáticos nomeados,
+ caracteres do conjunto de caracter Latin
+ (acentos, diacríticos e assim por diante), e
+ símbolos gregos.
+
+
+
+
+
+
+ Stylesheets
+
+ As Stylesheets são usadas na
+ conversão e formatação de documentos
+ para serem apresentados na tela, impressos, e assim por
+ diante.
+
+
+
+ Modular DocBook Stylesheets
+ (textproc/dsssl-docbook-modular
+ )
+
+
+ As Modular DocBook Stylesheets
+ são usadas na conversão da
+ documentação escrita em DocBook para
+ outros formatos, tais como HTML ou RTF.
+
+
+
+
+
+
+
+ Ferramentas Opcionais
+
+ Você não precisa ter qualquer uma das
+ ferramentas a seguir instaladas. Entretanto, você
+ poderá achar mais fácil trabalhar com a
+ documentação se elas estiverem disponíveis,
+ elas também oferecem uma maior flexibilidade em
+ relação aos formatos nos quais os documentos podem
+ ser gerados.
+
+
+ Software
+
+
+
+ JadeTeX e
+ teTeX
+ (print/jadetex e
+ print/teTeX)
+
+
+ O Jade e o
+ teTeX são usados para
+ converter DocBook para os formatos DVI, Postscript, e
+ PDF. As macros do JadeTeX
+ são necessárias para estas
+ conversões.
+
+ Se você não pretende converter seus
+ documentos para um destes formatos (i.e., HTML, texto
+ puro, e RTF são o suficiente) então
+ não será preciso instalar o
+ JadeTeX e
+ teTeX. Isto pode resultar em
+ uma boa economia de tempo e espaço em disco,
+ já que o teTeX
+ possui tamanho de aproximadamente 30MB.
+
+
+ Se você decidir instalar o
+ JadeTeX e
+ teTeX então
+ será preciso configurar o
+ teTeX depois do
+ JadeTeX ter sido
+ instalado. O arquivo
+ print/jadetex/pkg-message
+ contém instruções detalhadas
+ sobre o que é preciso ser feito.
+
+
+
+
+
+ Emacs ou
+ XEmacs
+ (editors/emacs ou
+ editors/xemacs)
+
+
+ Ambos editores incluem um modo especial para a
+ edição de documentos com uma linguagem de
+ marcas que siga um SGML DTD. Esse modo inclui comandos
+ para reduzir o volume total de digitação a
+ ser feita, o que ajuda a reduzir a possibilidade de
+ erros.
+
+ Você não precisa utilizá-los,
+ qualquer editor pode ser usado para editar documentos
+ escritos com linguagem de marcas. Entretanto,
+ se optar por usá-los você poderá
+ constatar que eles tornam seu trabalho
+ mais eficiente.
+
+
+
+
+ Se alguém tiver sugestões sobre algum outro
+ software que seja útil para a
+ manipulação de documentos SGML, por favor
+ informe a &a.doceng;, desta forma ele poderá ser
+ adicionado a esta lista.
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/translations/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/translations/chapter.sgml
new file mode 100644
index 0000000000..d0a68a7347
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/translations/chapter.sgml
@@ -0,0 +1,557 @@
+
+
+
+ Traduções
+
+ Este é o FAQ para as pessoas que
+ traduzem a documentação do FreeBSD
+ (FAQ, &a.ptbr.p.handbook;, tutoriais,
+ páginas de manual e outros) para diferentes
+ línguas.
+
+ Ele é fortemente baseado na
+ tradução do FAQ do Projeto
+ Alemão de Documentação do FreeBSD, originalmente
+ escrito por Frank Gründer
+ elwood@mc5sys.in-berlin.de e traduzido novamente
+ para o inglês por Bernd Warken
+ bwarken@mayn.de.
+
+ Este FAQ é mantido pela
+ &a.doceng;.
+
+
+
+
+ Porque um FAQ?
+
+
+
+
+ Mais e mais pessoas estão se juntando à lista
+ de discussão FreeBSD-doc e estão se oferecendo
+ para traduzir a documentação do FreeBSD para
+ outras línguas. Este FAQ visa
+ responder as suas perguntas, de forma que eles possam
+ iniciar a tradução da documentação
+ o quanto antes.
+
+
+
+
+
+ O que significa i18n e l10n
+
+
+
+
+ i18n significa
+ internacionalização e
+ l10n significa
+ locallização. São
+ apenas abreviações.
+
+ i18n pode ser lido como
+ i seguido por 18 letras, seguidas por
+ n. Similarmente, l10n
+ é l seguido por 10 letras, seguidas
+ por n.
+
+
+
+
+
+ Existe uma lista de discussão para
+ tradutores?
+
+
+
+ Sim. Os diferentes grupos de tradução
+ possuem as suas próprias listas de discussão.
+ A
+ lista dos projetos de tradução possui
+ maiores informações sobre as listas de
+ discussão e sobre os web sites mantidos por
+ cada um dos projetos de tradução.
+
+
+
+
+
+ São necessários mais tradutores?
+
+
+
+ Sim. Quanto maior o número de pessoas trabalhando na
+ tradução, mais rapidamente ela será
+ finalizada, e mais rapidamente as mudanças na
+ documentação em Inglês serão
+ refletidas nos documentos traduzidos.
+
+ Você não precisa ser um tradutor
+ profissional para poder ajudar.
+
+
+
+
+
+ Quais idiomas eu preciso conhecer?
+
+
+
+ Idealmente, você deverá possuir bons
+ conhecimentos de Inglês escrito, e obviamente
+ necessitará ser fluente na língua para a qual
+ estiver traduzindo.
+
+ O conhecimento do idioma Inglês não
+ é estritamente necessário. Por exemplo,
+ você poderia fazer uma tradução do FAQ
+ para o idioma Húngaro a partir da versão
+ em Espanhol do documento.
+
+
+
+
+
+ Quais softwares eu preciso conhecer?
+
+
+
+ É fortemente recomendado que você
+ mantenha uma cópia local do repositório
+ Subversion do FreeBSD (ao menos da parte referente a
+ documentação). Isto pode ser feito
+ executando o comando:
+
+ &prompt.user; svn checkout svn://svn.FreeBSD.org/doc/head/ head
+
+
+ Você irá precisar ter o devel/subversion instalado.
+
+
+ Você deverá ter conhecimentos
+ básicos de svn. Ele
+ permitirá que você veja o que mudou entre as
+ diferentes versões dos arquivos que compõem a
+ documentação.
+
+ Por exemplo, para ver as diferenças entre as
+ revisões r33733 e
+ r33734 do
+ en_US.ISO8859-1/books/fdp-primer/book.sgml
+ , execute:
+
+ &prompt.user; svn diff -r33733:33734en_US.ISO8859-1/books/fdp-primer/book.sgml
+
+
+
+
+
+ Como eu faço para descobrir se já existem
+ outras pessoas traduzindo documentos para o meu
+ idioma?
+
+
+
+
+ A
+ página do Projeto de Tradução da
+ Documentação lista os trabalhos de
+ tradução que são conhecidos atualmente.
+ Se outros já estão trabalhando na
+ tradução da documentação para
+ o seu idioma, por favor, não duplique os
+ esforços. Ao invés disso, faça contato
+ com o grupo para ver como pode ajudá-los.
+
+ Se não existir nenhum projeto de
+ tradução para o seu idioma listado nesta
+ página, envie uma mensagem para &a.doc; para o
+ caso de alguém estar pensando em fazer a
+ tradução, mas ainda não tiver
+ anunciado nada.
+
+
+
+
+
+ Ninguém mais está traduzindo para o meu
+ idioma. O que eu faço?
+
+
+
+ Parabés, você acabou de
+ começar o FreeBSD
+ sua-língua-aqui Documentation
+ Translation Project. Bem vindo a bordo.
+
+ Primeiro, pense se você terá o tempo
+ necessário. Uma vez que você é a
+ única pessoa trabalhando no seu idioma no
+ momento, será sua a responsabilidade de publicar
+ o seu trabalho e coordenar qualquer voluntário que
+ queira ajudá-lo.
+
+ Escreva um email para a lista de discussão do
+ Projeto de Documentação, anunciando que
+ você irá traduzir a
+ documentação, assim a página do Projeto
+ de Traduções de Documentação
+ poderá ser atualizada.
+
+ Se já existir alguém em seu país
+ provendo o espelhamento de serviços do FreeBSD,
+ você deve contacta-lo e perguntar se você pode
+ ter algum espaço web para seu projeto, e se
+ possível um endereço de email ou mesmo um
+ serviço de lista de discussão.
+
+ Então escolha um documento e comece a traduzir.
+ É melhor começar com algo razoavelmente
+ pequeno como FAQ ou um dos
+ tutoriais.
+
+
+
+
+
+ Eu já tenho alguns documentos traduzidos, para
+ onde eu devo enviá-los?
+
+
+
+ Isso depende. Se você já está
+ trabalhando com uma equipe de tradução
+ (tal como a equipe japonesa, ou a equipe alemã)
+ então ela terá seus próprios
+ procedimentos para manipular a documentação
+ submetida, e estes serão descritos em seus
+ web sites.
+
+ Se você for a única pessoa trabalhando em
+ um determinado idioma (ou se você é o
+ responsável pelo projeto de tradução e
+ quer submeter suas mudanças de volta para o projeto
+ FreeBSD) então você deve enviar sua
+ tradução ao Projeto FreBSD (veja pergunta
+ seguinte).
+
+
+
+
+
+ Eu sou a única pessoa trabalhando na
+ tradução para este idioma, como faço
+ para enviar meus documentos?
+
+ ou
+
+ Nós somos uma equipe de tradução, e
+ queremos submeter os documentos que nossos membros traduziram
+ para nós.
+
+
+
+ Primeiramente certifique-se que sua
+ tradução está organizada corretamente.
+ Isto significa que ela deve se encaixar na árvore de
+ diretórios corrente e ser processada de maneira
+ correta.
+
+ Atualmente a documentação do FreeBSD
+ é armazenada em um diretório de nível
+ superior chamado head/. Os
+ diretórios abaixo deste são nomeados de acordo
+ com o código do idioma em que eles estão
+ escritos, definidos na ISO639
+ (/usr/share/misc/iso639 em uma
+ versão do FreeBSD mais nova que 20 de janeiro de
+ 1999).
+
+ Se seu idioma puder ser codificado de maneiras
+ diferentes (por exemplo, Chinês) então
+ deverão existir outros diretórios abaixo deste,
+ um para cada formato que você tenha forncecido.
+
+ Finalmente você deve ter diretórios para
+ cada original.
+
+ Por exemplo, em uma hipotética
+ tradução para o Sueco ficaria assim:
+
+
+head/
+ sv_SE.ISO8859-1/
+ Makefile
+ htdocs/
+ docproj
+ books/
+ faq/
+ Makefile
+ book.sgml
+
+ sv_SE.ISO8859-1 é o nome da
+ tradução, na forma
+ lang.encoding.
+ Repare nos dois Makefiles que serão usados para
+ construir a documentação.
+
+ Use &man.tar.1; e &man.gzip.1; para compactar sua
+ documentação, e envie para o projeto.
+
+&prompt.user; cd doc
+&prompt.user; tar cf swedish-docs.tar sv_SE.ISO8859-1
+&prompt.user; gzip -9 swedish-docs.tar
+
+ Coloque o arquivo swedish-docs.tar.gz
+ em algum lugar. Se você não tiver acesso ao seu
+ próprio espaço web (talvez seu ISP
+ não disponibilize um), então você pode
+ enviar um email para &a.doceng;, e combinar de enviar os
+ arquivos por email quando for conveniente.
+
+ De qualquer forma, você deve usar o
+ &man.send-pr.1; para enviar um relatório indicando
+ que você submeteu a documentação.
+ Seria muito útil se você conseguisse outras
+ pessoas para revisar a sua tradução antes de
+ submetê-la, uma vez que é improvável que
+ a pessoa que irá disponibilizá-la no
+ repositório seja fluente no seu idoma.
+
+ Alguém (provavelmente o gerente do projeto de
+ documentação, atualmente &a.doceng;)
+ irá examinar os seus arquivos e irá
+ confirmar se eles compilam sem erros. Em especial, os
+ seguintes items serão verificados:
+
+
+
+ Todos os seus arquivos usam strings RCS
+ (tais como "ID")?
+
+
+
+ O make all no diretório
+ sv_SE.ISO8859-1 funciona
+ corretamente?
+
+
+
+ O make install
+ funciona corretamente?
+
+
+
+ Se houver algum problema, a pessoa que estiver
+ examinando a sua submissão irá entrar em
+ contato para que você faça as
+ correções.
+
+ Se não exitir nenhum problema, os seus documentos
+ traduzidos serão disponibilizados no repositório
+ o quanto antes.
+
+
+
+
+
+ Posso incluir uma língua ou um texto específico
+ do país em minha tradução?
+
+
+
+ Nós preferimos que você não
+ faça isso.
+
+ Por exemplo, suponha que você esteja
+ traduzindo o &a.ptbr.p.handbook; para o Coreano e queira
+ incluir uma seção sobre varejistas na
+ Coréia em seu &a.ptbr.p.handbook;.
+
+ Não há razão pela qual esta
+ informação não deva estar nas
+ versões em Inglês (ou Alemão, ou
+ Espanhol, ou Japonâs, ou …). É
+ possível que uma pessoa que fale Inglês na
+ Coréia possa tentar obter uma cópia do
+ FreeBSD enquanto esteja ali. Isso também ajuda a
+ aumentar a presença perceptível do FreeBSD
+ ao redor do mundo, o que não é uma coisa
+ ruim.
+
+ Se você tem uma informação
+ específica do seu país, por favor, submeta ela para
+ alteração no &a.ptbr.p.handbook; em
+ Inglês (usando &man.send-pr.1;) e depois traduza
+ novamente para sua língua no &a.ptbr.p.handbook;
+ traduzido.
+
+ Obrigado.
+
+
+
+
+
+ Como os caracteres específicos do idioma
+ podem ser incluídos?
+
+
+
+ Caracteres não-ASCII devem ser
+ incluídos na documentação usando
+ entidades SGML.
+
+ Resumidamente, eles são um ``e'' comercial
+ (&), o nome da entidade e um
+ ponto-e-vírgula (;).
+
+ Os nomes de entidades estão definidos no ISO8879,
+ que está na árvore do ports como textproc/iso8879.
+
+ Alguns exemplos Incluem
+
+
+ Entidade
+
+ Aparência
+
+ Descrição
+
+
+ é
+ é
+ e minúsculo com acento
+ agudo
+
+
+
+ É
+ É
+ E maiúsculo com acento
+ agudo
+
+
+
+ ü
+ ü
+ u minúsculo com trema
+
+
+
+ Depois que você instalar o pacote iso8879,
+ os arquivos em
+ /usr/local/share/sgml/iso8879
+ conterão a lista completa.
+
+
+
+
+
+ Dirigindo-se ao leitor
+
+
+
+ Nos documentos em Inglês, o leitor é
+ tratado por você, não há
+ distinção entre formal/informal como existe em
+ alguns idiomas.
+
+ Se você estiver traduzindo para um idioma que
+ tenha esta distinção, use qualquer forma que
+ normalmente é usada em outras
+ documentações técnicas. Na
+ dúvida, use a forma mais polida.
+
+
+
+
+
+ Eu preciso colocar alguma informação
+ adicional nas minhas traduções?
+
+
+
+ Sim.
+
+ O cabeçalho da versão em Inglês
+ de cada documento será parecido com o texto exibido
+ abaixo:
+
+ <!--
+ The FreeBSD Documentation Project
+
+ $FreeBSD: head/en_US.ISO8859-1/books/faq/book.sgml 38674 2012-04-14 13:52:52Z $
+-->
+
+ A forma exata pode mudar, mas ela sempre
+ incluirá a linha $FreeBSD$ e a frase
+ The FreeBSD Documentation Project. Note
+ que o $FreeBSD é inserido pelo svn, portanto
+ ele deve estar vazio (apenas
+ $FreeBSD$) para novos
+ documentos.
+
+ O seu documento traduzido deve incluir sua
+ própria linha $FreeBSD$, e você deve mudar
+ a linha FreeBSD Documentation Project para
+ The FreeBSD language
+ Documentation Project.
+
+ Você deve ainda adicionar uma terceira linha que
+ indicará qual revisão do texto em inglês
+ o texto é baseado.
+
+ Assim, a versão em Espanhol deste arquivo pode
+ começar com:
+
+ <!--
+ The FreeBSD Spanish Documentation Project
+ $FreeBSD: head/es_ES.ISO8859-1/books/faq/book.sgml 38826 2012-05-17 19:12:14Z hrs $
+ Original revision: r38674
+ -->
+
+
+
+
diff --git a/pt_BR.ISO8859-1/books/fdp-primer/writing-style/chapter.sgml b/pt_BR.ISO8859-1/books/fdp-primer/writing-style/chapter.sgml
new file mode 100755
index 0000000000..83bdf4395e
--- /dev/null
+++ b/pt_BR.ISO8859-1/books/fdp-primer/writing-style/chapter.sgml
@@ -0,0 +1,540 @@
+
+
+
+ Estilo de Escrita
+
+ A fim de promover a consistência entre os
+ inúmeros autores da documentação do
+ FreeBSD, foram criadas algumas diretrizes para que os
+ autores sigam.
+
+
+
+ Use a Grafia Inglesa Americana
+
+
+ Existem diversas variantes do inglês, com
+ grafias diferentes para a mesma palavra. Onde as
+ grafias diferem, use a variante inglesa americana.
+ Por exemplo:
+ color, não colour,
+ rationalize, não
+ rationalise, e assim por diante.
+
+
+ O uso do Inglês Britânico pode ser aceito
+ para a contribuição de artigos, contudo a
+ ortografia deverá ser consistente ao longo de todo o
+ documento. Os outros documentos, tais como livros, web sites,
+ páginas de manual, etc. deverão utilizar o
+ Inglês Americano.
+
+
+
+
+
+ Não use contrações
+
+
+ Não use contrações. Soletre
+ sempre a frase por completo. A frase
+ Don't use contractions
+ seria errada.
+
+ Evite fazer uso das contrações para
+ obter um tom mais formal, será mais preciso, e
+ ligeiramente mais fácil para os tradutores.
+
+
+
+
+ Use a vírgula de série
+
+
+ Em uma lista de artigos dentro de um
+ parágrafo, separe cada artigo do outro com uma
+ vírgula. Separe o último artigo do outro
+ com uma vírgula e a palavra e.
+
+
+ Por o exemplo, observe o seguinte:
+
+
+ Esta é uma lista de um, dois e três
+ artigos.
+
+
+ Isto é uma lista de três artigos,
+ um, dois, e
+ três, ou de uma lista de dois
+ artigos, um e dois e
+ três?
+
+ É melhor ser explícito e incluir uma
+ vírgula de série:
+
+
+ Esta é uma lista de um, dois, e três
+ artigos.
+
+
+
+
+
+ Evite frases redundantes
+
+
+ Tente não usar frases redundantes. No detalhe,
+ o comando, o arquivo, e
+ o comando man são provavelmente
+ redundantes.
+
+ Estes dois exemplos mostram isto para comandos. O
+ segundo exemplo é preferido.
+
+
+ Use o comando cvsup para
+ atualizar seus fontes.
+
+
+
+ Use o cvsup para atualizar seus
+ fontes.
+
+
+ Estes dois exemplos mostram isto para nomes de
+ arquivo. O segundo exemplo é preferido.
+
+
+ … no arquivo
+ /etc/rc.local…
+
+
+
+ … no
+ /etc/rc.local…
+
+
+ Estes dois exemplos mostram isto para
+ referências aos manuais. O segundo exemplo
+ é preferido (o segundo exemplo usa
+ citerefentry).
+
+
+ Veja o man csh para maiores
+ informações
+
+
+
+ veja o &man.csh.1;
+
+
+
+
+
+ Dois espaços no final das
+ sentenças.
+
+
+ Use sempre dois espaços no fim das
+ sentenças, isto melhora a legibilidade, e
+ facilita o uso de ferramentas tais como o
+ Emacs.
+
+ Lembre-se que uma letra em caixa alta depois de um
+ período, nem sempre denota uma sentença
+ nova, especialmente na grafia de nomes. Jordan K.
+ Hubbard é um bom exemplo; tem um
+ H em caixa alta depois de um
+ período e um espaço, e não há
+ certamente uma sentença nova lá.
+
+
+
+
+ Para maiores informações sobre estilo de
+ escrita, consulte
+ Elementos de Estilo, por William Strunk.
+
+
+
+ Guia de Estilo
+
+ Para manter o código fonte da
+ documentação consistente quando muitas pessoas
+ diferentes o estão editando, por favor siga estas
+ convenções de estilo.
+
+
+ Caixa de Letra (Maiúscula/Minúscula)
+
+
+ As tags devem ser utilizadas em
+ caixa baixa, <para>,
+ não
+ <PARA>.
+
+ O texto que aparece em contextos do SGML é
+ escrito geralmente em caixa alta,
+ <!ENTITY…>, e
+ <!DOCTYPE…>,
+ não
+ <!entity…> e
+ <!doctype…>.
+
+
+
+ Acrônimos
+
+ Um acrônimo normalmente deve ser soletrado na primeira
+ vez que ele aparecer em um livro, como por exemplo:
+ "Network Time Protocol (NTP)". Depois que um acrônimo for
+ definido, você deveria passar a utilizar apenas ele
+ (e não o termo completo, a não ser que isso
+ faça mais sentido contextualmente). Normalmente um
+ acrônimo é definido uma única vez por
+ livro. Mas se você preferir, você também pode
+ definí-lo quando ele aparecer pela primeira vez em
+ cada capítulo.
+
+ Nas três primeiras vezes que um acrônimo for
+ utilizado ele deve ser destacado com a tag
+ <acronym> utilizando o atributo role
+ setado com o termo completo como seu valor.
+ Isto irá permitir que o link para o
+ glossário seja criado, e habilitará um
+ mouseover que quando
+ renderizado irá exibir o termo completo.
+
+
+
+ Identação
+
+ Cada arquivo começa com a identação
+ ajustada na coluna 0, independentemente
+ do nível de identação do arquivo que
+ pode vir a incluí-lo.
+
+ As tags de abertura aumentam o nível de
+ identação em 2 espaços, as tags de
+ fechamento diminuem o nível de
+ identação em 2 espaços. Blocos de
+ 8 espaços no começo de uma linha devem ser
+ subistituidos por um Tab. Não use espaços
+ na frente dos Tabs, e não adicione espaços
+ em branco no final de uma linha. O conteúdo dentro
+ de um elemento deve ser identado por dois espaços
+ caso ele ocupe mais de uma linha.
+
+ Por exemplo, o código para esta
+ seção seria algo como:
+
+
+ ...
+
+
+ ...
+
+
+ Indentation
+
+ Each file starts with indentation set at column 0,
+ regardless of the indentation level of the file
+ which might contain this one.
+ ...
+
+
+]]>
+
+ Se você usar o Emacs ou
+ XEmacs para editar os arquivos
+ o sgml-mode será
+ carregado automaticamente, e as variáveis locais
+ do Emacs ao final de cada arquivo devem reforçar
+ estes estilos.
+
+ Os usuários do Vim
+ podem querer configurar o seu editor da seguinte
+ forma:
+
+ augroup sgmledit
+ autocmd FileType sgml set formatoptions=cq2l " Special formatting options
+ autocmd FileType sgml set textwidth=70 " Wrap lines at 70 spaces
+ autocmd FileType sgml set shiftwidth=2 " Automatically indent
+ autocmd FileType sgml set softtabstop=2 " Tab key indents 2 spaces
+ autocmd FileType sgml set tabstop=8 " Replace 8 spaces with a tab
+ autocmd FileType sgml set autoindent " Automatic indentation
+augroup END
+
+
+
+ Estilo de Tags
+
+
+ Espaçamento de Tags
+
+ Tags que começam na mesma
+ identação que um Tag precedente devem ser
+ separados por uma linha em branco, e aqueles que
+ não estão na mesma identação
+ que um Tag precedente não, observe:
+
+
+
+
+ NIS
+
+ October 1999
+
+
+ ...
+ ...
+ ...
+
+
+
+
+ ...
+
+ ...
+
+
+
+ ...
+
+ ...
+
+]]>
+
+
+
+
+ Separando Tags
+
+ Tags tais como itemizedlist que
+ terão sempre algum Tag adicional dentro dele, e que
+ não fazem exame dos dados eles mesmos,
+ estarão sempre sozinhos em uma linha.
+
+ Tags tais como para e
+ term não necessitam outros Tags
+ para conter caracteres normais, e o seu
+ conteúdo começa imediatamente depois do
+ Tag, na mesma linha.
+
+ O mesmo se aplica quando estes dois tipos de Tag se
+ fecham.
+
+ Isto conduz a um problema óbvio ao misturar
+ estes Tags.
+
+ Quando um Tag de abertura que não pode conter
+ caracteres normais é utilizado logo
+ após um Tag do tipo que requer outros Tags dentro
+ dele para conter caracteres normais, eles devem
+ estar em linhas separadas e o segundo Tag deve ser
+ corretamente identado.
+
+ Quando um Tag que possa conter caracteres
+ normais se fecha imediatamente depois que um Tag que
+ não pode conter caracteres normais
+ se fecha, eles podem coexistir na mesma linha.
+
+
+
+
+ Mudanças nos espaços em branco.
+
+ Ao enviar mudanças, não envie
+ mudanças de conteúdo ao mesmo tempo que
+ mudanças no formato.
+
+ Desta forma as equipes que convertem o manual para
+ outras línguas podem ver rapidamente o que de fato
+ mudou no conteúdo com o seu envio, sem ter que se
+ decidir se uma linha mudou por causa do conteúdo,
+ ou apenas porque foi reformatada.
+
+ Por exemplo, se você adicionar duas
+ sentenças a um parágrafo, de forma que o
+ comprimento das linhas no mesmo agora excedem 80 colunas,
+ envie sua mudança sem corrigir o comprimento da
+ linha. Ajuste então a quebra de linha e envie uma
+ segunda mudança. Na mensagem de
+ commit da segunda mudança,
+ deixe claro que se trata apenas de um ajuste de
+ formatação, e que a equipe da
+ tradução pode ignorá-la.
+
+
+
+ Nonbreaking space
+
+
+ Evite as quebras de linha nos locais onde elas ficarem
+ feias ou onde dificultarem a compreensão de uma
+ sentença. As quebras de linha dependem da largura
+ do meio de saída escolhido. Em particular,
+ visualizar um documento em HTML com um navegador em modo
+ texto pode conduzir a parágrafos mal formatados como o
+ exemplo a seguir:
+
+
+ Data capacity ranges from 40 MB to 15
+ GB. Hardware compression …
+
+ A entidade geral proibe a
+ quebra de linha entre partes que devem permanecer juntas.
+ Utilize nonbreaking spaces
+ nos seguintes lugares:
+
+
+
+ Entre números e suas unidades:
+
+
+
+
+
+ Entre os nomes dos programas e os seus
+ números de versão:
+
+
+
+
+ Entre nomes compostos (utilize com cuidado quando
+ estiver lidando com nomes com mais de 3 ou 4 palavras,
+ como por exemplo, The FreeBSD Brazilian
+ Portuguese Documentation Project):
+
+
+
+
+
+
+
+ Lista de Palavras
+
+ O que se segue é uma pequena lista das palavras
+ com a grafia da maneira que deve ser usada no projeto da
+ documentação do FreeBSD. Se a palavra que
+ você está procurando não estiver nesta
+ lista, por favor consulte a
+
+ lista de palavras da O'Reilly.
+
+
+
+ 2.2.X
+
+
+
+ 4.X-STABLE
+
+
+
+ CD-ROM
+
+
+
+ DoS (Denial of Service)
+
+
+
+ Ports Collection
+
+
+
+ IPsec
+
+
+
+ Internet
+
+
+
+ MHz
+
+
+
+ Soft Updates
+
+
+
+ Unix
+
+
+
+ disk label
+
+
+
+ email
+
+
+
+ file system
+
+
+
+ manual page
+
+
+
+ mail server
+
+
+
+ name server
+
+
+
+ null-modem
+
+
+
+ web server
+
+
+
+
+
--
cgit v1.2.3