Affichage des articles dont le libellé est Programmation. Afficher tous les articles
Affichage des articles dont le libellé est Programmation. Afficher tous les articles

vendredi 5 septembre 2008

Binaires MPD 0.14

Bon salut tout le monde, je poste juste un petit message pour insérer ici les binaires pour de la dernière version du Music Player Daemon, disponible dans le .deb suivant :

  • Compilé sous : Ubuntu (CPP 4.2.3)
  • Paquet pour Debian
Et voici le lien : www.cairotes.org/dev/files/mpd-0.14_0.14-1_i386.deb

(Pour tous ceux qui veulent un tuto pour la COMPILATION, poster un commentaire)

mercredi 13 août 2008

Personnaliser son bash avec des couleurs

Salut tout le monde,

petit mini-tutoriel sur la personnalisation du Shell de Linux (ou encore de Cygwin), plus précisément de... Bash. C'est le Shell (interface de ligne de commande) par défaut de Linux, donc c'est celui que vous utilisez probablement. De toute façon, les diférences sont minimes dans la plupart des cas. Ce que je vais vous apprendre à faire, c'est tout simplement changer votre "Prompt". Le prompt c'est quoi ?

Eh beh le prompt c'est tout simplement, la partie qui s'affiche à l'écran en permanence dans le shell, juste avant les commandes que vous entrez. Par exemple : pistache@pistache-laptop:~$.

Le prompt par défaut est souvent un peu tristounet, sans couleurs, mais nous allons changer ça. Alors déjà, comment modifier le prompt ? C'est tout simple, il est stocké dans la variable d'environnement PS1.
Essaiez d'entrer "echo $PS1" et vous verrez votre prompt. Le prompt est presque toujours dynamique. C'est à dire que le nom d'utilisateur n'est pas stocké en dur dans le prompt, on met plutot le code \*, ou * est remplacé par une lettre, ce qui formera un code qui sera remplacé par Bash pour mettre la valeur correspondante. Voilà un petit tableau récapitulatif des codes qu'on peut utiliser dans la Bash :

  • \a : an ASCII bell character (07)
  • \d : the date in "Weekday Month Date" format (e.g., "Tue May 26")
  • \D{format} : the format is passed to strftime(3) and the result is inserted into the prompt string; an empty format results in a locale-specific time representation. The braces are required
  • \e : an ASCII escape character (033)
  • \h : the hostname up to the first '.'
  • \H : the hostname
  • \j : the number of jobs currently managed by the shell
  • \l : the basename of the shell’s terminal device name
  • \n : newline
  • \r : carriage return
  • \s : the name of the shell, the basename of $0 (the portion following the final slash)
  • \t : the current time in 24-hour HH:MM:SS format
  • \T : the current time in 12-hour HH:MM:SS format
  • \@ : the current time in 12-hour am/pm format
  • \A : the current time in 24-hour HH:MM format
  • \u : the username of the current user
  • \v : the version of bash (e.g., 2.00)
  • \V : the release of bash, version + patch level (e.g., 2.00.0)
  • \w : the current working directory, with $HOME abbreviated with a tilde
  • \W : the basename of the current working directory, with $HOME abbreviated with a tilde
  • \! : the history number of this command
  • \# : the command number of this command
  • \$ : if the effective UID is 0, a #, otherwise a $
  • \nnn : the character corresponding to the octal number nnn
  • \\ : a backslash
  • \[ : begin a sequence of non-printing characters, which could be used to embed a terminal control sequence into the prompt
  • \] : end a sequence of non-printing characters

C'est en anglais mais ça devrait pas être dur à comprendre si ?

Le plus dur là dedans, c'est les "non-printing characters", les deux derniers de la liste. Ils sont très utiles (obligatoires en fait) et servent à entourer les autres codes. En fait Bash fait le compte des charactères du prompt en comptant les codes, il faut lui dire explicitement de pas le faire en entourant touts les codes avec \[ et \].

Par exemple un prompt très simple pourrait être : \[\u\]@\[\h\]$, qui donnerait : user@host$.

Pour tester votre prompt, écrivez :PS1="\[\u\]@\[\h\]$"

Et remplacez la valeur de PS1 par votre valeur.

Oui mais ça ne nous dit pas comment changer la couleur tout ça ? Eh bien c'est encore des autres codes :

