Terminal
DR-Terminal embarque son propre émulateur VT100/xterm écrit from scratch en Kotlin — sans WebView. Prise en charge de xterm-256color, de l'alt buffer (vim/less/nano), du presse-papiers OSC 52, des focus events et du mouse tracking (mc, htop).
Clavier et raccourcis
| Raccourci | Action |
|---|---|
| Ctrl+C — quand du texte est sélectionné | Copie la sélection. Sans sélection, le SIGINT habituel part au processus distant. |
| Entrée — quand du texte est sélectionné | Raccourci alternatif de copie (utile sur claviers sans Ctrl). |
| Clic droit / menu Copier | Menu contextuel après sélection — toujours disponible. |
| Ctrl+V | Coller. Un contenu multi-ligne ouvre un dialogue de confirmation Paste multi-line. |
| Barre de raccourcis | ESC, Tab, Ctrl, flèches, F1–F10, Home/End, PgUp/PgDn, Insert — utile sur mobile. |
| Taille de police | Boutons A+ / A- (mobile) ou menu dans la toolbar (desktop) — pas de raccourci clavier. |
Sélectionner, copier, coller
Sélectionnez le texte par glisser avec la souris ou le doigt. Au relâchement, un menu contextuel avec Copier apparaît. Double-clic sélectionne un mot, triple-clic une ligne.
OSC 52 permet aux programmes distants (tmux, vim, fzf) de copier dans votre presse-papiers système via une séquence d'échappement — bidirectionnel.
Collage multi-ligne : quand votre presse-papiers contient des retours à la ligne, un dialogue d'aperçu Paste multi-line s'affiche — protège contre l'exécution accidentelle de commandes non inspectées.
Scrollback et historique
Le tampon scrollback contient jusqu'à 1000 lignes. Molette ou drag tactile fait défiler ; le curseur sort correctement du viewport (comportement xterm), et toute sélection défile avec le texte.
Effacer l'historique (menu du terminal) vide le tampon sans fermer la session.
Une barre de défilement apparaît sur le bord droit du terminal — vous pouvez l'attraper à la souris pour faire défiler l'historique. La vitesse de défilement à la molette se configure dans Paramètres → Terminal (lignes par cran de molette).
Alt buffer (applications plein écran)
Les programmes comme vim, less, nano, htop, mc basculent dans l'alt buffer — un écran séparé qui disparaît à la sortie sans polluer le scrollback principal.
Police, thème, coloration
- Taille de police — boutons A+/A- de la barre du terminal ou menu de la toolbar ; plage 6–72 pt.
- Thème de l'UI — clair / sombre / système (toute l'application, pas le terminal).
- Thème du terminal — voir la section Sidebar → Theme plus bas ; le thème est par alias.
- Règles de mise en évidence — Paramètres → Terminal → Coloration de sortie. Ajouter regex + couleur, p. ex. peindre
ERRORen rouge.
Historique de commandes et autocomplétion
Chaque connexion enregistrée mémorise son historique de commandes (si Enregistrer l'historique est activé). Flèche haut rappelle les commandes précédentes, et le champ d'autocomplétion suggère depuis l'historique côté serveur.
Sidebar (panneau droit) — History / Complete / Theme
À droite du terminal (Desktop / tablette) se trouve un panneau repliable avec trois onglets. Ouvrez-le via la flèche sur le bord droit ; modifiez la largeur en tirant sur le bord gauche. L'état est par alias — chaque connexion enregistrée mémorise son onglet et sa largeur.
- History — commandes récemment saisies. Un clic écrit la commande dans le terminal ; le bouton à côté décide s'il faut l'exécuter immédiatement avec Entrée.
- Complete — suggestions d'autocomplétion en direct (basées sur l'historique côté serveur). Peuvent être mises en sourdine par alias (icône cloche).
- Theme — apparence du terminal. Voir la section ci-dessous.
Theme — thèmes du terminal (435 schémas)
Le thème est par alias — chaque connexion a son propre arrière-plan, couleur de texte et palette ANSI 16 couleurs (les mêmes index utilisés par ls --color : standard 0–7 + bright 8–15).
- Catalogue intégré de 435 thèmes — le champ Search… filtre par nom. Chaque ligne affiche arrière-plan, couleur de texte et une bande de 16 swatches. Un clic applique le thème instantanément.
- Custom (this alias) — édition manuelle de la police, de l'arrière-plan, du texte et des 16 slots ANSI. Chaque slot a son propre reset (⟲) vers la valeur par défaut ; toute la palette dispose d'un reset distinct.
- Les dossiers bleus dans
ls --colorsont en ANSI 4 (BLUE) ou 12 (BRIGHT_BLUE) — pour les changer, choisissez un autre thème ou éditez ces deux swatches.
Les thèmes proviennent de la collection edcet/terminal-themes (MIT). Script de refresh : tools/regenerate-themes.py.