Archivio

Archivio per novembre 2009

Abilitare sintassi LaTeX su Mediawiki

29 novembre 2009 Alberto Nessun commento

Ciao a tutti, chi di voi non ha mai avuto sul proprio spazio web un motore wiki? chi di voi ha mai voluto abilitare la sintassi LaTeX su questo spazio?

Forse quasi nessuno… in ogni caso volevo scrivere qui i passi che si devono fare per abilitare la sintassi LaTeX in un motore wiki. Questo abilitazione vi consente di inserire direttamente nella pagina delle formule scritte nel linguaggio LaTeX, noto ai matematici, per scrivere delle formule con la giusta formattazione. LaTeX è, di fatto, lo standard de facto per la scrittura di articoli scientifici di matematica, fisica, informatica, etc.
Questa la configurazione server/wiki su cui è stato testato:

  • Server su servizio di hosting gratuito (altervista)
  • MediaWiki 1.15.1 (motore opensource con il quale viene fatta girare Wikipedia)

Nel mio caso dato che il server non è gestito direttamente da me, io posso solo uplodare file e installare applicativi per il web (drupal, joomla, wordpress, MediaWiki, dokuwiki…) non mi è consentito di installare il compilatore LaTeX, quindi per poter fare il rendering delle formule è necessario appoggiarsi su un servizio esterno che faccia il rendering per me e poi mi mandi il risultato. Sul sito di MediaWiki ho trovato questo tutorial: LaTeX on a shared host, che come si legge

It is possible to run LaTeX under a shared host. It might not be beautiful, but it works. If you wish to do this, be aware that this is not an official hack.

In effetti le formule non sono bellissime da vedere ma almeno ho delle formule scritte come si comanda. Come si legge nella pagina io sono nel caso

If you don’t have CGI support, use a public mimeTeX server

I passi da fare sono i seguenti

  • Andare sul server e prendere il file $WikiPath/includes/Math.php, dove $WikiPath è il path della vostra installazione. Alla fine del file c’è questa funzione php:

    public static function renderMath( $tex, $params=array() ) {
    global $wgUser;
    $math = new MathRenderer( $tex, $params );
    $math->setOutputMode( $wgUser->getOption('math'));
    return $math->render();
    }

    a questa funzione si deve aggiungere il percorso del servizio che farà il rendering delle formule per voi e che poi vi manderà il risultato. I percorsi che potete inserire sono:

    http://www.forkosh.dreamhost.com/mimetex.cgi

    http://www.forkosh.dreamhost.com/mathtex.cgi


    la riga da aggiungere è la seguente:

    return '< img class="tex" src="percorso_che_volete?' . rawurlencode($tex) . '" alt="LaTeX: ' . htmlspecialchars($tex) . '">';

    al posto di percorso_che_volete dovete mettere uno dei due, la funzione quindi diventerà:

    public static function renderMath( $tex, $params=array() ) {
    return '< img class="tex" src="percorso_che_volete?' . rawurlencode($tex) . '" alt="LaTeX: ' . htmlspecialchars($tex) . '">';
    global $wgUser;
    $math = new MathRenderer( $tex, $params );
    $math->setOutputMode( $wgUser->getOption('math'));
    return $math->render();
    }

    nella riga che ho aggiunto si deve togliere lo spazio tra return '< e img class="tex", che ho dovuto mettere altrimenti mi veniva restituita una formula, ricordatevi di tenere il ? dopo l'url

    Quando avete fatto le modifiche prendete il file e rimettetelo sul server sovrascrivendo quello precedente

  • Prendete il file $WikiPath/LocalSettings.php e abilitate la sintassi LaTeX andando a cercare la righe

    ## If you have the appropriate support software installed
    ## you can enable inline LaTeX equations:
    $wgUseTeX = false;

    cambiandole in

    ## If you have the appropriate support software installed
    ## you can enable inline LaTeX equations:
    $wgUseTeX = true;

    anche in questo caso prendete il file, rimettelo sul server sovrascrivendo quello vecchio.
  • A questo punto potete introdurre le forumle LaTeX scrivendo nel codice della pagina

    < latex>
    formula
    < /latex>

    Anche in questo caso dovete togliere lo spazio tra < e latex (anche per il tag di chiusura) che ho dovuto mettere altrimenti non avreste visto il tag.

Spero che questo possa tornare utile a qualcuno.

Ciao Alberto

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)
Categorie:LaTeX, Notizie Tag:

