9 marzo 2009

La via del ronin

Per la serie "trasformiamo la vostra pigrizia in una virtù" ecco a voi finalmente dopo una lunga filza di lamentele qualcosa di utile.

Ammettiamo che anche voi, come lui, apprezziate la resa a schermo dei tipi di carattere Droid¹. Ottima scelta, non c'è che dire, ma pensate veramente che il miglior modo per averli sullo schermo sia:
  1. installare i file TTF (sotto /usr/share/fonts o sotto $HOME/.fonts)
  2. aprire lo strumento di preferenze Aspetto
  3. andare alla scheda Tipi di carattere
  4. cambiare il tipo di carattere usato per quattro volte
  5. ripetere eventualmente l'operazione di cambio nelle applicazioni di terze parti come Firefox o OpenOffice.org
  6. ???
Certo che no, esiste un modo molto molto molto più smart. Il passo 1, ovviamente, non può essere scavalcato. I passi da 2 a 6 possono essere rimpiazzati dalla semplice apertura di un file di testo, dal copia-incolla del testo che segue e dal salvataggio con nome .fonts.conf (ovviamente nella home):

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- ~/.fonts.conf for per-user font configuration -->
<fontconfig>
<alias>
<family>serif</family>
<prefer>
<family>Droid Serif</family>
</prefer>
</alias>

<alias>
<family>sans-serif</family>
<prefer>
<family>Droid Sans</family>
</prefer>
</alias>

<alias>
<family>monospace</family>
<prefer>
<family>Droid Sans Mono</family>
</prefer>
</alias>
</fontconfig>
Il vantaggio di una cosa così complicata? Semplice: in primo luogo non dovete andare a cambiare la configurazione, potete lasciare Sans come font (che poi è quello usato in modo predefinito e di ripiego in tutte le applicazioni) e il sistema si occuperà di "tradurre" (o sostituire) automaticamente Sans in Droid Sans (così come per Mono). In secondo luogo è necessaria una sola modifica invece di N+M in N diversi dialoghi di configurazione. In terzo luogo uniformate anche i caratteri con grazie (e la vostra vista vi ringrazierà mentre navigate sul web). In quarto luogo è una soluzione scalabile (metti che in futuro vi venisse da dire "miiiii, che belli che sono i nuovi font di Windows7, li voglio usare con Linux") perché basta cambiare i valori dei tag &lt:family>. In quinto luogo è assolutamente geekoso e ve ne potrete vantare con gli amici giù al bar.

Su come fare la stessa cosa a livello di sistema non mi pronuncio: si tratta sempre di scrivere un file con lo stesso contenuto, ma la posizione e il nome di file più adatto può dipendendere la distribuzione a distrubuzione.

E poi... mica posso fa' tutto io qua dentro? Se non fossi stato pigro ab origine, mica avrei potuto svelarvi un trucco del genere...

[1] io li ho scoperti tanto tanto tempo fa grazie a Remo, ma non posso più provarlo perché a quanto pare Remo è diventato povero in canna, di fango è la sua capanna e gli hanno chiuso l'account su netson per insolvenza....

10 commenti:

Berseker ha detto...

ne approfitto perchè a quanto pare sei un elemento che in qualche modo è "dentro" la ristretta cerchia dei dev GNOME (hai solo compiti di traduzione o ti occupi anche di altro?)

comunque, ottimo il tuo consiglio ma volevo chiederti, secondo te è normale che nel 2009 uno debba andare a scriversi un file stile xml per cambiare i caratteri di sistema? non sarebbe una cosa da fare, sistemare quella stramaledetta gui (vecchia di 3-4 anni) per i caratteri, introducendo una opzione tipo "usa questo carattere per tutto il sistema" eventualmente deselezionabile per permettere la diversificazione dei caratteri (sempre se uno la desidera) come del resto permette KDE già dalla vecchia(?) versione 3?

so che lo stile di molti GNOME-dev i casi di proposta come questa è rispondere con una frase del tipo "ca**o_vuoi_mandaci_una_tua_eventuale_patch_sennò_vai_al_diavolo", però mi piacerebbe sapere cosa ne pensi

Angelo

Luca Cavalli ha detto...

Non è vero Berseker. Gli sviluppatori di GNOME mettono molte più parolacce nelle risposte.

Berseker ha detto...

mentre scrivevo quella frase stavo proprio pensando che ci ero andato troppo leggero

però non hai risposto alla mia domanda..

ps va bene anche una risposta in stile GNOME-dev a questo punto

Luca Ferretti ha detto...

@Berserk

Certo che non ha risposto, la risposta è dentro di te, e però è sbajata :D

Cmq, escluso che io non sono dentro la cerchia, ma solo un'osservatore sul bordo; escluso che il file XML di cui sopra va a definire un alias per una famiglia di font più che un carattere predefinito, sì, hai perfettamente ragione, tant'è che ci dovrebbe essere aperto un bug in tal senso da almeno 3 anni.

La resistenza più grande è del tipo: quello che c'è adesso funziona ed è codice maturo, che lo cambiamo a fare se tipicamente queste impostazioni le si tocca una volta e poi non si cambiano più???

Se vogliamo guardare il bicchiere come mezzo pieno, non è male come risposta

Se poi speri che mi ci metta io a scrivere codice, beh.... scordatelo, microcefalo decerebrato, scrivi del fottuto codice da solo se sei capace di battere i tasti della tastiera con quelle dita artritiche che ti ritrovi! :P

saltydog ha detto...

Bene, bravo, grazie!

Vedi che quanto ti impegni (qualche volta) riesci anche a essere utile?

saltydog ha detto...

s/quanto/quando

Anonimo ha detto...

Leggevo tempo fa tra le proposte per gnome 3 sul planet di gnome che qualcuno proponeva un font condensato da usare per il desktop e direi che questo droid fa proprio al caso nostro, personalmente lo trovo meglio di tahoma o lucida grande (almeno su linux). Sarebbe il caso di fare una feature request su bugzilla?

Berseker ha detto...

ahah il finale della tua risposta è davvero da ottimo++

complimenti per il blog e il sottile umorismo che utilizzi negli articoli comunque, ti leggo sempre con piacere (via planet gnome italia)

[sclero]
bersekER senza la R grrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr non c'entra una beneamata min*hia col fumetto, il mio nick ha una storia MOLTO meno banale
[/sclero]

Stefano F. (tacone) ha detto...

Noto peraltro che *lui* consiglia un polly-deb che in realtà è un backport da Jaunty.
Non so se essere contento della presenza del deb in jaunty o del fatto che non citi chi ha fatto il lavoro vero per il deb.

Stefano Costa ha detto...

Belli i font, per carità. Ma aprite un editor qualsiasi in monospace e ditemi quale è la somma di 1O + 1O.

No dico, scherziamo ancora nel 2OO9 non si riesce a disegnare un pallino?