Appunti Javascript: i div magici che scompaiono

Altro appuntino facile facile per realizzare un trucchetto che può tornare utile senza bisogno di andarsi a cercare librerie aggiuntive. In un’applicazioncina che sto scrivendo mi serve un help contestuale in presenza di alcune parole chiave, e tra i tanti metodi che ho vagliato il quello che mi è sembrato meglio è riportare l’help dentro un div direttamente sotto la parola; questo div normalmente non è visibile, ma appare se clicco sulla suddetta parola (e scompare se clicco un’altra volta). Il meccanismo è semplice:

1) Una funzioncina javascript da mettere in cima al body della pagina:

<script type="text/javascript">
function toggleDiv(divid){
 if(document.getElementById(divid).style.display == 'none'){
 document.getElementById(divid).style.display = 'block';
 }else{
 document.getElementById(divid).style.display = 'none';
 }
 }
</script>

La funzione riceve il nome di un div nella pagina, ne valuta il parametro “display” (che definisce se il div è visibile “block” o invisibile “none”) e ne cambia il valore.

2) Un div (ovviamente :-) ):

<div id="aiuto"> Un aiutino: sii deciso e usa parole inventate fingendoti esperto. </div>

3) Un link nella pagina:

<!-- pagina -->
La funzione del giorno è: <a href="togglediv('aiuto')">Foniuglia  e Lordizzazione IRPEF</a>

Ecco fatto, dovrebbe funzionare.

PS: quanto esposto sopra va benissimo per progetti semplici o paginette php singole.. per un progetto più strutturato, come evidenziato precedentemente dall’illustre collega Frasten, conviene appoggiarsi a una libreria ben fatta come jQuery. Qui potete trovare un tutorial di come fare quanto descritto sopra con jQuery.

Creare una suoneria iPhone a partire da un MP3 con iTunes

Esiste un sistema molto semplice e altrettanto nascosto per creare una suoneria per iPhone a partire da un qualsiasi file audio presente nella libreria di iTunes. La procedura che segue è stata testata su Mac Os X e iTunes 9, ma immagino che con qualche lieve modifica potrebbe funzionare anche su Windows.

1) Assicurarsi che il file audio (di qualunque formato esso sia) sia presente nella libreria di iTunes.

2) Nel menu “iTunes” selezionare “Preferenze”; nella finestra della configurazione, nel tab “Generali”, c’è un pulsante  “Impostazioni importazione…”. Premere il pulsante e nella finestra risultante selezionare “Codificatore AAC”, “Alta qualità”. Confermare tutto con OK.

3) Premere il pulsante destro sul file audio di partenza (nella libreria iTunes) e selezionare “Informazioni”. Andare nella tab “Opzioni” e attivare le checkbox “Ora di Inizio” e “Ora di fine”. I valori corrispondenti devono essere modificati per fare in modo che la riproduzione duri complessivamente non più di 40 secondi.
NB: modificare questi valori NON modifica il file audio, ma solo il modo in cui viene riprodotto!
Dopo aver fatto le modifiche (e confermato con OK) provare a suonare il file per verificare che corrisponda alla suoneria che vogliamo ottenere. Potrebbero essere necessari più tentativi per selezionare esattamente il pezzo desiderato.

4) Una volta che il file di partenza è pronto, cliccarlo col pulsante destro e selezionare “Crea versione AAC”. Verrà creata nella libreria una copia del file di partenza, ma ridotta ai tempi impostati nel punto (3) e in formato AAC. A questo punto è possibile andare a rimuovere le modifiche fatte in precedenza sul file di partenza.

5) Possiamo rimuovere dalal libreria (SENZA spostare nel cestino) il nuovo file appena creato, ma prima prendiamo nota di dove si trova nel filesystem (pulsante destro sul file, Informazioni, parte bassa della tab “Sommario”).

6) Apriamo il Finder e andiamo  aposizionarci nella cartella che contiene il file, che avrà estensione “m4a”. Adesso la magia: modifichiamo il nome del file in modo che l’estensione sia “m4r”. Confermare.

7) Adesso spostiamo il file in una cartella in cui andremo a raccogliere le nostre suonerie, e poi andiamo ad aprirlo facendoci sopra doppio click. Fatto! La suoneria è stata inserita in iTunes, nella sezione “Suonerie” (che se prima non esisteva è stata creata).

8) Collegare l’iPhone al computer e verificare che sia attiva la sincronizzazione delle suonerie (vedi immagine sotto, clicca per ingrandire).

9) Non c’è il punto 9, è già fatto tutto!

Spero di essere stato sufficientemente chiaro.. se c’è qualcosa che non vi torna scrivetelo nei commenti. Sciao!!

TrekBuddy: ancora sul mobile gps tracking

