Développement : Kaleidoscope 3 fait toute la différence

Florent Morin |

Quelques mois après Kaleidoscope 2.4, l’outil de comparaison de fichiers de référence arrive enfin dans une nouvelle version majeure : interface graphique retravaillée, performances améliorées et moteur optimisé. Petit tour d’horizon de Kaleidoscope 3.

À l’installation, on remarquera immédiatement la nouvelle icône qui a été modernisée. Dès le premier lancement, l’app annonce la couleur, et c’est rien de le dire. Toute l’interface a été revue et bénéfice d’un mode sombre totalement intégré à macOS. Le design suit parfaitement les lignes de Big Sur et Monterey.

Dès le lancement, Kaleidoscope apparait comme bien plus moderne que son prédécesseur

Passée l’agréable surprise esthétique, on a envie d’en savoir plus sur les performances et les capacités en termes de comparaison de fichiers. Et là non plus, on n’est pas déçu. Car oui, Kaleidoscope 3 est une app universelle optimisée pour les Mac M1.

Pour ceux qui n’ont jamais utilisé d’outil de gestion de versions comme git, il faut savoir que pour travailler sur un même projet à plusieurs, les développeurs utilisent un système de branches. Pour faire simple, chacun part du code principal et va créer sa branche. Chaque branche enregistre ses modifications. Quand on a terminé les modifications, on les fusionne avec le code principal : c’est ce qu’on appelle le merge.

Le problème, c’est que le code principal a généralement été modifié entre temps. Et, au moment du merge, tout est cassé. C’est là qu’intervient la résolution de conflits. Le développeur doit comparer lui-même les modifications pour savoir ce qui doit être gardé. Ça peut être une véritable galère, surtout avec Xcode qui a tendance à facilement voir ses projets cassés.

C’est là qu’intervient Kaleidoscope. Au-delà d’apporter une interface claire pour faciliter la résolution de conflits, il va lui-même proposer des solutions. Ce sont littéralement des heures gagnées. Puisqu’il est particulièrement bien intégré aux outils du quotidien, j’ai donc choisi d’éprouver la nouvelle mouture avec le client git Tower. Et pour forcer la difficulté, j’ai choisi de comparer les branches release/5.4 et release/5.5 de l’énorme projet open source Swift.

Le verdict est sans appel. Kaleidoscope 2 ne réussit pas à aller jusqu’au bout de la comparaison là où la version 3 y arrive sans difficulté. À cela s’ajoute une interface bien plus claire (surtout en mode sombre) et mieux intégrée à l’environnement. La coloration syntaxique aurait été un petit plus appréciable pour mieux s’y retrouver dans le code : peut-être une fonctionnalité à venir dans une future mise à jour ?

Kaleidoscope 2 trouve ses limites dans les gros projets et est loin d'être intégré au mode sombre de mon Mac

L'intégration et les performances de Kaleidoscope 3 sont parfaites

Pour les développeurs iOS en particulier, une fonctionnalité bien pratique avait fait son apparition avec Kaleidoscope 2.4 : l’intégration au déboggueur de Xcode via les commandes ksp et kspo (correspondant respectivement aux commandes p et po). Très pratique pour comparer plusieurs états d’un même contenu en mémoire, au fil de l’exécution ou via des points d’arrêt. Mais aussi très pratique pour comparer plusieurs états d’un écran via une extension de code fournie par l’éditeur. Cette possibilité se voit améliorée grâce aux multiples optimisations, notamment en matière de performances, de la fonctionnalité de comparaison d’images. Et pour les utilisateurs d’Alfred, une intégration est désormais proposée.

La comparaison d'images fonctionne à merveille

Au bout du compte, après quelques semaines avec la version bêta de Kaleidoscope 3, je ne peux que recommander cet outil qui tient plus que jamais ses promesses Pour avoir d'informations, la note de version est disponible en ligne.

Le tarif a été revu à la hausse : 149,99 € en licence perpétuelle. Pour les clients possédant la version 2 (sortie en 2013), le prix de mise à jour est de 69,99 € accessible via un formulaire en ligne. Pour vous faire une idée de ce que l'app peut vous apporter avant d'investir, il est possible de télécharger une version d'essai de 15 jours sur le site de l'éditeur.

avatar gwen | 

Mince, j’ai pensé que l’application de modification du système populaire du temps d’os 9 était de retour.

avatar bunam | 

@gwen

ha oui, souvenirs... je lui avais appliqué un air de BeOS

Pour revenir au sujet, sans coloration syntaxique ce n'est pas possible...

avatar Florent Morin | 

@bunam

Je crois que c’est dans les tuyaux.

avatar filaton | 

Niveau tarif, je trouvais déjà ça hyper cher avant mais là il n’y a vraiment pas moyen…

avatar stefhan | 

@filaton

Pareil…

avatar Schnak | 

ils sont sérieux sur le prix? J'avais acheté la version précédente et je pensais pouvoir faire la mise à jour avec ces petites fonctionnalités supplémentaires sympathiques en +.
Bref je lance App Store et cherche la mise à jour, je ne trouve rien.. Ok je comprend que c'est une mise à jour payante sûrement, je cherche l'appli dans le store et je trouve la mise à jour... à 80€ !!

avatar marc_os | 

> Ça peut être une véritable galère, surtout avec Xcode qui a tendance à facilement voir ses projets cassés

Ah bon ?

> À cela s’ajoute une interface bien plus claire (surtout en mode sombre) et mieux intégrée à l’environnement.

Perso je n'ai pas encore trouvé mieux que la présentation par Xcode qui te permet de comparer le code de n'importe qu'elle version (git) à n'importe quelle autre version : il suffit de choisir dans le menu de chaque version celle qu'on veut voir via le tag git avec date et heure de modif, nom de l'auteur*. Le tout avec une interface bien plus claire et évidente AHMA**.
En plus, tu peux naviguer facilement d'une modif à l'autre via les touches fléchées - après avoir cliqué dans l'espace au centre entre les deux versions affichées.
On peut faire aussi des recherches classiques dans l'une ou l'autre des versions affichées si on recherche un truc précis.

> La coloration syntaxique aurait été un petit plus appréciable pour mieux s’y retrouver dans le code

On l'a dans Xcode.
.

🍀 Pour moi le réel intérêt est dans la comparaison d'images qui a l'air très bien.

(*) Dans la copie d'écran affichée dans l'article, on ne voit pas à quelle version appartient chaque côté. Dans Xcode, c'est indiqué en clair en bas de la fenêtre. Mieux que ça, en cliquant dessus ça affiche un menu qui permet de changer de version.
(**) Pourquoi les fins de lignes sont-elles donc affichées en violet ? Ça ne sert à rien et détourne l'attention des vraies modifs. Enfin dans votre exemple vous n'avez que des lignes ajoutées à droite. Comment des différences dans une ligne sont-elles affichées ? Ça j'aimerais bien le voir. Et comment sont représentées des lignes supprimés ? Comme ça se passe si on na pas de bel alignement par exemple si d'un côté on a au début (au dessus de la portion affichée) beaucoup de lignes en plus ? Dans ces conditions, comment évolue l'affichage lors d'un scroll ?

avatar DeluxePainter | 

Cela reste de la lecture seule ou peut-on enfin avec la version 3 modifier les fichiers ?

avatar thauron | 

Moi qui pensais que Kaleidoscope était un tableau de bord pour installer le look de Copland sur Mac OS...

CONNEXION UTILISATEUR