Regen
This commit is contained in:
parent
61b195115e
commit
437be7e7cf
62 changed files with 515 additions and 151 deletions
|
@ -33,7 +33,7 @@ end
|
||||||
use Rack::Rewrite do
|
use Rack::Rewrite do
|
||||||
r302 %r{/(Softwares.*)}, 'http://web.me.com/yann.esposito/$1'
|
r302 %r{/(Softwares.*)}, 'http://web.me.com/yann.esposito/$1'
|
||||||
r302 %r{/(Perso.*)}, 'http://web.me.com/yann.esposito/$1'
|
r302 %r{/(Perso.*)}, 'http://web.me.com/yann.esposito/$1'
|
||||||
r302 %r{/YPassword(.*)}, '/n3blog/en/softwares/ypassword/iphoneweb'
|
r302 %r{/YPassword(.*)}, '/Scratch/en/softwares/ypassword/iphoneweb'
|
||||||
r302 %r{/(Bastien.*)}, 'http://web.me.com/yann.esposito/$1'
|
r302 %r{/(Bastien.*)}, 'http://web.me.com/yann.esposito/$1'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -42,7 +42,7 @@ use Rack::TryStatic,
|
||||||
:urls => %w[/], # match all requests
|
:urls => %w[/], # match all requests
|
||||||
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
||||||
|
|
||||||
errorFile='output/n3blog/en/error/404-not_found/index.html'
|
errorFile='output/Scratch/en/error/404-not_found/index.html'
|
||||||
run lambda { [404, {
|
run lambda { [404, {
|
||||||
"Last-Modified" => File.mtime(errorFile).httpdate,
|
"Last-Modified" => File.mtime(errorFile).httpdate,
|
||||||
"Content-Type" => "text/html",
|
"Content-Type" => "text/html",
|
||||||
|
|
|
@ -4,7 +4,7 @@ menupriority: 1
|
||||||
-----
|
-----
|
||||||
# How to contact me
|
# How to contact me
|
||||||
|
|
||||||
<img src="/n3blog/img/about/avatar.png" alt="Avatar" class="left"/>
|
<img src="/Scratch/img/about/avatar.png" alt="Avatar" class="left"/>
|
||||||
|
|
||||||
<%= mail_perso %>
|
<%= mail_perso %>
|
||||||
Follow me on [twitter](http://twitter.com/yogsototh)
|
Follow me on [twitter](http://twitter.com/yogsototh)
|
||||||
|
|
|
@ -7,7 +7,7 @@ noSubMenu: true
|
||||||
<%
|
<%
|
||||||
number_of_articles=5
|
number_of_articles=5
|
||||||
number_of_char_for_resume=800
|
number_of_char_for_resume=800
|
||||||
language=@item_rep.path.sub(/\/n3blog\//,'').sub(/\/.*$/,'')
|
language=@item_rep.path.sub(/\/Scratch\//,'').sub(/\/.*$/,'')
|
||||||
last_articles = @items.select do |a|
|
last_articles = @items.select do |a|
|
||||||
a.reps[0].path =~ /\/#{language}\// && a[:kind] == 'article'
|
a.reps[0].path =~ /\/#{language}\// && a[:kind] == 'article'
|
||||||
end
|
end
|
||||||
|
|
|
@ -105,7 +105,7 @@ multi/blog/2010-06-01-the-title/third_part.md
|
||||||
|
|
||||||
### mobileme
|
### mobileme
|
||||||
|
|
||||||
All files are intended to be generated into the `output/n3blog` directory.
|
All files are intended to be generated into the `output/Scratch` directory.
|
||||||
This was made like that to work nicely with iWeb organisation of websites.
|
This was made like that to work nicely with iWeb organisation of websites.
|
||||||
|
|
||||||
### menu
|
### menu
|
||||||
|
|
|
@ -16,7 +16,7 @@ tags:
|
||||||
-----
|
-----
|
||||||
|
|
||||||
This is a way not to count your own visits to your blog.
|
This is a way not to count your own visits to your blog.
|
||||||
First you should look on how [I handle analytics](/n3blog/en/blog/2010-06-17-track-events-with-google-analytics). All analytics are handled in one javascript file, this make things really convenient.
|
First you should look on how [I handle analytics](/Scratch/en/blog/2010-06-17-track-events-with-google-analytics). All analytics are handled in one javascript file, this make things really convenient.
|
||||||
|
|
||||||
Then you need to know my method use the `jquery-cookie`.
|
Then you need to know my method use the `jquery-cookie`.
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,7 @@ use Rack::TryStatic,
|
||||||
:urls => %w[/], # match all requests
|
:urls => %w[/], # match all requests
|
||||||
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
||||||
|
|
||||||
errorFile='output/n3blog/en/error/404-not_found/index.html'
|
errorFile='output/Scratch/en/error/404-not_found/index.html'
|
||||||
run lambda { [404, {
|
run lambda { [404, {
|
||||||
"Last-Modified" => File.mtime(errorFile).httpdate,
|
"Last-Modified" => File.mtime(errorFile).httpdate,
|
||||||
"Content-Type" => "text/html",
|
"Content-Type" => "text/html",
|
||||||
|
|
|
@ -23,7 +23,7 @@ This is how I do this with [nanoc](http://nanoc.stoneship.org):
|
||||||
|
|
||||||
<code class="ruby" file="gitmtime.rb">
|
<code class="ruby" file="gitmtime.rb">
|
||||||
def gitmtime
|
def gitmtime
|
||||||
filepath=@item.path.sub('/n3blog/','content/html/').sub(/\/$/,'')
|
filepath=@item.path.sub('/Scratch/','content/html/').sub(/\/$/,'')
|
||||||
ext=%{.#{@item[:extension]}}
|
ext=%{.#{@item[:extension]}}
|
||||||
filepath<<=ext
|
filepath<<=ext
|
||||||
if not FileTest.exists?(filepath)
|
if not FileTest.exists?(filepath)
|
||||||
|
|
|
@ -16,7 +16,7 @@ Now it should be far cleaner.
|
||||||
I believe I use no CSS3 feature and far less javascript.
|
I believe I use no CSS3 feature and far less javascript.
|
||||||
Of course before my website was perfectly browsable without javascript.
|
Of course before my website was perfectly browsable without javascript.
|
||||||
Unfortunately some CSS3 feature are not mature enough on some browser.
|
Unfortunately some CSS3 feature are not mature enough on some browser.
|
||||||
For more details you can read my older [blog entry](/n3blog/en/blog/2010-07-07-CSS-rendering-problems-by-navigator).
|
For more details you can read my older [blog entry](/Scratch/en/blog/2010-07-07-CSS-rendering-problems-by-navigator).
|
||||||
But the major problem came from, `font-shadow` and gradients.
|
But the major problem came from, `font-shadow` and gradients.
|
||||||
Then my new design obey to the following rules:
|
Then my new design obey to the following rules:
|
||||||
|
|
||||||
|
|
|
@ -5,17 +5,17 @@ noSubMenu: true
|
||||||
hidden: false
|
hidden: false
|
||||||
-----
|
-----
|
||||||
<%= block( %{YPassword},
|
<%= block( %{YPassword},
|
||||||
%{/n3blog/en/softwares/ypassword},
|
%{/Scratch/en/softwares/ypassword},
|
||||||
%{YPassword is a password manager that make your web life more secure}
|
%{YPassword is a password manager that make your web life more secure}
|
||||||
) %>
|
) %>
|
||||||
|
|
||||||
<%= block( %{YAquaBubbles},
|
<%= block( %{YAquaBubbles},
|
||||||
%{/n3blog/en/softwares/yaquabubbles},
|
%{/Scratch/en/softwares/yaquabubbles},
|
||||||
%{Nice underwater floating bubbles}
|
%{Nice underwater floating bubbles}
|
||||||
) %>
|
) %>
|
||||||
|
|
||||||
<%= block( %{YClock},
|
<%= block( %{YClock},
|
||||||
%{/n3blog/en/softwares/yclock},
|
%{/Scratch/en/softwares/yclock},
|
||||||
%{Biohazard logo inspired clock},
|
%{Biohazard logo inspired clock},
|
||||||
"right"
|
"right"
|
||||||
) %>
|
) %>
|
||||||
|
|
|
@ -6,7 +6,7 @@ noSubMenu: true
|
||||||
hidden: false
|
hidden: false
|
||||||
-----
|
-----
|
||||||
|
|
||||||
[ ![Screenshot](/n3blog/img/softwares/yaquabubbles/screenshot1.png 'screenshot') ][yaquabubbles]
|
[ ![Screenshot](/Scratch/img/softwares/yaquabubbles/screenshot1.png 'screenshot') ][yaquabubbles]
|
||||||
|
|
||||||
YAquaBubbles is a QuartzComposer Screensaver.
|
YAquaBubbles is a QuartzComposer Screensaver.
|
||||||
It was one of my first try but the result was nice.
|
It was one of my first try but the result was nice.
|
||||||
|
@ -14,4 +14,4 @@ It was one of my first try but the result was nice.
|
||||||
|
|
||||||
[<span class="nicer">➥</span> YAquaBubbles.dmg][yaquabubbles]
|
[<span class="nicer">➥</span> YAquaBubbles.dmg][yaquabubbles]
|
||||||
|
|
||||||
[yaquabubbles]: /n3blog/files/YAquaBubbles.dmg
|
[yaquabubbles]: /Scratch/files/YAquaBubbles.dmg
|
||||||
|
|
|
@ -6,7 +6,7 @@ hidden: false
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
|
||||||
[ ![Screenshot](/n3blog/img/softwares/yclock/screenshot1.png 'screenshot') ][yclock]
|
[ ![Screenshot](/Scratch/img/softwares/yclock/screenshot1.png 'screenshot') ][yclock]
|
||||||
|
|
||||||
YClock is a nice clock screensaver.
|
YClock is a nice clock screensaver.
|
||||||
It has three themes: white, black and red.
|
It has three themes: white, black and red.
|
||||||
|
@ -14,4 +14,4 @@ It is based on a QuartzComposition and with some little Objective-C code to hand
|
||||||
|
|
||||||
[<span class="nicer">➥</span> YClock.dmg][yclock]
|
[<span class="nicer">➥</span> YClock.dmg][yclock]
|
||||||
|
|
||||||
[yclock]: /n3blog/files/YClock.dmg
|
[yclock]: /Scratch/files/YClock.dmg
|
||||||
|
|
|
@ -7,15 +7,15 @@ hidden: false
|
||||||
_Easy_, _Secure_ and _Portable_ way to manage your web passwords.
|
_Easy_, _Secure_ and _Portable_ way to manage your web passwords.
|
||||||
|
|
||||||
Remember only _one_ strong password. And the rest follow.
|
Remember only _one_ strong password. And the rest follow.
|
||||||
See my [blog entry](/n3blog/en/blog/ypassword.html) for the details.
|
See my [blog entry](/Scratch/en/blog/ypassword.html) for the details.
|
||||||
|
|
||||||
Here you can find:
|
Here you can find:
|
||||||
|
|
||||||
- A [Dashboard Widget](/n3blog/files/YPassword-1.6.zip),
|
- A [Dashboard Widget](/Scratch/files/YPassword-1.6.zip),
|
||||||
- An [Applescript](/n3blog/files/forcePaste.app.zip) to simulate copy/paste in protected fields,
|
- An [Applescript](/Scratch/files/forcePaste.app.zip) to simulate copy/paste in protected fields,
|
||||||
- An alpha [Web Application](/n3blog/en/softwares/ypassword/web/) made with [Cappuccino](http://cappuccino.org),
|
- An alpha [Web Application](/Scratch/en/softwares/ypassword/web/) made with [Cappuccino](http://cappuccino.org),
|
||||||
- An alpha [Web Application](/n3blog/en/softwares/ypassword/iphoneweb/) for iPhone,
|
- An alpha [Web Application](/Scratch/en/softwares/ypassword/iphoneweb/) for iPhone,
|
||||||
- A [command line tool](/n3blog/files/getpass).
|
- A [command line tool](/Scratch/files/getpass).
|
||||||
|
|
||||||
|
|
||||||
I'll soon release an iPhone application.
|
I'll soon release an iPhone application.
|
||||||
|
|
|
@ -4,7 +4,7 @@ menupriority: 1
|
||||||
-----
|
-----
|
||||||
# Comment me contacter
|
# Comment me contacter
|
||||||
|
|
||||||
<img src="/n3blog/img/about/avatar.png" alt="Avatar" class="left"/>
|
<img src="/Scratch/img/about/avatar.png" alt="Avatar" class="left"/>
|
||||||
|
|
||||||
<%= mail_perso %>
|
<%= mail_perso %>
|
||||||
Suivez moi sur [twitter](http://twitter.com/yogsototh)
|
Suivez moi sur [twitter](http://twitter.com/yogsototh)
|
||||||
|
|
|
@ -7,7 +7,7 @@ noSubMenu: true
|
||||||
<%
|
<%
|
||||||
number_of_articles=5
|
number_of_articles=5
|
||||||
number_of_char_for_resume=800
|
number_of_char_for_resume=800
|
||||||
language=@item_rep.path.sub(/\/n3blog\//,'').sub(/\/.*$/,'')
|
language=@item_rep.path.sub(/\/Scratch\//,'').sub(/\/.*$/,'')
|
||||||
last_articles = @items.select do |a|
|
last_articles = @items.select do |a|
|
||||||
a.reps[0].path =~ /\/#{language}\// && a[:kind] == 'article'
|
a.reps[0].path =~ /\/#{language}\// && a[:kind] == 'article'
|
||||||
end
|
end
|
||||||
|
|
|
@ -107,7 +107,7 @@ multi/blog/2010-06-01-the-title/third_part.md
|
||||||
|
|
||||||
### mobileme
|
### mobileme
|
||||||
|
|
||||||
All files are intended to be generated into the `output/n3blog` directory.
|
All files are intended to be generated into the `output/Scratch` directory.
|
||||||
This was made like that to work nicely with iWeb organisation of websites.
|
This was made like that to work nicely with iWeb organisation of websites.
|
||||||
|
|
||||||
### menu
|
### menu
|
||||||
|
|
|
@ -16,7 +16,7 @@ tags:
|
||||||
-----
|
-----
|
||||||
|
|
||||||
Voici un moyen très simple de ne plus être comptabilisé dans les visites de son propre site.
|
Voici un moyen très simple de ne plus être comptabilisé dans les visites de son propre site.
|
||||||
Tout d'abord, vous devriez jeter un coup d'œil sur comment [je gère les systèmes de récupération de statistiques](/n3blog/fr/blog/2010-06-17-track-events-with-google-analytics).
|
Tout d'abord, vous devriez jeter un coup d'œil sur comment [je gère les systèmes de récupération de statistiques](/Scratch/fr/blog/2010-06-17-track-events-with-google-analytics).
|
||||||
Je centralise tout dans un seul fichier javascript ce qui facilite le travail.
|
Je centralise tout dans un seul fichier javascript ce qui facilite le travail.
|
||||||
|
|
||||||
Cette méthode nécessite l'utilisation de `jquery-cookie`.
|
Cette méthode nécessite l'utilisation de `jquery-cookie`.
|
||||||
|
|
|
@ -60,7 +60,7 @@ use Rack::TryStatic,
|
||||||
:urls => %w[/], # match all requests
|
:urls => %w[/], # match all requests
|
||||||
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
||||||
|
|
||||||
errorFile='output/n3blog/en/error/404-not_found/index.html'
|
errorFile='output/Scratch/en/error/404-not_found/index.html'
|
||||||
run lambda { [404, {
|
run lambda { [404, {
|
||||||
"Last-Modified" => File.mtime(errorFile).httpdate,
|
"Last-Modified" => File.mtime(errorFile).httpdate,
|
||||||
"Content-Type" => "text/html",
|
"Content-Type" => "text/html",
|
||||||
|
|
|
@ -23,7 +23,7 @@ Voici comment je m'y prend avec [nanoc](http://nanoc.stoneship.org) :
|
||||||
|
|
||||||
<code class="ruby" file="gitmtime.rb">
|
<code class="ruby" file="gitmtime.rb">
|
||||||
def gitmtime
|
def gitmtime
|
||||||
filepath=@item.path.sub('/n3blog/','content/html/').sub(/\/$/,'')
|
filepath=@item.path.sub('/Scratch/','content/html/').sub(/\/$/,'')
|
||||||
ext=%{.#{@item[:extension]}}
|
ext=%{.#{@item[:extension]}}
|
||||||
filepath<<=ext
|
filepath<<=ext
|
||||||
if not FileTest.exists?(filepath)
|
if not FileTest.exists?(filepath)
|
||||||
|
|
|
@ -5,17 +5,17 @@ noSubMenu: true
|
||||||
hidden: false
|
hidden: false
|
||||||
-----
|
-----
|
||||||
<%= block( %{YPassword},
|
<%= block( %{YPassword},
|
||||||
%{/n3blog/fr/softwares/ypassword},
|
%{/Scratch/fr/softwares/ypassword},
|
||||||
%{YPassword est un outil de gestion de mots de passe pour rendre votre vie en ligne plus sûre.}
|
%{YPassword est un outil de gestion de mots de passe pour rendre votre vie en ligne plus sûre.}
|
||||||
) %>
|
) %>
|
||||||
|
|
||||||
<%= block( %{YAquaBubbles},
|
<%= block( %{YAquaBubbles},
|
||||||
%{/n3blog/fr/softwares/yaquabubbles},
|
%{/Scratch/fr/softwares/yaquabubbles},
|
||||||
%{Des bulles se déplaçant sous l'eau}
|
%{Des bulles se déplaçant sous l'eau}
|
||||||
) %>
|
) %>
|
||||||
|
|
||||||
<%= block( %{YClock},
|
<%= block( %{YClock},
|
||||||
%{/n3blog/fr/softwares/yclock},
|
%{/Scratch/fr/softwares/yclock},
|
||||||
%{Une horloge inspirée par le symbole "biohazard"},
|
%{Une horloge inspirée par le symbole "biohazard"},
|
||||||
"right"
|
"right"
|
||||||
) %>
|
) %>
|
||||||
|
|
|
@ -6,7 +6,7 @@ noSubMenu: true
|
||||||
hidden: false
|
hidden: false
|
||||||
-----
|
-----
|
||||||
|
|
||||||
[ ![Screenshot](/n3blog/img/softwares/yaquabubbles/screenshot1.png 'screenshot') ][yaquabubbles]
|
[ ![Screenshot](/Scratch/img/softwares/yaquabubbles/screenshot1.png 'screenshot') ][yaquabubbles]
|
||||||
|
|
||||||
YAquaBubbles est un économiseur d'écran réalisé avec QuartzComposer.
|
YAquaBubbles est un économiseur d'écran réalisé avec QuartzComposer.
|
||||||
Il s'agissait d'un simple essai mais le résultat était plaisant.
|
Il s'agissait d'un simple essai mais le résultat était plaisant.
|
||||||
|
@ -14,4 +14,4 @@ Il s'agissait d'un simple essai mais le résultat était plaisant.
|
||||||
|
|
||||||
[<span class="nicer">➥</span> YAquaBubbles.dmg][yaquabubbles]
|
[<span class="nicer">➥</span> YAquaBubbles.dmg][yaquabubbles]
|
||||||
|
|
||||||
[yaquabubbles]: /n3blog/files/YAquaBubbles.dmg
|
[yaquabubbles]: /Scratch/files/YAquaBubbles.dmg
|
||||||
|
|
|
@ -6,7 +6,7 @@ hidden: false
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
|
||||||
[ ![Screenshot](/n3blog/img/softwares/yclock/screenshot1.png 'screenshot') ][yclock]
|
[ ![Screenshot](/Scratch/img/softwares/yclock/screenshot1.png 'screenshot') ][yclock]
|
||||||
|
|
||||||
YClock est un économiseur d'écran qui vous donne l'heure.i
|
YClock est un économiseur d'écran qui vous donne l'heure.i
|
||||||
Il a trois thèmes clair, rouge et noir.
|
Il a trois thèmes clair, rouge et noir.
|
||||||
|
@ -14,4 +14,4 @@ Il utilise une base de QuartzComposition + du code objective-C pour la gestion d
|
||||||
|
|
||||||
[<span class="nicer">➥</span> YClock.dmg][yclock]
|
[<span class="nicer">➥</span> YClock.dmg][yclock]
|
||||||
|
|
||||||
[yclock]: /n3blog/files/YClock.dmg
|
[yclock]: /Scratch/files/YClock.dmg
|
||||||
|
|
|
@ -7,15 +7,15 @@ hidden: false
|
||||||
Une gestion _simple_, _sécurisée_ et _portable_ de ses mots de passes web.
|
Une gestion _simple_, _sécurisée_ et _portable_ de ses mots de passes web.
|
||||||
|
|
||||||
Souvenez vous d'_un_ seul mot de passe de bonne qualité, le reste suis.
|
Souvenez vous d'_un_ seul mot de passe de bonne qualité, le reste suis.
|
||||||
Lisez mon [article](/n3blog/fr/blog/ypassword.html) pour les détails.
|
Lisez mon [article](/Scratch/fr/blog/ypassword.html) pour les détails.
|
||||||
|
|
||||||
Ici vous trouverez :
|
Ici vous trouverez :
|
||||||
|
|
||||||
|
|
||||||
- Un [widget](/n3blog/files/YPassword-1.6.zip) ;
|
- Un [widget](/Scratch/files/YPassword-1.6.zip) ;
|
||||||
- un [Applescript](/n3blog/files/forcePaste.app.zip) pour simuler la copie dans les champs textes protégés ;
|
- un [Applescript](/Scratch/files/forcePaste.app.zip) pour simuler la copie dans les champs textes protégés ;
|
||||||
- une [application web](/n3blog/fr/softwares/ypassword/web/) écrite avec [Cappuccino](http://cappuccino.org),
|
- une [application web](/Scratch/fr/softwares/ypassword/web/) écrite avec [Cappuccino](http://cappuccino.org),
|
||||||
- une [application web](/n3blog/fr/softwares/ypassword/iphoneweb/) pour iPhone ;
|
- une [application web](/Scratch/fr/softwares/ypassword/iphoneweb/) pour iPhone ;
|
||||||
- un [script utilisable en ligne de commande](/n3blog/files/getpass).
|
- un [script utilisable en ligne de commande](/Scratch/files/getpass).
|
||||||
|
|
||||||
Dans peu de temps je créerai une application iPhone pour YPassword.
|
Dans peu de temps je créerai une application iPhone pour YPassword.
|
||||||
|
|
|
@ -6,8 +6,8 @@ menupriority: 1
|
||||||
en: # How to contact me
|
en: # How to contact me
|
||||||
fr: # Comment me contacter
|
fr: # Comment me contacter
|
||||||
|
|
||||||
en: <img src="/n3blog/img/about/avatar.png" alt="Avatar" class="left"/>
|
en: <img src="/Scratch/img/about/avatar.png" alt="Avatar" class="left"/>
|
||||||
fr: <img src="/n3blog/img/about/avatar.png" alt="Avatar" class="left"/>
|
fr: <img src="/Scratch/img/about/avatar.png" alt="Avatar" class="left"/>
|
||||||
|
|
||||||
<%= mail_perso %>
|
<%= mail_perso %>
|
||||||
en: Follow me on [twitter](http://twitter.com/yogsototh)
|
en: Follow me on [twitter](http://twitter.com/yogsototh)
|
||||||
|
|
|
@ -7,7 +7,7 @@ noSubMenu: true
|
||||||
<%
|
<%
|
||||||
number_of_articles=5
|
number_of_articles=5
|
||||||
number_of_char_for_resume=800
|
number_of_char_for_resume=800
|
||||||
language=@item_rep.path.sub(/\/n3blog\//,'').sub(/\/.*$/,'')
|
language=@item_rep.path.sub(/\/Scratch\//,'').sub(/\/.*$/,'')
|
||||||
last_articles = @items.select do |a|
|
last_articles = @items.select do |a|
|
||||||
a.reps[0].path =~ /\/#{language}\// && a[:kind] == 'article'
|
a.reps[0].path =~ /\/#{language}\// && a[:kind] == 'article'
|
||||||
end
|
end
|
||||||
|
|
|
@ -119,7 +119,7 @@ multi/blog/2010-06-01-the-title/third_part.md
|
||||||
|
|
||||||
### mobileme
|
### mobileme
|
||||||
|
|
||||||
All files are intended to be generated into the `output/n3blog` directory.
|
All files are intended to be generated into the `output/Scratch` directory.
|
||||||
This was made like that to work nicely with iWeb organisation of websites.
|
This was made like that to work nicely with iWeb organisation of websites.
|
||||||
|
|
||||||
### menu
|
### menu
|
||||||
|
|
|
@ -19,10 +19,10 @@ fr: - cacher
|
||||||
-----
|
-----
|
||||||
|
|
||||||
fr: Voici un moyen très simple de ne plus être comptabilisé dans les visites de son propre site.
|
fr: Voici un moyen très simple de ne plus être comptabilisé dans les visites de son propre site.
|
||||||
fr: Tout d'abord, vous devriez jeter un coup d'œil sur comment [je gère les systèmes de récupération de statistiques](/n3blog/fr/blog/2010-06-17-track-events-with-google-analytics).
|
fr: Tout d'abord, vous devriez jeter un coup d'œil sur comment [je gère les systèmes de récupération de statistiques](/Scratch/fr/blog/2010-06-17-track-events-with-google-analytics).
|
||||||
fr: Je centralise tout dans un seul fichier javascript ce qui facilite le travail.
|
fr: Je centralise tout dans un seul fichier javascript ce qui facilite le travail.
|
||||||
en: This is a way not to count your own visits to your blog.
|
en: This is a way not to count your own visits to your blog.
|
||||||
en: First you should look on how [I handle analytics](/n3blog/en/blog/2010-06-17-track-events-with-google-analytics). All analytics are handled in one javascript file, this make things really convenient.
|
en: First you should look on how [I handle analytics](/Scratch/en/blog/2010-06-17-track-events-with-google-analytics). All analytics are handled in one javascript file, this make things really convenient.
|
||||||
|
|
||||||
fr: Cette méthode nécessite l'utilisation de `jquery-cookie`.
|
fr: Cette méthode nécessite l'utilisation de `jquery-cookie`.
|
||||||
en: Then you need to know my method use the `jquery-cookie`.
|
en: Then you need to know my method use the `jquery-cookie`.
|
||||||
|
|
|
@ -70,7 +70,7 @@ use Rack::TryStatic,
|
||||||
:urls => %w[/], # match all requests
|
:urls => %w[/], # match all requests
|
||||||
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
||||||
|
|
||||||
errorFile='output/n3blog/en/error/404-not_found/index.html'
|
errorFile='output/Scratch/en/error/404-not_found/index.html'
|
||||||
run lambda { [404, {
|
run lambda { [404, {
|
||||||
"Last-Modified" => File.mtime(errorFile).httpdate,
|
"Last-Modified" => File.mtime(errorFile).httpdate,
|
||||||
"Content-Type" => "text/html",
|
"Content-Type" => "text/html",
|
||||||
|
|
|
@ -31,7 +31,7 @@ fr: Voici comment je m'y prend avec [nanoc](http://nanoc.stoneship.org) :
|
||||||
|
|
||||||
<code class="ruby" file="gitmtime.rb">
|
<code class="ruby" file="gitmtime.rb">
|
||||||
def gitmtime
|
def gitmtime
|
||||||
filepath=@item.path.sub('/n3blog/','content/html/').sub(/\/$/,'')
|
filepath=@item.path.sub('/Scratch/','content/html/').sub(/\/$/,'')
|
||||||
ext=%{.#{@item[:extension]}}
|
ext=%{.#{@item[:extension]}}
|
||||||
filepath<<=ext
|
filepath<<=ext
|
||||||
if not FileTest.exists?(filepath)
|
if not FileTest.exists?(filepath)
|
||||||
|
|
|
@ -27,7 +27,7 @@ en: Now it should be far cleaner.
|
||||||
en: I believe I use no CSS3 feature and far less javascript.
|
en: I believe I use no CSS3 feature and far less javascript.
|
||||||
en: Of course before my website was perfectly browsable without javascript.
|
en: Of course before my website was perfectly browsable without javascript.
|
||||||
en: Unfortunately some CSS3 feature are not mature enough on some browser.
|
en: Unfortunately some CSS3 feature are not mature enough on some browser.
|
||||||
en: For more details you can read my older [blog entry](/n3blog/en/blog/2010-07-07-CSS-rendering-problems-by-navigator).
|
en: For more details you can read my older [blog entry](/Scratch/en/blog/2010-07-07-CSS-rendering-problems-by-navigator).
|
||||||
en: But the major problem came from, `font-shadow` and gradients.
|
en: But the major problem came from, `font-shadow` and gradients.
|
||||||
en: Then my new design obey to the following rules:
|
en: Then my new design obey to the following rules:
|
||||||
|
|
||||||
|
|
|
@ -5,23 +5,23 @@ noSubMenu: true
|
||||||
hidden: false
|
hidden: false
|
||||||
-----
|
-----
|
||||||
<%= block( %{YPassword},
|
<%= block( %{YPassword},
|
||||||
en: %{/n3blog/en/softwares/ypassword},
|
en: %{/Scratch/en/softwares/ypassword},
|
||||||
en: %{YPassword is a password manager that make your web life more secure}
|
en: %{YPassword is a password manager that make your web life more secure}
|
||||||
fr: %{/n3blog/fr/softwares/ypassword},
|
fr: %{/Scratch/fr/softwares/ypassword},
|
||||||
fr: %{YPassword est un outil de gestion de mots de passe pour rendre votre vie en ligne plus sûre.}
|
fr: %{YPassword est un outil de gestion de mots de passe pour rendre votre vie en ligne plus sûre.}
|
||||||
) %>
|
) %>
|
||||||
|
|
||||||
<%= block( %{YAquaBubbles},
|
<%= block( %{YAquaBubbles},
|
||||||
en: %{/n3blog/en/softwares/yaquabubbles},
|
en: %{/Scratch/en/softwares/yaquabubbles},
|
||||||
en: %{Nice underwater floating bubbles}
|
en: %{Nice underwater floating bubbles}
|
||||||
fr: %{/n3blog/fr/softwares/yaquabubbles},
|
fr: %{/Scratch/fr/softwares/yaquabubbles},
|
||||||
fr: %{Des bulles se déplaçant sous l'eau}
|
fr: %{Des bulles se déplaçant sous l'eau}
|
||||||
) %>
|
) %>
|
||||||
|
|
||||||
<%= block( %{YClock},
|
<%= block( %{YClock},
|
||||||
en: %{/n3blog/en/softwares/yclock},
|
en: %{/Scratch/en/softwares/yclock},
|
||||||
en: %{Biohazard logo inspired clock},
|
en: %{Biohazard logo inspired clock},
|
||||||
fr: %{/n3blog/fr/softwares/yclock},
|
fr: %{/Scratch/fr/softwares/yclock},
|
||||||
fr: %{Une horloge inspirée par le symbole "biohazard"},
|
fr: %{Une horloge inspirée par le symbole "biohazard"},
|
||||||
"right"
|
"right"
|
||||||
) %>
|
) %>
|
||||||
|
|
|
@ -7,7 +7,7 @@ noSubMenu: true
|
||||||
hidden: false
|
hidden: false
|
||||||
-----
|
-----
|
||||||
|
|
||||||
[ ![Screenshot](/n3blog/img/softwares/yaquabubbles/screenshot1.png 'screenshot') ][yaquabubbles]
|
[ ![Screenshot](/Scratch/img/softwares/yaquabubbles/screenshot1.png 'screenshot') ][yaquabubbles]
|
||||||
|
|
||||||
fr: YAquaBubbles est un économiseur d'écran réalisé avec QuartzComposer.
|
fr: YAquaBubbles est un économiseur d'écran réalisé avec QuartzComposer.
|
||||||
fr: Il s'agissait d'un simple essai mais le résultat était plaisant.
|
fr: Il s'agissait d'un simple essai mais le résultat était plaisant.
|
||||||
|
@ -17,4 +17,4 @@ en: It was one of my first try but the result was nice.
|
||||||
|
|
||||||
[<span class="nicer">➥</span> YAquaBubbles.dmg][yaquabubbles]
|
[<span class="nicer">➥</span> YAquaBubbles.dmg][yaquabubbles]
|
||||||
|
|
||||||
[yaquabubbles]: /n3blog/files/YAquaBubbles.dmg
|
[yaquabubbles]: /Scratch/files/YAquaBubbles.dmg
|
||||||
|
|
|
@ -6,7 +6,7 @@ hidden: false
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
|
||||||
[ ![Screenshot](/n3blog/img/softwares/yclock/screenshot1.png 'screenshot') ][yclock]
|
[ ![Screenshot](/Scratch/img/softwares/yclock/screenshot1.png 'screenshot') ][yclock]
|
||||||
|
|
||||||
fr: YClock est un économiseur d'écran qui vous donne l'heure.i
|
fr: YClock est un économiseur d'écran qui vous donne l'heure.i
|
||||||
fr: Il a trois thèmes clair, rouge et noir.
|
fr: Il a trois thèmes clair, rouge et noir.
|
||||||
|
@ -17,4 +17,4 @@ en: It is based on a QuartzComposition and with some little Objective-C code to
|
||||||
|
|
||||||
[<span class="nicer">➥</span> YClock.dmg][yclock]
|
[<span class="nicer">➥</span> YClock.dmg][yclock]
|
||||||
|
|
||||||
[yclock]: /n3blog/files/YClock.dmg
|
[yclock]: /Scratch/files/YClock.dmg
|
||||||
|
|
|
@ -8,24 +8,24 @@ en: _Easy_, _Secure_ and _Portable_ way to manage your web passwords.
|
||||||
fr: Une gestion _simple_, _sécurisée_ et _portable_ de ses mots de passes web.
|
fr: Une gestion _simple_, _sécurisée_ et _portable_ de ses mots de passes web.
|
||||||
|
|
||||||
en: Remember only _one_ strong password. And the rest follow.
|
en: Remember only _one_ strong password. And the rest follow.
|
||||||
en: See my [blog entry](/n3blog/en/blog/ypassword.html) for the details.
|
en: See my [blog entry](/Scratch/en/blog/ypassword.html) for the details.
|
||||||
fr: Souvenez vous d'_un_ seul mot de passe de bonne qualité, le reste suis.
|
fr: Souvenez vous d'_un_ seul mot de passe de bonne qualité, le reste suis.
|
||||||
fr: Lisez mon [article](/n3blog/fr/blog/ypassword.html) pour les détails.
|
fr: Lisez mon [article](/Scratch/fr/blog/ypassword.html) pour les détails.
|
||||||
|
|
||||||
en: Here you can find:
|
en: Here you can find:
|
||||||
fr: Ici vous trouverez :
|
fr: Ici vous trouverez :
|
||||||
|
|
||||||
en: - A [Dashboard Widget](/n3blog/files/YPassword-1.6.zip),
|
en: - A [Dashboard Widget](/Scratch/files/YPassword-1.6.zip),
|
||||||
en: - An [Applescript](/n3blog/files/forcePaste.app.zip) to simulate copy/paste in protected fields,
|
en: - An [Applescript](/Scratch/files/forcePaste.app.zip) to simulate copy/paste in protected fields,
|
||||||
en: - An alpha [Web Application](/n3blog/en/softwares/ypassword/web/) made with [Cappuccino](http://cappuccino.org),
|
en: - An alpha [Web Application](/Scratch/en/softwares/ypassword/web/) made with [Cappuccino](http://cappuccino.org),
|
||||||
en: - An alpha [Web Application](/n3blog/en/softwares/ypassword/iphoneweb/) for iPhone,
|
en: - An alpha [Web Application](/Scratch/en/softwares/ypassword/iphoneweb/) for iPhone,
|
||||||
en: - A [command line tool](/n3blog/files/getpass).
|
en: - A [command line tool](/Scratch/files/getpass).
|
||||||
|
|
||||||
fr: - Un [widget](/n3blog/files/YPassword-1.6.zip) ;
|
fr: - Un [widget](/Scratch/files/YPassword-1.6.zip) ;
|
||||||
fr: - un [Applescript](/n3blog/files/forcePaste.app.zip) pour simuler la copie dans les champs textes protégés ;
|
fr: - un [Applescript](/Scratch/files/forcePaste.app.zip) pour simuler la copie dans les champs textes protégés ;
|
||||||
fr: - une [application web](/n3blog/fr/softwares/ypassword/web/) écrite avec [Cappuccino](http://cappuccino.org),
|
fr: - une [application web](/Scratch/fr/softwares/ypassword/web/) écrite avec [Cappuccino](http://cappuccino.org),
|
||||||
fr: - une [application web](/n3blog/fr/softwares/ypassword/iphoneweb/) pour iPhone ;
|
fr: - une [application web](/Scratch/fr/softwares/ypassword/iphoneweb/) pour iPhone ;
|
||||||
fr: - un [script utilisable en ligne de commande](/n3blog/files/getpass).
|
fr: - un [script utilisable en ligne de commande](/Scratch/files/getpass).
|
||||||
|
|
||||||
en: I'll soon release an iPhone application.
|
en: I'll soon release an iPhone application.
|
||||||
fr: Dans peu de temps je créerai une application iPhone pour YPassword.
|
fr: Dans peu de temps je créerai une application iPhone pour YPassword.
|
||||||
|
|
|
@ -59,7 +59,7 @@
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<h1 class="first" id="how-to-contact-me">How to contact me</h1>
|
<h1 class="first" id="how-to-contact-me">How to contact me</h1>
|
||||||
|
|
||||||
<p><img src="/n3blog/img/about/avatar.png" alt="Avatar" class="left" /></p>
|
<p><img src="/Scratch/img/about/avatar.png" alt="Avatar" class="left" /></p>
|
||||||
|
|
||||||
<p><a href="mailto:yann.esposito@gmail.com">yann.esposito@gmail.com</a><br />
|
<p><a href="mailto:yann.esposito@gmail.com">yann.esposito@gmail.com</a><br />
|
||||||
Follow me on <a href="http://twitter.com/yogsototh">twitter</a><br />
|
Follow me on <a href="http://twitter.com/yogsototh">twitter</a><br />
|
||||||
|
|
|
@ -671,7 +671,7 @@ But you can easily translate from Ruby to Javascript.</p>
|
||||||
</ul><a class="return" href="#tagcloud">↑</a></div><div id="iPhone" class="list"><h4>iPhone</h4><ul style="list-style-type: none; margin: 0;">
|
</ul><a class="return" href="#tagcloud">↑</a></div><div id="iPhone" class="list"><h4>iPhone</h4><ul style="list-style-type: none; margin: 0;">
|
||||||
<li style="line-height: 3em; margin: 0;">
|
<li style="line-height: 3em; margin: 0;">
|
||||||
<span class="date">
|
<span class="date">
|
||||||
<span class="day">2</span>
|
<span class="day">1</span>
|
||||||
<span class="month">Sep</span>
|
<span class="month">Sep</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span>
|
</span>
|
||||||
|
@ -986,7 +986,7 @@ But you can easily translate from Ruby to Javascript.</p>
|
||||||
</ul><a class="return" href="#tagcloud">↑</a></div><div id="Objective_C" class="list"><h4>Objective-C</h4><ul style="list-style-type: none; margin: 0;">
|
</ul><a class="return" href="#tagcloud">↑</a></div><div id="Objective_C" class="list"><h4>Objective-C</h4><ul style="list-style-type: none; margin: 0;">
|
||||||
<li style="line-height: 3em; margin: 0;">
|
<li style="line-height: 3em; margin: 0;">
|
||||||
<span class="date">
|
<span class="date">
|
||||||
<span class="day">2</span>
|
<span class="day">1</span>
|
||||||
<span class="month">Sep</span>
|
<span class="month">Sep</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span>
|
</span>
|
||||||
|
@ -1067,7 +1067,7 @@ But you can easily translate from Ruby to Javascript.</p>
|
||||||
</ul><a class="return" href="#tagcloud">↑</a></div><div id="Programming" class="list"><h4>Programming</h4><ul style="list-style-type: none; margin: 0;">
|
</ul><a class="return" href="#tagcloud">↑</a></div><div id="Programming" class="list"><h4>Programming</h4><ul style="list-style-type: none; margin: 0;">
|
||||||
<li style="line-height: 3em; margin: 0;">
|
<li style="line-height: 3em; margin: 0;">
|
||||||
<span class="date">
|
<span class="date">
|
||||||
<span class="day">2</span>
|
<span class="day">1</span>
|
||||||
<span class="month">Sep</span>
|
<span class="month">Sep</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span>
|
</span>
|
||||||
|
|
|
@ -159,7 +159,7 @@ multi/blog/2010-06-01-the-title/third_part.md
|
||||||
|
|
||||||
<h3 id="mobileme">mobileme</h3>
|
<h3 id="mobileme">mobileme</h3>
|
||||||
|
|
||||||
<p>All files are intended to be generated into the <code>output/n3blog</code> directory.
|
<p>All files are intended to be generated into the <code>output/Scratch</code> directory.
|
||||||
This was made like that to work nicely with iWeb organisation of websites.</p>
|
This was made like that to work nicely with iWeb organisation of websites.</p>
|
||||||
|
|
||||||
<h3 id="menu">menu</h3>
|
<h3 id="menu">menu</h3>
|
||||||
|
|
|
@ -59,7 +59,7 @@
|
||||||
<div id="afterheader">
|
<div id="afterheader">
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<p>This is a way not to count your own visits to your blog.
|
<p>This is a way not to count your own visits to your blog.
|
||||||
First you should look on how <a href="/n3blog/en/blog/2010-06-17-track-events-with-google-analytics">I handle analytics</a>. All analytics are handled in one javascript file, this make things really convenient.</p>
|
First you should look on how <a href="/Scratch/en/blog/2010-06-17-track-events-with-google-analytics">I handle analytics</a>. All analytics are handled in one javascript file, this make things really convenient.</p>
|
||||||
|
|
||||||
<p>Then you need to know my method use the <code>jquery-cookie</code>.</p>
|
<p>Then you need to know my method use the <code>jquery-cookie</code>.</p>
|
||||||
|
|
||||||
|
|
|
@ -35,7 +35,7 @@ use Rack::TryStatic,
|
||||||
:urls => %w[/], # match all requests
|
:urls => %w[/], # match all requests
|
||||||
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
||||||
|
|
||||||
errorFile='output/n3blog/en/error/404-not_found/index.html'
|
errorFile='output/Scratch/en/error/404-not_found/index.html'
|
||||||
run lambda { [404, {
|
run lambda { [404, {
|
||||||
"Last-Modified" => File.mtime(errorFile).httpdate,
|
"Last-Modified" => File.mtime(errorFile).httpdate,
|
||||||
"Content-Type" => "text/html",
|
"Content-Type" => "text/html",
|
||||||
|
|
|
@ -111,7 +111,7 @@ use <span class="Support">Rack</span>::<span class="Entity">TryStatic</span>,
|
||||||
<span class="Constant"><span class="Constant">:</span>urls</span> => <span class="String"><span class="String">%w[</span>/<span class="String">]</span></span>, <span class="Comment"><span class="Comment">#</span> match all requests </span>
|
<span class="Constant"><span class="Constant">:</span>urls</span> => <span class="String"><span class="String">%w[</span>/<span class="String">]</span></span>, <span class="Comment"><span class="Comment">#</span> match all requests </span>
|
||||||
<span class="Constant"><span class="Constant">:</span>try</span> => [<span class="String"><span class="String">'</span>.html<span class="String">'</span></span>, <span class="String"><span class="String">'</span>index.html<span class="String">'</span></span>, <span class="String"><span class="String">'</span>/index.html<span class="String">'</span></span>] <span class="Comment"><span class="Comment">#</span> try these postfixes sequentially</span>
|
<span class="Constant"><span class="Constant">:</span>try</span> => [<span class="String"><span class="String">'</span>.html<span class="String">'</span></span>, <span class="String"><span class="String">'</span>index.html<span class="String">'</span></span>, <span class="String"><span class="String">'</span>/index.html<span class="String">'</span></span>] <span class="Comment"><span class="Comment">#</span> try these postfixes sequentially</span>
|
||||||
|
|
||||||
errorFile<span class="Keyword">=</span><span class="String"><span class="String">'</span>output/n3blog/en/error/404-not_found/index.html<span class="String">'</span></span>
|
errorFile<span class="Keyword">=</span><span class="String"><span class="String">'</span>output/Scratch/en/error/404-not_found/index.html<span class="String">'</span></span>
|
||||||
run lambda { [<span class="Constant">404</span>, {
|
run lambda { [<span class="Constant">404</span>, {
|
||||||
<span class="String"><span class="String">"</span>Last-Modified<span class="String">"</span></span> => <span class="Support">File</span>.<span class="Entity">mtime</span>(errorFile).<span class="Entity">httpdate</span>,
|
<span class="String"><span class="String">"</span>Last-Modified<span class="String">"</span></span> => <span class="Support">File</span>.<span class="Entity">mtime</span>(errorFile).<span class="Entity">httpdate</span>,
|
||||||
<span class="String"><span class="String">"</span>Content-Type<span class="String">"</span></span> => <span class="String"><span class="String">"</span>text/html<span class="String">"</span></span>,
|
<span class="String"><span class="String">"</span>Content-Type<span class="String">"</span></span> => <span class="String"><span class="String">"</span>text/html<span class="String">"</span></span>,
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
|
|
||||||
def gitmtime
|
def gitmtime
|
||||||
filepath=@item.path.sub('/n3blog/','content/html/').sub(/\/$/,'')
|
filepath=@item.path.sub('/Scratch/','content/html/').sub(/\/$/,'')
|
||||||
ext=%{.#{@item[:extension]}}
|
ext=%{.#{@item[:extension]}}
|
||||||
filepath<<=ext
|
filepath<<=ext
|
||||||
if not FileTest.exists?(filepath)
|
if not FileTest.exists?(filepath)
|
||||||
|
|
|
@ -70,7 +70,7 @@ This is how I do this with <a href="http://nanoc.stoneship.org">nanoc</a>:</p>
|
||||||
<div class="code"><div class="file"><a href="/Scratch/en/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/code/gitmtime.rb"> ➥ gitmtime.rb </a></div><div class="withfile">
|
<div class="code"><div class="file"><a href="/Scratch/en/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/code/gitmtime.rb"> ➥ gitmtime.rb </a></div><div class="withfile">
|
||||||
<pre class="twilight">
|
<pre class="twilight">
|
||||||
<span class="Keyword">def</span> <span class="Entity">gitmtime</span>
|
<span class="Keyword">def</span> <span class="Entity">gitmtime</span>
|
||||||
filepath<span class="Keyword">=</span><span class="Variable"><span class="Variable">@</span>item</span>.<span class="Entity">path</span>.<span class="Entity">sub</span>(<span class="String"><span class="String">'</span>/n3blog/<span class="String">'</span></span>,<span class="String"><span class="String">'</span>content/html/<span class="String">'</span></span>).<span class="Entity">sub</span>(<span class="StringRegexp"><span class="StringRegexp">/</span></span><span class="StringRegexp"><span class="StringRegexpSpecial">\/</span>$</span><span class="StringRegexp"><span class="StringRegexp">/</span></span>,<span class="String"><span class="String">'</span><span class="String">'</span></span>)
|
filepath<span class="Keyword">=</span><span class="Variable"><span class="Variable">@</span>item</span>.<span class="Entity">path</span>.<span class="Entity">sub</span>(<span class="String"><span class="String">'</span>/Scratch/<span class="String">'</span></span>,<span class="String"><span class="String">'</span>content/html/<span class="String">'</span></span>).<span class="Entity">sub</span>(<span class="StringRegexp"><span class="StringRegexp">/</span></span><span class="StringRegexp"><span class="StringRegexpSpecial">\/</span>$</span><span class="StringRegexp"><span class="StringRegexp">/</span></span>,<span class="String"><span class="String">'</span><span class="String">'</span></span>)
|
||||||
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>
|
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"><<=</span>ext
|
filepath<span class="Keyword"><<=</span>ext
|
||||||
<span class="Keyword">if</span> <span class="Keyword">not</span> <span class="Support">FileTest</span>.<span class="Entity">exists?</span>(filepath)
|
<span class="Keyword">if</span> <span class="Keyword">not</span> <span class="Support">FileTest</span>.<span class="Entity">exists?</span>(filepath)
|
||||||
|
|
|
@ -215,7 +215,7 @@ here are two functions to add to your code to have <code>base64</code> and <code
|
||||||
<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Copyright ©, Yann Esposito</a>
|
<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Copyright ©, Yann Esposito</a>
|
||||||
</div>
|
</div>
|
||||||
<div id="lastmod">
|
<div id="lastmod">
|
||||||
Created: 09/02/2010
|
Created: 09/01/2010
|
||||||
Modified: 09/04/2010
|
Modified: 09/04/2010
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
|
|
|
@ -63,7 +63,7 @@ Now it should be far cleaner.
|
||||||
I believe I use no CSS3 feature and far less javascript.
|
I believe I use no CSS3 feature and far less javascript.
|
||||||
Of course before my website was perfectly browsable without javascript.
|
Of course before my website was perfectly browsable without javascript.
|
||||||
Unfortunately some CSS3 feature are not mature enough on some browser.
|
Unfortunately some CSS3 feature are not mature enough on some browser.
|
||||||
For more details you can read my older <a href="/n3blog/en/blog/2010-07-07-CSS-rendering-problems-by-navigator">blog entry</a>.
|
For more details you can read my older <a href="/Scratch/en/blog/2010-07-07-CSS-rendering-problems-by-navigator">blog entry</a>.
|
||||||
But the major problem came from, <code>font-shadow</code> and gradients.
|
But the major problem came from, <code>font-shadow</code> and gradients.
|
||||||
Then my new design obey to the following rules:</p>
|
Then my new design obey to the following rules:</p>
|
||||||
|
|
||||||
|
|
|
@ -190,7 +190,7 @@ Now it should be far cleaner.
|
||||||
I believe I use no CSS3 feature and far less javascript.
|
I believe I use no CSS3 feature and far less javascript.
|
||||||
Of course before my website was perfectly browsable without javascript.
|
Of course before my website was perfectly browsable without javascript.
|
||||||
Unfortunately some CSS3 feature are not mature enough on some browser.
|
Unfortunately some CSS3 feature are not mature enough on some browser.
|
||||||
For more details you can read my older <a href="/n3blog/en/blog/2010-07-07-CSS-rendering-problems-by-navigator">blog entry</a>.
|
For more details you can read my older <a href="/Scratch/en/blog/2010-07-07-CSS-rendering-problems-by-navigator">blog entry</a>.
|
||||||
But the major problem came from, <code>font-shadow</code> and gradients.
|
But the major problem came from, <code>font-shadow</code> and gradients.
|
||||||
Then my new design obey to the following rules:</p>
|
Then my new design obey to the following rules:</p>
|
||||||
|
|
||||||
|
@ -227,7 +227,7 @@ This is how I do this with <a href="http://nanoc.stoneship.org">nanoc</
|
||||||
<span class="Keyword">def</span> </pre></div></div></content>
|
<span class="Keyword">def</span> </pre></div></div></content>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<id>tag:yannesposito.com,2010-09-02:/Scratch/en/blog/2010-09-02-base64-and-sha1-on-iPhone/</id>
|
<id>tag:yannesposito.com,2010-09-01:/Scratch/en/blog/2010-09-02-base64-and-sha1-on-iPhone/</id>
|
||||||
<title type="html">base64 and sha1 on iPhone</title>
|
<title type="html">base64 and sha1 on iPhone</title>
|
||||||
<published>2010-09-01T22:02:17Z</published>
|
<published>2010-09-01T22:02:17Z</published>
|
||||||
<updated>2010-09-01T22:02:17Z</updated>
|
<updated>2010-09-01T22:02:17Z</updated>
|
||||||
|
@ -429,7 +429,7 @@ I was a bit surprised, because I make some test into a really <em>slow<
|
||||||
Nonetheless I used these two to make the same web application. This is why I compare the expe...</p></div></hr></content>
|
Nonetheless I used these two to make the same web application. This is why I compare the expe...</p></div></hr></content>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<id>tag:yannesposito.com,2010-06-19:/Scratch/en/blog/2010-06-19-jQuery-popup-the-easy-way/</id>
|
<id>tag:yannesposito.com,2010-06-18:/Scratch/en/blog/2010-06-19-jQuery-popup-the-easy-way/</id>
|
||||||
<title type="html">jQuery popup the easy way</title>
|
<title type="html">jQuery popup the easy way</title>
|
||||||
<published>2010-06-18T22:44:50Z</published>
|
<published>2010-06-18T22:44:50Z</published>
|
||||||
<updated>2010-06-18T22:44:50Z</updated>
|
<updated>2010-06-18T22:44:50Z</updated>
|
||||||
|
@ -461,7 +461,7 @@ This is why I use a method to show this code in a large jQuery popup. </p>
|
||||||
</author>
|
</author>
|
||||||
<link rel="alternate" href="http://yannesposito.com/Scratch/en/blog/2010-06-17-hide-yourself-to-analytics/"/>
|
<link rel="alternate" href="http://yannesposito.com/Scratch/en/blog/2010-06-17-hide-yourself-to-analytics/"/>
|
||||||
<content type="html"><p>This is a way not to count your own visits to your blog.
|
<content type="html"><p>This is a way not to count your own visits to your blog.
|
||||||
First you should look on how <a href="/n3blog/en/blog/2010-06-17-track-events-with-google-analytics">I handle analytics</a>. All analytics are handled in one javascript file, this make things really convenient.</p>
|
First you should look on how <a href="/Scratch/en/blog/2010-06-17-track-events-with-google-analytics">I handle analytics</a>. All analytics are handled in one javascript file, this make things really convenient.</p>
|
||||||
|
|
||||||
<p>Then you need to know my method use the <code>jquery-cookie</code>.</p>
|
<p>Then you need to know my method use the <code>jquery-cookie</code>.</p>
|
||||||
|
|
||||||
|
|
|
@ -73,6 +73,189 @@ Last 5 Articles
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">20</span>
|
||||||
|
<span class="month">Apr</span>
|
||||||
|
<span class="year">2011</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/en/blog/2011-04-20-Now-hosted-on-github/">Now hosted on github <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
<p><img alt="Title image" src="/Scratch/img/blog/2011-04-20-Now-hosted-on-github/main.png" /></p>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="intro">
|
||||||
|
|
||||||
|
|
||||||
|
<p><span class="sc"><abbr title="Too long; don't read">tl;dr</abbr>: </span></p>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/en/blog/2011-04-20-Now-hosted-on-github/">Read more <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">3</span>
|
||||||
|
<span class="month">Jan</span>
|
||||||
|
<span class="year">2011</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/en/blog/2011-01-03-Why-I-sadly-won-t-use-coffeescript/">Why I won't use CoffeeScript (sadly) <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
<p><img alt="Title image" src="/Scratch/img/blog/2011-01-03-Why-I-sadly-won-t-use-coffeescript/main.png" /></p>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="intro">
|
||||||
|
|
||||||
|
|
||||||
|
<p><span class="sc"><abbr title="Too long; don't read">tl;dr</abbr>: </span> I would have loved to program client side using a Ruby-like syntax. But in the end, CoffeScript raised more disavantages than advantages.</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<p>Recently I read <a href="http://news.ycombinator.com/item?id=2053956">this entry</a> on HackerNews.
|
||||||
|
The most upvoted comment praised (within other) <a href="http://coffeescript.org">CoffeeScript</a>.
|
||||||
|
Recently I used <em>a lot</em> of javascript. After trying
|
||||||
|
<a href="http://sproutcore.com">Sproutcore</a>,
|
||||||
|
<a href="http://cappuccino.org">Cappuccino</a>, looking at
|
||||||
|
<a href="documentcloud.github.com/backbone/">backbone.js</a> </p></p>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/en/blog/2011-01-03-Why-I-sadly-won-t-use-coffeescript/">Read more <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">1</span>
|
||||||
|
<span class="month">Jan</span>
|
||||||
|
<span class="year">2011</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/en/blog/2011-01-03-Happy-New-Year/">Happy New Year <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
<p>Happy New Year!</p>
|
||||||
|
|
||||||
|
<p>I was busy during the last months.
|
||||||
|
But I will revive a bit this blog.</p>
|
||||||
|
|
||||||
|
<p>I made a project to write book in markdown syntax and generating HTML and high quality PDF. I am not finished with this.</p>
|
||||||
|
|
||||||
|
<p>I had written an efficient <em>&</em> simplistic MVC javascript framework.</p>
|
||||||
|
|
||||||
|
<p>Best wishes for <em>2011</em>!</p>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/en/blog/2011-01-03-Happy-New-Year/">Read more <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">26</span>
|
||||||
|
<span class="month">Oct</span>
|
||||||
|
<span class="year">2010</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/en/blog/2010-10-26-LaTeX-like-macro-and-markdown/">LaTeX like macro for markdown <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="intro">
|
||||||
|
|
||||||
|
|
||||||
|
<p><span class="sc"><abbr title="Too long; don't read">tl;dr</abbr>: </span> I made a simple macro system for my blog. Now I juste have to write %<span />latex and it show as <span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span>.</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<p>I added a macro system for my blog system.
|
||||||
|
When we are used to <span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub></span></p></div>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/en/blog/2010-10-26-LaTeX-like-macro-and-markdown/">Read more <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">14</span>
|
||||||
|
<span class="month">Oct</span>
|
||||||
|
<span class="year">2010</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/en/blog/2010-10-14-Fun-with-wav/">Fun with wav <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="intro">
|
||||||
|
|
||||||
|
|
||||||
|
<p><span class="sc"><abbr title="Too long; don't read">tl;dr</abbr>: </span> Played to process a <code>wav</code> file. <code>C</code> was easier and cleaner than Ruby.</p>
|
||||||
|
|
||||||
|
<p>edit: I wanted this program to work only on one specific machine (a x86 on a 32 bit Ubuntu). Therefore I didn’t had any portability consideration. This is only a <em>hack</em>.</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<p>I had to compute the sum of the absolute values of data of a <code>.wav</code> file.
|
||||||
|
For efficiency (and fun) reasons, I had chosen <code>C</code> language.</p>
|
||||||
|
|
||||||
|
<p>I didn’t programmed in <code>C</code> for a long time.
|
||||||
|
From my memory it was a pain to read and write to files.
|
||||||
|
But in the end I was really impressed by the code I get.
|
||||||
|
It was really clean.
|
||||||
|
This is even more impressive knowi...</p>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/en/blog/2010-10-14-Fun-with-wav/">Read more <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<div>
|
<div>
|
||||||
|
@ -672,7 +855,7 @@ Last 5 Articles
|
||||||
</ul><a class="return" href="#tagcloud">↑</a></div><div id="iPhone" class="list"><h4>iPhone</h4><ul style="list-style-type: none; margin: 0;">
|
</ul><a class="return" href="#tagcloud">↑</a></div><div id="iPhone" class="list"><h4>iPhone</h4><ul style="list-style-type: none; margin: 0;">
|
||||||
<li style="line-height: 3em; margin: 0;">
|
<li style="line-height: 3em; margin: 0;">
|
||||||
<span class="date">
|
<span class="date">
|
||||||
<span class="day">2</span>
|
<span class="day">1</span>
|
||||||
<span class="month">Sep</span>
|
<span class="month">Sep</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span>
|
</span>
|
||||||
|
@ -987,7 +1170,7 @@ Last 5 Articles
|
||||||
</ul><a class="return" href="#tagcloud">↑</a></div><div id="Objective_C" class="list"><h4>Objective-C</h4><ul style="list-style-type: none; margin: 0;">
|
</ul><a class="return" href="#tagcloud">↑</a></div><div id="Objective_C" class="list"><h4>Objective-C</h4><ul style="list-style-type: none; margin: 0;">
|
||||||
<li style="line-height: 3em; margin: 0;">
|
<li style="line-height: 3em; margin: 0;">
|
||||||
<span class="date">
|
<span class="date">
|
||||||
<span class="day">2</span>
|
<span class="day">1</span>
|
||||||
<span class="month">Sep</span>
|
<span class="month">Sep</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span>
|
</span>
|
||||||
|
@ -1068,7 +1251,7 @@ Last 5 Articles
|
||||||
</ul><a class="return" href="#tagcloud">↑</a></div><div id="Programming" class="list"><h4>Programming</h4><ul style="list-style-type: none; margin: 0;">
|
</ul><a class="return" href="#tagcloud">↑</a></div><div id="Programming" class="list"><h4>Programming</h4><ul style="list-style-type: none; margin: 0;">
|
||||||
<li style="line-height: 3em; margin: 0;">
|
<li style="line-height: 3em; margin: 0;">
|
||||||
<span class="date">
|
<span class="date">
|
||||||
<span class="day">2</span>
|
<span class="day">1</span>
|
||||||
<span class="month">Sep</span>
|
<span class="month">Sep</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span>
|
</span>
|
||||||
|
@ -1698,7 +1881,7 @@ Last 5 Articles
|
||||||
<span class="month">Sep</span>
|
<span class="month">Sep</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/en/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/">Use git to calculate trusted mtimes<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/en/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/">Use git to calculate trusted mtimes<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">2</span>
|
<span class="day">1</span>
|
||||||
<span class="month">Sep</span>
|
<span class="month">Sep</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/en/blog/2010-09-02-base64-and-sha1-on-iPhone/">base64 and sha1 on iPhone<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/en/blog/2010-09-02-base64-and-sha1-on-iPhone/">base64 and sha1 on iPhone<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
|
|
|
@ -59,7 +59,7 @@
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<div class="block left">
|
<div class="block left">
|
||||||
<h3>
|
<h3>
|
||||||
<a href="/n3blog/en/softwares/ypassword"> YPassword
|
<a href="/Scratch/en/softwares/ypassword"> YPassword
|
||||||
<span class="nicer">»</span>
|
<span class="nicer">»</span>
|
||||||
</a>
|
</a>
|
||||||
</h3>
|
</h3>
|
||||||
|
@ -70,7 +70,7 @@
|
||||||
|
|
||||||
<div class="block left">
|
<div class="block left">
|
||||||
<h3>
|
<h3>
|
||||||
<a href="/n3blog/en/softwares/yaquabubbles"> YAquaBubbles
|
<a href="/Scratch/en/softwares/yaquabubbles"> YAquaBubbles
|
||||||
<span class="nicer">»</span>
|
<span class="nicer">»</span>
|
||||||
</a>
|
</a>
|
||||||
</h3>
|
</h3>
|
||||||
|
@ -81,7 +81,7 @@
|
||||||
|
|
||||||
<div class="block right">
|
<div class="block right">
|
||||||
<h3>
|
<h3>
|
||||||
<a href="/n3blog/en/softwares/yclock"> YClock
|
<a href="/Scratch/en/softwares/yclock"> YClock
|
||||||
<span class="nicer">»</span>
|
<span class="nicer">»</span>
|
||||||
</a>
|
</a>
|
||||||
</h3>
|
</h3>
|
||||||
|
|
|
@ -61,12 +61,12 @@
|
||||||
|
|
||||||
<div id="afterheader">
|
<div id="afterheader">
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<p><a href="/n3blog/files/YAquaBubbles.dmg"> <img src="/n3blog/img/softwares/yaquabubbles/screenshot1.png" alt="Screenshot" title="screenshot" /> </a></p>
|
<p><a href="/Scratch/files/YAquaBubbles.dmg"> <img src="/Scratch/img/softwares/yaquabubbles/screenshot1.png" alt="Screenshot" title="screenshot" /> </a></p>
|
||||||
|
|
||||||
<p>YAquaBubbles is a QuartzComposer Screensaver.
|
<p>YAquaBubbles is a QuartzComposer Screensaver.
|
||||||
It was one of my first try but the result was nice.</p>
|
It was one of my first try but the result was nice.</p>
|
||||||
|
|
||||||
<p><a href="/n3blog/files/YAquaBubbles.dmg"><span class="nicer">➥</span> YAquaBubbles.dmg</a></p>
|
<p><a href="/Scratch/files/YAquaBubbles.dmg"><span class="nicer">➥</span> YAquaBubbles.dmg</a></p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -57,13 +57,13 @@
|
||||||
|
|
||||||
<div id="afterheader">
|
<div id="afterheader">
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<p><a href="/n3blog/files/YClock.dmg"> <img src="/n3blog/img/softwares/yclock/screenshot1.png" alt="Screenshot" title="screenshot" /> </a></p>
|
<p><a href="/Scratch/files/YClock.dmg"> <img src="/Scratch/img/softwares/yclock/screenshot1.png" alt="Screenshot" title="screenshot" /> </a></p>
|
||||||
|
|
||||||
<p>YClock is a nice clock screensaver.
|
<p>YClock is a nice clock screensaver.
|
||||||
It has three themes: white, black and red.
|
It has three themes: white, black and red.
|
||||||
It is based on a QuartzComposition and with some little Objective-C code to handle gently the frame per second.</p>
|
It is based on a QuartzComposition and with some little Objective-C code to handle gently the frame per second.</p>
|
||||||
|
|
||||||
<p><a href="/n3blog/files/YClock.dmg"><span class="nicer">➥</span> YClock.dmg</a></p>
|
<p><a href="/Scratch/files/YClock.dmg"><span class="nicer">➥</span> YClock.dmg</a></p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -60,16 +60,16 @@
|
||||||
<p><em>Easy</em>, <em>Secure</em> and <em>Portable</em> way to manage your web passwords.</p>
|
<p><em>Easy</em>, <em>Secure</em> and <em>Portable</em> way to manage your web passwords.</p>
|
||||||
|
|
||||||
<p>Remember only <em>one</em> strong password. And the rest follow.
|
<p>Remember only <em>one</em> strong password. And the rest follow.
|
||||||
See my <a href="/n3blog/en/blog/ypassword.html">blog entry</a> for the details.</p>
|
See my <a href="/Scratch/en/blog/ypassword.html">blog entry</a> for the details.</p>
|
||||||
|
|
||||||
<p>Here you can find:</p>
|
<p>Here you can find:</p>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>A <a href="/n3blog/files/YPassword-1.6.zip">Dashboard Widget</a>,</li>
|
<li>A <a href="/Scratch/files/YPassword-1.6.zip">Dashboard Widget</a>,</li>
|
||||||
<li>An <a href="/n3blog/files/forcePaste.app.zip">Applescript</a> to simulate copy/paste in protected fields,</li>
|
<li>An <a href="/Scratch/files/forcePaste.app.zip">Applescript</a> to simulate copy/paste in protected fields,</li>
|
||||||
<li>An alpha <a href="/n3blog/en/softwares/ypassword/web/">Web Application</a> made with <a href="http://cappuccino.org">Cappuccino</a>,</li>
|
<li>An alpha <a href="/Scratch/en/softwares/ypassword/web/">Web Application</a> made with <a href="http://cappuccino.org">Cappuccino</a>,</li>
|
||||||
<li>An alpha <a href="/n3blog/en/softwares/ypassword/iphoneweb/">Web Application</a> for iPhone,</li>
|
<li>An alpha <a href="/Scratch/en/softwares/ypassword/iphoneweb/">Web Application</a> for iPhone,</li>
|
||||||
<li>A <a href="/n3blog/files/getpass">command line tool</a>.</li>
|
<li>A <a href="/Scratch/files/getpass">command line tool</a>.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<p>I’ll soon release an iPhone application.</p>
|
<p>I’ll soon release an iPhone application.</p>
|
||||||
|
|
|
@ -59,7 +59,7 @@
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<h1 class="first" id="comment-me-contacter">Comment me contacter</h1>
|
<h1 class="first" id="comment-me-contacter">Comment me contacter</h1>
|
||||||
|
|
||||||
<p><img src="/n3blog/img/about/avatar.png" alt="Avatar" class="left" /></p>
|
<p><img src="/Scratch/img/about/avatar.png" alt="Avatar" class="left" /></p>
|
||||||
|
|
||||||
<p><a href="mailto:yann.esposito@gmail.com">yann.esposito@gmail.com</a><br />
|
<p><a href="mailto:yann.esposito@gmail.com">yann.esposito@gmail.com</a><br />
|
||||||
Suivez moi sur <a href="http://twitter.com/yogsototh">twitter</a><br />
|
Suivez moi sur <a href="http://twitter.com/yogsototh">twitter</a><br />
|
||||||
|
|
|
@ -163,7 +163,7 @@ multi/blog/2010-06-01-the-title/third_part.md
|
||||||
|
|
||||||
<h3 id="mobileme">mobileme</h3>
|
<h3 id="mobileme">mobileme</h3>
|
||||||
|
|
||||||
<p>All files are intended to be generated into the <code>output/n3blog</code> directory.
|
<p>All files are intended to be generated into the <code>output/Scratch</code> directory.
|
||||||
This was made like that to work nicely with iWeb organisation of websites.</p>
|
This was made like that to work nicely with iWeb organisation of websites.</p>
|
||||||
|
|
||||||
<h3 id="menu">menu</h3>
|
<h3 id="menu">menu</h3>
|
||||||
|
|
|
@ -59,7 +59,7 @@
|
||||||
<div id="afterheader">
|
<div id="afterheader">
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<p>Voici un moyen très simple de ne plus être comptabilisé dans les visites de son propre site.
|
<p>Voici un moyen très simple de ne plus être comptabilisé dans les visites de son propre site.
|
||||||
Tout d’abord, vous devriez jeter un coup d’œil sur comment <a href="/n3blog/fr/blog/2010-06-17-track-events-with-google-analytics">je gère les systèmes de récupération de statistiques</a>.
|
Tout d’abord, vous devriez jeter un coup d’œil sur comment <a href="/Scratch/fr/blog/2010-06-17-track-events-with-google-analytics">je gère les systèmes de récupération de statistiques</a>.
|
||||||
Je centralise tout dans un seul fichier javascript ce qui facilite le travail.</p>
|
Je centralise tout dans un seul fichier javascript ce qui facilite le travail.</p>
|
||||||
|
|
||||||
<p>Cette méthode nécessite l’utilisation de <code>jquery-cookie</code>.</p>
|
<p>Cette méthode nécessite l’utilisation de <code>jquery-cookie</code>.</p>
|
||||||
|
|
|
@ -35,7 +35,7 @@ use Rack::TryStatic,
|
||||||
:urls => %w[/], # match all requests
|
:urls => %w[/], # match all requests
|
||||||
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
:try => ['.html', 'index.html', '/index.html'] # try these postfixes sequentially
|
||||||
|
|
||||||
errorFile='output/n3blog/en/error/404-not_found/index.html'
|
errorFile='output/Scratch/en/error/404-not_found/index.html'
|
||||||
run lambda { [404, {
|
run lambda { [404, {
|
||||||
"Last-Modified" => File.mtime(errorFile).httpdate,
|
"Last-Modified" => File.mtime(errorFile).httpdate,
|
||||||
"Content-Type" => "text/html",
|
"Content-Type" => "text/html",
|
||||||
|
|
|
@ -111,7 +111,7 @@ use <span class="Support">Rack</span>::<span class="Entity">TryStatic</span>,
|
||||||
<span class="Constant"><span class="Constant">:</span>urls</span> => <span class="String"><span class="String">%w[</span>/<span class="String">]</span></span>, <span class="Comment"><span class="Comment">#</span> match all requests </span>
|
<span class="Constant"><span class="Constant">:</span>urls</span> => <span class="String"><span class="String">%w[</span>/<span class="String">]</span></span>, <span class="Comment"><span class="Comment">#</span> match all requests </span>
|
||||||
<span class="Constant"><span class="Constant">:</span>try</span> => [<span class="String"><span class="String">'</span>.html<span class="String">'</span></span>, <span class="String"><span class="String">'</span>index.html<span class="String">'</span></span>, <span class="String"><span class="String">'</span>/index.html<span class="String">'</span></span>] <span class="Comment"><span class="Comment">#</span> try these postfixes sequentially</span>
|
<span class="Constant"><span class="Constant">:</span>try</span> => [<span class="String"><span class="String">'</span>.html<span class="String">'</span></span>, <span class="String"><span class="String">'</span>index.html<span class="String">'</span></span>, <span class="String"><span class="String">'</span>/index.html<span class="String">'</span></span>] <span class="Comment"><span class="Comment">#</span> try these postfixes sequentially</span>
|
||||||
|
|
||||||
errorFile<span class="Keyword">=</span><span class="String"><span class="String">'</span>output/n3blog/en/error/404-not_found/index.html<span class="String">'</span></span>
|
errorFile<span class="Keyword">=</span><span class="String"><span class="String">'</span>output/Scratch/en/error/404-not_found/index.html<span class="String">'</span></span>
|
||||||
run lambda { [<span class="Constant">404</span>, {
|
run lambda { [<span class="Constant">404</span>, {
|
||||||
<span class="String"><span class="String">"</span>Last-Modified<span class="String">"</span></span> => <span class="Support">File</span>.<span class="Entity">mtime</span>(errorFile).<span class="Entity">httpdate</span>,
|
<span class="String"><span class="String">"</span>Last-Modified<span class="String">"</span></span> => <span class="Support">File</span>.<span class="Entity">mtime</span>(errorFile).<span class="Entity">httpdate</span>,
|
||||||
<span class="String"><span class="String">"</span>Content-Type<span class="String">"</span></span> => <span class="String"><span class="String">"</span>text/html<span class="String">"</span></span>,
|
<span class="String"><span class="String">"</span>Content-Type<span class="String">"</span></span> => <span class="String"><span class="String">"</span>text/html<span class="String">"</span></span>,
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
|
|
||||||
def gitmtime
|
def gitmtime
|
||||||
filepath=@item.path.sub('/n3blog/','content/html/').sub(/\/$/,'')
|
filepath=@item.path.sub('/Scratch/','content/html/').sub(/\/$/,'')
|
||||||
ext=%{.#{@item[:extension]}}
|
ext=%{.#{@item[:extension]}}
|
||||||
filepath<<=ext
|
filepath<<=ext
|
||||||
if not FileTest.exists?(filepath)
|
if not FileTest.exists?(filepath)
|
||||||
|
|
|
@ -70,7 +70,7 @@ Voici comment je m’y prend avec <a href="http://nanoc.stoneship.org">nanoc
|
||||||
<div class="code"><div class="file"><a href="/Scratch/fr/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/code/gitmtime.rb"> ➥ gitmtime.rb </a></div><div class="withfile">
|
<div class="code"><div class="file"><a href="/Scratch/fr/blog/2010-09-02-Use-git-to-calculate-trusted-mtimes/code/gitmtime.rb"> ➥ gitmtime.rb </a></div><div class="withfile">
|
||||||
<pre class="twilight">
|
<pre class="twilight">
|
||||||
<span class="Keyword">def</span> <span class="Entity">gitmtime</span>
|
<span class="Keyword">def</span> <span class="Entity">gitmtime</span>
|
||||||
filepath<span class="Keyword">=</span><span class="Variable"><span class="Variable">@</span>item</span>.<span class="Entity">path</span>.<span class="Entity">sub</span>(<span class="String"><span class="String">'</span>/n3blog/<span class="String">'</span></span>,<span class="String"><span class="String">'</span>content/html/<span class="String">'</span></span>).<span class="Entity">sub</span>(<span class="StringRegexp"><span class="StringRegexp">/</span></span><span class="StringRegexp"><span class="StringRegexpSpecial">\/</span>$</span><span class="StringRegexp"><span class="StringRegexp">/</span></span>,<span class="String"><span class="String">'</span><span class="String">'</span></span>)
|
filepath<span class="Keyword">=</span><span class="Variable"><span class="Variable">@</span>item</span>.<span class="Entity">path</span>.<span class="Entity">sub</span>(<span class="String"><span class="String">'</span>/Scratch/<span class="String">'</span></span>,<span class="String"><span class="String">'</span>content/html/<span class="String">'</span></span>).<span class="Entity">sub</span>(<span class="StringRegexp"><span class="StringRegexp">/</span></span><span class="StringRegexp"><span class="StringRegexpSpecial">\/</span>$</span><span class="StringRegexp"><span class="StringRegexp">/</span></span>,<span class="String"><span class="String">'</span><span class="String">'</span></span>)
|
||||||
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>
|
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"><<=</span>ext
|
filepath<span class="Keyword"><<=</span>ext
|
||||||
<span class="Keyword">if</span> <span class="Keyword">not</span> <span class="Support">FileTest</span>.<span class="Entity">exists?</span>(filepath)
|
<span class="Keyword">if</span> <span class="Keyword">not</span> <span class="Support">FileTest</span>.<span class="Entity">exists?</span>(filepath)
|
||||||
|
|
|
@ -213,7 +213,7 @@ Voici comment je m&rsquo;y prend avec <a href="http://nanoc.stoneship.org
|
||||||
<div class="code"><div class="file"></div></div></content>
|
<div class="code"><div class="file"></div></div></content>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<id>tag:yannesposito.com,2010-09-01:/Scratch/fr/blog/2010-09-02-base64-and-sha1-on-iPhone/</id>
|
<id>tag:yannesposito.com,2010-09-02:/Scratch/fr/blog/2010-09-02-base64-and-sha1-on-iPhone/</id>
|
||||||
<title type="html">base64 et sha1 sur iPhone</title>
|
<title type="html">base64 et sha1 sur iPhone</title>
|
||||||
<published>2010-09-01T22:02:17Z</published>
|
<published>2010-09-01T22:02:17Z</published>
|
||||||
<updated>2010-09-01T22:02:17Z</updated>
|
<updated>2010-09-01T22:02:17Z</updated>
|
||||||
|
@ -400,7 +400,7 @@ En réalité, ce qui ralenti le rendu de ce site est par ordre d&rsq
|
||||||
<p>Avant de commencer, je dois dire que je sais que Cappuccino et jQuery ne sont pas plus comparable que Cocoa et la <em>standard library</em> en...</p></div></hr></content>
|
<p>Avant de commencer, je dois dire que je sais que Cappuccino et jQuery ne sont pas plus comparable que Cocoa et la <em>standard library</em> en...</p></div></hr></content>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<id>tag:yannesposito.com,2010-06-18:/Scratch/fr/blog/2010-06-19-jQuery-popup-the-easy-way/</id>
|
<id>tag:yannesposito.com,2010-06-19:/Scratch/fr/blog/2010-06-19-jQuery-popup-the-easy-way/</id>
|
||||||
<title type="html">Comment faire des popups en jQuery rapidement</title>
|
<title type="html">Comment faire des popups en jQuery rapidement</title>
|
||||||
<published>2010-06-18T22:44:50Z</published>
|
<published>2010-06-18T22:44:50Z</published>
|
||||||
<updated>2010-06-18T22:44:50Z</updated>
|
<updated>2010-06-18T22:44:50Z</updated>
|
||||||
|
@ -432,7 +432,7 @@ C&rsquo;est pourquoi, j&rsquo;utilise une méthode qui permet d&
|
||||||
</author>
|
</author>
|
||||||
<link rel="alternate" href="http://yannesposito.com/Scratch/fr/blog/2010-06-17-hide-yourself-to-analytics/"/>
|
<link rel="alternate" href="http://yannesposito.com/Scratch/fr/blog/2010-06-17-hide-yourself-to-analytics/"/>
|
||||||
<content type="html"><p>Voici un moyen très simple de ne plus être comptabilisé dans les visites de son propre site.
|
<content type="html"><p>Voici un moyen très simple de ne plus être comptabilisé dans les visites de son propre site.
|
||||||
Tout d&rsquo;abord, vous devriez jeter un coup d&rsquo;œil sur comment <a href="/n3blog/fr/blog/2010-06-17-track-events-with-google-analytics">je gère les systèmes de récupération de statistiques</a>.
|
Tout d&rsquo;abord, vous devriez jeter un coup d&rsquo;œil sur comment <a href="/Scratch/fr/blog/2010-06-17-track-events-with-google-analytics">je gère les systèmes de récupération de statistiques</a>.
|
||||||
Je centralise tout dans un seul fichier javascript ce qui facilite le travail.</p>
|
Je centralise tout dans un seul fichier javascript ce qui facilite le travail.</p>
|
||||||
|
|
||||||
<p>Cette méthode nécessite l&rsquo;utilisation de <code>jquery-cookie</code>.</p>
|
<p>Cette méthode nécessite l&rsquo;utilisation de <code>jquery-cookie</code>.</p>
|
||||||
|
|
|
@ -73,6 +73,187 @@ Les 5 derniers articles
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">20</span>
|
||||||
|
<span class="month">Avr</span>
|
||||||
|
<span class="year">2011</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/fr/blog/2011-04-20-Now-hosted-on-github/">Now hosted on github <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
<p><img alt="Title image" src="/Scratch/img/blog/2011-04-20-Now-hosted-on-github/main.png" /></p>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="intro">
|
||||||
|
|
||||||
|
|
||||||
|
<p><span class="sc"><abbr title="Trop long à lire">tlàl</abbr> : </span></p>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/fr/blog/2011-04-20-Now-hosted-on-github/">en lire plus <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">3</span>
|
||||||
|
<span class="month">Jan</span>
|
||||||
|
<span class="year">2011</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/fr/blog/2011-01-03-Why-I-sadly-won-t-use-coffeescript/">Pourquoi je n'utiliserai pas CoffeeScript (malheureusement) <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
<p><img alt="Title image" src="/Scratch/img/blog/2011-01-03-Why-I-sadly-won-t-use-coffeescript/main.png" /></p>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="intro">
|
||||||
|
|
||||||
|
|
||||||
|
<p><span class="sc"><abbr title="Trop long à lire">tlàl</abbr> : </span> Qu’est-ce qui n’allait pas avec Coffeescript? La meta-programmation, il faut le “vendre” aux autres, une nouvelle étape de compilation intermédiaire sans fournir les avantages de Cappuccino, la sensation que c’est un peu instable.</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<p>Le commentaire le mieux classé de <a href="http://news.ycombinator.com/item?id=2053956">la question suivante</a> posée sur HackerNews mentionnait <a href="http://coffeescript.org">CoffeeScript</a>.
|
||||||
|
Récemment j’ai beaucoup programmé en javascript.
|
||||||
|
Après avoir essayé
|
||||||
|
</p></p>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/fr/blog/2011-01-03-Why-I-sadly-won-t-use-coffeescript/">en lire plus <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">1</span>
|
||||||
|
<span class="month">Jan</span>
|
||||||
|
<span class="year">2011</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/fr/blog/2011-01-03-Happy-New-Year/">Bonne et heureuse année <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
<p>Bonne et heureuse année !</p>
|
||||||
|
|
||||||
|
<p>J’étais très occupé ces derniers mois.
|
||||||
|
Maintenant il me semble que je vais pouvoir faire revivre ce blog.</p>
|
||||||
|
|
||||||
|
<p>J’ai fait un outil qui permet d’écrire des livre en utilisant une syntaxe proche de markdown.
|
||||||
|
C’est un markdown avec des macros (essentiel pour les textes longs).
|
||||||
|
De plus le système gère la génération de pages HTML ainsi que du PDF engendré avec du XeLaTeX.
|
||||||
|
Je n’en ai pas encore terminé avec ça. Mais si je tarde trop, je communiquerai lorsque j’aurai fini le minimum.</p>
|
||||||
|
|
||||||
|
<p>J’ai écrit un framework MVC pour application javascript simple mais néanmoins très rapide.</p>
|
||||||
|
|
||||||
|
<p>Meilleurs vœux à tous !</p>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/fr/blog/2011-01-03-Happy-New-Year/">en lire plus <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">26</span>
|
||||||
|
<span class="month">Oct</span>
|
||||||
|
<span class="year">2010</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/fr/blog/2010-10-26-LaTeX-like-macro-and-markdown/">Des macros LaTeX pour markdown <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="intro">
|
||||||
|
|
||||||
|
|
||||||
|
<p><span class="sc"><abbr title="Trop long à lire">tlàl</abbr> : </span> J’ai fait un système simple de macros pour mon blog. Par exemple, il me suffit d’écrire %<span />latex et ça affiche <span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span>.</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<p>J’ai ajouter un système de macro pour mon système de blog.
|
||||||
|
Lorsqu’on est habitué à <span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T</span></p></div>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/fr/blog/2010-10-26-LaTeX-like-macro-and-markdown/">en lire plus <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1>
|
||||||
|
<span class="date">
|
||||||
|
<span class="day">14</span>
|
||||||
|
<span class="month">Oct</span>
|
||||||
|
<span class="year">2010</span>
|
||||||
|
</span>
|
||||||
|
<a href="/Scratch/fr/blog/2010-10-14-Fun-with-wav/">S'amuser avec un .wav <span class="nicer">»</span></a>
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="corps">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="intro">
|
||||||
|
|
||||||
|
|
||||||
|
<p><span class="sc"><abbr title="Trop long à lire">tlàl</abbr> : </span> Je me suis amusé à lire un fichier <code>wav</code>. Le <code>C</code> fut le langage le mieux adapté à ce traitement. Bien meilleur que Ruby par exemple.</p>
|
||||||
|
|
||||||
|
<p>edit: Je voulais que ce programme fonctionne sur une machine spécifique. En aucun cas je ne pensais publier ce code pour une utilisation autre que celle-ci.</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<p>J’ai eu besoin de calculer la somme des valeurs absolue des données d’un fichier <code>wav</code>.
|
||||||
|
Pour des raison d’efficacité (et aussi de fun), j’ai fait le programme en <code>C</code>.</p>
|
||||||
|
|
||||||
|
<p>Celà faisait longtemps que je n’avais pas programmé en <code>C</code>.
|
||||||
|
De mémoire il était peu aisé de manipuler des ...</p>
|
||||||
|
|
||||||
|
<div class="flush"></div>
|
||||||
|
<div>
|
||||||
|
<p>
|
||||||
|
<a href="/Scratch/fr/blog/2010-10-14-Fun-with-wav/">en lire plus <span class="nicer">»</span></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<div>
|
<div>
|
||||||
|
@ -1667,7 +1848,7 @@ Les 5 derniers articles
|
||||||
|
|
||||||
<div id="sousliens" class="archive"><h4 class="button" onclick="$('#archives_2011').slideToggle()">[2011]</h4><ul id="archives_2011"><li><span class="date">
|
<div id="sousliens" class="archive"><h4 class="button" onclick="$('#archives_2011').slideToggle()">[2011]</h4><ul id="archives_2011"><li><span class="date">
|
||||||
<span class="day">20</span>
|
<span class="day">20</span>
|
||||||
<span class="month">Apr</span>
|
<span class="month">Avr</span>
|
||||||
<span class="year">2011</span>
|
<span class="year">2011</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2011-04-20-Now-hosted-on-github/">Now hosted on github<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2011-04-20-Now-hosted-on-github/">Now hosted on github<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">3</span>
|
<span class="day">3</span>
|
||||||
|
@ -1703,15 +1884,15 @@ Les 5 derniers articles
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-09-02-base64-and-sha1-on-iPhone/">base64 et sha1 sur iPhone<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-09-02-base64-and-sha1-on-iPhone/">base64 et sha1 sur iPhone<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">31</span>
|
<span class="day">31</span>
|
||||||
<span class="month">Aug</span>
|
<span class="month">Aoû</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-08-31-send-mail-from-command-line-with-attached-file/">Envoyer un mail en ligne de commande avec un fichier attaché<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-08-31-send-mail-from-command-line-with-attached-file/">Envoyer un mail en ligne de commande avec un fichier attaché<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">23</span>
|
<span class="day">23</span>
|
||||||
<span class="month">Aug</span>
|
<span class="month">Aoû</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-08-23-Now-heberged-on-heroku/">Maintenant sur Heroku<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-08-23-Now-heberged-on-heroku/">Maintenant sur Heroku<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">11</span>
|
<span class="day">11</span>
|
||||||
<span class="month">Aug</span>
|
<span class="month">Aoû</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-07-09-Indecidabilities/">Indécidabilités (partie 1)<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-07-09-Indecidabilities/">Indécidabilités (partie 1)<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">31</span>
|
<span class="day">31</span>
|
||||||
|
@ -1727,35 +1908,35 @@ Les 5 derniers articles
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-07-05-Cappuccino-and-Web-applications/">Cappuccino ou jQuery ?<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-07-05-Cappuccino-and-Web-applications/">Cappuccino ou jQuery ?<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">19</span>
|
<span class="day">19</span>
|
||||||
<span class="month">Jun</span>
|
<span class="month">Jui</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-06-19-jQuery-popup-the-easy-way/">Comment faire des popups en jQuery rapidement<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-06-19-jQuery-popup-the-easy-way/">Comment faire des popups en jQuery rapidement<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">17</span>
|
<span class="day">17</span>
|
||||||
<span class="month">Jun</span>
|
<span class="month">Jui</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-06-17-hide-yourself-to-analytics/">Se cacher de ses statistiques web<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-06-17-hide-yourself-to-analytics/">Se cacher de ses statistiques web<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">17</span>
|
<span class="day">17</span>
|
||||||
<span class="month">Jun</span>
|
<span class="month">Jui</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-06-17-track-events-with-google-analytics/">Analyser les clicks sur votre Site<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-06-17-track-events-with-google-analytics/">Analyser les clicks sur votre Site<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">15</span>
|
<span class="day">15</span>
|
||||||
<span class="month">Jun</span>
|
<span class="month">Jui</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-06-15-Get-my-blog-engine/">Récupérez mon système de blog<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-06-15-Get-my-blog-engine/">Récupérez mon système de blog<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">14</span>
|
<span class="day">14</span>
|
||||||
<span class="month">Jun</span>
|
<span class="month">Jui</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-06-14-multi-language-choices/">choix liés à l'écriture dans plusieurs langues<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-06-14-multi-language-choices/">choix liés à l'écriture dans plusieurs langues<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">24</span>
|
<span class="day">24</span>
|
||||||
<span class="month">May</span>
|
<span class="month">Mai</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-05-24-Trees--Pragmatism-and-Formalism/">Arbres ; Pragmatisme et Formalisme<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-05-24-Trees--Pragmatism-and-Formalism/">Arbres ; Pragmatisme et Formalisme<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">19</span>
|
<span class="day">19</span>
|
||||||
<span class="month">May</span>
|
<span class="month">Mai</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-05-19-How-to-cut-HTML-and-repair-it/">Comment réparer un XML coupé ?<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-05-19-How-to-cut-HTML-and-repair-it/">Comment réparer un XML coupé ?<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">17</span>
|
<span class="day">17</span>
|
||||||
<span class="month">May</span>
|
<span class="month">Mai</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-05-17-at-least-this-blog-revive/">Je reviens à la vie !<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-05-17-at-least-this-blog-revive/">Je reviens à la vie !<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">23</span>
|
<span class="day">23</span>
|
||||||
|
@ -1767,19 +1948,19 @@ Les 5 derniers articles
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-03-22-Git-Tips/">Astuces Git<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-03-22-Git-Tips/">Astuces Git<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">23</span>
|
<span class="day">23</span>
|
||||||
<span class="month">Feb</span>
|
<span class="month">Fév</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-02-23-When-regexp-is-not-the-best-solution/">Quand se passer des expressions régulières ?<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-02-23-When-regexp-is-not-the-best-solution/">Quand se passer des expressions régulières ?<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">18</span>
|
<span class="day">18</span>
|
||||||
<span class="month">Feb</span>
|
<span class="month">Fév</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-02-18-split-a-file-by-keyword/">découper un fichier par mots clés<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-02-18-split-a-file-by-keyword/">découper un fichier par mots clés<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">16</span>
|
<span class="day">16</span>
|
||||||
<span class="month">Feb</span>
|
<span class="month">Fév</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-02-16-All-but-something-regexp--2-/">Tout sauf quelquechose en expression régulière.<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-02-16-All-but-something-regexp--2-/">Tout sauf quelquechose en expression régulière.<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">15</span>
|
<span class="day">15</span>
|
||||||
<span class="month">Feb</span>
|
<span class="month">Fév</span>
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-02-15-All-but-something-regexp/">Expression régulière pour tout sauf quelquechose<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-02-15-All-but-something-regexp/">Expression régulière pour tout sauf quelquechose<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">12</span>
|
<span class="day">12</span>
|
||||||
|
@ -1791,11 +1972,11 @@ Les 5 derniers articles
|
||||||
<span class="year">2010</span>
|
<span class="year">2010</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2010-01-04-Change-default-shell-on-Mac-OS-X/">Changer le shell par défaut sous Mac OS X<span class="nicer">»</span></a></li></ul><script type="text/javascript">$('#archives_2010').hide()</script><h4 class="button" onclick="$('#archives_2009').slideToggle()">[2009]</h4><ul id="archives_2009"><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2010-01-04-Change-default-shell-on-Mac-OS-X/">Changer le shell par défaut sous Mac OS X<span class="nicer">»</span></a></li></ul><script type="text/javascript">$('#archives_2010').hide()</script><h4 class="button" onclick="$('#archives_2009').slideToggle()">[2009]</h4><ul id="archives_2009"><li><span class="date">
|
||||||
<span class="day">14</span>
|
<span class="day">14</span>
|
||||||
<span class="month">Dec</span>
|
<span class="month">Déc</span>
|
||||||
<span class="year">2009</span>
|
<span class="year">2009</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2009-12-14-Git-vs--Bzr/">Git ou Bazaar ?<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2009-12-14-Git-vs--Bzr/">Git ou Bazaar ?<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">6</span>
|
<span class="day">6</span>
|
||||||
<span class="month">Dec</span>
|
<span class="month">Déc</span>
|
||||||
<span class="year">2009</span>
|
<span class="year">2009</span>
|
||||||
</span> <a href="/Scratch/fr/blog/2009-12-06-iphone-call-filter/">Filtrage d'appel avec l'iPhone<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/2009-12-06-iphone-call-filter/">Filtrage d'appel avec l'iPhone<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">12</span>
|
<span class="day">12</span>
|
||||||
|
@ -1863,19 +2044,19 @@ Les 5 derniers articles
|
||||||
<span class="year">2009</span>
|
<span class="year">2009</span>
|
||||||
</span> <a href="/Scratch/fr/blog/07_Screensaver_compilation_option_for_Snow_Leopard/">Compilation d'économiseur d'écran sous Snow Leopard<small>©</small><span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/07_Screensaver_compilation_option_for_Snow_Leopard/">Compilation d'économiseur d'écran sous Snow Leopard<small>©</small><span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">18</span>
|
<span class="day">18</span>
|
||||||
<span class="month">Aug</span>
|
<span class="month">Aoû</span>
|
||||||
<span class="year">2009</span>
|
<span class="year">2009</span>
|
||||||
</span> <a href="/Scratch/fr/blog/06_How_I_use_git/">Git en solo<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/06_How_I_use_git/">Git en solo<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">17</span>
|
<span class="day">17</span>
|
||||||
<span class="month">Aug</span>
|
<span class="month">Aoû</span>
|
||||||
<span class="year">2009</span>
|
<span class="year">2009</span>
|
||||||
</span> <a href="/Scratch/fr/blog/05_git_create_remote_branch/">Création de branches externe avec Git<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/05_git_create_remote_branch/">Création de branches externe avec Git<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">15</span>
|
<span class="day">15</span>
|
||||||
<span class="month">Aug</span>
|
<span class="month">Aoû</span>
|
||||||
<span class="year">2009</span>
|
<span class="year">2009</span>
|
||||||
</span> <a href="/Scratch/fr/blog/04_drm/">Les protections anti-copies sont LE MAL<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/04_drm/">Les protections anti-copies sont LE MAL<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">4</span>
|
<span class="day">4</span>
|
||||||
<span class="month">Aug</span>
|
<span class="month">Aoû</span>
|
||||||
<span class="year">2009</span>
|
<span class="year">2009</span>
|
||||||
</span> <a href="/Scratch/fr/blog/03_losthighway/">Lost Highway démystifié (un peu)<span class="nicer">»</span></a></li><li><span class="date">
|
</span> <a href="/Scratch/fr/blog/03_losthighway/">Lost Highway démystifié (un peu)<span class="nicer">»</span></a></li><li><span class="date">
|
||||||
<span class="day">22</span>
|
<span class="day">22</span>
|
||||||
|
|
|
@ -59,7 +59,7 @@
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<div class="block left">
|
<div class="block left">
|
||||||
<h3>
|
<h3>
|
||||||
<a href="/n3blog/fr/softwares/ypassword"> YPassword
|
<a href="/Scratch/fr/softwares/ypassword"> YPassword
|
||||||
<span class="nicer">»</span>
|
<span class="nicer">»</span>
|
||||||
</a>
|
</a>
|
||||||
</h3>
|
</h3>
|
||||||
|
@ -70,7 +70,7 @@
|
||||||
|
|
||||||
<div class="block left">
|
<div class="block left">
|
||||||
<h3>
|
<h3>
|
||||||
<a href="/n3blog/fr/softwares/yaquabubbles"> YAquaBubbles
|
<a href="/Scratch/fr/softwares/yaquabubbles"> YAquaBubbles
|
||||||
<span class="nicer">»</span>
|
<span class="nicer">»</span>
|
||||||
</a>
|
</a>
|
||||||
</h3>
|
</h3>
|
||||||
|
@ -81,7 +81,7 @@
|
||||||
|
|
||||||
<div class="block right">
|
<div class="block right">
|
||||||
<h3>
|
<h3>
|
||||||
<a href="/n3blog/fr/softwares/yclock"> YClock
|
<a href="/Scratch/fr/softwares/yclock"> YClock
|
||||||
<span class="nicer">»</span>
|
<span class="nicer">»</span>
|
||||||
</a>
|
</a>
|
||||||
</h3>
|
</h3>
|
||||||
|
|
|
@ -61,12 +61,12 @@
|
||||||
|
|
||||||
<div id="afterheader">
|
<div id="afterheader">
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<p><a href="/n3blog/files/YAquaBubbles.dmg"> <img src="/n3blog/img/softwares/yaquabubbles/screenshot1.png" alt="Screenshot" title="screenshot" /> </a></p>
|
<p><a href="/Scratch/files/YAquaBubbles.dmg"> <img src="/Scratch/img/softwares/yaquabubbles/screenshot1.png" alt="Screenshot" title="screenshot" /> </a></p>
|
||||||
|
|
||||||
<p>YAquaBubbles est un économiseur d’écran réalisé avec QuartzComposer.
|
<p>YAquaBubbles est un économiseur d’écran réalisé avec QuartzComposer.
|
||||||
Il s’agissait d’un simple essai mais le résultat était plaisant.</p>
|
Il s’agissait d’un simple essai mais le résultat était plaisant.</p>
|
||||||
|
|
||||||
<p><a href="/n3blog/files/YAquaBubbles.dmg"><span class="nicer">➥</span> YAquaBubbles.dmg</a></p>
|
<p><a href="/Scratch/files/YAquaBubbles.dmg"><span class="nicer">➥</span> YAquaBubbles.dmg</a></p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -57,13 +57,13 @@
|
||||||
|
|
||||||
<div id="afterheader">
|
<div id="afterheader">
|
||||||
<div class="corps">
|
<div class="corps">
|
||||||
<p><a href="/n3blog/files/YClock.dmg"> <img src="/n3blog/img/softwares/yclock/screenshot1.png" alt="Screenshot" title="screenshot" /> </a></p>
|
<p><a href="/Scratch/files/YClock.dmg"> <img src="/Scratch/img/softwares/yclock/screenshot1.png" alt="Screenshot" title="screenshot" /> </a></p>
|
||||||
|
|
||||||
<p>YClock est un économiseur d’écran qui vous donne l’heure.i
|
<p>YClock est un économiseur d’écran qui vous donne l’heure.i
|
||||||
Il a trois thèmes clair, rouge et noir.
|
Il a trois thèmes clair, rouge et noir.
|
||||||
Il utilise une base de QuartzComposition + du code objective-C pour la gestion du nombre d’images par seconde.</p>
|
Il utilise une base de QuartzComposition + du code objective-C pour la gestion du nombre d’images par seconde.</p>
|
||||||
|
|
||||||
<p><a href="/n3blog/files/YClock.dmg"><span class="nicer">➥</span> YClock.dmg</a></p>
|
<p><a href="/Scratch/files/YClock.dmg"><span class="nicer">➥</span> YClock.dmg</a></p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -60,16 +60,16 @@
|
||||||
<p>Une gestion <em>simple</em>, <em>sécurisée</em> et <em>portable</em> de ses mots de passes web.</p>
|
<p>Une gestion <em>simple</em>, <em>sécurisée</em> et <em>portable</em> de ses mots de passes web.</p>
|
||||||
|
|
||||||
<p>Souvenez vous d’<em>un</em> seul mot de passe de bonne qualité, le reste suis.
|
<p>Souvenez vous d’<em>un</em> seul mot de passe de bonne qualité, le reste suis.
|
||||||
Lisez mon <a href="/n3blog/fr/blog/ypassword.html">article</a> pour les détails.</p>
|
Lisez mon <a href="/Scratch/fr/blog/ypassword.html">article</a> pour les détails.</p>
|
||||||
|
|
||||||
<p>Ici vous trouverez :</p>
|
<p>Ici vous trouverez :</p>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>Un <a href="/n3blog/files/YPassword-1.6.zip">widget</a> ;</li>
|
<li>Un <a href="/Scratch/files/YPassword-1.6.zip">widget</a> ;</li>
|
||||||
<li>un <a href="/n3blog/files/forcePaste.app.zip">Applescript</a> pour simuler la copie dans les champs textes protégés ;</li>
|
<li>un <a href="/Scratch/files/forcePaste.app.zip">Applescript</a> pour simuler la copie dans les champs textes protégés ;</li>
|
||||||
<li>une <a href="/n3blog/fr/softwares/ypassword/web/">application web</a> écrite avec <a href="http://cappuccino.org">Cappuccino</a>,</li>
|
<li>une <a href="/Scratch/fr/softwares/ypassword/web/">application web</a> écrite avec <a href="http://cappuccino.org">Cappuccino</a>,</li>
|
||||||
<li>une <a href="/n3blog/fr/softwares/ypassword/iphoneweb/">application web</a> pour iPhone ;</li>
|
<li>une <a href="/Scratch/fr/softwares/ypassword/iphoneweb/">application web</a> pour iPhone ;</li>
|
||||||
<li>un <a href="/n3blog/files/getpass">script utilisable en ligne de commande</a>.</li>
|
<li>un <a href="/Scratch/files/getpass">script utilisable en ligne de commande</a>.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<p>Dans peu de temps je créerai une application iPhone pour YPassword.</p>
|
<p>Dans peu de temps je créerai une application iPhone pour YPassword.</p>
|
||||||
|
|
Loading…
Reference in a new issue