Contour 0.8: Emulatorul modern de terminal adaugă blocuri interactive de comenzi, randare accelerată masiv și integrare avansată cu shell-ul
Emulatorul modern de terminal Contour — dezvoltat în C++, construit pe Qt 6 și dotat cu randare accelerată hardware pe GPU pentru ecrane high-DPI — a atins versiunea 0.8. Această lansare aduce o transformare profundă a modului în care utilizatorii interacționează cu istoricul din terminal, transformând fluxul tradițional de text într-un mediu structurat prin blocuri interactive de comenzi (command blocks), acompaniat de salturi spectaculoase de viteză la randare.
Inovația centrală: Blocuri interactive de comenzi (Command Blocks)
În loc să trateze ecranul ca pe o simplă rolă continuă de caractere, Contour 0.8 delimitează fiecare instrucțiune rulată într-un bloc distinct cu metadate bogate:
Stare și durată vizibilă: Terminalul monitorizează comenzile individual, afișând codul de ieșire (exit status), ora execuției, durata totală și directorul de lucru activ. Comenzile eșuate sunt evidențiate vizual cu indicatori roșii, iar cele în curs de desfășurare sunt marcate cu galben.
Plierea rezultatelor (Output Folding): Ieșirile lungi de text (compilări, fișiere de log de sute de linii) pot fi pliate/comprimate într-o singură linie printr-un clic pe marginea stângă (gutter). Această zonă laterală oferă și controale de pliere, numerotare opțională a rândurilor și marcaje temporale (timestamps).
Antet fix (Sticky Command Header): Pe măsură ce derulați printr-un volum mare de text generat de o comandă, comanda originală rămâne fixată în partea de sus a ecranului pentru a ști în permanență contextul execuției.
Navigare rapidă prin taste: Salt direct între prompturi succesive folosind
Ctrl+Shift+UpșiCtrl+Shift+Down, copierea rapidă a comenzii sau a rezultatului său și notificări desktop automate când o sarcină de lungă durată (peste 10 secunde în mod implicit) se finalizează într-un panou nefocalizat.
Salt major de performanță: Randare până la 10x mai rapidă
Optimizările aduse motorului grafic au generat îmbunătățiri spectaculoase de lățime de bandă și procesare a fluxurilor de text în benchmark-urile dezvoltatorilor:
| Scenariu de randare | Versiunea anterioară | Contour 0.8 | Creștere / Salt |
| Procesare Plain-Text | 166.6 MiB/s | 310.9 MiB/s | ~1.8x mai rapid |
| Text colorat (ANSI/RGB) | 42.7 MiB/s | 281.9 MiB/s | ~6.6x mai rapid |
| Aplicații Full-Screen TUI | 55.6 MiB/s | 593.2 MiB/s | >10x mai rapid |
| Grafică Kitty Protocol (sarcini grele) | 7.55 secunde | 1.06 secunde | Reducere masivă a timpului de parsare |
În plus, protocolul grafic Kitty primește suport pentru cadre de animație (animation-frame support), iar pe Linux și Windows utilizatorii pot alege explicit care placă video (GPU dedicat sau integrat) este folosită pentru accelerarea randării.
Integrare profundă cu Shell-ul și systemd
Pentru a face posibile delimitarea automată a comenzilor și raportarea codurilor de ieșire, Contour 0.8 extinde integrarea cu principalele interpretatoare de comenzi:
Shell-uri suportate: Bash, Zsh, Fish, Nushell și PowerShell.
Urmărire automată prin systemd: Introduce suport pentru secvența de evadare OSC 3008 din
systemd. Pe distribuțiile echipate cu systemd 258 sau mai nou, delimitarea comenzilor, codul de retur și directorul de lucru sunt detectate nativ la nivel de sistem, fără a mai necesita scripturi sau configurații manuale în.bashrcsau.zshrc.
Rafinări de ergonomie și căutare vizuală
Detecție URL-uri și căi de fișiere: Adresele web și căile către fișiere sunt evidențiate automat și pot fi deschise cu
Ctrl+click. Este recunoscută inclusiv sintaxa cu linie și coloană (ex:fisier.rs:142:15), deschizând direct editorul de cod la locația exactă.Bară grafică de căutare: Înlocuiește promptul vechi bazat pe text cu o bară modernă ce include contor live al potrivirilor, butoane de navigare și opțiuni case-sensitive.
Persistență și fiabilitate: Aplicația poate memora poziția ferestrelor între reporniri, permite colorarea individuală a tab-urilor și rezolvă multiple bug-uri legate de redimensionare, sesiuni daemon persistente, conexiuni SSH și notificări sub Flatpak.
Sursa articolului:

Comentarii
Trimiteți un comentariu