Archivio per la categoria "Applicazioni"



Windows Update, Windows Live Writer e SyntaxColor4Writer

Primo post del 2008 all'alba del tredicesimo giorno di gennaio, complimenti a me stesso per la tempestività. Insomma, anche se con un ritardo madornale vorrei augurarvi un buon 2008... per lo meno ora sapete che non ho fatto la fine del topo. Tornando al titolo del messaggio, oggi vagando a caso per internet ho trovato conferma sul blog di Davide Vernole a un sospetto che già mi era venuto nei giorni scorsi ma su cui non avevo indagato più di tanto per mancanza di tempo: dopo l'ultimo Windows Update che ho effettuato, SyntaxColor4Writer ha smesso di funzionare in Windows Live Writer. In realtà nell'approvare gli aggiornamenti avevo notato con la coda dell'occhio una voce riguardante Windows Live Writer per cui mi era bastato fare 1+1, ad ogni modo mi sono ritrovato impossibilitato a usare il mio plugin preferito per la formattazione del codice client-side data anche la mancanza di aggiornamenti pubblicati sul sito ufficiale dell'autore. Accidenti, proprio quando volevo mettermi di buzzo buono per aggiornare la mia definizione della sintassi di Ruby alle novità della 1.9. Oh well, poco male, rispolveriamo un mio post pubblicato in occasione del rilascio di WLW B2 e adattiamolo all'esigenza odierna:

  1. E' necessario avere installato Visual Studio dal momento che verrà utilizzato ILDASM per effettuare il dump del relativo codice IL della DLL di SyntaxColor4Writer. In teoria credo sia possibile usare anche monodis (l'equivalente per Mono) ma sinceramente, non avendolo mai provato, non ho idea di quale possa essere il risultato finale e del suo grado di compatibilità.
  2. Creiamo una directory in cui copiare il file IStaySharp.SyntaxColor4Writer.dll e apriamo una shell dei comandi puntando alla stessa per eseguire vsvars32.bat (importa tutte le variabili d'ambiente per usare i tool di VS)
  3. Per effettuare il dump completo con ildasm.exe via command line dovremmo specificare una sfilza di parametri abbastanza lunga, per cui lanciamolo senza argomenti per eseguirlo in modalità GUI: a questo punto importiamo la DLL IStaySharp.SyntaxColor4Writer.dll e facciamone il dump nella directory corrente spuntando tutte le opzioni nella dialog delle dump options. Per comodità salviamo il file IL risultante con il nome IStaySharp.SyntaxColor4Writer.il
  4. Apriamo con un editor di testo qualsiasi il file .IL appena generato e sostituiamo tutte le occorrenze della stringa .ver 12:0:1366:1026 con .ver 12:0:1367:1128 (in totale dovrebbero essere effettuate 3 sostituzioni). Con questa procedura non facciamo altro che aggiornare le reference agli assembly esterni di WLW specificando la nuova versione degli stessi, in realtà basta questo perché le API esposte da WLW verso i plugin non sono cambiate.
  5. Ora dobbiamo ricompilare la DLL con ILASM: torniamo alla shell e lanciamo questo comando:
    ilasm IStaySharp.SyntaxColor4Writer.il /dll /res:IStaySharp.SyntaxColor4Writer.res
  6. Una volta generata la nostra nuova versione di IStaySharp.SyntaxColor4Writer.dll non resta altro da fare che sostituire la DLL attualmente esistente nella directory Plugins di WLW e lanciare il programma.

Istruzioni sicuramente della mutua per uno sviluppatore .NET rodato, ma possono tornare comode ugualmente. A meno di cambiamenti particolari o differenze nelle API, come accaduto nel passaggio da B1 a B2 di WLW, questi passaggi dovrebbero rimanere validi anche per eventuali update futuri: basterà semplicemente aggiornare le stringhe di sostituzione con le relative versioni. Come in passato, se qualcuno avesse bisogno della DLL aggiornata e pronta per l'uso non dovrà far altro che contattarmi (anche privatamente, ho aggiunto l'indirizzo email in fondo alla pagina delle note in attesa di miglior organizzazione :-))

Les indispensables: AppFresh

