Corta
Un terminal rapide et sans distraction. Conçu pour le Mac. Écrit en Swift.
Rendu Metal 4 · Saisie CJK / IME native · SSH, SFTP et édition à distance
Pour celles et ceux qui vivent dans le terminal : un texte net, une saisie native, des flux de travail à distance puissants et un cœur de terminal en Swift sans aucune dépendance tierce. Assez rapide pour les sorties exigeantes. Assez soigné pour le travail de tous les jours.
↓ Télécharger · Guide d’utilisation · Documentation (anglais) · Contribuer · Discord · Signaler un bug
🇺🇸 English · 🇨🇳 简体中文 · 🇭🇰 繁體中文 · 🇯🇵 日本語 · 🇰🇷 한국어 · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇧🇷 Português
Cette page est une traduction du README.md anglais, dans son état au commit
bdcf6da. Si la version anglaise a changé depuis, ou si les deux diffèrent, la version anglaise fait foi.
Installation
Nécessite macOS 26.0 ou ultérieur, une puce Apple (M1 ou ultérieure) et un GPU compatible Metal 4. Les machines virtuelles avec un GPU paravirtualisé ne sont pas prises en charge. Les Mac Intel peuvent utiliser l’ancienne version 1.0.1.
Téléchargez le .dmg et le fichier .dmg.sha256 correspondant depuis
GitHub Releases.
Gardez les deux fichiers dans le même dossier et vérifiez la somme de contrôle à cet endroit :
# Remplacez x.y.z par la version téléchargée.
shasum -a 256 -c Corta-x.y.z.dmg.sha256
Ouvrez l’image disque, faites glisser Corta dans Applications, puis éjectez l’image. Les versions sont signées avec un Developer ID et notarisées. Pour les mises à jour suivantes, utilisez Corta ▸ Rechercher les mises à jour… ou téléchargez une version plus récente. L’aide à l’installation et les instructions de désinstallation se trouvent dans Dépannage.
Premiers pas
| Pour… | Utilisez |
|---|---|
| Diviser à droite / vers le bas | ⌘D / ⇧⌘D |
| Rechercher dans la sortie du terminal | ⌘F |
| Ouvrir la palette de commandes | ⇧⌘P |
| Ouvrir les réglages | ⌘, |
Les sessions zsh locales standard chargent automatiquement les hooks d’intégration du shell fournis, lorsque les suggestions de dossiers sont activées (par défaut). Pour une installation dans les fichiers de démarrage de zsh, bash ou fish, utilisez Réglages ▸ Terminal ▸ Intégration du shell ; vos fichiers de démarrage ne sont modifiés que lorsque vous choisissez Installer. Si une intégration installée est obsolète, choisissez Mettre à jour et ouvrez un nouveau shell. Consultez le guide de l’intégration du shell pour les détails.
Pourquoi Corta
| Saisie native sur Mac | Saisie CJK et composition IME, police de secours Core Text, VoiceOver, Saisie clavier sécurisée, Services, le Terminal rapide et des actions Raccourcis — en passant par AppKit, pas en le contournant. |
| Rapide, preuves à l’appui | 2,3 × le débit du cœur de la 1.1, une image de moins de latence de saisie en plein écran, et 11 Mio au lieu de 185 Mio pour 100 000 lignes d’historique. Chaque chiffre est publié avec sa méthode et ses limites (ci-dessous). |
| Travail à distance intégré | L’OpenSSH du système avec votre ~/.ssh/config, un navigateur SFTP à la Finder avec glisser-déposer, et des fichiers distants ouverts dans votre éditeur local avec vérification des conflits avant l’envoi. |
| Un seul fichier de réglages | La fenêtre Réglages native et ~/.config/corta/config modifient la même configuration ; des vérifications automatiques gardent les clés et raccourcis documentés alignés sur le code. |
| Petit cœur, garde-fous sérieux | Un cœur de terminal en Swift sans dépendance tierce, des limites de ressources pour les sorties non fiables et un décodeur d’images en bac à sable ; l’app n’ajoute que Sparkle pour les mises à jour. La lecture du presse-papiers et les requêtes de titre sont volontairement absentes (modèle de sécurité, en anglais). |
Volets partagés, recherche dans l’historique, couleurs vraies, liens OSC 8, protocoles clavier et graphique de Kitty,
intégration du shell et restauration des dispositions sont tous là ; la référence des fonctionnalités
(en anglais) liste tout, avec exigences et limites, et décrit main — une version publiée peut ne pas encore tout
contenir. La comparaison de Corta avec iTerm2 et Ghostty, et quand préférer l’un d’eux, se trouve dans
Features → How Corta compares (en anglais).
Pour l’état des tâches des agents de code, l’arbre de développement n’intègre actuellement que Claude Code ; les autres outils
ont une prise en charge générique des protocoles et une détection de processus, sans adaptateur d’état dédié
(périmètre et limites, en anglais). Développé et validé avec Claude Code 2.1.310 :
état OSC 7501 en session interactive, avec choix explicite du canal pour le texte des messages de Claude. tmux, les sessions
d’arrière-plan de Claude et la désactivation des rapports de titre du terminal ont leurs propres restrictions ; la couverture de
l’analyseur n’implique pas une validation complète du cycle de vie en conditions réelles.
Le périmètre limité à macOS et l’absence de mode de contrôle tmux, d’IA intégrée et de moteur de scripts sont des
décisions arrêtées (en anglais) ; les sessions tmux ordinaires tournent dans Corta comme des
programmes de terminal.
À votre façon
Les réglages sont stockés dans ~/.config/corta/config. La fenêtre Réglages native et le fichier texte modifient la
même configuration.
theme = midnight
theme.midnight.inherit = solarized
theme.midnight.dark.background = #101018
bind.equalize-panes = ctrl+cmd+e
bind.command-palette = cmd+shift+p
Présentation ▸ Éditeur de thème… ouvre des sélecteurs de couleurs et des aperçus clair/sombre séparés. Réglages ▸ Apparence ▸ Curseur choisit bloc, barre ou souligné, avec un interrupteur de clignotement indépendant ; par défaut, un bloc qui ne clignote pas. La police système à largeur fixe est la seule police principale prise en charge, avec une taille réglable et la police de secours du système pour les caractères manquants. Réglages ▸ Terminal ▸ Barre d’état inférieure active des indicateurs locaux au choix (désactivé par défaut) ; cliquez dessus pour les détails de l’hôte, ou utilisez Présentation ▸ Détails de l’hôte local…. Voir le tutoriel de personnalisation pour les étapes, le choix de l’interface réseau et les limites de l’état thermique.
La référence de configuration (en anglais) liste chaque clé, sa valeur par défaut et le moment où une modification prend effet. Le guide d’utilisation passe en revue chaque fonctionnalité et indique où la trouver.
Compiler depuis les sources
git clone https://github.com/noah-qin/Corta.git && cd Corta
swift test --package-path CortaTerminal # le cœur du terminal seul, sans l’app
xcodebuild -project Corta.xcodeproj -scheme 'Corta (Dev)' build # une app de développement à côté de votre Corta installé
Le guide des contributeurs (en anglais) donne les prérequis (macOS 26, puce Apple, le Xcode indiqué
dans .xcode-version), la signature locale et une carte du dépôt ; le
guide des tests (en anglais) indique quelle vérification chaque modification nécessite.
La qualité, preuves à l’appui
Corta est en développement actif et a des problèmes connus. Ces mesures sont des instantanés, pas des garanties pour chaque machine ou charge de travail. Chaque ligne indique la version sur laquelle elle a été mesurée.
| Vérification | Résultat enregistré | Mesuré sur | Preuve |
|---|---|---|---|
| Débit du cœur (analyseur, grille et historique ; sans PTY ni rendu) | 317,3 Mio/s, contre 137,2 | 1.2 vs 1.1 | Performance §5.14 |
| Débit analyseur + grille | 355,9 Mio/s, contre 158,0 | 1.2 vs 1.1 | idem |
| Mémoire de l’historique, 100 000 × 120 lignes | 11,4 Mio, contre 185 | 1.2 vs 1.1 | Performance §5.6 |
| Défilement de région, CPU par image, p50 | 0,026 ms, contre 0,130 | 1.2 vs 1.1 | Performance §5.14 |
| CPU par image, reconstruction complète 120 × 40, Release | 0,37–0,39 ms | 1.2 | Performance §5.17 |
| De la touche à l’écran, plein écran, un volet, 60 Hz, une personne qui tape | p50 49,1–50,8 ms, p99 82,9–84,2 ms (p50 auparavant 64–68 ms) | 1.2 | Performance §5.17 |
| CPU au repos, Release, 20 secondes | 0,05 % | 1.0.0 (2026-09-18) ; non remesuré depuis le travail sur les réveils au repos de la 1.2 | Performance |
| esctest2 | 131 réussis, 334 bugs connus, 102 échoués ; 567 au total | 1.1.5 (2026-10-07) | Résultats bruts |
Mesuré sur un MacBook Air Apple M5 (macOS 27.0.1) ; les lignes 1.2 entre le 2026-10-09 et le 2026-10-13, chaque paire avant/après sur la même machine et la même chaîne d’outils. Les sections datées de Performance (en anglais) contiennent les conditions, chaque exécution et ce qu’un chiffre n’établit pas. Le chiffre de 82,0 % parfois cité pour esctest2 compte les réussites plus les bugs connus et n’est pas un taux de réussite ; voir Conformance (en anglais) pour l’interprétation.
Parmi les limites connues : une latence de la touche à l’écran supérieure à l’objectif d’une image en mode fenêtré (le plein écran avec un seul volet s’en approche le plus), une conformité VT incomplète, une intégration du shell fournie uniquement pour zsh, bash et fish, et des graphiques Kitty en transmission directe uniquement. La référence des limites (en anglais) donne les détails.
S’orienter
| Je veux… | Commencer ici |
|---|---|
| Découvrir chaque fonctionnalité et où elle se trouve | Guide d’utilisation |
| Configurer Corta | Configuration (en anglais) |
| Comprendre une fonctionnalité ou une limite | Features (en anglais) |
| Diagnostiquer un problème | Dépannage |
| Migrer depuis iTerm2, Ghostty ou Terminal.app | Venir d’un autre terminal |
| Voir ce qui est prévu ou proposer une idée | Open issues · Discussions → Ideas |
| Trouver quelque chose sur quoi travailler | Good first issues · Help wanted |
| Faire une première contribution | Contributing (en anglais) |
| Lancer ou ajouter des tests | Testing (en anglais) |
| Comprendre le code | Architecture · Core API (en anglais) |
| Lire toute la documentation | Index de la documentation (en anglais) |
Contribuer
Les reproductions de bugs, la documentation, les traductions, les tests d’accessibilité et les contributions de code sont les bienvenus. Commencez par un good first issue ou un help wanted, et lisez CONTRIBUTING.md pour l’installation et les attentes de relecture. La participation à la communauté suit le Code de conduite.
Vous avez essayé Corta et êtes revenu à votre ancien terminal ? Cela nous intéresse aussi : le formulaire Went back ne demande aucune reproduction, et « ça ne me convenait pas, tout simplement » est une réponse acceptable.
Signalez les vulnérabilités via le canal de sécurité privé. Pour discuter avec d’autres utilisateurs et le mainteneur, rejoignez le Discord. Pour les questions d’utilisation dont la réponse doit pouvoir être retrouvée, allez dans Discussions → Q&A ; pour partager un thème ou une configuration, dans Show and tell. Pour d’autres problèmes, ouvrez une issue.
Parrainer
Corta est conçu et maintenu par une seule personne, en public. S’il fait désormais partie de votre quotidien, un parrainage le fait avancer — chaque montant compte.
Contributeurs
Merci à toutes les personnes qui ont contribué à Corta.
Licence et identité
Le code source est distribué sous licence Apache 2.0. Le nom Corta, la mascotte pangolin et l’icône de l’app font l’objet de conditions séparées dans NOTICE. Le corps enroulé du pangolin forme un C ; sa queue cyan est un curseur de terminal. Les ressources de marque comprennent la mascotte et l’aperçu pour les réseaux sociaux.