<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>6502.fr</title>
	
	<link>http://www.6502.fr</link>
	<description>L'Avant-dernier cri de la technologie</description>
	<lastBuildDate>Sat, 31 Jul 2010 15:39:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/6502" /><feedburner:info uri="6502" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Déploiement Capistrano : Création d’un repository git distant</title>
		<link>http://feedproxy.google.com/~r/6502/~3/VepmaNJaXb0/261</link>
		<comments>http://www.6502.fr/deploiement-capistrano-creation-remote-git-repository/261#comments</comments>
		<pubDate>Sat, 31 Jul 2010 15:25:58 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Capistrano]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[git]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=261</guid>
		<description><![CDATA[Vous utilisez git pour gérer votre source dans un dépôt local (local repository). Après quelques jours de développement, vous êtes prêt à déployer la première version du logiciel sur votre serveur. Capistrano est l&#8217;outil idéal, mais il nécessite un dépôt accessible à partir de votre serveur (remote repository). Il est peu probable que votre dépôt [...]]]></description>
			<content:encoded><![CDATA[<p>Vous utilisez <a title="Git is a free &amp; open source, distributed version control system [en anglais]" href="http://git-scm.com/"><i>git</i></a> pour gérer votre source dans un dépôt local (<i>local repository</i>). Après quelques jours de développement, vous êtes prêt à déployer la première version du logiciel sur votre serveur. <a title="Capistrano [en anglais]" href="http://www.capify.org/">Capistrano</a> est l&#8217;outil idéal, mais il nécessite un dépôt  accessible à partir de votre serveur (<i>remote repository</i>). Il est peu probable que votre dépôt local le soit.</p>
<p>Si vous avez un accès <i>ssh</i>, il est très simple de créer ce dépôt.</p>
<p>Si ce n&#8217;est déjà fait, copiez votre clef SSH sur le serveur. Ensuite, clonez votre dépôt et téléchargez-le sur votre serveur.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ git clone <span style="color: #660033;">--bare</span> application<span style="color: #000000; font-weight: bold;">/</span>.git <span style="color: #000000; font-weight: bold;">/</span>tmp<span style="color: #000000; font-weight: bold;">/</span>application.git
$ <span style="color: #c20cb9; font-weight: bold;">scp</span> <span style="color: #660033;">-r</span> <span style="color: #000000; font-weight: bold;">/</span>tmp<span style="color: #000000; font-weight: bold;">/</span>application.git monlogin<span style="color: #000000; font-weight: bold;">@</span>monserveur.com:git</pre></div></div>

<p>Vous avez maintenant un dépôt distant.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ git clone <span style="color: #c20cb9; font-weight: bold;">ssh</span>:<span style="color: #000000; font-weight: bold;">//</span>monlogin<span style="color: #000000; font-weight: bold;">@</span>monserveur.com<span style="color: #000000; font-weight: bold;">/</span>~monlogin<span style="color: #000000; font-weight: bold;">/</span>git<span style="color: #000000; font-weight: bold;">/</span>application.git</pre></div></div>

<p>Pour le mettre à jour :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ git push <span style="color: #c20cb9; font-weight: bold;">ssh</span>:<span style="color: #000000; font-weight: bold;">//</span>monlogin<span style="color: #000000; font-weight: bold;">@</span>monserveur.com<span style="color: #000000; font-weight: bold;">/</span>~monlogin<span style="color: #000000; font-weight: bold;">/</span>git<span style="color: #000000; font-weight: bold;">/</span>application.git master</pre></div></div>

<p>Ou pour éviter de taper tout ça :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ git remote add production <span style="color: #c20cb9; font-weight: bold;">ssh</span>:<span style="color: #000000; font-weight: bold;">//</span>limproviste<span style="color: #000000; font-weight: bold;">@</span>limproviste.com<span style="color: #000000; font-weight: bold;">/</span>~limproviste<span style="color: #000000; font-weight: bold;">/</span>private<span style="color: #000000; font-weight: bold;">/</span>git<span style="color: #000000; font-weight: bold;">/</span>limproviste.git
$ git push production</pre></div></div>

<p>Et hop !</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=VepmaNJaXb0:vOgkxsEWHNs:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=VepmaNJaXb0:vOgkxsEWHNs:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=VepmaNJaXb0:vOgkxsEWHNs:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=VepmaNJaXb0:vOgkxsEWHNs:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/VepmaNJaXb0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/deploiement-capistrano-creation-remote-git-repository/261/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.6502.fr/deploiement-capistrano-creation-remote-git-repository/261</feedburner:origLink></item>
		<item>
		<title>Les modifications de CSS n’apparaissent pas dans Spree</title>
		<link>http://feedproxy.google.com/~r/6502/~3/SzmQxLQk2VM/257</link>
		<comments>http://www.6502.fr/les-modifications-de-css-napparaissent-pas-dans-spree/257#comments</comments>
		<pubDate>Tue, 27 Jul 2010 15:19:18 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=257</guid>
		<description><![CDATA[En cours de développement, vos modifications de feuilles de style n&#8217;apparaissent pas sur le site ? C&#8217;est normal ! La structure de l&#8217;application est complexe. Si vous respectez l&#8217;architecture recommandée (version 0.11), vos feuilles de styles sont dans vendor/extensions/theme_xxxx/public/stylesheets/ (si votre thème s&#8217;appelle xxxx). Le serveur web n&#8217;est pas configuré pour aller chercher les assets [...]]]></description>
			<content:encoded><![CDATA[<p>En cours de développement, vos modifications de feuilles de style n&#8217;apparaissent pas sur le site ? C&#8217;est normal !</p>
<p>La structure de l&#8217;application est complexe. Si vous respectez l&#8217;architecture recommandée (version 0.11), vos feuilles de styles sont dans <code>vendor/extensions/theme_xxxx/public/stylesheets/</code> (si votre thème s&#8217;appelle <i>xxxx</i>).</p>
<p>Le serveur web n&#8217;est pas configuré pour aller chercher les <i>assets</i> ailleurs que dans <code>public</code>. Au démarrage de votre application, les fichiers CSS sont donc recopiés des répertoires des extensions dans le répertoire <code>public</code> principal.</p>
<p>Remarque finale : pour la même raison, un <i>commit</i> ou un <i>status</i> dans votre système de gestion de version vous montrera les vieux fichiers dans <code>public</code> si vous n&#8217;avez pas relancé votre serveur entre temps.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=SzmQxLQk2VM:_O9csExbREQ:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=SzmQxLQk2VM:_O9csExbREQ:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=SzmQxLQk2VM:_O9csExbREQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=SzmQxLQk2VM:_O9csExbREQ:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/SzmQxLQk2VM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/les-modifications-de-css-napparaissent-pas-dans-spree/257/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.6502.fr/les-modifications-de-css-napparaissent-pas-dans-spree/257</feedburner:origLink></item>
		<item>
		<title>Gérer plusieurs versions de Ruby sur Leopard</title>
		<link>http://feedproxy.google.com/~r/6502/~3/rrYS40M9JUA/246</link>
		<comments>http://www.6502.fr/plusieurs-versions-de-ruby-sur-leopard-avec-rvm/246#comments</comments>
		<pubDate>Mon, 12 Jul 2010 14:15:34 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=246</guid>
		<description><![CDATA[Un jour ou l&#8217;autre vous allez avoir besoin d&#8217;une gem qui exige une version plus récente de Ruby. Par exemple sqlite3. $ sudo gem install sqlite3 Password: ERROR: Error installing sqlite3: sqlite3 requires Ruby version &#62;= 1.9.1. Mais vous utilisez des gems qui ne sont pas compatibles avec Ruby&#160;1.9 et vous devez donc faire cohabiter [...]]]></description>
			<content:encoded><![CDATA[<p>Un jour ou l&#8217;autre vous allez avoir besoin d&#8217;une <i>gem</i> qui exige une version plus récente de Ruby. Par exemple <i>sqlite3</i>.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ <span style="color: #c20cb9; font-weight: bold;">sudo</span> gem <span style="color: #c20cb9; font-weight: bold;">install</span> sqlite3
Password:
ERROR:  Error installing sqlite3:
	sqlite3 requires Ruby version <span style="color: #000000; font-weight: bold;">&gt;</span>= 1.9.1.</pre></div></div>

<p>Mais vous utilisez des <i>gems</i> qui ne sont pas compatibles avec Ruby&nbsp;1.9 et vous devez donc faire cohabiter plusieurs versions de Ruby. C&#8217;est là que <a title="RVM: Ruby Version Manager [en anglais]" href="http://rvm.beginrescueend.com/rvm/install/">RVM</a> intervient.</p>
<h3>Installer RVM sur Leopard</h3>
<p>Passez la commande suivante dans une fenêtre de Terminal&nbsp;:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ <span style="color: #c20cb9; font-weight: bold;">bash</span> <span style="color: #000000; font-weight: bold;">&lt;</span> <span style="color: #000000; font-weight: bold;">&lt;</span><span style="color: #7a0874; font-weight: bold;">&#40;</span> curl http:<span style="color: #000000; font-weight: bold;">//</span>rvm.beginrescueend.com<span style="color: #000000; font-weight: bold;">/</span>releases<span style="color: #000000; font-weight: bold;">/</span>rvm-install-head <span style="color: #7a0874; font-weight: bold;">&#41;</span></pre></div></div>

<p>Puis ajoutez cette ligne à la fin de votre fichier <i>~/.profile</i>&nbsp;:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-s</span> <span style="color: #007800;">$HOME</span><span style="color: #000000; font-weight: bold;">/</span>.rvm<span style="color: #000000; font-weight: bold;">/</span>scripts<span style="color: #000000; font-weight: bold;">/</span>rvm <span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #7a0874; font-weight: bold;">source</span> <span style="color: #007800;">$HOME</span><span style="color: #000000; font-weight: bold;">/</span>.rvm<span style="color: #000000; font-weight: bold;">/</span>scripts<span style="color: #000000; font-weight: bold;">/</span>rvm</pre></div></div>

<p>Pour tous les détails additionnels, allez <a title="RVM: Ruby Version Manager - Installing RVM [en anglais]" href="http://rvm.beginrescueend.com/rvm/install/">à la source</a>.</p>
<h3>Utiliser RVM</h3>
<p>Vous pouvez maintenant utiliser rvm, par exemple pour installer Ruby&nbsp;1.9.1.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ rvm <span style="color: #c20cb9; font-weight: bold;">install</span> 1.9.1 ; rvm 1.9.1
$ ruby <span style="color: #660033;">-v</span>
ruby 1.9.1p378 <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">2010</span>-01-<span style="color: #000000;">10</span> revision <span style="color: #000000;">26273</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>i386-darwin9.8.0<span style="color: #7a0874; font-weight: bold;">&#93;</span>
$ <span style="color: #c20cb9; font-weight: bold;">sudo</span> gem <span style="color: #c20cb9; font-weight: bold;">install</span> sqlite3
Building native extensions.  This could take a while...
...
Successfully installed sqlite3-0.1.1</pre></div></div>

<p>Pour revenir à la version d&#8217;origine&nbsp;:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ rvm system
$ ruby <span style="color: #660033;">-v</span>
ruby 1.8.7 <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">2009</span>-06-<span style="color: #000000;">12</span> patchlevel <span style="color: #000000;">174</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>i686-darwin9.8.0<span style="color: #7a0874; font-weight: bold;">&#93;</span></pre></div></div>

<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=rrYS40M9JUA:KTpVu2M4itE:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=rrYS40M9JUA:KTpVu2M4itE:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=rrYS40M9JUA:KTpVu2M4itE:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=rrYS40M9JUA:KTpVu2M4itE:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/rrYS40M9JUA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/plusieurs-versions-de-ruby-sur-leopard-avec-rvm/246/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.6502.fr/plusieurs-versions-de-ruby-sur-leopard-avec-rvm/246</feedburner:origLink></item>
		<item>
		<title>Reliques : l’Osborne 1</title>
		<link>http://feedproxy.google.com/~r/6502/~3/EntkOJ-xbjE/240</link>
		<comments>http://www.6502.fr/reliques-osborne-1-photo/240#comments</comments>
		<pubDate>Sat, 29 Aug 2009 10:23:51 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Non classé]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=240</guid>
		<description><![CDATA[L&#8217;Osborne 1 a été le premier portable (définition : qui a une poignée). TechRepublic publie une belle galerie de photos.]]></description>
			<content:encoded><![CDATA[<p>L&#8217;Osborne 1 a été le premier portable (définition : qui a une poignée). TechRepublic publie une belle <a href="http://content.techrepublic.com.com/2346-13636_11-193055-1.html">galerie de photos</a>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=EntkOJ-xbjE:jFEnE_quwgI:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=EntkOJ-xbjE:jFEnE_quwgI:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=EntkOJ-xbjE:jFEnE_quwgI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=EntkOJ-xbjE:jFEnE_quwgI:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/EntkOJ-xbjE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/reliques-osborne-1-photo/240/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.6502.fr/reliques-osborne-1-photo/240</feedburner:origLink></item>
		<item>
		<title>Wikipedia: toutes les routes mènent à Philosophie</title>
		<link>http://feedproxy.google.com/~r/6502/~3/TgwVYaEnLa0/231</link>
		<comments>http://www.6502.fr/wikipedia-tout-mene-a-philosophie/231#comments</comments>
		<pubDate>Sun, 03 May 2009 14:25:03 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Non classé]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=231</guid>
		<description><![CDATA[Un nouveau mème circule : sur Wikipedia, tous les liens mènent à l&#8217;article Philosophie ou forment une boucle. Méthode Choisir un article ou cliquer sur Un article au hasard. Cliquer sur le premier lien de l&#8217;article. Nous excluons les liens techniques de Wikipedia (ex. Cet article est une ébauche etc.), les tables des matières, la phonétique&#8230; [...]]]></description>
			<content:encoded><![CDATA[<p>Un <a title="Wikipedia talk:Get to Philosophy [en anglais]" href="http://en.wikipedia.org/wiki/Wikipedia_talk:Get_to_Philosophy">nouveau mème</a> circule : sur Wikipedia, tous les liens mènent à l&#8217;article <a href="http://fr.wikipedia.org/wiki/Philosophie">Philosophie</a> ou forment une boucle.</p>
<h3>Méthode</h3>
<ul>
<li>Choisir un article ou cliquer sur <a href="http://fr.wikipedia.org/wiki/Sp%C3%A9cial:Page_au_hasard">Un article au hasard</a>.</li>
<li>Cliquer sur le premier lien de l&#8217;article. Nous excluons les liens techniques de Wikipedia (ex. Cet article est une <a href="http://fr.wikipedia.org/wiki/Aide:%C3%89bauche">ébauche</a> etc.), les tables des matières, la phonétique&#8230;</li>
<li>Répéter jusqu&#8217;à tomber sur l&#8217;article <a href="http://fr.wikipedia.org/wiki/Philosophie">Philosophie</a> ou sur une boucle (on retombe cycliquement sur les mêmes liens).</li>
</ul>
<h4>Test de l&#8217;hypothèse</h4>
<h5>Premier essai</h5>
<ul>
<li><a href="http://fr.wikipedia.org/wiki/Pablo_Picasso">Pablo Picasso</a></li>
<li><a href="http://fr.wikipedia.org/wiki/M%C3%A1laga">Málaga</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Espagne">Espagne</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Europe_du_sud">Europe du sud</a></li>
<li><a href="http://fr.wikipedia.org/wiki/M%C3%A9diterran%C3%A9en">méditerranéen</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Mer_intercontinentale">mer intercontinentale</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Oc%C3%A9an">océans</a></li>
<li><a href="http://fr.wikipedia.org/wiki/G%C3%A9ographie">géographie</a></li>
<li><a href="http://fr.wikipedia.org/wiki/%C3%89tymologie">étymologique</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Diachronie">diachronique</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Linguistique">linguistique</a></li>
<li><a href="http://fr.wikipedia.org/wiki/XVIIe_si%C3%A8cle">XVII e siècle</a></li>
<li><a href="http://fr.wikipedia.org/wiki/1er_janvier">1 er</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Jour">jour</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Soleil">Soleil</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Latin">latin</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Langue_italique">langue italique</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Langues_satem/centum">centum</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Isoglosse">isoglosse</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Locuteur">locuteurs</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Parole">paroles</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Langage">langage<br />
</a> (nous avons ici un lien technique <em>Cet article est une ébauche concernant la philosophie et la linguistique.</em></li>
<li><a href="http://fr.wikipedia.org/wiki/Signe">signes</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Signe_(s%C3%A9miologie)">Signe</a></li>
<li><a href="http://fr.wikipedia.org/wiki/S%C3%A9miologie">sémiologie</a></li>
<li>Et là on reboucle sur <a href="http://fr.wikipedia.org/wiki/Signe_(s%C3%A9miologie)">signes</a></li>
</ul>
<h4>Deuxième essai</h4>
<ul>
<li><a href="http://fr.wikipedia.org/wiki/Conversation_t%C3%A9l%C3%A9phonique">Conversation téléphonique</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Communication_verbale">échange oral</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Communication">communication</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Relation">relation</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Sociologie">sociologie</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Social">social</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Sens_commun">sens commun</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Connaissance">connaissance</a></li>
<li><a href="http://fr.wikipedia.org/wiki/Philosophie">philosophie</a></li>
</ul>
<p>Il n&#8217;est pas nécessaire d&#8217;aller jusqu&#8217;à la boucle ; si on tombe sur <a href="http://fr.wikipedia.org/wiki/Latin">latin</a>, on sait que ça se termine en boucle.</p>
<p>En fait, l&#8217;hypothèse est probablement valable quel que soit l&#8217;article choisi. C&#8217;est la probabilité de tomber dessus qui change. Ainsi, il est plus probable de tomber sur Philosophie que sur Pablo Picasso, mais la logique est la même.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=TgwVYaEnLa0:D6MmxynxrbQ:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=TgwVYaEnLa0:D6MmxynxrbQ:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=TgwVYaEnLa0:D6MmxynxrbQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=TgwVYaEnLa0:D6MmxynxrbQ:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/TgwVYaEnLa0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/wikipedia-tout-mene-a-philosophie/231/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.6502.fr/wikipedia-tout-mene-a-philosophie/231</feedburner:origLink></item>
		<item>
		<title>Afficher le chemin complet dans la barre du Finder</title>
		<link>http://feedproxy.google.com/~r/6502/~3/6TpnFxSkc08/220</link>
		<comments>http://www.6502.fr/afficher-le-chemin-complet-dans-la-barre-du-finder/220#comments</comments>
		<pubDate>Sat, 06 Dec 2008 16:16:48 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Finder]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=220</guid>
		<description><![CDATA[Par défaut, le Finder affiche uniquement le nom du répertoire en cours comme titre de page. C&#8217;est peut-être suffisant pour votre musique, mais quand vous avez deux douzaines de projets Rails en cours (ou plusieurs branches d&#8217;un projet), ça ne vous avance pas tellement de savoir que vous êtes dans models ou dans controllers. Vous [...]]]></description>
			<content:encoded><![CDATA[<p>Par défaut, le <strong>Finder </strong>affiche uniquement le nom du répertoire en cours comme titre de page. C&#8217;est peut-être suffisant pour votre musique, mais quand vous avez deux douzaines de projets Rails en cours (ou plusieurs branches d&#8217;un projet), ça ne vous avance pas tellement de savoir que vous êtes dans <em>models</em> ou dans <em>controllers</em>.</p>
<p>Vous pouvez faire afficher le chemin complet dans la barre de titre en passant une commande dans un Terminal :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">defaults <span style="color: #c20cb9; font-weight: bold;">write</span> com.apple.finder _FXShowPosixPathInTitle <span style="color: #660033;">-bool</span> YES</pre></div></div>

<p>Ensuite il faut relancer le Finder, soit en rebootant (à la Windows) soit en envoyant un signal à la tâche (à la Unix) :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">killall</span> Finder</pre></div></div>

<p>Et hop !</p>
<p>via <a title="Terminal Tips: Enable path view in Finder [anglais]" href="http://www.tuaw.com/2008/12/05/terminal-tips-enable-path-view-in-finder/">TUAW</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=6TpnFxSkc08:738eDvKnn9E:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=6TpnFxSkc08:738eDvKnn9E:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=6TpnFxSkc08:738eDvKnn9E:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=6TpnFxSkc08:738eDvKnn9E:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/6TpnFxSkc08" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/afficher-le-chemin-complet-dans-la-barre-du-finder/220/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.6502.fr/afficher-le-chemin-complet-dans-la-barre-du-finder/220</feedburner:origLink></item>
		<item>
		<title>RSpec have_tag et Rails assert_select cheat sheet</title>
		<link>http://feedproxy.google.com/~r/6502/~3/q4Z6da0Lu8c/216</link>
		<comments>http://www.6502.fr/rspec-have_tag-et-rails-assert_select-cheat-sheet/216#comments</comments>
		<pubDate>Tue, 25 Nov 2008 23:18:30 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[assert_select]]></category>
		<category><![CDATA[have_tag]]></category>
		<category><![CDATA[RSpec]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=216</guid>
		<description><![CDATA[have_tag (RSpec) et assert_select (Rails) facilitent le test des vues grâce à une syntaxe proche de celle du CSS. Vérifions par exemple la présence d&#8217;un titre qui contient le texte Subtitle et d&#8217;un formulaire (id=&#160;&#187;swap&#160;&#187;) avec deux boutons radio et un bouton de soumission (class=&#160;&#187;button_save&#160;&#187;)&#160;: response.should have_tag("h2", /Subtitle/) response.should have_tag("form#swap[method=post]") response.should have_tag("form#swap input[type=radio][name=?]", 'part1') response.should [...]]]></description>
			<content:encoded><![CDATA[<p><code>have_tag</code> (RSpec) et <code>assert_select</code> (Rails) facilitent le test des vues grâce à une syntaxe proche de celle du CSS. Vérifions par exemple la présence d&#8217;un titre qui contient le texte <i>Subtitle</i> et d&#8217;un formulaire (id=&nbsp;&raquo;swap&nbsp;&raquo;) avec deux boutons radio et un bouton de soumission (class=&nbsp;&raquo;button_save&nbsp;&raquo;)&nbsp;:</p>
<pre lang=ruby>
response.should have_tag("h2", /Subtitle/)
response.should have_tag("form#swap[method=post]")
response.should have_tag("form#swap input[type=radio][name=?]", 'part1')
response.should have_tag("form#swap input[type=radio][name=?]", 'part2')
response.should have_tag("form#swap input.button_save[type=submit]")
</pre>
<p>Autre exemple, un formulaire AJAX dans sa <code>div</code> (id=&nbsp;&raquo;filter&nbsp;&raquo;, mais vous avez compris maintenant) avec une liste déroulante, avec soumission par GET sur changement de la sélection&nbsp;:</p>
<pre lang=ruby>
response.should have_tag("select option", "All")
response.should have_tag("select option", /20/)
response.should_not have_tag("select option", /21/)
response.should have_tag("div#filter form[method=?]", 'get')
response.should have_tag("div#filter form select[onchange=?]", 'this.form.submit()')
</pre>
<p>La syntaxe du sélecteur a beau être proche de celle du CSS, il est difficile de s&#8217;en rappeler toutes les subtilités. C&#8217;est là qu&#8217;intervient l&#8217;excellente <em><a href="http://labnotes.org/svn/public/ruby/rails_plugins/assert_select/cheat/assert_select.html">cheat sheet</a></em> créée par Assaf Arkin de <a href="http://blog.labnotes.org/2006/09/04/assert_select-cheat-sheet/">Labnotes</a>. Indispensable&nbsp;</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=q4Z6da0Lu8c:SHIsnjcBoJY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=q4Z6da0Lu8c:SHIsnjcBoJY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=q4Z6da0Lu8c:SHIsnjcBoJY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=q4Z6da0Lu8c:SHIsnjcBoJY:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/q4Z6da0Lu8c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/rspec-have_tag-et-rails-assert_select-cheat-sheet/216/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.6502.fr/rspec-have_tag-et-rails-assert_select-cheat-sheet/216</feedburner:origLink></item>
		<item>
		<title>Firefox 3.1 — compatibilité des add-ons</title>
		<link>http://feedproxy.google.com/~r/6502/~3/BaNrptMMaYQ/214</link>
		<comments>http://www.6502.fr/firefox-31-compatibilite-des-add-ons/214#comments</comments>
		<pubDate>Wed, 19 Nov 2008 22:34:08 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Outils]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Firefox]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=214</guid>
		<description><![CDATA[Firefox 3.1 offre bien des nouveautés intéressantes, en particulier un nouvel interpréteur de Javascript d&#8217;une extrême rapidité. La liste des évolutions entre les versions 3.0 et 3.1 est impressionnante; bien des éditeurs de logiciel en auraient fait une changement de version majeure. Mais nous utilisons aussi des modules complémentaires dont certains sont indispensables. En ce [...]]]></description>
			<content:encoded><![CDATA[<p>Firefox 3.1 offre bien des nouveautés intéressantes, en particulier un nouvel interpréteur de Javascript d&#8217;une extrême rapidité. La liste des évolutions entre les versions 3.0 et 3.1 est impressionnante; bien des éditeurs de logiciel en auraient fait une changement de version majeure.</p>
<p>Mais nous utilisons aussi des modules complémentaires dont certains sont indispensables. En ce qui me concerne, je ne pourrais développer sans <a title="Add-on" href="https://addons.mozilla.org/fr/firefox/addon/1843"><em>Firebug</em></a> ou <a title="Add-on" href="https://addons.mozilla.org/fr/firefox/addon/60"><em>Web Developer</em></a>. <a title="Add-on" href="https://addons.mozilla.org/fr/firefox/addon/8487"><em>Pencil</em></a> me sert pour les maquettes. L&#8217;absence de <a title="Add-on" href="https://addons.mozilla.org/fr/firefox/addon/12"><em>All-in-one Gestures</em></a> m&#8217;handicape grandement.</p>
<p>Heureusement, l&#8217;équipe Firefox publie l&#8217;<a title="Compatibilité des add-ons avec Firefox 3.1 [en anglais]" href="https://addons.mozilla.org/fr/firefox/compatibility/report">état de compatibilité des modules les plus utilisés</a>. La page regroupe les modules représentant 95% des usages recensés&#8230;</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=BaNrptMMaYQ:bY5OjfTiYNI:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=BaNrptMMaYQ:bY5OjfTiYNI:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=BaNrptMMaYQ:bY5OjfTiYNI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=BaNrptMMaYQ:bY5OjfTiYNI:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/BaNrptMMaYQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/firefox-31-compatibilite-des-add-ons/214/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.6502.fr/firefox-31-compatibilite-des-add-ons/214</feedburner:origLink></item>
		<item>
		<title>Déploiement Capistrano à partir de Windows</title>
		<link>http://feedproxy.google.com/~r/6502/~3/HchEXHE3M_g/205</link>
		<comments>http://www.6502.fr/deploiement-capistrano-a-partir-de-windows/205#comments</comments>
		<pubDate>Tue, 11 Nov 2008 00:27:52 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Capistrano]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Windows Vista]]></category>
		<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=205</guid>
		<description><![CDATA[Capistrano est un outil de déploiement puissant et facile d&#8217;emploi, dont j&#8217;ai déjà parlé. Il tourne sous Windows, Mac OS et Linux (entre autres) et est d&#8217;une mise en service aisée si l&#8217;on connait ssh et subversion. C&#8217;est pourquoi j&#8217;ai été fort (désagréablement) surpris quand mon récent cap deploy a échoué avec le message d&#8217;erreur [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Capistrano [en anglais]" href="http://www.capify.org/">Capistrano</a> est un outil de déploiement puissant et facile d&#8217;emploi, dont j&#8217;ai <a title="Capistrano – symboles :scm_user et :scm_username" href="/capistrano-scm_user-et-scm_username/196">déjà</a> <a title="Afficher une page de maintenance pendant le déploiement" href="/afficher-une-page-de-maintenance-pendant-le-deploiement/88">parlé</a>. Il tourne sous Windows, Mac OS et Linux (entre autres) et est d&#8217;une mise en service aisée si l&#8217;on connait ssh et <a title="Subversion [en anglais]" href="http://subversion.tigris.org/">subversion</a>.</p>
<p>C&#8217;est pourquoi j&#8217;ai été fort (désagréablement) surpris quand mon récent <code>cap deploy</code> a échoué avec le message d&#8217;erreur suivant :</p>
<pre>c:/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.1/lib/capistrano/recipes/deploy.rb:97:in ``': No such file or directory - svn info http://svn.example.com/</pre>
<p>On comprend bien qu&#8217;il s&#8217;agit de ma machine mobile et portable qui tourne sous Windows Vista. Le client SVN de choix sous Windows reste sans conteste <a title="TortoiseSVN [en anglais]" href="http://tortoisesvn.tigris.org/">TortoiseSVN</a>. Malheureusement (d&#8217;une certaine manière), TortoiseSVN est un vrai client Subversion et non un <em>wrapper </em>graphique s&#8217;appuyant sur l&#8217;exécutable svn (en ligne de commande donc).</p>
<p>Or Capistrano invoque l&#8217;exécutable sus-cité, et ne le trouve pas. Solution simple et rapide : installer le client officiel SVN, que l&#8217;on peut trouver <a href="http://subversion.tigris.org/getting.html#binary-packages">ici</a>.</p>
<p>Et hop !</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=HchEXHE3M_g:pJGiqruzScY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=HchEXHE3M_g:pJGiqruzScY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=HchEXHE3M_g:pJGiqruzScY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=HchEXHE3M_g:pJGiqruzScY:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/HchEXHE3M_g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/deploiement-capistrano-a-partir-de-windows/205/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.6502.fr/deploiement-capistrano-a-partir-de-windows/205</feedburner:origLink></item>
		<item>
		<title>RSpec : tester le contenu d’un content_for</title>
		<link>http://feedproxy.google.com/~r/6502/~3/URMhcUN7lTw/198</link>
		<comments>http://www.6502.fr/rspec-tester-le-contenu-de-content_for/198#comments</comments>
		<pubDate>Sun, 02 Nov 2008 15:38:55 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[RSpec]]></category>

		<guid isPermaLink="false">http://www.6502.fr/?p=198</guid>
		<description><![CDATA[Une spécification de vue sous RSpec pourrait ressembler à ça&#160;: it &#34;should render column titles&#34; do render &#34;/feeds/index.html.erb&#34; response.should have_tag&#40;&#34;tr&#62;th&#34;, &#34;name&#34;&#41; response.should have_tag&#40;&#34;tr&#62;th&#34;, &#34;url&#34;&#41; end Mais cette méthode ne permet pas de tester les bribes de HTML qui sont produites dans un content_for. En effet, ces bribes sont incluses directement dans le layout, pas dans [...]]]></description>
			<content:encoded><![CDATA[<p>Une spécification de vue sous RSpec pourrait ressembler à ça&nbsp;:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">  it <span style="color:#996600;">&quot;should render column titles&quot;</span> <span style="color:#9966CC; font-weight:bold;">do</span>
    render <span style="color:#996600;">&quot;/feeds/index.html.erb&quot;</span>
    response.<span style="color:#9900CC;">should</span> have_tag<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;tr&gt;th&quot;</span>, <span style="color:#996600;">&quot;name&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
    response.<span style="color:#9900CC;">should</span> have_tag<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;tr&gt;th&quot;</span>, <span style="color:#996600;">&quot;url&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>Mais cette méthode ne permet pas de tester les bribes de HTML qui sont produites dans un <em>content_for</em>. En effet, ces bribes sont incluses directement dans le layout, pas dans la production de la vue. Pour ce faire, ajouter dans <em>spec_helper.rb</em>&nbsp;:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">  <span style="color:#9966CC; font-weight:bold;">def</span> content_for<span style="color:#006600; font-weight:bold;">&#40;</span>name<span style="color:#006600; font-weight:bold;">&#41;</span>
    response.<span style="color:#9900CC;">template</span>.<span style="color:#9900CC;">instance_variable_get</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;@content_for_#{name}&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>Puis dans les specs&nbsp;:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">  it <span style="color:#996600;">&quot;should render a 'New feed' link&quot;</span> <span style="color:#9966CC; font-weight:bold;">do</span>
    render <span style="color:#996600;">&quot;/feeds/index.html.erb&quot;</span>
    content_for<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:somewhere</span><span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#9900CC;">should</span> have_tag<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;a[href=?]&quot;</span>, new_feed_path<span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>Merci à <a title="rspec-users mailing list [en anglais]" href="http://rubyforge.org/pipermail/rspec-users/2007-June/001954.html">Carl-Johan Kihlbom</a>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/6502?a=URMhcUN7lTw:focTGx9fPx4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/6502?i=URMhcUN7lTw:focTGx9fPx4:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/6502?a=URMhcUN7lTw:focTGx9fPx4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/6502?i=URMhcUN7lTw:focTGx9fPx4:V_sGLiPBpWU" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/6502/~4/URMhcUN7lTw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.6502.fr/rspec-tester-le-contenu-de-content_for/198/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.6502.fr/rspec-tester-le-contenu-de-content_for/198</feedburner:origLink></item>
	</channel>
</rss>