Il “Parla con…” di Facebook in python

28 novembre 2009 Alberto Nessun commento

A volte sono proprio da rinchiudere!!!!

Ciao quante volte avete visto sulla vostra pagina di Facebook l’applicazione “Parla con…”? Questa applicazione prende a caso una frase di un dato personaggio, precedentemente inserita, e ve la mostra. Prima di ricominciare a studiare ho deciso di rifare questa applicazione in maniera molto semplificata in python in modo che si possa usare anche offline. Questo è il sorgente python:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import random
 
def frase(lista): 
	lung = len(lista) #qui calcolo la lunghezza della lista
	random.seed()
	estratto = random.randint(0,lung-1)  #estraggo un numero il numero che corrisponde ad una frase
	print"\nIl PARLA CON ti dice:  %s\n" %(lista[estratto])
 
coscienza = ["Sei un coglione","Oggi hai fatto il tuo dovere","Mettiti a studiare!!!","Non ti comporti bene con gli altri"]
fidanzata = ["Sei sempre il mio amore","Ti amo","Scappiamo insieme?"
			,"Non mi basti mai!","Oggi sei stato distante","Facciamo una cenetta romantica?"]
 
print "\nCon chi vuoi parlare?"
print "  1) Se vuoi parlare con la tua coscienza digita 1"
print "  2) Se vuoi parlare con la tua fidanzata digita 2"
scelta = input("La tua scelta: ")
 
if scelta==1:
       frase(coscienza)
if scelta==2:
       frase(fidanzata)

state attenti all’indentazione, fondamentale in python, da mettere nella definizione della funzione frase e nelle istruzioni dentro gli if.

Non penso ci siano bisogno di commenti, il programmino è talmente semplice. Ovviamente voi potete cambiare le frasi che ci sono nelle liste, aggiungerle, toglierle, aggiungere nuove liste, cambiare il “menù” di scelta ricordandovi di mettere le nuove scelte negli if.

Ciao Alberto

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)
Categorie:Notizie Tag:

Preparazione per il TOEFL Test sotto Linux

28 novembre 2009 Alberto Nessun commento

Come da titolo la mia “unica” occupazione universitaria in questo periodo è la preparazione dell’esame per il TOEFL che dovrò fare il 12 dicembre. Senza entrare nei dettagli, devo fare questo test per il riconoscimento di una lingua oltre a quella italiana necessaria per l’iscrizione alla laurea specialistica.
Il test è diviso in 4 sezioni: reading, writing, speaking, listening. Penso che le parti più difficili da preparare siano la listening e la speaking (quest’ultima difficilissima).
Il Politecnico per facilitare la preparazione mette a disposizione anche una aula, la N.2.4, con postazioni computer (purtroppo con Windows) contenenti alcuni software per la preparazione dell’esame.

Per prepararsi al test vengono inoltre messi a disposizione alcuni strumenti: il libro in cui viene descritto il test e tutti gli skill per prepararsi e suggerimenti su come affrontare le varie parti. All’interno del libro c’è anche un mitico CD contenente uno dei software installati sui computer del Poli, tuttavia sul cd appare una bella scritta

for MAC and Windows

c’era da aspettarselo!
Non mi sono dato per vinto e ho provato a installare lo stesso il software utilizzando Wine, un programma che, come si legge dal sito,

Run Windows applications on Linux, BSD, Solaris and Mac OS X.

e… funziona!!! L’unico problema è che necessita del CD inserito (questa richiesta c’è anche in Windows). Ora posso preparare l’esame anche se dover necessariamente andare al Poli ;-)

Ciao Alberto

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)
Categorie:Notizie Tag:

La mia scheda wireless dopo la sospensione

16 novembre 2009 Alberto Nessun commento

Ciao a tutti, ieri ho deciso di sistemare finalmente un piccolo problema che mi dava noia. Quando sospendevo il pc alla successiva “rimessa in moto” c’era un problema con l’interfaccia wireless; l’intefaccia non veniva riattivata correttamente perchè il suo modulo del kernel era un po’ capriccioso, riuscivo a riattivarla con il classico

sudo ifconfig wlan0 up

ma poi quando cercavo di risettare a connessione wifi non faceva lo scan delle reti dando come errore

[[email protected] ~]$ iwlist wlan0 scan
wlan0 Failed to read scan data : Resource temporarily unavailable