Dopo il mio precedente articolo (che tanto è piaciuto, a giudicare dal numero di visite) sul gps tracking, ho scoperto un altro software molto carino allo scopo e vi vorrei raccontare qualcosa al riguardo. Il software in questione si chiama TrekBuddy, e già dal nome (in italiano “Compagno di Passeggiate”) chiarisce la sua funzione principale: fornire strumenti (legati ovviamente alla localizzazione gps) utili agli escursionisti (ma non solo). In particolare, è possibile visualizzare la posizione attuale su una mappa e registrare il percorso compiuto; in più esistono funzionalità particolari come ad esempio la possibilità di memorizzare waypoints.

trekbuddy_184

Per iniziare i dettagli tecnici: si tratta di un’applicazione Java (J2ME), e quindi dovrebbe essere compatibile con la maggior parte dei telefoni cellulari oggi in commercio. Richiede ovviamente una connessione GPS, che nella maggior parte dei casi si ottiene mediante bluetooth e ricevitore esterno. E’ inoltre consigliabile avere una buona quantità di spazio di archiviazione sul cellulare, non tanto per i 280 kilobyte dell’applicazione quanto per la richiesta di spazio per archiviare le mappe e i log di navigazione; molto consigliata una memoria esterna, che ormai tutti i cellulari moderni posseggono.

L’installazione avviene molto semplicemente copiando i files (scaricabili dal sito, sezione) .jad e .jar sul telefono, ad esempio copiandoli sulla memoria esterna. A questo punto è possibile lanciare (mediante il file manager del telefono) il file .jad, che avvierà l’installazione. Mi raccomando di non installare a partire dal .jar, che installerà si l’applicazione ma in modalità non firmata, il che porterà ad ottenere una serie di grattacapi durante l’uso. Non usiamo quindi il sistema di installazione applicazioni java previsto da software nokia (tipo il Phone Manager), ma installiamo a mano come sopra specificato.

Una piccola nota per i possessori di Nokia 6630 (e forse altri modelli), che potrebbero avere un fastidioso problema di permessi di installazione (ovvero un qualche errore di protezione durante l’installazione). L’applicazione richiede accesso a connettività bluetooth, filesystem, e altre parti delicate del telefono, e quindi è stata firmata digitalmente da un ente certificatore che ne attesta la sicurezza di funzionamento. Il certificato è stato emesso da un’azienda di nome Thawte; questo certificato è ricnosciuto dal cellulare (è presente nel suo elenco di certificati noti) ma per qualche ragione sconosciuta di default non è utilizzabile per dare fiducia ad applicazioni in fase di installazione. Per rimediare dobbiamo andare in:

Tools -> Settings -> Security -> Certif. Management

cercare il certificato di nome “Thawte Premium Server CA”, e premere Options -> Trust Settings. A questo punto verifichiamo che la voce “App. Installation” sia “yes”, e siamo a posto!

Ora l’installazione può terminare con successo.

Per quanto riguarda le mappe, queste non sono disponibili immediatamente o scaricate dalla rete al momento del bisogno: debbono essere create in precedenza su un computer e copiate sul cellulare (o meglio, sulla scheda di memoria). Suggerisco di utilizzare le mappe del progetto OpenStreetMap: esiste un sito da cui è possibile eseguire la creazione di una mappa per TrekBuddy, semplicemente selezionando l’area da prelevare e scegliendo il livello di zoom (consiglio livello 16 per girare in città, 14 o 15 per gite fuori porta). Una volta creata la mappa (ci vorrà un pò di tempo, portate pazienza) verrà proposto di scaricare un file compresso; decomprimiamolo e copiamo la cartella corrispondente sulla scheda di memoria del cellulare. Ultima raccomandazione: consiglio di creare più mappe piccole (delle dimensioni di una città, per dire) invece che una mappa sola enorme.

Ultima cosa: i permessi. Il programma fa uso massiccio di funzionalità che richiedono il consenso dell’utente (accesso al filesystem, accesso al bluetooth, e così via). Il certificato dovrebbe essere installato correttamente (vedi il corsivo sopra) ma questo non basta: bisogna specificare che il software ha questi privilegi sempre, altrimenti verranno richiesti ogni volta durante l’utilizzo. Per questo è sufficiente andare su:

Menu -> Strumenti -> Gestione Applicazioni -> TrekBuddy -> Impostazioni Gruppo

E impostare le voci “Leggi dati utente” e “Modifica dati utente” su “Sempre contentito”.

Adesso passiamo all’interfaccia del software: il tasto di selezione sinistro apre un menu di impostazione:

  • Start: avvia il posizionamento; verrà richiesto di selezionare l’antenna GPS bluetooth. Se è già stato eseguito in precedenza, ci sarà un’altra voce “Start [nomeperiferica]“, per avviare il tracciamento con il ricevitore utilizzato in precedenza.
  • Load map: la voce che ci occorre per caricare la mappa creata in precedenza.
  • Settings: una serie di impostazioni, troppe perchè le descriva qui. Le più importanti sono in:
    • Basic -> Data Dir: la directory di default in cui verranno salvati i dati; per i Symbian è qualcosa del tipo:
      file:///E:/TrekBuddy/ (E: corrisponde alla scheda di memoria).
    • Location -> Tracklog: specifica se ogni volta che verrà avviato il tracciamento con Start sarà anche memorizzato il percorso svolto.
    • Location -> TrackLog Format: formato di salvataggio dei tracklog (consiglio GPX).

