Facem terminalul Linux frumos și comod

Toate distribuțiile Linux vin cu un emulator de terminal funcțional și personalizabil. Pe internet, și uneori chiar în terminalul însuși, există multe teme gata făcute pentru a-i oferi un aspect atrăgător. Totuși, pentru a transforma terminalul standard (în orice DE, orice distribuție) într-unul frumos, confortabil și ușor de utilizat, am petrecut mult timp. Așadar, cum putem face terminalul implicit mai convenabil și plăcut de utilizat?

Adăugăm funcționalitate

Shell-ul de comandă

Majoritatea distribuțiilor vin cu Bash preinstalat. Folosind extensii, poți face din el orice dorești, dar este mult mai simplu să realizezi acest lucru cu Zsh. De ce?

  • Mecanica avansată de completare automată a comenzilor prin apăsarea <Tab> sau <Arrow Up>. Spre deosebire de Bash, nu trebuie să configurezi acest lucru, totul funcționează la un nivel înalt direct "din cutie".
  • O mulțime de teme, module, pluginuri și altele. Personalizarea prin cadre (oh-my-zsh, prezto și altele) care extind semnificativ capacitățile de personalizare și îmbunătățire a terminalului. Din nou, toate acestea se pot realiza și în Bash, dar pentru Zsh există o mulțime de materiale deja gata. Pentru Bash, sunt semnificativ mai puține, iar unele chiar nu există.

Acestea sunt motivele principale pentru care am trecut de la Bash la Zsh. În plus, Zsh are multe alte "funcționalități".

Configurarea Zsh

În primul rând, să instalăm Zsh (dacă nu este deja instalat, de exemplu, cum ar fi în Manjaro, poți sări peste acest pas):

sudo apt install zsh

Când ți se va cere să îl instalezi ca shell implicit, apasă Y, pentru a confirma.

Oh-My-Zsh — un cadru popular și activ în dezvoltare pentru Zsh, care permite personalizarea flexibilă a shell-ului terminalului. Să-l instalăm:

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

zsh: command not found: curl
Instalați curl:

sudo apt install curl

Evidențierea sintaxei. Este mult mai ușor să te orientezi în conținutul terminalului când diferite părți ale comenzilor sunt evidențiate cu culori diferite. De exemplu, directoarele vor fi subliniate, iar comenzile—evidentiate cu o culoare diferită de textul obișnuit. Să instalăm pluginul zsh-syntax-highlighting:

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting

zsh: command not found: git
Instalează git:

sudo apt install git

Pentru ca pluginul să funcționeze, trebuie să-l activezi.

În fișierul ~/zshrc schimbăm linia cu plugins=:

plugins=(git zsh-syntax-highlighting)

Dacă nu există o astfel de linie — adaug-o.

Gata! Obținem un terminal confortabil și funcțional. Acum îl vom face vizual plăcut.

Configurăm aspectul

Instalăm tema PowerLevel10K:

git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k

Descărcăm și adăugăm fontul în sistem JetBrains Mono Nerd (cu pictograme):
Alegeți unul din la lista, în folderul font/complete alegeți fontul fără „Compatibil Windows”, cu sufixul „Mono”.

Conectăm fontul și tema.

Edităm ~/zshrc.

Dacă aceste linii există deja în fișier — înlocuiți-le.

  • ZSH_THEME="powerlevel10k/powerlevel10k"
  • POWERLEVEL9K_MODE="nerdfont-complete"

Culori. O parte importantă a aranjamentului terminalului este schema de culori. Am testat multe scheme diferite, le-am editat și am rămas cu Monokai Dark. Nu obosește ochii, dar este plăcută și vibrantă. Lista culorilor:

[colors]

# special
foreground      = #e6e6e6
foreground_bold = #e6e6e6
cursor          = #fff
background      = #000

# negru
color0  = #75715e
color8  = #272822

# roșu
color1  = #f92672
color9  = #f92672

# verde
color2  = #a6e22e
color10 = #a6e22e

# galben
color3  = #434648
color11 = #7ea35f

# albastru
color4  = #66d9ef
color12 = #66d9ef

# magenta
color5  = #ae81ff
color13 = #ae81ff

# cyan
color6  = #adb3b9
color14 = #62ab9d

# alb
color7  = #2AA198
color15 = #2AA198

În diferite terminale, schema de culori variază (de obicei, asta se face prin setările terminalului), dar ordinea culorilor rămâne aceeași. Puteți importa acest șablon în format Termite și îl puteți exporta pentru terminalul dvs. prin terminal.sexy

Lansăm configurația temei: p10k configure.
Configurați tema alegând opțiunile de afișare care vă plac cel mai mult.

Ultimul retuș — schimbăm configurația temei și înlocuim culorile încorporate.

Edităm fișierul ~/ .p10k.zsh.

Dacă aceste linii există deja în fișier — înlocuiți-le. Codurile culorilor pot fi obținute cu comanda

for i in {0..255}; do print -Pn "%K{$i}  %k%F{$i}${(l:3::0:)i}%f " ${${(M)$((i%6)):#3}:+$'n'}; done

  • Afișarea doar a directorului curent:
    typeset -g POWERLEVEL9K_SHORTEN_STRATEGY=truncate_to_last
  • Fundalul blocului cu directorul:
    typeset -g POWERLEVEL9K_DIR_BACKGROUND=33
  • Culorile săgeților:
    typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=2

    și

    typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=1

  • Fundalul ramurii Git:
    typeset -g POWERLEVEL9K_VCS_CLEAN_BACKGROUND=15

Rezultatul

Facem terminalul Linux frumos și comod
Eroare:
Facem terminalul Linux frumos și comod
GIT:
Facem terminalul Linux frumos și comod

Surse

Documentația PowerLevel10K
Designer online pentru scheme de culori ale terminalului
Diferențele dintre Bash și Zsh

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster