Bienvenue sur Think-Underground.com

vendredi, mai 9 2008

La correction orthographique sous Vim

Avant Vim 7.0, corriger les fautes d'orthographe d'un texte demandait de passer le buffer dans un programme externe comme aspell ou bien d'installer des scripts. Désormais, depuis la version 7.0, si vous voulez que Vim vous signale les fautes d'orthographe, et vous suggère d'autres mots pour vous aider à corriger vos erreurs, voici la démarche à suivre :

  • pour activer ou désactiver la correction orthographique utilisez :
:set spell

et

:set nospell
  • pour choisir la langue dans laquelle vous voulez effectuer la correction orthographique, utilisez l'affreuse commande
:setlocal spell spelllang=fr

que je vous recommande de la mettre dans votre .vimrc ou, si vous utilisez couramment plusieurs langues, associez leur des touches de raccourci.

  • enfin la commande précédente suppose que vous ayez un dictionnaire français (ou autre) à votre disposition. Si vim râle en disant
Alerte: Liste de mots "fr.utf-8.spl" ou "fr.ascii.spl" introuvable

générez alors une liste de mots à partir d'un dictionnaire, par exemple ceux d'ispell. Sous Linux vous les trouverez dans /usr/share/dict :

:mkspell /tmp/fr /usr/share/dict/french

puis en root déplacez ce fichier dans

/usr/share/vim/vimcurrent/spell

Les commandes utilisables ensuite sur les mots mal orthographiés (soulignés en rouge ou affichés sur un fond rouge selon votre configuration) sont :

  • En mode commande :
z= - pour proposer un liste de mots 
]s - pour aller au prochain mot mal orthographié
[s - pour aller au précédent mot mal orthographié
  • En mode insertion, à la fin d'un mot mal orthographié
Ctrl+x s - pour proposer une liste de mots

Il existe bien sûr une infinité d'autres commandes (enregistrer un mot comme bien orthographié, annuler une correction, ...) je vous recommande de passer par

:help spell

si vous voulez tout savoir :)

Voilà, plus de souci de fautes d'orthographe pour vous qui utilisez mutt et vim pour écrire vos courriels :D

jeudi, mai 8 2008

Beneath a Steel Sky : un jeu (maintenant gratuit) comme on n'en fait plus

