Archives mensuelles : octobre 2008

Choix d’une police de caractères pour la programmation

Lorsque vous utilisez un IDE pour développer, la fonte(1) par défaut n’est pas forcément la meilleure. Il y a quelques critères qui sont importants.

Tout d’abord, il faut prendre conscience qu’un programme n’est pas un article de journal. Dans du code source, il est parfois bien plus difficile de faire la différence entre un l et un 1 en fonction du contexte. Il faut donc que la fonte permettent de distinguer clairement entre les caractères i, l et 1 (la voyelle i, la lettre L minuscule, le chiffre un). Idem pour o, O et 0 (la voyelle O minuscule, la voyelle O majuscule, le chiffre zéro).

Avec les écrans LCD récents, nous avons en général bien plus d’espace horizontal que d’espace vertical. Or il important d’avoir un maximum de lignes de programme sur l’écran. Il faut donc privilégier une petite fonte.

L’alignement du code étant important, il faut bien sûr utiliser une fonte de taille fixe où tous les caractères, même l’espace, ont la même largeur.

Le dernier critère est subjectif. Comme vous passer de nombreuses à lire du code, il faut que vous trouviez que la fonte que vous utilisez soit claire, lisible, et qu’elle vous plaise.

J’ai choisi la fonte Proggy. C’est une fonte bitmap, mais elle existe aussi en version TTF. Il y a plusieurs variantes. J’utilise Proggy Clean après en avoir essayé 2 ou 3. Certains préfèrent la fonte Dina, qui est basé sur Proggy. (Pour Linux, qui ne permet pas d’installer une fonte .fon, il existe une version TTF de Dina).

Exemple de font Proggy clean

Sur mon écran 19 pouces, j’affiche 57 lignes dans Eclipse avec Proggy, contre 47 avec la fonte par défaut.

Le seul reproche que je fais à cette fonte, est que sa largeur n’est pas la même en normal et en gras. Lorsque Eclispe met du code en couleur, il utilise du gras pour les mots réservés. Cela ne me gêne que pour ne pas avoir des lignes ayant plus de 80 caractères. Il n’y a aucun problème avec l’indentation du code.

Il existe de nombreux autres articles à ce propos, la plupart en anglais. En voici un en français, et l’autre en anglais :
Polices de caractères pour programmeur
Consolas and ClearType by Jeff Atwood

(1) Comme l’indique le titre, c’est bien du choix d’une police de
caractères dont il s’agit. Mais pour ne pas trop rallonger le texte, je vais utiliser le terme fonte, qui ne désigne pas tout à fait la même chose. Une fonte désigne l’ensemble des caractères correspondant aux mêmes caractéristiques de corps, graisse et italique au sein d’une même police. Vous pouvez en apprendre plus sur les polices d’écriture sur Wikipédia.