Just another IT weblog

Vim: Indentazione & Syntax Highlight

Luglio 22nd, 2007 by Mattneri

Il file di configurazione di Vim si chiama vimrc e normalmente si trova o nella home directory oppure come nel caso di ubuntu in /etc/vim.

Per abilitare la syntax highlight basterà decommentare la seguente riga:

syntax on

 

Mentre per settare gli spazi corrispondenti a un TAB basterà inserire le seguenti righe:

filetype plugin indent on

autocmd FileType * setlocal sw=3 sts=3 et tw=78 sta

La prima riga abilita l’indentazione automatica, mentre nella seconda riga andiamo a specificare come vogliamo venga interpretata la pressione del tasto di tabulazione.

Nel precedente caso ho fatto in modo che i settaggi valgano per qualunque tipo di file (ma era possibile specificare anche singole tipologie, ad esempio c, cpp, h).

et indica che vogliamo che il TAB venga interpretato come una sequenza di spazi

sts lunghezza in caratteri di una tabulazione

sw lunghezza del rientro derivante da una indentazione automatica

sta consente di cancellare una tabulazione ( n spazi ) tramite una sola pressione di backspace

tw massima lunghezza in caratteri di una riga di testo

Questa soluzione potrebbe non funzionare su sistemi derivati da Debian in quanto viene installata una versione ridotta di vim (vim-tiny) che contiene solo un sottoinsieme ridotto delle features di vi. In tali casi basta installare il pacchetto vim-full e poi procedere alle suddette modifiche.

 

Posted in Linux, Programmazione | No Comments »

Code::Blocks vs Gtk2+

Luglio 20th, 2007 by Mattneri

Ammetto che sviluppo software sotto linux da relativamente poco tempo. Quindi inizialmente mi sono trovato un pò spiazzato nella scelta di un’IDE che potesse rimpiazzare almeno in parte le funzioni offerte dagli IDE commerciali presenti su piattaforma Microsoft.

Ho provato veramente varie opzioni, da quelle più minimali (Vim/Make) a Eclipse, passando per il plugin C++ di Netbeans e dando un’occhiata a Anjuta. Alla fine però la soluzione che mi ha maggiormente convinto consiste in un IDE cross-platform open source chiamato Code::Blocks.

Le cose che mi hanno più colpito di Code::Blocks, oltre alla pulizia della GUI, sono la curva di apprendimento relativamente veloce, l’estrema flessibilità ed adattabilità ( gli posso dire di utilizzare il compilatore della M$, il gcc, quello della Borland ecc…), la struttura modulare a plugin e gli aggiornamenti giornalieri!

Ultimamente lo sto utilizzando per sviluppare una GUI con le GTK+ ed eccoci giunti finalmente al motivo principale di questa guida…utilizzare Code::Blocks per sviluppare con C/C++ e GTK+.

Per prima cosa scarichiamoci tutto il necessario (la mia guida è relativa a Ubuntu ma non credo sia difficile adattarla a un’altra distro):

sudo apt-get install build-essential gdb libgtk2.0-dev

E poi inserendo in /etc/apt/sources.list il seguente repository scaricate le wxWidgets 2.8 necessarie x utilizzare le Nightly Builds:

## wget http://www.tt-solutions.com/vz/key.asc | sudo apt-key add key.asc
deb http://apt.tt-solutions.com/ubuntu/ feisty main

Che verranno poi installate con il seguente comando:

sudo apt-get install libwxgtk2.8-0 libwxgtk2.8-dev wx2.8-headers wx-common

 

Ora scarichiamo e installiamo la Nightly Build di Code::Blocks.

A questo punto dovremmo avere il nostro ambiente di sviluppo funzionante.

Creiamo un nuovo Progetto Vuoto e a questo punto non resta che configurare un paio di opzoioni di compilazione:

 

  1. In Project/Build options…/Compiler Settings/Other Options inserite `pkg-config –cflags gtk+-2.0`
  2. In Project/Build options…/Linker Settings/Other linker options inserite `pkg-config --libs gtk+-2.0`

Ora potete creare un nuovo User Template selezionando File/Save project as user template..

 

 

Posted in C/C++, Linux, Programmazione | 2 Comments »

dictconv English-Italian bug fix

Luglio 1st, 2007 by Mattneri

In un precedente articolo avevo spegato come convertire i dizionari di Babylon ed utilizzarli con software open surce (come ad esempio StarDict o ktranslator).

Il software che effettua la conversione dei dizionari si chiama dictconv ed è stato scritto da uno sviluppatore brasiliano. Tale utility seppur molto utile era afflitta da un fastidioso bug che si verificava durante la conversione del dizionario Inglese-Italiano.

Ieri mi sono quindi scaricato il sorgente e dopo un pò ho capito dove stava il problema ed ho creato una nuova release che corregge il suddetto baco e uno ben più fastidioso (di cui non mi ero precedentemente accorto).

Potete scaricare da qui il deb della versione 0.2.1 del suddetto programma, che nn è altro la versione 0.2 con i miei fix. Se avete bisogno dei sorgenti invece li potete scaricare da qui.

 

Nel caso riscontriate qualche nuovo bug vi prego di contattarmi via mail o di postare qui di seguito.

 

 

Posted in Linux | 43 Comments »