LyX: Cos’è e come si utilizza la microtipografia

Oggi parleremo di una questione puramente estetica. L’argomento è trovare il modo di far si che il testo creato in LyX, sia con LaTeX o con XeTeX, risulti «più bello».

Questo non ha un’utilità in se e infatti la maggior parte dei lettori non noteranno la differenza… il che vuol dire che saremo riusciti!

Cosa significa «microtipografía» e a cosa serve

Nell’introduzione del manuale del pacchetto microtype troviamo questa ispirata definizione (la traduzione a continuazione)

Micro-typography is the art of enhancing the appearance and readability of a document while exhibiting a minimum degree of visual obtrusion. It is concerned with what happens between or at the margins of characters, words or lines. Whereas the macro-typographical aspects of a document (i.e., its layout) are clearly visible even to the untrained eye, micro-typographical refinements should ideally not even be recognisable. That is, you may think that a document looks beautiful, but you might not be able to tell exactly why: good micro-typographic practice tries to reduce all potential irritations that might disturb a reader.

Microtipografia è l’arte di migliorare l’apparenza e la leggibilità di un testo perturbando il meno possibile la sua presentazione. È relazionato con cosa succede tra o ai bordi dei caratteri, parole o linee. Mentre che gli aspetti macrotipografici di un documento (il suo disegno) sono chiaramente visibili anche all’occhio non preparato, i miglioramenti microtipografici idealmente non dovrebbero essere riconoscibili. Cioè, lei dovrebbe pensare che un documento si vede bello, ma non dovrebbe essere capace di dire esattamente il perché: le buone pratiche microtipografiche tentano di ridurre tutte le potenziali irritazioni che potrebbero molestare il lettore.

Perfetto, l’idea è quella di modificare sottilmente il testo per far si che «si veda meglio», ma che chi lo veda non sia capace, in un primo analisi, di dire cosa è stata modificata. Ma, questo come si fa?

Bene, la prima cosa da dire risulta piuttosto forte: è incredibilmente semplice ingannare il nostro cervello. Consideriamo la seguente immagine, pressa dalla wikipedia:

Gli esagoni verdi formano una griglia completamente storta, vero? Falso: prendete un righello e lo vedrette. I piccoli punti confondono il nostro cervello il quale interpreta il patrone in forma sbagliata.

Ed è proprio questo tipo di «illusioni ottiche» quello che si presenta in un testo giustificato:

microtype-sin1

Guardate con attenzione il margine destro, non sembra «ondulato»? Proprio dove si trovano punti, virgole e trattini il testo sembra rientrare, vero? Falso ancora: il righello non mente!

Quello che succede qui è che i punti, virgole e trattini presentano «meno peso» che i caratteri precedenti e pertanto il nostro cervello interpreta l’immagine come se ci fossero «buchi» li. Guardiamo adesso questo testo:

microtype-con1

Adesso il margine destro sembra più «retto», vero? Ancora falso! Vediamo un dettaglio della seconda immagine

protrusion

Come può comprovarsi le virgole e i trattini (succede anche con i punti) «attraversano» il margine destro leggermente. In questa situazione i bordi delle linee sembrano più «pieni» e il nostro cervello interpreta il margine destro come più diritto, anche se non lo è. Il cambio è veramente minimo, ma migliora di tanto la presentazione.

Questa tecnica di microtipografia viene chiamata «protrusione». Non è l’unica, ma certamente è quella meno invasiva.

Un’altra tecnica è quella di deformare i caratteri per far si che occupino più o meno spazio orizzontale e così evitare che lo spazio tra parole sia diverso nelle diverse linee di testo. Si può modificare anche la distanza tra caratteri… infine, che le tecniche sono diverse.

Come si applica questa «microtipografia»

Caro lettore, non pensare nemmeno di tentare di avere qualcosa di simile in programmi di videoscrittura tradizionali come Writer o Word: semplicemente non è possibile. Mi dicono che Scribus permette di lavorare limitatamente con queste tecniche, ma non ho mai utilizzato questo programma e pertanto non posso commentare.

L’unica possibilità nel mondo F(L)OSS è LaTeX (e XeTeX, e LuaTeX…) con il pacchetto microtype, a cui documentazione si installa, in Linux, in

/usr/share/texmf/doc/latex/microtype/microtype.pdf

