Tous les articles
Windows 1.4.1 Version 26 septembre 2026

Marquez, découpez, publiez : Verbinal pour Windows 1.4.1

Deux versions Windows sont arrivées sur le Microsoft Store à un jour d’intervalle, et voici l’histoire des deux. La 1.4.0 a ajouté les repères sur les images et les cubes, l’export de figures, le Calcul distant, et un assistant IA qui voit ce que montrent les visionneuses. La 1.4.1 ajoute les découpes — seulement la partie d’un fichier qu’il vous faut, découpée par le CADC ou sur votre propre ordinateur — ainsi que les corrections qu’ont révélées les essais de la 1.4.0 publiée.

La dernière fois que ce blogue a parlé de Windows, c’était pour la 1.3.0, la version qui apportait les Flux de travail, l’assistant IA et la Visionneuse de cubes Direct3D. Depuis, l’application Linux a avancé vite, et à la 1.4.4 elle était devenue la référence : la 1.4.0 pour Windows a commencé comme un plan de parité mesuré contre Linux, point par point, plutôt que comme une liste d’idées. C’est la mesure qui s’est révélée la plus féconde. Elle a trouvé des coordonnées fausses de plusieurs dizaines de secondes d’arc sur les en-têtes modernes, ce qu’aucune liste de fonctionnalités n’aurait trouvé.

La 1.4.0 est arrivée sur le Store le 25 septembre et la 1.4.1 a suivi le 26, façonnée par ce qu’ont révélé les essais de la 1.4.0 publiée. Plutôt que deux articles à un jour d’écart, celui-ci couvre les deux. Si Verbinal pour Windows est nouveau pour vous, l’article sur la 1.3.0 reste la visite de l’application ; celui-ci porte sur ce qui est nouveau.

Les découpes : seulement la partie d’un fichier qu’il vous faut

Une tuile MegaPipe pèse 1,6 Go. Si ce qui vous intéresse est une galaxie dans l’un de ses coins, télécharger la tuile entière coûte une bonne partie de l’après-midi et une bonne part de votre disque. La 1.4.1 ajoute les découpes, et il y a deux façons d’en faire une.

Découpé par le CADC. Lorsque l’archive offre son service de découpe SODA pour un fichier, le CADC découpe la région de son côté et n’envoie que celle-ci : quelques mégaoctets de la tuile, en pleine résolution. Dans l’onglet Fichiers d’une observation, chaque fichier a un bouton Découpe… — actif là où le CADC peut découper le fichier, grisé avec la raison là où il ne le peut pas — et Recherche en a un pour l’observation que vous consultez. Il ouvre un éditeur : un cercle ou un rectangle défini par AD, Déc et taille, en degrés ou en sexagésimal, ou tracé directement sur l’empreinte du fichier — glissez pour déplacer, glissez son point pour redimensionner, glissez ailleurs pour tracer — et, pour un cube, une plage de longueurs d’onde. Il part de la cible et des longueurs d’onde de votre dernière recherche lorsqu’elles tombent sur le fichier, vérifie à la saisie (hors du fichier, en partie hors, une bande que le fichier n’a pas), et estime la taille avant que vous ne vous engagiez.

La découpe se télécharge comme tout autre téléchargement, dans la barre d’état et en continuant si vous changez d’écran, et arrive dans Recherche comme la fiche de l’observation, marquée Découpe avec sa région et s’ouvrant sur une note indiquant qu’il ne s’agit pas de l’observation complète. Observation d’origine vous ramène à l’ensemble — dans Recherche si vous l’avez déjà, sinon retrouvée dans Rechercher par son identifiant d’observation. Et les cases Découpe spatiale et Découpe spectrale de Rechercher font désormais ce qu’elles annoncent : le téléchargement d’une ligne est découpé au cercle et aux longueurs d’onde de la recherche.

