Archives de catégorie : Programmation

Aggressive commit of Intellisense suggestions in Visual Studio

Just to add a bit of context here: at the moment, I’m doing quite a lot of C++ programming on Windows environments, especially with Visual Studio.

And one thing I particularly dislike with Visual Studio’s default settings is that « aggressive commit » of Intellisense suggestions when you’re typing a type is disabled by default.

So, what is « aggressive commit of Intellisense suggestions », you ask…

Continuer la lecture de Aggressive commit of Intellisense suggestions in Visual Studio

Reblog: Problem with libGL.so on 64-bit Ubuntu

This isn’t a « true » reblog, but I just wanted to say that I had the same problem than the author of the blog post I’m about to link, and that his solution just did the trick for me too, so I thought I would give him full credit for the solution given it just worked completely unaltered in my situation too.

http://techtidings.blogspot.in/2012/01/problem-with-libglso-on-64-bit-ubuntu.html

Continuer la lecture de Reblog: Problem with libGL.so on 64-bit Ubuntu

Ubuntu, CMake, gdb, Eclipse et… Doctor Who

#RetirezMoiPhotoshop
#RetirezMoiPhotoshop

J’ai rencontré l’autre jour un problème qui s’est avéré assez compliqué alors que je cherchais à faire un truc simple à la base : je voulais ouvrir un projet de code C++ généré par CMake dans l’éditeur Eclipse et pouvoir le déboguer avec le débogueur inclus dans Eclipse. Sauf que bien sûr ça ne fonctionnait pas…

Et je me suis par la suite rendu compte qu’il ne s’agissait pas seulement d’un problème d’Eclipse mais que tous les logiciels utilisés à côté avaient également, à des degrés divers, leur part de responsabilité. Ou quand les logiciels se liguent pour faire chier au maximum !

Cet article est en rédaction depuis un moment, mais quel meilleur moment qu’aujourd’hui pour le publier puisque s’organise ce Dimanche à Lyon le Doctor Who Day ? Considérons donc qu’il s’agira de ma maigre participation vu qu’exceptionnellement, cet article sera narré (à grand renfort de gifs) par des acteurs de la série Doctor Who.

Bon, déjà que c’est un article au sujet extrêmement technique de base, pas sûr que l’on comprenne encore bien le problème de base ou la solution à y apporter, mais au moins une chose est sûre: cet article sera unique. Et c’était très amusant à écrire.

C’est parti. 🙂

Continuer la lecture de Ubuntu, CMake, gdb, Eclipse et… Doctor Who

Les fichiers temporaires, ces red shirts de la programmation

enlist-red-shirt2Dans la série télévisée Star Trek, les agents de sécurité sont reconnaissables à leur gilet rouges, c’est pour cela qu’on les appelle couramment les red shirts. Le souci avec ces personnages, c’est qu’ils ont une fâcheuse tendance à mourir dès leurs premières minutes à l’écran (pour une raison différente à chaque épisode), ainsi, les personnages principaux (récurrents) se rendent compte du danger imminent sans subir eux-mêmes de dommages (pratique, scénaristiquement, non ?). Il s’agit souvent de leur unique rôle dans l’épisode, et on ne connaît parfois même pas leur nom.

De manière assez inattendue, on peut trouver des similitudes entre un redshirt de Star Trek et un fichier temporaire en programmation : on en a besoin dans un contexte particulier, son nom ne nous intéresse parfois même pas, et il se doit d’être détruit à la fin, lorsqu’on en a plus besoin.

Cette fois, je vas parler des fichiers temporaires, d’une astuce et de quelques fonctions pour les gérer facilement en C. Notez bien: on est en environnement Linux. Il n’est pas garanti que ça marche (voire même c’est sûr, certaines choses ne marcheront pas) sur Windows ou ailleurs.

Continuer la lecture de Les fichiers temporaires, ces red shirts de la programmation

Python – lancer un programme local avec sh

Voici un petit truc pour gérer une situation à laquelle j’ai été confronté récemment.

Il existe en Python un petit module fort sympathique : sh. Comme son nom l’indique, il permet de gérer des commandes shell, leurs paramètres et leur sortie de façon vachement intuitive. Autant dire que Perl vient de perdre un de ses derniers avantages par rapport à Python 😛

Mais alors où est le problème ? Le problème, c’est que les commandes systèmes marchent bien, mais comment gérer les commandes locales, « ./a.out » par exemple (lancer le binaire a.out dans le dossier courant) ? C’est en fait plutôt facile !

 

python Continuer la lecture de Python – lancer un programme local avec sh

Notes sur Python — deuxième partie

Ça faisait un petit moment qu’il n’y avait pas eu d’article, enfin, pour le blog comme pour beaucoup d’autres choses, on va dire que la nouvelle saison démarre plus près de début Février que début Janvier…

Du coup, la saison 2014 du Scylardor commence par la suite de mes quelques notes sur certaines particularités du Python !

OH MON DIEU un python !! Vite, il me faut étudier son fonctionnement !

Continuer la lecture de Notes sur Python — deuxième partie

Publier la documentation Doxygen d’un projet sur sa page Github

Je travaille actuellement sur un projet documenté avec Doxygen et hébergé sur Github.

Doxygen est un outil de documentation assez puissant qui permet de générer des documentations en HTML ou en LaTeX par exemple. Perso je trouve ça assez rude de juste publier le Doxyfile (le fichier de configuration à donner à Doxygen pour générer la doc) du projet et de laisser les gens la générer eux-mêmes (à leur place, j’aurais la flemme). En attendant, ce n’est pas un projet suffisamment gros pour nécessiter un site Web entier à lui tout seul.

Comment faire alors pour rendre la documentation déjà toute faite disponible au plus grand nombre ? C’est sans compter que chaque projet hébergé sur Github peut avoir une page web qui lui est dédiée. Github propose une page web pour chaque projet, Doxygen permet de générer des docs en HTML.

Vous avez compris en quoi consiste la manip ? Remplaçons la page Web par défaut de Github pour y héberger notre documentation Doxygen !

doxygengithub
« i lurvz you babe »

Continuer la lecture de Publier la documentation Doxygen d’un projet sur sa page Github