Kako pojačati svoj bash terminal - korak po korak vodič sa slikama

U ovom blogu prelazit ću korake za dodavanje tema, Powerlinea, fontova i powerline-gitstatusa kako bi vaš redoviti Bash terminal izgledao lijepo i korisno kao što je prikazano na gornjoj slici.

Ispada, ako koristite Mac, morat ćete preskočiti puno obruča da bi ovo funkcioniralo, jer su mnoge upute za Linux ili su zastarjele. Zato sam mislio da o tome blogam - nadam se da će vam pomoći.

Bilješke:

1. Pažljivo slijedite korake jer će svaka pogreška izazvati puno glavobolje.

2. Ovo je za MacOS i za uobičajeni bash u Terminal.app. Ne koristim ZSH ili Hyper na ovom blogu - planiram im pisati različite blogove.

3. Moje verzije: Mac High Sierra; git verzija 2.14.3 (Apple Git-98); Python 2.7.10

U redu, prema zadanim postavkama, kada imate novi mac, vaš Terminal.app izgledat će otprilike kao u nastavku. Idemo naprijed i dodajte teme, fontove i tako dalje.

Korak 1 - dodajte novu temu

Prvi očiti korak je poboljšanje teme. Terminal ne nudi sve cool i otmjene teme koje vidite kako se koriste drugi programeri. Preuzmimo temu i dodamo je na terminal.

Na ovom ću blogu dodati Terminal Solarized-Dark.

Napomena: Iz ovog git repo-a možete preuzeti razne teme (.terminalne datoteke). Jednostavno otvorite *.terminaldatoteku da biste je instalirali, tj. right-click on the *.terminal file > “open with" > TeRminal
  1. Idite na //ethanschoonover.com/solarized
  2. Pomaknite se prema dolje i preuzmite temu (solarized.zip)
  3. Izdvojite datoteku solarized.zip
  4. Otvorite osx-terminal.app-colors-solarized mapu. Ova mapa sadrži temu za terminal.
  5. Dvaput kliknite datoteku "Solarized Dark ansi.terminal" - ovo je posebna datoteka teme za Terminal.app. Napomena: Ako dobijete upozorenje da je ovo od neidentificiranog programera, kliknite datoteku desnom tipkom i odaberite "Otvori pomoću"> Uključivanje terminala .
  6. U ovom trenutku imate temu instaliranu na vašem terminalu. Samo je trebamo postaviti kao zadanu temu.
  7. Otvorite Terminal> Preferences> Text i odaberite temu "Solarized Dark ..." i kliknite na "Default".

Od sada bi se vaš Terminal trebao svidjeti u nastavku.

Korak 2 - Instalirajte Powerline

Powerline je aplikacija za Python i dodatak je za statusnu liniju za vim, a pruža statusne linije i upute za nekoliko drugih aplikacija, uključujući zsh, bash, tmux, IPython, Awesome i Qtile.

Zbog toga će upit terminala izgledati dolje.

2.1 Instalirajte Python

Budući da je Powerline aplikacija Python, trebamo imati Python i to ispravnu verziju Pythona.

  • MacOS dolazi s već instaliranim Pythonom. Uvjerite se da je Pythonova verzija 2.7.x upisivanjempython -V u Terminal.
  • Ako nije 2.7, instalirajte Homebrew koji nam omogućuje instaliranje različitih softvera iz CLI-a, pokretanjem:/usr/bin/ruby -e "$(curl -fsSL //raw.githubusercontent.com/Homebrew/install/master/install)"
  • Pokrenite brew install pythoninstalirati najnoviji Python putem Homebrewa

2.2 Instaliranje pipa - Upravitelj paketa za Python (slično npm)

Instalirajte pip izvođenjem sljedeće naredbe

$ sudo easy_install pip

2.3 Instalirajte XCode Developer CLI alate

