Discussioni MediaWiki:Gadget-tradLink.js

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

#wpTextbox1

[modifica wikitesto]

[@ Daimona Eaytoy] Sono anni che a me questo gadget non funziona. Ora, preso dalla curiosità, sono andato a spizzare un po' il codice. Il problema dovrebbe essere che l'event listener è applicato all'elemento corrispondente al selettore #wpTextbox1, ma nel mio DOM non è presente alcun elemento con id "wpTextbox1". Tu sai di cosa si tratta? --Horcrux (msg) 22:57, 25 mag 2022 (CEST)[rispondi]
P.S. Curiosamente, se scrivo solo "wpTextbox1" come titolo di questa discussione, l'id apparirà (per via dell'anchor) e causando vari problemi grafici.

[@ Horcrux] #wpTextbox1 è la textarea principale usata per la modifica delle voci (con l'editor wikitesto, si intende). Non sono sicuro al 100% se venga usata da tutti gli editor, e so per certo che in alcuni casi (ad esempio se hai attiva l'evidenziazione della sintassi) la textarea in questione viene nascosta e sostituita da altro. Confermi che quando modifichi una pagina l'elemento non c'è proprio? Riguardo al titolo della sezione, in effetti il bug risultante è piuttosto divertente. Immagino che non possa essere evitato del tutto, ma perlomeno il codice che aggiunge quella roba dovrebbe verificare se l'utente è perlomeno in modalità di modifica. --Daimona Eaytoy (Scrivimi!) 00:15, 26 mag 2022 (CEST)[rispondi]
[@ Daimona Eaytoy] Ah, ho capito! Quando apro l'editor in effetti appare, e l'accessorio funziona solo se si disabilita l'evidenziazione della sintassi. Per il momento può andar bene così, a meno che non ti venga un modo per perfezionarlo. Grazie mille!
Riguardo invece il settaggio del gadget (Alt+0), perché lo mettiamo in ascolto solo nel riquadro #wpTextbox1? Non si potrebbe attivarlo sull'intero document, in modo che le impostazioni siano modificabili in ogni momento? --Horcrux (msg) 09:23, 26 mag 2022 (CEST)[rispondi]
[@ Horcrux] In teoria per supportare CodeMirror occorre aggiungere il seguente codice:
mw.hook( 'ext.CodeMirror.switch' ).add( ( enabled, $editor ) => {
	// ...
} );
Il parametro $editor è la textarea usata per l'evidenziazione della sintassi, e dovrebbe essere sufficiente installare i vari listener su quella. Sul rendere le impostazioni sempre modificabili, direi che non c'è problema. --Daimona Eaytoy (Scrivimi!) 12:18, 26 mag 2022 (CEST)[rispondi]