Il manuale occupa più di 240 pagine, ma non doviamo preoccuparci: in un uso normale le opzioni predefinite sono semplicemente perfette.

Per abilitare questo in LyX, in versioni fino alla 2.2.x, in Documento → Impostazioni → Preambolo LaTeX doviamo scrivere:

\usepackage{microtype}

A partire della versione 2.3 risulta sufficiente selezionare la corrispondente casella nel menu di configurazione dei font.

Tutto pronto, non c’è altro da fare. Questo funziona sia con LaTeX normale, con XeTeX o LuaTeX, anche se in questi due ultimi con alcune limitazioni: per esempio, al momento di scrivere questo articolo XeTeX offre soltanto supporto per protrusione.


Per approfondire

http://hstuart.dk/2007/11/27/microtypography/

https://en.wikipedia.org/wiki/Microtypography

Annunci

Avviare LibO dalla riga di comando o da un desktop file (Linux)

LibreOffice 5.4 è l’ultima versione ad offrire il «quick-start», una piccola applicazione che si poteva far vivere nella barra delle applicazioni del nostro sistema operativo, lì vicino all’orologio, per semplificare l’avvio delle diverse componenti del programma: Nella versione 6 che sarà pronta all’inizio del anno prossimo il quick-start verrà eliminato.

Negli ultimi tempi LibO ha migliorato tantissimo la sua procedura di avvio, rendendola più agile e riducendo enormemente il tempo necessario per caricare l’applicazione, perciò il «quick-start» non è più utile, vero?

Beh… dipende. Certamente il caricare tutto il pacchetto in memoria anche quando non viene utilizzato non è proprio la migliore delle idee, ma il «quick-start» offriva anche qualche (piccolo) vantaggio come il riuscire ad avviare il programma direttamente nel gestore dei modelli.

Risulta molto semplice duplicare le funzionalità «utili» del quick-start creando alcuni accessi veloci ad applicazioni, i quali si gestiscono in sistemi Linux con i file «.desktop», ma siccome il modo di creare e gestire questi file dipende del desktop utilizzato (KDE Plasma, gnome, quel che sia) proverò a rimanere il più generico possibile. Penso che il lettore non avrà problemi all’ora di adattarsi.

Per esempio, per lanciare Writer dovremo utilizzare nel nostro .desktop file l’istruzione

libreoffice --writer %U

mentre che con

libreoffice --draw %U

s’inizierà Draw.

NOTA: Il lettore interessato in capire cosa vuol dire questo «%U» può consultare la specificazione dei file .desktop.

Fino a questo punto, niente di particolare, ma, come si fa a iniziare LibO con la lista dei modelli? Si usa

libreoffice .uno:NewDoc

mentre che se si vuole avere direttamente il menù per aprire un file particolare si può utilizzare

libreoffice .uno:Open

Creazione di un file .desktop in Plasma per lanciare LibO con la lista dei modelli

Le istruzioni «.uno:» sono parte dell’API di programmazione di LibO. Se volete sapere di più sul argomento… chiedete a qualcun altro, che questo delle macro non fa per me 😛

Creando dunque qualche accesso diretto alle applicazioni potremmo dare forma a un menù che riesca a sostituire il «quick-start»:

Ti lascio, caro lettore, con i dettagli.

Math: «portare a sinistra» espressioni a più righe

Quando un’espressione viene creata in Math utilizzando «newline» per avere più righe, in modo predefinito tutte le righe saranno centrate prendendo come riferimento la riga più larga

Se si vuole portare tutto «a sinistra» potremo provare con il menu di formattazione, ma… insomma, provate che i risultati possono essere interessanti 😈

Ma c’è un modo semplicissimo di portare tutto a sinistra senza distruggere le frazioni: scrivere due virgolette doppie all’inizio della riga:

E si, proprio così facile.

Nuovo in LibO 5.4: inserire filigrane

Cioè, più che il fatto di aggiungere la filigrana quello che risulta nuovo è «l’elegante hack» con il quale viene implementato.

Mi spiego: sempre è stato possibile aggiungere un oggetto Fontwork, ancorarlo alla intestazione pagina e inviarlo «al fondo», quello che è nuovo in 5.4 è che tutta questa lunga procedura manuale è stata elegantemente impacchettata nel menu Inserisci → Watermark (manca ancora finire la traduzione):

