Sådan jazz op din Bash Terminal - en trinvis guide med billeder

I denne blog vil jeg gå over trinnene for at tilføje Temaer, Powerline, skrifttyper og powerline-gitstatus for at få din almindelige Bash Terminal til at se smuk og nyttig ud som vist på billedet ovenfor.

Det viser sig, at hvis du bruger Mac, skal du springe gennem mange bøjler for at få dette til at fungere, da mange instruktioner er til linux eller er forældede. Så jeg troede, jeg ville blogge om det - forhåbentlig hjælper det dig.

Bemærkninger:

1. Følg trinene omhyggeligt, da enhver fejl vil forårsage en masse hovedpine.

2. Dette er til MacOS og til regelmæssig bash i Terminal.app. Jeg bruger ikke ZSH eller Hyper i denne blog - jeg planlægger at skrive forskellige blogs til dem.

3. Mine versioner: Mac High Sierra; git version 2.14.3 (Apple Git-98); Python 2.7.10

OK, når du har en ny mac, ser din Terminal.app som standard ud som nedenfor. Lad os gå videre og tilføje Temaer, skrifttyper og så videre.

Trin 1 - Tilføj et nyt tema

Det første oplagte trin er at forbedre temaet. Terminal giver ikke alle de seje og smarte temaer, som du ser andre udviklere bruger. Lad os downloade et tema og føje det til terminalen.

I denne blog vil jeg tilføje Solarized-Dark-tema til vores Terminal.

Bemærk: Du kan downloade forskellige temaer (.terminal filer) fra denne git repo. Du skal blot åbne *.terminalfilen for at installere den, dvs. right-click on the *.terminal file > “open with" > Terminal
  1. Gå til //ethanschoonover.com/solarized
  2. Rul ned og download temaet (solarized.zip)
  3. Uddrag filen solarized.zip
  4. Åbn mappen osx-terminal.app-colours-solarized . Denne mappe indeholder tema til terminalen.
  5. Dobbeltklik på "Solarized Dark ansi.terminal" -fil - Dette er den specifikke temafil til Terminal.app. Bemærk: Hvis du får en advarsel om, at dette er fra en uidentificeret udvikler, skal du højreklikke på filen og vælge "Åbn med"> Terminal opti on.
  6. På dette tidspunkt har du installeret temaet i din terminal. Vi skal bare gøre det til et standardtema.
  7. Åbn Terminal> Præferencer> Tekst, og vælg temaet "Solarized Dark ...", og klik på "Standard".

Fra nu af skal din terminal gerne nedenfor.

Trin 2 - Installer Powerline

Powerline er en Python-app og er et statuslinjeplugin til vim og giver statuslinjer og prompter til flere andre applikationer, herunder zsh, bash, tmux, IPython, Awesome og Qtile.

Det får Terminal-prompten til at ligne nedenfor.

2.1 Installer Python

Fordi Powerline er en Python-app, skal vi have Python, og det også en ordentlig version af Python.

  • MacOS leveres allerede med Python installeret. Sørg for, at Pythons version er 2.7.x ved at skrivepython -V i terminalen.
  • Hvis det ikke er 2.7, skal du installere Homebrew, der giver os mulighed for at installere forskellige software fra CLI ved at køre:/usr/bin/ruby -e "$(curl -fsSL //raw.githubusercontent.com/Homebrew/install/master/install)"
  • Kør for brew install pythonat installere den nyeste Python via Homebrew

2.2 Installer pip - En pakkehåndtering til Python (svarer til npm)

Installer pip ved at køre følgende kommando

$ sudo easy_install pip

2.3 Installer XCode Developer CLI-værktøjer

XCode Developer CLI-værktøjer bruges af Powerline og andre apps, der manipulerer OSX-kerne-funktioner. Så sørg for at installere XCode CLI-værktøjerne ved at køre følgende kommando.

$ xcode-select —-install

Bemærk: Ovenstående kommando åbner Macs installationsprogram og installerer XCode Developer CLI-værktøjer. Hvis det ikke virker, skal du prøve xcode-select -rat nulstille.

2.4 Installer Powerline

Endelig skal du installere Powerline (stabil version) via pip ved at køre følgende kommando.

$ pip install --user powerline-status

Hvis du vil installere den nyeste udviklingsfilial, skal du bruge:

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

2.5 Tilføj Powerline-dæmonen til bash

