Convertire le emoticons da Pidgin a Emesene

Banana Joe!!!

Banana Joe!!!

Avete delle emoticons personalizzate in Pidgin ma volete provare emesene, mantenendo le vecchie emoticons costate ore di conversazioni con bimbiminkia?

Nessun problema!

Ho scritto uno script che automatizza questo compito. Scaricatelo eseguendo questo comando:

wget http://polpoinodroidi.com/download/plugins/emotes_pidgin2emesene.php
chmod +x emotes_pidgin2emesene.php

Poi installiamo questo pacchetto, necessario per il funzionamento:

sudo apt-get install php5-cli

Ed infine eseguiamo lo script!

./emotes_pidgin2emesene.php tuonome@live.it

sostituendo ovviamente il vostro contatto MSN al posto di tuonome@live.it.

Servire freddo. (D)

Pidgin-plus con gradienti

Ecco i gradienti all'opera! :-)

Ecco i gradienti all'opera! :-)

Un’immagine vale più di 1000 parole, e quindi ecco il frutto dei miei sforzi di programmazione di oggi pomeriggio :-)

Siccome l’autore del plugin pidgin-plus non si sente da un po’, ho deciso di prendere in mano il codice e di implementare questa caratteristica assente ormai da parecchio :-)

Known issues

Ci sono alcune “serie di sfortunati eventi” che non funzionano, eccone alcune:

  • gradienti con all’interno dei caratteri come questi: <, lettere accentate (èòàìù), caratteri strani (✿, ♫…)
  • a volte anche se contengono delle parentesi quadre.

Ovviamente spero di riuscire a risolvere il tutto al più presto :-) ma dovrebbe funzionare nel 90% dei casi.

Dove trovare il tutto

Per il codice e tutte le cose di sviluppo vi mando sul repository su GitHub, mentre per chi non si vuole sbattere può prendere il pacchetto .deb dalla pagina del mio repository, scegliendo l’architettura preferita. (chi ha già il mio repository attivo, basta che faccia un aggiornamento e si troverà questa versione aggiornata).

Per favore fate parecchi test e ditemi con quali pattern (nick) non funziona a dovere, incollandomeli qui nei commenti.

EELST: Adolescenti a colloquio. Improvvisamente, Tremoto

Vorrei inaugurare con questo post una nuova sezione sul mio blog: lo studio dei messaggi subliminali / chicche che gli Elio e le Storie Tese inseriscono nei loro album.

Cominciamo dalla traccia nel titolo, Adolescenti a colloquio. Improvvisamente, Tremoto, la traccia di apertura dell’album Elio Samaga Hukapan Kariyana Turu, del 1989.

Dall’inizio, a basso volume, possiamo sentire una musichetta in sottofondo, sotto la voce degli adolescenti. Essa è On The Road Again dei The Rockets, e ve l’ho separata un po’ meglio dalle voci in questo sample che potete ascoltare.

Potete confrontarla con l’originale (da YouTube), il pezzo preso parte da 00:14 a 00:49 del video.

Alla prossima chicca!

Elio Samaga Hukapan Kariyana Turu

Al fuoco!

Vorrei riportare un episodio capitatomi un mesetto fa.

Mentre guidavo, vedo a un centinaio di metri un incendio, in un campo con alberi. Non vedendo nessun segno di intervento, ed essendo sera tardi, chiamo immediatamente il 115.

frasten: Pronto, buonasera, vorrei segnalare un incendio, le do le coordinate GPS?

VVF: No, non mi servono le coordinate, dove si trova?

frasten: :-S ehm… sulla strada tra… mmm… Batticarne e… Inverno… ma non conoscendo la zona se le do le coordinate è meglio, non trova?

VVF: Lei è del posto?

frasten: Certo che no! Per questo se le do le coor…

VVF: … E allora non mi servono le coordinate…

frasten: …

VVF: <click>

E allora bruciate. Bruciate! La gente cerca di contribuire e voi dimostrate incompetenza e arroganza, un ottimo cocktail (D) . Bruciate.

Recovery di un sistema che non si avvia

Se per caso vi capitasse di dover recuperare una distro che non si avvia, basta avviare il pc da un CD di installazione live, o ancora meglio da una chiavetta USB live (ancora più veloce), montare da qualche parte la partizione root del vostro hard disk e dare i seguenti comandi in un terminale:

chroot /percorso/dove/abbiamo/montato/la/nostra/root
rm /dev/null
mount -a