L’oggetto si presenterà in tutti gli stili di pagina in uso senza più lavoro da parte dello scrittore. Per modificare una filigrana così creata sarà sufficiente tornare al menù indicato. Addirittura se si cancella il contenuto della casella «text» la filigrana sarà eliminata.

È vero, non è ancora uno strumento dedicato alle filigrane, è un «hack», ma così ingegnoso che non te ne rendi nemmeno conto!

Latin Modern: portando i font originali di Knuth all’era unicode

Donal Knuth non è soltanto un matematico, non è soltanto un programmatore, non è soltanto il creatore di TeX: lui anche ha sviluppato dei font. Nel volume  E di Computers & Typesetting descrive  i font «Computer Modern» che da quel momento sono stati e continuano ad essere i font predefiniti in buona parte dei documentclass LaTeX.

Il problema con Computer Modern è lo steso problema che si ha con tutti i font creati per (La)TeX in metafont: diventa una storia utilizzarli in qualsiasi lingua diversa dell’inglese.

La gente del gruppo GUST (gli trovammo al parlare dei font TeX Gyre) si ha dato dunque al lavoro di tradurre questi font in una «superfamiglia» in formato OpenType, offrendo supporto per più lingue senza perdere una delle caratteristiche più interessanti dei font originali: le diverse «dimensioni ottiche».

The Latin Modern (LM) Family of Fonts

NOTA: Gli utenti Linux con TeXLive installato sicuramente avranno questi font nei loro sistemi.

Trovate più informazione sulle «dimensioni ottiche» nel mio articolo sui concetti tipografici.

Il testo superiore (in grigio) fu creato in 10 pt e aumentato del 400% mentre che quello sotto fu creato in 5tp e aumentato del 800%

NOTA: L’unico modo di utilizzare queste dimensione ottiche e con XeTeX o LuaTeX (qualcuno ha detto qualcosa su LyX?…), non possono usarsi in Writer.

Oltre alle legature tipografiche normali e i numerali «stile antico», i font Latin Modern non offrono tantissime caratteristiche OpenType avanzate. Infatti, i veri maiuscoletti si trovano come un font indipendente ed è pertanto necessario definire una nuova famiglia di font per utilizzarle.

Oltre ai font mostrati nella schermata si ha Latin Modern Mono Light (una versione più leggera), Latin Modern Mono Light Condensed (una versione più stretta), Latin Modern Mono Prop (una versione con larghezza proporzionale del font monoespaciaz… 😯 ), Latin Modern Mono Prop Light ( 😯 😯 ), Latin Modern Mono Slanted (una versione inclinata, che non è lo stesso che il corsivo), Latin Modern Roman Demi (una versione seminegrassetto), Latin Modern Roman Dunhill (una versione per titoli grandi), Latin Modern Roman Slanted (una alternativa al corsivo), Latin Modern Roman Unslanted (una versione «raddrizzata» del corsivo… 😯 😯 😯 ), Latin Modern Sans Demi Cond (una versione semigrassetto e più stretta della Sans) e Latin Modern Sans Quotation (una versione più «larga», per testi piccoli).

Per ultimo si ha anche un font chiamato Latin Modern Math da essere utilizzato in XeTeX insieme al pacchetto unicode-math per scrivere le nostre formule.

Se si confronta la b di f(b) con la b del limite della integrale si vede che le diverse «dimensioni ottiche» si usano automaticamente.

In sintesi, una imponente famiglia di font.

Eliminare paragrafi vuoti in Writer

A volte ci complichiamo la vita senza renderci conto. Per anni ho utilizzato delle espressioni regolari (parlo di loro nel mio libro) per eliminare paragrafi vuoti (tra altre cose, che sempre mi sorprendo di quello che la gente è capace di fare contro i suoi documenti) senza pensare tropo in quello che facevo.

Errore! Esiste una forma molto più semplice di farlo!

Strumenti → Correzione automatica → Opzioni di correzione automatica → scheda Opzioni e si attiva l’opzione Elimina paragrafi vuoti:

Dopo cliccare su OK si va a Strumenti → Correzione automatica → Applica e tutto pronto!

Quest’opzione di correzione automatica elimina tanto i paragrafi completamente vuoti come quelli che contengono soltanto spazi.