XCode Developer CLI alate koriste Powerline i druge aplikacije koje manipuliraju osnovnim OSX značajkama. Stoga obavezno instalirajte XCode CLI alate pokretanjem sljedeće naredbe.

$ xcode-select —-install

Napomena: Gornja naredba otvara Macov instalacijski program i instalira XCode Developer CLI alate. Ako ne uspije, pokušajte xcode-select -rresetirati.

2.4 Instalirajte Powerline

Na kraju, instalirajte Powerline (stabilnu verziju) putem pipa izvođenjem sljedeće naredbe.

$ pip install --user powerline-status

Ako želite instalirati najnoviju razvojnu granu, tada upotrijebite:

$ pip install --user git+git://github.com/powerline/powerline //dev

2.5 Dodajte Powerline demon u bash

Sada moramo dodati demon Powerline u bash kako bi mogao nadgledati odziv terminala i unositi promjene.

2.5.1 Kopirajte mjesto instalacije Powerlinea

Možete pronaći mjesto Powerlinea tako što ćete pokrenuti sljedeće: pip show powerline-statusKopirajte vrijednost iz Locationpolja.

2.5.2 Dodajte demon s odgovarajućim mjestom u .bash_profile

  1. Provjerite imate li .bash_profiledatoteku u svom glavnom direktoriju. Ako ne slijedi, kreirajte ga na način:cd ~ && touch ~/.bash_profile

2. Otvorite .bash_profilei dodajte sljedeće:

export PATH=$PATH:$HOME/Library/Python/2.7/bin powerline-daemon -q POWERLINE_BASH_CONTINUATION=1 POWERLINE_BASH_SELECT=1 . /Users/rupa/Library/Python/2.7/lib/python/site-packages/powerline/bindings/bash/powerline.sh
Napomena: Lokacija /Users/rupa/Library/Python/2.7/lib/python/site-packages/ je iz prethodnog koraka (2.5.1). Promijenite ga tako da odgovara mjestu vašeg računala.

2.5.3. Ponovo pokrenite terminal

Potpuno napustite terminal ako je otvoren (Terminal> Quit Terminal). I opet otvori.

Trebali biste jednostavno koristiti $ source ~/.bash_profileza ažuriranje postavki. Ali imam čudnu powerline-configdatoteku koja nedostaje! Ovu pogrešku obično dobijete ako u svom PATH-u nemate $ HOME / Library / Python / 2.7 / bin.

2.5.4 Vaš novi terminal

Vaš novi terminal trebao bi izgledati kao u nastavku. Trebao bi koristiti temu "Solarized Dark ansi" i trebao bi prikazati Powerline u naredbenom retku. Ali također primijetite da postoje "?" likovi! To je zato što Powerline koristi razne ikone i fontove koji nisu dostupni prema zadanim postavkama. Dakle, moramo instalirati fontove.

Korak 3 - Instalirajte Powerline fontove

Da biste instalirali Powerline fontove, jednostavno idite na //github.com/powerline/fonts. Tamo ćete vidjeti čitavu hrpu mapa. Svaki od njih je font, zvan "zakrpani fontovi".

Zove se "zakrpani fontovi", jer su ljudi uzeli uobičajene fontove i dodali su im / zakrpali dodatne ikone i fontove specifične za Powerline.

3.1 Preuzmite cijeli repo i raspakirajte ga

  • Kliknite gumb "Kloniraj ili preuzmi" i preuzmite cijeli repo kako biste isprobali razne fontove.
  • Raspakirajte font -master.zip

3.2 Instalirajte neke fontove

Let’s open Meslo dotted fontsfolder. It will look like below. You’ll see a whole bunch of .ttf file. Each one of them is a font but some are “bold” version of the font, some are “regular” version and so on.

Simply double-click on the .ttf file and press “Install font” to install the font on your computer.

For our case, let’s install “Meslo LG L DZ Regular for Powerline.ttf” and “Meslo LG L DZ Italic for Powerline.ttf”. This will add a regular and an Italic version of the Meslo font.

