Pt:Tutorial:Copiar conteúdo do fórum para o wiki

From OpenStreetMap Wiki
Jump to navigation Jump to search

Discussões sobre este artigo (dúvidas e sugestões) podem ser feitas de forma mais flexível neste tópico no fórum.

A principal utilidade destas instruções é migrar um tutorial do fórum para o wiki. Alguns colaboradores, por praticidade e familiaridade com a ferramenta, podem preferir usar o fórum para "lançar" com agilidade seus tutoriais.

Sempre pergunte para o autor do tópico no fórum se você pode fazer esta cópia e com que licença as imagens devem ser disponibilizadas.

Dica: se você não entende muito de informática, uma forma talvez mais simples do que a descrita a seguir é clicar em Quote na mensagem do fórum, copiar o texto (Ctrl+C), daí abrir o artigo lá no wiki, colar (Ctrl+V) e adaptar as ocorrências dos códigos [b], [i], [u], [url], [code] e [quote]. É relativamente simples (e um pouquinho só trabalhoso) buscar por esses pedaços de texto num editor de texto e substituir pela sintaxe do wiki. Quanto às imagens, você teria que enviar uma por uma, mas pelo menos assim você já verifica se a imagem vem de uma fonte externa com licença restrita.

Requisitos: Ubuntu, Firefox, Perl, Bash

Introdução: o porquê deste tutorial

Este tutorial não é destinado a todos que queiram um Control+C Control+V no sentido Fórum → Wiki. É para quem quer mover/copiar para o wiki um post longo e cheio de imagens (principalmente), seguindo as boas práticas de upload num menor espaço de tempo.

Experimente simular a migração de "Como criar restrições de conversão com o iD" usando um método inteiramente manual e usando o método deste tutorial. Provavelmente acontecerá de você ainda achar que teve ou teria muito trabalho com o segundo método; nisso influi a primeira execução inclui a etapa #Instalar as dependências.

Serão apenas 6 comandos muito simples no fluxo de trabalho normal:

bash osm-bb2wiki.sh PROJETO
bash osm-bb2wiki.sh PROJETO export
bash osm-bb2wiki.sh PROJETO download
bash osm-bb2wiki.sh PROJETO write
bash osm-bb2wiki.sh PROJETO rename
bash osm-bb2wiki.sh PROJETO pages

Numa próxima versão de osm-bb2wiki.sh, possivelmente apenas dois:

bash osm-bb2wiki.sh PROJETO begin
bash osm-bb2wiki.sh PROJETO end

Vantagens

Nenhuma edição de código, a não ser a edição do arquivo PROJETO-files.txt.

Nenhum download manual.

Nenhuma renomeação manual; só dentro da edição de PROJETO-files.txt.

O wizard de upload das imagens fica de preenchimento mais simplificado possível. Toda a informação a respeito das imagens numa única tela: o editor de texto com PROJETO-files.txt aberto. Tornando mais fácil padronizar a informação de todas as imagens que pertencem a um único tutorial. Todo o código wiki de arquivos hospedados no wiki apenas editando PROJETO-files.txt.

O trabalho fica sendo semi-automático. Além dos comandos acima (que poderão tornar-se apenas um begin e um end), só um monte de Control+C Control+V "burros" faz-se necessário entre PROJETO-pages.txt e as páginas dos arquivos hospedados no wiki, além do Control+C Control+V "quase completamente burro" entre PROJETO-wiki-final.txt e a página wiki do tutorial. Mais automatizado do que isso, só se o script fosse um software com interface gráfica e ainda fosse conectado como bot, ao wiki.

No caso da migração de um tutorial menor e sem imagens, tal como o "Mapeando características de vias com o Osmtracker", podemos chegar a precisar somente do seguinte:

  1. bash osm-bb2wiki.sh PROJETO begin
  2. bash osm-bb2wiki.sh PROJETO end
  3. Control+C Control+V "quase completamente ou até completamente burro" de PROJETO-wiki-final.sh para o código da nova página no wiki