AppFreshDopo svariati mesi di assenza su questo blog ritorna la categoria de les indispensables, questa occasione però sarà particolare perché per la prima volta parlerò del mondo Mac con un'applicazione che sto trovando abbastanza comoda: AppFresh. AppFresh vi permette di tenere sotto controllo e installare comodamente e in maniera centralizzata gli update di tutte le applicazioni che avete sul vostro Mac, non solamente quelle Apple ma anche quelle di terze parti compresi tra l'altro plugin, pannelli delle preferenze e widgets. La configurabilità è buona: potete scegliere in quali path andare a cercare le applicazioni, con quali modalità effettuare le scansioni dei programmi e le installazioni degli aggiornamenti oppure marcare la versione di un'applicazione che avete installato per considerarla come se fosse l'ultima, facendo in modo da non averla in elenco nel caso non siate intenzionati ad aggiornarla. AppFresh ha anche una funzionalità di snapshot e ripristino che vi permette di tornare sui vostri passi e ripristinare un'applicazione allo stato precedente un eventuale aggiornamento fallito o molto più semplicemente di vostro non gradimento. Non l'ho ancora provata, ma potrebbe tornare utile. Tutto sommato non mi dispiace e non mi ha dato problemi nelle ultime due settimane, ho aggiornato circa una ventina di applicazioni di vario tipo senza il minimo intoppo. Stando al sito ufficiale, AppFresh per ora è compatibile solamente con OS 10.4 ed è da considerarsi ancora come un'applicazione work in progress.

glTail: come ti mostro i log in maniera scenografica

Lo stanno linkando in molti nelle ultime ore dopo che è finito su Slashdot, però glTail è talmente inusuale che mi va di rilanciare l'argomento. Potremmo definirlo come una variante scenografica di tail -f che mostra i log generati da svariate applicazioni (Apache, Squid, Postfix... e anche Internet Information Server) in una modalità grafica alquanto curiosa e divertente, come dimostrato dal breve filmato che mette in evidenza gli effetti durante lo slashdotting del sito dell'autore. Prima di tutto è scritto in Ruby, il che è bastato ad aumentare la mia curiosità, inoltre lo script è già abbastanza configurabile e personalizzabile dal momento che non dovrebbe essere difficile scrivere dei parser per altri formati di log oltre a quelli già inclusi con lo script. La connessione remota ai server *nix avviene tramite il modulo net-ssh mentre la parte di rendering grafico è delegata a ruby-opengl per un risultato effettivamente molto simpatico (provato di persona sui log di un server web apache). La buona notizia per gli utenti Windows è che anche in questo sistema è possibile provare rapidamente lo script senza troppi problemi, soprattutto se utilizzate rubygems: basta installare net-ssh (gem install -y net-ssh) e ruby-opengl (gem install -y ruby-opengl) selezionando per quest'ultimo la versione i386-mswin32 (ovvero la gemma con la parte C del modulo già compilata, le altre versioni contengono solamente i sogenti che sarebbero da compilare). In seguito basta aprire il sorgente di glTail, editare i parametri di connessione per collegarvi a uno o più vostri server monitorando i log che desiderate (gli esempi forniti nello stesso script dovrebbero essere abbastanza chiari e facilmente adattabili alle vostre esigenze) e infine lanciarlo per veder comparire una finestra che vi mostrerà in tempo reale e in modo grafico l'andamento dei log che avrete deciso di tenere sotto controllo.

Nuova versione di Windows Live Writer

