Un fichier de 5,0 Mo aux lignes de 126 Ko,
ouvert en 0,34 s.

Un gros fichier est rarement difficile parce qu’il est gros. Il l’est à cause de sa forme : un journal, un bundle minifié ou la transcription d’un agent met cent kilo-octets sur une seule ligne, et un éditeur qui touche tout le tampon alors qu’il lui suffirait d’un écran les paie toutes. Studio 1.23.0 a cessé de le faire, et cette page dit ce qui a changé, mesuré face à 1.22.0 sur le même fichier.

Studio 1.24.0 · macOS 14+9.0 MB à télécharger

Quatre coûts sur tout le tampon, chacun trouvé en mesurant.

Aucun ne tenait à la taille du fichier. Chacun venait de l’éditeur qui faisait quelque chose à tout le texte quand un écran aurait suffi, et chacun a désormais sa règle dans le code, pour que la prochaine modification ne le ramène pas en silence.

01

La mise en page suit ce qui est à l’écran

Le texte est mis en page de façon non contiguë : ce qui est visible, le curseur et une cible de défilement le sont réellement, tout le reste est estimé. Avant, chaque frappe et chaque rafraîchissement demandaient d’abord la mise en page du document entier — et avec le retour à la ligne, une ligne de cent kilo-octets fait des centaines de rangées.

02

Taper ne relit pas le fichier

La table des débuts de ligne est mise à jour sur place à partir de la modification elle-même — les caractères changés, puis un décalage de tout ce qui suit — au lieu d’être jetée puis reconstruite depuis le premier octet à la frappe suivante.

03

Ouvrir un second fichier laisse le premier tranquille

Tout changement de préférence réappliquait la police et les couleurs à chaque tampon ouvert, dans chaque fenêtre, et un fichier ajouté aux Fichiers récents en est un. Seul un changement de police, de largeur de tabulation ou de thème le fait désormais : 982 ms sont devenues 58 ms avec ce fichier ouvert.

04

Recolorer est linéaire

Effacer les anciennes couleurs d’une zone se faisait jeton par jeton, chaque étape décalant tout le reste de la liste. C’est maintenant un seul remplacement, ce qui a fait passer un fichier source de 250 Ko de presque une seconde par frappe à environ un dixième.

05

La couleur là où vous regardez

Les fichiers jusqu’à 256 Ko sont colorés en entier. Au-delà, l’éditeur peint les lignes visibles et 200 de plus, et garde l’état dans lequel commence chaque ligne : un commentaire de bloc ouvert dix mille lignes plus haut se colore encore correctement quand vous sautez au milieu.

06

Les modifications non enregistrées sont sauvegardées comme des modifications

Au-delà de 64 Ko, la sauvegarde de secours ajoute ce que vous avez tapé à un journal au lieu de recopier tout le tampon après chaque rafale — jusqu’à ce que le journal atteigne la moitié du fichier, où une copie neuve coûte moins cher.

1.22.0 face à 1.23.0, sur le même fichier.

Une vraie transcription Claude Code de 5,0 Mo : 1 422 lignes, dont 10 de plus de 60 Ko, la plus longue de 126 Ko. Retour à la ligne activé, dans une vue de 1100 × 800.

MesureStudio 1.22.0Studio 1.23.0
Ouverture : lecture, mise en page, coloration, affichage9,9 s0,34 s
Mémoire ajoutée par l’ouverture+691 Mo+39 Mo
Une frappe, recoloration comprise546 ms41 ms
Ouvrir un autre fichier pendant qu’il est ouvert982 ms58 ms
Une frappe dans un fichier Swift de 250 Ko845 ms97 ms

Mesuré le 2 novembre 2026 : les builds Release des deux versions, l’une après l’autre, sur un Apple M5 Pro · 24 GB, macOS 27.0.1. L’éditeur est piloté sans fenêtre : ces chiffres sont sa part à lui — le serveur de fenêtres et l’écran ajoutent un peu à ce qu’une personne voit. La mémoire est la variation de l’empreinte physique. Les frappes sont la moyenne de vingt.

Ce qui reste vrai d’un gros fichier.

Estimer le texte que vous n’avez pas encore regardé est ce qui rend l’éditeur rapide, et l’estimation a des bords qui se voient.

  • La barre de défilement est une estimationDans un gros fichier, la taille de son curseur vient d’un texte pas encore mis en page, et elle bouge à mesure que vous faites défiler et qu’il l’est. Sur un fichier de 6 Mo de cette forme, la première estimation se trompait de presque moitié.
  • Sans retour à la ligne, la largeur grandit en défilantLa plage de défilement horizontal ne connaît que les lignes passées à l’écran : en croiser une plus longue plus bas l’élargit.
  • Les petits fichiers sont encore recolorés en entierJusqu’à 256 Ko, tout le document est recoloré à chaque frappe. C’est linéaire et non plus quadratique, mais c’est tout le document : 97 ms par frappe sur un fichier de 250 Ko dans cette mesure.
  • Revenir d’un aperçu met en page le texte au-dessusRevenir d’un aperçu de plugin à l’endroit où vous lisiez met en page tout ce qui précède, parce qu’une position construite sur des estimations tombe une douzaine de lignes à côté. Environ une demi-seconde à la fin d’un fichier de 6 Mo, une seule fois.
  • Tout le fichier est en mémoirePas de lecture en flux ni de pagination. Le texte est gardé en UTF-16, donc un fichier coûte à peu près deux fois sa taille sur disque, et au-delà de 24 Mo l’éditeur demande avant d’ouvrir.

Ouvrez-le sur
vos propres fichiers.

Notarisé par Apple, macOS 14 et versions ultérieures, Intel et Apple silicon.

Télécharger Studio 1.24.0 9.0 MB · toutes les versions, avec leurs empreintes