So bringen Sie Ihr Bash-Terminal auf Vordermann - Eine Schritt-für-Schritt-Anleitung mit Bildern

In diesem Blog gehe ich die Schritte durch, um Themen, Powerline, Schriftarten und Powerline-Git-Status hinzuzufügen, damit Ihr reguläres Bash-Terminal schön und nützlich aussieht, wie im obigen Bild gezeigt.

Es stellt sich heraus, dass Sie, wenn Sie einen Mac verwenden, durch viele Rahmen springen müssen, um dies zum Laufen zu bringen, da viele Anweisungen für Linux gelten oder veraltet sind. Also dachte ich, ich würde darüber bloggen - hoffentlich hilft es dir.

Anmerkungen:

1. Befolgen Sie die Schritte sorgfältig, da jeder Fehler viele Kopfschmerzen verursacht.

2. Dies ist für MacOS und für reguläres Bash in der Terminal.app. Ich verwende in diesem Blog weder ZSH noch Hyper. Ich habe vor, verschiedene Blogs für sie zu schreiben.

3. Meine Versionen: Mac High Sierra; Git-Version 2.14.3 (Apple Git-98); Python 2.7.10

OK, wenn Sie einen neuen Mac haben, sieht Ihre Terminal.app standardmäßig wie folgt aus. Lassen Sie uns fortfahren und Themen, Schriftarten usw. hinzufügen.

Schritt 1 - Fügen Sie ein neues Thema hinzu

Der erste offensichtliche Schritt besteht darin, das Thema zu verbessern. Terminal bietet nicht alle coolen und ausgefallenen Themen, die andere Entwickler verwenden. Laden Sie ein Thema herunter und fügen Sie es dem Terminal hinzu.

In diesem Blog werde ich unserem Terminal das Thema Solarized-Dark hinzufügen.

Hinweis: Sie können verschiedene Themes (.terminal-Dateien) von diesem Git-Repo herunterladen. Öffnen Sie einfach die *.terminalDatei, um sie zu installieren, dh right-click on the *.terminal file > “open with" > Terminal
  1. Gehen Sie zu //ethanschoonover.com/solarized
  2. Scrollen Sie nach unten und laden Sie das Thema herunter (solarized.zip)
  3. Extrahieren Sie die Datei solarized.zip
  4. Öffnen Sie den Ordner osx-terminal.app-colours-solarized . Dieser Ordner enthält das Thema für das Terminal.
  5. Doppelklicken Sie auf die Datei "Solarized Dark ansi.terminal" - Dies ist die spezifische Themendatei für Terminal.app. Hinweis: Wenn Sie eine Warnung erhalten, dass dies von einem nicht identifizierten Entwickler stammt, klicken Sie mit der rechten Maustaste auf die Datei und wählen Sie "Öffnen mit"> Terminaloption .
  6. Zu diesem Zeitpunkt haben Sie das Design in Ihrem Terminal installiert. Wir müssen es nur zu einem Standardthema machen.
  7. Öffnen Sie Terminal> Einstellungen> Text, wählen Sie das Thema „Solarized Dark…“ und klicken Sie auf „Standard“.

Von nun an sollte Ihr Terminal wie folgt aussehen.

Schritt 2 - Installieren Sie Powerline

Powerline ist eine Python-App und ein Statuszeilen-Plugin für vim. Es bietet Statuszeilen und Eingabeaufforderungen für verschiedene andere Anwendungen, einschließlich zsh, bash, tmux, IPython, Awesome und Qtile.

Dadurch sieht die Terminal-Eingabeaufforderung wie folgt aus.

2.1 Installieren Sie Python

Da Powerline eine Python-App ist, benötigen wir Python und auch eine geeignete Version von Python.

  • In MacOS ist Python bereits installiert. Stellen Sie sicher, dass Pythons Version 2.7.x ist, indem Siepython -V das Terminal eingeben .
  • Wenn es nicht 2.7 ist, installieren Sie Homebrew, mit dem wir verschiedene Software von der CLI installieren können, indem Sie Folgendes ausführen:/usr/bin/ruby -e "$(curl -fsSL //raw.githubusercontent.com/Homebrew/install/master/install)"
  • Führen Sie aus brew install python, um den neuesten Python über Homebrew zu installieren

2.2 pip installieren - Ein Paketmanager für Python (ähnlich wie npm)

Installieren Sie pip, indem Sie den folgenden Befehl ausführen

$ sudo easy_install pip

2.3 Installieren Sie die XCode Developer CLI-Tools

XCode Developer CLI-Tools werden von Powerline und anderen Apps verwendet, die die wichtigsten OSX-Funktionen bearbeiten. Stellen Sie daher sicher, dass Sie die XCode CLI-Tools installieren, indem Sie den folgenden Befehl ausführen.

$ xcode-select —-install

Hinweis: Der obige Befehl öffnet das Mac-Installationsprogramm und installiert die XCode Developer CLI-Tools. Wenn es nicht funktioniert, versuchen Sie xcode-select -res zurückzusetzen.

2.4 Installieren Sie Powerline

Installieren Sie abschließend die Powerline (stabile Version) über pip, indem Sie den folgenden Befehl ausführen.

$ pip install --user powerline-status

Wenn Sie den neuesten Entwicklungszweig installieren möchten, verwenden Sie:

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

2.5 Fügen Sie den Powerline-Daemon zu bash hinzu

