Writer: Tabelle vs. Tabulatori

Immaginiamo di dover scrivere un testo che sia una «definizione», cioè, un breve testo (forse anche una parola) «da definire» separato da un altro a destra che sia «la spiegazione». Ci sono due metodi per costruire questo in un documento Writer, entrambi presentati nella seguente schermata:

tab-tabla

Notate la differenza? Vero che no? E invece il modo in cui le due «definizioni» sono costruite è diverso.

Entrambi i metodi hanno pregi e difetti. Andiamo a vedere i dettagli.

Tabelle

È il metodo più evidente. Viene creata una tabella a due colonne senza bordi. La tabella viene configurata (clic destro → Proprietà tabella → scheda Bordi) per far si che la Distanza dal contenuto sia zero e si fissano le larghezze delle colonne (scheda Colonne) ai valori necessari.

Pro:

  • Risulta semplice da creare
  • È possibile utilizzare degli stili di paragrafo diversi per ogni colonna
  • Se il testo «da definire» è più lungo della colonna questo verrà distribuito in più righe automaticamente
  • Per più «definizioni» una dopo l’altra, semplicemente si aggiungono più righe alla tabella

Contro:

  • Con più «definizioni» (più righe) risulta difficile modificarne l’ordine
  • Non è così semplice muovere una tabella
  • Dato che il creare stili di tabelle continua ad essere difficile questo metodo non è proprio pratico se si deve utilizzare più volte nel documento

Tabulatori

Sia nella definizione di uno stile di paragrafo oppure come formattazione diretta di un paragrafo qualsiasi, nella scheda Tabulazioni si definisce un tabulatore a, per esempio, 3 cm. Nella scheda Rientri e spaziature si definisce un rientro Prima del testo di, continuando con l’esempio, 3 cm e un rientro di Prima riga di −3 cm (negativo). Quando viene scritto il paragrafo semplicemente si inserisce una tabulazione tra il testo «da definire» e la sua «definizione».

Pro:

  • Risulta più semplice di configurare che una tabella
  • Utilizzando stili si può ripetere la formattazione senza fatica
  • È molto semplice muovere il testo con i tasti rapidi Ctrl-Alt-Freccia in su / in giù, come con qualsiasi paragrafo in Writer

Contro:

  • Il testo «da definire» e la sua «definizione» formano parte di un unico paragrafo e perciò dovremo utilizzare stili di carattere oppure formattazione diretta (ouch!) per differenziarli
  • Il testo «da definire» non può trovarsi in più righe e se troppo lungo potrebbe «spingere» il tabulatore a destra dando problemi di formattazione

Conclusione

In questo articolo si confrontano i vantaggi e i problemi di utilizzare sia tabelle che tabulatori per creare una formattazione determinata. Nessuno dei due metodi è perfetto, ma entrambi funzionano.

Ognuno scelga il proprio veleno 😉

Pausa

Breve notizia: questo pinguino deve cambiare alloggio.

Questo vuol dire che dovrò limitare (e persino fermare) la mia presenza «on-line» fino a quando non sia tutto pronto sul nuovo posto e, più importante, il nuovo collegamento internet non sia pronto 😉

Cioè, niente nuovi articoli per un po’!

Vi saluto per il momento e ci ritroviamo in tempi più tranquilli!

I font TeXGyre

Il progetto TeX Gyre , sviluppato dal gruppo GUST (il gruppo utenti TeX di Polonia) offre una serie di font basati nei font PostScrip distribuite tempo (ma tanto) fa con Ghostscript 4.00. I font sono

Adventor, un font «sans»

Bonum, con grazie (serif)

Chorus, decorativa, offre soltanto «peso» (normale)

Cursor, un font di larghezza fissa

Heros, un altro font «sans». Offre anche una versione «condensata» (Heros CN) più stretta

Pagella, con grazie, offre anche un font matematico per utilizzare in XeTeX/LuaTeX con unicode-math

Schola, con grazie

Termes, con grazie, offre anche un font matematico per utilizzare in XeTeX/LuaTeX con unicode-math

Risulta anche possibile scaricare la collezione completa, anche se per gli utenti Linux è molto più semplice utilizzare i repositori che sicuramente si trovano lì… infatti, sicuramente sono già installati nel sistema!

In confronto con i font originali (e con altre varianti come i font URW), TeX Gyre offre una mappa di caratteri più ricca e i due font matematici già menzionati, oltre di essere disponibili in formato OpenType.

texgyre

Di seguito un esempio un po’ particolare del uso di Pagella Math nelle formule:

texgyrepagellamath

Nuovo in LibreOffice 5.3: supporto OpenType!

In questo sito ho parlato parecchio e volentieri di font e di come per approfittare tutte le caratteristiche OpenType (vero maiuscoletto, alternative, set stilistici…) l’unico modo era utilizzare XeTeX… ma non più!

