Pt:Tutorial:Copiar conteúdo do fórum para o wiki
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:
bash osm-bb2wiki.sh PROJETO begin
bash osm-bb2wiki.sh PROJETO end
- 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:
- Copiar o conteúdo de osm-bb2wiki.sh dentro de arquivo de mesmo nome, no diretório de trabalho
- 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.
- Selecione o corpo da postagem que deseja copiar
- Clique o botão direito do mouse
- Opte por "Código-fonte da seleção"
- Na janela que abre, dê duplo clique na para selecionar a linha de código HTML por completa
- Copie e cole tudo num arquivo Post.txt
- No diretório de trabalho, execute a conversão:
bash osm-bb2wiki.sh ConvID
- 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 wikipages
gera PROJETO-pages.txt — códigos para as páginas de "arquivo/imagem" no wikirename
gera os arquivos/imagens com seus nomes finais que serão usados para o envio ao wiki
Publicar no wiki
- Copie o conteúdo de Post-wiki-final.txt dentro de uma nova página
- Faça "Enviar arquivo" (link na barra lateral do wiki) para cada arquivo em seu sub-diretório upload local
- Não altere o nome do arquivo no campo do formulário, ele será o mesmo do arquivo local escolhido
- Não preencha o campo "sumário" do formulário
- Opte pela licença mais próxima daquela que você configurou em Post-files.txt
- Marque "Vigiar este arquivo" nas "Opções de envio"
- Finalmente clique o botão "Enviar arquivo"
- 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.