Découpé sur cet ordinateur. Une fois un fichier téléchargé, vous pouvez en découper des morceaux localement : aussitôt, hors ligne, aussi souvent que vous le voulez — et pour des fichiers que le CADC ne découpe pas du tout, comme ceux de son miroir HST. C’est le même bouton et le même éditeur ; lorsque les deux façons sont possibles pour un fichier, Découpé par choisit entre elles, et la taille affichée pour une découpe locale est exacte plutôt qu’estimée.

Une découpe locale est faite pour être confiée à d’autres outils sans avoir à s’en excuser. Les pixels sont copiés, pas convertis — le même BITPIX, la même mise à l’échelle. L’en-tête est celui du fichier, avec sa taille, chaque pixel de référence et chaque section de pixels corrigés pour la découpe, la distorsion SIP toujours valide, et une ligne HISTORY qui dit d’où elle vient. Elle consigne sa position dans le fichier parent (LTV/LTM), de sorte que DS9 et IRAF y affichent les numéros de pixels du fichier d’origine — c’est ainsi qu’un catalogue MegaPipe, exprimé en pixels de la tuile, continue de s’aligner. Chaque HDU porte un CHECKSUM et un DATASUM neufs qu’astropy et fitsverify acceptent.

  • Les fichiers multi-extensions gardent leur forme. Une trame HST garde les SCI, ERR et DQ des puces sur lesquelles tombe la région ; une trame MegaPrime garde ses CCD, chacun découpé selon ses propres coordonnées célestes ; ou vous cochez exactement les images voulues sous Images. Une région tombant dans l’espace entre deux puces est refusée plutôt que renvoyée vide.
  • Les cubes sont découpés au rectangle sur chaque plan, ou à une plage de longueurs d’onde — sur un axe de longueur d’onde, de fréquence, d’énergie ou de nombre d’onde, ou sur un axe de vitesse avec la fréquence au repos de sa raie.
  • Les fichiers fpack compressés à la manière du CFHT (RICE_1, 16 bits) sont découpés en un .fits ordinaire, en ne décompressant que les tuiles que touche la région.
  • Les cartes de poids suivent. La carte .weight d’une tuile MegaPipe est proposée sous Découper aussi et découpée avec exactement la même boîte de pixels. Que les deux reposent sur les mêmes pixels est vérifié, pas supposé : le même ciel en chaque point d’une grille couvrant l’image, au centième de pixel.
  • Un fichier qui ne peut pas être découpé dit pourquoi — pas de coordonnées célestes, seulement des coordonnées approximatives, galactiques ou B1950, compressé autrement (avec le conseil funpack), ou tronqué.

Quelques mégaoctets d’une tuile de 1,6 Go, en pleine résolution — découpés là où vivent les données, ou sur votre propre machine à partir du fichier que vous avez déjà.

Des repères sur les images et les cubes

La 1.4.0 vous permet de dessiner sur vos données. Rectangles, cercles, bulles et texte se posent sur les images FITS et sur les cubes, ancrés au ciel, aux pixels de l’image ou à un canal du cube : un repère posé sur une source reste sur la source quand vous déplacez la vue, zoomez ou rouvrez le fichier. Un panneau Repères les liste, les filtre et les stylise — couleur, épaisseur, taille d’étiquette, contour —, des poignées redimensionnent celui qui est sélectionné, et chaque forme porte son étiquette au bout d’une ligne de rappel.

La Visionneuse FITS de Verbinal pour Windows, en français, avec une image HST WFC3/UVIS d’un champ de M31 dans la palette Viridis et un étirement linéaire. Le panneau Repères liste cinq repères tracés par l’agent IA — un cercle sur la source M31-B086, une légende indiquant « Pic ≈ 1 057 électrons » et trois étiquettes de texte — et deux bulles d’aide pointent les boutons Repères et Dessiner.
Des repères sur une image HST WFC3/UVIS de M31. Les cinq ont été tracés par l’assistant IA — la liste indique « par l’agent » — et les bulles au-dessus des boutons Repères et Dessiner sont des pointeurs de la visite guidée, les mêmes qu’un assistant utilise pour vous montrer une commande.

Un clic droit sur un repère, ou la touche Menu, ouvre un menu qui lui est propre : modifier l’étiquette, copier ses coordonnées sous une forme que lit la boîte de recherche, centrer la vue dessus, Rechercher ici, exporter une figure autour, ou le supprimer. Depuis la 1.4.1, une image ouverte depuis Recherche propose aussi Découper… : un repère sur une source est à une étape d’une découpe de celle-ci. Les repères sont conservés par fichier — et par extension dans un fichier multi-extensions, car une trame MegaPrime contient une image par CCD et un repère en pixels posé sur un CCD n’a rien à faire sur un autre. Ils s’exportent en JSON avec provenance ou en fichier de régions DS9.

Des figures qui portent les repères

Également dans la 1.4.0 : la Visionneuse FITS exporte des figures. Exportez toute la vue, ou choisissez une zone — le bouton Sélectionner une zone, ou Ctrl-glisser — en PNG ou PDF à 1×, 2× ou 4×, avec en-tête et pied de page, vos repères, un thème sombre ou clair, et un arrière-plan transparent si la figure doit aller sur une diapositive. Les figures de cubes portent aussi leurs repères. Une figure 4× trop grande pour être rendue indique l’échelle réellement atteinte plutôt que de vous en donner moins en silence.

Une figure exportée par Verbinal pour Windows à partir d’un cube spectral JWST MIRI, jw01178001001_09101_00002_mirifushort_s3d : une planche sombre titrée du nom du fichier, avec la taille de la région et la date, une étoile entourée d’un repère rectangulaire jaune étiqueté « Star » au bout d’une ligne de rappel, et une barre de couleurs Viridis en bas.
Une figure exportée d’un cube JWST MIRI, avec un repère étiqueté Star. L’en-tête nomme le fichier, la région et la date ; le pied de page porte la barre de couleurs, sa plage et la palette. C’est le fichier exporté, pas une capture d’écran.

Un assistant qui voit, qui pointe, et qui attend son tour

L’assistant IA de Verbinal pilote l’application au moyen du Model Context Protocol, et jusqu’à la 1.4.0 il travaillait à l’aveugle : il pouvait lire des nombres dans une image, mais pas la regarder. Désormais, il le peut. get_fits_image, get_cube_image et get_cell_image lui remettent ce que montrent réellement les visionneuses et les cellules du calepin : marquer la source la plus brillante et étiqueter son pic devient quelque chose qu’il peut vérifier sur l’image avant de vous dire que c’est fait. Les repères de la capture ci-dessus sont son œuvre.

Il peut aussi pointer. list_ui_targets et point_at_ui posent une bulle d’aide sur une commande à l’écran — même dans une section que quelqu’un a repliée —, et c’est ce qui anime la visite guidée dont dispose désormais chaque écran. Dans la 1.4.1, cela s’étend aux boîtes de dialogue, et open_settings ouvre les Réglages à la bonne section : un assistant peut vous montrer où un réglage se fait. Il ne le fait pas à votre place : les réglages restent les vôtres, et certains — le serveur MCP et l’application automatique, les points de terminaison des services, l’image de calcul, les connexions — ne devraient être touchés que par vous.

La 1.4.0 a ajouté 31 outils, et le total dépasse maintenant 170. N’importe quel client MCP peut s’en servir : AGENTS.md, dans le dépôt et dans le dossier d’installation de l’application, explique à Codex, Copilot, Cursor, Gemini et aux autres comment se connecter, rédigé pour que l’agent le suive. Une barre d’activité montre ce sur quoi l’application et un agent travaillent, deux courts signaux sonores marquent le début et la fin du travail d’un agent, et les changements qui attendent votre approbation survivent désormais au redémarrage de l’application.

Deux corrections de la 1.4.1 comptent plus que leur taille ne le laisse croire. La première concerne les redémarrages. Fermer Verbinal laissait le pont MCP de chaque assistant bloqué, sans rien répondre, jusqu’à ce que vous le reconnectiez à la main — et un assistant lancé avant Verbinal y renonçait pour toute la session. Le pont répond maintenant aussitôt « not running » tant que Verbinal est fermé, répond lui-même à la poignée de main de l’assistant, et reprend la connexion au démarrage de Verbinal.

La seconde concerne le contrôle, et elle a été trouvée pendant les essais. start_background_apply lançait n’importe quel changement en attente qu’un assistant lui demandait — y compris un changement destructif qui attendait votre approbation. Il ne lance plus que ce que l’application automatique aurait appliqué sans vous. Un changement destructif — supprimer un fichier, arrêter une session, effacer dans le stockage — vous attend toujours, et chaque outil qui propose un changement termine désormais sa description par cette règle, tirée du code même qui l’applique.

Le Calcul distant : le code de votre assistant, sous vos yeux

Un assistant pouvait déjà exécuter du code sur CANFAR avec run_code, et jusqu’à la 1.4.0 cela ne laissait aucune trace dans l’application. Le Calcul distant est l’écran prévu pour cela : l’état de la session verbinal-compute avec Démarrer et Arrêter, chaque exécution — celles de l’assistant comme les vôtres — avec son code, sa sortie et ses erreurs, et une zone pour lancer vous-même un extrait Python ou Bash. Il utilise votre propre allocation CANFAR et reste désactivé tant que vous n’avez pas choisi une image de calcul dans les Réglages ; d’ici là, il explique comment en configurer une, avec un lien vers l’image de surveillance verbinal-execution.

Le Portail signale la session comme celle de l’assistant, la barre d’activité montre une exécution tant qu’elle est en cours, et avec Suivre l’activité de l’agent activé, l’application amène le Calcul distant au premier plan quand un assistant exécute du code — l’exécution se déroule devant vous plutôt que dans votre dos. Il a sa propre tuile sur l’écran d’accueil, entre Portail et Stockage, et comme eux il reste verrouillé tant que vous n’êtes pas connecté, quel que soit le chemin : sa tuile, une étape d’un flux de travail, ou le navigate_to d’un assistant.

L’écran d’accueil de Verbinal pour Windows, en français, avec les tuiles Portail, Calcul distant, Stockage, Rechercher, Recherche, Visionneuse FITS, Visionneuse de cubes, Calepin, Flux de travail, Guide IA et Assistant IA, et la barre d’activité au bas de la fenêtre.
L’écran d’accueil, réorganisé dans la 1.4.0 : d’abord les modules qui demandent une connexion — Portail, le nouveau Calcul distant, Stockage —, puis Rechercher, Recherche, les visionneuses, Calepin, Flux de travail et les tuiles IA. La barre d’activité court au bas de la fenêtre.

Le Portail, disposé comme sur Linux

Le Portail de Windows donnait au formulaire de lancement les deux tiers de la page, que vous lanciez quelque chose ou non. Dans la 1.4.1, il adopte la disposition à laquelle Linux est arrivé : charge de la plateforme, stockage et tâches par lots en haut ; les sessions actives sur toute la largeur ; puis les images CANFAR à côté de vos lancements récents — et une seule colonne dans une fenêtre étroite. Lancer une session ouvre le formulaire dans une boîte de dialogue, Utiliser cette image l’ouvre avec cette image choisie, et un lancement qui échoue ramène le formulaire tel qu’il était, avec la raison.

Le Portail de Verbinal pour Windows en 1.4.1, en français : Charge de la plateforme, Stockage et Tâches par lots en haut ; trois sessions actives, dont une étiquetée comme le calcul distant de l’assistant ; et la carte Images CANFAR, filtrée par type de session et par projet, à côté des Lancements récents.
Le Portail en 1.4.1 — un seul bouton Lancer une session clairement identifié, la session de calcul de l’assistant étiquetée comme telle, et la carte des images avec une rangée pour le type de session et une autre pour le projet.