A partire della versione 5.3, LibreOffice offre supporto OpenType!

530-opentype

Così è come funziona.

Per approfittare le opzioni OpenType risulta necessario conoscere le sue «etichette» e per questo niente di meglio che la pagina di Dario Taraborelli. La sintassi è molto simile a quella per i font Graphite della quale parlo nel capitolo D11 del mio libro:

Nome Font:etichetta

Per esempio, per attivare il primo set stilistico (ss01) di Kleymissky doviamo scrivere come nome del font

Kleymissky:ss01

Per attivare i veri maiuscoletti (smcp) in EBGaramond 12

EB Garamond 12:smcp

Legature storiche, swash, frazioni… Si può anche utilizzare più di una specialità simultaneamente con il separatore &!

EB Garamond 12:swsh&hlig

Utilizzerà  simultaneamente swash e legature storiche.

Certamente al aprire un file creato in 5.3 con una versione anteriore le etichette OpenType saranno ignorate, ma all’aprire ancora in 5.3 tutto sarà lì.

Impressionante!

Buone feste!

Cari lettori, vi auguro buone feste e un magnifico inizio del 2017!

Questo pinguino si prende adesso qualche giorno (forse, qualche settimana) e vi saluta fino al prossimo anno, il quale verrà con una nuova versione di LibreOffice che ci darà sicuramente tanti argomenti per parlare in tanti articoli! Infatti, 5.3 aggiunge supporto per… beh, ne parliamo dopo  😈

E certamente non mancheranno articoli parlando dei font con licenza libera, di LyX… si vedrà.

A presto! Buon anno!

Inizializzare paragrafi con una capolettera in LyX

Siccuramente il lettore si sarà trovato davanti a un elegante testo come quello presentato nella seguente schermata:

capolettera-1

Per fare questo su LaTeX/LyX c’è il pacchetto lettrine.

LyX ci offre supporto dalla sua interfaccia grafica e nella sezione 6.3 del manuale che si trova sotto Aiuto → Oggetti inseriti viene spiegato chiaramente un metodo per utilizzarlo… perché ce n’è un altro, il quale risulta molto più semplice.

Il metodo spiegato nel manuale è quello più potente e flessibili, ma quando si vuole ripetere una formattazione tante volte in un documento tanta flessibilità non è proprio necessaria.

Per cominciare, e come sempre, doviamo essere sicuri che il pacchetto che c’interessa è installato e che LyX sa che è presente. La documentazione di Lettrine viene installata, in Linux e con TeXLive, in

/usr/share/texmf/doc/latex/lettrine/lettrine.pdf
/usr/share/texmf/doc/latex/lettrine/demo.pdf

Primo passo: in un documento LyX andiamo su Documento → Impostazioni → Moduli e mettiamo la spunta sul modulo Capolettere, come si vede nella seguente schermata:

capolettera-2

Clic su Applicare, non su OK, che doviamo ancora lavorare su questo menù! Ed è che, come capita in queste situazioni, doviamo andare sul Preambolo LaTeX per aggiungere qualche codice…

Il documento utilizzato per questo esempio è stato configurato per utilizzare XeTeX con il font EB Garamond per il testo e il font Goudy Initialen per le capolettere.

Sul preambolo ho scritto:

\newfontfamily{\Iniziali}[]{Goudy Initialen}
\renewcommand{\LettrineFontHook}{\Iniziali}
\setcounter{DefaultLines}{3}

La prima istruzione definisce un nuovo font da utilizzare nel documento (più informazione qui). Questa definizione viene utilizzata nella seconda riga per dire al pacchetto Lettrine quale font dev’essere utilizzato per le capolettere. La terza riga indica il numero di righe di testo che si deve prendere la capolettera.

È possibile fare degli «aggiustamenti fini» della posizione verticale della capolettera aggiungendo

\renewcommand{\DefaultLraise}{0.35}

e modificando il valore 0.35 per quello che serva. Generalmente non è necessario.

A questo punto, quando vogliamo inserire una nuova capolettera selezioniamo il primo carattere del paragrafo e clic destro → Stile testo → Capolettera, come mostrato a continuazione

capolettera-3

Quasi ci siamo. Per far si che il resto della prima parola sia in maiuscoletto doviamo selezionarla e introdurla in una «scatoletta TeX» racchiusa tra parentesi graffe. In LyX tutto si vedrà così:

capolettera-4

mentre che sul documento compilato si vedrà come nella prima schermata.

Una variante: capolettera «in su»

Per ottenere il seguente effetto:

letracapitalsubida

Dovremo modificare le istruzioni utilizzate prima nel preambolo LaTeX:

\newfontfamily{\Iniziali}[Scale=2]{Goudy Initialen}
\renewcommand{\LettrineFontHook}{\Iniziali}
\setcounter{DefaultLines}{1}