Vi skal nu tilføje Powerline-dæmonen til at bash, så den kan overvåge Terminal-prompten og foretage ændringer.

2.5.1 Kopier Powerlines installationssted

Du kan finde ud af placeringen af ​​Powerline ved at køre følgende: pip show powerline-statusKopier værdien fra Locationfeltet.

2.5.2 Føj dæmonen med en korrekt placering til .bash_profile

  1. Sørg for, at du har .bash_profilefilen i din rodmappe. Hvis ikke følgende, skal du oprette en ved at gøre:cd ~ && touch ~/.bash_profile

2. Åbn .bash_profileog tilføj følgende:

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
Bemærk: Placeringen /Users/rupa/Library/Python/2.7/lib/python/site-packages/ er fra det foregående trin (2.5.1). Skift det for at matche din computers placering.

2.5.3. Genstart terminalen

Afslut terminalen helt, hvis den er åben (Terminal> Afslut terminal). Og åbn det igen.

Du skal være i stand til blot at bruge $ source ~/.bash_profiletil at opdatere indstillingerne. Men jeg powerline-configmangler en ulige fil! Normalt får du denne fejl, hvis du ikke har $ HOME / Library / Python / 2.7 / bin i din PATH.

2.5.4 Din nye terminal

Din nye terminal skal se ud nedenfor. Det skal bruge temaet "Solarized Dark ansi" og skal vise Powerline i kommandoprompten. Men bemærk også, at der er “?” tegn! Dette skyldes, at Powerline bruger forskellige ikoner og skrifttyper, der ikke er tilgængelige som standard. Så vi er nødt til at installere skrifttyperne.

Trin 3 - Installer Powerline-skrifttyper

For at installere Powerline-skrifttyper skal du blot gå til //github.com/powerline/fonts. Der vil du se en hel masse mapper. Hver enkelt er en skrifttype, også kaldet "Patched font".

Det kaldes “patchede skrifttyper”, fordi folk har taget almindelige skrifttyper og har tilføjet / patched yderligere Powerline-specifikke ikoner og skrifttyper til dem.

3.1 Download hele repoen, og pak den ud

  • Klik på knappen "Klon eller download", og download hele repoen, så du prøver forskellige skrifttyper.
  • Pakk ud skrifttyper-master.zip

3.2 Installer nogle skrifttyper

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

For at få vist forskellige Git-status ved prompten skal vi installere powerline-gitstatus. Det er en simpel tilføjelse til Powerline og tilføjer flere farver og temaer for at vise forskellige git-statusoplysninger.

4.1 Installer powerline-gitstatus

pip install --user powerline-gitstatus
Bemærk: “- bruger” -kommandoen kræves for at installere den i brugerens profil.

4.2 Føj powerline-gitstatus farveskemaer til Powerline

4.2.1 Åbn følgende colorschemes/shell/default.jsonmappe

${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 Tilføj følgende farver:

Som nævnt i powerline-gitstatus readme. PS: Kopier bare farverne inden for "grupper" og tilføj dem derefter til standard.json som vist nedenfor.

Her er mine farveskemaer default.json (du kan kopiere og indsætte dette i stedet):

{ "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 Aktivér temaet

4.3.1 Åbn temas standard.json-fil

${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 Føj følgende til default.json

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

Nedenfor er min Powerlines tema default.json (du kan kopiere og indsætte dette i stedet):

Bemærk: Jeg har fjernet alt fra "højre" sektion og også fjernet "jobnummer" ("jobnummer") for at holde tingene rene. Ellers ser du en lille artefakt på højre side af prompt.
{ "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 Genstart daemon

Gem filen, og kør følgende: powerline-daemon —-replacei terminalen.

Vigtigt: Hver gang du foretager ændringer i Powerline s config, ud over at genstarte Terminal, vil du også nødt til at genstarte dæmonen at se ændringerne afspejlet ved at køre: powerline-daemon —-replace.

4.5 Genstart terminalen

Afslut terminalen (terminal> afslut terminal), og åbn den igen.

På dette tidspunkt er vi alle færdige! whew! Hvis du åbner terminalen og navigerer til en hvilken som helst git repo og spiller rundt, skal det se ud som følgende.

Sådan ser det ud i Solarized-Light Theme:

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

Hvis dette var nyttigt, så del det! Tak skal du have! ??