La carte des images a changé dans les deux versions. La 1.4.0 a ajouté une recherche dans le registre de conteneurs de la plateforme, pour les images que le catalogue organisé ne liste pas, et une vue de ce qui est installé dans une image avant de la lancer. La 1.4.1 filtre la carte comme le fait Linux, selon un même ensemble de règles : seulement les images qu’un lancement peut démarrer — les images desktop-app, des applications publiées à l’intérieur d’une session de bureau, en ont disparu —, avec le type de session en rangée de puces, Tout en premier, et le projet en seconde rangée reconstruite à partir de ce que laisse le type. Le raisonnement se trouve dans les notes de Linux 1.4.4.

Rechercher et Recherche, au quotidien

  • Tout se copie. Un clic droit sur n’importe quelle cellule des résultats copie sa valeur, les détails de l’observation ou la ligne — et, avec plusieurs lignes choisies, toutes — en texte séparé par des tabulations qui se colle dans un tableur ; Ctrl+C fait de même. Les détails se lisent de la même façon depuis chaque écran, jusqu’à la position écrite comme la lisent la boîte de recherche, Simbad et DS9.
  • Garder une observation sans son fichier. Enregistrer dans Recherche garde ses détails et une place pour vos notes sans rien télécharger. Supprimer le fichier libère le disque et garde les notes, et Télécharger ramène le fichier — pour une découpe, la même découpe.
  • Un clic ouvre l’observation. Cinq colonnes étaient des liens de filtre silencieux : cliquer sur le nom d’une cible restreignait le tableau au lieu d’ouvrir la ligne. Un clic n’importe où sur une ligne l’ouvre maintenant aussitôt ; restreindre à une valeur est passé dans le menu contextuel.
  • Une longue recherche peut être annulée. Annuler apparaît à côté de l’indicateur de chargement, dans le formulaire et dans l’éditeur ADQL, et les résultats déjà affichés restent.
  • L’ADQL est vérifié avant de s’exécuter. L’éditeur valide la requête selon le TAP_SCHEMA du service à la saisie, liste chaque problème (cliquez sur l’un d’eux pour y aller), et garde Exécuter désactivé tant que la requête ne peut pas s’exécuter. Les requêtes de l’éditeur sont désormais conservées dans Recherches récentes, elles aussi.
  • Les calepins ouvrent les fichiers .py au format « percent » et .md sous forme de cellules et les enregistrent dans leur propre format ; les sorties affichent SVG, Markdown, LaTeX et HTML ; et, comme dans Jupyter, une cellule qui se termine par une expression en affiche la valeur.

Ce que la mesure a révélé

