Visual Editor
Visual Editor
Ho configurato il VisualEditor e l'editor sorgente ora ha la barra per le scorciatoie.
~ Marco
Re: Visual Editor
Ormai sono troppo abituato all'editor sorgente, ma è senz'altro essere utile per chi voglia iniziare a scrivere guide o estendere quelle esistenti, ma si senta intimorito dalla sintassi di MediaWiki.
Segnalo che le "note" (<ref></ref> e <references/>) non sembrano funzionare, ma ci sono tra le scorciatoie dell'editor testuale e c'è la loro descrizione in aiuto.
Non so se hai provato ad aggiungerle, o è solo rimasta la descrizione. Sarebbero molto utili comunque per risolvere il problema dei link esterni.
Segnalo che le "note" (<ref></ref> e <references/>) non sembrano funzionare, ma ci sono tra le scorciatoie dell'editor testuale e c'è la loro descrizione in aiuto.
Non so se hai provato ad aggiungerle, o è solo rimasta la descrizione. Sarebbero molto utili comunque per risolvere il problema dei link esterni.
Ricordarsi di modificare il primo messaggio della discussione per aggiungere [RISOLTO] prima del titolo, quando conclusa.
Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 12 "bookworm" (PC): installazione, aggiornamento.
Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 12 "bookworm" (PC): installazione, aggiornamento.
Re: Visual Editor
No, bisogna aggiungerle.
Più tardi lo farò. Ho spulciato il manuale di MediaWiki ed ho selezionato alcune estensioni che possono tornare utili.
Una è Extension:Cite che avevo aggiunto ai segnalibri (mi voglio vedere tutte le estensioni incluse nel pacchetto standard). Per fortuna cite è inclusa nel pacchetto MediaWiki quindi non serve scaricare files aggiuntivi.
Grazie della segnalazione
Più tardi lo farò. Ho spulciato il manuale di MediaWiki ed ho selezionato alcune estensioni che possono tornare utili.
Una è Extension:Cite che avevo aggiunto ai segnalibri (mi voglio vedere tutte le estensioni incluse nel pacchetto standard). Per fortuna cite è inclusa nel pacchetto MediaWiki quindi non serve scaricare files aggiuntivi.
Grazie della segnalazione
~ Marco
Re: Visual Editor
Cite è stato aggiunto
Tra le altre estensioni incluse in mediawiki abbiamo
https://www.mediawiki.org/wiki/Extension:CategoryTree
https://www.mediawiki.org/wiki/Extension:ImageMap
https://www.mediawiki.org/wiki/Extension:InputBox
https://www.mediawiki.org/wiki/Extension:Poem
https://www.mediawiki.org/wiki/Extension:Scribunto
https://www.mediawiki.org/wiki/Extensio ... xHighlight
https://www.mediawiki.org/wiki/Extension:TemplateData
https://www.mediawiki.org/wiki/Extension:PdfHandler
https://www.mediawiki.org/wiki/Extension:SpamBlacklist
https://www.mediawiki.org/wiki/Extension:TitleBlacklist
https://www.mediawiki.org/wiki/Extension:PageImages
https://www.mediawiki.org/wiki/Extension:Gadgets
https://www.mediawiki.org/wiki/Extensio ... tionUpdate
https://www.mediawiki.org/wiki/Extensio ... ediaViewer
https://www.mediawiki.org/wiki/Extension:OATHAuth
https://www.mediawiki.org/wiki/Extensio ... eLinkFixer
https://www.mediawiki.org/wiki/Extension:TextExtracts
Cosa può esserci utile?
Tra le altre estensioni incluse in mediawiki abbiamo
https://www.mediawiki.org/wiki/Extension:CategoryTree
https://www.mediawiki.org/wiki/Extension:ImageMap
https://www.mediawiki.org/wiki/Extension:InputBox
https://www.mediawiki.org/wiki/Extension:Poem
https://www.mediawiki.org/wiki/Extension:Scribunto
https://www.mediawiki.org/wiki/Extensio ... xHighlight
https://www.mediawiki.org/wiki/Extension:TemplateData
https://www.mediawiki.org/wiki/Extension:PdfHandler
https://www.mediawiki.org/wiki/Extension:SpamBlacklist
https://www.mediawiki.org/wiki/Extension:TitleBlacklist
https://www.mediawiki.org/wiki/Extension:PageImages
https://www.mediawiki.org/wiki/Extension:Gadgets
https://www.mediawiki.org/wiki/Extensio ... tionUpdate
https://www.mediawiki.org/wiki/Extensio ... ediaViewer
https://www.mediawiki.org/wiki/Extension:OATHAuth
https://www.mediawiki.org/wiki/Extensio ... eLinkFixer
https://www.mediawiki.org/wiki/Extension:TextExtracts
Cosa può esserci utile?
~ Marco
Re: Visual Editor
Ma Scribunto è stata messa e poi tolta? Si può rimettere?
CategoryTree fu attivata da pmate ma c'erano problemi e crash, non so se hanno risolto ma non era molto utile.
Cite è utile.
Le altre non le ho viste ma eviterei per il momento il JS se non si può farne a meno a causa di potenziali problemi di sicurezza. Altre estensioni immagino che vadano a caricare troppo il server (tipo la conversione in pdf) ma non saprei.
CategoryTree fu attivata da pmate ma c'erano problemi e crash, non so se hanno risolto ma non era molto utile.
Cite è utile.
Le altre non le ho viste ma eviterei per il momento il JS se non si può farne a meno a causa di potenziali problemi di sicurezza. Altre estensioni immagino che vadano a caricare troppo il server (tipo la conversione in pdf) ma non saprei.
Re: Visual Editor
Io non la ho mai installato. Non serve ad eseguire Lua all'interno delle pagine MediWiki? Ci serve? Se ci serve la installiamo, altrimenti potrebbe essere una possibile falla di sicurezza, forse più di JS.
Effettivamente non abbiamo categorie così annidate.
I cookies di autenticazione dovrebbero essere settati HttpOnly, quindi "abbastanza al sicuro" da XSS. Tra l'altro il rischio maggiore è per gli account da amministrazione.
Al momento non mi sembra ci siano criticità di questo tipo, però se non servono le considererei dannose
~ Marco
Re: Visual Editor
Per Cite si potrebbe disporre uno script di conversione in modo che tutti i link esterni gestiti in passato manualmente (con uso di <sup> e link a sezioni della stessa pagina) facciano uso della nuova estensione.
Questa dovrebbe essere la guida più complessa, quindi se si riesce con questa, per tutte le altre non dovrebbero esserci problemi.
Bisogna individuare la prima occorrenza di "<sup>[[#Collegamenti esterni | [N]]]</sup>" e sostituirlo con la riga "[N] ..." a fondo pagina tra <ref name="idN">...</ref>, e sostituire le eventuali ulteriori occorrenze dello stesso link con <ref name="idN"/>. E ripetere il tutto per ogni link N. Infine rimuovere tutte le righe dalla sezione, che dovrebbe essere generata automaticamente (o scrivendo esplicitamente <references/>).
Per pagine complesse però come quella già citata, potrebbe essere preferibile dividere i link in diverse sottosezioni con uso di group, quindi anche se si può usare come prova per lo script, penso dovrebbe essere modificata comunque a mano per favorirne la leggibilità il più possibile.
Ci sarà infine anche da aggiornare le linee guida del Wiki, per trattare Cite.
--- --- ---
Per Scribunto non mi pronuncio: potrebbe essere utile per i template più complessi, e sicuramente più leggibile del codice MediaWiki, ma ignoro se sia sicuro o meno.
Per le altre estensioni direi anch'io che possiamo farne a meno.
Questa dovrebbe essere la guida più complessa, quindi se si riesce con questa, per tutte le altre non dovrebbero esserci problemi.
Bisogna individuare la prima occorrenza di "<sup>[[#Collegamenti esterni | [N]]]</sup>" e sostituirlo con la riga "[N] ..." a fondo pagina tra <ref name="idN">...</ref>, e sostituire le eventuali ulteriori occorrenze dello stesso link con <ref name="idN"/>. E ripetere il tutto per ogni link N. Infine rimuovere tutte le righe dalla sezione, che dovrebbe essere generata automaticamente (o scrivendo esplicitamente <references/>).
Per pagine complesse però come quella già citata, potrebbe essere preferibile dividere i link in diverse sottosezioni con uso di group, quindi anche se si può usare come prova per lo script, penso dovrebbe essere modificata comunque a mano per favorirne la leggibilità il più possibile.
Ci sarà infine anche da aggiornare le linee guida del Wiki, per trattare Cite.
--- --- ---
Per Scribunto non mi pronuncio: potrebbe essere utile per i template più complessi, e sicuramente più leggibile del codice MediaWiki, ma ignoro se sia sicuro o meno.
Per le altre estensioni direi anch'io che possiamo farne a meno.
Ricordarsi di modificare il primo messaggio della discussione per aggiungere [RISOLTO] prima del titolo, quando conclusa.
Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 12 "bookworm" (PC): installazione, aggiornamento.
Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 12 "bookworm" (PC): installazione, aggiornamento.
Re: Visual Editor
Forse può essere utile https://www.mediawiki.org/wiki/Extensio ... xHighlight per l'evidenziazione della sintassi degli script le altre le ho viste non credo ci servano.
~ Marco
Re: Visual Editor
In effetti sì, e mi era sfuggito che SyntaxHighlight supporta anche bash. Quindi potrebbe essere utile per le guide che riportano degli script.
Ricordarsi di modificare il primo messaggio della discussione per aggiungere [RISOLTO] prima del titolo, quando conclusa.
Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 12 "bookworm" (PC): installazione, aggiornamento.
Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 12 "bookworm" (PC): installazione, aggiornamento.
Re: Visual Editor
Allora per Scribus aspetto S3v, ho visto che ha creato un Modulo:Autori Lua.
Più tardi provo a mettere SyntaxHighlight.
Più tardi provo a mettere SyntaxHighlight.
~ Marco
Re: Visual Editor
JavaScript viene eseguito sui browser degli utenti e l'estensione Gadget preleva codice JavaScript esterno e lo inietta nella pagina web; la sicurezza possibilmente a rischio è quella degli utenti.
L'interprete Lua viene eseguito lato server e non ci sono problemi di sicurezza conosciuti che non possano essere evitati con l'applicazione di una normale politica di aggiornamento dei pacchetti.
Gli script Lua sono utili per semplificare la scrittura, il mantenimento e l'aggiornamento dei template.
Inoltre rendono più facile la vita agli utenti in quanto molte informazioni da fornire ai template "dall'esterno" possono essere ricavate automaticamente.
Il modulo Autori_Lua evita il passaggio dell'argomento "Numero_revisori" al template, per cui chi verifica una guida ha un parametro in meno da specificare.
L'interprete Lua viene eseguito lato server e non ci sono problemi di sicurezza conosciuti che non possano essere evitati con l'applicazione di una normale politica di aggiornamento dei pacchetti.
Gli script Lua sono utili per semplificare la scrittura, il mantenimento e l'aggiornamento dei template.
Inoltre rendono più facile la vita agli utenti in quanto molte informazioni da fornire ai template "dall'esterno" possono essere ricavate automaticamente.
Il modulo Autori_Lua evita il passaggio dell'argomento "Numero_revisori" al template, per cui chi verifica una guida ha un parametro in meno da specificare.
Re: Visual Editor
Esattamente, ma se non sbaglio i gadget vanno attivati manualmente (comunque non penso serva l'estensione gadget).
Me la devo studiare bene, soprattutto credo sia saggio impedire l'uso del plugin a tutti gli utenti (non vorrei che tutti fossero in grado di mettere codice a piacere).
Sicuramente essendo stato inserito tra i plugin di default di MediaWiki devono averlo reputato abbastanza sicuro, ma come viene gestita la memoria (per esempio uno modifica lo script che carica un vettore di lunghezza sempre maggiore su un template comune a molte pagine, ci manda mezzo wiki offline perché PHP finisce la memoria), probabilmente si può ridurre ulteriormente l'uso della memoria a lua, però è delicato. Gira in sandbox, ma a cosa si da accesso?
Quanti template gioverebbero di questo? Sicuramente il template autori, poi?
Dai penso che dopo il 25 sia in grado di guardarmelo e lo attivo assieme a geshi (se hai link ulteriori oltre la pagina di help di MediaWiki sono benvenuti ), se lo ha attivato Wikipedia deve essere sicuro.
Comunque forse ho capito perché è impossibile attivare gzip sul wiki
https://m.mediawiki.org/wiki/Topic:Vzxi8uroe2eo23gk
~ Marco
Re: Visual Editor
Allora ho un problema. Se commento la riga 1073 in includes/MediaWiki.php, cioè
La compressione gzip funziona perfettamente. Ora bisogna capire dove sia il problema
Se qualcuno di voi anche può darci uno sguardo sarebbe fantastico.
Nel frattempo ho aggiunto il plugin per evidenziare la sintassi e modificato la pagina di aiuto
https://guide.debianizzati.org/index.ph ... _con_GeSHi
probabilmente bisogna rivedere la tabella che ho fatto (in particolare la larghezza delle colonne).
Bisognerà anche aggiungere la modifica per cite. Nel frattempo mi studio Scribunto
Codice: Seleziona tutto
apache_setenv( 'no-gzip', '1' );
Se qualcuno di voi anche può darci uno sguardo sarebbe fantastico.
Nel frattempo ho aggiunto il plugin per evidenziare la sintassi e modificato la pagina di aiuto
https://guide.debianizzati.org/index.ph ... _con_GeSHi
probabilmente bisogna rivedere la tabella che ho fatto (in particolare la larghezza delle colonne).
Bisognerà anche aggiungere la modifica per cite. Nel frattempo mi studio Scribunto
~ Marco
Re: Visual Editor
Ho installato Scribunto. Funziona tramite php-luasandbox. Ho impostato massimo 10MB e 3 secondi di esecuzione per gli script LUA. Forse sono anche troppi.
Ho dovuto cancellare e ricreare la pagina per farla vedere come modulo LUA.
@S3v quando hai tempo controlla che funzioni tutto a dovere
Ho dovuto cancellare e ricreare la pagina per farla vedere come modulo LUA.
@S3v quando hai tempo controlla che funzioni tutto a dovere
~ Marco
Re: Visual Editor
Di seguito questo codice un po' schifoso (il mio javascript è molto arrugginito e in fondo ha solo utilità temporanea), quando usato con Greasemonkey (ovviamente abilitandolo su https://guide.debianizzati.org/*), aggiunge un pulsante "Update links!" nelle guide Wiki che fanno uso della vecchia sintassi per i link esterni, permettendone l'aggiornamento automatico con uso della nuova estensione Cite (soltanto se si utilizza "Modifica sorgente").
Non c'è alcun controllo su caratteri speciali e tutto è tagliato e incollato "brutalmente" ma, se tutto è stato scritto correttamente, non dovrebbero esserci problemi. Su "Installazione Debian" ha funzionato (anche se non ho salvato le modifiche, l'ho fatto solo come test personale essendo la guida più complessa con link esterni, perché penso sia meglio intervenirvi manualmente con i gruppi, per non perdere i raggruppamenti tra i vari link).
Codice: Seleziona tutto
var pattern_url = /\n *\[[0-9]+\][^\n]*/
var pattern_link = /<sup>[^<]*\| *\[[0-9]+\] *\]\] *<\/sup>/
function replace_links() {
var textArea = document.getElementById("wpTextbox1");
var text = textArea.value;
var result = pattern_url.exec(text);
var newStr = "<references/>";
var values = [];
var valueIsAlreadyUsed = [];
while (result != null) {
var str = result.toString();
var l = str.indexOf("[") + 1;
var r = str.indexOf("]", l);
var num = str.substring(l, r);
var e = str.indexOf("<br");
if (e == -1)
values[num] = str.substring(r + 1);
else
values[num] = str.substring(r + 1, e);
valueIsAlreadyUsed[num] = false;
text = text.replace(result, newStr);
newStr = "";
result = pattern_url.exec(text);
}
result = pattern_link.exec(text);
while (result != null) {
var str = result.toString();
var l = str.indexOf("|") + 1;
l = str.indexOf("[", l) + 1;
var r = str.indexOf("]", l);
var num = str.substring(l, r);
if (valueIsAlreadyUsed[num]) {
text = text.replace(result,"<ref name=\"id" + num + "\"/>");
} else {
valueIsAlreadyUsed[num] = true;
text = text.replace(result,"<ref name=\"id" + num + "\">" + values[num] + "</ref>");
}
result = pattern_link.exec(text);
}
textArea.value = text;
var button = document.getElementById("replace_links_button");
button.parentNode.removeChild(button);
alert("Done!");
}
var textArea = document.getElementById("wpTextbox1");
if (textArea != null && pattern_url.exec(textArea.value) != null && pattern_link.exec(textArea.value) != null) {
var divId = document.getElementById("mw-content-text");
var newButton = document.createElement("input");
newButton.setAttribute("type", "button");
newButton.setAttribute("id", "replace_links_button");
newButton.setAttribute("name", "replace_links");
newButton.setAttribute("value", "Update links!");
newButton.onclick = replace_links;
divId.insertBefore(newButton, divId.childNodes[0]);
}
Ricordarsi di modificare il primo messaggio della discussione per aggiungere [RISOLTO] prima del titolo, quando conclusa.
Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 12 "bookworm" (PC): installazione, aggiornamento.
Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 12 "bookworm" (PC): installazione, aggiornamento.