Posts RSS Comments RSS 28 Articoli e 6 Commenti fino ad ora

Post pubblicati nel mese di agosto 2007

Creative Zen Nano Plus

Il Creative Zen Nano Plus è un piccolo lettore mp3-wma capace di registrare dal microfono incorporato o da un ingresso line-in e dotato di radio FM e euqlizzatore a 5 bande. Ha molti pregi, in primis quello di essere davvero leggero e poco ingombrante, e poi quello di avere una qualità musicale davvero molto buona (risposta da 20 Hz a 20 KHz con una distorsione armonica inferiore a 0,1% e rapporto segnale rumore pari a 90 dB).

Il piccolo lettore multimediale Zen Nano Plus prodotto da Creative

Sotto Linux viene normalmente montato come un dispositivo di memorizzazione di massa usb (cioè come una comune chiavetta), perciò è possibile utilizzare un file-manager per organizzare la collezione di brani sul lettore.

Questo lettorino utilizza il protocollo mtp (media transfer protocolo), quindi è possibile utilizzare anche applicazioni più sofisticate come rhythmbox (la mia preferita), gnomad2 o amarok per gestirne il contenuto.

Purtroppo spesso è necessario compiere alcune operazioni di configurazione, la prima delle quali è installare (se non ancora installate) le librerie libmtp con

$ sudo yum install libmtp

Assicuriamoci ora di far partire l’applicazione desiderata (rhythmbox nel mio caso) quando viene connesso un riproduttore portatile. In GNOME si può controllare questa funzionalità dall’utilità Unità e supporti rimovibili presente nel menu delle Preferenze:

Quando viene inserito un riproduttore portatile viene lanciato rhythmbox

Leggiamo, dopo avere connesso il dispositivo, l’identificativo del produttore e dell’apparecchio con il comando

$ /sbin/lsusb
Bus 004 Device 006: ID 041e:4139 Creative Technology, Ltd Zen Nano Plus

L’identificativo del produttore è 041e, mentre quello del prodotto è 4139.

All’interno della directory /etc/udev/rules.d cerchiamo se esistono regole per lo Zen Nano Plus: se l’esito del comando grep 4139 è vuoto significa che non ci sono istruzioni per udev su come gestire il dispositivo. Possiamo aggiungerle manualmente creando il file ZenNanoPlus.rules (o anche un nome più esplicito, come 60-ZenNanoPlus-libmtp.rules, che indica che il dispositivo deve essere gestito dalle librerie mtp) contenente:

# UDEV-style hotplug map for Creative Zen Nano Plus
# Put this file in /etc/udev/rules.d

SUBSYSTEM!="usb_device", ACTION!="add", GOTO="libmtp_rules_end"

# Creative Zen Nano Plus
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4139", SYMLINK+="libmtp-%k", MODE="666"

LABEL="libmtp_rules_end"

Se dopo avere aggiunto queste regole il riproduttore musicale scelto non viene lanciato automaticamente quando lo Zen Nano Plus viene connesso, significa che il demone hal non lo identifica come riproduttore audio portatile, ma come dispositivo di memorizzazione di massa. Per ovviare al problema spostiamoci nella directory /usr/share/hal/fdi/information/10freedesktop e osserviamo se esistono regole per il nostro lettorino:

$ cd /usr/share/hal/fdi/information/10freedesktop
$ grep 4139 *

Se il comando grep non restituisce nulla, allora è necessario creare una regola. All’interno di questa directory, con i privilegi di amministratore, creiamo il file 10-usb-music-players-libmtp-ZenNanoPlus.fdi contenente:

<?xml version="1.0" encoding="UTF-8"?>

<deviceinfo version="0.2">
  <device>
    <match key="info.category" string="storage">
      <!-- USB Mass Storage devices that are music players -->
      <match key="@storage.originating_device:info.subsystem" string="usb">
        <!-- Creative -->
        <match key="@storage.originating_device:usb.vendor_id" int="0x41e">
          <!-- Zen Nano Plus -->
          <match key="@storage.physical_device:usb.product_id" int="0x4139">
            <append key="info.capabilities" type="strlist">portable_audio_player</append>
            <merge key="info.category" type="string">portable_audio_player</merge>
            <merge key="portable_audio_player.type" type="string">generic</merge>
            <merge key="portable_audio_player.access_method" type="string">storage</merge>
            <append key="portable_audio_player.output_formats" type="strlist">audio/mpeg</append>
            <append key="portable_audio_player.output_formats" type="strlist">audio/x-ms-wma</append>
            <append key="portable_audio_player.output_formats" type="strlist">audio/x-wav</append>
          </match>
        </match>
      </match>
    </match>
  </device>
</deviceinfo>

A questo punto, dopo avere riavviato il demone hal con sudo /etc/init.d/haldaemon restart, quando lo Zen Nano Plus viene inserito, dovrebbe essere avviato automaticamente il riproduttore multimediale scelto e sul Desktop dovrebbe essere mostrata il dispositivo con l’icona di un lettore portatile associata.

Pagine man colorate

Le pagine man colorate aiutano a trovare, a colpo d’occhio, le informazioni più utili all’interno della pagine di aiuto visualizzata e migliorano la comprensione.

I terminali Linux sono capaci di cose come colorare il testo o aumentarne il peso (grassetto), così da rendere più gradevole e produttiva la sessione di lavoro, attraverso le terminal capabilities. Tra le applicazioni che supportano le termcap c’è anche il pager delle pagine man: less.

Alcune variabili speciali permettono di stabilire i colori da utilizzare; se queste vengono inserite nel file speciale .bashrc, saranno disponibili come variabili di ambiente e le pagine man saranno sempre colorate.