Tutto è molto simile a prima, tranne per due cose. La prima è una nuova istruzione aggiunta tra le parentesi quadre nella prima riga, dove viene definito il font da utilizzare nelle capolettere: l’istruzione Scale=2 da un font due volte la grandezza di uno normale (certamente si può giocare con il valore). La seconda differenza è nell’ultima riga dove viene indicato che la capolettera deve prendere soltanto una riga di testo.

Tutto pronto!

I font decorativi di Gluk

Arrivata l’epoca delle cartoline? Momento per pensare ai font decorativi! Ma oggi non parlerò di «quei» font di bassa qualità che trovate dappertutto: i font decorativi che vi presento sono realizzati per uno che sa cosa vuol dire qualità e che si diverte creandola per offrirci una lista incredibile di caratteristiche OpenType.

Vediamo un piccolo esempio (clic nell’immagine per ingrandirla):

gluk-1

Sul titolo si possono apprezzare più caratteristiche avanzate del font utilizzato (Kleymissky): la forma dei caratteri dipende da dove si trovano. Per esempio, il «o» in Massimo è diverso del «o» di Con e nelle doppie «s» la prima risulta diversa della seconda. Questo funziona grazie alle «alternative contestuali». I simboli ad entrami i lati del titolo risultano dell’applicazione del primo «set stilistico» di questo font.

La «L» che compare come capolettera (ne parleremo in un futuro articolo su LyX) utilizza il font Sortefax, ma con il terzo «set stilistico» attivato.

NOTA: LibreOffice, non OpenOffice, da supporto per alcuni opzioni OpenType come le legature tipografiche e le alternative contestuali, ma niente di più… al meno per il momento (tornerò su questo in un futuro articolo, che LibO 5.3 verrà con delle novità interessanti). Questo vuol dire che al utilizzare questi font in LibreOffice alcune delle cose presentate in questo articolo saranno disponibili, ma non altre: non risulta possibile utilizzare i «set stilistici» in LibreOffice, dovremo utilizzare XeTeX oppure LuaTeX, forze chiamati da LyX 😉

Il creatore di questi font si chiama «Gluk» e mantiene un magnifico sito web pieno di font divertenti è complessi, tutti con licenza libera:

glukfonts.pl

Per i curiosi, ecco una parte del preambolo LaTeX utilizzato per creare le schermate di questo articolo:

\newfontfamily{\sortefaxxx}[RawFeature={+ss03}]{Sortefax}
\renewcommand{\LettrineFontHook}{\sortefaxxx}
\setcounter{DefaultLines}{4}
\newfontfamily{\kleymi}[RawFeature={+ss01}]{Kleymissky}

I font più vecchi del sito non dipendono tanto delle funzioni OpenType e semplicemente lavorano utilizzando sostituzioni un po’ particolari di caratteri normali per simboli speciali, perciò quelle possono essere utilizzate in Writer ed altri programmi più semplici.

Un esempio di questi font più «vecchi» è FoglihtenFr02:

gluk-2

Come commentato prima, sulle capolettere ne parleremo in un altro momento…

I PDF che accompagnano i font vi aiuteranno ad approfittare al massimo questi incredibili font.

A divertirsi!

Distanza tra linee di testo in un documento LaTeX/LyX

In LyX risulta semplice scegliere la distanza tra le righe di testo, tanto per il documento in generale

lyxinterlinea1

come per un paragrafo particolare

lyxinterlinea2L’ «1.5» che si vede nella schermata è quello che nell’altra si chiama «uno e mezzo». Questo risulta importante perché vedremo a continuazione cosa succede quando si scrive 1,5 in «personalizzato»…

«Semplice», «uno e mezzo» e «doppio» sembrano piuttosto semplici da capire ma solo fino a quando non ci rendiamo conto di non avere la più pallida idea di cosa vuol dire «semplice».

E questo risulta anche importante per capire cosa fa «personalizzato».

Adesso faremo tutto addirittura più complicato.

Chiedo al lettore di fare il seguente esercizio in LyX: creare un paragrafo in «uno e mezzo» facendo clic destro  → Impostazione paragrafo e scegliendo 1.5 per Interlinea mentre che  a continuazione creiamo un altro con spazio personalizzato da 1.5 facendo clic destro  → Impostazione paragrafo, scegliendo Personalizzato per Interlinea e scrivendo 1,5 nel campo a destra. Vedete la stessa cosa? Vero che no? Personalizzato da 1.5 ci da delle righe più separate che l’opzione «uno e mezzo»! Adesso, tornate alla configurazione del paragrafo, scegliete ancora Personalizzato e scrivette 1,25: vedrete che al premere Applica l’opzione cambia da sola a «1.5», cioè, «uno e mezzo». Per ultimo scegliete ancora Personalizzato e scrivette 1,667: adesso passa a «doppio».

E questo??!!

Un po di teoria

I font moderni (OpenType, per esempio) includono la definizione di cos’è una «interlinea semplice»: chi sviluppa il font sceglie qual’è lo spazio minimo tra le righe per far si che queste non si sovrappongano. Questa grandezza dipende dal disegno dei caratteri (la sua altezza, la forma in cui gli accenti vengono aggruppati —e sì, ci sono lingue dove lo stesso carattere può avere più di un accento simultaneamente), le preferenze personali del autore… Processori di testo come Writer utilizzano questo parametro interno del font come base dell’interlineato.

Per esempio, OpenOffice Writer usa questo interlineato semplice in modo predefinito mentre che LibreOffice Writer nel suo modello predefinito usa per lo stile «corpo del testo» un interlineato «proporzionale» del 120%, il che vuol dire un 20% in più del interlineato semplice definito dal font.

Questo chiaramente ci dice cosa significa «semplice», «uno e mezzo» e «doppio» in Writer, ma questo articolo è su di LaTeX, cosa succede lì?

Interlineato in LaTeX

Bene, quello che succede è che LaTeX fu creato decenni prima che unicode e OpenType. Ed è proprio per questo che LaTeX calcola la distanza tra righe in un modo tutto suo.

The Dangerous Bend Sign of Donald Knuth

Attenzione! Curve LaTeX pericolose!

La cosa va più o meno così (al meno fino a dove la capisco). LaTeX definisce la altezza «basica» della riga come la grandezza in punti del font: un font di 10 punti avrà perciò associata una altezza di riga di 10 punti e per quello la «riga e mezza» sarà da 15 punti e quella doppia sarà di 20… MA, l’interlinea semplice non sarà di 10 ma di 12!

Infatti, dato che avere una distanza tra righe uguale alla grandezza del font darà un testo troppo compatto e illeggibile dove i caratteri più alti di una riga finiranno sovrapposti a quelli più bassi della riga precedente LaTeX aggiunge un 20% alla altezza di base, ma solo all’interlinea semplice, quella «uno e mezzo» e la «doppia» vengono calcolate dal valore senza correggere!

Facendo un piccolo sforzo di memoria per riprendere il lavoro fatto a scuola con delle proporzioni e percentuali riusciremo a vedere come funziona tutto questo in realtà. Infatti, se si sa che una quantità (la distanza tra due righe consecutive con «interlinea semplice») è il 120% di una incognita e vogliamo calcolare il 150% di quell’incognita, quale sarà il fattore che rimane? Sarà

\displaystyle \frac{1}{1,2} \cdot 1,5 = 1,25

E se quello che si vuole è avere il doppio della distanza di base,

\displaystyle \frac{1}{1,2} \cdot 2 = \frac{5}{3} \approx 1,667

E sì, LaTeX può essere strano…

Come si vede la confusione sorge dal fatto che le opzioni «uno e mezzo» (o 1.5, nella configurazione del paragrafo) e «doppio» vengono calcolate a partire di un valore diverso di quello utilizzato per definire «personalizzato». Perché, certamente, «personalizzato» applica un fattore all’interlineato semplice, quello che ha la correzione!

E prima che qualcuno lo chieda, sì, questo è così anche in XeTeX e LuaTeX.

Infine, spero che questo serva al lettore per capire un po come funziona questa storia dell’interlineato in LaTeX e così essere in grado di configurare i documenti con maggiore sicurezza.

Volendo, è possibile mettersi in problemi ancora più complessi: l’interlinea è dinamica (si modifica se si aggiunge qualcosa a una riga che abbia bisogno di più spazio verticale) e perciò cose come definire il suo valore massimo e minimo sono certamente possibili in LaTeX… ma meglio non entrare, che di solito non è necessario.

Alcuni (pochi) vincoli

http://wiki.lyx.org/FAQ/Spacing

http://tex.stackexchange.com/questions/13742/what-does-double-spacing-mean

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

Ci siamo! Addomesticare Writer è qui!

copertina-3

 

Prima di tutto, grazie infinite a Charlie(1) per la sua titanica pazienza nel controllare e correggere le migliaia di errori nella traduzione del mio libro su Writer. Finalmente ci siamo!

«Addomesticare Writer» in PDF

NOTA: Il file è stato aggiornato (24 novembre 2016) per correggere degli errori trovati la Lucilla Less. Grazie, Lucilla!

Più informazione sul libro nella pagina del progetto.

Il libro è aggiornato a LibreOffice 5.2 e parla di Writer, ma anche di Draw, Math e, brevemente, Chart.


(1) Amministratore del forum italiano di supporto della comunità di Apache OpenOffice, LibreOffice e altri derivati del codice originale di OpenOffice.org