Archivio

Selezionare il codice inserito quando ci si clicca sopra

Da quando ho iniziato a scrivere sul blog mi sono sempre trovato in difficoltà con l’inserimento di codice, avevo cominciato mettendolo nelle textarea - cosa ignobile da fare col senno di poi - in modo da non rovinare il layout quando nel codice le parole erano troppo lunghe e non venivano wrappate correttamente. Successivamente mi son letto un po’ di manuali base di CSS e ho finalmente capito che il metodo migliore è inserirlo all’interno del tag PRE, assicurandosi di definire uno stile che tenga conto dell’overflow e non faccia sballare troppo la pagina.

Questo è lo stile che uso io:

pre {
	font-family: Courier,monospace;
	background: #EEE;
	font-size: 1.1em;
	line-height: 1.1em;
	border: dashed #666 1px;
	padding: 15px 20px 15px 20px;
	overflow: auto;
}

In particolare la riga:

overflow: auto;

serve per “nascondere” le righe troppo lunghe (è facile accorgersene perchè appariranno le scrollbar). Il fonte tutto Il resto è modificabile a piacimento. Io uso un font monospace come il Courier ma è possibile opti per un altro tipo di carattere in futuro.

Un’altra cosa che mi è sempre piaciuta è fare in modo che il codice inserito sia automaticamente selezionato quando ci si clicca sopra, cosa che devo aver visto su qualche blog di cui non ricordo l’indirizzo. Cercando un po’ con Google sono finalmente riuscito a trovare una risposta :-) . Per fare in modo che il codice venga automaticamente selezionato è necessario associare all’azione onClick dell’elemento un po’ di codice Javascript.

Ecco quindi cosa aggiungere al tag PRE per selezionare automaticamente il testo in esso contenuto:

<pre onClick="
if (window.getSelection) {
	var sel = window.getSelection();
	var range = document.createRange();
	range.selectNodeContents(this);
	sel.removeAllRanges();
	sel.addRange(range);
}
else // per colpa di IE serve un if
	document.selection.empty();
	var range = document.body.createTextRange();
	range.moveToElementText(this);
	range.select();
}
“>
codice
</pre>

(gli a capo sono messi solo per motivi di visualizzazione)

Come al solito per farlo funzionare anche con IE è necessario scrivere codice aggiuntivo :-P Naturalmente è possibile associare il codice anche a tag diversi dal PRE, mentre per i tag INPUT e TEXTAREA si deve modificare un po’ il codice utilizzato.

Naturalmente io aggiungo quel codice automaticamente usando un programmino di text & replace (praticamente scrivo pre seguito da TAB), è comunque possibile aggiungere uno script alla pagina e richiamare il codice nel seguente modo:

<pre onClick="autoSelect(this);">
codice
</pre>

Per il codice della funzione autoSelect vi rimando all’articolo da cui ho scopiazzato il codice :-) .

Nel mio caso, non inserendo codice così spesso, preferisco far risparmiare al browser il caricamento di una funzione Javascript inutilizzata nella maggior parte delle pagine. Per lo stesso motivo, non credo di sovvracaricare ulteriormente il blog con uno script di syntax hightlighting

Technorati Tags: , ,

Guerre Stellari in Ascii Art

Da Lifehacker, ecco come guardarsi via Telnet il quarto episodio («Una nuova speranza») di Guerre Stellari in Ascii Art :-D . Cosa assolutamente inutile però da fan di Star Wars e amante dell’ascii art non potevo non apprezzare :-) . Ben inteso, di guardarmi tutti i 13935 frame non ci penso nemmeno, però un’occhiata veloce l’ho data ed è davvero ben fatto ! Peccato non si possa mandare avanti :-P

Per chi, come il sottoscritto, non conoscesse ancora questo vecchio trucchetto è sufficiente digitare da prompt dei comandi:

telnet towel.blinkenlights.nl

