Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#2426 Le 15/12/2010, à 18:21

helly

Re : /* Topic des codeurs couche-tard [2] */

Ça se finit quand ?

Vendredi midi.

Possible. Quelles modifs ?

C'est à moi qu'il faut le dire, jsuis pas trop en topic en ce moment? Pour l'instant je suis sur :

Spécifications du CLFB, version 0.2
Rédacteur principal : ArkSeth/Elzen.
Contributeurs : grim7reaper, Pylade.
Les présentes spécifications sont ouvertes à la discussion. Les points notés requis sont indispensables à la validation du logiciel. Ceux notés optionnels ne le sont pas, mais leur réalisation serait vivement appréciée.
Pour toute question ou suggestion concernant ces spécifications, ainsi que pour toute demande d'aide sur le codage, en l'absence d'un espace dédié sur fadrienn.irlnc.org, se référer au TdCCT actuel.
Deux modes existent pour le programme, un « mode bavard » et un « mode silencieux ». Lorsque le premier est actif, le programme affiche sur la sortie standard, avant chaque opération, une ligne explicitant la commande Shell à utiliser pour obtenir le même résultat (lorsque existant), précédé par un caractère "#".
Le mode silencieux est activé par défaut, et les options permettant de basculer en mode bavard sont ci-dessous toutes indiquées comme optionnelles.
Points d'ordre général
Requis :
    – Le programme candidat doit être placé sous licence Libre.
Optionnel :
    – La licence doit être virale (type GNU GPL).
Lancement du programme
Requis :
    – Lancé sans paramètres, le programme démarre le mode interactif.
    – Avec le paramètre « --help » affiche un message d'aide et se termine.
Optionnel :
    – Lancé avec le paramètre « --verbose », le programme démarre en mode bavard.
    – Si une commande clfb est passée en paramètre, le programme exécute cette commande et se termine.
Commandes internes
Requis :
    – « !help » affiche un message d'aide.
    – « !quit » termine le programme.
Optionnel :
    – « !verbose » bascule de l'état silencieux à l'état bavard et réciproquement.
    – Une auto-complétion permet de faciliter l'entrée de commandes.