Come ho avuto modo di dire in più di un'occasione, utilizzo con soddisfazione Windows Live Writer fin dalla sua primissima versione per pubblicare i messaggi che leggete sul mio blog. Da pochissimi giorni ne è stata rilasciata una nuova beta, distribuita all'interno del nuovo pacchetto Windows Live e questa volta disponibile anche in italiano, per cui eccomi a provarla con la scrittura di questo stesso post. La prima novità, quella che ritengo più interessante e che probabilmente è stata la funzionalità più richiesta nei mesi scorsi, è rappresentata dalla possibilità di impostare per ogni singolo blog registrato in WLW il tipo di codice generato: HTML oppure XHTML. Chi possiede blog con template XHTML e ci tiene al rispetto della corretta formattazione delle proprie pagine nella sua interezza può finalmente ritenersi soddisfatto, io sicuramente sono contento che abbiano ascoltato le richieste in merito da parte di molti utenti. Un'altra nuova possibilità offerta riguarda la decisione del set di caratteri da utilizzare, un'impostazione predefinita comunque su UTF-8. Aggiunta anche la stampa, con anteprima, dei propri post. Migliorie anche per le funzionalità di inserimento disponibili di default nell'applicazione:

  • In Inserisci collegamento è stata aggiunta la possibilità di fare riferimento a precedenti messaggi pubblicati sul proprio blog sfruttando la combinazione Collega a -> Post precedenti. Si aprirà un'interfaccia, la stessa utilizzata per aprire vecchi messaggi attraverso Apri, che vi permetterà di sfogliare i vostri messaggi alla ricerca di quello a cui vorrete fare riferimento cercando tra quelli recenti oppure andando a recuperare dal blog quelli più vecchi.
  • Con Inserisci immagine ora è possibile inserire immagini non solo dal proprio computer ma anche direttamente dal web, con tanto di anteprima. Migliorata anche la qualità risultante dalle funzionalità integrate di ridimensionamento, modifica e salvataggio delle immagini. E' possibile salvare come predefinite le impostazioni che volete nel caso siate soliti utilizzarne di differenti rispetto a quelle di default del programma. Infine, per chi utilizza Blogger, è prevista l'integrazione diretta per la pubblicazione delle proprie foto su Picasa Web Album.
  • Inserisci video (novità per la distribuzione di default, erano già disponibili alcuni plugin di terze parti ma erano abbastanza bruttini rispetto a questo ufficiale) dovrebbe funzionare con i video portali più famosi, oltre all'ovvia integrazione con SoapBox, permettendo di mostrare un'anteprima del video (con tanto di player) a partire anche soltanto dal link "grezzo", risparmiandovi di dover inserire tutto il codice HTML necessario alla corretta visualizzazione del player nei messaggi. L'unica pecca per ora riscontrata è che non riconosce gli indirizzi localizzati di YouTube, per esempio quelli che riportano it.youtube.com vengono rifiutati perché non riconducibili a un provider video riconosciuto. Per aggirare rapidamente il problema, basta sostituire it (o l'identificativo della localizzazione) con www.

Il risultato mi sembra decisamente molto buono sotto tutti gli aspetti, ora le mancanze più importanti (pubblicazione XHTML, per esempio) sono state risolte e anche la stabilità del programma sembra visibilmente migliorata. Da parte mia continua a essere un programma estremamente consigliato e che facilita enormemente la vita a chi scrive con formattazioni più o meno complesse (aiutato poi dalla scrittura in linea per vedere direttamente i risultati all'interno del layout del proprio blog) oppure è abituato a buttar giù, abbandonare e poi riprendere spesso una o più bozze dei propri messaggi (bozze che tra l'altro possono essere memorizzate come draft sul proprio blog, in modo da poterle riprendere da altri computer con WLW stesso oppure semplicemente attraverso le solite interfacce web di amministrazione dei propri blog).

Microsoft Office Compatibily Pack

Nel caso vi ritrovaste a dover aprire dei documenti DOCX, PPTX o XLSX (ovvero i nuovi formati introdotti in Microsoft Office 2007) su computer con vecchie versioni della suite da ufficio di Microsoft, sul sito esiste un download denominato Microsoft Office Compatibility Pack per formati di file Word, Excel e PowerPoint 2007 che, come da nome, permette di aprire, modificare e salvare documenti nei nuovi formati anche da versioni precedenti di Office 2000, XP e 2003. Tutto questo perché qualche sveglione ha pensato bene di mandare a una collega (entrata in crisi mistica) una serie di DOCX con una serie di roba in stile lista della spesa e senza alcuna formattazione e che quindi poteva benissimo scrivere con blocco note salvando il tutto in un banale file di testo. Per completezza, esiste anche una suite di plugin opensource per lo stesso Office che permette la conversione di formati da OOXML a ODF e viceversa.