Ecco cosa si potrebbe inserire in .bashrc:

export LESS_TERMCAP_mb=$'\E[01;31m'
export LESS_TERMCAP_md=$'\E[01;31m'
export LESS_TERMCAP_me=$'\E[0m'
export LESS_TERMCAP_se=$'\E[0m'
export LESS_TERMCAP_so=$'\E[01;44;33m'
export LESS_TERMCAP_ue=$'\E[0m'
export LESS_TERMCAP_us=$'\E[01;32m'

In questo modo il comando man man mostrerà:

Pagine man colorate

Questo metodo produce però alcuni effetti collaterali sgradevoli. Ecco cosa accade digitando env:

Effetto collaterale non gradito

Questo accade, probabilmente, perché env ricorre ad un pager sensibile alle termcap. Se si pensa di non poter sopravvivere un giorno in più, in questo mondo troppo colorato che elenca in modo così squinternato le variabili di sistema, si possono comunque avere le pagine man colorate senza questo effetto collaterale semplicemente creando un nuovo file eseguibile, ad esempio in /usr/bin:

$ sudo touch /usr/bin/handbook
Parola d'ordine:
$ sudo chmod a+x /usr/bin/handbook

All’interno del file handbook ci sarà lo script bash:

#!/bin/bash

REQUIRED_PAGE=$@

export LESS_TERMCAP_mb=$'\E[01;31m'
export LESS_TERMCAP_md=$'\E[01;31m'
export LESS_TERMCAP_me=$'\E[0m'
export LESS_TERMCAP_se=$'\E[0m'
export LESS_TERMCAP_so=$'\E[01;44;33m'
export LESS_TERMCAP_ue=$'\E[0m'
case $TERM in
    xterm)
        export LESS_TERMCAP_us=$'\E[01;34m'
        ;;
    *)
        export LESS_TERMCAP_us=$'\E[01;32m'
        ;;
esac

man $REQUIRED_PAGE
EXIT_STATUS=$?

unset LESS_TERMCAP_mb
unset LESS_TERMCAP_md
unset LESS_TERMCAP_me
unset LESS_TERMCAP_se
unset LESS_TERMCAP_so
unset LESS_TERMCAP_ue
unset LESS_TERMCAP_us

exit $EXIT_STATUS

In questo modo le pagine man colorate saranno accessibili con il comando handbook:

Pagine man colorate con handbook

Approfondimento

Per sapere cosa viene colorato dalle variabili LESS_TERMCAP_xy si deve fare riferimento alla pagine man termcap, al cui interno cercare la spiegazione dei codici mb, md, me, se, so, ue, us. Ad esempio, us indica l’inizio della sottolineatura, mentre ue ne indica la fine.

I valori numerici a due cifre che iniziano con 0, come quello segnato in grassetto in LESS_TERMCAP_so=$’\E[01;44;33m’, permettono di specificare alcune proprietà del testo:

  • 00 = nessuno
  • 01 = grassetto
  • 04 = sottolineato
  • 05 = lampeggiante
  • 07 = rovesciato
  • 08 = nascosto

I valori numerici a due cifre che iniziano con il numero 3, come quello segnato in grassetto in LESS_TERMCAP_so=$’\E[01;44;33m’ colorano il testo:

  • 30 = nero
  • 31 = rosso
  • 32 = verde
  • 33 = giallo
  • 34 = blu
  • 35 = magenta
  • 36 = azzurro
  • 37 = bianco

I valori numerici a due cifre che inizia con 4, come quello segnato in grassetto in LESS_TERMCAP_so=$’\E[01;44;33m’, specificano il colore dello sfondo:

  • 40 = nero
  • 41 = rosso
  • 42 = verde
  • 43 = giallo
  • 44 = blu
  • 45 = magenta
  • 46 = azzurro
  • 47 = bianco

E con questo è tutto.

Bugìe

Qui qualcuno dice le bugìe. Sì, con l’accento, per non dare adito a confusioni con le bresciane bùge, che sono quelle cose che girano follemente ai poveri italiani che assistono al teatrino.

Previti si dimette, ma lui è innocente – sostiene. Però è condannato in via definitiva a 1 anno e 6 mesi per il processo Lodo Mondadori e a 6 anni con interdizione dai pubblici uffici per IMI-SIR. Si dimette, poi. Se ne va offeso sbattendo la porta. E affermando, da vecchio volpone, che l’uva non era buona.

Sircana viene colto in fallo (quasi proprio in tutti i sensi). Ora, io non moralizzo sulle sue azioni. Quale maschietto non ha mai fatto nella sua vita un puttan-tour? Chi non ha mai guardato una passeggiatrice-delle-strade-statali? Però, se ti beccano, perché non dici una verità plausibile – Via, amici miei, è stata una zingarata! – piuttosto che una paraculante menzogna?

Mele partecipa ad un festino con due zie (persone con cui si ha confidenza senza parentela), forse paga lui, forse no, forse porta della droga drogata, forse no. L’amica dice che Cosimo, oltre che dispensatore di massime come “proteggiamo la famiglia” e sciccherie simili, abbia distribuito anche soldi e droga… Sta di fatto che uno dei due racconta fandonie. Personalmente, sono pronto a scommettere che la persona cui si allungherà il naso è la stessa cui si è già allungato… una notte… Ovviamente Mele si dimette dal partito. Ovviamente Mele non si dimette dalla carica.

Come si può pensare, di fronte a tutte queste bugìe, che i nostri politici si/ci raccontino la verità nelle questioni politiche? Bugiardoni.

Ecco una bella fotografia di gruppo dei nostri deputati: