<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SlashCode &#187; Text Editor</title>
	<atom:link href="http://davideaversa.it/slashcode/category/guide/text-editor/feed/" rel="self" type="application/rss+xml" />
	<link>http://davideaversa.it/slashcode</link>
	<description></description>
	<lastBuildDate>Thu, 03 May 2012 14:28:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Vi/Vim #2 &#8211; I mode</title>
		<link>http://davideaversa.it/slashcode/2008/09/vivim-2-mode/</link>
		<comments>http://davideaversa.it/slashcode/2008/09/vivim-2-mode/#comments</comments>
		<pubDate>Tue, 16 Sep 2008 06:29:27 +0000</pubDate>
		<dc:creator>THeK3nger</dc:creator>
				<category><![CDATA[Text Editor]]></category>
		<category><![CDATA[Guide]]></category>
		<category><![CDATA[vi]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://slashcode.wordpress.com/?p=133</guid>
		<description><![CDATA[<div><a href="http://davideaversa.it/slashcode/2008/09/vivim-2-mode/"><img title="Vi/Vim #2 &#8211; I mode" src="http://slashcode.files.wordpress.com/2008/09/vim1.png" alt="Vi/Vim #2 &#8211; I mode"  width="" /></a></div><br/>Ora che abbiamo il nostro Vi configurato a puntino è il momento di iniziare a capire come editare il file. Dopotutto&#8230; Vim serve proprio a questo. La caratteristica che può disorientare è la presenza dei mode o modalità. Inserimento (attivabile con Ins) Visualizza (attivabile con V) Sostituzione (attivabile con il Backspace o premendo Ins da <a href='http://davideaversa.it/slashcode/2008/09/vivim-2-mode/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:100px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavideaversa.it%2Fslashcode%2F2008%2F09%2Fvivim-2-mode%2F&amp;layout=button_count&amp;show_faces=false&amp;width=100&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://davideaversa.it/slashcode/2008/09/vivim-2-mode/" ></div></div><div class="really_simple_share_twitter" style="width:110px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="Vi/Vim #2 &#8211; I mode" data-url="http://davideaversa.it/slashcode/2008/09/vivim-2-mode/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div><div id="attachment_113" class="wp-caption alignleft" style="width: 160px"><img class="size-full wp-image-113" src="http://slashcode.files.wordpress.com/2008/09/vim1.png" alt="L'esaltazione del programmatore da cantina." width="150" height="150" /><p class="wp-caption-text">L&#39;esaltazione del programmatore da cantina.</p></div>
<p>Ora che abbiamo il nostro Vi configurato a puntino è il momento di iniziare a capire come editare il file. Dopotutto&#8230; Vim serve proprio a questo.</p>
<p>La caratteristica che può disorientare è la presenza dei <strong>mode </strong>o <strong>modalità</strong>.</p>
<ul>
<li>Inserimento (attivabile con Ins)</li>
<li>Visualizza (attivabile con V)</li>
<li>Sostituzione (attivabile con il Backspace o premendo Ins da Inserimento)</li>
<li>Comandi (è la modalità di partenza e si torna li con Esc)</li>
</ul>
<p><span id="more-133"></span></p>
<p>Per editare un file basta semplicemente entrare in modalità inserimento ed operare come si è soliti. Esistono inoltre comandi utili per effettuar ele più comuni operazioni. Dalla modalità comani potete digitare:</p>
<ul>
<li><strong>dd </strong>- per tagliare l&#8217;intera riga dove si trova il cursore</li>
<li><strong>D </strong>- per tagliare una riga dal punto in cui si trova il cursore in poi</li>
<li><strong>Y </strong>- copia l&#8217;intera riga</li>
<li><strong>p </strong>- incolla dopo il cursore</li>
<li><strong>P </strong>- incolla prima del cursore</li>
<li><strong>u </strong>- annulla l&#8217;ultima operazione fatta</li>
<li><strong>/parola </strong>- cerca &#8220;parola&#8221; dal cursore in giù</li>
</ul>
<p>Come si nota non è nulla di complicato.</p>
<p>Una volta editato un pochino il file arriva il momento di salvare. Dalla modalità comandi digitate:</p>
<ul>
<li><strong>:q </strong>- esce dal file se non è stato modificato.</li>
<li><strong>:q!</strong> &#8211; esce dal file comunque in ogni caso.</li>
<li><strong>:w </strong>- salva il file.</li>
<li><strong>:wq </strong>- salva ed esce.</li>
</ul>
<p>Ecco. Ora avete almeno gli strumenti base per iniziare a lavorare. La prossima volta vedremo gli yank e gli alias, due delle funzioni a mio avviso  più potenti messe a disposizione di Vim in grado di velocizzare terribilmente il vostro editing.</p>
 <p><a href="http://davideaversa.it/slashcode/?flattrss_redirect&amp;id=133&amp;md5=47d30e0afcfa7673a0d1126d2536356b" title="Flattr" target="_blank"><img src="http://davideaversa.it/slashcode/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://davideaversa.it/slashcode/2008/09/vivim-2-mode/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=thek3nger&amp;popout=1&amp;url=http%3A%2F%2Fdavideaversa.it%2Fslashcode%2F2008%2F09%2Fvivim-2-mode%2F&amp;language=it_IT&amp;category=text&amp;title=Vi%2FVim+%232+%26%238211%3B+I+mode&amp;description=Ora+che+abbiamo+il+nostro+Vi+configurato+a+puntino+%C3%A8+il+momento+di+iniziare+a+capire+come+editare+il+file.+Dopotutto%26%238230%3B+Vim+serve+proprio+a+questo.+La+caratteristica+che+pu%C3%B2...&amp;tags=Guide%2Cvi%2Cvim%2Cblog" type="text/html" />
	</item>
		<item>
		<title>Vi/Vim #1 &#8211; Configurarlo per la programmazione</title>
		<link>http://davideaversa.it/slashcode/2008/09/vivim-1-configurarlo-per-la-programmazione/</link>
		<comments>http://davideaversa.it/slashcode/2008/09/vivim-1-configurarlo-per-la-programmazione/#comments</comments>
		<pubDate>Thu, 04 Sep 2008 11:04:29 +0000</pubDate>
		<dc:creator>THeK3nger</dc:creator>
				<category><![CDATA[Text Editor]]></category>
		<category><![CDATA[Guide]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[vi]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://slashcode.wordpress.com/?p=112</guid>
		<description><![CDATA[<div><a href="http://davideaversa.it/slashcode/2008/09/vivim-1-configurarlo-per-la-programmazione/"><img title="Vi/Vim #1 &#8211; Configurarlo per la programmazione" src="http://slashcode.files.wordpress.com/2008/09/vim1.png" alt="Vi/Vim #1 &#8211; Configurarlo per la programmazione"  width="" /></a></div><br/>Interrompiamo per un attimo la guida sulla programmazione generale perchè arrivato a quota 10 c&#8217;è il bisogno di rivedere, correggere e ampliare il lavoro svolto finora (e rilascerà anche una versione in .pdf cosi  da tenere i vostri 10 capitoli in un formato più consultabile). Affronteremo uno dei programmi più versatili per la programmazione da <a href='http://davideaversa.it/slashcode/2008/09/vivim-1-configurarlo-per-la-programmazione/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:100px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavideaversa.it%2Fslashcode%2F2008%2F09%2Fvivim-1-configurarlo-per-la-programmazione%2F&amp;layout=button_count&amp;show_faces=false&amp;width=100&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://davideaversa.it/slashcode/2008/09/vivim-1-configurarlo-per-la-programmazione/" ></div></div><div class="really_simple_share_twitter" style="width:110px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="Vi/Vim #1 &#8211; Configurarlo per la programmazione" data-url="http://davideaversa.it/slashcode/2008/09/vivim-1-configurarlo-per-la-programmazione/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div><div id="attachment_113" class="wp-caption alignleft" style="width: 160px"><img class="size-full wp-image-113" src="http://slashcode.files.wordpress.com/2008/09/vim1.png" alt="L'esaltazione del programmatore da cantina." width="150" height="150" /><p class="wp-caption-text">L&#39;esaltazione del programmatore da cantina.</p></div>
<p>Interrompiamo per un attimo la guida sulla programmazione generale perchè arrivato a quota 10 c&#8217;è il bisogno di rivedere, correggere e ampliare il lavoro svolto finora (e rilascerà anche una versione in .pdf cosi  da tenere i vostri 10 capitoli in un formato più consultabile).</p>
<p>Affronteremo uno dei programmi più versatili per la programmazione da tenere sempre sottomano per ogni evenienza. Ovvero il super-famoso <strong>Vi/Vim.</strong></p>
<p>Non cominceremo però spiegando come funziona, ma di configurarlo in un modo che io trovo ottimale per la programmazione. In questo modo vedrete subito che non si tratta di un semplice editor da linea di comando.</p>
<p><span id="more-112"></span></p>
<p>Innanzitutto: <strong>perchè dovrei utilizzare Vim quando ho a disposizione editor come gedit, kate e simili?</strong></p>
<p>Le motivazioni principali sono:</p>
<ol>
<li>Vim necessita di maggior tempo di apprendimento, non è intuitivo come gli altri e necessita di pratica. Ma se ben padroneggiato è decisamente più veloce e pratico di qualunque altro editor.</li>
<li>Vim è uno di quegli editor che sono sicuramente a disposizione nel caso vi troviate a che fare con ambienti unix senza serverX attivato oppure quando al vostro GNU/Linux per qualche motivo non parte il server grafico.</li>
</ol>
<p>Quindi almeno le basi è utile conoscerle per i casi di emergenza.</p>
<p>Iniziamo subito a configurarlo. Tutte le configurazioni che vi dirò possono essere messe a mano ma è decisamente scomodo impostarle tutte ogni volta che si apre vim.</p>
<p>Per ovviare a questo dobbiamo creare un file di nome <strong>.vimrc </strong>all&#8217;interno della nostra cartella Home. All&#8217;interno di questo file scriveremo le nostre configurazioni.</p>
<p>Prima configurazione essenziale è <strong>syntax on</strong>. Grazie a questo comando vim leggerà l&#8217;estenzione del file e evidenzierà la sintassi del linguaggio. Per esempio i file .c avranno la sintassi C evidenziata, i file .py avranno evidenziata la sintassi python e cosi via.</p>
<p>Secondo comando da mettere nel file: <strong>set number</strong>. Questo comando metterà sul margine sinistro i comodi numeri di linea utilissimi per individuare errori di compilazione all&#8217;interno del listato di codice.</p>
<p>Terzo comando: <strong>set autoindent</strong>. Anche questo comando è molto utile in quanto configurerà Vim in modo tale che ogni volta che andiamo a capo verrà conservato il livello di indentazione della riga precedente.</p>
<p>Quarto comando: <strong>set textwidth=80</strong>. Questo comando imposta il numero di caratteri per linea possibili. Alcuni linguaggi danno problemi con linee troppo lunghe e comunque è molto utile per questioni di leggibilità del codice. Ovviamente al posto di 80 potete metterci quello che volete ma 80 è uno &#8220;standard&#8221; piuttosto consolidato.</p>
<p>Quinto comando: <strong>set wrap</strong>. Utile se abbinato al precedente. Ovvero fa in modo che l&#8217;andare a capo al raggiungimento dell&#8217;80° carattere sia solo &#8220;visuale&#8221; (ovvero non inserisca il carattere di ritorno a capo). Questo serve ad evitare problemi con tutti quei linguaggi in cui l&#8217;andare a capo ha valore sintattico, ad esempio il Python.</p>
<p>Sesto e Settimo comando: <strong>set softtabstop=4</strong> e set <strong>expandtab</strong>. Questi comandi magari non piaceranno ai cultori del TAB ma a mio avviso servono a mantenere alta la compatibilità fra editor del codice. Impostando questi comandi infatti il carattere di tabulazione tab verrà sostituito da <strong>4 spazi</strong>. Se avete intenzione di programmare in python possiamo dire che questi comandi sono <strong>essenziali</strong>. In altri casi invece potete farne a meno ma ve li consiglio ugualmente.</p>
<p>Bene. Ora che avete scritto in <strong>.vimrc</strong> tutti questi comandi potete salvare e avviare vim digitando da linea di comando <strong>&#8220;vi <em>nomefile.xyz&#8221;.</em></strong></p>
<p>Comparirà un file vuoto. Alla prossima lezione vedremo di imparare a metterci mano.</p>
 <p><a href="http://davideaversa.it/slashcode/?flattrss_redirect&amp;id=112&amp;md5=a422934223959a59556730aad5674689" title="Flattr" target="_blank"><img src="http://davideaversa.it/slashcode/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://davideaversa.it/slashcode/2008/09/vivim-1-configurarlo-per-la-programmazione/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=thek3nger&amp;popout=1&amp;url=http%3A%2F%2Fdavideaversa.it%2Fslashcode%2F2008%2F09%2Fvivim-1-configurarlo-per-la-programmazione%2F&amp;language=it_IT&amp;category=text&amp;title=Vi%2FVim+%231+%26%238211%3B+Configurarlo+per+la+programmazione&amp;description=Interrompiamo+per+un+attimo+la+guida+sulla+programmazione+generale+perch%C3%A8+arrivato+a+quota+10+c%26%238217%3B%C3%A8+il+bisogno+di+rivedere%2C+correggere+e+ampliare+il+lavoro+svolto+finora+%28e+rilascer%C3%A0+anche+una...&amp;tags=Guide%2Cunix%2Cvi%2Cvim%2Cblog" type="text/html" />
	</item>
	</channel>
</rss>

