WinMerge: Come confrontare file di testo

Vi è mai capitato di dover confrontare due file di testo(semplice) per cercare le eventuali differenze? Oppure sapete come confrontare i contenuti di due directory?

Facciamo un esempio: Supponiamo di avere una tabella Excel, contenente un lungo elenco di Nomi e Cognomi e relativi numeri di telefono, e di esportala in formato ASCII separato da “virgole” o da “tabulazioni”, per vedere quali cognomi sono stati aggiunti rispetto ad una vecchia copia dello stesso file in formato testo; se sapete già come fare, allora potete andare a leggervi qualche altro mio post, altrimenti vi suggerisco di continuare a leggere il seguito di questo post perché scoprirete un utilissimo programma “open source” che permette appunto di confrontare due o più file fra di loro: sto parlando di WinMerge.
WinMerge è una utility visuale di confronto e unione(“merging”) di file di testo, per ambiente Windows, sviluppata sotto licenza GNU GPL(General Public License).
Questo tool è molto utilizzato tra i programmatori per rintracciare cambiamenti tra diverse versioni di uno stesso file di testo e quindi eventualmente unire, aggiungere o rimuovere le differenze tra le linee di codice.
Però come accennavo nell’esempio iniziale, vedrete che, se lavorate un pochino con un computer e maneggiate documenti di testo semplice (e ce ne sono sempre tanti: pensate soltanto a tutti i file di configurazione “.ini” dei programmi di Windows), WinMerge diventerà presto uno strumento indispensabile.

Ora vediamo alcune delle principali caratteristiche di questo programma:

  • Confronto e modifica di file di testo e confronto fra directory(molto molto utile)
  • un editor flessibile con evidenziazione della sintassi, dei numeri di linea e word-wrap
  • Capacità di aprire file testo nei formati DOS, UNIX e MAC
  • Possibilità di visualizzare in due pannelli verticali adiacenti le differenze tra i due file
  • Un pannello a parte mostra una mappa dei file comparati
  • Evidenziazione delle differenze all’interno delle singole linee
  • Utilizzo di Espressioni regolari per cercare differenze fra directory, con la possibilità di escludere o includere file
  • Riconoscimento di linee spostate nella comparazione tra file
  • Creazione di “patch” file ovvero file generati dall’unione dei file confrontati e modificati
  • Integrazione con la Shell e supporto delle versioni a 64 bit di Windows
  • Supporto per archivi file formato 7-Zip
  • Support Plugin
  • Interfaccia configurabile in diverse lingue incluso l’italiano
  • Manuale Online e manuale di Help installato in formato HTML
  • …e molte altre caratteristiche più da smanettoni!

Qui sotto vi aggiungo 2 immagini prese dal sito del progetto tanto per darvi un’idea di quanto accennato sopra:

comparazione tra due file
comparazione tra due directory

Per installare il programma dovete andare sul sito http://winmerge.org/ e seguire il link “Download NOW“. Una volta scaricato il file d’installazione, e lanciato il setup è sufficiente procedere nelle diverse schermate lasciando tutte le impostazioni proposte di default, ed in pochi click avrete WinMerge in italiano installato e pronto all’uso!

Come sempre io scrivo questi post come miei appunti, ma se presi dalla curiosità provate a seguire i miei consigli state tranquilli che se vi serve aiuto non mancherò di rispondere alle vostre richieste.

Ad MAiora.

Ubuntu Feisty upgrade: tips per J-Pilot, scheda ATI e sw truecrypt

Ho recentemente deciso di aggiornare il mio desktop dalla versione Ubuntu “Edgy” alla più recente “Feisty”. Come metodo di aggiornamento ho usato la voce “Aggiorna a Ubuntu 7.04” presente nel “Gestore di Aggiornamenti”.
La procedura di aggiornamento è andata “abbastanza” bene, il virgolettato è dovuto ad un crash imprevisto durante l’installazione dei pacchetti. Ho risolto il problema aprendo un terminale e dando il comando:
“apt-get upgrade”
Terminata la fase di aggiornamento ho dovuto tribolare solo un pochino con:

  1. JPilot e la sincronizzazione del mio palmare;
  2. con la configurazione della scheda video ATI FireGL T2;
  3. con il pacchetto “truecrypt”.

Questo era un rapido sommario, ora scendiamo nel dettaglio dei consigli:

Configurazione di J-Pilot
Per riuscire a sincronizzare il mio Palm Tungsten T, ho dovuto sostituire nelle impostazioni di J-Pilot la porta di connessione “/dev/ttyUSB1” con “usb:” .

Configurazione scheda ATI FireGL T2
Subito dopo l’aggiornamento non riuscivo a configurare correttamente la scheda video ATI , così ho pensato di installare i driver proprietari ma districarsi fra i diversi disponibili si è rivelato frustrante. Poi leggendo sui vari forum ho scoperto il pacchetto Envy , installato il quale, configurare la scheda è stato decisamente un gioco da ragazzi(fa praticamente tutto lui). Un grazie allo sviluppatore Alberto Milone.

Truecrypt
Poichè per Ubuntu Feisty 7.04 ancora non esiste il pacchetto deb di “truecrypt” bisogna scarica re il sorgente e compilarlo.
Durante la compilazione ho ricevuto un messaggio di errore che “lamentava” l’assenza del file header “dm.h”. Di fatto il file c’era ma in una directory diversa. Quindi ho copiato il file “dm.h” nella directory “/usr/src/linux-headers-2.6.20-16/drivers/md/” e la compilazione ed installazione è andata liscia come l’olio!

Per finire questo post devo dire che non sono molto contento dell’upgrade a Feisty perché oltre a queste piccoli problemi, che comunque mi hanno fatto spendere qualche ora in più davanti al monitor, ho ancora un altro problema irrisolto riguardante il masterizzatore (GSA -4040B) che non funziona più come prima(sotto Edgy masterizzavo tuti i tipi di supporti permessi dal mio hw), ora difatti mi trovo che spesso alcuni DVD-RW vanno in errore nella fase di masterizzazione.

Ad MAiora

Red Hat Summit 2007: Day3

Giusto per aggiornare la cifra dei partecipanti che avevo scritto essere intorno alle 1000 persone, oggi mi è stato confermato che eravamo ben 1400!

L’esperienza di questo Summit è stata positiva, come mi aspettavo ho avuto modo di conoscere e approfondire molti argomenti e molte tematiche legate al mondo Linux e più in generale all’Open Source, e di sperimentare come anche una società “che fa soldi” possa comunque sposare e convivere con queste filosofie senza tradirne “troppo” lo spirito.

Ad MAiora

Red Hat Summit 2007: Day2

Si sono accese le luci sul porto di San Diego ed anche la seconda giornata del Red Hat Summit 2007 è terminata.
Questo secondo giorno di sessioni ha visto come ieri una grande partecipazione di giovani talenti del mondo del IT(Information Technology), infatti la maggior parte degli speaker è di età inferiore ai trent’anni, fanno eccezione le keynote tenute in genere da manager più anziani(dove per anziani intendo tra i 30 ed i 40 anni 🙂 ). Quasi tutti vestono in modo molto informale, decisamente easy-going ma ciò non toglie niente alla loro competenza e professionalità.
Perdonate il mio entusiasmo ma fa veramente piacere vedere tanti ragazzi così splendidamente impegnati nel cercare di dare una impronta diversa al modo, anche se questa impronta è “digitale”. Un altra annotazione alla conferenza, è che non ho visto molte donne presentare e comunque in genere un basso numero di iscritte alla conferenza rispetto ai maschietti, questo è un peccato.
Veniamo ora a qualche dettaglio più tecnico sulla giornata. Come già accennato ieri ho dovuto effettuare delle scelte fra le diverse sessioni tenute in contemporanea. Sarà perché sono un sognatore sarà perché sono un modesto programmatore ma la prima sessione che ha catturato la mia attenzione è stata quella tenuta dal Professor Deepak B. Phatak della School of Information Technology Indian Institute of Technology di Bombay, che ha presentato lo scenario attuale del movimento Open Source in India e quali sono le strategie adottate dal governo indiano per avviare un trend di creatività e produzione basato appunto sull’Open Source, che, come più volte ho sottolineato consente la realizzazione di infrastrutture tecnologiche a basso costo ed alta robustezza ed affidabilità. Sono rimasto ancora una volta impressionato dai numeri dati: circa 2500 College tecnici, migliaia di iscritti ogni anno per un paese che è già di fatto un leader nella knowledge industry (ricordo che ormai tutte le grandi società software hanno in India i loro centri di sviluppo software). Sono molti i progetti avviati in India soprattutto per le scuole e per i governi locali e regionali, finalizzati ad omogeneizzare le molteplici diversità etniche esistenti(pensate a quante lingue sono parlate) e tutto ciò è reso possibile solo grazie all’abbatimento dei costi permesso dal software Open Source.

Altra sessione da me seguita con molto interesse è stata quella dedicata al problema dei formati utilizzati dai documenti che tutti noi oggi produciamo o utilizziamo per esempio testi, fogli di calcolo e presentazioni, avete mai pensato che se scrivete una poesia da voi creata con un documento Word state di fatto chiudendola dentro una scatola di cui solo Microsoft ha la chiave? Ovviamente la risposta sta nei formati aperti di archiviazione dei documenti come l’Open Document Format utilizzato da Open Office. Ebbene durante la sessione sono stati presentati alcuni casi nazionali ( vedi Massachussets) di adozione a livello governativo di questi formati proprio per tutelare il futuro di quanto contenuto nei documenti e svincolarlo dal qualsiasi vincolo progettuale o venditore di software monopolistico. Per chi volesse approfondire la conoscenza su Open Office ed il formato ODF ho già scritto due articoli: primo e secondo.

Come per il primo giorno la serata è stata chiusa con una piacevole cena offerta da AMD e Red Hat nell’affascinante Museum of Air and Space di S. Diego dove tra cimeli dell’Apollo 9 e grandi Jet appesi al soffitto si è potuto gustare sushi, chilly, delicatezze di mare e buona musica.

Ad MAiora,
Luca

Red Hat Summit 2007: Day1

Nella splendida cornice della baia di S. Diego (CA) si sta svolgendo in questi giorni il RED HAT SUMMIT 2007 (il terzo summit della RH Corporation). Oggigiorno Red Hat è probabilmente la società leader del mercato Linux, distribuendo le sue versioni del sistema operativo e sviluppando tecnologie basate sul modello Open Source. La conferenza, che avrà durata di tre giorni, ospita molteplici sessioni con argomenti suddivisi su diverse tracks:

  • What’s new
  • ROI, TCO, SO, and the Other important acronyms
  • Beyond the operating system
  • Peer to Peer Perspective
  • What’s Next
  • In the News
  • Deconding the code: Tips and tricks and best practice

Si parlerà di Linux nel mondo Enterprise, di tecnologie di backup, virtualizzazione di sistemi, comunità di sviluppo modellate secondo le regole dell’Open Source, di Design Thinking (accennerò oltre qualcosa su questo argomento). Tutte le sessioni sono precedute ogni mattina dalle keynotes di personaggi “illuminati” del mondo Open Source e dell’ Information Technology. La cifra dei partecipanti, provenienti da tutto il mondo compresa l’Italia di cui io sono l’unico rappresentante, si aggira intorno alle 1000 persone includendo dirigenti, system administrators, insegnati, studenti, job hunters, semplici appasionati dell’open-source, etc.etc.
Ieri, la prima giornata della conferenza si è aperta con la presentazione di Matthew Szulik presidente e CEO di Red Hat. Quello che mi ha colpito maggiormente della sua spettacolare presentazione(nell’accezione più scenografica del termine: luci, suoni, mega schermi in tutta la sala, etc.etc), sono stati alcuni frequenti riferimenti alle esigenze del terzo mondo in termini di distribuzione di servizi tecnologici a basso costo. Questa infatti una delle idee visionarie di Szulik e del suo staff, condivisa di fatto dalla maggior parte della comunità OS, cioè produrre tecnologie, basate su modello Open Source, in grado di poter essere facilmente acquisite dai paesi del terzo mondo che maggiormente hanno bisogno di servizi per la sanità, l’istruzione e per un miglior benessere in genere. Szulick ha mostrato, come una comunità forte come quella del mondo OS, sia in grado di sviluppare e realizzare idee visionarie,in poco più di un anno, idee come il progetto “One Laptop Per Child” ovvero costruire e realizzare un computer portatile per i bambini con meno di 300 dollari. Ebbene questo computer (vedi link)è di fatto oggi una realtà che è già stata distribuita in diverse scuole del Brasile e della Nigeria. Fa una piacevole impressione sentire in una conferenza “computer oriented”, parlare di argomenti legati allo sviluppo del terzo mondo, di condivisione della conoscenza, dell’esigenza di condividere appunto con altri quello che è il nostro patrimonio culturale. Altro che grafici di crescita aziendale! Altro che monopolio e copyright della conoscenza! Red Hat è un esempio di ciò che ha prodotto la rivoluzione Open Source, cioè una azienda che pur facendo business(ricordo che è quotata all borsa americana), mantiene tra i propri principi fondamentali quel senso di democrazia e solidarietà tipici del modo Open Source. Sempre rifacendosi al modello del software libero, Henry Richard (Vice President della AMD) ha ulteriormente enfatizzato l’importanza della collaborazione globale come soluzione ai problemi dell’IT. Cercare quindi di sviluppare sistemi e tecnologie che siano sempre più alla portata di tutti e di facile utilizzo per tutti, come lo sono il nostro frigo o il nostro televisore che non hanno bisogno di attendere 2 minuti per avviarsi e che fortunatamente non sono “buggy”, difettosi, come il nostro PC(parole appunto del VP di AMD). Vorrei ricordare ancora di questo intervento la frase:”Nessuno è più intelligente di tutti noi messi insieme” parole semplici sulle quali però vale la pena di meditare. Tra le tante sessioni tecniche che si sono svolte durante la giornata ho per forza dovuto scegliere di seguirne solo alcune e tra queste vorrei segnalare quella sul “Design thinking”, decisamente meno tecnica delle altre ma ricca di spunti e suggerimenti sul processo del pensare creativo, cioè su come guidare un cambiamento culturale all’interno della propria società o del proprio gruppo di lavoro al fine di realizzare e concretizzare grandi idee. Lo speaker, un designer assunto dalla Red Hat proprio per rivoluzionare il modo di creare sw, ha fatto spesso riferimento ad alcuni testi veramente interessanti per chiunque voglia conoscere come sia possibile raggiungere obbiettivi importanti senza rinunciare alla propria intuizione o idea iniziale; eccovi i titoli:

  1. The Responsability Virus di Roger Martin
  2. Ten Faces of Innovation di Tom Kelly, IDEO

La conferenza, oltre alle sessioni offre anche un grande padiglione espositivo dove sono molti gli sponsor che illustrano le proprie potenzialità ed i propri prodotti. Da annotare la simpatica cena offerta da IBM in perfetto stile “surf” nel giardino dell’Hotel Sheraton Marina, con tanto di musica surf (Beach Boys), artisti di spiaggia, e cibo messicano a volontà. Ad MAiora P.S.
Mi raccomando non mancate l’appuntamento con il resoconto della seconda giornata.