ovviamente è cross platform :-) . Che la forza sia con voi :-)

Screenshot di un frame dell'episodio quarto di guerre stellari via Telnet

Fonte: Lifehacker

Technorati Tags: ,

Ti è piaciuto l'articolo? Vota Ok oppure No. Grazie Mille!

Puoi votare l'articolo anche qui, gli articoli precedenti qui.
Se ti è piaciuto l'articolo puoi votarlo. Grazie!

Blogbabel, è la fine ?

Oggi stavo, come al solito, guardando il feed RSS di Blogbabel e vedo che non funziona, incuriosito ho cercato di caricare la homepage (il feed RSS è creato via Dapper e pensavo il problema fosse dovuto al server di Dapper, ogni tanto succede) e invece vedo questo messaggio:
Ci siamo stufati

BlogBabel è temporaneamente sospesa.

Ci siamo stufati dell’arroganza di alcuni blogger italiani, che pensano di poter ricattare un servizio offerto alla comunità e al grande pubblico, e non perdono occasione per trasformare qualsiasi discussione in un litigio da riunione di condominio.

In particolare, grazie a [.......], e gli altri che continuano a non capire che un motore di ricerca ha poco a che fare con la licenza d’uso dei contenuti. Vi manca BlogBabel? Parlatene con loro.

Matteo che notoriamente è più equilibrato di me, mi suggerisce di riportare un messaggio che ho pubblicato poco fa nel gruppo di discussione pubblico. Eccolo:

Non so se [la sospensione] sarà temporanea o meno: l’idea di avere qualche testa calda che decide di farmi causa mi sconforta abbastanza, dopo tutto il tempo e le energie spese per fare BB, doverne impiegare altrettante (e soldi ovviamente) per difendermi dalle accuse di qualche megalomane mi sembrerebbe davvero un calcio nei denti…

Sinceramente non ho mai seguito con molto interesse i battibecchi stile bimbi dell’asilo sull’argomento, e quindi non so bene i motivi che hanno portato alcuni blogger ad una campagna anti blogbabel, questo post è solo di disappunto visto che a me il servizio offerto tornava molto utile. Non tanto per la classifica in sè (negli ultimi mesi devo essere sceso di circa duemila posizioni), ma piuttosto per l’ottima indicizzazione delle notizie dai blog italiani, peccato :-( .

Io ci mettevo pure i blogbabel tag a fine post ora mi toccherà cambiarli :-P .

Parere mio, se questo comportamento infantile facesse proseliti, può chiudere anche la blogosfera, chiusa per eccesso di stupidità ! (avevo scritto idiozia, ma avevo sbagliato termine :-P )

« Uno stupido è una persona che causa un danno ad un’altra persona o gruppo di persone senza nel contempo realizzare alcun vantaggio per sé o addirittura subendo una perdita »

(Carlo Maria Cipolla)

Technorati Tags: , ,

Se ti è piaciuto l'articolo puoi votarlo. Grazie!

Search plugin per Google in Klingon

Visto che non sapevo che fare :-P , ecco due search plugin per usare Google localizzato in . Anche non conoscendo il Klingon, non dovrebbe essere difficile orientarsi fra le pagine di Google, visto che, anche senza localizzazione, si dovrebbe conoscere a memoria l’utilità delle varie voci.

Io consiglio di installare il secondo che utilizza la versione accessibile di Google (Google Beta Shortcuts), che permette di navigare molto più velocemente nella pagina dei risultati.

Per chi usa Firefox 3 (o SearchWord) le keyword sono rispettivamente: gkl per la normale ricerca in Google Klingon e gskl per la ricerca con Google Beta Shortcut, naturalmente rigorosamente in Klingon :-) . Enjoy !

Il logo usato come icona per il motore di ricerca viene da qui.

Già che ci sono segnalo altri due bei articoli, uno recente l’altro un po’ meno, per approfondire la questione: « Google: Easter Egg e scherzetti vari » che, in periodo pasquale e ormai prossimi al primo aprile, potrebbero avere un qualche interesse:

Una raccolta dei migliori Easter Egg e scherzetti fatti da quei simpaticoni di Google, il giochetto in Java del coniglietto alla presa con le uova è simpatico .-)

Se non volete aspettare le tre del mattino per vedere Nessie, potete seguire i consigli dati sul blog e applicare l’apposito foglio di stile :-)

Technorati Tags: , , , ,

Ti è piaciuto l'articolo? Vota Ok oppure No. Grazie Mille!

Puoi votare l'articolo anche qui, gli articoli precedenti qui.
Se ti è piaciuto l'articolo puoi votarlo. Grazie!

Comparativa fra i server DNS di OpenDNS e quello del provider

Prendendo spunto da un articolo di Digital Inspiration, ho voluto mettere a confronto la velocità del server DNS del mio provider internet (Tele2) rispetto a quello di OpenDNS.

Siccome di mettere come prompt l’ora non mi convinceva affatto - troppo tempo perso a incollare la stringa per la query - ho fatto due file BATCH che prendono come input un qualunque dominio e restituiscono come output l’orario prima della query e l’orario dopo la query, la differenza è il tempo impiegato per risolvere l’indirizzo IP da parte dei due server DNS.

opendns.bat

@echo off
echo %time%
nslookup %1 208.67.222.222 > %temp%\tmp.txt
echo %time%
del %temp%\tmp.txt

tele2dns.bat ( dns1-it.swip.net)

@echo off
echo %time%
nslookup %1 193.12.150.2 > %temp%\tmp.txt
echo %time%
del %temp%\tmp.txt

Facendo una ventina di query, a orari diversi, sembra effettivamente che il server DNS di Tele2 sia più veloce di quello di OpenDNS (circa 5/10 centesimi di secondo in meno), ma, ho ottenuto persino risultati in cui questo comportamento “medio” veniva stravolto e il server di OpenDNS era più prestante nella risoluzione dell’indirizzo IP. Il tempo impiegato per la risoluzione degli indirizzi va dai quattro ai sette decimi di secondo, quello di Tele2 mediamente impiega cinque decimi di secondo, quello di OpenDNS ne impiega circa sei.

Secondo me, troppi fattori in gioco per azzardarsi a fare grafici e comparative di vario genere, ecco uno screenshot di un caso limite dove il server di Tele2 sembra addormentato: più di un secondo contro i 47 centesimi di quello di OpenDNS (meno della metà):

Screenshot del prompt dei comandi che mostra un caso limite: 47 centesimi per OpenDNS e oltre 100 per quello di Tele2

In media il server DNS fornito dal provider ( ele2 nel mio caso) sembra essere più prestante.

Quindi, visto che un decimo di secondo è relativamente insignificante come differenza, usate il server che vi pare :-) , se poi volete fare ancora prima, scaricate ShowIP e modificate il file HOSTS. del vostro sistema operativo.

Fonte: Digital Inspiration.

Technorati Tags: , , ,

Ti è piaciuto l'articolo? Vota Ok oppure No. Grazie Mille!

Puoi votare l'articolo anche qui, gli articoli precedenti qui.
Se ti è piaciuto l'articolo puoi votarlo. Grazie!

…per arrivare là dove nessuno è mai giunto prima

Web, ultima frontiera. con Firefox puoi esplorare nuovi siti, alla scoperta di nuove comunità Web2.0, per arrivare là dove nessuno è mai giunto prima.

Foto della nebulosa che assomiglia al logo di Firefox

(foto di proprietà di Frank)

Fonte: Asa Dotzler’ s Blog

Technorati Tags: , , ,

Se ti è piaciuto l'articolo puoi votarlo. Grazie!

Enso diventa OpenSource