Pour ouvrir la partie en couleurs :\e[x;ym Pour fermer : \e[m


Et vous remplacez X et Y par votre code de couleur, que vous prenez de ce tableau :
Color Code
Black 0;30
Blue 0;34
Green 0;32
Cyan 0;36
Red 0;31
Purple 0;35
Brown 0;33
Blue 0;34
Green 0;32
Cyan 0;36
Red 0;31
Purple 0;35
Brown 0;33
Le premier nombre, définit le format d'écriture de la couleur (souligné, gras, transparent, léger, couleur de fond, etc ,etc, essaiez les valeurs pour voir).

N'oubliez pas les non-printing characters (\[ et \]), c'est hyper important, le retour à la ligne ne marchera pas et votre bash sera vraiment foireux.

Après un peu de temps on peut obtenir un bash vraiment à son gout. Perso le mien est :

[ (compte de commandes) version de bash, périphérique, heure ]
utilisateur@hostname:repertoire$

\[\e[3;32m\][\[\e[m\] (\#) \[\e[4;31m\]\s \V\[\e[m\]\[\e[0;31m\] in device \l\[\e[m\]\[\e[3;32m\],\[\e[m\] \[\e[0;33m\]\t\[\e[m\] \[\e[3;32m\]]\[\e[m\]\n\[\e[1;32m\]\u\[\e[m\]\[\e[1;34m\]@\[\e[m\]\[\e[1;32m\]\H\[\e[m\]\[\e[0;36m\]:\[\e[m\]\[\e[1;34m\]\w\[\e[m\]\[\e[0;0m\]$\[\e[m\]

Vous pouvez vous en inspirer sans problème... On copyrighte pas les prompt à ce que je sache (pas encore ?)


Ce qui me donne :


Voilà... Merci à tous !


Sources :
PS: J'ai parlé de Matthieu Aubry et de PhpMyVisites au dernier post. Eh bien PhpMyVisites n'est plus, il a été remplacé par Piwik, beaucoup plus évolué. Son site : piwik.org

mercredi 9 avril 2008

Les bugs indetectés du concepteur VS2008

Raah, petite crise de nerfs. J'ai passé 20 minutes à chercher POURQUOI les objets (contrôles) de mon objet XAML n'apparaissait pas dans le code .NET .

En gros, des membres de ma classe manquaient à l'appel... Et aucune erreur de programmation, du moins dans la liste d'erreurs.

Car en effet, le problème était que le concepteur ne générait aucune erreur, ni dans la liste ni dans le designer. Et j'ai trouvé tout à fait par hasard que j'avait oublié un espace entre deux arguments dans le code XAML.

Vive le hasard, mais quand on a un code XAML de 100 lignes et qu'on a ce problème et qu'on ne le sait pas, comment peut-on donc le découvrir ? Bah on peut pas, à moins d'être trés trés chanceux.

¿? Pistache, rancunier envers Microsoft pour cet oubli dans Cider.

mercredi 11 juillet 2007

DLL .NET Wrapper pour les tâches planifiées

Voilà une petite trouvaille pour un utilisateur sur le forum C# de MP :

Un wrapper pour gérer les tâches planifiées de Windows, disponible ici avec un projet de test :

http://www.mvps.org/emorcillo/en/code/shell/tasksched.shtml

De plus regardez un peu ici :
http://www.mvps.org/emorcillo/en/code/index.shtml
Il y a des DLL assez intéressantes pour communiquer avec Windows et faire des choses relativement difficiles..

lundi 9 juillet 2007

Windows Management Intrumentation

Connaissez vous le WMI ?

C'est une technologie de l'OS relativement peu connue des développeurs .NET, qui permet d'avoir accès à des informations à l'intérieur du systèmes, comme le BIOS, la carte mère, les disques physiques, les processus, des informations sur l'OS, sur les tâches planifiées et beaucoup de choses du genre !

WMI consiste en une base de données WQL (derivé du SQL) qui contient des infos sur le système. (Exemple : pour accèder au BIOS on utilise Win32_Bios)

Plus d'informations sur WMI .NET :

http://msdn2.microsoft.com/fr-fr/library/ms257340(vs.80).aspx

vendredi 6 juillet 2007

Foire Aux Questions VB .NET

Voici l'adresse de la FAQ des languages .NET sur le forum MoteurProg :

http://www.forum.moteurprog.com/FAQ/FAQ.php?ID_Forum=75

Elle inclut les FAQ de toutes les sous catégories (C#, VB .NET, C++ .NET, J# .NET, ASP .NET, etc, etc)

PS : N'oubliez pas qu'un traduction de la FAQ C# vers le language VB .NET est en cours.

samedi 30 juin 2007

 
Pistaaaaaaaaaaaaaaache