Progetto:Trascrizioni/newThumbs

Da Wikisource.

Introduzione[modifica]

Il progetto newThumbs (ottobre 2014) ha lo scopo di permettere una visione complessiva di un testo, creando una galleria delle immagini di tutte le pagine e aggiungendo ad ogni immagine alcuni dati e uno o più link, che ne permettano l'edit immediato. Il risultato è un ambiente di edit alternativo e complementare al normale ambiente di edit, orientato alla revisione rapida del codice delle pagine.

Si compone di due elementi:

  1. la galleria delle immagini e i comandi per generarla;
  2. l'ambiente di edit delle pagine

Il gadget che attiva l'applicazione è newThumbs, in Preferenze > Accessori, nella sezione "Strumenti di emulazione e sperimentali".

Dipendenze
Richiede che siano attivati anche la Libreria di funzioni comuni, gli Strumenti per la rilettura, la Raccolta dei giocattoli e Diacritici (quest'ultimo permette di ottenere rapidamente un sacco di lettere accentate "strane" senza la necessità di aprire "Caratteri speciali").
Appunti tecnici
In questa pagina, rigorosamente in ordine random.

Creazione della galleria delle immagini[modifica]

La galleria delle immagini viene creata dinamicamente in un box (un popup) delle pagine Indice con un click sull'icona che compare nell'header delle pagine Indice. Alla pagina Indice si sovrappone una schermata grigia, in cui viene caricata la galleria delle immagini. Il primo caricamento è abbastanza lento; i successivi caricamenti sono molto rapidi. Per uscire dall'ambiente basta ricaricare la pagina Indice1

Dati e comandi associati alle immagini[modifica]

Ad ogni immagine è associato un link alla pagina corrispondente; nel link compare sia il numero di pagina djvu, che il numero/identificatore della pagina del libro, generato da pagelist (fra parentesi).

E' anche associato un link sotto il comando Modifica; si attiva con doppio click su Modifica.

Attivazione, funzionamento e uscita da Modifica[modifica]

Il doppio click su Modifica apre l'ambiente di edit costituito da un box di edit del testo della pagina e da una copia in dimensioni leggibili della pagina2.

Il tasto Annulla nel box di edit rimuove il box e l'immagine e riporta nella galleria.

Il box di edit[modifica]

Il box di edit è composto da una barra di navigazione e da tre aree di edit analoghe a quelle del normale ambiente di edit delle pagine (header, corpo della pagina, footer).

Nella barra di navigazione, a destra compaiono i quattro pulsanti per le azioni generali e i radiobutton per il SAL, a sinistra una raccolta espandibile di bottoni collegati a tool di edit3.

Le azioni generali sono:

Salva
salva gli edit della pagina ed apre automaticamente la pagina successiva
Annulla
esce dall'ambiente di edit e riporta alla galleria
Pagina precedente (freccetta a sinistra)
porta alla pagina precedente senza salvare
Pagina successiva (freccetta a destra)
porta alla pagina successiva senza salvare

I radiobutton per il SAL sono del tutto analoghi a quelli usuali; il bottone per SAL 100% compare solo se la modifica è autorizzata ossia se la pagina ha un SAL 75% e l'utente è diverso da quello che l'ha portata a SAL 75%.

I bottoni per le azioni di edit sono quelli essenziali per l'edit facilitato; l'ambiente è spartano e manca il toolbox, il menu di edit di Vector e gli strumenti per la rilettura; compaiono quindi bottoni anche per azioni molto comuni come il corsivo e il maiuscolo.

Tuttavia gli Strumenti per la rilettura sono attivati in sottofondo e possono essere richiamati con le combinazioni di tasti previste (es. Alt+7 per richiamare postOCR, oppure Alt+6 per "aggiustare i paragrafi" o Alt+8 per "unire le righe di un paragrafo")

  1. Quanto prima verranno aggiunti pulsanti di comando per la chiusura ed eventuale ridimensionamento del box
  2. Al momento non sono montati strumenti per l'ingrandimento o lo scorrimento della pagina. Inoltre il box di edit e l'immagine andranno inseriti su uno "strato di fondo" opaco quasi completamente opaco, perchè la sottostante pagina (la galleria) crea confusione. In questo strato c'è lo spazio per inserire un titolo, brevissime istruzioni, e ulteriori bottoni/link/tool.
  3. I bottoni dei tool sono strettamente analoghi per funzionamento, ma non identici, ai bottoni del tool Bottoniera; al momento non sono personalizzabili dal'utente

Alcuni screenshot[modifica]

Come appare la pagina Indice previa attivazione del gadget newThumbs


Il click sull'icona visualizza la galleria delle immagini delle pagine


Il doppio click sulla scritta Modifica di una pagina apre il box di edit (sinistra) e l'immagine della pagina (a destra)


La barra di navigazione / di edit attuale[modifica]

A destra i comandi di navigazione e i radiobutton per il SAL; a sinistra i bottoni per i tool di edit


I pulsanti richiamano le seguenti funzioni newButtonx:

* newButtonx("„“","Virgolette("„","“")","Virgolette tipo „“");
* newButtonx("i", "incapsula(mw.corsivo,mw.corsivo)", "Applica markup corsivo");
* newButtonx("b", "incapsula(mw.grassetto,mw.grassetto)", "Applica markup grassetto");
* newButtonx("↔", "incapsula('{{Centrato|','}}')", "Applica il template Centrato");
* newButtonx("Sc", "incapsula('{{Sc|','}}')", "Applica il template SmallCaps (maiuscoletto)");
* newButtonx("larger", "incapsula('{{larger|','}}')", "Applica il template larger");
* newButtonx("Aa Bb", "capit()", "Applica Maiuscole alle iniziali delle parole nella selezione");
* newButtonx("AA aa", "up_low()", "Applica maiuscolo/minuscolo alla selezione, alternandole");
* newButtonx("→", "indentSelection()", "Indenta le righe della selezione (utile per i versi nelle poesie)");
* newButtonx("←", "deIndentSelection()", "Riduce l'indentazione delle righe");
* newButtonx("rv", "eliminaRigheVuote()", "Elimina le righe vuote (talora presenti ed erronee nelle scansioni di testi poetici)");
* newButtonx("poem","incapsula('<poem>','</poem>')","Applica il tag poem alla selezione");
* newButtonx("note+", "note", "inserimento note");
* newButtonx("note⇄", "toggleNote", "spostamento note");
* newButtonx("autoRi", "newRi", "Inserisce un template RigaIntestazione ricavandolo da quello eventualmente presente due pagine prima");
* newButtonx("autoPt", "autoPt", "Applica il template Pt alla selezione in modo intelligente (legge il codice della pagina precedente)");
* newButtonx("postOCR", "cleanup", "esegue postOCR");
* newButtonx("nop", "incapsula('{{nop}}\\n\\n','')", "aggiunge nop in testa alla pagina");
* newButtonx("sal 0%", "sal0","Autocompilazione e salvataggio pagine SAL 0%");
* newButtonx("sections", "newSections", "Inserisce i tag section: posizionare il cursore alla fine della prima sezione");
* newButtonx("preOCR", "preOCR()", "Elimina caratteri casuali da un testo OCR; NON USARE su pagine già formattate");
* newButtonx("éè", "convertiAcuti()", "sostituisci é con è");
* newButtonx("T&S", "mostraTrovaSostituisci()", "Trova & Sostituisci di Candalua");
/* pulsanti temporaneamente inattivati , da usare in pagine con molti diacritici antichi o stranieri
* newButtonx("selAut", "selAut()", "nuovo AutoreCitato con selezione da una lista");
* newButtonx("ˆ", "applicaDiac('ˆ')", "Applica ˆ (accento circonflesso)");
* newButtonx("¯", "applicaDiac('¯')", "Applica ¯ (macron)");
* newButtonx("¨", "applicaDiac('¨')", "Applica ¨ (umlaund)");
* newButtonx("ˇ", "applicaDiac('ˇ')", "Applica ˇ (pipa)");
* newButtonx("~", "applicaDiac('~')", "Applica ~ (tilde))");
* newButtonx("˘", "applicaDiac('˘')", "Applica ˘ (breve)"); 
*/
* newButtonx("´", "applicaDiac('´')", "Applica ´ (accento acuto)");
* newButtonx("`", "applicaDiac('`')", "Applica ` (accento grave)");
* newButtonx("sal3", "sal3", "clicca SAL 3 e pulsante salva");

OCR[modifica]

Applicato un pulsante aggiuntivo "OCR" che carica l'OCR della pagina su pagina vuota.

Sfrutta gli script mul:MediaWiki:OCR.js di Phe, con un paio di aggiunte.

Gli output degli script di Phe sono di estremo interesse: cercherò di parlarne in Progetto:Trascrizioni/newThumbs/Appunti tecnici.


preview[modifica]

@CandaluaSuperato l'ostacolo API del preview; al momento la funzione mw.eiv.pagePreview carica l'html del preview, contentmodel=proofread-page, in mw.eiv.previewHtml; si tratta solo di creare un popup width="500px" e ficcarcelo dentro, e di creare un ulteriore bottone in editbox che chiami la funzione di preview.

Risolto, con una modifica a Template:RigaIntestazione, un problema: in anteprima l'header non veniva visualizzato.

(continua)