Il team di Humanized ha deciso di rilasciare Enso, un software nato per semplificare l’usabilità, con . La decisione è maturata per permettere agli sviluppatori di aggiungere comandi per far interagire Enso con le proprie applicazioni, Enso infatti, è nato per garantire una migliore usabilità dei software e la sua utilità è direttamente proporzionale al numero di quelli con cui riuscirà ad integrarsi, citando dal blog di Humanized:

Why are we doing this?

For Enso to have a chance of becoming the universal tool that we envisioned, it has to be compatible with an ever-expanding number of applications as well as providing an ever-expanding number of commands. For instance, there’s a program called GVim; Enso’s text-selection commands are currently incompatible with GVim because the latter has a unique way of handling text selections. A few users have complained to us about this, and while we’re sympathetic, we’ve had to pull a Spock and say “The needs of the many outweigh the needs of the few” as we focused the limited resources of our 4-person development team on getting the most popular commands to work with the most popular applications. The closed-source development model limits what we can do. It doesn’t scale well to the problem of an ever-expanding number of applications and an ever-expanding number of commands

Ora che è Opensource è anche possibile che presto venga resa disponibile una versione per altri sistemi operativi. Cosa che non mi sarei mai aspettato: il codice sorgente è in Python, il più umano dei linguaggi di programmazione e di sicuro quello che al momento conosco un po’ meglio. Non che abbia aspirazioni di sviluppare il codice, ma se vedo che creare comandi è relativamente semplice un pensierino ce lo posso fare :-) .

Per chi non lo conosce, Enso è un tentativo di superare le limitazioni delle attuali interfacce utente proposte dai sistemi operativi, un modo per integrare alle interfacce grafiche la praticità della vecchia linea di comando, che se si sa cosa si vuol fare permette di farlo in maniera molto più veloce. Per ora le uniche due componenti rilasciate come release sono il launcher ed Enso Word (un correttore ortografico globale), ma molte altre vengono rese disponibili in versione beta. Anche se, come app launcher puro e semplice preferisco Launchy, le potenzialità di Enso, soprattutto ora che è OpenSource, sono maggiori e vanno ben oltre la semplice apertura di applicazioni.

Per fare un esempio una delle componenti permette di controllare il proprio player preferito, un’altra di operare traduzioni al volo e così via, tutto questo senza la necessità di aprire il player o il browser ed usare Google Translate.

Per esempio vediamo come si può tradurre dall’inglese all’italiano del testo senza lasciare il text editor in uso o senza aprire una scheda del browser per usare Google Translate. Bene, selezioniamo il testo da tradurre, premiamo CAPSLOCK digitando il comando:

translate to italian

Screenshot di Enso. nell'immagine si vede cosa accade quando si preme CAPSLOCK e si digita il comndo tranlsate

Si noti che non è necessario digitare il comando per intero, è sufficiente digitare le lettere iniziali del comando e l’autocompletamento farà il resto.. Il risultato verrà sostituito al testo selezionato se ci si trova all’interno di un text editor o in una textarea del browser, altrimenti verrà aperta una finestrella che riporterà il testo tradotto.

Non è però che sia tutto rose e fiori :-P . Il traduttore ha almeno un paio di problemi:

  • il risultato della traduzione non è sempre eccelso (credo usi Google Translate), e comunque questo non è un problema imputabile a Enso :-P ;
  • c’è un grosso problema con l’encoding dei caratteri, le accentate ad esempio vengono sostituite da dei punti di domanda :-P ;

il traduttore è comunque in versione Beta ed è quindi probabile che venga migliorato al più presto.

A chi volesse installarlo consiglio di iniziare con il solo Launcher ed eventualmente di installare tutte le componenti solo dopo aver fatto un po’ di pratica con il funzionamento del software. Al momento - purtroppo - non è possibile disinstallare le componenti singolarmente. A prescindere dalle componenti installate è possibile ottenere l’elenco dei comandi attivi premendo CAPSLOCK digitando il comando: commandlist..

