Usuário:Heldergeovane
Origem: Wikilivros, livros abertos por um mundo aberto.
Sobre mim... |
||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Buscando inspiração?Se quiser motivos para fazer parte do projeto e dar a sua contribuição, pode se inspirar através da leitura de textos como os seguintes:
|
Informação adicional
Em busca do que fazer?
Abaixo estão listadas algumas tarefas pendentes, organizadas (ou não) conforme o tipo de coisa que pode estar envolvida em sua realização. Por conveniência, uma mesma tarefa poderá aparecer em mais de uma seção.
Pesquisa
- Encontrar novamente o script que carregava os interwikis na página principal de não sei qual projeto. Tentar aprimorá-lo para que possamos exibir apenas os 10 maiores por padrão, e exibir um botão do tipo "ver mais..." que ao ser clicado exiba os restantes... (talvez o seja útil [ou não...])
- Pensar naquela ideia das informações nutricionais para o livro de receitas. Poderia ser criado um capítulo (ou mais, ou um novo livro) com as informações nutricionais e improvisar as "inclusões de seções" usando parserfuncions, parâmetros e includeonlys...
- Fazer resumo para incluir no Wikijúnior, conforme conversa com o Jorge;
- Por em prática a criação de novos espaços nominais: Wikijúnior e Receita, conforme notas do Jorge; Quem sabe também o "Assunto" (análogo do Subject no Wikilivros inglês), para reformular a biblioteca por assunto, usando <Dynamicpagelist>s; Procurar discussão onde comentei sobre isso na esplanada; Conforme mw:Manual:Namespace#Custom namespaces, para configurar espaços nominais adicionais, usa-se a variável mw:Manual:$wgExtraNamespaces. Indicar em mw:Manual:$wgNamespacesWithSubpages quais deverão ter o recurso de subpáginas habilitado. Indicar na mw:Manual:$wgNamespaceAliases os apelidos que serão usados para os espaços nominais. Se formos criar algum espaço nominal que fique bloqueado, será preciso ajustar a mw:Manual:$wgNamespaceProtection (para os 3 propostos, não será de interesse). Para que os novos espaços entrem na contagem do número de artigos ({{NUMBEROFARTICLES}}), é preciso colocá-los na mw:Manual:$wgContentNamespaces. Como atualmente não há páginas começando por Receita e há apenas Wikijúnior começando por Wikijúnior, não haverá conflitos. Para que os novos espaços nominais sejam incluídos por padrão nas pesquisas (para contas de usuários novas), é preciso ajustar mw:Manual:$wgNamespacesToBeSearchedDefault. Para os usuários antigos (nós mesmos) será preciso que seja executado um script para setar a busca por padrão para true (embora possamos mudar isso manualmente, os demais usuários, que passam esporadicamente podem não notar a mudança então seria melhor usar o script) (ou podemos simplesmente colocar um aviso no sitenotice por uns tempos, avisando os visitantes para habilitar as buscas nos novos espaços nominais). Sobre o script, ver mw:Manual:$wgNamespacesToBeSearchedDefault#userOptions.php MediaWiki maintenance script. Bugs relacionados: 1969, 4541, 4691, 7124, 7282, 10694, 12856, 15282.
- Corrigir problemas de layout da página principal com css, div's, etc (como feito no Wikijúnior); Tarefa de longo prazo, em andamento com a ajuda do Raylton.
Coisas de livros específicos
Exatas
- Fornecer índices remissivos para os livros:
- Concluir os índices remissivos já começados
- Considerar a criação de uma predefinição que use a predefinição:âncora para fazer como no Latex: inserir ao longo do texto "marcações" de quais palavras devem ir para o índice remissivo.
- Isto permitirá a criação de um script para automatizara a criação de índices remissivos: a partir de uma lista dos capítulos que formam um livro, o script acessará o código wiki de cada uma (via API do MediaWiki) e filtrará as chamadas a tal predefinição, criará uma lista de palavras/expressões para cada capítulo e depois irá juntar todas as listas em uma única, contendo a sintaxe dos links para cada âncora que foi marcada ao longo do livro. Vai ser difícil de fazer, e tornará a vida muito simples! (depois de pronto, claro)
- Documentar a predefinição:explicação, e fazer pequenos ajustes no css e/ou no script, antes de colocar em uso.
- Para os livros de exatas, particularmente o de medida e integração:
- Documentar usando <ref>'s todos os resultados e definições (eventualmente os exercícios) indicando os livros nos quais aparecem resultados análogos;
- Separar as tags <ref> em dois grupos: Notas (para justificativas complementares às afirmações feitas ao longo do texto; talvez se torne obsoleto com a predefinição:explicação, talvez não...) e Referências (para citações de livros e artigos);
- Descobrir/perguntar para alguém como adicionar accesskeys aos botões padrão da barra de edição (particularmente o de matemática). Ver EditPage.php onde se ajusta as teclas de atalho dos botões usuais (por exemplo, o de matemática está na linha
'image' => $wgLang->getImageFile('button-math'),). - Continuar leitura crítica de Números primos, deixando considerações como aqui Discussão:Números primos, e eventualmente propondo a eliminação.
Levar em conta as duas últimas mensagens da autora para o Ozymandias.
Música
- Criar uma Predefinição:Cifra, análoga à Predefinição:Piano. Possivelmente deverá ser usada sprite para a imagem de fundo e as setas (das pestanas).
- Aumentar compatibilidade da Predefinição:Piano com outros navegadores.
Receitas
- Adicionar mais padrões de substituição ao Regex menu framework.js:
Correção da formatação do livro de receitas- As ligações dentro de um livro, de um capítulo para ou outro podem ter a forma mais simples/economica
[[../Capítulo/]]em vez de[[Livro/Capítulo]]. Substituir </math>, e </math>. por ,</math> e .</math>;- Atualizar ligações locais usando {{fullurl:unescape('alguma coisa')|parametros}} (trocando "non-literal characters" por algo mais adequado)
- Conferir como se deu a migração das receitas da Wikipédia para o Wikilivros (certamente poderia ter sido melhor). Ver páginas como w:Wikipedia:Votações/Receitas na wikipédia 2, w:Wikipedia:Votações/Receitas na wikipédia 3 e Wikipédia = Livro de receitas, entre outras.
- Se informar sobre o bug que o Master comentou na esplanada quando discutíamos a organização do livro de receitas (que por sinal continua pendente): quando uma pessoa clicar em "próximos 200" na primeira página da categoria:Livro de receitas, a lista seguinte começará no primeiro item que começa com a letra B, e há mais de 200 itens começado com B, se clicar em "próximos 200" não mudará a página e ficará travado no B, tornando as letras posteriores inacessíveis.
- Pensar naquela ideia das informações nutricionais para o livro de receitas. Poderia ser criado um capítulo (ou mais, ou um novo livro) com as informações nutricionais e improvisar as "inclusões de seções" usando parserfuncions, parâmetros e includeonlys...
- Identificar e remover marcas específicas das receitas. Criar regex para fazer isso automaticamente. Ver exemplos de páginas onde sugerem o uso de: pó Royal (fermento em pó), Toddy e Nescau (chocolate/achocolatado em pó)...;
Uniformizar uso de subpáginas no Livro de receitas: remover a parte intermediária do título das seguintes páginas: ../Bebidas/*, ../Culinária por país/*, ../Doces/*, ../Entradas/*, ../Gastronomia Brasileira/*, ../Massas/*, ../Pratos Principais e Variados/*, ../Quitandas/*, ../Receitas Variadas/*, ../Salgados, Lanches e Sanduíches/*, ../Sobremesas/*;
- Conferir se algumas das páginas movidas ao completar a tarefa anterior ficou sem ser categorizada com o nome da página base que tinha antes. Ex: "Livro de receitas/Receitas variadas/Bla" deveria estar na categoria "Receitas variadas" e assim por diante...
- Por em prática a criação de novos espaços nominais: Wikijúnior e Receita, conforme notas do Jorge; Quem sabe também o "Assunto" (análogo do Subject no Wikilivros inglês), para reformular a biblioteca por assunto, usando <Dynamicpagelist>s; Procurar discussão onde comentei sobre isso na esplanada; Conforme mw:Manual:Namespace#Custom namespaces, para configurar espaços nominais adicionais, usa-se a variável mw:Manual:$wgExtraNamespaces. Indicar em mw:Manual:$wgNamespacesWithSubpages quais deverão ter o recurso de subpáginas habilitado. Indicar na mw:Manual:$wgNamespaceAliases os apelidos que serão usados para os espaços nominais. Se formos criar algum espaço nominal que fique bloqueado, será preciso ajustar a mw:Manual:$wgNamespaceProtection (para os 3 propostos, não será de interesse). Para que os novos espaços entrem na contagem do número de artigos ({{NUMBEROFARTICLES}}), é preciso colocá-los na mw:Manual:$wgContentNamespaces. Como atualmente não há páginas começando por Receita e há apenas Wikijúnior começando por Wikijúnior, não haverá conflitos. Para que os novos espaços nominais sejam incluídos por padrão nas pesquisas (para contas de usuários novas), é preciso ajustar mw:Manual:$wgNamespacesToBeSearchedDefault. Para os usuários antigos (nós mesmos) será preciso que seja executado um script para setar a busca por padrão para true (embora possamos mudar isso manualmente, os demais usuários, que passam esporadicamente podem não notar a mudança então seria melhor usar o script) (ou podemos simplesmente colocar um aviso no sitenotice por uns tempos, avisando os visitantes para habilitar as buscas nos novos espaços nominais). Sobre o script, ver mw:Manual:$wgNamespacesToBeSearchedDefault#userOptions.php MediaWiki maintenance script. Bugs relacionados: 1969, 4541, 4691, 7124, 7282, 10694, 12856, 15282.
Wikijúnior
- Fazer resumo para incluir no Wikijúnior, conforme conversa com o Jorge;
- Por em prática a criação de novos espaços nominais: Wikijúnior e Receita, conforme notas do Jorge; Quem sabe também o "Assunto" (análogo do Subject no Wikilivros inglês), para reformular a biblioteca por assunto, usando <Dynamicpagelist>s; Procurar discussão onde comentei sobre isso na esplanada; Conforme mw:Manual:Namespace#Custom namespaces, para configurar espaços nominais adicionais, usa-se a variável mw:Manual:$wgExtraNamespaces. Indicar em mw:Manual:$wgNamespacesWithSubpages quais deverão ter o recurso de subpáginas habilitado. Indicar na mw:Manual:$wgNamespaceAliases os apelidos que serão usados para os espaços nominais. Se formos criar algum espaço nominal que fique bloqueado, será preciso ajustar a mw:Manual:$wgNamespaceProtection (para os 3 propostos, não será de interesse). Para que os novos espaços entrem na contagem do número de artigos ({{NUMBEROFARTICLES}}), é preciso colocá-los na mw:Manual:$wgContentNamespaces. Como atualmente não há páginas começando por Receita e há apenas Wikijúnior começando por Wikijúnior, não haverá conflitos. Para que os novos espaços nominais sejam incluídos por padrão nas pesquisas (para contas de usuários novas), é preciso ajustar mw:Manual:$wgNamespacesToBeSearchedDefault. Para os usuários antigos (nós mesmos) será preciso que seja executado um script para setar a busca por padrão para true (embora possamos mudar isso manualmente, os demais usuários, que passam esporadicamente podem não notar a mudança então seria melhor usar o script) (ou podemos simplesmente colocar um aviso no sitenotice por uns tempos, avisando os visitantes para habilitar as buscas nos novos espaços nominais). Sobre o script, ver mw:Manual:$wgNamespacesToBeSearchedDefault#userOptions.php MediaWiki maintenance script. Bugs relacionados: 1969, 4541, 4691, 7124, 7282, 10694, 12856, 15282.
Coisas da Web...
Folhas de estilos
- Encontrar mais Gadgets que sejam úteis no Wikilivros. Ver Wikilivros:Gadgets, mw:Extension:Gadgets, Usuário:Heldergeovane/Arquivo 02#Botões e Wikilivros:Staff lounge/Arquivo 20#Gadgets. Alguns gadgets: en.wb, it.wb, pt.wp, Commons.
- Pensar em como fazer versões "resumo" (e/ou "livro do professor") dos textos (inicialmente de matemática), exibindo apenas as definições e os resultados que forem marcados com certa classe em css (digamos "class=resumo"). Adicionar ligações à barra lateral (na seção
<div class="portlet" id="p-tb">) - Documentar a predefinição:explicação, e fazer pequenos ajustes no css e/ou no script, antes de colocar em uso.
- Tentar desenvolver uma versão da busca aprimorada que insira as caixas de seleção de projeto/idioma/buscador junto com os botões usuais que aparecem no topo das páginas a esquerda. Ver testes recentes que fiz no recurso "buscar neste livro". Melhorar compatibilidade com o Vector;
- Pensar em como escolher o projeto/buscador padrão no Busca_aprimorada.js. Talvez seja de alguma ajuda o código em http://groups.google.com/group/opera.general/browse_thread/thread/c2826d5164b2dc02?pli=1.
- Aprimorar script da predefinição oculto e das tabelas expansíveis para que toda a linha de título possa ser usada para expandir/recolher, como no Wikilivros inglês. Exemplo en:Template:Dynamic navigation.
- Pesquisar sobre o uso de sprites css para adição de imagens de fundo: Vi em algum lugar que se uma mesma imagem é usada em diversos lugares de uma página, então pode-se economizar no tempo de carregamento adicionando-as via css. Já fiz alguns testes na caixa de areia, e incluí um gadget para testes. Só não gostei do tempo de processamento do lado do servidor (por causa das predefinições???): ver código fonte da página gerada nos testes. Se for este o caso, a página principal poderá ser melhorada, principalmente agrupando as imagens:
- Das 9 etapas (
); - Das 5 etapas (
); Ver resultadonovo teste na caixa de areia usando este css; - Dos outros projetos Wikimedia;
- Que ilustram as áreas do conhecimento; (aliás, podiam ter ligações para seções correspondentes da biblioteca)
- Das 9 etapas (
- Descobrir como se faz para uma tabela que está dentro de uma "wikitable" não herdar a formatação "wikitable". Fazer a correção em Wikilivros:Predefinições/Outras. A solução parece estar em w:en:MediaWiki talk:Common.css/Archive 5#Wikitable borders without CSS. Ver edição. O css da wikitable já foi atualizado, agora só falta definir classes para as FPMs e colocar em prática o que é explicado no fim daquela página da en.wp...
- Centralizar algumas tabelas que temos por aí, usando o css style="margin: 1em auto 1em auto" em vez das tags <center></center>. Considerando que Internet Explorer não entende isso direito, pode ser necessário alterar o alinhamento das células individualmente depois.
- Considerar a adição deste código:
/*
CSS Browser Selector v0.3.2
Rafael Lima (http://rafael.adm.br)
http://rafael.adm.br/css_browser_selector
License: http://creativecommons.org/licenses/by/2.5/
Contributors: http://rafael.adm.br/css_browser_selector#contributors
# /
function css_browser_selector(u){var ua = u.toLowerCase(),is=function(t){return ua.indexOf(t)>-1;},g='gecko',w='webkit',s='safari',h=document.getElementsByTagName('html')[0],b=[(!(/opera|webtv/i.test(ua))&&/msie\s(\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?g+' ff2':is('firefox/3')?g+' ff3':is('gecko/')?g:/opera(\s|\/)(\d+)/.test(ua)?'opera opera'+RegExp.$2:is('konqueror')?'konqueror':is('chrome')?w+' chrome':is('applewebkit/')?w+' '+s+(/version\/(\d+)/.test(ua)?' '+s+RegExp.$1:''):is('mozilla/')?g:'',is('j2me')?'mobile':is('iphone')?'iphone':is('ipod')?'ipod':is('mac')?'mac':is('darwin')?'mac':is('webtv')?'webtv':is('win')?'win':is('freebsd')?'freebsd':(is('x11')||is('linux'))?'linux':'','js']; c = b.join(' '); h.className += ' '+c; return c;}; css_browser_selector(navigator.userAgent);
no mediawiki:Common.js para facilitar a escrita de códigos css compatíveis com outros navegadores. Exemplo de uso. Tem também uma opção usando jQuery.
- Criar uma Predefinição:Cifra, análoga à Predefinição:Piano. Possivelmente deverá ser usada sprite para a imagem de fundo e as setas (das pestanas).
- Aumentar compatibilidade da Predefinição:Piano com outros navegadores.
- Corrigir problemas de layout da página principal com css, div's, etc (como feito no Wikijúnior); Tarefa de longo prazo, em andamento com a ajuda do Raylton.
Scripts
- Avaliar a possibilidade de criar versão da função insertTags que salve os 10 usos mais recentes em cookies, para que um outro script possa inserir os botões usados recentemente em um div em algum lugar em volta da janela de edição (facilitaria minha vida ao escrever coisas de matemática cheias de comandos em Latex).
- Elaborar script (e/ou predefinição a incluir em um editnotice do espaço nominal principal) que exiba um aviso de que certo título está usando letras em maiúsculas, informando o editor que isto só deve ser feito no caso de nomes próprios (viraria gadget? Como faria para não incomodar o editor de um livro que tivesse nome próprio no nome? Lista de exceções a ser aumentada com o tempo? Ou aviso discreto, que não deveria ser tanto incômodo se aparecesse sempre?).
- Criar js para automatizar o processo de criar as autonavs: a partir de uma lista de nomes de páginas (separados por quebras de linha [ou mesmo o próprio índice do livro]), o script poderia muito bem criar os ligações de anterior/posterior, bem como oferecer as opções de barras de navegação existentes (visualmente), etc... Ia ser muito mais fácil...
- Elaborar versão da predefinição:AutoCat como script. Talvez ajude dar uma olhada no en:MediaWiki:Gadget-wkcategorize.js. Vantagem: ao renomear um livro, a categorização pode seria atualizada instantaneamente (ao contrário do que ocorre com o uso de predefinições, que exige uma alteração na página para refletir as novas categorias, se bem que a presença de um bot por aqui resolveria isso...);
- Ler meta:Help:Substitution e tentar elaborar uma versão da predefinição:AutoCat que pudesse ser usada através do código
{{subst:AutoCat}}para gerar apenas os códigos das categorias que devem ser inseridas em um livro. - Aproveitar para pensar em como aprimorar a HotCat para reconhecer que uma página de índice foi deixada sem o indexador ao inserir a categoria.
- Ler meta:Help:Substitution e tentar elaborar uma versão da predefinição:AutoCat que pudesse ser usada através do código
- Encontrar mais Gadgets que sejam úteis no Wikilivros. Ver Wikilivros:Gadgets, mw:Extension:Gadgets, Usuário:Heldergeovane/Arquivo 02#Botões e Wikilivros:Staff lounge/Arquivo 20#Gadgets. Alguns gadgets: en.wb, it.wb, pt.wp, Commons.
- Tentar fazer js para adicionar "{{Discussão ativa}}" (ou algo que o valha) ao começar novo tópico de discussão (criação de página ou clique no [+]); A predefinição também precisar ser criada, talvez baseando-se na versão da Wikiversidade, mas detectando o espaço nominal e categorizando separadamente: "Discussões sobre o projeto", "Discussões sobre as mensagens do sistema", "Discussões sobre o conteúdo dos livros",...
- Pensar em como fazer versões "resumo" (e/ou "livro do professor") dos textos (inicialmente de matemática), exibindo apenas as definições e os resultados que forem marcados com certa classe em css (digamos "class=resumo"). Adicionar ligações à barra lateral (na seção
<div class="portlet" id="p-tb">) - Documentar a predefinição:explicação, e fazer pequenos ajustes no css e/ou no script, antes de colocar em uso.
- Tentar desenvolver uma versão da busca aprimorada que insira as caixas de seleção de projeto/idioma/buscador junto com os botões usuais que aparecem no topo das páginas a esquerda. Ver testes recentes que fiz no recurso "buscar neste livro". Melhorar compatibilidade com o Vector;
- Pensar em como escolher o projeto/buscador padrão no Busca_aprimorada.js. Talvez seja de alguma ajuda o código em http://groups.google.com/group/opera.general/browse_thread/thread/c2826d5164b2dc02?pli=1.
- Criar script para que em páginas do tipo "Livro/Imprimir" as ligações internas que vão pra o mesmo livro apontem para âncoras na própria página "Livro/Imprimir" (pode ser que os leitores gostem de de uma página comprida com todo o conteúdo, então é melhor que os ligações funcionem bem!)
- Aprimorar script da predefinição oculto e das tabelas expansíveis para que toda a linha de título possa ser usada para expandir/recolher, como no Wikilivros inglês. Exemplo en:Template:Dynamic navigation.
- Facilitar a conversão de latex para wiki e vice-versa usando regex. Substituir:
{{AutoCat}} →{{AutoNav}} →<math> → $</math> → $==== → \subsubsubsection{=== → \subsubsection{== → \subsection{Título de módulo → \section{Título de módulo} (manualmente)- Otimizar regex agrupando parte comum das regras anteriores
- :$ → $$ (manualmente)
- [[wgPageName|Texto exibido]] → \href{wgServer + '/wiki/' + wgPageName}{Texto exibido}
- Versão análoga para ligações externas e ligações interprojeto, com reconhecimento de prefixos
- <ref>Nota de rodapé.</ref> → \footnote{Nota de rodapé.}
- Adicionar mais padrões de substituição ao Regex menu framework.js:
Correção da formatação do livro de receitas- As ligações dentro de um livro, de um capítulo para ou outro podem ter a forma mais simples/economica
[[../Capítulo/]]em vez de[[Livro/Capítulo]]. Substituir </math>, e </math>. por ,</math> e .</math>;- Atualizar ligações locais usando {{fullurl:unescape('alguma coisa')|parametros}} (trocando "non-literal characters" por algo mais adequado)
- Adaptar w:ru:MediaWiki:Gadget-urldecoder.js (documentado aqui), ou o w:en:User:Js/urldecoder.js (documentado em w:en:user:js/urldecoder) para o Wikilivros. Talvez colocando no regex framework (talvez não).
- Adaptar w:fr:MediaWiki:Gadget-AncreTitres.js para que produza links internos "mais bonitinhos"...
- Encontrar novamente o script que carregava os interwikis na página principal de não sei qual projeto. Tentar aprimorá-lo para que possamos exibir apenas os 10 maiores por padrão, e exibir um botão do tipo "ver mais..." que ao ser clicado exiba os restantes... (talvez o seja útil [ou não...])
- Descobrir/perguntar para alguém como adicionar accesskeys aos botões padrão da barra de edição (particularmente o de matemática). Ver EditPage.php onde se ajusta as teclas de atalho dos botões usuais (por exemplo, o de matemática está na linha
'image' => $wgLang->getImageFile('button-math'),). - Pensar em como usar javascript para exibir a mensagem explicativa que é mostrada no topo da caixa de areia, sem que para isso seja necessário incluir o código de uma predefinição na caixa em branco (pois temos mania de apagar o código, e não temos um bot para ficar limpando a caixa de areia para a gente
). Uma possível solução é criar um script que use a API do MediaWiki para carregar o conteúdo da predefinição/aviso no topo da caixa de areia (seria bom ter um ocultar/expandir tb?). Vantagens:
- Pouparia o trabalho de ficar limpando a página.
- Permitiria que fizéssemos testes usando a página inteira sem se preocupar com o cabeçalho que só é útil para quem não sabe como a página funciona;
- Não confundiria os novos colaboradores que porventura acessem a página enquanto estamos fazendo testes nos quais removemos o cabeçalho;
- Criar scripts para adicionar as seguintes ligações extras:
Ligações "editar" e "histórico" às listas de páginas que aparecem ao ver os afluentes de algo que acabamos de editar/mover (seria bem mais prático para corrigir os afluentes!)Para as contribuições globais de um usuário- Para outras páginas de js/css ao visualizar uma página terminada em .(j|cs)s (talvez com um menu e um botão "abrir"?)
- Ligações para "nova seção" nas página de discussão que apareça nas mudanças recentes (por exemplo, para deixar novos comentários aos usuários).
- Ligações para os "afluentes" de todos os ligações internos presentes em uma página (pode ser útil ao analisar os afluentes de um índice).
- Ligações que aparecem depois de "Esta página tem $1 sub-páginas mostradas abaixo." na tela para mover páginas;
- Ao receber o aviso "Página movida com sucesso";
- Ao editar uma revisão antiga de uma página, incluir "editar" para os links da revisão seguinte e da revisão anterior;
- Na página Especial:Índice de prefixo, ao lado de cada link pode incluir um "no redirect" (e também o editar/ hist / diss);
- Pensar em como fazer questionários que possam ser impressos, mas sem ter muito trabalho adicional para isso, nem duplicação de código.
- Considerar a adição deste código:
/*
CSS Browser Selector v0.3.2
Rafael Lima (http://rafael.adm.br)
http://rafael.adm.br/css_browser_selector
License: http://creativecommons.org/licenses/by/2.5/
Contributors: http://rafael.adm.br/css_browser_selector#contributors
# /
function css_browser_selector(u){var ua = u.toLowerCase(),is=function(t){return ua.indexOf(t)>-1;},g='gecko',w='webkit',s='safari',h=document.getElementsByTagName('html')[0],b=[(!(/opera|webtv/i.test(ua))&&/msie\s(\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?g+' ff2':is('firefox/3')?g+' ff3':is('gecko/')?g:/opera(\s|\/)(\d+)/.test(ua)?'opera opera'+RegExp.$2:is('konqueror')?'konqueror':is('chrome')?w+' chrome':is('applewebkit/')?w+' '+s+(/version\/(\d+)/.test(ua)?' '+s+RegExp.$1:''):is('mozilla/')?g:'',is('j2me')?'mobile':is('iphone')?'iphone':is('ipod')?'ipod':is('mac')?'mac':is('darwin')?'mac':is('webtv')?'webtv':is('win')?'win':is('freebsd')?'freebsd':(is('x11')||is('linux'))?'linux':'','js']; c = b.join(' '); h.className += ' '+c; return c;}; css_browser_selector(navigator.userAgent);
no mediawiki:Common.js para facilitar a escrita de códigos css compatíveis com outros navegadores. Exemplo de uso. Tem também uma opção usando jQuery.
- Melhorar o MediaWiki:Edittools
- Aprimorar faixas para eleitores, com avisos periódicos sobre as votações dos melhores trabalhos;
- Elaborar Gadget (e/ou predefinição) "Dicas rápidas", para os novatos: ela pode fazer um rodízio fornecendo diferentes dicas sobre as dificuldades mais comuns encontradas pelos novatos... E pode ser desabilitada nas preferências...
- Olhar o código do script que
coloca as estrelinhas nos interwikis entre projetos e também os quemostram versões correspondentes de uma página do Wikisource em dois idiomas, lado a lado.
API do MediaWiki
- Fornecer índices remissivos para os livros:
- Concluir os índices remissivos já começados
- Considerar a criação de uma predefinição que use a predefinição:âncora para fazer como no Latex: inserir ao longo do texto "marcações" de quais palavras devem ir para o índice remissivo.
- Isto permitirá a criação de um script para automatizara a criação de índices remissivos: a partir de uma lista dos capítulos que formam um livro, o script acessará o código wiki de cada uma (via API do MediaWiki) e filtrará as chamadas a tal predefinição, criará uma lista de palavras/expressões para cada capítulo e depois irá juntar todas as listas em uma única, contendo a sintaxe dos links para cada âncora que foi marcada ao longo do livro. Vai ser difícil de fazer, e tornará a vida muito simples! (depois de pronto, claro)
- Pensar em como usar javascript para exibir a mensagem explicativa que é mostrada no topo da caixa de areia, sem que para isso seja necessário incluir o código de uma predefinição na caixa em branco (pois temos mania de apagar o código, e não temos um bot para ficar limpando a caixa de areia para a gente
). Uma possível solução é criar um script que use a API do MediaWiki para carregar o conteúdo da predefinição/aviso no topo da caixa de areia (seria bom ter um ocultar/expandir tb?). Vantagens:
- Pouparia o trabalho de ficar limpando a página.
- Permitiria que fizéssemos testes usando a página inteira sem se preocupar com o cabeçalho que só é útil para quem não sabe como a página funciona;
- Não confundiria os novos colaboradores que porventura acessem a página enquanto estamos fazendo testes nos quais removemos o cabeçalho;
Expressões regulares (REGEX)
- Facilitar a conversão de latex para wiki e vice-versa usando regex. Substituir:
{{AutoCat}} →{{AutoNav}} →<math> → $</math> → $==== → \subsubsubsection{=== → \subsubsection{== → \subsection{Título de módulo → \section{Título de módulo} (manualmente)- Otimizar regex agrupando parte comum das regras anteriores
- :$ → $$ (manualmente)
- [[wgPageName|Texto exibido]] → \href{wgServer + '/wiki/' + wgPageName}{Texto exibido}
- Versão análoga para ligações externas e ligações interprojeto, com reconhecimento de prefixos
- <ref>Nota de rodapé.</ref> → \footnote{Nota de rodapé.}
- Adicionar mais padrões de substituição ao Regex menu framework.js:
Correção da formatação do livro de receitas- As ligações dentro de um livro, de um capítulo para ou outro podem ter a forma mais simples/economica
[[../Capítulo/]]em vez de[[Livro/Capítulo]]. Substituir </math>, e </math>. por ,</math> e .</math>;- Atualizar ligações locais usando {{fullurl:unescape('alguma coisa')|parametros}} (trocando "non-literal characters" por algo mais adequado)
- Elaborar regexes para "blacklist" e a "titleblacklist", conforme estes comentários: [1] e [2];
Coisas das Wikis...
Discussão com a comunidade
- Recategorizar as páginas das categorias que começam com "!" (ou seja, renomear estas categorias para nomes sem "!"), e incluir todas estas categorias em Categoria:Manutenção do Wikilivros. Ver também a discussão na esplanada. Motivos:
- "!" não tem significado algum para novos editores;
- "!" não tem significado algum para o MediaWiki: se o significado era para ser algo como "categorias usadas para manutenção", a forma correta de indicar isso (para colaboradores e para o MediaWiki) é colocando tais categorias na "Categoria:Manutenção do Wikilivros";
- "!" atrapalha o uso de palavras mágicas como
{{BASEPAGENAME}}nos indexadores e pode gerar a mesma bagunça que há na Wikipédia!
- Elaborar script (e/ou predefinição a incluir em um editnotice do espaço nominal principal) que exiba um aviso de que certo título está usando letras em maiúsculas, informando o editor que isto só deve ser feito no caso de nomes próprios (viraria gadget? Como faria para não incomodar o editor de um livro que tivesse nome próprio no nome? Lista de exceções a ser aumentada com o tempo? Ou aviso discreto, que não deveria ser tanto incômodo se aparecesse sempre?).
- Continuar organização das predefinições:
- Terminar a criação de uma documentação mínima para cada uma (usando a {{Documentação}});
- Mover as Categoria:Predefinições de livros:predefinições de livros para nomes como "Predefinição:NOMEDOLIVRO/Nome da predefinição", categorizá-las como "Categoria:NOMEDOLIVRO/Predefinições" (que por sua vez vão na Categoria:Predefinições de livros), e indexá-las pela subpágina. Ver en:Category:Book-specific templates e en:Category:Java Programming/Templates. Isto permite usara sintaxe {{../Nome da predefinição}} nos livros para chamar versões personalizadas de cada uma, sem precisar de algo caro como as parserfuncions que uso atualmente na predefinição:teorema e demais no mesmo gênero (se bem que esta sintaxe não é muito legal não... é melhor usar o nome completo).
- Melhorar o MediaWiki:Edittools
- Por em prática a criação de novos espaços nominais: Wikijúnior e Receita, conforme notas do Jorge; Quem sabe também o "Assunto" (análogo do Subject no Wikilivros inglês), para reformular a biblioteca por assunto, usando <Dynamicpagelist>s; Procurar discussão onde comentei sobre isso na esplanada; Conforme mw:Manual:Namespace#Custom namespaces, para configurar espaços nominais adicionais, usa-se a variável mw:Manual:$wgExtraNamespaces. Indicar em mw:Manual:$wgNamespacesWithSubpages quais deverão ter o recurso de subpáginas habilitado. Indicar na mw:Manual:$wgNamespaceAliases os apelidos que serão usados para os espaços nominais. Se formos criar algum espaço nominal que fique bloqueado, será preciso ajustar a mw:Manual:$wgNamespaceProtection (para os 3 propostos, não será de interesse). Para que os novos espaços entrem na contagem do número de artigos ({{NUMBEROFARTICLES}}), é preciso colocá-los na mw:Manual:$wgContentNamespaces. Como atualmente não há páginas começando por Receita e há apenas Wikijúnior começando por Wikijúnior, não haverá conflitos. Para que os novos espaços nominais sejam incluídos por padrão nas pesquisas (para contas de usuários novas), é preciso ajustar mw:Manual:$wgNamespacesToBeSearchedDefault. Para os usuários antigos (nós mesmos) será preciso que seja executado um script para setar a busca por padrão para true (embora possamos mudar isso manualmente, os demais usuários, que passam esporadicamente podem não notar a mudança então seria melhor usar o script) (ou podemos simplesmente colocar um aviso no sitenotice por uns tempos, avisando os visitantes para habilitar as buscas nos novos espaços nominais). Sobre o script, ver mw:Manual:$wgNamespacesToBeSearchedDefault#userOptions.php MediaWiki maintenance script. Bugs relacionados: 1969, 4541, 4691, 7124, 7282, 10694, 12856, 15282.
- Considerar ativação das FlaggedRevs aqui. Ver também esta discussão;
- #lst, proposta original (no en.wikisource)
- Pensar sobre a possibilidade do uso com as referências bibliográficas, tanto aqui quanto na Wikipédia.... Se bem que essa minha predefinição para {{Classificar}} talvez seja suficiente...

- Pensar sobre a possibilidade do uso com as referências bibliográficas, tanto aqui quanto na Wikipédia.... Se bem que essa minha predefinição para {{Classificar}} talvez seja suficiente...
Movimentação de páginas
- Recategorizar as páginas das categorias que começam com "!" (ou seja, renomear estas categorias para nomes sem "!"), e incluir todas estas categorias em Categoria:Manutenção do Wikilivros. Ver também a discussão na esplanada. Motivos:
- "!" não tem significado algum para novos editores;
- "!" não tem significado algum para o MediaWiki: se o significado era para ser algo como "categorias usadas para manutenção", a forma correta de indicar isso (para colaboradores e para o MediaWiki) é colocando tais categorias na "Categoria:Manutenção do Wikilivros";
- "!" atrapalha o uso de palavras mágicas como
{{BASEPAGENAME}}nos indexadores e pode gerar a mesma bagunça que há na Wikipédia!
Uniformizar uso de subpáginas no Livro de receitas: remover a parte intermediária do título das seguintes páginas: ../Bebidas/*, ../Culinária por país/*, ../Doces/*, ../Entradas/*, ../Gastronomia Brasileira/*, ../Massas/*, ../Pratos Principais e Variados/*, ../Quitandas/*, ../Receitas Variadas/*, ../Salgados, Lanches e Sanduíches/*, ../Sobremesas/*;
- Conferir se algumas das páginas movidas ao completar a tarefa anterior ficou sem ser categorizada com o nome da página base que tinha antes. Ex: "Livro de receitas/Receitas variadas/Bla" deveria estar na categoria "Receitas variadas" e assim por diante...
Categorização
- Recategorizar as páginas das categorias que começam com "!" (ou seja, renomear estas categorias para nomes sem "!"), e incluir todas estas categorias em Categoria:Manutenção do Wikilivros. Ver também a discussão na esplanada. Motivos:
- "!" não tem significado algum para novos editores;
- "!" não tem significado algum para o MediaWiki: se o significado era para ser algo como "categorias usadas para manutenção", a forma correta de indicar isso (para colaboradores e para o MediaWiki) é colocando tais categorias na "Categoria:Manutenção do Wikilivros";
- "!" atrapalha o uso de palavras mágicas como
{{BASEPAGENAME}}nos indexadores e pode gerar a mesma bagunça que há na Wikipédia!
- Usar a Predefinição:Categoria do livro nas páginas das categorias que agrupam páginas de um mesmo livro. [Só pra constar: Os afluentes que estiverem no domínio "Categoria" também servirão para contar o número de livros (manualmente). Mas este não é o objetivo...]
Predefinições
- Recategorizar as páginas das categorias que começam com "!" (ou seja, renomear estas categorias para nomes sem "!"), e incluir todas estas categorias em Categoria:Manutenção do Wikilivros. Ver também a discussão na esplanada. Motivos:
- "!" não tem significado algum para novos editores;
- "!" não tem significado algum para o MediaWiki: se o significado era para ser algo como "categorias usadas para manutenção", a forma correta de indicar isso (para colaboradores e para o MediaWiki) é colocando tais categorias na "Categoria:Manutenção do Wikilivros";
- "!" atrapalha o uso de palavras mágicas como
{{BASEPAGENAME}}nos indexadores e pode gerar a mesma bagunça que há na Wikipédia!
- Elaborar script (e/ou predefinição a incluir em um editnotice do espaço nominal principal) que exiba um aviso de que certo título está usando letras em maiúsculas, informando o editor que isto só deve ser feito no caso de nomes próprios (viraria gadget? Como faria para não incomodar o editor de um livro que tivesse nome próprio no nome? Lista de exceções a ser aumentada com o tempo? Ou aviso discreto, que não deveria ser tanto incômodo se aparecesse sempre?).
- Continuar organização das predefinições:
- Terminar a criação de uma documentação mínima para cada uma (usando a {{Documentação}});
- Mover as Categoria:Predefinições de livros:predefinições de livros para nomes como "Predefinição:NOMEDOLIVRO/Nome da predefinição", categorizá-las como "Categoria:NOMEDOLIVRO/Predefinições" (que por sua vez vão na Categoria:Predefinições de livros), e indexá-las pela subpágina. Ver en:Category:Book-specific templates e en:Category:Java Programming/Templates. Isto permite usara sintaxe {{../Nome da predefinição}} nos livros para chamar versões personalizadas de cada uma, sem precisar de algo caro como as parserfuncions que uso atualmente na predefinição:teorema e demais no mesmo gênero (se bem que esta sintaxe não é muito legal não... é melhor usar o nome completo).
- Atualizar os afluentes da Predefinição:Click (uns 20), pois ela não é mais necessária agora que a sintaxe das imagens permite colocar o link diretamente.
- Documentar a predefinição:explicação, e fazer pequenos ajustes no css e/ou no script, antes de colocar em uso.
- Reativar este aviso assim que concluir a estruturação dos livros do projeto (ver lista do Jorge);
- Inserir caixa de busca para arquivos de uma página, com base no código da predefinição Archives. Exemplo de uso aqui.
- Usar a Predefinição:Categoria do livro nas páginas das categorias que agrupam páginas de um mesmo livro. [Só pra constar: Os afluentes que estiverem no domínio "Categoria" também servirão para contar o número de livros (manualmente). Mas este não é o objetivo...]
Colocar em prática o "jeito Wikisource" de lidar com discussões na esplanada.A Extension:LiquidThreads resolverá nossos problemas de forma muito mais elegante e eficiente! (já está em teste na wiki do planejamento estratégico)- Pensar em como fazer questionários que possam ser impressos, mas sem ter muito trabalho adicional para isso, nem duplicação de código.
- Criar uma Predefinição:Cifra, análoga à Predefinição:Piano. Possivelmente deverá ser usada sprite para a imagem de fundo e as setas (das pestanas).
- Aumentar compatibilidade da Predefinição:Piano com outros navegadores.
- Pensar naquela ideia das informações nutricionais para o livro de receitas. Poderia ser criado um capítulo (ou mais, ou um novo livro) com as informações nutricionais e improvisar as "inclusões de seções" usando parserfuncions, parâmetros e includeonlys...
- Aprimorar faixas para eleitores, com avisos periódicos sobre as votações dos melhores trabalhos;
- Elaborar Gadget (e/ou predefinição) "Dicas rápidas", para os novatos: ela pode fazer um rodízio fornecendo diferentes dicas sobre as dificuldades mais comuns encontradas pelos novatos... E pode ser desabilitada nas preferências...
- Predefinições para citações
- Predefinições a implementar: Citação/Livro, Citação/Paper, etc..
- Expandir a atual {{Referência a livro}}
- #lst, proposta original (no en.wikisource)
- Pensar sobre a possibilidade do uso com as referências bibliográficas, tanto aqui quanto na Wikipédia.... Se bem que essa minha predefinição para {{Classificar}} talvez seja suficiente...

- Pensar sobre a possibilidade do uso com as referências bibliográficas, tanto aqui quanto na Wikipédia.... Se bem que essa minha predefinição para {{Classificar}} talvez seja suficiente...
Atualizar...
- Conferir se é preciso atualizar alguma predefinição, folha de estilos ou script do projeto que tenham sido adaptados de outros lugares.
Bugs
- Se informar sobre o bug que o Master comentou na esplanada quando discutíamos a organização do livro de receitas (que por sinal continua pendente): quando uma pessoa clicar em "próximos 200" na primeira página da categoria:Livro de receitas, a lista seguinte começará no primeiro item que começa com a letra B, e há mais de 200 itens começado com B, se clicar em "próximos 200" não mudará a página e ficará travado no B, tornando as letras posteriores inacessíveis.
- Por em prática a criação de novos espaços nominais: Wikijúnior e Receita, conforme notas do Jorge; Quem sabe também o "Assunto" (análogo do Subject no Wikilivros inglês), para reformular a biblioteca por assunto, usando <Dynamicpagelist>s; Procurar discussão onde comentei sobre isso na esplanada; Conforme mw:Manual:Namespace#Custom namespaces, para configurar espaços nominais adicionais, usa-se a variável mw:Manual:$wgExtraNamespaces. Indicar em mw:Manual:$wgNamespacesWithSubpages quais deverão ter o recurso de subpáginas habilitado. Indicar na mw:Manual:$wgNamespaceAliases os apelidos que serão usados para os espaços nominais. Se formos criar algum espaço nominal que fique bloqueado, será preciso ajustar a mw:Manual:$wgNamespaceProtection (para os 3 propostos, não será de interesse). Para que os novos espaços entrem na contagem do número de artigos ({{NUMBEROFARTICLES}}), é preciso colocá-los na mw:Manual:$wgContentNamespaces. Como atualmente não há páginas começando por Receita e há apenas Wikijúnior começando por Wikijúnior, não haverá conflitos. Para que os novos espaços nominais sejam incluídos por padrão nas pesquisas (para contas de usuários novas), é preciso ajustar mw:Manual:$wgNamespacesToBeSearchedDefault. Para os usuários antigos (nós mesmos) será preciso que seja executado um script para setar a busca por padrão para true (embora possamos mudar isso manualmente, os demais usuários, que passam esporadicamente podem não notar a mudança então seria melhor usar o script) (ou podemos simplesmente colocar um aviso no sitenotice por uns tempos, avisando os visitantes para habilitar as buscas nos novos espaços nominais). Sobre o script, ver mw:Manual:$wgNamespacesToBeSearchedDefault#userOptions.php MediaWiki maintenance script. Bugs relacionados: 1969, 4541, 4691, 7124, 7282, 10694, 12856, 15282.
- Considerar ativação das FlaggedRevs aqui. Ver também esta discussão;
- #lst, proposta original (no en.wikisource)
- Pensar sobre a possibilidade do uso com as referências bibliográficas, tanto aqui quanto na Wikipédia.... Se bem que essa minha predefinição para {{Classificar}} talvez seja suficiente...

- Pensar sobre a possibilidade do uso com as referências bibliográficas, tanto aqui quanto na Wikipédia.... Se bem que essa minha predefinição para {{Classificar}} talvez seja suficiente...
Facilitar a colaboração no Wikilivros
- Criar js para automatizar o processo de criar as autonavs: a partir de uma lista de nomes de páginas (separados por quebras de linha [ou mesmo o próprio índice do livro]), o script poderia muito bem criar os ligações de anterior/posterior, bem como oferecer as opções de barras de navegação existentes (visualmente), etc... Ia ser muito mais fácil...
- Elaborar versão da predefinição:AutoCat como script. Talvez ajude dar uma olhada no en:MediaWiki:Gadget-wkcategorize.js. Vantagem: ao renomear um livro, a categorização pode seria atualizada instantaneamente (ao contrário do que ocorre com o uso de predefinições, que exige uma alteração na página para refletir as novas categorias, se bem que a presença de um bot por aqui resolveria isso...);
- Ler meta:Help:Substitution e tentar elaborar uma versão da predefinição:AutoCat que pudesse ser usada através do código
{{subst:AutoCat}}para gerar apenas os códigos das categorias que devem ser inseridas em um livro. - Aproveitar para pensar em como aprimorar a HotCat para reconhecer que uma página de índice foi deixada sem o indexador ao inserir a categoria.
- Ler meta:Help:Substitution e tentar elaborar uma versão da predefinição:AutoCat que pudesse ser usada através do código
- Fornecer índices remissivos para os livros:
- Concluir os índices remissivos já começados
- Considerar a criação de uma predefinição que use a predefinição:âncora para fazer como no Latex: inserir ao longo do texto "marcações" de quais palavras devem ir para o índice remissivo.
- Isto permitirá a criação de um script para automatizara a criação de índices remissivos: a partir de uma lista dos capítulos que formam um livro, o script acessará o código wiki de cada uma (via API do MediaWiki) e filtrará as chamadas a tal predefinição, criará uma lista de palavras/expressões para cada capítulo e depois irá juntar todas as listas em uma única, contendo a sintaxe dos links para cada âncora que foi marcada ao longo do livro. Vai ser difícil de fazer, e tornará a vida muito simples! (depois de pronto, claro)