I due ultimi comandi servono per evitare errori che possono comparire successivamente.

Poi eseguite ciò che vi serve di fare, come se foste dentro al vostro PC, tipicamente questa procedura serve per ripristinare un kernel oppure risolvere pesanti incasinamenti con le dipendenze dei pacchetti (a me è successo).

Espressioni regolari e alfabeto farfallino

Citando Wikipedia:

Il farfallino o alfabeto farfallino è un gioco linguistico per bambini. Si può intendere come una forma estremamente semplice di codice segreto e consiste nel raddoppiare ogni vocale con l’aggiunta di una f interposta: per esempio, a diventa afa, e diventa efe, e così via (quindi “ciao” diventa cifiafaofo). Viene detto “farfallino” perché la parola “farfalla” ha un suono simile a quello delle parole “codificate” seconda questo schema.

Un computer può aiutarci in maniera estremamente semplice per codificare il testo in questa maniera.

La regola, come abbiamo letto, è che dopo ogni vocale dobbiamo mettere una f e poi ancora la stessa vocale.

Ecco quindi il semplice codice PHP:


$farfallino = preg_replace('/([aeiou])/', '\1f\1', $testo);

Vediamo di spiegarlo: la sintassi della funzione preg_replace è:

preg_replace($espressione_regolare, $sostituzione, $stringa_su_cui_applicare);

L’espressione regolare, per regola, deve iniziare e finire con un delimitatore, io ho scelto la slash: /. Questa espressione prende, con [aeiou], ogni vocale, poi grazie alle parentesi tonde ogni vocale viene messa in un parametro numerico, per essere riutilizzata dopo.

Nella sostituzione, utilizzo questo parametro \1 per dire: “ok, metti qui la vocale che ho appena letto”. Quindi avrò: VOCALE f VOCALE, che tradotto in codice diventa appunto \1f\1.

Cifiafaofo afa tufuttifi!!!

Altri problemini e risoluzioni per Ubuntu Jaunty

Alcuni altri problemini che mi si sono presentati su Ubuntu Jaunty.

Icona degli aggiornamenti mancante

A quanto pare è una cosa voluta!!! Leggo e traduco:

  • Quando ci sono aggiornamenti di sicurezza, il Gestore Aggiornamenti si aprirà e li mostrerà (oltre ad eventuali altri aggiornamenti disponibili) entro un giorno.
  • Quando ci sono aggiornamenti non di sicurezza, il Gestore Aggiornamenti si aprirà e li mostrerà una settimana dopo che è stato aperto l’ultima volta (sia nel caso in cui sia stato aperto manualmente che automaticamente, e a prescindere dal fatto che siano stati installati degli aggiornamenti, quella volta).
  • Quando non ci sono aggiornamenti disponibili, il Gestore Aggiornamenti non si aprirà automaticamente.

La soluzione per tornare al vecchio comportamento è dare in un terminale:

gconftool -s --type bool /apps/update-notifier/auto_launch false

Le nuove notifiche hanno un lampeggiamento in uscita (o in entrata)

Questo perché l’effetto dissolvimento è codato nel codice di libindicator, e quindi entra in conflitto con il relativo effetto di compiz.

Per risolvere, installare ccsm, avviarlo (Sistema -> Preferenze -> Gestore Configurazione CompizConfig), andare su Animazioni, Animazione di chiusura (poi ripetere i seguenti passi anche con Animazione di apertura), Andare sull’eventuale riga che cita Dissolvenza e il cui type comprenda Notification, modificare tale regola ed aggiungere alla fine questo:

& !(title=notify-osd)

Salvare e provare.

Quale parte di NO non hai capito?

Mi è arrivata una simpatica mail da Windows Live merda:

Ti contattiamo in merito alle tue impostazioni delle preferenze relative ai servizi di comunicazione Windows Live e MSN.

Le impostazioni correnti non consentono a Microsoft di inviarti informazioni promozionali o inviti a sondaggi di opinione su Windows Live e MSN. Vorremmo avere la possibilità di comunicarti importanti aggiornamenti di prodotto.

NO! NO! NO! NO!
Ti ho detto di NO, ok? E allora perché credi che io abbia anche solo lontanamente intenzione di volere la tua spam?

NO! NO! NO! NO!

Quale parte di NO! non hai capito?!?!?!?!?

Ma soprattutto, perché ho un account Windows Live? :-/

Blueproximity

Curiosando tra programmi improbabili, mi sono imbattuto in BlueProximity.

