|
| 1 | +# Documentação Oficial do Perl o6 |
| 2 | + |
| 3 | +[](https://travis-ci.org/perl6/doc) [](https://opensource.org/licenses/Artistic-2.0) |
| 4 | + |
| 5 | +[](https://app.shippable.com/github/perl6/doc) |
| 6 | + |
| 7 | +Uma versão HTML dessa documentação disponível em [https://docs.perl6.org/](https://docs.perl6.org/). |
| 8 | +Que é a versão recomendada. |
| 9 | + |
| 10 | +Também disponível uma ferramenta de linha de comando: "p6doc". |
| 11 | + |
| 12 | +(Se está acessando pelo GitHub, a maioria dos documentos não serão exibidos corretamente, pois estão escritos em Perl 6 Pod |
| 13 | +mas o GitHub assume que são Perl 5 Pod.) |
| 14 | + |
| 15 | +## README em outras línguas |
| 16 | + |
| 17 | +* [README em alemão](README.de.md) |
| 18 | +* [README em chinês](README.zh.md) |
| 19 | +* [README em italiano](README.it.md) |
| 20 | +* [README em inglês](README.md) |
| 21 | +* [README em francês](README.fr.md) |
| 22 | + |
| 23 | +## Instalar p6doc |
| 24 | + |
| 25 | +Este módulo está disponivel no ecosistema de módulos do Perl 6. Use: |
| 26 | + |
| 27 | + $ zef install p6doc |
| 28 | + |
| 29 | +para instalar os binários e adicionar ao path. |
| 30 | + |
| 31 | +## Usar p6doc |
| 32 | + |
| 33 | +Com o `perl6` (Rakudo) no `PATH`, execute |
| 34 | + |
| 35 | + $ ./bin/p6doc Str |
| 36 | + |
| 37 | +para ver a documentacão da clase `Str`, ou |
| 38 | + |
| 39 | + $ ./bin/p6doc Str.split |
| 40 | + |
| 41 | +para ver a documentacão do método `split` da clase `Str`. Pode |
| 42 | +omitir `./bin` se o `p6doc` foi instalado com o `zef`. |
| 43 | +Também pode executar |
| 44 | + |
| 45 | + $ p6doc -f slurp |
| 46 | + |
| 47 | +para pesquisar a documentacão padrão de subrotinas. Dependendo da velocidade |
| 48 | +do disco rígido e da versão do Rakudo, é possivel que demore minutos. |
| 49 | + |
| 50 | +------- |
| 51 | + |
| 52 | +## Gerando a documentacão HTML |
| 53 | + |
| 54 | +Instale as dependências executando o siguinte no directório onde estão as fontes: |
| 55 | + |
| 56 | + $ zef --deps-only install . |
| 57 | + |
| 58 | +[`rakudobrew`](https://github.com/tadzik/rakudobrew), precisa que seja executado tabém: |
| 59 | + |
| 60 | + $ rakudobrew rehash |
| 61 | + |
| 62 | +para atualizar os links de compatibilidade de executáveis. |
| 63 | + |
| 64 | +Além das dependências de Perl 6, precisa do `graphviz` instalado. No Debian |
| 65 | +instale usando: |
| 66 | + |
| 67 | + $ sudo apt-get install graphviz |
| 68 | + |
| 69 | +Para suporte ao destaque de código, precisa também do [nodejs](https://nodejs.org) instalado e disponível no path. |
| 70 | +E também das suas depedências, incluindo `g++`. |
| 71 | + |
| 72 | +Para gerar as páginas web da documentacão com destaque de código, executa: |
| 73 | + |
| 74 | + $ make html |
| 75 | + |
| 76 | +Para gerá-las sem destaque de código, use: |
| 77 | + |
| 78 | + $ make html-nohighlight |
| 79 | + |
| 80 | +Após estarem criadas, pode ver localmente no teu computador com o incluso `app.pl`, executando: |
| 81 | + |
| 82 | + $ make run |
| 83 | + |
| 84 | +Feito o anterior, a documentacão estará dsiponível em [http://localhost:3000](http://localhost:3000). |
| 85 | + |
| 86 | +`app.pl` depende do [Mojolicious](https://metacpan.org/pod/Mojolicious) |
| 87 | +instalado. Tamabém é necesário o [nodejs](https://nodejs.org) para que funcione o destaque de código. |
| 88 | +E também outros módulos Perl 5, instalados executando: |
| 89 | + |
| 90 | + $ cpanm --installdeps . |
| 91 | + |
| 92 | +--------- |
| 93 | + |
| 94 | +## Precisamos de Ajuda! |
| 95 | + |
| 96 | +Perl 6 não é uma linguagem de programação pequena, e documentá-la requer bastante esforço. Qualquier ajuda é bem-vinda. |
| 97 | + |
| 98 | +Algumas maneira de nos ajudar: |
| 99 | + |
| 100 | + * Adicionando documentacão de classes, roles, métodos e operadores. |
| 101 | + * Adicionando exemplos de uso à documentacão existente. |
| 102 | + * Revisando e corrigindo. |
| 103 | + * Abrindo issues no GitHub se acha que falta documentacão. |
| 104 | + * Fazendo `git grep TODO` neste repositório, e substituindo os items TODO por documentação. |
| 105 | + |
| 106 | +[Esta página](https://github.com/perl6/doc/issues) tem uma lista de issues atuais e partes da documentação que faltam. |
| 107 | +[CONTRIBUTING](CONTRIBUTING.md) explica brevemente como começar a contribuir. |
| 108 | + |
| 109 | +-------- |
| 110 | +## Algumas questões: |
| 111 | + |
| 112 | +**P:** Por que não estão incluindo a documentação no código fonte do CORE?<br> |
| 113 | +**R:** Várias razões: |
| 114 | + |
| 115 | + 1. Esta documentação pretende ser universal com respeito a uma versão dada de uma especificacão, e não necesariamente estar |
| 116 | + ligada a uma implementação específica de Perl 6. |
| 117 | + |
| 118 | + 2. O tratamento das implementações ao Pod 6 é inconsistente; assim se evita impactos potenciais durante a execução. |
| 119 | + |
| 120 | + 3. Um repo separado na conta do Perl 6 de GitHub convida mais contribuidores e editores a participar. |
| 121 | + |
| 122 | +**P:** Eu deveria incluir os métodos das superclases ou dos roles?<br> |
| 123 | +**A:** Não. A versão HTML já os inclui, e o `p6doc` também. |
| 124 | + |
| 125 | +-------- |
| 126 | + |
| 127 | +## Objetivo |
| 128 | + |
| 129 | +> Quero que p6doc e docs.perl6.org se tornem o recurso número 1 para consultar quando quiser conhecer qualquer |
| 130 | +> característica do Perl 6, seja a linguagem ou seus tipos e rotinas. Quero que seja útil para todo programador de Perl 6. |
| 131 | +> |
| 132 | +> -- moritz |
| 133 | +
|
| 134 | +-------- |
| 135 | + |
| 136 | +# ENV VARS |
| 137 | + |
| 138 | +- `P6_DOC_TEST_VERBOSE` como `true` para mostrar mensajens durante a execução do conjunto de testes. Prático para depurar testes |
| 139 | +que falham. |
| 140 | +- `P6_DOC_TEST_FUDGE` muda testes `skip-test` para TODO no teste `xt/examples-compilation.t`. |
| 141 | + |
| 142 | +# LICENÇA |
| 143 | + |
| 144 | +O código neste repositório está disponível sob a Artistic License 2.0 como publicado pela Perl Foundation. O arquivo |
| 145 | +[LICENSE](LICENSE) contém o texto completo. |
| 146 | + |
| 147 | +Este repositório também contém código de terceiros que podem ter outra licença, em cujo caso indicam o copyright e licença no |
| 148 | +topo do próprio arquivo. Atualmente incluem: |
| 149 | + |
| 150 | +* jQuery e jQuery UI: Copyright 2015 jQuery Foundation e outros contribuidores; |
| 151 | + [Licença MIT](http://creativecommons.org/licenses/MIT) |
| 152 | +* [plugin jQuery Cookie](https://github.com/js-cookie/js-cookie): |
| 153 | + Copyright 2006, 2015 Klaus Hartl & Fagner Brack; |
| 154 | + [Licença MIT](http://creativecommons.org/licenses/MIT) |
| 155 | +* Exemplos do StackOverflow [Licença MIT](http://creativecommons.org/licenses/MIT); ([ref #1](http://stackoverflow.com/a/43669837/215487) for [1f7cc4e](https://github.com/perl6/doc/commit/1f7cc4efa0da38b5a9bf544c9b13cc335f87f7f6)) |
| 156 | +* Table sorter plugin from https://github.com/christianbach/tablesorter ; |
| 157 | + [Licença MIT](http://creativecommons.org/licenses/MIT) |
0 commit comments