Navegação automática
Abri o pedido de exportação em formato HTML no bugzilla:60300. Isso já havia sido sugerido no Tópico:Wikilivros:Plantão de dúvidas/Coleção de HTML e na mw:Extension:Collection/Wishlist#Output HTML.
O MediaWiki propriamente dito não tem nenhum outro recurso que gere o livro inteiro em HTML. Uma tentativa minha e do Raylton nesse sentido foi a mw:Extension:BookManager#Automatic print version, mas infelizmente ainda não temos uma versão que possa ser instalada nas wikis da WMF.
Outras opções seriam:
- Abandonar o suporte a quem não tem/desativa JavaScript no navegador, e desenvolver um gadget que gere a versão HTML on the fly, quando requisitado pelo leitor, sem criar página alguma na wiki.
- Utilizar links deste tipo para a Special:ExpandTemplates, que se encarrega de expandir o código wiki quando alguém clicar? A desvantagem é que no HTML resultante também aparece a interface da página especial...
Não acho difícil eles fazerem a versão HTML, porque seria só juntar todas as página em uma só e mostrar como versão de impressão. E a motivação é poder ver tudo ou imprimir sem precisar de software especial.
Sim, essas alternativas podem ser usadas temporariamente enquanto eles não implementam versão HTML. Mas seria bom atualizar para usar a coleção como base, em vez de Predefinição:Lista de capítulo.
Seria mais adequado usar domínio "Livro" em vez de "Wikilivros:Livro/...". Na Wikipédia, esse domínio é usado (Livro:Mitologia Grega). O trabalho será renomear tudo.
E qual seria o padrão proposto para índice e página inicial do livro? Como falei, seria adequado o editor se preocupar em editar em só um lugar. Os outros poderiam ser atualizados automaticamente ou por um robô que monitora as edições de índices.
Difícil não é. Tanto que eu e o Raylton até incluímos um protótipo na extensão BookManager... A questão é que esse tipo de coisa, que só beneficia um dos projetos menores (ou seja, quase todos exceto a Wikipédia inglesa), costuma ser tratado como baixa prioridade. Então a não ser que a gente mesmo coloque a mão na massa, e escreve o código necessário, para que "eles" só precisem revisar, as coisas costumam andar bem lentamente...
Como disse em outro lugar, a discussão sobre o domínio específico para as coleções deveria ser continuada em um tópico específico.
Acrescentei ao Módulo:Book (antes chamado de "Módulo:Nav") uma função que gera a versão para impressão, e coloquei no lugar da predefinição que era utilizada na Predefinição:Versão para impressão automática.
Optei por ignorar (não transcluir, nem mencionar) eventuais links vermelhos que estejam na coleção, por não acrescentarem nada à versão impressa.
Para simplificar as coisas, acho que {{Versão para impressão}}
poderia então ser movido para {{livro}}
. Assim usaríamos só uma predefinição. Poderia ser colocado também o link de HTML em {{Livro gravado}}
por ser um dos formatos também. Quando eles implementarem HTML pelo próprio MediaWiki é só substituir na predefinição.
Agora é saber qual é a melhor solução, para não ter que criar páginas "/imprimir". Posso ver Special:ExpandTemplates e o problema com a interface, mas não sei como ficaria aquela com JavaScript. Não sei se é possível, mas pode ser bom que a predefinição seja carregada numa página que esteja sendo prevista e ter algum bloqueio para evitar que ela seja salva. A vantagem é que a interface ficaria na parte debaixo.
Que boa notícia Helder. Podemos colocar a {{Lista de capítulos}}
em desuso agora né? Pelas minhas contas era só isso que faltava tornar a antiga predefinição obsoleta.
Acho que resolvi o nosso problema com mais uma gambiarra. Ela combina:
- Especial:Expandir predefinições, que produzirá a versão para impressão por meio da
{{Versão para impressão automática}}
- Um link incluído na "Predefinição:Livro" (que se encarrega de passar uns parâmetros "mágicos" para a página especial funcionar como queremos )
- MediaWiki:Gadget-PrintableVersion.css, que oculta algumas partes da interface que não serão relevantes ao imprimir
Provavelmente precisará de mais uns ajustes para ficar ótimo (e mover o CSS para o lugar ideal), mas por enquanto, o que acharam?
A {{Lista de capítulos/Imprimir}}
tá obsoleta também? Vi alguns afluentes!
Parecem ser afluentes fantasmas...
Eu pensava que a atualização de afluentes ia para a fila de tarefas, mas conforme esta consulta à API, ela está vazia, mesmo havendo 27 afluentes que precisam ser corrigidos. Será que ela não está funcionando como deveria?
De qualquer modo, abrir cada página em modo de edição, e clicar em salvar (sem sequer alterar o código) costuma ser o suficiente para forçar a remoção da lista de afluentes (funcionou com Gramática inglesa estrutural/Imprimir e Alfabeto para crianças/Imprimir, por exemplo). Fiz isso com as páginas que faltavam, então não há mais transclusões.
Massa... Comecei a página de ajuda para documentarmos.
Ajudem-me!
Voltando ao assunto. Criei uma seção listando os erros conhecidos da navegação. E outra com os tópicos relacionados. Podem me ajudar a completar?
A propósito, o mw:Manual:Pywikibot/touch.py pode ser útil caso apareça uma quantidade maior de páginas para atualizar futuramente...
Suspeito que o problema seja o mesmo do bugzilla:39049, e que não podemos fazer nada a respeito localmente...
Uma pergunta, se a cor e aparência da navegação de livros específicos é definida pelo CSS, seria possível colocar um script que lê informações de páginas editáveis por usuários comuns para gerar o CSS? Da mesma forma que um script lê a coleção para fazer a navegação.
CSS não é nem deve ser editável por usuários comuns por questões de segurança.
O que eu tinha falado era deixar o usuário colocar a informação na página da coleção, como cor de bordo e de preenchimento, e então o script lê a cor e faz a navegação ter essa cor. Poderia ser criado também múltiplos estilos de navegação e o usuário por na coleção qual estilo ele prefere.
Curiosidade.
Sobre Citação: Helder escreveu: «CSS não é nem deve ser editável por usuários comuns por questões de segurança.»
Você fala no sentido de alguém mudar o visual de algum elemento para se passar por outro para pode fazer alguma coisa mal intencionada?
Pelo que me lembro do CSS, e pelo pouco que sei sobre ele (uso só os recursos básicos... rs), sei que ele não tem muitos recursos para permitir vazamento de informação e outras coisas...
Ou você também está se referindo a estabilidade do projeto, ex.: "estragar" o visual (acessibilidade também) seja por vândalos, seja por pessoas que não entendam muito de CSS... ?
Finalizando, acredito que possamos permitir, mas só a usuários cadastrados com um número mínimo de edições (assim como se faz para ser revisor, etc.).
O CSS por ser aplicável ao site todo. pode torna-lo totalmente inutilizável. Ou até mesmo tornar impossível visualizar o site inteiro. Além de inserir informações falsas/promocionais que só poderiam ser desfeitas por pessoas com conhecimento especifico etc.
Ao contrário do CSS pessoal que cada usuário pode editar, o CSS que se aplica a todos os usuários só deve ser editável por usuários que tenham a permissão correspondente (atualmente, "editinterface"). Ver também as preocupações levantadas nos seguintes lugares:
Ao contrário do Guiwp, minha proposta não é deixar usuários editar CSS e sim a criação de um script que leia dados que o usuário colocar na página da coleção para dar mais customização à aparência do livro, como na navegação. Isso deixa o livro com uma cara mais única em vez de genérica.