MassEdit es una herramienta de edición masiva y automatización de tareas escrita en JavaScript compatible con ES5 para usar en wikis que se ejecutan en la plataforma heredada MediaWiki 1.19 de Wikia y en la plataforma comunitaria unificada MediaWiki 1.33. Su desarrollo se inspiró en el deseo de hacer que las capacidades de edición masiva del software bot dedicado como AutoWikiBrowser y Pywikibot y las capacidades en el editor de FindAndReplace estén más disponibles para el colaborador promedio.
Ejecutado como una aplicación en el navegador, MassEdit brinda a los usuarios la capacidad de automatizar tareas de edición y mantenimiento que de otro modo serían tediosas. Puede crear un nuevo conjunto de páginas/plantillas/categorías, agregar o eliminar contenido de páginas existentes, categorizar o recategorizar páginas en masa, buscar y reemplazar contenido seleccionado de páginas a voluntad, enviar mensajes a los usuarios, generar listas de páginas de miembros que pertenecen a categorías o espacios de nombres, o generar listados de páginas que incluyan determinadas plantillas. Además de proporcionar una lista de páginas sueltas, los usuarios también pueden introducir los nombres de categorías o espacios de nombres para editar sus respectivas páginas de miembros de forma masiva.
A partir de sus actualizaciones más recientes, el script emplea una serie de otras dependencias externas alojadas de manera similar en Dev. Además de cargarse de forma predeterminada en MediaWiki, MassEdit hace uso de Modal.js, Placement.js, I18n-js, Colors.js y WgMessageWallsExist con el propósito de estandarizar el diseño modal y proporcionar un soporte i18n más completo. Debido al potencial de abuso en forma de vandalismo o spam, la aplicación solo puede ser utilizada por personal local de alto nivel (es decir, administradores, moderadores y bots) y una variedad de grupos globales.
Instalación[]
Configuración[]
Ciertos elementos del script MassEdit pueden configurarse a gusto de sus usuarios mediante la inclusión de una variable window
llamada window.MassEditConfig
. Aunque los usuarios son libres de ajustar el intervalo en el que el script edita las páginas, las tasas más rápidas que los límites impuestos a los usuarios y bots se ajustarán a los intervalos máximos internos de 1500 ms para los usuarios y 750 ms para los bots. Los usuarios también pueden modificar la ubicación predeterminada del botón "MassEdit" utilizado para abrir el modal y comenzar a usar el script. Como este script es compatible con todas las ubicaciones de elementos aprobados de Placement.js, los usuarios pueden enumerar cualquier ubicación de ubicación admitida como ubicación de botón predeterminada de MassEdit; consulte Ubicaciones aprobadas de la ubicación para obtener más detalles.
A continuación, se muestra un objeto de configuración de ejemplo:
window.MassEditConfig = {
interval: 2500,
placement: {
element: "toolbar",
type: "append"
}
};
Variables | Tipo de dato | Valor(es) predeterminado(s) |
---|---|---|
interval
|
Numérico | 1500 (750 para bots)
|
placement.element
|
Cadena | "tools"
|
placement.type
|
Cadena | "prepend"
|
Uso general[]
Además del uso estándar de las opciones "anteponer" y "agregar" para editar el contenido de las páginas existentes, estas opciones pueden usarse indistintamente para crear un conjunto de nuevas páginas basadas en los valores ingresados del área de texto de las páginas. Al seleccionar cualquiera de las opciones e ingresar títulos de página de páginas inexistentes, se crean estas páginas automáticamente, lo que permite un medio rápido y eficiente de publicar nuevos artículos a partir de una plantilla o extracto de texto.
Además, aunque la función de buscar y reemplazar se puede usar para localizar y reemplazar wikitexto, HTML o texto sin formato de artículos existentes, también se puede usar para eliminar contenido de páginas. Dejar el campo "Contenido nuevo" en blanco se cuenta como una cadena vacía, lo que permite eliminar el contenido del campo "Contenido objetivo" de los artículos en cuestión.
Los usuarios también tienen la posibilidad de editar/eliminar/reemplazar contenido de páginas en un conjunto de categorías ingresadas. Al seleccionar la opción desplegable "Categorías" e incluir los nombres de las categorías en el área de texto, se editan todas las páginas existentes actualmente en la categoría. (Nota: los títulos de categoría pueden incluirse como Categoría: Categoría de ejemplo o simplemente como Categoría de ejemplo).
Además de la edición anterior basada en categorías, los usuarios también pueden editar páginas que pertenecen a ciertos espacios de nombres legítimos, separando los números de espacios de nombres individuales (0
para el espacio de nombres principal, 4
para el espacio de nombres del proyecto, etc.) por saltos de línea, según las instrucciones de uso estándar.
Los usuarios también pueden utilizar la función de generación de listados para recopilar listados de páginas que incluyan plantillas seleccionadas. Al igual que con las categorías y los espacios de nombres, se pueden incluir múltiples plantillas incrustadas como entrada en líneas separadas, y todas las entradas duplicadas hacen uso de varias plantillas de entrada eliminadas antes de la clasificación y visualización.
Registro de cambios[]
- 04-10-21
- UCP update 4; removal of legacy MW 1.19 code, reinstitution of limited messaging functionality for UCP Message Walls
- 20-10-20
- Patch to address Fandom-side API bug related to comment section protection on UCP wikis
- 20-09-20
- UCP update 3; bug fixes to
ModalButton
enable/disable toggling, adjustments to modal assembly mechanism - 26-08-20
- UCP update 2: addition of Colors dependency, further updates to make basic functionality available on UCP wikis
- 05-07-20
- Improvements to dependency loader
init.load
, minor bug fixes - 01-07-20
- Initial experiments in drafting extendable, UCP-friendly dependency-loading framework, pending UCPification of Dev dependencies or importation of legacy functionality like
importArticle(s)
and ResourceLoader modules likeext.wikia.LinkSuggest
- 27-06-20
- Organizational restructuring for enhanced readability, improvements to module/dependency loading, addition of
exports
object towindow.dev.massEdit
to expose public debugging methods, minor bug fixes to user messaging functionality - 18-06-20
- Minor patching to handle ArticleComments extension edge cases, addition of
TESTING
constant for testing API methods without actually editing page content - 28-05-20
- Refactor of find-and-replace functionality to accept user-input regex; refactor of scene-generation mechanism to lazy-initialize interfaces only when needed; addition of
localStorage
caching for scenes - 03-04-20
- Addition of functionality to generate listings of template transclusions via Embeddedin; addition of functionality to remove duplicate entries from listings prior to Quicksorting
- 08-10-19
- Expansion using WgMessageWallsExist to offer mass-messaging functionality; addition of category member page generation functionality per MassNullEdit; modal redesign and code expansion/alterations
- 20-09-19
- Addition of functionality to replace only specific occurrences of a replacement target; addition of case sensitive/insensitive matching for find-and-replace; minor code alterations
- 18-09-19
- Minor rewrite using Placement and Modal; addition of rudimentary pause/resume functionality,
query-continue
handling for categories/namespaces containing over 5000 member pages, and jQuerylinksuggest
. - 24-05-18
- Removal of static config-based edit summary in favor of modal-based summary textbox; assorted cosmetic and improper input behavior fixes
- 17-04-18
- Addition of namespace-based editing/find-and-replace function
- 12-04-18
- Addition of category-based editing/find-and-replace function
- 07-01-18
- Addition of find-and-replace function for set of pages; improved/expanded error handling for nonexistent pages, empty input fields, and pages without target text; general cleanup
- 18-12-17
- Retrofitting of I18n-js, addition of "find-and-delete" option, addition of config options, cleanup
- 06-02-17
- Revision of regex, removal of character limit
- 05-02-17
- Initial revision