BlueProximity, fantastico!

BlueProximity, fantastico!

Questo programma permette di associare un dispositivo bluetooth (tipicamente il vostro cellulare), e non appena vi allontanate dal PC (la distanza e il tempo di lontananza sono configurabili) il computer verrà bloccato (facendo partire il classico screensaver con richiesta di password, mentre se vi avvicinate lo screensaver viene sbloccato automaticamente :-)

Come installarlo?

sudo apt-get install blueproximity

Da questo momento verrà caricato all’avvio di Gnome, ma comunque per questa volta lo potete avviare a mano, lo trovate sotto Accessori -> BlueProximity.

Richiede di associare un dispositivo (click su Ricerca dispositivi), selezionate il vostro cell e fate click su Utilizza il dispositivo selezionato.

Successivamente dobbiamo trovare un canale disponibile: click su Ricerca canali sul dispositivo, verrete avvertiti del fatto che il vostro cellulare potrebbe richiedere (mille volte) conferma, ebbene, fatelo.

Quando la ricerca è terminata, scorrete la lista fino a trovare un canale utilizzabile, e poi impostatelo sotto Canale RFCOMM.

Per comodità sul vostro cellulare mettete il vostro PC tra i dispositivi autorizzati, onde evitare inutili conferme!

Nota: una guida fatta bene la trovate sul sito dello sviluppatore.

Ho provato ad utilizzarlo un po’ di volte e son davvero contento, occhio a non farvi fregare il cellulare da famigliari curiosoni!!! :P

Aggiungere smileys animati con Pidgin? Certo!

Il piccione parlante

Il piccione parlante

UPDATE 30/05/09: ho riscritto la patch da zero in seguito alle modifiche recenti nel ramo di sviluppo, gli effetti sono gli stessi ma il procedimento seguito diverso :-)

Con pidgin, se cerco di aggiungere uno smiley ricevuto da un amico ai miei smileys, ho come effetto che viene salvato solo il primo frame, in pratica perde l’animazione.

Irritante.

Più irritante se penso che questo problema c’è da tempo immemore ma gli sviluppatori continuano a chiudere il ticket con stato: wontfix, perché il GdkPixBuf (non sviluppato da loro) non supporta il salvataggio in gif.

Bene, siccome mi ero rotto il cazzo di questa cosa, e un po’ per sfida, ho scritto una patch che utilizza un metodo non troppo pulito, ma che permette di aggiungere sto coso.

Come provarla?

Il metodo più semplice è quello di installare la versione di pidgin del mio repository, oppure se siete smanettoni dovrete applicare la patch al sorgente che dovete prendere dal ramo di sviluppo (attraverso monotone), applicarla, compilare ed installare pidgin! :-) [se avete bisogno di info a riguardo, contattatemi]

Per gli utenti di windows: la patch funziona (credo) anche per win, solo che non ve la posso compilare, dovrete farlo voi :-P

Problemi noti:

  • La patch permette di aggiungere uno smiley, non di salvarlo come immagine. Almeno per il momento. La nuova versione della patch (v0.6) permette anche di salvarli su file :-)
  • L’ho testata un pochino, ma non è mai sufficiente: ho bisogno di feedback ragazzi, datevi da fare e provatela!
  • Utilizzerà un po’ più memoria. Beh a dire il vero si parla magari di una 50ina di kB con un migliaio di smileys visualizzati, ma sono pignolo :-P
  • L’ho testata solo sul ramo di sviluppo (attualmente la 2.6.0dev), se qualcuno vuole portarla al ramo stabile (2.5.5) è il benvenuto :-)

Nerd area: come funziona funzionava (prima della v0.7)

Al momento della ricezione dello smiley, lo stream di dati viene salvato come file all’interno della cartella ~/.purple/remote_smiley_cache, con un nome univoco e nel formato originale inviato dal nostro contatto.

Viene creata una corrispondenza smiley_visualizzato<==>file_in_cache, in modo che al momento in cui faccio tasto destro sullo smiley e clicco su Aggiungi smiley personalizzato, lui non vada a chiedere al GdkPixBuf di salvarglielo, piuttosto gli chiedo di andare a leggere il contenuto del file in cache e di salvarlo tra gli smileys personalizzati.

Leggetevi la patch per maggiori info. Lo so, non è commentata, ma il codice di pidgin purtroppo non lo è mai, quindi ho semplicemente seguito lo stile attuale.