Gestion de fichiers
Requis :
    – « fichier » ou « fichier 0 » ouvre le fichier avec le programme défini par défaut.
    – « fichier - » demande une confirmation avant de supprimer le fichier.
    – « fichier1 fichier2 + » copie fichier1 vers fichier2.
    – « fichier1 fichier2 - » déplace fichier 1 vers fichier2.
    – « fichier ? » affiche les méta-informations du fichier (droits d'accès, taille, date de dernière modif…) de la façon la plus lisible possible.
    – « fichier #motif » modifie les droits d'accès selon le motif indiqué (« u+r » ; « 744 » ; « rwxr--r-- »…)
Optionnel :
    – « fichier X » (avec X entier > 0) ouvre le fichier avec le Xème programme alternatif.
    – « fichier1 fichier2 * » crée un lien physique fichier2 pour fichier1.
    – « fichier1 fichier2 < » crée un lien symbolique fichier2 pour fichier1.
    – « fichier1 fichier2 » déplace ou copie selon si fichier2 est sur la même partition que fichier1 ou non.
    – « fichier ? » affiche également des méta-informations spécifiques selon les types de fichiers (type de compression ; hauteur et largeur d'une image ; tags d'un fichier média…)
Spécificités pour les répertoires
Requis :
    – « . » ou « ./ » liste le contenu du répertoire courant.
    – « repertoire » se déplace vers le nouveau répertoire courant.
    – « repertoire1 repertoire2 + » exécute la copie en profondeur (copie du répertoire + copie des fichiers récursivement).
Optionnel :
    – par extension du comportement de « . », « repertoire » vérifie si le répertoire demandé est le répertoire courant, et liste son contenu dans ce cas.
    – « repertoire X » ouvre le répertoire avec le Xe programme externe par défaut.
    – les liens physiques sur les répertoires n'étant pas autorisés, « repertoire1 repertoire2 * » crée un nouveau répertoire et crée des liens physiques vers tous les fichiers contenus.

Je souffre (enfin bon, là j'ai encore Vim donc ça va ).

Jsais pas trop si on peut nous obliger à utiliser java.
Les cons de la fac avaient pas installé javac, mais j'amenais mon pc donc bon…


Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.

Hors ligne

#2427 Le 15/12/2010, à 19:22

Elzen

Re : /* Topic des codeurs couche-tard [2] */

grim7reaper a écrit :

Edit : Java en cours, bon pour le moment j'ai droit à Vim mais après ça sera Eclipse obligatoire mad

En même temps, faire du Java est la seule raison plausible d'utiliser Eclipse, et Eclipse (quand il ne rame ni ne délire pas trop) rend quand même plus agréable le fait de coder en Java (Le raccourcis clavier magique : Ctrl+Shift+O). Donc te plaint pas trop tongue

(Et hésite pas à demander si tu as besoin d'un coup de main big_smile)

helly a écrit :

Pour l'instant je suis sur :

'Me semble que j'en ai pas réécrit depuis.

Mais on avait une petite hésitation sur le cas où on voudrait copier/déplacer un fichier sous un nom comme "-" ou "1"… j'avais suggéré d'utiliser \- et \1 dans ce cas, mais je sais plus si vous avez dit ce que vous en pensez.
L'autre solution, c'est de virer la commande fichier1 fichier2 sans rien derrière, comme ça, on sait que fichier2 doit être interprété comme un nom si et seulement si il y a un troisième mot derrière. Ce qui est peut-être aussi bien.

Ah, pour faire un touch sur un fichier, on peut peut-être faire une commande du genre fichier ! (auquel cas ça permet aussi de créer un fichier vide), mais il reste à déterminer comment créer un nouveau répertoire.

Hors ligne

#2428 Le 15/12/2010, à 19:49

Kanor

Re : /* Topic des codeurs couche-tard [2] */

Intéressant tout ça , j'essaye de me motiver

Hors ligne

#2430 Le 15/12/2010, à 20:36

Kanor

Re : /* Topic des codeurs couche-tard [2] */

« fichier X » (avec X entier > 0) ouvre le fichier avec le Xème programme alternatif.

Je ne comprends pas cette commande ça semble pas facile à utiliser si c'est bien un truc de ce type

firefox 1
vlc 2
amarok 3
/home/kanor/mavideo.avi 2

C'est ça ?

edit il y a une différence normalement entre

« fichier ? » affiche les méta-informations du fichier (droits d'accès, taille, date de dernière modif…) de la façon la plus lisible possible.

et

 fichier ? » affiche également des méta-informations spécifiques selon les types de fichiers (type de compression ; hauteur et largeur d'une image ; tags d'un fichier média…)

Dernière modification par Kanor (Le 15/12/2010, à 20:40)

Hors ligne

#2431 Le 15/12/2010, à 20:46

Elzen

Re : /* Topic des codeurs couche-tard [2] */

Nop tongue

Le truc doit repérer le type de fichier (selon le type mime, en théorie, quoiqu'après tout, vu qu'on a besoin de ça qu'au moment du lancement, il est aussi envisageable que le clfb ouvre le fichier pour regarder ce qu'il y a dedans pour choisir en connaissance de cause, mais j'pense que le type mime c'est plus pratique ^^) et lancer l'appli par défaut.

Donc si le truc est un fichier multimédia et que nautilus (par exemple) t'ouvre VLC quand tu doubles-cliques sur un fichier multimédia, les commandes fichier et fichier 0 doivent faire ouvrir le fichier par VLC.

Par contre, quand tu fais un clic droit sur un fichier dans un navigateur de fichiers graphique, tu as un menu « ouvrir avec » (ou quelque chose d'approchant), qui te liste les autres applis installées pouvant ouvrir ce type de fichier (pour un fichier multimédia, il y a aussi totem et kaffeine, par exemple).
Et donc la commande « fichier X » permet d'ouvrir le fichier avec le Xième logiciel de cette liste (ici, fichier 1 ouvre avec totem et fichier 2 avec kaffeine)


Pour le fichier ?, c'est une option : le comportement requis est d'afficher les méta-informations génériques (taille, date de dernière modif, etc.…).
Mais je rajoute une fonctionnalité optionnelle (donc au choix du développeur de la mettre en place ou pas), qui est d'afficher également des méta-informations spécifiques en fonction du type de fichier (dans un navigateur graphique, la hauteur et la largeur apparaissent souvent quand on fait clic droit → propriétés sur un fichier image, par exemple).

Donc c'est au choix : si tu fais la version basique, fichier ? affiche seulement les méta-infos générales, si tu fais la version améliorée, ça affiche les infos générales et les infos supplémentaires.

Dernière modification par ArkSeth (Le 15/12/2010, à 20:50)

Hors ligne

#2432 Le 15/12/2010, à 20:53

grim7reaper

Re : /* Topic des codeurs couche-tard [2] */

ArkSeth a écrit :

En même temps, faire du Java est la seule raison plausible d'utiliser Eclipse, et Eclipse (quand il ne rame ni ne délire pas trop) rend quand même plus agréable le fait de coder en Java (Le raccourcis clavier magique : Ctrl+Shift+O). Donc te plaint pas trop tongue

(Et hésite pas à demander si tu as besoin d'un coup de main big_smile)

J'avais déjà un peu (2 ou 3 semaine) utilisé Eclipse il y a 2 ans, on verra si ça suffiras.
Mais ouais, si j'ai besoin d'info et que je trouve pas par moi-même je demanderais ici wink.

Mais on avait une petite hésitation sur le cas où on voudrait copier/déplacer un fichier sous un nom comme "-" ou "1"… j'avais suggéré d'utiliser \- et \1 dans ce cas, mais je sais plus si vous avez dit ce que vous en pensez.
L'autre solution, c'est de virer la commande fichier1 fichier2 sans rien derrière, comme ça, on sait que fichier2 doit être interprété comme un nom si et seulement si il y a un troisième mot derrière. Ce qui est peut-être aussi bien.

Je suis plutôt pour la solution 2.

Ah, pour faire un touch sur un fichier, on peut peut-être faire une commande du genre fichier ! (auquel cas ça permet aussi de créer un fichier vide), mais il reste à déterminer comment créer un nouveau répertoire.

Le touch est-il vraiment important ?
Dans 90% des cas on s'en sert pour créer un fichier vide, pas pour changer le timestamp. Si on se limite à ça, il suffit de dire que

fichier

crée le fichier s'il n'existe pas.
Bon, si on veut un vrai touch, alors je plussoie ton idée.
Sinon pour le ls, fichier caché ou pas ?


Enfin, petite question : les commandes

fichier -
fichier ?

devraient pouvoir s'appliquer sur les répertoire aussi, nan ?


@thsirtman : ouais j'ai pensé à Bash aussi, mais finalement j'ai préféré bosser mon Haskell (et je suis pas une lumière en Bash, et je n'aime pas vraiment la syntaxe)

Hors ligne

#2433 Le 15/12/2010, à 21:03

Kanor

Re : /* Topic des codeurs couche-tard [2] */

Dans 90% des cas on s'en sert pour créer un fichier vide, pas pour changer le timestamp. Si on se limite à ça, il suffit de dire que

fichier

crée le fichier s'il n'existe pas.

je ne suis pas fan c'est un truc à créer un fichier dés que tu fais une faute de frappe (je suis très fort dans ce domaine )

Hors ligne

#2434 Le 15/12/2010, à 21:05

helly

Re : /* Topic des codeurs couche-tard [2] */

Bref, vous vous mettez d'accord sur les specs, après jveux bien essayer.


Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.

Hors ligne

#2435 Le 15/12/2010, à 21:16

grim7reaper

Re : /* Topic des codeurs couche-tard [2] */

Kanor a écrit :

Dans 90% des cas on s'en sert pour créer un fichier vide, pas pour changer le timestamp. Si on se limite à ça, il suffit de dire que

fichier

crée le fichier s'il n'existe pas.

je ne suis pas fan c'est un truc à créer un fichier dés que tu fais une faute de frappe (je suis très fort dans ce domaine )

Oui, c'est vrai que c'est l'inconvenient.

Donc autant adopter

fichier !

et à la limite pour un répertoire on peut faire

dir/ !

?
Bon c'est pas très élégant de se baser sur la présence du /, donc si vous avez une meilleure idée smile

Dernière modification par grim7reaper (Le 15/12/2010, à 21:17)

Hors ligne

#2436 Le 15/12/2010, à 21:20

Elzen

Re : /* Topic des codeurs couche-tard [2] */

Kanor a écrit :

je ne suis pas fan c'est un truc à créer un fichier dés que tu fais une faute de frappe (je suis très fort dans ce domaine )

Ç'mon avis aussi.

En fait, je prenais plutôt le truc dans l'autre sens, même si je l'ai tourné différemment en rédigeant mon post : fichier ! crée le fichier s'il n'existe pas. Mais si le fichier existe, tant qu'à faire, autant faire un touch, comme ça on a fait quelque chose (et ça évite d'avoir à tester l'existence du fichier, puisque touch a déjà ce comportement (ne serait-ce que pour le mode verbose si vous utilisez une fonction intégrée à votre langage pour l'action réelle))

grim7reaper a écrit :

Sinon pour le ls, fichier caché ou pas ?

J'aurais tendance à dire non par défaut, oui avec un paramètre. Encore faut-il trouver le bon paramètre…
Vu comme sont définis les fichiers cachés, ça pourrait être « . », peut-être (à voir si on tolère le risque de faute de frappe entre « . . » et « .. »)

Edit : dans ce cas, on pourrait envisager que quand on passe le nom d'un répertoire suivi du paramètre en question alors qu'on est pas dans ce répertoire, il affiche son contenu quand même… après s'y être déplacé, ou sans bouger… à voir…

grim7reaper a écrit :

devraient pouvoir s'appliquer sur les répertoire aussi, nan ?

C'est la petite subtilité de ma spec : je commence par donner le comportement attendu pour les fichiers, puis je précise les spécificités des répertoires tongue
En clair : tout ce qui est indiqué pour les fichiers normaux est valable aussi pour les répertoires, j'ai juste précisé quelques trucs supplémentaires pour le traitement de ces fichiers-là en particulier.

grim7reaper a écrit :

Je suis plutôt pour la solution 2.

Ouais, à la réflexion, il est fort probable que moi aussi. Disons que je vire la commande « fichier1 fichier2 » de la spec wink

grim7reaper a écrit :

Bon c'est pas très élégant de se baser sur la présence du /, donc si vous avez une meilleure idée smile

J'y avais pensé aussi, mais je ne l'avais pas dit pour la même raison… faute de mieux, ça a le mérite d'être une solution possible (sinon, peut-être « repertoire / » ? Mouais, ou pas…)

Dernière modification par ArkSeth (Le 15/12/2010, à 21:24)

Hors ligne

#2437 Le 15/12/2010, à 21:37

grim7reaper

Re : /* Topic des codeurs couche-tard [2] */

ArkSeth a écrit :

Ç'mon avis aussi.

En fait, je prenais plutôt le truc dans l'autre sens, même si je l'ai tourné différemment en rédigeant mon post : fichier ! crée le fichier s'il n'existe pas. Mais si le fichier existe, tant qu'à faire, autant faire un touch, comme ça on a fait quelque chose (et ça évite d'avoir à tester l'existence du fichier, puisque touch a déjà ce comportement (ne serait-ce que pour le mode verbose si vous utilisez une fonction intégrée à votre langage pour l'action réelle))

J'approuve également.

Edit : dans ce cas, on pourrait envisager que quand on passe le nom d'un répertoire suivi du paramètre en question alors qu'on est pas dans ce répertoire, il affiche son contenu quand même… après s'y être déplacé, ou sans bouger… à voir…

Oui, ça serait plus proche du comportement d'un ls (parce que sinon on limite le ls au répertoire courant…).
Reste à trouvé ce fameux paramètre hmm

C'est la petite subtilité de ma spec : je commence par donner le comportement attendu pour les fichiers, puis je précise les spécificités des répertoires tongue

Ha ok ! Tout devient plus clair smile.

Hors ligne

#2438 Le 15/12/2010, à 22:28

Pylades

Re : /* Topic des codeurs couche-tard [2] */

The Uploader a écrit :

[…]

cours avec formatage OOo absent a écrit :

Gestion automatisée de la mémoire : Fiabilité accrue des applications

Je dirai juste : LOL.


The Uploader a écrit :

[…]

cours avec formatage OOo absent a écrit :

Langage compilé (l'aspect multiplateforme est apporté par la VM Java)

Être compilé mais lent à ce point, c'est cumuler les défauts. Et il est aussi multiplateforme que C#.


The Uploader a écrit :

[…]

cours avec formatage OOo absent a écrit :

Documentation intégré au code (javadoc génère la doc d'après les commentaires)

Quel progrès !
(Ceci est une révolution. Il faut tout racheter.)



The Uploader a écrit :

[…]

cours avec formatage OOo absent a écrit :

Permet de développer tout type d'application

[…]

Même un kernel, trop fort !


tshirtman a écrit :

(la théorie étant qu'il n'est pas bon d'utiliser CPP au lieu de C ni de mélanger les deux si on veut un max' de perfs sans utiliser l'assembleur, correct ?)

http://shootout.alioth.debian.org/u32q/ … calc=chart

et penser qu'on peut faire du meilleur assembleur que gcc -O3 c'est souvent ne pas avoir vérifié…

après, la rapidité d'un programme dépends 1000* plus de l'efficacité des algos utilisés, que du langage utilisé…

Un gros +1…


grim7reaper a écrit :

[…]
Oui, on tourne un peu en rond (comme Gnome vs KDE), mais en même temps si je trolle sur VHDL vs Verilog (ou J vs K) je risque d'être moins suivi big_smile.
[…]

HDL, je connais, VLDL aussi ; mais VHDL, je ne vois pas… hmm


tongue


grim7reaper a écrit :

[…]
et à la limite pour un répertoire on peut faire

dir/ !

?
Bon c'est pas très élégant de se baser sur la présence du /, donc si vous avez une meilleure idée smile

Mais si, c'est très bien.


Dites, je suggère que la commande à appliquer (quand elle existe) ne se trouve pas en fin de ligne mais au début. Cela vous va-t-il ?


Pour le déplacement de fichiers, je suggère :

> fichier_orig fichier_nouveau

“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#2439 Le 15/12/2010, à 22:36

The Uploader

Re : /* Topic des codeurs couche-tard [2] */

<goûts et couleurs>
Eclipse ça pue, Netbeans c'est mieux (et pas que pour le Java : CPP, Ruby, Python, et plein d'autres plugins rajoutant des langages+types de projets sont disponibles, même si Eclipse fait pareil il paraît)! tongue
</goûts et couleurs>

Dernière modification par The Uploader (Le 15/12/2010, à 22:37)


- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10

Hors ligne

#2440 Le 15/12/2010, à 23:47

Rolinh

Re : /* Topic des codeurs couche-tard [2] */

Pourquoi sortir l'artillerie lourde alors que vim est parfait? tongue
(bon, j'avoue, NetBeans pour JAVA (beurk) ou PHP (très gros beurk) c'est sympa)

Mais franchement: NetBeans pour CPP, Python ou Ruby j'ai envie de dire WTF.

(d'humeur trollesque ce soir ^^ )

Hors ligne

#2441 Le 16/12/2010, à 00:05

Pylades

Re : /* Topic des codeurs couche-tard [2] */

Ouais, pour coder il faut un éditeur de texte, un compilateur ou un interpréteur, et éventuellement un make ou un débuggeur.
Sinon, à quoi ça sert ces trucs lourds et inconfigurables ? En plus on a du mal à voir réellement ce qu'on fait avec ; et ensuite c'est la galère pour distribuer son code…

Dernière modification par Pylade (Le 16/12/2010, à 00:06)


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#2442 Le 16/12/2010, à 00:05

compte supprimé

Re : /* Topic des codeurs couche-tard [2] */

Bn;

#2443 Le 16/12/2010, à 00:08

Rolinh

Re : /* Topic des codeurs couche-tard [2] */

Pylade a écrit :

à quoi ça sert ces trucs lourds et inconfigurables ?

C'est bien la question que je me posais neutral

Hors ligne

#2444 Le 16/12/2010, à 00:42

grim7reaper

Re : /* Topic des codeurs couche-tard [2] */

Rolinh a écrit :

Pourquoi sortir l'artillerie lourde alors que vim est parfait? tongue

Parce qu'on ne me laisse pas le choix -_-"

Hors ligne

#2445 Le 16/12/2010, à 00:46

Rolinh

Re : /* Topic des codeurs couche-tard [2] */

Quel monde cruel... sad

Hors ligne

#2446 Le 16/12/2010, à 00:48

grim7reaper

Re : /* Topic des codeurs couche-tard [2] */

J'ai une astuce.
Il suffit que je fasse le TP chez moi à l'avance (avec Vim smile), et hop je suis tranquille.
J'espère qu'ils donneront les sujets à l'avance, comme pour le C++…

Édit : je pensais coder ce soir, mais là je viens d'avoir le gros coup de barre (je me suis juste posé sur le canapé et j'ai dormi 1h :-S) donc je pense pas faire long feu…

Dernière modification par grim7reaper (Le 16/12/2010, à 00:50)

Hors ligne

#2447 Le 16/12/2010, à 00:51

Rolinh

Re : /* Topic des codeurs couche-tard [2] */

C'est pour quoi comme TPs que ces cruels personnages te contraignent à utiliser autre chose que vim? mad
Tu n'as pas de portable?

Hors ligne

#2448 Le 16/12/2010, à 00:55

grim7reaper

Re : /* Topic des codeurs couche-tard [2] */

Rolinh a écrit :

C'est pour quoi comme TPs que ces cruels personnages te contraignent à utiliser autre chose que vim? mad

Du Java ! Qu'est-ce que ça pourrait être d'autres…
Je n'avais pas ce problème en C++.

Tu n'as pas de portable?

Si, mais il me sert de serveur et j'ai la flemme de le déplacer, même si au pire je pourrais me mettre un serveur ssh. Mais bon c'est pas trop ça le souci, sur leurs PC je me suis fait un Vim comme à la maison (faut juste que je puisse l'utiliser).
Enfin, je devrais survivre tant que c'est  pas VS (la seul fois où j'ai utilisé ce clicodrôme, il m'a fait chier pour une erreur de compil' fictive sur une ligne d'include qui a disparu en redémarrant le logiciel >_<)

Édit : BN…

Dernière modification par grim7reaper (Le 16/12/2010, à 01:02)

Hors ligne

#2449 Le 16/12/2010, à 01:00

Pylades

Re : /* Topic des codeurs couche-tard [2] */

Bah, dis-toi que si j'avais eu l'idée folle de prendre un cours pour ma corpo, le seul format dans lequel j'aurai eu le droit de l'envoyer est le .doc, donc estimes-toi heureux. ^^

(Nous sommes des martyrs… tongue)


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#2450 Le 16/12/2010, à 01:03

Rolinh

Re : /* Topic des codeurs couche-tard [2] */

yikes
Heureusement que ce n'est pas le cas chez nous! (LaTeX y est très populaire)

Hors ligne