Wir müssen jetzt den Powerline-Daemon zu bash hinzufügen, damit er die Terminal-Eingabeaufforderung überwachen und Änderungen vornehmen kann.

2.5.1 Kopieren Sie den Installationsort der Powerline

Sie können den Standort von Powerline ermitteln, indem Sie Folgendes ausführen: pip show powerline-statusKopieren Sie den Wert aus dem LocationFeld.

2.5.2 Fügen Sie den Daemon mit dem richtigen Speicherort zu .bash_profile hinzu

  1. Stellen Sie sicher, dass Sie eine .bash_profileDatei in Ihrem Stammverzeichnis haben. Wenn nicht, erstellen Sie eine, indem Sie Folgendes tun:cd ~ && touch ~/.bash_profile

2. Öffnen .bash_profileSie Folgendes und fügen Sie Folgendes hinzu:

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
Hinweis: Der Speicherort /Users/rupa/Library/Python/2.7/lib/python/site-packages/ stammt aus dem vorherigen Schritt (2.5.1). Ändern Sie es entsprechend dem Standort Ihres Computers.

2.5.3. Starten Sie das Terminal neu

Beenden Sie das Terminal vollständig, wenn es geöffnet ist (Terminal> Terminal beenden). Und wieder öffnen.

Sie sollten in der Lage sein, $ source ~/.bash_profiledie Einstellungen einfach zu aktualisieren. Aber ich habe eine seltsame powerline-configDatei fehlt! Normalerweise wird dieser Fehler angezeigt, wenn Sie $ HOME / Library / Python / 2.7 / bin nicht in Ihrem PATH haben.

2.5.4 Ihr neues Terminal

Ihr neues Terminal sollte wie folgt aussehen. Es sollte das Thema "Solarized Dark ansi" verwenden und Powerline in der Eingabeaufforderung anzeigen. Beachten Sie aber auch, dass es "?" Figuren! Dies liegt daran, dass Powerline verschiedene Symbole und Schriftarten verwendet, die standardmäßig nicht verfügbar sind. Also müssen wir die Schriftarten installieren.

Schritt 3 - Installieren Sie Powerline-Schriftarten

Um Powerline-Schriftarten zu installieren, gehen Sie einfach zu //github.com/powerline/fonts. Dort sehen Sie eine ganze Reihe von Ordnern. Jede ist eine Schriftart, auch bekannt als "Patched Fonts".

Es wird als "gepatchte Schriftarten" bezeichnet, da Benutzer normale Schriftarten verwendet und ihnen zusätzliche Powerline-spezifische Symbole und Schriftarten hinzugefügt / gepatcht haben.

3.1 Laden Sie das gesamte Repo herunter und entpacken Sie es

  • Klicken Sie auf die Schaltfläche "Klonen oder herunterladen" und laden Sie das gesamte Repo herunter, damit Sie verschiedene Schriftarten ausprobieren können.
  • Entpacken Sie die Datei fonts-master.zip

3.2 Installieren Sie einige Schriftarten

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

Um verschiedene Git-Status an der Eingabeaufforderung anzuzeigen, müssen wir powerline-gitstatus installieren. Es ist ein einfaches Add-On zu Powerline und fügt mehrere Farben und Designs hinzu, um verschiedene Informationen zum Git-Status anzuzeigen.

4.1 Installieren Sie powerline-gitstatus

pip install --user powerline-gitstatus
Hinweis: Der Befehl "- user" ist erforderlich, um ihn im Benutzerprofil zu installieren.

4.2 Hinzufügen von Powerline-Gitstatus-Farbschemata zu Powerline

4.2.1 Öffnen Sie den folgenden colorschemes/shell/default.jsonOrdner

${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 Fügen Sie die folgenden Farben hinzu:

Wie in der Powerline-Gitstatus-Readme-Datei erwähnt. PS: Kopieren Sie einfach die Farben in „Gruppen“ und hängen Sie sie wie unten gezeigt an die Datei default.json an.

Hier sind meine Farbschemata default.json (Sie können diese stattdessen kopieren und einfügen):

{ "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 Aktivieren Sie das Thema

4.3.1 Öffnen Sie die Datei default.json des Themas

${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ügen Sie der Datei default.json Folgendes hinzu

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

Unten ist das Design meiner Powerline default.json (Sie können es stattdessen kopieren und einfügen):

Hinweis: Ich habe alles aus dem Abschnitt "rechts" entfernt und auch die "Jobnummer" ("Jobnummer") entfernt, um die Dinge sauber zu halten. Andernfalls sehen Sie ein kleines Artefakt am rechten Rand der Eingabeaufforderung.
{ "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 Starten Sie den Daemon neu

Speichern Sie die Datei und führen Sie Folgendes aus: powerline-daemon —-replaceim Terminal.

Wichtiger Hinweis: Jedes Mal , wenn Sie Änderungen an Powerline - config, zusätzlich zu einem Neustart des Terminals zu machen, werden Sie auch brauchen , neu starten Sie den Dämon die Änderungen sehen reflektiert durch Ausführen von : powerline-daemon —-replace.

4.5 Starten Sie das Terminal neu

Beenden Sie das Terminal (Terminal> Terminal beenden) und öffnen Sie es erneut.

An diesem Punkt sind wir alle fertig! Wütend! Wenn Sie das Terminal öffnen, zu einem Git-Repo navigieren und herumspielen, sollte es wie folgt aussehen.

So sieht es in Solarized-Light Theme aus:

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! ??