Les corrections de ces deux versions viennent de deux sources : la mesure de Windows contre Linux 1.4.4 pour la 1.4.0, et les essais de la 1.4.0 publiée sur le Store pour la 1.4.1. Certaines étaient de mauvaises réponses plutôt que des aspérités, et celles-là méritent d’être dites clairement :

  • La rotation des en-têtes modernes. Les en-têtes qui décrivent la rotation par une matrice PC — ceux de JWST, entre autres — la voyaient ignorée. L’échelle restait juste et la rotation devenait silencieusement nulle : l’erreur était nulle au pixel de référence et grandissait vers le bord du champ, jusqu’à 40–90″. Le réticule, Aller à, la synchronisation entre onglets, les repères et les lectures célestes de l’assistant étaient tous décalés d’autant. Les tests qui auraient dû le détecter passaient avec une tolérance large de onze pixels ; ils sont plus stricts maintenant, et vont jusqu’au coin opposé du champ, là où une erreur de rotation est la plus grande.
  • La distorsion, dans l’autre sens. Sur les images dont l’en-tête ne donne que la distorsion SIP directe — les trames calibrées de HST, entre autres —, passer du ciel à un pixel sautait la distorsion : jusqu’à 6,6 pixels (0,26″) sur une trame WFC3. Une position tombe maintenant sur son propre pixel.
  • « Données publiques seulement » n’avait jamais fonctionné. Cocher la case faisait échouer chaque recherche avec « Function [GETDATE] is not found in TapSchema » : le service TAP du CADC n’a pas de fonction pour l’heure courante. L’application Linux avait trouvé et corrigé le même bogue hérité dans la 1.3.7 ; Windows écrit maintenant l’heure de la recherche en toutes lettres, comme le fait la recherche du CADC elle-même.
  • Les fichiers propriétaires. DataLink, par lequel passe chaque téléchargement, n’était pas connecté : les fichiers d’une observation propriétaire étaient refusés même à leur propriétaire. Il se connecte maintenant, et le jeton ne va jamais qu’au CADC.
  • Les très grandes images. Tout ce qui dépassait 512 Mo était refusé, quelle que soit la mémoire libre. La limite est maintenant la mémoire réellement disponible : une tuile MegaPipe de 1,6 Go s’ouvre, affichée à 40 % tandis que ses pixels complets restent derrière chaque lecture, coordonnée, repère et export.
  • Des téléchargements qui ne produisaient rien étaient enregistrés comme réussis, et un téléchargement échoué ou annulé pouvait tronquer un fichier que vous aviez déjà. Ni l’un ni l’autre n’arrive plus, et les produits JWST récupèrent le fichier scientifique plutôt que le premier artefact listé.
  • Viridis n’était pas viridis. La Visionneuse FITS utilisait une approximation allant du sarcelle à l’orange, et les figures sortaient étiquetées VIRIDIS. Elle utilise désormais les tables de couleurs de la Visionneuse de cubes : chaque palette a le même aspect dans les deux.
  • Les repères et les chemins. Le même fichier rouvert sous C:/Users/… plutôt que C:\Users\…, ou avec d’autres majuscules, revenait sans ses repères. Un chemin est maintenant lu d’une seule façon, quelle que soit son écriture.
  • Un Windows en français refusait « 10.68 » dans les champs AD et Déc d’Aller à. Ils lisent maintenant une position comme le reste de l’application : avec un point ou une virgule décimale, ou en sexagésimal.
  • Windows 32 bits. Les paquets x86 des versions 1.3.2 et 1.3.3 contenaient un pont MCP 64 bits : un assistant ne pouvait pas se connecter. Chaque paquet construit maintenant son propre pont, pour sa propre architecture — et la 1.4.0 ajoute des paquets ARM64 à côté des x64 et x86.

Confidentialité, code source, et comment l’obtenir

La posture de confidentialité n’a pas bougé. Aucune analytique, aucune télémétrie, aucun service tiers ; vos identifiants restent dans le Windows Credential Manager, et le trafic va directement à CANFAR et au CADC en HTTPS. La seule nouveauté à connaître est mince : une découpe faite par le CADC lui envoie la région demandée, puisque c’est ainsi qu’il sait quoi découper. Une découpe faite sur votre ordinateur n’envoie rien du tout.

Verbinal pour Windows est gratuit, libre et open source sous la licence GNU Affero General Public License v3.0, avec le code source complet à github.com/szautkin/CanfarDesktop et plus de 3 400 tests que GitHub Actions exécute désormais sous Windows à chaque envoi, avec CodeQL à leurs côtés. Il fonctionne sous Windows 10 (1809) ou version ultérieure, sur x64, x86 et ARM64 ; les calepins demandent Python 3.8 ou plus récent. Rechercher et les deux visionneuses fonctionnent sans connexion ; le Portail, le Calcul distant et le Stockage demandent un compte CADC gratuit.

Procurez-vous Verbinal pour Windows 1.4.1

Gratuit, libre et open source sous AGPL-3.0. Windows 10 (1809) ou version ultérieure sur x64, x86 ou ARM64, et un compte CANFAR gratuit. Rechercher et les visionneuses fonctionnent sans connexion — et vos données restent sur votre machine.

Obtenez-le sur le Microsoft Store Code source