Arte di «codice aperto»

Oggi mi scosto un po’ dei soliti argomenti di questo blog per darvi un esempio di Arte e Software Libero funzionando insieme e con grande successo:

Pepper&Carrot, per David Revoy

David Revoy è un noto artista grafico francese che da anni lavora esclusivamente con software libero. Ha collaborato con la fondazione Blender in diverse produzioni e porta avanti il comic del quale parliamo oggi.

Come racconta in una  intervista, il comic Pepper&Carrot viene tradotto a più di 30 lingue per una comunità di volontari. Tutto il progetto si sviluppa in una serie di repositori git dove vengono collocate le vignette realizzate in Krita, i traduttori dunque aggiungono le loro traduzioni e un sistema basato in inkscape unisce immagini e testo per creare sia la versione web che una pronta per la stampa.

Tutto il materiale (compresse le catture dei disegni preparatori) e il software utilizzato per realizzarlo sono disponibili con licenze libere.

Pepper&Carrot è un magnifico esempio di un progetto di codice aperto di successo che pure permette al suo autore di «vivere»: grazie al supporto che riceve in Patreon, Pepper&Carrot è il suo «lavoro di tutti giorni».

Dunque, la prossima volta che chiunque ti dica che il software libero non serve per l’arte presentali Pepper&Carrot e il grande successo di David Revoy.

Clic nell’immagine per andare al sito del progetto

 Ma attenzione che non è ancora finita!

Proprio oggi il progetto Morevna ha presentato una versione animata del episodio 6 della vignetta!:

EPS a PDF a SVG

Sempre che si può scegliere è meglio utilizzare nei nostri documenti immagini vettoriali perché si presentano nel modo giusto ad ogni scala. I formati vettoriali per immagini più famosi sono, in ordine decrescente di anzianità: EPS, PDF (singola pagina) e SVG

Writer ha un supporto ottimo per il formatto SVG, un supporto problematico per PDF (migliora in ogni versione, ma risulta ancora limitato) e un quasi inesistente supporto per EPS. Cosa fare se non si ha a disposizione un file SVG?

Conversioni di formatti!

Esistono diversi strumenti di conversione di immagini vettoriali (ad esempio UniConvertor, parte del progetto sK1), però nella maggior parte dei casi questi strumenti ci offrono troppe possibilità. Perciò oggi parleremo del più semplice dei metodi da utilizzare in sistemi Linux.

Prima di tutto si devono istallare due utilità: epstopdf e pdf2svg.

Dalla terminale virtuale si usa:

epstopdf originale.eps --outfile=Il-PDF.pdf

per convertire un file EPS in uno PDF di una pagina. Dopo per convertire da PDF a SVG:

pdf2svg Il-PDF.pdf SVG-definitivo.svg

Ho provato con vecchi file EPS della mia tesi di dottorato (scritta in LaTeX) e la conversione risulta perfetta.

Entrambi istruzioni offrono più opzioni ma non entrerò in dettagli.

Due novità che arriveranno con LibreOffice 5.4

Ho «giocato» un po’ con LibO 5.4 beta 1 (scaricato da qui e «istallato in parallelo» come commentato qui) perciò in questo breve articolo vi mostrerò in un unica schermata due delle novità più interessanti:

Una di loro è già «completa» mentre per l’altra mancano ancora alcuni dettagli. Vediamo:

È possibile configurare una «distanza al contenuto» anche se non vengono scelti dei bordi: Bug 41542 FORMATTING: Allow “Spacing to contents” for edges without a line [RESOLVED FIXED]. Questo funziona per pagine, paragrafi, intestazioni di pagina, cornici, quello che serva, e funziona perfettamente.

Finalmente si ha una barra degli strumenti per gli stili! Bug 106781 (Style-Formatting-Writer-Toolbar) – Addition of a style-focused formatting toolbar. Questa nuova caratteristica non è ancora completa, però: gli stili di carattere e di elenco non possono applicarsi da li perché manca ancora lavoro in altre aree del codice sorgente (le segnalazioni 88512 y 107000).

Se la barra degli strumenti di stili viene completata in tempo risulterà certamente un miglioramento importante per Writer. Ma se non arriva per 5.4 sicuramente ci sarà per 6.0: quello che importa è che sta arrivando!