Technorati Tags: , , ,

Ti è piaciuto l'articolo? Vota Ok oppure No. Grazie Mille!

Puoi votare l'articolo anche qui, gli articoli precedenti qui.

Recensione di iswitch-tabs, estensione per Firefox che permette di aprire le schede in modo più semplice

Oggi, dopo un bel po’ di tempo che non scrivo su questo blog, vorrei presentare un’estensione che, a mio parere, va nella giusta direzione: cioè quella di rendere più usabile un’applicazione. Niente di che, dirà qualcuno, però secondo me l’idea di questa estensione è geniale, anche se non è fra quelle pubblicizzate su Firefox Addons (pure nome gli hanno cambiato e non a caso credo ::-P ). Fra parentesi, mi piacerebbe sapere chi sceglie i « Componenti aggiuntivi consigliati», no perchè io di quelli consigliati non ne installerei nemmeno uno :-P .

L’estensione si chiama iswitchbtabs e permette di fare una cosa semplicissima: accedere alle schede aperte usando solamente la tastiera. Lo sviluppatore Chris Danis si è ispirato al famoso editor di testo su piattaforma Linux: Emacs (che non ho mai imparato ad usare :-P ) che ha una feature simile. In pratica è sufficiente premere F9 per far apparire una finestrella con elencate tutte le schede aperte in quel momento:

Screenshot della schermata di iswitchb-tabs che mostra le schede aperte in Mozilla Firefox

iniziando a digitare del testo l’elenco delle schede comincerà a ridursi mostrando solamente quelle che soddisferanno il pattern digitato, dando invio si aprirà la prima scheda che appare nella lista. Perchè questo dovrebbe essere utile ? Ecco qualche buon motivo:

  • se le schede aperte sono tante, il loro nome è tagliato, a volte rimangono solo poche lettere visibili (il numero delle schede aperte può variare a seconda della risoluzione dello schermo o del tema utilizzato). Questo ovviamente rende complicato riconoscerle;
  • si può tranquillamente fare a meno della barra delle schede;
  • anche dal punto di vista dell’accessibilità, credo, sia un ottimo metodo per muoversi velocemente fra le schede.

L’unica cosa che, secondo me, potrebbe essere migliorata è quella di proporre le schede aperte in un menu a scomparsa nella barra di stato anzichè in una finestra popup (like Nostalgy for TB). . In realtà, sto anche cercando di fare questa piccola modifica prendendo spunto dalle due estensioni in oggetto, ma sono ben lungi dal venirne a capo (avevo già richiesto nella mailing list di Nostalgy, la scorsa settimana ho messo pure un commento nella pagina di iswitchb-tabs su Firefox Addons ma senza risultati (il commento su A.M.O. è in attesa di moderazione :-P ).

In realtà, inizialmente avevo dei progetti più ambiziosi, però la mia scarsa conoscenza di Javascript e Xul mi ha fatto desistere :-P . Quello che volevo fare era rendere accessibili tutti i menu di Firefox (File, Visualizza, Strumenti…) usando l’autocompletamento, comunque ci ho rinunciato :-P . All’idea di modificare iswitchb-tabs per farla funzionare come Nostalgy invece, non ho ancora desistito :-P .

In realtà, io speravo che fosse possibile richiamare la scheda aperta in Firefox, e più in generale di tutte le applicazioni in uso, con Enso ma, almeno qui da me, non è possibile richiamare le schede, è invece possibile richiamare le finestre di qualunque applicazione in uso e per questo ha una sua ragione di rimanere installato :-) . Visto che, gli sviluppatori di Enso sono stati ingaggiati da Mozilla è comunque possibile che ci siano gradite novità a breve :-) .

Download: iswitchb-tabs.

Technorati Tags: , , ,

Ti è piaciuto l'articolo? Vota Ok oppure No. Grazie Mille!

Puoi votare l'articolo anche qui, gli articoli precedenti qui.

Arriva Mozilla Messaging :-)

Finalmente, dopo un periodo di stallo dovuto al lancio del nuovo progetto di Mail Co, sono state messe le fondamenta per il nuovo progetto, che è stato ribbattezzato Mozilla Messaging, e che si propone di ridisegnare il modo di comunicare online. Nel breve periodo gli sforzi saranno incentrati allo sviluppo del nuovo Thunderbird 3.0, con l’integrazione al suo interno di funzionalità di calendario e un miglioramento delle capacità di ricerca, ma nel lungo periodo Mozilla Messaging si ripromette di diventare una vera e propria applicazione centralizzata per la gestione delle comunicazioni online con la possibilità di integrare funzionalità di istant messaging ed eventuali nuove tecnologie future che si affacceranno all’orizzonte.

Dal blog di David Ascher ecco i punti fermi del nuovo Thunderbird 3.0: (il cui rilascio è pronosticato per fine anno)

* integrated calendaring (building on the great work done by the Mozilla Calendar team and their Lightning add-on to Thunderbird),
* better search facilities,
* easier configuration,
* and a set of other user interface improvements.

Speriamo sia l’inizio di una nuova rinascita per Thunderbird :-D
Fonte: David Ascher (CEO del progetto Mozilla Messaging)

Altri link:

Technorati Tags: ,

Impedire che un processo porti l’uso della CPU al 100%

Capita a volte che un processo consumi completamente la CPU come quando, ad esempio, si converte un file video o si effettua la compressione di un archivio. Per continuare ad utilizzare anche altri programmi in questi casi è necessario aprire il Task Manager di Windows è chiudere forzatamente il processo o settare la sua priorità ad un livello più basso.

Non è detto però che quando un processo blocca il vostro PC sia poi così semplice aprire il Task Manager ed effettuare queste operazioni, solitamente l’operazione richiede qualche minuto. Process Tamer è un piccolo software sviluppato da Mouser che può venirci in aiuto in questi casi.

Una volta installato, Process Tamer regolerà automaticamente la priorità dei singoli processi, abbassandola nel momento in cui uno di essi verrà beccato con le mani nella marmellata mentre sta intasando la CPU.

Si possono inoltre impostare delle regole di comportamento da seguire con particolari processi, scegliendo la loro priorità di esecuzione, dicendo a Process Tamer di ignorarli e persino di terminarli non appena vengono rilevati (in questo caso tanto vale disinstallare il software :-P ). Process Tamer può essere facilmente disattivato utilizzando il menu richiamabile dall’icona nella sys tray. Se ad esempio volete masterizzare un CD, e nel frattempo non impegnate il computer in altre operazioni è meglio disattivare Process Tamer che altrimenti rallenterà l’esecuzione della masterizzazione.

La licenza

Il prodotto è freeware e può essere utilizzato senza alcuna limitazione, l’unica noia è il nag screen che appare alla sua apertura. Per rimuoverlo è necessario iscriversi al loro forum, eseguire il login e, assicurandosi di avere i cookie abilitati, visitare la pagina di richiesta della licenza (link a fine post). La licenza è valida sei mesi passati i quali sarà necessario richiederne un’altra. Al termine di questa seconda licenza sarà possibile ottenerne una senza alcuna limitazione (essendovi iscritti al forum sarà immediato ottenere le successive licenze).

Requisiti di sistema: Windows 2000, Windows XP, Windows Vista

Link:
Process Stamer Download Page
Pagina per la richiesta di una licenza gratuita
Video tutorial all’utilizzo di Process Tamer

UPDATE: segnalato nei commenti da @RNIk un altro software freeware che ha più o meno le stesse funzionalità di Process Tamer: Process Lasso.

Technorati Tags: , , , ,

Ti è piaciuto l'articolo? Vota Ok oppure No. Grazie Mille!

Puoi votare l'articolo anche qui, gli articoli precedenti qui.