Usuario:RizoBot/z.Categorizar Userboxes

De Wikipedia, la enciclopedia libre

Crear categorías y categorizar userboxes[editar]

¿Puede algún BOT categorizar los userboxes de acuerdo a la clasificación de los userboxes que ya existe?
Ya existen algunas categorías, pero la mayoría de los userboxes están sin categorizar, o cuelgan de la genérica Categoría:Wikipedia:Plantillas_de_wikipedistas.

Para arreglarlo, algún BOT debería crear las categorías que se listan en la clasificación de los userboxes, y proceder a la categorización de todos los userboxes que aparecen en la mencionada lista.--Rizome (discusión) 00:53 13 jun 2009 (UTC)

How to[editar]

Si no estoy equivocado, se acordó que los userboxes no deberían categorizar a los usuarios que los usan (salvo propósito enciclopédico, como "usuarios por país" o "usuarios por idioma") Por ese motivo, cuando se aplicase la categoría al userbox, debería de hacerse mediante <noinclude>[[Categoría:...]]</noinclude>

En cuanto a programación de bots en la wikipedia... ni idea. Ni sé cuál es el fundamento de su funcionamiento, ni qué pueden y no pueden hacer. Pero por lo que conozco de programación, y de user-scripts, podría hacerte un esquema de lo que pido.

PRIMERO. Se indexa la página donde se listan los tipos de userboxes Usuario:Userbox#Lista_de_userboxes, y se obtiene el árbol:

Este paso podría hacerse a mano, para proveer una lista de texto plano («lista inicial»), del arbol de las categorías, y de las páginas que listan cada tipo. Si este es el caso, podría hacerla yo, si se me dice qué formato debería tener.
El formato propuesto es:

* Categoría de primer nivel (la única es: [[Categoría:Wikipedia:Plantillas_de_wikipedistas]])
** Categorías de segundo nivel (son 7: Idioma_y_ubicación,Wikipedia,Intereses,Informática,Vida,Ideas y Otras)
*** Categorías de tercer nivel → «página asociada» a la categoría de tercer nivel, donde se listan los userboxes.

SEGUNDO. Con la «lista inicial», el bot haría:

  1. crear las categorías de segundo nivel, y les aplica la categoría [[Categoría:Wikipedia:Plantillas_de_wikipedistas]].
  2. crear las categorías de tercer nivel, y les aplica la categoría de segundo nivel a la que pertenecen.
  3. entrar en la «página asociada» a la categoría de tercer nivel, e indexar todos los userboxes que se listan en dicha página (regExp).
    1. Así puede ampliar la «lista inicial» de categorías/página, con todos los userboxes de cada página, obteniendo una («lista ampliada»).
    2. Ahora entra en cada userbox de la «lista ampliada», y:
      1. Busca una etiqueta de [[Categoría:...]], si está bajo <noinclude>, continúa, en caso contrario, la pone bajo <noinclude>, para cumplir con la política: "No categorizar a los usuarios, si no es con proposito enciclopédico".
      2. Busca una etiqueta de [[Categoría:...]], si ésta es igual a la de primer nivel (caso de la mayoría de los userboxes actualmente), o bienes una de segundo nivel, se elimina la [[Categoría:...]] para seguir la política: "No categorizar una página bajo una categoría [[Categoría:A]] y [[Categoría:Padre_de_A]] al mismo tiempo".
      3. Busca una etiqueta de <noinclude>, si no la encuentra, la añade al final del código del userbox.
      4. A continuación, se describe unos pasos opcionales, si no se pretenden ejecutar, pasar a 3.2.8
        Estos pasos sólo pretenden seguir el estándard de {{documentación de plantilla}}, pero no es necesario hacerlo para una correcta categorización.
        También existe la posibilidad de dejar estos pasos para otro bot, o para otra futura revisión
        .
      5. Busca una etiqueta de {{documentación de plantilla}}, si la encuentra, y no está bajo <noinclude>, la pone bajo él.
      6. Busca una etiqueta de {{documentación de plantilla}}, si la encuentra busca una etiqueta busca una etiqueta de [[Categoría:...]], y si la encuentra, la selecciona, y la corta (Crtl+X).
      7. Busca una etiqueta de {{documentación de plantilla}}, si la encuentra entra en la documentación, que estará en: [[ruta_userbox/doc]]
        1. Busca una etiqueta de [[Categoría:...]], si está bajo <includeonly>, continúa, en caso contrario, la pone bajo <includeonly>.
        2. Busca una etiqueta de <includeonly>, si no la encuentra, la añade al final del código de la documentación en cuestión.
        3. Busca una etiqueta de <includeonly>, y pega la [[Categoría:...]], que había cortado –si acaso lo había hecho– (Crtl+V).
        4. Busca una etiqueta de <includeonly>, y añade al final de ella, la categoría a la que pertenece el userbox en cuestión.
        5. fin del buclevuelve a 3.2
      8. fin de la parte opcional.
      9. Busca una etiqueta de <noinclude>, y añade al final de ella, la categoría a la que pertenece el userbox en cuestión.
      10. fin del buclevuelve a 3.2

FIN. Ahora los userboxes estarían correctamente categorizados.

Vaya... me extendí un montón.
A ver si conseguimos ordenar los userboxes... que actualmente... están echos un desastre. --Rizome (discusión) 21:53 14 jun 2009 (UTC)