Developpez.com - Rubrique JetBrains

Le Club des Développeurs et IT Pro

JetBrains présente Mono, une nouvelle police de caractères open source

Spécialement conçue pour les développeurs

Le 2020-01-16 07:51:07, par Stéphane le calme, Chroniqueur Actualités
« Il y a un an, nous nous étions fixé un objectif très ambitieux: créer une police pour rendre le travail avec le code plus confortable pour tout le monde. Et nous l'avons fait ! » a noté JetBrains. Quel serait le problème avec les autres polices à espacement fixe ? L'éditeur explique que :

« Pendant la majeure partie de notre journée, en tant que développeurs, nous examinons le code. Et il n'est pas étonnant que nous soyons toujours à la recherche de la meilleure police pour rendre la lecture du texte à l'écran plus agréable à nos yeux. Cependant, la logique de nombreuses polices populaires ne prend pas toujours en compte la différence entre la lecture du code et la lecture d'un livre. Nos yeux se déplacent le long du code d'une manière très différente, devant souvent se déplacer verticalement aussi souvent qu'horizontalement, ce qui s'oppose à la lecture d'un livre où ils glissent le long du texte toujours dans la même direction.

« Par conséquent, tout en travaillant sur JetBrains Mono, nous nous sommes concentrés, entre autres, sur les problèmes pouvant provoquer une fatigue oculaire lors de longues sessions de travail avec du code. Nous avons considéré des choses comme la taille et la forme des lettres; la quantité d'espace entre eux, un équilibre naturellement conçu dans les polices monospace; des détails inutiles et des distinctions floues entre les symboles, comme les I (i majuscule) et les 1 (chiffre) par exemple; et avons programmé des ligatures lors du développement de notre police ».

C'est dans ce contexte que JetBrains a présenté JetBrains Mono, une nouvelle police de caractères open source spécialement conçue pour les développeurs.

Principales caractéristiques

Augmentation de la hauteur pour une meilleure expérience de lecture : les caractères restent standard en largeur, mais la hauteur des minuscules est maximisée. Cette approche maintient les lignes de code à la longueur attendue par les développeurs et améliore le rendu, car chaque lettre occupe plus de pixels.


JetBrains a fourni un comparatif à certaines autres polices. Consolas, par exemple, a des lettres légèrement plus larges. Cependant, ils sont encore assez petits, ce qui vous oblige à augmenter la taille d'un point pour rendre la police plus lisible. Par conséquent, les lignes de code ont tendance à être plus longues que prévu.

Les lettres de largeur standard de JetBrains Mono aident à garder les lignes à la longueur attendue.


ligatures spécifiques au code : une ligature est un caractère composé de deux symboles joints ou plus. Traditionnellement, il a été introduit comme une technique peu encombrante dans les textes imprimés. Dans la programmation, cette technique est adoptée pour montrer les opérateurs et est utilisée principalement à deux fins:
  • Pour réduire le bruit en fusionnant les symboles et en supprimant les détails afin que les yeux soient moins sollicités.


    avec ligature


    sans ligature
  • Pour équilibrer plus efficacement les espaces blancs en décalant les glyphes dans certains cas.


    avec ligature


    sans ligature

Cette police dispose de 138 ligatures spécifiques au code

Adapté à la lecture du code : la forme des ovales se rapproche de celle des symboles rectangulaires. Cela rend l'ensemble du motif du texte plus clair. Les côtés extérieurs des ovales garantissent qu'il n'y a pas d'obstacles supplémentaires pour vos yeux, car ils numérisent le texte verticalement.

Disponible dans 143 langues : parmi lesquelles l'Anglais, le Français, le Luxembourgeois, l'Allemand, l'Italien et bien d'autres encore.

Disponible en libre et en open source

Télécharger JetBrains Mono
Voir le projet sur GitHub

Source : JetBrains
  Discussion forum