ho quindi googolato un po’ e alla fine sono arrivato a capire che era il modulo del kernel che gestiva la scheda wireless che al riavvio dalla sospensione non riusciva a “ripartire” correttamente. Il passo successivo era capire quale fosse il fantomatico modulo del kernel. La mia scheda wireless è

[[email protected] ~]$ lspci | grep At
02:00.0 Ethernet controller: Atheros Communications Inc. AR5001 Wireless Network Adapter (rev 01)

e i moduli del kernel caricati per la scheda wireless (quando è tutto ok) penso siano

[[email protected] ~]$ lsmod | grep ath
ath9k 239188 0
ath5k 127364 0
mac80211 155788 2 ath9k,ath5k
ath 7708 2 ath9k,ath5k
cfg80211 90364 4 ath9k,ath5k,mac80211,ath
led_class 4000 3 ath9k,ath5k,applesmc

fancedo un po’ di tentativi ho scoperto che rimuovendo ath9k e ath5k e poi facendoli ripartire, avevo ancora tutte le funzionalità della scheda wireless e quindi lo scan delle reti e l’aggancio alle reti disponibili, i comandi che devo dare sono nell’ordine

modprobe -r ath9k
modprobe -r ath5k
modprobe ath5k
modprobe ath9k

con i permessi di superutente. Dato che non voglio ogni volta ridigitare questi quattro comandi ho creato un piccolo script che lo fa al posto mio. Mi è bastato creare un file di testo, che nel mio caso si chiama su_wlan0 e aggiungere i quattro comandi in sequenza, dargli i permessi di esecuzione (e non solo…)

sudo chmod 777 su_wlan0

l’ho poi spostato nella cartella /usr/bin, in questo modo quando riavvio il pc dalla sospensione mi basta dare

sudo su_wlan0

ed ecco che ho la mia bella scheda wireless perfettamente funzionante dopo la sospensione.

Ciao Alberto

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)
Categorie:Notizie Tag:

Patrocinio del comune per la mia iniziativa sul Software libero

5 novembre 2009 Alberto Nessun commento

Quando meno te lo aspetti le cose accadono…

Martedì sera sono tornato a casa dalla mia giornata in università e vedo sul mio letto una lettera del comune… subito ho pensato: “Che caccio ho combinato stavolta!”. Apro la busta e vedo scritto nell’intestazione: Verbale di deliberazione della giunta comunale, “sempre peggio!” ho pensato.

Comincio a leggere i quattro fogli contenuti nella busta e subito la mia preoccupazione si trasforma in gioia, e che gioia. La lettere era il verbale della giunta comunale tenutasi il 19 ottobre 2009 in cui vengo informato che il mio progetto per la diffusione del software libero, con incontri dedicati a queste tematiche, è stato accettato ufficialmente dall’amministrazione comunale che ha concesso il suo patrocinio, non a caso l’oggetto del verbale è: CONCESSIONE PATROCINIO AL SIG. ALBERTO BONACINA PER ORGANIZZAZIONE GIORNATE DEDICATE AL TEMA “IL SOFTWARE LIBERO E IL SISTEMA GNU/LINUX”.

Entrando un po’ più nel merito si delibera che l’iniziativa da me proposta, e che ha scaturito la decisione di concedere il patrocinio, viene considerata

importante sia a livello educativo che sociale permettendo di informare gli utenti sul tema poco conosciuto “il software libero e il sistema operativo GNU/Linux”

e che

viene considerata idonea l’aula informatica della Scuola Secondaria di primo grado per lo svolgimento settimanale di tali incontri e più precisamente il venerdì dalle ore 16:30 alle ore 18:00.

Che dire sono veramente contetissimo di questa cosa e cercherò di portarla avanti con tutto il mio entusiasmo. La mia vita ormai si sta incanalando sul binario del software libero, in cui credo tantissimo, sia con la tesi sia con questa importante iniziativa che spero possa avere un seguito importante, creare un piccolo gruppo di persone che condivide questa idea nel mio paesino sarebbe molto bello e trainante per altre iniziative, magari proposte dagli utenti stessi.

Chiudo con una citazione che fa parte del mio credo da un po’ di tempo a questa parte, tutte le mie attività si muovono con questa filosofia:

“Prima ti ignorano,
poi ti deridono,
poi ti combattono.
Poi vinci.”

Mohandas Karamchand Gandhi

Ciao Alberto

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)
Categorie:Notizie Tag: