fix(forge): autocompletion Tab naturelle et fiable (BUG-055)
This commit is contained in:
+24
-1
@@ -6,7 +6,7 @@ Format basé sur [Keep a Changelog](https://keepachangelog.com/fr/1.1.0/),
|
||||
et [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
> **En cours de développement** : les changements à venir sont listés dans la section
|
||||
> [Unreleased](#unreleased). La dernière version livrée est **2.8.0**.
|
||||
> [Unreleased](#unreleased). La dernière version livrée est **2.8.1**.
|
||||
|
||||
---
|
||||
|
||||
@@ -14,6 +14,29 @@ et [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
---
|
||||
|
||||
## [2.8.1] — 2026-09-17
|
||||
|
||||
### Corrigé
|
||||
|
||||
- **BUG-055 - Éditeur Forge : autocomplétion Tab naturelle et fiable** : la touche `Tab`
|
||||
déclenchait simultanément trois actions indépendantes (indentation, complétion d'un mot du
|
||||
document, acceptation de la prédiction IA), ce qui insérait un ou deux espaces avant le mot
|
||||
complété — et le retour arrière effaçait alors l'ajout. La gestion de `Tab` est désormais
|
||||
**unifiée** avec une priorité claire (liste de suggestions ouverte → prédiction IA →
|
||||
complétion de mot du document → indentation), une seule action par appui. Les helpers de
|
||||
complétion sont extraits en fonctions pures partagées avec CodeMirror
|
||||
(`getWordFragment`, `findWordCompletions`, `normalizeGhost`, `chooseTabAction`) ; plusieurs
|
||||
candidats affichent une liste positionnée au curseur ; la **complétion fantôme** n'affiche
|
||||
plus un miroir transparent de tout le document (source du décalage visuel et des espaces
|
||||
fantômes) mais uniquement la prédiction, positionnée exactement au curseur et nettoyée dès
|
||||
que le curseur bouge ou que la vue défile ; une complétion de mot ne peut plus introduire
|
||||
d'espace. Le prompt `/api/ai/inline-complete` est simplifié et borné à 128 tokens pour des
|
||||
suggestions plus courtes et plus rapides. Fichiers : `frontend/editor-poc.html`,
|
||||
`frontend/js/autocomplete.js`, `backend/ai.py`. Tests :
|
||||
`tests/frontend/forge-completion.test.mjs` (nouveau, 28 tests).
|
||||
|
||||
---
|
||||
|
||||
## [2.8.0] — 2026-09-17
|
||||
|
||||
### Ajouté
|
||||
|
||||
Reference in New Issue
Block a user