¿Eres administrador o solo moderador? Si eres administrador, probablemente podrías crear un componente de tema en lugar de depender de un script de usuario.
Dicho esto, para sitios en los que no puedes editar el código, los scripts de usuario siguen siendo una solución interesante para varias mejoras.
Los uso para muchos sitios web.
En meta.discourse.org, tengo uno que agrega un atajo de Ctrl+Shift+k para rodear mi texto seleccionado con etiquetas <kbd> dentro del compositor ![]()
// ==UserScript==
// @name Atajo de <kbd> para meta.discourse.org
// @namespace Violentmonkey Scripts
// @version 1.0
// @description Inserta etiquetas <kbd> en textareas en meta.discourse.org con Ctrl + Shift + k
// @author chatGPT
// @match https://meta.discourse.org/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
document.addEventListener('keydown', function(event) {
if (event.ctrlKey && event.shiftKey && event.key === 'K') {
const activeElement = document.activeElement;
if (activeElement.tagName === 'TEXTAREA' && activeElement.classList.contains('ember-text-area')) {
const start = activeElement.selectionStart;
const end = activeElement.selectionEnd;
const text = activeElement.value;
const insertText = '<kbd>';
const closeText = '</kbd>';
const selectedText = text.slice(start, end);
activeElement.value = text.slice(0, start) + insertText + selectedText + closeText + text.slice(end);
const cursorPosition = end === start
? start + insertText.length
: start + insertText.length + selectedText.length + closeText.length;
activeElement.selectionStart = activeElement.selectionEnd = cursorPosition;
event.preventDefault();
}
}
});
})();
Además, no uso Tampermonkey ya que es de código cerrado, prefiero usar software de código abierto, y hay varios contendientes (todos se ven iguales y los scripts son compatibles entre sí). Creo que el más utilizado es Violentmonkey.