Merge branch 'master' into next

Conflicts:
	Rules
	img_latest_blog_dir
	latest.md
	output/Scratch/en/blog/feed/feed.xml
	output/Scratch/fr/blog/feed/feed.xml
	output/Scratch/sitemap.xml
This commit is contained in:
Yann Esposito (Yogsototh) 2011-09-27 17:04:44 +02:00
commit c2c6ae4493
34 changed files with 517 additions and 388 deletions

60
README.md Normal file
View file

@ -0,0 +1,60 @@
# yannesposito.com
This is the source code of yannesposito.com website.
It is mainly a multi-language blog based on [nanoc](nanoc.stoneship.org).
_Notice, this is not a clean system.
Mainly because I use it for some years now.
I just want it to work, not to be a nice piece of code.
But in the end I know I will make it clean._
What you'll need to use it:
- [nanoc](nanoc.stoneship.org) → `gem install nanoc`
- [zsh](zsh.org) → By default installed on most good system
- A bunch of gems: `gem install ultraviolet krambook sass rainpress`
Optionally
- [graphviz](graphviz.org)
Here is a short explanation of each file role:
config.rb → nanoc central configuration file
config.ru → Rack server configuration
config.yaml → A YAML configuration file (mostly strings)
content/ → The directory where nanoc will search most content
img_latest_blog_dir@ → A link to the latest blog image directory
latest.md@ → A link to the latest blog file
layouts/ → HTML Layouts for your webpages
lib/ → Some ruby files loaded by nanoc before generating
multi/ → Where you should write content
output/ → Where the content is loaded
Rakefile → Ruby actions
README.md → This file
resources/ → Some file I used and wanted to keep
Rules → Generation rules
tasks/ → Where I putted most of my scripts
Here are features I added:
analytics.rb → Functions to add web analytics code
calendar.rb → Function show a date nicely in HTML
gitmtime.rb → Show time using git last change log
graph.rb → Use graphviz to draw graphs
helpers.rb → Some standard nanoc helpers are added
html.rb → Layout block helper
intenseDebate.rb → IntenseDebate integration
macros.rb → Macros system (%latex => LaTeX, etc...)
mail.rb → My uniquely encoded personal email
multiMenu.rb → The machinery for the menu
multi.rb → The machinery for helping to be multi-language
nanoc_item_conf.rb
repair_html.rb
syntaxColorize.rb
tag.rb
ultraviolet.rb
y.rb

1
Rules
View file

@ -9,7 +9,6 @@
# CSS
compile '/css/*' do
# filter :no_custom_css
filter :sass
filter :rainpress
end

View file

@ -1,3 +1,5 @@
# This file is needed if you want to host this website
# using ruby rack. In particular on heroku.
require 'rubygems'
require 'rack'
require 'rack/contrib'

View file

@ -10,6 +10,7 @@ $secondRevealColor: #AA5533
$lighterRevealColor: $revealColor + #666
$imageBackgroundColor: $mainBackgroundColor
$imageBorderColor: #cccccc
$borderColor: #cccccc
$mainLinkColor: $mainTextColor
$textLinkColor: #555555
$highlightColor: #888888
@ -61,6 +62,9 @@ $codeBlockBackgroundColor: $behindColor
=secondColor
color: $behindColor
border: $borderColor solid 1px
border-radius: 5px
box-shadow: 0 0 2px $borderColor inset
background:
color: $lighterColor
a
@ -396,9 +400,7 @@ $hauteur_menu: 4em
$contentMargin: 0em
.encadre, .black, .red, .intro, .resume, .shadow
padding:
left: 2em
right: 2em
padding: 2em
margin:
top: 2em
bottom: 2em

View file

@ -27,7 +27,7 @@ def gitmtime
ext=%{.#{@item[:extension]}}
filepath<<=ext
if not FileTest.exists?(filepath)
filepath.sub!(ext,%{/index#{ext}})
filepath.sub!(ext,%{#{@item.raw_filename}#{ext}})
end
str=`git log -1 --format='%ci' -- #{filepath}`
if str.nil? or str.empty?
@ -43,4 +43,5 @@ But it works as expected.
Now the date you see at the bottom is exactly the date I modified the _content_ of the page.
Thanks to Eric Sunshine to provide me some hints at cleaning my code.
_Edit_:
Thanks to Eric Sunshine and Kris to provide me some hints at cleaning my code.

View file

@ -213,11 +213,12 @@ With all preceding commands you should be comfortable to use vim.
But now, here are the killer features.
Some of these features were the reason I started to use vim.
### Move on current line: `0` `^` `$` `f` `F` `t` `T` `,` `;`
### Move on current line: `0` `^` `$` `g_` `f` `F` `t` `T` `,` `;`
> - `0` → go to column 0
> - `^` → go to first character on the line
> - `$` → go to the last character on the line
> - `$` → go to the last column
> - `g_` → go to the last character on the line
> - `fa` → go to next occurrence of the letter `a` on the line. `,` (resp. `;`) will seek for the next (resp. previous) occurrence.
> - `t,` → go just before the character `,`.
> - `3fa` → search the 3rd occurrence of `a` on this line.
@ -260,7 +261,7 @@ Typically: `0<C-v><C-d>I-- [ESC]`
<%= blogimage("rectangular-blocks.gif","Rectangular blocks") %>
Not on windows you might have to use `<C-q>` instead of `<C-v>` if your clipboard is not empty.
Note on windows you might have to use `<C-q>` instead of `<C-v>` if your clipboard is not empty.
### Completion: `<C-n>` and `<C-p>`.

View file

@ -27,7 +27,7 @@ def gitmtime
ext=%{.#{@item[:extension]}}
filepath<<=ext
if not FileTest.exists?(filepath)
filepath.sub!(ext,%{/index#{ext}})
filepath.sub!(ext,%{#{@item.raw_filename}#{ext}})
end
str=`git log -1 --format='%ci' -- #{filepath}`
if str.nil? or str.empty?
@ -43,4 +43,5 @@ Bien entendu je sais que c'est très lent et absolument pas optimisé.
Mais ça fonctionne comme prévu.
Maintenant la date que vous voyez en bas de la page correspond exactement à la dernière date de modification de son contenu.
Je tiens à remercier Eric Sunshine pour ses conseils sur ce problème.
_Mise à jour_:
Je tiens à remercier Eric Sunshine et Kris pour leurs conseils sur ce problème.

View file

@ -219,11 +219,12 @@ Jusqu'ici vous avez appris les commandes les plus courantes.
Mais voici les killer features de vim.
Celles que je n'ai retrouvé que dans vim (ou presque).
### Déplacement sur la ligne : `0` `^` `$` `f` `F` `t` `T` `,` `;`
### Déplacement sur la ligne : `0` `^` `$` `g_` `f` `F` `t` `T` `,` `;`
> - `0` → aller à la colonne 0,
> - `^` → aller au premier caractère de la ligne
> - `$` → aller au dernier caractère de la ligne
> - `$` → aller à la dernière colonne de la ligne
> - `g_` → aller au dernier caractère de la ligne
> - `fa` → vous amène à la prochaine occurrence de a sur la ligne courante. `,` (resp. `;`) recherche l'occurrence suivante (resp. précédente).
> - `t,` → vous amène juste avant le `,`.
> - `3fa` → recherche la 3ième occurrence de `a`.

View file

@ -1 +1 @@
./output/Scratch/img/blog/programming-language-experience
/home/e640846/Sites/webroot/output/Scratch/img/blog/Higher-order-function-in-zsh

View file

@ -1 +1 @@
./multi/blog/programming-language-experience.md
./multi/blog/Higher-order-function-in-zsh.md

19
lib/blog.rb Normal file
View file

@ -0,0 +1,19 @@
# Helper to find an image corresponding to the current
# article
def blogimage(val,title="no name", divclass=nil)
if depthOf( @item ) == 4
imgpath=@item.parent.path
else
imgpath=@item.path
end
imgpath=imgpath.sub(%r{#{@config[:webprefix]}/../},@config[:webprefix]+'/img/')+val
if not divclass.nil?
cls=%{ class="#{divclass}"}
end
return %{<img alt="#{title}" src="#{imgpath}"#{cls}/>}
end
# Return a blog image with class left added
def leftblogimage(val,title="no name")
return blogimage(val, title, "left")
end

View file

@ -1,32 +0,0 @@
class NoCustomCSS < Nanoc3::Filter
identifier :no_custom_css
def run(content, params={})
res=""
content.each do |line|
res <<= line if not res=~/^\s*-(moz|webkit)/
end
return res
end
end
class MozillaCSS < Nanoc3::Filter
identifier :mozilla
def run(content, params={})
res=""
content.each do |line|
res <<= line if not res=~/-webkit/
end
return res
end
end
class WebkitCSS < Nanoc3::Filter
identifier :webkit
def run(content, params={})
res=""
content.each do |line|
res <<= line if not res=~/-moz/
end
return res
end
end

View file

@ -3,7 +3,7 @@ def gitmtime
ext=%{.#{@item[:extension]}}
filepath<<=ext
if not FileTest.exists?(filepath)
filepath.sub!(ext,%{/index#{ext}})
filepath.sub!(ext,%{#{@item.raw_filename}#{ext}})
end
str=`git log -1 --format='%ci' -- #{filepath}`
if str.nil? or str.empty?

View file

@ -7,7 +7,6 @@
# <% content_for :summary do %>
# Sommaire que je veux ecrire
# <% end %>
#
# Pour remplir à la fois le texte et le sommaire
include Nanoc3::Helpers::Capturing

View file

@ -1,14 +1,17 @@
# give item corresponding to the homepage of the current language
def homepage
@items.find do |i|
i.reps[0].path == %{#{@config[:webprefix]}/#{@conf.language}/}
end
end
# Explicit, give the children of a node in the menu, sorted by menu priority
def sortedChildrenByMenuPriority(item)
item.children.reject{|p| p[:isHidden]}.
sort!{|x,y| x[:menupriority] <=> y[:menupriority]}
end
# Generate the menu for the current item
def generateMenu
home=homepage
if home.nil?
@ -22,6 +25,7 @@ def generateMenu
"<ul><li>"+liste.join("</li>\n<li>")+"</li></ul>"
end
# get the depth of an item in the menu
def depthOf(item)
res=0
while item.parent != nil
@ -31,6 +35,8 @@ def depthOf(item)
return res
end
# get the list of item children of a node sorted
# by menupriority or date depending of the kind fo page
def getSortedChildren(parent)
if parent[:kind] == "blog"
return parent.children.reject{|p| p[:isHidden]}.sort!{|x,y| x[:created_at] <=> y[:created_at] }
@ -39,6 +45,7 @@ def getSortedChildren(parent)
end
end
# For the page blog, the submenu is very specific
def generateBlogSubMenu(language)
year=0
res=""
@ -63,6 +70,7 @@ def generateBlogSubMenu(language)
end
end
# Generate a submenu, not always needed
def generateSubMenu()
if @item[:noSubMenu]
return
@ -102,23 +110,6 @@ def generateSubMenu()
end
# =======================
def blogimage(val,title="no name", divclass=nil)
if depthOf( @item ) == 4
imgpath=@item.parent.path
else
imgpath=@item.path
end
imgpath=imgpath.sub(%r{#{@config[:webprefix]}/../},@config[:webprefix]+'/img/')+val
if not divclass.nil?
cls=%{ class="#{divclass}"}
end
return %{<img alt="#{title}" src="#{imgpath}"#{cls}/>}
end
def leftblogimage(val,title="no name")
return blogimage(val, title, "left")
end
def lnkto(title,item)
language=@item_rep.path.sub(/#{@config[:webprefix]}\//,'').sub(/\/.*$/,'')
link_to(title, "#{@config[:webprefix]}/#{language}"+item)

View file

@ -11,36 +11,23 @@ def repair_html( html, debug=false )
depth=0
html.scan( %r{<(/?)(\w*)([^>]*)>} ).each do |m|
if m[-1] == "/"
if debug
puts 'IGNORE: <'+m[0]+m[1]+'/>' + depth.to_s
puts 'parents='+parents.join('; ')
end
next
end
if m[0] == ""
parents[depth]=m[1]
depth+=1
if debug
puts '<'+m[0]+m[1]+'> ' + depth.to_s
puts 'parents='+parents.join('; ')
end
else
depth-=1
if (not debug) and (depth <0)
puts 'ERROR repair_html !'
# puts 'HTML: ' + html
# puts '---'
# repair_html(html,true)
# puts 'END_ERROR'
end
if debug
puts '<'+m[0]+m[1]+'> ' + depth.to_s
# -1 is normal for my layout
if (depth <= -2)
puts "WARNING: Intermiedate Depth <= -2"
end
end
end
res=html.sub(/<[^>]*$/m,'')
depth -= 1
if (depth < 0)
if (depth < -1)
puts "ERROR: Final Depth < 0"
parents=[]
depth=0
html.scan( %r{<(/?)(\w*)[^>]*(/?)>} ).each do |m|

View file

@ -35,7 +35,7 @@ def gitmtime
ext=%{.#{@item[:extension]}}
filepath<<=ext
if not FileTest.exists?(filepath)
filepath.sub!(ext,%{/index#{ext}})
filepath.sub!(ext,%{#{@item.raw_filename}#{ext}})
end
str=`git log -1 --format='%ci' -- #{filepath}`
if str.nil? or str.empty?
@ -54,5 +54,7 @@ fr: Bien entendu je sais que c'est très lent et absolument pas optimisé.
fr: Mais ça fonctionne comme prévu.
fr: Maintenant la date que vous voyez en bas de la page correspond exactement à la dernière date de modification de son contenu.
en: Thanks to Eric Sunshine to provide me some hints at cleaning my code.
fr: Je tiens à remercier Eric Sunshine pour ses conseils sur ce problème.
en: _Edit_:
en: Thanks to Eric Sunshine and Kris to provide me some hints at cleaning my code.
fr: _Mise à jour_:
fr: Je tiens à remercier Eric Sunshine et Kris pour leurs conseils sur ce problème.

View file

@ -0,0 +1,90 @@
-----
isHidden: false
menupriority: 1
kind: article
created_at: 2011-09-27T15:15:23+02:00
en: title: Higher order function in zsh
fr: title: Higher order function in zsh
author_name: Yann Esposito
author_uri: yannesposito.com
# tags:
-----
<%= blogimage("main.png","Title image") %>
begindiv(intro)
en: <%= tldr %> some simple implementation of higher order function for zsh.
fr: <%= tlal %> des fonctions d'ordres supérieurs en zsh.
enddiv
fr: Tout d'abord, pourquoi c'est important d'avoir ces fonctions.
fr: Plus je programmais avec zsh plus j'essayais d'avoir un style fonctionnel.
fr: Le minimum pour pouvoir avoir du code plus lisible c'est de posséder les fonctions `map`, `filter` et `fold`.
fr: Voici pourquoi avec une comparaison.
fr: Commençons par un programme qui converti tous les gif en png dans plusieurs répertoires projets contenant tous des répertoires resources.
fr: Avant :
<code class="zsh">
# for each directory in projects dir
for toProject in /path/to/projects/*(/N); do
# toProject is /path/to/projects/foo
# project become foo (:t for tail)
project=${toProject:t}
for toResource in $toProject/resources/*.gif(.N); do
convert $toResource ${toResource:r}.png
\rm -f $toResource
done
done
</code>
fr: Après
<code class="zsh">
gif_to_png() { convert $1 ${1:r}.png && \rm -f $1 }
handle_resources() { map gif_to_png $1/resources/*.gif(.N) }
map handle_resources /path/to/projects/*(/N)
</code>
fr: Plus de bloc !
fr: Oui, c'est un poil plus difficile à lire pour les non initiés.
fr: Mais c'est à la fois plus concis et plus robuste.
fr: Et encore ce code ne possède pas de test.
fr: Recommençons sur le même principe.
fr: Trouver les fichiers des projets qui ne contiennent pas de s dans leur nom qui ont le même nom que leur projet.
<code class="zsh">
for toProject in Projects/*; do
project=$toProject:t
if print -- project | grep -v s >/dev/null
then
print $project
for toResource in $toProject/*(.N); do
if print -- ${toResource:t} | grep $project >/dev/null; then
print -- "X $toResource"
fi
done
fi
done
</code>
After =>
<code class="zsh">
contain_no_s() { print $1 | grep -v s }
function verify_file_name {
local project=$1:t
contains_project_name() { print $1:t | grep $project }
map "print -- X" $(filter contains_project_name $1/*(.N))
}
map show_project_matchin_file $( filter contain_no_s Projects/* )
</code>
Also, the first verstion is a bit easier to read.
But the second one is clearly far superior in architecture.
Why?

View file

@ -362,19 +362,21 @@ fr: Jusqu'ici vous avez appris les commandes les plus courantes.
fr: Mais voici les killer features de vim.
fr: Celles que je n'ai retrouvé que dans vim (ou presque).
en: ### Move on current line: `0` `^` `$` `f` `F` `t` `T` `,` `;`
fr: ### Déplacement sur la ligne : `0` `^` `$` `f` `F` `t` `T` `,` `;`
en: ### Move on current line: `0` `^` `$` `g_` `f` `F` `t` `T` `,` `;`
fr: ### Déplacement sur la ligne : `0` `^` `$` `g_` `f` `F` `t` `T` `,` `;`
en: > - `0` → go to column 0
en: > - `^` → go to first character on the line
en: > - `$` → go to the last character on the line
en: > - `$` → go to the last column
en: > - `g_` → go to the last character on the line
en: > - `fa` → go to next occurrence of the letter `a` on the line. `,` (resp. `;`) will seek for the next (resp. previous) occurrence.
en: > - `t,` → go just before the character `,`.
en: > - `3fa` → search the 3rd occurrence of `a` on this line.
en: > - `F` and `T` → like `f` and `t` but backward.
fr: > - `0` → aller à la colonne 0,
fr: > - `^` → aller au premier caractère de la ligne
fr: > - `$` → aller au dernier caractère de la ligne
fr: > - `$` → aller à la dernière colonne de la ligne
fr: > - `g_` → aller au dernier caractère de la ligne
fr: > - `fa` → vous amène à la prochaine occurrence de a sur la ligne courante. `,` (resp. `;`) recherche l'occurrence suivante (resp. précédente).
fr: > - `t,` → vous amène juste avant le `,`.
fr: > - `3fa` → recherche la 3ième occurrence de `a`.
@ -439,7 +441,7 @@ fr: - `I-- [ESC]` → écrit `-- ` pour commenter le reste de la ligne.
<%= blogimage("rectangular-blocks.gif","Rectangular blocks") %>
en: Not on windows you might have to use `<C-q>` instead of `<C-v>` if your clipboard is not empty.
en: Note on windows you might have to use `<C-q>` instead of `<C-v>` if your clipboard is not empty.
fr: Remarquez que sous windows, vous devez utiliser `<C-q>` plutôt que `<C-v>` si votre "presse papier" n'est pas vide.
en: ### Completion: `<C-n>` and `<C-p>`.

View file

@ -4,7 +4,7 @@ def gitmtime
ext=%{.#{@item[:extension]}}
filepath<<=ext
if not FileTest.exists?(filepath)
filepath.sub!(ext,%{/index#{ext}})
filepath.sub!(ext,%{#{@item.raw_filename}#{ext}})
end
str=`git log -1 --format='%ci' -- #{filepath}`
if str.nil? or str.empty?

View file

@ -74,7 +74,7 @@ This is how I do this with <a href="http://nanoc.stoneship.org">nanoc</a>:</p>
ext<span class="Keyword">=</span><span class="String"><span class="String">%{</span>.<span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span><span class="StringVariable"><span class="StringVariable">@</span>item</span><span class="StringEmbeddedSource">[</span><span class="StringConstant"><span class="StringConstant">:</span>extension</span><span class="StringEmbeddedSource">]</span><span class="StringEmbeddedSource">}</span></span><span class="String">}</span></span>
filepath<span class="Keyword">&lt;&lt;=</span>ext
<span class="Keyword">if</span> <span class="Keyword">not</span> <span class="Support">FileTest</span>.<span class="Entity">exists?</span>(filepath)
filepath.<span class="Entity">sub!</span>(ext,<span class="String"><span class="String">%{</span>/index<span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span>ext<span class="StringEmbeddedSource">}</span></span><span class="String">}</span></span>)
filepath.<span class="Entity">sub!</span>(ext,<span class="String"><span class="String">%{</span><span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span><span class="StringVariable"><span class="StringVariable">@</span>item</span><span class="StringEmbeddedSource"><span class="StringEmbeddedSource">.</span><span class="Entity">raw_filename</span></span><span class="StringEmbeddedSource">}</span></span><span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span>ext<span class="StringEmbeddedSource">}</span></span><span class="String">}</span></span>)
<span class="Keyword">end</span>
str<span class="Keyword">=</span><span class="String"><span class="String">`</span>git log -1 --format='%ci' -- <span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span>filepath<span class="StringEmbeddedSource">}</span></span><span class="String">`</span></span>
<span class="Keyword">if</span> str.<span class="Entity">nil?</span> <span class="Keyword">or</span> str.<span class="Entity">empty?</span>
@ -90,7 +90,8 @@ This is how I do this with <a href="http://nanoc.stoneship.org">nanoc</a>:</p>
But it works as expected.
Now the date you see at the bottom is exactly the date I modified the <em>content</em> of the page.</p>
<p>Thanks to Eric Sunshine to provide me some hints at cleaning my code.</p>
<p><em>Edit</em>:
Thanks to Eric Sunshine and Kris to provide me some hints at cleaning my code.</p>
</div>
@ -188,7 +189,7 @@ Now the date you see at the bottom is exactly the date I modified the <em>conten
</div>
<div id="lastmod">
Created: 09/02/2010
Modified: 04/20/2011
Modified: 09/14/2011
</div>
<div>
Entirely done with

View file

@ -321,13 +321,14 @@ is also true for <code>d</code> (delete), <code>v</code> (visual select), <code>
But now, here are the killer features.
Some of these features were the reason I started to use vim.</p>
<h3 id="move-on-current-line-0---f-f-t-t--">Move on current line: <code>0</code> <code>^</code> <code>$</code> <code>f</code> <code>F</code> <code>t</code> <code>T</code> <code>,</code> <code>;</code></h3>
<h3 id="move-on-current-line-0---g-f-f-t-t--">Move on current line: <code>0</code> <code>^</code> <code>$</code> <code>g_</code> <code>f</code> <code>F</code> <code>t</code> <code>T</code> <code>,</code> <code>;</code></h3>
<blockquote>
<ul>
<li><code>0</code> → go to column 0</li>
<li><code>^</code> → go to first character on the line</li>
<li><code>$</code> → go to the last character on the line</li>
<li><code>$</code> → go to the last column</li>
<li><code>g_</code> → go to the last character on the line</li>
<li><code>fa</code> → go to next occurrence of the letter <code>a</code> on the line. <code>,</code> (resp. <code>;</code>) will seek for the next (resp. previous) occurrence.</li>
<li><code>t,</code> → go just before the character <code>,</code>.</li>
<li><code>3fa</code> → search the 3<sup>rd</sup> occurrence of <code>a</code> on this line.</li>
@ -377,7 +378,7 @@ Typically: <code>0&lt;C-v&gt;&lt;C-d&gt;I-- [ESC]</code></p>
<p><img alt="Rectangular blocks" src="/Scratch/img/blog/Learn-Vim-Progressively/rectangular-blocks.gif" /></p>
<p>Not on windows you might have to use <code>&lt;C-q&gt;</code> instead of <code>&lt;C-v&gt;</code> if your clipboard is not empty.</p>
<p>Note on windows you might have to use <code>&lt;C-q&gt;</code> instead of <code>&lt;C-v&gt;</code> if your clipboard is not empty.</p>
<h3 id="completion-c-n-and-c-p">Completion: <code>&lt;C-n&gt;</code> and <code>&lt;C-p&gt;</code>.</h3>
@ -564,7 +565,7 @@ $(document).ready(function() {
</div>
<div id="lastmod">
Created: 08/25/2011
Modified: 08/31/2011
Modified: 09/08/2011
</div>
<div>
Entirely done with

View file

@ -2,46 +2,13 @@
<feed xmlns="http://www.w3.org/2005/Atom">
<id>http://yannesposito.com/</id>
<title>Yogsototh's last blogs entries</title>
<updated>2011-09-05T10:21:41Z</updated>
<updated>2011-08-25T17:28:20Z</updated>
<link href="http://yannesposito.com/" rel="alternate"/>
<link href="http://feeds.feedburner.com/yannespositocomen" rel="self"/>
<author>
<name>Yann Esposito</name>
<uri>http://yannesposito.com</uri>
</author>
<entry>
<id>tag:yannesposito.com,2011-09-05:/Scratch/en/blog/programming-language-experience/</id>
<title type="html">programming language experience</title>
<published>2011-09-05T10:21:41Z</published>
<updated>2011-09-05T10:21:41Z</updated>
<link href="http://yannesposito.com/Scratch/en/blog/programming-language-experience/" rel="alternate"/>
<content type="html">&lt;p&gt;&lt;img alt="Title image" src="/Scratch/img/blog/programming-language-experience/main.png" /&gt;&lt;/p&gt;
&lt;div class="intro"&gt;
&lt;span class="sc"&gt;&lt;abbr title="Too long; didn't read"&gt;tl;dr&lt;/abbr&gt;: &lt;/span&gt; My feelings about programming languages I used.
&lt;/div&gt;
&lt;h3 id="basic"&gt;BASIC&lt;/h3&gt;
&lt;p&gt;The language of my firsts programs!
I was about 10, with an &lt;code&gt;MO5&lt;/code&gt; and &lt;code&gt;Amstrad CPC 6128&lt;/code&gt; and even with my &lt;code&gt;Atari STe&lt;/code&gt;.
This is the language of &lt;code&gt;GOTO&lt;/code&gt;s.
&#212; nostalgia.
Unfortunately this might be the only interesting part of this language.&lt;/p&gt;
&lt;p&gt;Today this language is obsolescent.
It not even a good language to learn programming.
I know there exist some compiler now.
But this is not enough to try to learn it.&lt;/p&gt;
&lt;pre class="twilight"&gt;
READY
10 PRINT &lt;/pre&gt;&lt;/p&gt;</content>
</entry>
<entry>
<id>tag:yannesposito.com,2011-08-25:/Scratch/en/blog/Learn-Vim-Progressively/</id>
<title type="html">Learn Vim Progressively</title>
@ -200,7 +167,7 @@ But I will revive a bit this blog.&lt;/p&gt;
&lt;p&gt;I had written an efficient &lt;em&gt;&amp;amp;&lt;/em&gt; simplistic MVC javascript framework.&lt;/p&gt;
&lt;p&gt;Best wishes for &lt;em&gt;2011&lt;/em&gt;!&lt;/p&gt;
&lt;/p&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2010-10-26:/Scratch/en/blog/2010-10-26-LaTeX-like-macro-and-markdown/</id>
@ -304,7 +271,7 @@ Then my new design obey to the following rules:&lt;/p&gt;
&lt;/ul&gt;
&lt;p&gt;I hope the new design please you.&lt;/p&gt;
&lt;/p&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2010-09-02:/Scratch/en/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/</id>
@ -445,7 +412,7 @@ Now all should scroll smoothly on all platforms.
I was inspired by Readability and iBooks&lt;small&gt;&amp;copy;&lt;/small&gt; (the iPhone&lt;small&gt;&amp;copy;&lt;/small&gt; application).&lt;/p&gt;
&lt;p&gt;Tell me what you think of this new design.&lt;/p&gt;
&lt;/p&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2010-07-07:/Scratch/en/blog/2010-07-07-CSS-rendering-problems-by-navigator/</id>
@ -805,7 +772,7 @@ a.....&lt;span class="Constant"&gt;&lt;strong&gt;a......b&lt;/strong&gt;&lt;/spa
&lt;p&gt;and you have to make this behaviour with only one regular expression. The problem is the complementary of regular languages is not regular. Then, for some expression it is absolutely not impossible.&lt;/p&gt;
&lt;p&gt;But sometimes with some simple regular expression it should be possible&lt;sup&gt;&lt;a href="#note1"&gt;&amp;dagger;&lt;/a&gt;&lt;/sup&gt;. Say you want to match everything containing the some word say &lt;code&gt;bull&lt;/code&gt; but don&amp;rsquo;t want to match &lt;code&gt;bullshit&lt;/code&gt;. Here is a nice way to do that:&lt;/p&gt;...&lt;/p&gt;</content>
&lt;p&gt;But sometimes with some simple regular expression it should be possible&lt;sup&gt;&lt;a href="#note1"&gt;&amp;dagger;&lt;/a&gt;&lt;/sup&gt;. Say you want to match everything containing the some word say &lt;code&gt;bull&lt;/code&gt; but don&amp;rsquo;t want to match &lt;code&gt;bullshit&lt;/code&gt;. Here is a nice way to do that:&lt;/p&gt;...</content>
</entry>
<entry>
<id>tag:yannesposito.com,2010-01-12:/Scratch/en/blog/2010-01-12-antialias-font-in-Firefox-under-Ubuntu/</id>
@ -835,7 +802,7 @@ a.....&lt;span class="Constant"&gt;&lt;strong&gt;a......b&lt;/strong&gt;&lt;/spa
&lt;div&gt;&lt;pre class="twilight"&gt;
&lt;span class="Keyword"&gt;&amp;gt;&lt;/span&gt; chsh
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2009-12-14:/Scratch/en/blog/2009-12-14-Git-vs--Bzr/</id>
@ -868,23 +835,36 @@ a.....&lt;span class="Constant"&gt;&lt;strong&gt;a......b&lt;/strong&gt;&lt;/spa
<content type="html">&lt;p&gt;It is unbelievable you cannot filter your call with an iPhone! The only reason I see for that is a negotiation with phone operator to force users to get phone advertising. It is simple unacceptable.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m a &#955; iPhone&amp;rsquo;s user. The only way to filter your call and to manage blacklist is to &lt;em&gt;jailbreak&lt;/em&gt; your iPhone. And I don&amp;rsquo;t want to do that. Then, if like me you find it unacceptable, just write a line to Apple: &lt;a href="http://www.apple.com/feedback/iphone.html"&gt;http://www.apple.com/feedback/iphone.html&lt;/a&gt;&lt;/p&gt;
&lt;/p&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2009-11-12:/Scratch/en/blog/2009-11-12-Git-for-n00b/comprendre/</id>
<id>tag:yannesposito.com,2009-11-12:/Scratch/en/blog/2009-11-12-Git-for-n00b/commandes-avancees/</id>
<title type="html">Git for n00b</title>
<published>2009-11-12T09:39:54Z</published>
<updated>2009-11-12T09:39:54Z</updated>
<link href="http://yannesposito.com/Scratch/en/blog/2009-11-12-Git-for-n00b/comprendre/" rel="alternate"/>
<content type="html">&lt;h1 class="first" id="why-git-is-cool"&gt;Why Git is cool?&lt;/h1&gt;
<link href="http://yannesposito.com/Scratch/en/blog/2009-11-12-Git-for-n00b/commandes-avancees/" rel="alternate"/>
<content type="html">&lt;h1 class="first" id="command-list"&gt;Command List&lt;/h1&gt;
&lt;p&gt;Because with &lt;a href="http://git-scm.org" title="Git"&gt;Git&lt;/a&gt; you can work on many part of some project totally independently. This is the true efficiency of decentralisation.&lt;/p&gt;
&lt;h2 id="command-for-each-functionality"&gt;Command for each functionality&lt;/h2&gt;
&lt;p&gt;Each branch use the same directory. Then you can easily change your branch. You can also change branch when some files are modified. You can then dispatch your work on many different branches and merge them on one master branch at will.&lt;/p&gt;
&lt;p&gt;In the first part, we saw the list of resolved problem by &lt;a href="http://git-scm.org" title="Git"&gt;Git&lt;/a&gt;. To resume &lt;a href="http://git-scm.org" title="Git"&gt;Git&lt;/a&gt; should do:&lt;/p&gt;
&lt;p&gt;Using the &lt;code&gt;git rebase&lt;/code&gt; you can decide which modifications should be forget or merged into only one modification.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;get others modifications,&lt;/li&gt;
&lt;li&gt;send modifications to others,&lt;/li&gt;
&lt;li&gt;get back in time,&lt;/li&gt;
&lt;li&gt;list differences between each version,&lt;/li&gt;
&lt;li&gt;name some versions in order to refer easily to them,&lt;/li&gt;
&lt;li&gt;write an historic of modifications,&lt;/li&gt;
&lt;li&gt;know who did what and when,&lt;/li&gt;
&lt;li&gt;manage conflicts,&lt;/li&gt;
&lt;li&gt;easily manage branches.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;What does it mean for real usage? You can focus on coding. For example, you can code, a fix for bug b01 and for bug b02 and code a feature f03. Once finished you can creat...&lt;/p&gt;</content>
&lt;h3 id="get-others-modifications"&gt;get others modifications&lt;/h3&gt;
&lt;div&gt;&lt;pre class="twilight"&gt;
$ g...&lt;/pre&gt;&lt;/div&gt;</content>
</entry>
<entry>
<id>tag:yannesposito.com,2009-11-12:/Scratch/en/blog/2009-11-12-Git-for-n00b/</id>
@ -917,4 +897,27 @@ a.....&lt;span class="Constant"&gt;&lt;strong&gt;a......b&lt;/strong&gt;&lt;/spa
&lt;div&gt;&lt;pre class="twilight"&gt;
git clone ssh...&lt;/pre&gt;&lt;/div&gt;</content>
</entry>
<entry>
<id>tag:yannesposito.com,2009-11-12:/Scratch/en/blog/2009-11-12-Git-for-n00b/c-est-parti-pour-l-aventure/</id>
<title type="html">Git for n00b</title>
<published>2009-11-12T09:39:54Z</published>
<updated>2009-11-12T09:39:54Z</updated>
<link href="http://yannesposito.com/Scratch/en/blog/2009-11-12-Git-for-n00b/c-est-parti-pour-l-aventure/" rel="alternate"/>
<content type="html">&lt;h1 class="first" id="here-we-go"&gt;Here we go!&lt;/h1&gt;
&lt;p&gt;Here is one from many way to use &lt;a href="http://git-scm.org" title="Git"&gt;Git&lt;/a&gt;. This method is sufficient to work on a project. Not there is many other &lt;em&gt;workflows&lt;/em&gt;.&lt;/p&gt;
&lt;h2 id="basic-usage"&gt;Basic usage&lt;/h2&gt;
&lt;p&gt;Work with &lt;a href="http://git-scm.org" title="Git"&gt;Git&lt;/a&gt; immediately:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Get modification done by others &lt;span class="black"&gt;&lt;code&gt;git pull&lt;/code&gt;&lt;/span&gt;,&lt;/li&gt;
&lt;li&gt;See details of these modifications &lt;span class="black"&gt;&lt;code&gt;git log&lt;/code&gt;&lt;/span&gt;,&lt;/li&gt;
&lt;li&gt;Many times:
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Make an atomic modification&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Verify details of this modification: &lt;span class="black"&gt;&lt;code&gt;git status&lt;/code&gt;&lt;/span&gt; and &lt;span class="black"&gt;&lt;code&gt;git diff&lt;/code&gt;&lt;/span&gt;,&lt;/li&gt;
&lt;li&gt;Add ...&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;</content>
</entry>
</feed>

View file

@ -103,7 +103,7 @@
<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Copyright ©, Yann Esposito</a>
</div>
<div id="lastmod">
Modified: 04/20/2011
Modified: 09/14/2011
</div>
<div>
Entirely done with

View file

@ -4,7 +4,7 @@ def gitmtime
ext=%{.#{@item[:extension]}}
filepath<<=ext
if not FileTest.exists?(filepath)
filepath.sub!(ext,%{/index#{ext}})
filepath.sub!(ext,%{#{@item.raw_filename}#{ext}})
end
str=`git log -1 --format='%ci' -- #{filepath}`
if str.nil? or str.empty?

View file

@ -74,7 +74,7 @@ Voici comment je m&rsquo;y prend avec <a href="http://nanoc.stoneship.org">nanoc
ext<span class="Keyword">=</span><span class="String"><span class="String">%{</span>.<span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span><span class="StringVariable"><span class="StringVariable">@</span>item</span><span class="StringEmbeddedSource">[</span><span class="StringConstant"><span class="StringConstant">:</span>extension</span><span class="StringEmbeddedSource">]</span><span class="StringEmbeddedSource">}</span></span><span class="String">}</span></span>
filepath<span class="Keyword">&lt;&lt;=</span>ext
<span class="Keyword">if</span> <span class="Keyword">not</span> <span class="Support">FileTest</span>.<span class="Entity">exists?</span>(filepath)
filepath.<span class="Entity">sub!</span>(ext,<span class="String"><span class="String">%{</span>/index<span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span>ext<span class="StringEmbeddedSource">}</span></span><span class="String">}</span></span>)
filepath.<span class="Entity">sub!</span>(ext,<span class="String"><span class="String">%{</span><span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span><span class="StringVariable"><span class="StringVariable">@</span>item</span><span class="StringEmbeddedSource"><span class="StringEmbeddedSource">.</span><span class="Entity">raw_filename</span></span><span class="StringEmbeddedSource">}</span></span><span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span>ext<span class="StringEmbeddedSource">}</span></span><span class="String">}</span></span>)
<span class="Keyword">end</span>
str<span class="Keyword">=</span><span class="String"><span class="String">`</span>git log -1 --format='%ci' -- <span class="StringEmbeddedSource"><span class="StringEmbeddedSource">#{</span>filepath<span class="StringEmbeddedSource">}</span></span><span class="String">`</span></span>
<span class="Keyword">if</span> str.<span class="Entity">nil?</span> <span class="Keyword">or</span> str.<span class="Entity">empty?</span>
@ -90,7 +90,8 @@ Voici comment je m&rsquo;y prend avec <a href="http://nanoc.stoneship.org">nanoc
Mais ça fonctionne comme prévu.
Maintenant la date que vous voyez en bas de la page correspond exactement à la dernière date de modification de son contenu.</p>
<p>Je tiens à remercier Eric Sunshine pour ses conseils sur ce problème.</p>
<p><em>Mise à jour</em>:
Je tiens à remercier Eric Sunshine et Kris pour leurs conseils sur ce problème.</p>
</div>
@ -188,7 +189,7 @@ Maintenant la date que vous voyez en bas de la page correspond exactement à la
</div>
<div id="lastmod">
Écrit le : 02/09/2010
modifié le : 20/04/2011
modifié le : 14/09/2011
</div>
<div>
Site entièrement réalisé avec

View file

@ -327,13 +327,14 @@ est aussi vrai pour <code>d</code> (delete → supprimer), <code>v</code> (séle
Mais voici les killer features de vim.
Celles que je n&rsquo;ai retrouvé que dans vim (ou presque).</p>
<h3 id="dplacement-sur-la-ligne--0---f-f-t-t--">Déplacement sur la ligne&nbsp;: <code>0</code> <code>^</code> <code>$</code> <code>f</code> <code>F</code> <code>t</code> <code>T</code> <code>,</code> <code>;</code></h3>
<h3 id="dplacement-sur-la-ligne--0---g-f-f-t-t--">Déplacement sur la ligne&nbsp;: <code>0</code> <code>^</code> <code>$</code> <code>g_</code> <code>f</code> <code>F</code> <code>t</code> <code>T</code> <code>,</code> <code>;</code></h3>
<blockquote>
<ul>
<li><code>0</code> → aller à la colonne 0,</li>
<li><code>^</code> → aller au premier caractère de la ligne</li>
<li><code>$</code> → aller au dernier caractère de la ligne</li>
<li><code>$</code> → aller à la dernière colonne de la ligne</li>
<li><code>g_</code> → aller au dernier caractère de la ligne</li>
<li><code>fa</code> → vous amène à la prochaine occurrence de a sur la ligne courante. <code>,</code> (resp. <code>;</code>) recherche l&rsquo;occurrence suivante (resp. précédente).</li>
<li><code>t,</code> → vous amène juste avant le <code>,</code>.</li>
<li><code>3fa</code> → recherche la 3ième occurrence de <code>a</code>.</li>
@ -571,7 +572,7 @@ $(document).ready(function() {
</div>
<div id="lastmod">
Écrit le : 25/08/2011
modifié le : 31/08/2011
modifié le : 08/09/2011
</div>
<div>
Site entièrement réalisé avec

View file

@ -2,41 +2,13 @@
<feed xmlns="http://www.w3.org/2005/Atom">
<id>http://yannesposito.com/</id>
<title>Yogsototh's last blogs entries</title>
<updated>2011-09-05T10:21:41Z</updated>
<updated>2011-08-25T17:28:20Z</updated>
<link href="http://yannesposito.com/" rel="alternate"/>
<link href="http://feeds.feedburner.com/yannespositocomfr" rel="self"/>
<author>
<name>Yann Esposito</name>
<uri>http://yannesposito.com</uri>
</author>
<entry>
<id>tag:yannesposito.com,2011-09-05:/Scratch/fr/blog/programming-language-experience/</id>
<title type="html">programming language experience</title>
<published>2011-09-05T10:21:41Z</published>
<updated>2011-09-05T10:21:41Z</updated>
<link href="http://yannesposito.com/Scratch/fr/blog/programming-language-experience/" rel="alternate"/>
<content type="html">&lt;p&gt;&lt;img alt="Title image" src="/Scratch/img/blog/programming-language-experience/main.png" /&gt;&lt;/p&gt;
&lt;div class="intro"&gt;
&lt;span class="sc"&gt;&lt;abbr title="Trop long &#224; lire"&gt;tl&#224;l&lt;/abbr&gt;&amp;nbsp;: &lt;/span&gt; Mon avis sur les diff&#233;rents languages de programmations que j&amp;rsquo;ai utilis&#233;.
&lt;/div&gt;
&lt;h3 id="basic"&gt;BASIC&lt;/h3&gt;
&lt;p&gt;Ah&amp;nbsp;! Le language de mes premiers programmes&amp;nbsp;!
Je devais avoir 10-11 ans.
Sous &lt;code&gt;MO5&lt;/code&gt;, &lt;code&gt;Amstrad CPC 6128&lt;/code&gt; et m&#234;me &lt;code&gt;Atari STe&lt;/code&gt;.
Le langage des &lt;code&gt;GOTO&lt;/code&gt;s.
Je suis empleint de nostalgie rien que d&amp;rsquo;y penser.
C&amp;rsquo;est &#224; peu pr&#234;t le seul int&#233;r&#234;t de ce langage.&lt;/p&gt;
&lt;p&gt;Aujourd&amp;rsquo;hui ce langage est tomb&#233; en d&#233;su&#233;tude.
Ce n&amp;rsquo;est ni un bon langage pour apprendre, ni un bon langage pour faire de vrai prog...&lt;/p&gt;&lt;/p&gt;</content>
</entry>
<entry>
<id>tag:yannesposito.com,2011-08-25:/Scratch/fr/blog/Learn-Vim-Progressively/</id>
<title type="html">Apprenez Vim Progressivement</title>
@ -183,7 +155,7 @@ Je n&amp;rsquo;en ai pas encore termin&#233; avec &#231;a. Mais si je tarde trop
&lt;p&gt;J&amp;rsquo;ai &#233;crit un framework MVC pour application javascript simple mais n&#233;anmoins tr&#232;s rapide.&lt;/p&gt;
&lt;p&gt;Meilleurs v&#339;ux &#224; tous&amp;nbsp;!&lt;/p&gt;
&lt;/p&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2010-10-26:/Scratch/fr/blog/2010-10-26-LaTeX-like-macro-and-markdown/</id>
@ -274,7 +246,7 @@ J&amp;rsquo;ai donc d&#233;cid&#233; de faire un site &#224; minima.
Je voulais qu&amp;rsquo;il soit joli &lt;em&gt;et&lt;/em&gt; le plus simple possible pour assurer sa compatibilit&#233;.
Les r&#232;gles que je me suis fix&#233;es sont donc:&lt;/p&gt;
&lt;/p&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2010-09-02:/Scratch/fr/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/</id>
@ -400,7 +372,7 @@ J&amp;rsquo;ai compl&#232;tement modifi&#233; le style de mon site web.
Il est inspir&#233; du style de l&amp;rsquo;application iBooks&lt;small&gt;&amp;copy;&lt;/small&gt; sur iPhone&lt;small&gt;&amp;copy;&lt;/small&gt;.&lt;/p&gt;
&lt;p&gt;Dites moi ce que vous pensez de ce nouveau design.&lt;/p&gt;
&lt;/p&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2010-07-07:/Scratch/fr/blog/2010-07-07-CSS-rendering-problems-by-navigator/</id>
@ -629,7 +601,7 @@ Parce qu&amp;rsquo;il est facile de &lt;em&gt;merger&lt;/em&gt; par erreur, je p
&lt;p&gt;Disons que j&amp;rsquo;ai les branches&amp;nbsp;:&lt;/p&gt;
...&lt;/p&gt;</content>
...</content>
</entry>
<entry>
<id>tag:yannesposito.com,2010-03-22:/Scratch/fr/blog/2010-03-22-Git-Tips/</id>
@ -764,7 +736,7 @@ a.....&lt;span class="Constant"&gt;&lt;strong&gt;a......b&lt;/strong&gt;&lt;/spa
&lt;div&gt;&lt;pre class="twilight"&gt;
&lt;span class="Keyword"&gt;&amp;gt;&lt;/span&gt; chsh
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2009-12-14:/Scratch/fr/blog/2009-12-14-Git-vs--Bzr/</id>
@ -797,7 +769,7 @@ a.....&lt;span class="Constant"&gt;&lt;strong&gt;a......b&lt;/strong&gt;&lt;/spa
<content type="html">&lt;p&gt;Il est vraiment incroyable que le filtrage d&amp;rsquo;appel soit impossible avec un iPhone&amp;nbsp;! Le &lt;em&gt;seul&lt;/em&gt; int&#233;r&#234;t que j&amp;rsquo;y vois, c&amp;rsquo;est une n&#233;gociation avec les op&#233;rateurs pour interdire aux utilisateurs de passer &#224; travers la publicit&#233;. C&amp;rsquo;est tout simplement inacceptable.&lt;/p&gt;
&lt;p&gt;Je suis un utilisateur &#955; de l&amp;rsquo;iPhone. Le seul moyen de filtrer ses appels, de faire des blacklists ou autre c&amp;rsquo;est de &lt;em&gt;jailbreaker&lt;/em&gt; son iPhone. Et je n&amp;rsquo;en ai aucune envie. Alors si comme moi, vous trouvez &#231;a inacceptable, envoyez un mot &#224; Apple&amp;nbsp;: &lt;a href="http://www.apple.com/feedback/iphone.html"&gt;http://www.apple.com/feedback/iphone.html&lt;/a&gt;&lt;/p&gt;
&lt;/p&gt;</content>
</content>
</entry>
<entry>
<id>tag:yannesposito.com,2009-11-12:/Scratch/fr/blog/2009-11-12-Git-for-n00b/c-est-parti-pour-l-aventure/</id>
@ -818,26 +790,41 @@ a.....&lt;span class="Constant"&gt;&lt;strong&gt;a......b&lt;/strong&gt;&lt;/spa
&lt;li&gt;voir les d&#233;tails de ces modifications &lt;span class="black"&gt;&lt;code&gt;git log&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;</content>
</entry>
<entry>
<id>tag:yannesposito.com,2009-11-12:/Scratch/fr/blog/2009-11-12-Git-for-n00b/commandes-avancees/</id>
<id>tag:yannesposito.com,2009-11-12:/Scratch/fr/blog/2009-11-12-Git-for-n00b/</id>
<title type="html">Git pour les nuls</title>
<published>2009-11-12T09:39:54Z</published>
<updated>2009-11-12T09:39:54Z</updated>
<link href="http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/commandes-avancees/" rel="alternate"/>
<content type="html">&lt;h1 class="first" id="liste-de-commandes"&gt;Liste de commandes&lt;/h1&gt;
<link href="http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/" rel="alternate"/>
<content type="html">
&lt;div class="intro"&gt;
&lt;h2 id="les-commandes-pour-chaque-choses"&gt;Les commandes pour chaque choses&lt;/h2&gt;
&lt;p&gt;Dans la premi&#232;re partie, nous avons vu la liste des probl&#232;mes r&#233;solus par &lt;a href="http://git-scm.org" title="Git"&gt;Git&lt;/a&gt;. En r&#233;sum&#233; Git doit pouvoir&amp;nbsp;:&lt;/p&gt;
&lt;p&gt;Voici un tutoriel &lt;a href="http://git-scm.org"&gt;Git&lt;/a&gt; d&#233;taill&#233; pour ceux qui en connaissent tr&#232;s peu sur les syst&#232;mes de versions. Vous comprendrez l&amp;rsquo;utilit&#233; de tels syst&#232;mes et surtout comment on se sert des syst&#232;mes de versions modernes, le tout en restant le plus pragmatique possible.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;r&#233;cup&#233;rer les modifications des autres&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;envoyer ses modifications aux autres&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;revenir dans le temps&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;lister les diff&#233;rences entre chaque version&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;nommer certaines versions pour s&amp;rsquo;y r&#233;f&#233;rer facilement&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;afficher l&amp;rsquo;historique des modifications&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;savoir qui a fait quoi et quand&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;g&#233;rer des conflits&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;manipuler facileme...&lt;/li&gt;&lt;/ul&gt;</content>
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="corps"&gt;
&lt;h1 class="first" id="pour-commencer-la-conclusion"&gt;Pour commencer, la conclusion&lt;/h1&gt;
&lt;p&gt;Voici la liste des commandes n&#233;cessaires et suffisantes pour utiliser &lt;a href="http://git-scm.org" title="Git"&gt;Git&lt;/a&gt;. Il y en a tr&#232;s peu. Il est normal de ne pas les comprendre tout de suite mais c&amp;rsquo;est pour vous donner une id&#233;e. Malgr&#233; la longueur de l&amp;rsquo;article, 95% de l&amp;rsquo;utilisation de &lt;/p&gt;</content>
</entry>
<entry>
<id>tag:yannesposito.com,2009-11-12:/Scratch/fr/blog/2009-11-12-Git-for-n00b/comprendre/</id>
<title type="html">Git pour les nuls</title>
<published>2009-11-12T09:39:54Z</published>
<updated>2009-11-12T09:39:54Z</updated>
<link href="http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/comprendre/" rel="alternate"/>
<content type="html">&lt;h1 class="first" id="pourquoi-git-est-cool-"&gt;Pourquoi Git est cool&amp;nbsp;?&lt;/h1&gt;
&lt;p&gt;Parce que grace &#224; &lt;a href="http://git-scm.org" title="Git"&gt;Git&lt;/a&gt; vous pouvez travailler sur plusieurs partie du projet de fa&#231;on compl&#232;tement isol&#233;e les unes des autres. &#199;a c&amp;rsquo;est la partie d&#233;centralis&#233;e de &lt;a href="http://git-scm.org" title="Git"&gt;Git&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Toutes les branches locales utilisent le m&#234;me r&#233;pertoire. Ainsi on peu changer de branche tr&#232;s ais&#233;ment et rapidement. On peut aussi changer de branche alors que certains fichier sont en cours de modifications. On peut m&#234;me pousser le vice jusqu&amp;rsquo;&#224; modifier un fichier, changer de branche, commiter une partie seulement des modifications de ce fichier dans la branche courante. Revenir dans l&amp;rsquo;ancienne branche et commi...&lt;/p&gt;</content>
</entry>
</feed>

View file

@ -148,7 +148,7 @@
<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/deed.fr">Droits de reproduction ©, Yann Esposito</a>
</div>
<div id="lastmod">
modifié le : 20/04/2011
modifié le : 14/09/2011
</div>
<div>
Site entièrement réalisé avec

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

View file

@ -0,0 +1,6 @@
0 ^ fi t) 4fi g_ $
│ │ │ │ │ │ │
x = (name_1,vision_3); #this is a comment.

View file

@ -2,702 +2,694 @@
<urlset xmlns="http://www.google.com/schemas/sitemap/0.84">
<url>
<loc>http://yannesposito.com/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/about/contact/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-06-17-track-events-with-google-analytics/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-01-04-Change-default-shell-on-Mac-OS-X/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-06-19-jQuery-popup-the-easy-way/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/softwares/ypassword/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/about/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2011-01-03-Why-I-sadly-won-t-use-coffeescript/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-09-jQuery-Tag-Cloud/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/Password-Management/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-05-19-How-to-cut-HTML-and-repair-it/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-05-24-Trees--Pragmatism-and-Formalism/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-01-12-antialias-font-in-Firefox-under-Ubuntu/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-10-26-LaTeX-like-macro-and-markdown/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-09-02-base64-and-sha1-on-iPhone/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/softwares/ypassword/iphoneweb/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-10-06-New-Blog-Design-Constraints/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-02-18-split-a-file-by-keyword/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-06-17-hide-yourself-to-analytics/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/commandes-avancees/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/03_losthighway/03_losthighway_1/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/mvc/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-09-replace-all-except-some-part/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/09_Why_I_didn-t_keep_whosamung-us/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-02-18-split-a-file-by-keyword/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/03_losthighway/03_losthighway_2/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/softwares/yaquabubbles/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-11-12-Git-for-n00b/commandes-avancees/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-10-Focus-vs-Minimalism/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/03_losthighway/03_losthighway_3/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-10-10-Secure-eMail-on-Mac-in-few-steps/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-03-22-Git-Tips/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-06-19-jQuery-popup-the-easy-way/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-07-09-Indecidabilities/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/03_losthighway/03_losthighway_4/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/01_nanoc/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-07-05-Cappuccino-and-Web-applications/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-12-06-iphone-call-filter/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/03_losthighway/03_losthighway_1/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/11_Load_Disqus_Asynchronously/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-02-15-All-but-something-regexp/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-07-05-Cappuccino-and-Web-applications/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/softwares/ypassword/web/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/05_git_create_remote_branch/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-10-untaught-git-usage/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/11_Load_Disqus_Asynchronously/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-10-26-LaTeX-like-macro-and-markdown/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/about/cv/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/about/technical_details/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/03_losthighway/03_losthighway_2/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-14</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-07-07-CSS-rendering-problems-by-navigator/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-06-15-Get-my-blog-engine/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/Haskell-Mandelbrot/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/mvc/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/03_losthighway/03_losthighway_3/</loc>
<lastmod>2011-08-29</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/programming-language-experience/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/validation/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/03_losthighway/03_losthighway_4/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-10-untaught-git-usage/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/08_Configure_ssh_to_listen_the_port_443_on_Snow_Leopard/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/softwares/yclock/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-10-How-to-preload-your-site-with-style/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2011-01-03-Happy-New-Year/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/about/old/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-05-17-at-least-this-blog-revive/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/02_ackgrep/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-14</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/03_losthighway/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-08-31-send-mail-from-command-line-with-attached-file/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-09-Disqus-versus-Intense-Debate--Why-I-switched-/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/about/contact/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-10-How-to-preload-your-site-with-style/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-10-Focus-vs-Minimalism/</loc>
<lastmod>2011-08-29</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/programming-language-experience/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-07-07-CSS-rendering-problems-by-navigator/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/07_Screensaver_compilation_option_for_Snow_Leopard/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-07-31-New-style-after-holidays/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-12-06-iphone-call-filter/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-02-23-When-regexp-is-not-the-best-solution/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-10-30-How-to-handle-evil-IE/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-09-02-base64-and-sha1-on-iPhone/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-10-Wait-to-hide-a-menu-in-jQuery/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/07_Screensaver_compilation_option_for_Snow_Leopard/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-10-14-Fun-with-wav/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/softwares/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/02_ackgrep/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/08_Configure_ssh_to_listen_the_port_443_on_Snow_Leopard/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/06_How_I_use_git/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-09-replace-all-except-some-part/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/10_Synchronize_Custom_WebSite_with_mobileMe/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-02-15-All-but-something-regexp/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/about/old/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/about/cv/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2011-04-20-Now-hosted-on-github/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/Password-Management/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/softwares/ypassword/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/A-more-convenient-diff/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/09_Why_I_didn-t_keep_whosamung-us/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/feed/feed.xml</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/validation/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-08-23-Now-heberged-on-heroku/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-10-14-Fun-with-wav/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-06-14-multi-language-choices/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-09-Disqus-versus-Intense-Debate--Why-I-switched-/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/Git-pour-quoi-faire/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/A-more-convenient-diff/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2011-01-03-Happy-New-Year/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-08-31-send-mail-from-command-line-with-attached-file/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/10_Synchronize_Custom_WebSite_with_mobileMe/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-02-16-All-but-something-regexp--2-/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-07-31-New-style-after-holidays/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/softwares/yaquabubbles/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-12-14-Git-vs--Bzr/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/06_How_I_use_git/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/03_losthighway/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-11-12-Git-for-n00b/comprendre/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/rss/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-09-jQuery-Tag-Cloud/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-11-12-Git-for-n00b/conf-et-install/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-10-launch-daemon-from-command-line/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-06-15-Get-my-blog-engine/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-03-23-Encapsulate-git/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-03-22-Git-Tips/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/Haskell-Mandelbrot/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-02-16-All-but-something-regexp--2-/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-11-12-Git-for-n00b/Git-pour-quoi-faire/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-05-24-Trees--Pragmatism-and-Formalism/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-02-23-When-regexp-is-not-the-best-solution/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-10-06-New-Blog-Design-Constraints/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-05-17-at-least-this-blog-revive/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-08-23-Now-heberged-on-heroku/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-10-launch-daemon-from-command-line/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/conf-et-install/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-03-23-Encapsulate-git/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/softwares/ypassword/web/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/Learn-Vim-Progressively/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-06-17-track-events-with-google-analytics/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/assets/css/main.css</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/rss/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2011-04-20-Now-hosted-on-github/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2011-01-03-Why-I-sadly-won-t-use-coffeescript/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/04_drm/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/about/technical_details/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-06-17-hide-yourself-to-analytics/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-10-28-custom-website-synchronisation-with-mobileme--2-/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-10-Wait-to-hide-a-menu-in-jQuery/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-10-30-How-to-handle-evil-IE/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-10-10-Secure-eMail-on-Mac-in-few-steps/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-10-28-custom-website-synchronisation-with-mobileme--2-/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-07-09-Indecidabilities/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/01_nanoc/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/about/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-01-04-Change-default-shell-on-Mac-OS-X/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-05-19-How-to-cut-HTML-and-repair-it/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/softwares/ypassword/iphoneweb/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/softwares/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/comprendre/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-11-12-Git-for-n00b/c-est-parti-pour-l-aventure/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2010-06-14-multi-language-choices/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-11-12-Git-for-n00b/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/05_git_create_remote_branch/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2010-01-12-antialias-font-in-Firefox-under-Ubuntu/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/feed/feed.xml</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/c-est-parti-pour-l-aventure/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/sitemap.xml</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/fr/softwares/yclock/</loc>
<lastmod>2011-09-05</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/04_drm/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
<url>
<loc>http://yannesposito.com/Scratch/en/blog/2009-12-14-Git-vs--Bzr/</loc>
<lastmod>2011-08-29</lastmod>
<lastmod>2011-09-12</lastmod>
</url>
</urlset>

View file

@ -188,7 +188,7 @@
<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Copyright ©, Yann Esposito</a>
</div>
<div id="lastmod">
Modified: 09/02/2011
Modified: 09/14/2011
</div>
<div>
Entirely done with

12
resources/.vimrc Normal file
View file

@ -0,0 +1,12 @@
" Add this to your vimrc file to use my two split view with multiple language
autocmd BufRead *latest.md set foldenable
autocmd BufRead *latest.md set foldlevel=0
autocmd BufRead *latest.md set foldminlines=0
autocmd BufRead *latest.md set foldmethod=expr
autocmd BufRead *latest.md set foldtext=''
autocmd BufRead *latest.md set scrollbind
autocmd BufRead *latest.md set foldexpr=getline(v:lnum)=~'^en:\ .*$'
autocmd BufRead *latest.md vsplit
autocmd BufRead *latest.md set foldexpr=getline(v:lnum)=~'^fr:\ .*$'
autocmd BufRead *latest.md set spell