Esistono moltissime altre voci di impostazione, consiglio di darci un’occhiata.

Una volta avviato il tracciamento, il pulsante 3 apre un ulteriore menu, stavolta di navigazione. In questo menu sono racchiuse le funzionalità di navigazione quali il salvataggio di waypoint, la visualizzazione e l’inseguimento degli stessi, e così via. Consiglio di giocherellarci, è qui che si nascondono le funzionalità più interessanti di questo programma (di cui magari un giorno parlerò in modo più approfondito).

Ps: pulsante “#” per visualizzare la bussola!

trekbuddy-3

Beh, per ora mi fermo qui che mi sono dilungato molto più del previsto. Ciao a tutti! Se avete problemi scrivete nei commenti, vedrò cosa posso fare :-) .

Imparare LaTeX con MacOsX in 2 minuti

Il LaTex è certamente il miglior sistema in giro per la composizione tipografica. Per chi non sapesse di che si tratta, altro non è che un sistema in grado di prendere un testo non formattato (scritto con un qualunque editor “stupido”) e trasformarlo in un documento ben impaginato; si possono poi inserire direttive dentro il testo che spiegano al compilatore come formattare al meglio il tutto (una sorta di “linguaggio di programmazione”).

latexlogo

Per prima cosa bisogna sfatare un mito: il LaTex non è nè difficile nè solo per professionisti della tipografia: può infatti essere usato da chiunque per produrre qualunque tipo di testo; inoltre è una vera manna dal cielo per chi deve inserire formule matematiche (anche se per quelle bisogna conoscere qualche comando in più), immagini con riferimenti incrociati, citazioni bibliografiche e indicizzazione gerarchica dei contenuti.

Installare LaTex sotto Linux è facile: sotto Ubuntu bastano una manciata di apt-get e siamo pronti a lavorare; installarlo sotto MacOs non è altrettanto semplice, o almeno non lo era fino a quando non ho scoperto MacTeX; si tratta di una suite completa di compilatore (con tutti i millemila sotto-compilatori che ci girano attorno) e ambienti di sviluppo per iniziare subito a produrre col computer della Mela.

mactexlogox5

Il software si scarica (gratuitamente, trattandosi di software Open Source) dal sito; non è una cosa da poco, parliamo di un pacchetto grosso 1,2 GB circa, anche se esiste una versione per persone con limitazioni alla connessione (ad esempio, i cittadini italiani). Una volta scaricato, basta un doppio click ed inizia la procedura di installazione. Una volta installato, in “Applicazioni” sarà presente una nuova cartella denominata “Tex” contenente gli applicativi. Consiglio ai neofiti di usare l’ottimo TexShop.

texshopicon

Per iniziare e creare il nostro bel documento di prova, consiglio di inserire in modo automatico le intestazioni nella pagina vuota (quelle che spaventano sempre i novellini, ma che in realtà possiamo tranquillamente lasciare come sono): dal menu a tendina in alto a destra (Templates), selezioniamo “Latex template”. Ecco, adesso non spaventatevi; piuttosto dateci un’occhiata, non è nulla di così incasinato come può sembrare. Possiamo ad esempio distinguere il tag Author, che contiene il nome del’autore del testo, o il tag Title (abbastnza autoesplicativo).

Quando vi siete ripresi dallo shock, scrivete una frase nel documento (prima del tag \end{document}), salvate con nome in una cartella vuota e premete il pulsante “Typeset” in alto a sinistra. Se tutto va bene, dopo un pò di compilazione dovrebbe apparire il pdf del vostro primo documento in latex! Congratulazioni!

latexesempio02

latexesempio01

E fin qui nulla di speciale.. Qualunque editor potrebbe farlo, no? Ma il bello è che qui i normali editor si fermano, mentre le funzionalità del LaTeX non sono ancora entrate in scena. Adesso non mi voglio mettere a descrivere tutte le funzionalità del LaTeX, un pò perchè non mi basterebbe una vita e un pò perchè sono convinto che nessun essere umano le conosca tutte. Vi porto però un esempio relativo alla creazione dell’indice (mediante il comando \tableofcontents, i comandi si riconoscono perchè hanno un backslash \ davanti) e la divisione in capitolo, sottocapitoli e così via del documento.

latexesempio03

latexesempio04

Provate a convincere Word a fare una cosa del genere con così poca fatica! Prossimamente scriverò qualche altro piccolo tutorial sul latex, dato che al momento lo sto usando parecchio (tipo per scrivere la tesi). Comunque vi lascio un paio di link interessanti (i primi che ho trovato cercando su Google): il sito del GISS (molto ben fatto) e un’introduzione sul sito del dipartimento di matematica di Harvard.