Nous sommes au début des années 90, SCUMM, une plateforme de script développée par LucasArts nous offre quelques petite merveilles du jeu vidéo : Day of the Tentacle, Indiana Jones and the Fate of Atlantis, Monkey Island 2: LeChuck's Revenge, ... la liste est bien longue.
A quelques exceptions près on retrouve dans tous ces jeux un scénario travaillé et intéressant (mais non ce n'est pas une critique directe envers les jeux vidéos actuels ;) ), des puzzle ou des casse-tête parfois tordus, souvent difficiles, mais toujours amusants, et enfin un humour complètement décalé et très décapant.

Beneath a Steel Sky, sorti en 94 en est un parfait exemple. Pourquoi parler de ce jeu plutôt qu'un autre ? Car il est gratuit !!!

Gratuit il ne l'a pas toujours été[1]. Depuis 2003, un peu près 10 ans après sa sortie, le jeu est devenu freeware, c'est à dire gratuit. Excellente initiative, et très bonne nouvelle pour le projet ScummVM qui est une ré-implémentation libre de SCUMM. (Mise à jour le 08/06/2008 : comme le signale omega dans les commentaires, Beneath a Steel Sky est basé sur VirtualTheatre, à l'époque un concurrent direct de SCUMM. ScummVM est donc compatible avec et compatible VirtualTheater.)

Il ne vous coûtera donc pas un sou pour jouer à ce jeu, que vous soyez sous Windows, sous Linux ou sous Mac (et même plein d'autres supports, Palm, PSP, Windows CE, iPhone... la liste est très longue). Si vous avez la chance d'être sous Debian, vous trouverez même Beneath a Steel Sky dans les dépôts :

apt-get install beneath-a-steel-sky scummvm

Sinon il faudra vous rendre sur le site officiel de ScummVM pour télécharger ScummVM et Beneath a Steel Sky.

Je vous recommande fortement de jouer à ce jeu si vous aimez les jeux du genre Point 'n Click.
Si vous ne vous y êtes jamais frottés, je vous recommande aussi fortement d'y passer quelques heures. Vous vous sentirez sûrement un peu perdu au début. N'hésitez pas à chercher une solution complète sur internet pour débuter ou pour vous débloquer quand vous serez à court d'idées. Gardez quand même à l'esprit que c'est une vrai joie de pouvoir finir le jeu "tout seul" en faisant travailler votre observation et vous méninges :) Essayez d'entrer dans la logique du jeu et attachez vous à passer un peu de temps sur chaque énigme avant de vous abandonner à la solution de facilité qu'est la solution complète.

Le jeu se finit en une petite dizaine d'heures de jeu pour les habitués du genre. Je pense que même en essayant de faire le tour complet des dialogues et en bloquant un peu, vous aurez du mal à dépasser une quinzaine d'heures ce qui est très honorable pour un jeu vidéo. Certains jeu qui sortent actuellement on à peine 6 heures de durée de vie !

Le début de Beneath a Steel Sky Le début de Beneath a Steel Sky

Encore les décors de Beneath a Steel Sky Les décors sont sublimes même si focément depuis on a vu mieux :) Le jeu a quand même 15 ans !!!

Les décors de Beneath a Steel Sky Encore des décors. Notez la variété des environnements

Les bons vieux point 'n click : Beneath a Steel Sky L'interface est conviviale et finalement très intuitive

Les dialogues de Beneath a Steel Sky Les dialogues (ici en anglais, mais c'est paramétrable) sont doublés d'une piste audio (si vous téléchargez la version CD) qui ajoute beaucoup de charme au jeu

L'humour décapant de Beneath a Steel Sky L'humour de Beneath a Steel Sky est très décalé mais m'a bien fait sourire

Un vrai scénario dans Beneath a Steel Sky Le scénario est très travaillé, autour des thématiques proches de Blade Runner, Matrix et toute la clique

Profitez bien de ce jeu qu'un ami m'avait fait découvrir peu de temps après sa sortie et que je n'ai enfin pris le temps de jouer que très récemment. Aucun regret !

Notes

[1] Bonjour Yoda.

jeudi, avril 24 2008

Mon historique bash

J'ai vu l'idée ici et je trouve ça assez marrant : voici mon top 10 des commandes bash :

history | awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}'|sort -rn|head
104 vim
70 cd
63 ls
44 ssh
28 svn
20 man
19 killall
15 grep
14 cat
12 ps

Je m'étonne de ne pas y trouver apt-get et apt-cache que je pensais utiliser bien plus.

Rien de bien étonnant sinon : vim est largement en tête :) C'est peut-être aussi killall qui m'étonne. Je pense que ça doit venir du fait que je fais au moins un killall firefox par jour :( Vivement FF3

Et vous alors, votre top 10 ?

dimanche, avril 13 2008

Créer un dépôt SVN avec accès SVN+SSH

Le but de cet article est d'expliquer comment je mets en place un dépôt Subversion pour partager les sources d'un projet entre plusieurs utilisateurs sur un serveur privé.

J'aime créer un groupe du nom de mon projet dans lequel je mettrai toutes les personnes qui auront accès à ce projet :

addgroup mon_projet
adduser utilisateur1 mon_projet
adduser utilisateur2 mon_projet

Je crée ensuite un dépôt SVN dans le répertoire du projet (Je regroupe tous les dépôts SVN dans un même répertoire : /home/svn) :

cd /home/svn
svnadmin create mon_projet

Je modifie ensuite les droits sur le répertoire. En particulier, je le rends modifiable par le groupe mon_projet :

chown -R :mon_projet mon_projet
chmod -R g+w mon_projet
chmod g+s mon_projet/db

Ensuite, comme recommandé dans la documentation de ''Subversion'', je crée un fichier /usr/local/bin/svnserve :

#!/bin/bash
umask 002
/usr/bin/svnserve -r /home/svn/ "$@"

Si vous voulez empêcher complètement l'accès au sources aux personnes ne faisant pas partie du groupe mon_projet vous pouvez mettre umask 007.

Et voilà, les utilisateurs du groupe mon_projet peuvent dès à présent utiliser Subversion en svn+ssh:// sur mon serveur :

svn mkdir svn+ssh://mon_serveur/mon_projet/trunk
svn checkout svn+ssh://mon_serveur/mon_projet/trunk
...

Il est possible de faire mieux niveau sécurité, en particulier si votre serveur est public où que vous n'êtes pas convaincu des bonnes intentions de tous vos utilisateurs (qui se retrouvent avec quasiment tous les droits sur le dépôt)... mais c'est un début.

Mysql : créer un utilisateur et lui donner des droits limités

On n'a pas toujours une interface graphique pour créer des utilisateurs MySQL et leur attribuer des droits. Voici quelques commandes de base.

Création d'un utilisateur d'accès local uniquement :

CREATE USER myuser@localhost;

Mise à jour de son mot de passe :

UPDATE USER SET Password = PASSWORD('mypassword') WHERE user = 'myuser';

Création d'une base de données spécifique pour cet utilisateur :

CREATE DATABASE myuser;

On donne tous les privilèges à myuser sur sa base :

GRANT ALL on myuser.* TO 'myuser'@'localhost';

On recharge tous les privilèges :

FLUSH PRIVILEGES;

mardi, avril 1 2008

Modification de fichiers audios note par note

Voilà qui est sacrément bluffant : Melodyne l'éditeur audio de celemony_ permettra (dès automne 2008) de séparer les notes d'un enregistrement audio pour pouvoir manipuler chaque note indépendamment à la manière d'un fichier midi (tout en gardant la qualité de l'enregistrement audio de base). Je reste assez sceptique même si la vidéo est très bluffante.
En tous les cas j'imagine que c'est super pratique pour les guitaristes qui veulent supprimer la piste de guitare d'une chanson pour en faire un playback ou pour corriger les fausses notes dans les enregistrements live... sans compter toutes les possibilités de création musicale.
Une affaire à suivre !

- page 1 de 80