Unul dintre cele mai utilizate instrumente în procesul de dezvoltare web este cu siguranță terminalul. În timp ce lucrați la un proiect, de multe ori vă aflați în poziția de a folosi terminalul cu mai multe file deschise simultan, unul pentru lansarea unui server web local, o a doua filă pentru gestionarea bazei de date, altul pentru copierea fișierelor și așa mai departe. Acest lucru poate deveni în curând murdar și greu de manevrat. O soluție pentru această problemă care funcționează bine pentru mine este multiplexorul terminal, tmux.
tmux
este un multiplexer terminal: permite un număr de terminale, fiecare executând un program separat care urmează să fie creat, accesat și controlat de pe un singur ecran.
Definiția de mai sus, luată din tmux
site-ul Web este clar: dintr-o fereastră de terminal putem porni și controla un număr de alte terminale și în fiecare dintre ele execută o aplicație diferită sau o altă instanță a unei aplicații.
tmux
este dezvoltat pe un model client-server. Acest lucru aduce în joc conceptul de sesiuni. O sesiune este stocată pe server care deține reprezentarea unei ferestre. Fiecare fereastră poate fi conectată la mai multe sesiuni și poate fi mutată între ele.
Pe de altă parte, mai mulți clienți pot fi atașați la fiecare sesiune. Deci, unul sau mai mulți utilizatori se pot conecta la o rețea tmux
sesiuni de la diferite computere și aceștia împărtășesc aceleași informații pe fereastră. Acest lucru este extrem de util în procesul de predare sau de colaborare, deoarece utilizatorii folosesc un serviciu tmux
sesiune văd aceleași informații pe ferestrele terminale ale acestora.
Conectarea la a tmux
sesiunea se face prin pornirea aplicației cu următoarea comandă:
tmux atașați
Când un utilizator dorește să pună capăt funcției de partajare a terminalelor, se folosește următoarea comandă:
tmux detach
tmux
rulează pe Linux și Mac. În momentul în care scriem acest articol, nu cunosc o versiune Windows a aplicației.
Pentru majoritatea distribuțiilor Linux, există un pachet în depozitele lor:
Pe Arch (pe care o folosesc), instalarea este pur și simplu o chestiune de rulare a următoarei comenzi:
sudo pacman -S tmux
După instalare, puteți începe tmux
prin emiterea comenzii tmux
într-o fereastră terminală. Dacă doriți să îl rulați automat pentru fiecare sesiune de terminal, este nevoie de un mic set de configurare:
tmux
ca în imaginea de mai jos: Dacă sunteți pe Mac, vine iTerm2 tmux
instalat, și pentru a porni, ar trebui să emiteți comanda: tmux
.
După instalare, dacă porniți o fereastră terminală, singurul lucru nou pe care îl veți observa este prezența unei linii de stare în partea de jos a ecranului:
Să aruncăm o privire la cele mai comune caracteristici. Pentru o listă de caracteristici complete, consultați linkurile de la sfârșitul acestui articol.
Sau, cu alte cuvinte, împărțirea ferestrei principale. Mai întâi de toate, trebuie să spun că fiecare tmux
comanda este prefixată folosind următoarea combinație de taste:
. Acest lucru poate fi schimbat, dar vom învăța cum să configurați și să personalizați tmux
mai târziu.
Deci, pentru a împărți o fereastră vertical (sau în panouri din dreapta și din stânga), trebuie utilizată următoarea comandă:
%
și pentru a împărți fereastra în geamurile orizontale pe care le puteți folosi:
"
Iar rezultatul ar trebui să arate după cum urmează:
Pentru a muta cursorul de la un panou la altul (panouri de activare), se utilizează tastele săgeată. Comanda arată astfel:
[Sus, Jos, Dreapta, Stanga]
Dacă doriți să mergeți la panoul activ anterior, puteți utiliza următoarea comandă:
;
De asemenea, dacă nu sunteți mulțumit de poziția unui panou, puteți roti geamurile folosind comanda:
Odată creat, puteți schimba fiecare dimensiune a panourilor, într-un singur pas de celulă, utilizând:
sau în etapa cu cinci celule utilizând:
Când doriți să închideți panoul curent, puteți utiliza:
X
Uneori este posibil să doriți să creați o altă fereastră, de exemplu, pentru a lucra la un alt proiect. Această fereastră ar putea conține un set complet diferit de panouri cu diferite programe în fiecare dintre ele. Pentru a face acest lucru, lansați următoarea comandă:
c
Apoi, dacă doriți să comutați la următoarea fereastră, puteți utiliza:
n
Și puteți trece la fereastra anterioară utilizând:
p
Sau puteți selecta fereastra în mod interactiv cu:
w
Pentru a închide fereastra deschisă, utilizați:
&
Să presupunem că ați emis o comandă pe terminal și ieșirea comenzii nu se potrivește într-un singur ecran, deci va trebui să derulați în sus pentru a vedea întreaga ieșire. Dacă încercați să apăsați pe Sus cheia, aceasta nu vă va derula, deoarece vă va arăta numai istoria comenzilor. Pentru a derula în sus ecranul, utilizați următoarea comandă:
[
Apoi apăsați una din următoarele taste: Sus
, Jos
, PgUp
sau PgDn
pentru a derula în sus sau în jos.
De asemenea, când în acest mod puteți copia text din istoric și apoi îl puteți lipi cu:
]
Pentru a ieși din asta introduce
mod, doar lovit Esc.
Acum există o mulțime de alte comenzi legate de diferite chei. Puteți lista toate legările cheie prin emiterea:
?
tmux
este foarte configurabil. Fișierul de configurare este fie /etc/tmux.conf
pentru setări la nivel de sistem sau (recomandat) ~ / .Tmux.conf
pentru setările specifice utilizatorului.
Unul dintre primele lucruri pe care majoritatea utilizatorilor le schimbă este reprezentarea cheii prefixului (din moment ce
nu pare să fie la fel de la îndemână). Majoritatea utilizatorilor o schimbă
. Acest lucru se poate face astfel:
set -g prefixul C-a dezlipi C-b lega C-a trimite-prefix
-g
opțiunea din prima comandă spune tmux că aceasta este o opțiune globală, adică aceasta este setată pentru toate ferestrele și sesiunile.
Unii utilizatori pot prefera legăturile Vi sau Emacs ca legături pentru acțiunile cheie. Acest lucru se face folosind:
set -g status-keys vi setw -g mod-keys vi
setw
comandă, setează opțiunea pentru fereastră (afectează toate panourile într-o fereastră).
Puteți efectua diferite configurații ale liniei de stare: îl puteți activa sau dezactiva, puteți schimba culoarea fundalului și a culorilor primare, puteți schimba informațiile afișate în interiorul acestuia etc..
Pentru a dezactiva bara de stare, lansați următoarea comandă:
setați -g starea off
Sau puteți încerca ceva de genul:
set -g status-bg set albastru -g status-fg alb setw -g stare-left #H: #S la #W: #T
... care schimbă fundalul liniei de stare în albastru, culoarea textului este albă și afișează în partea stângă a barei de stare numele de gazdă al localhost urmat de un colon și numele sesiunii, urmat de șirul "at" și numele ferestrei, o colon și, în sfârșit, titlul panoului.
De asemenea, puteți afișa linia de stare în partea de jos sau în partea de sus a ferestrei:
set -g status-position [bottom | top]
Pentru informații suplimentare despre opțiunile de configurare și alte opțiuni de configurare, puteți să verificați secțiunea de opțiuni din manual.
Sper că ați găsit această introducere tmux
vă pentru a vă îmbunătăți fluxul de lucru terminal. Am prezentat aici doar câteva comenzi pe care le folosesc cel mai frecvent. Dacă doriți să aflați mai multe, există mai multe resurse disponibile. Recomand:
tmux
pe wiki-ul Arch