3.3 Select the font in the Terminal’s Theme

Remember we added “Solarized Dark” theme in Step 1? That didn’t have any fonts in it and MacOS had some default font. All we need to do is to set our Meslo dotted font for this theme and we are done!

  1. Open Terminal > Preferences > Text
  2. Select Solarized Dark ansi Theme
  3. Click on the “Font” button — This opens up “Fonts” dialog
  4. In the “Fonts” dialog, select “Meslo LG L DZ for Powerline” in the Family and also select font size 14 (so it’s easier to read).

3.4 Restart Terminal

Completely quit the Terminal (Terminal > Quit Terminal) and then reopen it.

Step 4 — Adding Git information to the prompt

Da bismo na upit prikazali razni Git status, moramo instalirati powerline-gitstatus. To je jednostavan dodatak Powerlineu koji dodaje više boja i tema za prikaz različitih informacija o statusu gita.

4.1 Instalirajte powerline-gitstatus

pip install --user powerline-gitstatus
Napomena: naredba “- user” potrebna je da biste je instalirali u profil korisnika.

4.2 Dodajte Powerline-gitstatus sheme boja u Powerline

4.2.1 Otvorite sljedeću colorschemes/shell/default.jsonmapu

${powerline-install-directory}/powerline/config_files/colorschemes/shell/default.json //For example: /Users/rupa/Library/Python/2.7/lib/python/site-packages/powerline/config_files/colorschemes/shell/default.json

4.2.2 Dodajte sljedeće boje:

Kao što je spomenuto u readmeu powerline-gitstatus. PS: Jednostavno kopirajte boje unutar "grupa", a zatim ih dodajte default.jsonu kao što je prikazano dolje.

Evo moje sheme boja default.json (ovo možete umjesto toga kopirati i zalijepiti):

{ "name": "Default color scheme for shell prompts", "groups": { "hostname": { "fg": "brightyellow", "bg": "mediumorange", "attrs": [] }, "environment": { "fg": "white", "bg": "darkestgreen", "attrs": [] }, "mode": { "fg": "darkestgreen", "bg": "brightgreen", "attrs": ["bold"] }, "attached_clients": { "fg": "white", "bg": "darkestgreen", "attrs": [] }, "gitstatus": { "fg": "gray8", "bg": "gray2", "attrs": [] }, "gitstatus_branch": { "fg": "gray8", "bg": "gray2", "attrs": [] }, "gitstatus_branch_clean": { "fg": "green", "bg": "gray2", "attrs": [] }, "gitstatus_branch_dirty": { "fg": "gray8", "bg": "gray2", "attrs": [] }, "gitstatus_branch_detached": { "fg": "mediumpurple", "bg": "gray2", "attrs": [] }, "gitstatus_tag": { "fg": "darkcyan", "bg": "gray2", "attrs": [] }, "gitstatus_behind": { "fg": "gray10", "bg": "gray2", "attrs": [] }, "gitstatus_ahead": { "fg": "gray10", "bg": "gray2", "attrs": [] }, "gitstatus_staged": { "fg": "green", "bg": "gray2", "attrs": [] }, "gitstatus_unmerged": { "fg": "brightred", "bg": "gray2", "attrs": [] }, "gitstatus_changed": { "fg": "mediumorange", "bg": "gray2", "attrs": [] }, "gitstatus_untracked": { "fg": "brightestorange", "bg": "gray2", "attrs": [] }, "gitstatus_stashed": { "fg": "darkblue", "bg": "gray2", "attrs": [] }, "gitstatus:divider": { "fg": "gray8", "bg": "gray2", "attrs": [] } }, "mode_translations": { "vicmd": { "groups": { "mode": { "fg": "darkestcyan", "bg": "white", "attrs": ["bold"] } } } } }

4.3 Aktivirajte temu

4.3.1 Otvorite datoteku default.json teme

${powerline-install-directory}/powerline/config_files/themes/shell/default.json //For example: /Users/rupa/Library/Python/2.7/lib/python/site-packages/powerline/config_files/themes/shell/default.json

4.3.2 Dodajte sljedeće u default.json

{ "function": "powerline_gitstatus.gitstatus", "priority": 40 }

Ispod je tema moje Powerline-ove default.json (ovo možete umjesto toga kopirati i zalijepiti):

Napomena: Uklonio sam sve iz odjeljka "desno", a uklonio sam i "broj posla" ("broj posla") kako bih održao stvari čistima. U suprotnom, vidjet ćete mali artefakt na desnom bočnom rubu upita.
{ "segments": { "left": [{ "function": "powerline.segments.shell.mode" }, { "function": "powerline.segments.common.net.hostname", "priority": 10 }, { "function": "powerline.segments.common.env.user", "priority": 30 }, { "function": "powerline.segments.shell.cwd", "priority": 10 }, { "function": "powerline_gitstatus.gitstatus", "priority": 40 } ], "right": [] } }

4.4 Ponovo pokrenite Daemon

Spremite datoteku i pokrenite sljedeće: powerline-daemon —-replaceu terminalu.

Važna napomena: Svaki put kad napravite promjene na Powerline je config, osim ponovnog pokretanja terminala, također ćete morati ponovo pokrenuti daemon za vidjeti prikazane promjene pokretanjem: powerline-daemon —-replace.

4.5 Ponovo pokrenite terminal

Zatvorite terminal (Terminal> Quit Terminal) i ponovno ga otvorite.

U ovom smo trenutku svi gotovi! fuj! Ako otvorite Terminal i otvorite bilo koji git repo i poigrate se, to bi trebalo izgledati kao sljedeće.

Evo kako to izgleda u temi Solarized-Light:

Here is how it looks in Cobalt2 Theme:

?? Thank you!

If you have questions, please feel free to ask me on Twitter: //twitter.com/rajaraodv

If this was useful, please click the clap ? button down below a few times to show your support! ⬇⬇⬇ ??

My Other Posts

//medium.com/@rajaraodv/latest

ECMAScript 2015+

  1. Check out these useful ECMAScript 2015 (ES6) tips and tricks
  2. 5 JavaScript “Bad” Parts That Are Fixed In ES6
  3. Is “Class” In ES6 The New “Bad” Part?

Terminal Improvements

  1. How to Jazz Up Your Terminal — A Step By Step Guide With Pictures
  2. Jazz Up Your “ZSH” Terminal In Seven Steps — A Visual Guide

WWW

  1. A Fascinating And Messy History Of The Web And JavaScript

Virtual DOM

  1. Inner Workings Of The Virtual DOM

React Performance

  1. Two Quick Ways To Reduce React App’s Size In Production
  2. Using Preact Instead Of React

Functional Programming

  1. JavaScript Is Turing Complete — Explained
  2. Functional Programming In JS — With Practical Examples (Part 1)
  3. Functional Programming In JS — With Practical Examples (Part 2)
  4. Why Redux Need Reducers To Be “Pure Functions”

WebPack

  1. Webpack — The Confusing Parts
  2. Webpack & Hot Module Replacement [HMR] (under-the-hood)
  3. Webpack’s HMR And React-Hot-Loader — The Missing Manual

Draft.js

  1. Why Draft.js And Why You Should Contribute
  2. How Draft.js Represents Rich Text Data

React And Redux :

  1. Step by Step Guide To Building React Redux Apps
  2. A Guide For Building A React Redux CRUD App (3-page app)
  3. Using Middlewares In React Redux Apps
  4. Adding A Robust Form Validation To React Redux Apps
  5. Securing React Redux Apps With JWT Tokens
  6. Handling Transactional Emails In React Redux Apps
  7. The Anatomy Of A React Redux App
  8. Why Redux Need Reducers To Be “Pure Functions”
  9. Two Quick Ways To Reduce React App’s Size In Production

If this was useful, please share it! Thank you! ??