13 commentaires
  • Uther
    Expert éminent sénior
    Non, c'est une œuvre normale soumise au droit d'auteur, c'est a dire qu'elle est propriétaire a moins que la licence n'accorde explicitement des droits requis par le libre et l'open-source.
  • earhater
    Membre éprouvé
    Cet avis est purement subjectif mais après l'avoir essayé je n'aime pas du tout, ça rend vraiment les caractères rigides je trouve. Pour ceux qui veulent se faire un avis je vous laisse une capture d'écran avec et sans :

    Ici c'est source code pro :



    Ici c'est mono :

  • gb_68
    Membre confirmé
    Je trouve un peu bizarre leur choix d'avoir augmenté la taille des minuscules par rapport aux majuscules. Si, d'après leurs arguments, cela permet un meilleur rendu des lettres minuscules, cela les rend moins différenciables des majuscules, un comble vu le nombre de langages/conventions qui utilisent du CamelCase/camelCase. Avec des identifiants composés de plusieurs mots, la lisibilité risque d'être moindre.
  • Jipété
    Expert éminent sénior
    Envoyé par hotcryx
    Envoyé par Neckara
    C'est moi ou le >= est plus grand que le > ?
    Plus haut car centré verticalement.
    , il a raison : le chevron seul est plus étroit en largeur et en hauteur, j'ai récupéré l'image qu'il a postée et j'ai fait une comparaison par superposition, c'est très net.

    Envoyé par hotcryx
    Remarque perso: toute leur police en italic, bof pas top.
    + 1.
  • Uther
    Expert éminent sénior
    En effet c'est nécessaire vu que la police conserve l'aspect Monospace (chaque caractère à la même largeur) habituel des police de programmation. du coup, le <= prenant deux caractères, le &#10877; doit être plus gros pour occuper la même place sans laisser d'énormes espace des deux cotés.

    Je serais curieux de voir un police de développeur qui ose commettre le crime de ne pas conserver largeur des caractères.
  • Neckara
    Inactif
    Il n'y a pas déjà des polices de caractères dans Libre/Open Office qui s'appelaient mono ?

    Par contre la police proposée est très dangereuse pour les >= <=, qu'on peut assez facilement confondre avec des < ou > si on n'y prête pas gaffe.
  • grunk
    Modérateur
    Pour le coup faut vraiment pas être réveiller pour pas voir la différence


    Au pire il suffit de désactiver les ligatures dans l'IDE pour retrouver les caractères normaux.

    Perso je l'aime bien , je la préfère à consolas ou firacode
  • Jipété
    Expert éminent sénior
    Envoyé par Stéphane le calme
    Augmentation de la hauteur pour une meilleure expérience de lecture :
    Et c'est quoi la différence entre une meilleure expérience de lecture et une meilleure lecture tout court ?

    De toute façon, des gens qui nous proposent une image pour comparer deux polices où on ne voit pas le même texte, moi j'ai pas confiance…
    Ce qu'a bien compris earhater avec ses deux images, un seul regret : il aurait fallu moins de texte et les deux images côte à côte.

    Envoyé par Neckara
    Il n'y a pas déjà des polices de caractères dans Libre/Open Office qui s'appelaient mono ?
    Non, c'est juste une extension du nom de la police, pour préciser le style.
    Dans l'install récente d'une 6.1.5.2 on trouve :
    • DejaVu Sans Mono
    • FreeMono
    • Liberation Mono
    • Linux Libertine Mono O
    • Noto Mono
    • Noto Sans Mono
  • Neckara
    Inactif
    Envoyé par grunk
    Pour le coup faut vraiment pas être réveiller pour pas voir la différence
    C'est moi ou le >= est plus grand que le > ?

    Un de mes collègues m'a montré il y a quelques jours un code dans une police similaire avec ligature, et je voyais difficilement la différence entre > et >=, d'autant plus qu'il travaillait sur petit écran.

    Je croyais que la police que mon collègue m'a présenté était Mono, je me suis peut-être trompé.
  • BBric
    Membre régulier
    Ils ont enlevé tout le serif, ce qui peut rendre certains caractères un peu basiques et avoir comme conséquence de resserrer les caractères.
    Je suis pas fan des r et l arrondis ou du f façon écolier, et pas non plus des parenthèses arrondies qui prennent trop de place et qui sont même plus difficiles à lire.
    La police c'est souvent une affaire de goût, difficile de la rationaliser, je reste sur Courier 10 pitch. elle a un léger aspect flouté qui rend mieux que le net je trouve.