Instalar as dependências

Instalar o HTML::WikiConverter, que converterá HTML em código MediaWiki:

sudo apt-get install libhtml-wikiconverter-mediawiki-perl

Instalar o script que simplificará os comandos e auxiliará no movimento das imagens:

  1. Copiar o conteúdo de osm-bb2wiki.sh dentro de arquivo de mesmo nome, no diretório de trabalho
  2. Configurar as permissões de execução:
    chmod +x osm-bb2wiki.sh
    

Dica de ajuda no script

O conversor não será usado diretamente e o script tem um lembrete de comandos:

$ bash osm-bb2wiki.sh help
 bash osm-bb2wiki.sh PROJETO
 bash osm-bb2wiki.sh PROJETO export
 bash osm-bb2wiki.sh PROJETO list
 bash osm-bb2wiki.sh PROJETO download
 bash osm-bb2wiki.sh PROJETO get 5
 bash osm-bb2wiki.sh PROJETO write
 bash osm-bb2wiki.sh PROJETO rename
 bash osm-bb2wiki.sh PROJETO pages

A seguir, adotaremos Post como nome de PROJETO.

Copiar o texto formatado

A postagem de fórum é escrita em BBCode e renderizada em HTML. Se você não é o autor da postagem, somente terá acesso ao HTML.

  1. Selecione o corpo da postagem que deseja copiar
  2. Clique o botão direito do mouse
  3. Opte por "Código-fonte da seleção"
  4. Na janela que abre, dê duplo clique na para selecionar a linha de código HTML por completa
  5. Copie e cole tudo num arquivo Post.txt
  6. No diretório de trabalho, execute a conversão:
    bash osm-bb2wiki.sh ConvID
    
  7. Se não havia a inclusão de imagens, o conteúdo de Post-wiki.txt está pronto para ser usado no wiki

Preparar movimentação de imagens

Se havia imagens na postagem, elas precisarão ser hospedadas neste wiki. Isso implica a aceitação, para cada imagem, de alguma das licenças disponíveis ou do domínio público. Este wiki está configurado para não trabalhar com arquivos que estão em outros sites.

Se você usa o comando de exportação...

bash osm-bb2wiki.sh Post export

O script gera um arquivo Post-files.txt de gerenciamento de dados de imagens, nesse formato:

kcYPiud.png|NOME|DPT|DEN|LICENSE
uCpf03e.png|NOME|DPT|DEN|LICENSE
ea0ZjI0.png|NOME|DPT|DEN|LICENSE
WH3yhSi.png|NOME|DPT|DEN|LICENSE
huFP7rh.png|NOME|DPT|DEN|LICENSE
VtCO35C.png|NOME|DPT|DEN|LICENSE
YJLQV45.png|NOME|DPT|DEN|LICENSE
bbpXJuN.png|NOME|DPT|DEN|LICENSE
BG2mIL1.png|NOME|DPT|DEN|LICENSE
QQW7AV5.png|NOME|DPT|DEN|LICENSE
7NaSlky.png|NOME|DPT|DEN|LICENSE
smile.png|NOME|DPT|DEN|LICENSE
  • Linhas podem ser apagadas. Por exemplo, a última linha acima pode não ser interessante, por ser um smile.
  • A primeira coluna é o nome original da imagem e não deve ser alterada. O script baixará aquelas imagens para você.
  • A secunda coluna está com o valor NOME que deve ser substituído por um novo nome real para a imagem, que será nome do arquivo no wiki.
  • A terceira coluna está com o valor DPT que deve ser substituído pela descrição em português pretendida para o arquivo no wiki.
  • A quarta coluna está com o valor DEN que deve ser substituído pela descrição em inglês pretendida para o arquivo no wiki.
  • A quinta e última coluna está o valor LICENSE que ser substituído pela configuração de licença pretendida para o arquivo no wiki.
  • Em NOME, DPT ou DEN nunca escreva código que inclua '|'
  • Você pode deixar linhas em branco entre os registros

