Show the menus on the alternate screen

Ouverte
#60 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
48/100
Type d'issue
Fonctionnalité
Clarté
Clairement spécifiée
Activité
Active
Stack technique
javascript, node.js
Domaine
cli

Piste de recherche

Start by reading the existing menu resize handling and the approach tried in #59, then trace how scripts run and how normal exits, Ctrl+C, and errors are handled. Check the tests and README alongside the touched lib/ files. Done means the alternate screen handles resizing and script output as specified, tests and coverage meet the stated requirements, documentation is updated, and the roadmap item is ticked.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

enhancement

Roadmap: A polished interface

Show the menus on the terminal's alternate screen (\x1b[?1049h), as less and vim do, and leave it before a script runs and on every exit path (normal exit, Ctrl+C, errors). Resizing the window can then redraw the whole screen, header included.

Today only the list redraws itself on resize. The header above it is drawn once per screen, so a terminal made narrower rewraps it into pieces. Clearing and redrawing the screen on resize was tried in #59 and dropped: clearing only reaches the visible part of the window, so each redraw left a duplicate header in the scrollback.

The list's page size should also count the lines drawn above it, so the screen never grows taller than the window.

Done when

  • Resizing the window while a menu is open never leaves broken lines or duplicate headers, in Windows Terminal, the classic console, macOS Terminal, iTerm2 and a Linux terminal
  • Script output stays in the normal screen, so it remains visible after returning to the menu
  • Tests cover the change, and coverage stays at or above 90% of lines
  • The README describes the change, and the header comment of each touched lib/ file is up to date
  • CI passes on Windows, macOS and Linux with Node 22, 24 and 26
  • The roadmap item is ticked

The milestone is done when: Screenshots of the main screens look correct in Windows Terminal, PowerShell, macOS Terminal, iTerm2 and a Linux terminal, at 80 and 120 columns, with and without NO_COLOR.

Langage dominant
JavaScript
Étoiles
0
Forks
0
Merge moyen
56 min
PR mergées (30 j)
23

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de modulane/dev-workspace-cli

Toutes les issues de modulane/dev-workspace-cli

Issues similaires

Plus d'issues JavaScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.