Um exemplo de preenchimento de apenas um registro:

kcYPiud.png|Tutorial-restriconv-iD-01-placa-proibido-esquerda.png|Tutorial brasileiro sobre relações de restrição de conversão usando o editor iD. Placa de proibido converter a esquerda na posição indicada.|Brazilian tutorial on editing turn restriction relations using the iD editor. Prohibited convert plate left in the position.|CC-by-sa-2.0|[[User:Nighto|Arlindo Nighto Pereira]]

Onde:

  • 1ª coluna = kcYPiud.png
  • NOME = Tutorial-restriconv-iD-01-placa-proibido-esquerda.png
  • DPT = Tutorial brasileiro sobre relações de restrição de conversão usando o editor iD. Placa de proibido converter a esquerda na posição indicada.
  • DEN = Brazilian tutorial on editing turn restriction relations using the iD editor. Prohibited convert plate left in the position.
  • LICENSE = CC-by-sa-2.0|[[User:Nighto|Arlindo Nighto Pereira]]

Dois comandos que você não vai precisar usar

bash osm-bb2wiki.sh Post list

Lista todos os registros de Post-files.txt que ainda tem pendências, não tiveram os valores NOME, DPT, DEN e LICENSE substituídos.

bash osm-bb2wiki.sh Post get 5

Nesse exemplo, recupera o código wiki para o registro número 5 da lista gerada pelo comando list (anterior).

Finalizar o material para o wiki

Primeiro, certifique-se de que cocê preencheu corretamente o Post-files.txt. Só então prossiga.

Baixe as imagens da Internet para o diretório download que é criado automaticamente em seu computador:

bash osm-bb2wiki.sh Post download

Faça uma cópia automatizada de todos os arquivos para o diretório upload, usando os novos nomes configurados:

bash osm-bb2wiki.sh Post rename

Gere o código wiki da página de conteúdo — arquivo Post-wiki-final.txt:

bash osm-bb2wiki.sh Post write

Gere os códigos wiki das páginas — em Post-wiki-pages.txt — dos arquivos de imagem que agora serão hospedados no wiki:

bash osm-bb2wiki.sh Post pages

Executando comandos uma segunda vez

Um novo export destrói as configurações de PROJETO-files.txt. Antes dele você pode renomear o arquivo para PROJETO-files.txt.backup.

Você pode fazer um novo download simplesmente sobrescrevendo os arquivos existentes. Não é preciso apagar o diretório.

Já se você for executar um novo rename, é sugerido que limpe o sub-diretório upload, para não misturar arquivos de nomes diferentes.

Se você alterar PROJETO-files.txt mexendo em NOME, repita write, pages e rename. Se não mexer em NOME, não precisa fazer o rename.

Resumindo:

  • write gera PROJETO-wiki-final.txt — código para a página-tutorial no wiki
  • pages gera PROJETO-pages.txt — códigos para as páginas de "arquivo/imagem" no wiki
  • rename gera os arquivos/imagens com seus nomes finais que serão usados para o envio ao wiki

Publicar no wiki

  1. Copie o conteúdo de Post-wiki-final.txt dentro de uma nova página
  2. Faça "Enviar arquivo" (link na barra lateral do wiki) para cada arquivo em seu sub-diretório upload local
    1. Não altere o nome do arquivo no campo do formulário, ele será o mesmo do arquivo local escolhido
    2. Não preencha o campo "sumário" do formulário
    3. Opte pela licença mais próxima daquela que você configurou em Post-files.txt
    4. Marque "Vigiar este arquivo" nas "Opções de envio"
    5. Finalmente clique o botão "Enviar arquivo"
  3. Edite a página de cada arquivo enviado substituindo seu código wiki pelo correspondente mais completo que é encontrado dentro do Post-wiki-pages.txt, sem incluir a linha de comentário HTML — /* */ — que inicia o bloco de código que interessa


Pronto! Você tem criado uma página no wiki que mostra imagens que estão hospedadas no mesmo servidor.